📄 handsprite.java
字号:
package com.tianxia.qipai.model.game.gobang;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;
public class HandSprite extends Sprite {
private int firX,firY,secX,secY; //游戏大厅里第一桌两个位置的坐标
private int xnum,ynum; //大厅里游戏桌的横向和纵向数目
private int tableid,tableseq; //当前的桌号和桌子的方位号
private int tilewidth,tileheight; //指针每次移动的横向和纵向距离
private int xposition,yposition; //指针的当前坐标位置
private boolean selectflag; //是否可以选中标志
public HandSprite(Image image, int width, int height) {
super(image, width, height);
firX=firY=secX=secY=0;
tableid=1;
tableseq = 0;
tilewidth=tileheight=0;
xnum=ynum=0;
selectflag = true;
// TODO 自动生成构造函数存根
}
//初试化指针位置,及每次移动距离
public void init(int firX,int firY,int secX,int secY,
int tilewidth,int tileheight,int xnum,int ynum){
this.firX = firX;
this.firY = firY;
this.secX = secX;
this.secY = secY;
this.tilewidth = tilewidth;
this.tileheight = tileheight;
this.xnum = xnum;
this.ynum = ynum;
this.setPosition(firX,firY);
}
public int getTableid(){
return tableid;
}
public int getTableseq(){
return tableseq;
}
public void setSelect(){
if(selectflag){
selectflag = false;
this.nextFrame();
}
}
public void setRelase(){
if(!selectflag){
selectflag = true;
this.nextFrame();
}
}
public boolean getSelectFlag(){
return selectflag;
}
public void reflesh(){
if(tableseq==0){ //游戏桌左侧
xposition = firX + ((tableid-1)%xnum)*tilewidth;
yposition = firY + ((tableid -1)/xnum)*tileheight;
}
else{
xposition = secX + ((tableid-1)%xnum)*tilewidth;
yposition = secY + ((tableid -1)/xnum)*tileheight;
}
this.setPosition(xposition,yposition);
}
public void NextPosition(int point){
if(selectflag){
switch(point){
case 0: //向上
if(tableid<=xnum){ //已经是最顶层
}
else{
tableid = tableid - xnum;
}
break;
case 1: //向下
if(tableid>(ynum-1)*xnum){ //已经是下方
}
else{
tableid = tableid + xnum;
}
break;
case 2: //向左
if(tableid%(xnum)==1&&tableseq==0){ //已经是最左侧
}
else{
tableid = tableid - 1 + tableseq;
tableseq = Math.abs(tableseq - 1);
}
break;
case 3: //向右
if(tableid%(xnum)==0&&tableseq==1){ //已经是最右侧
}
else{
tableid = tableid + tableseq;
tableseq = Math.abs(tableseq - 1);
}
break;
default:
break;
}
if(tableseq==0){ //游戏桌左侧
xposition = firX + ((tableid-1)%xnum)*tilewidth;
yposition = firY + ((tableid -1)/xnum)*tileheight;
}
else{
xposition = secX + ((tableid-1)%xnum)*tilewidth;
yposition = secY + ((tableid -1)/xnum)*tileheight;
}
this.setPosition(xposition,yposition);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -