WAP之家:为您提供最全最新的WAP技术,CP.SP.3G等行业资讯。 WAP之家交流论坛全新开放 点击进入>>
WAP资讯 | 3G动态 | SP动态 | 运营商动态 | 内容商动态 | 制造商动态 | 论坛讨论>> 每次自动访问
WAP技术 | WAP源码 | 手机编程 | 手机源码 | 无线技术 | J2ME技术 | 手机软件 添加到收藏夹
IVR技术 | SP资料 | SMS MMS技术 | 商业方案 | IVR下载 | 书籍教程 | 工具软件 语言:繁體中文

WAP之家技术文章J2ME技术程序开发象棋手机游戏的源代码

象棋手机游戏的源代码
作者:dlut_608_#4  来源:本站整理  发布时间:2005-11-24 17:22:42
tedX,selectedY);}
if((selectedY-n==0)&(selectedX-m==-1)){changTwoChessNum(m,n,selectedX,selectedY);}
}
}
}

}
public void commandAction(Command c, Displayable d)
{
if (c == exitCmd) {
game.destroyApp(false);
game.notifyDestroyed();
}
}
protected synchronized void keyPressed(int keyCode) //处理按键
{
int action = getGameAction(keyCode);

if (action == Canvas.LEFT )
{
selectedX=(--selectedX+8+1)%(8+1);
}
else if (action == Canvas.RIGHT)
{
selectedX=(++selectedX)%(8+1);
}
else if (action == Canvas.UP)
{
selectedY=(--selectedY+9+1)%(9+1);
}
else if (action == Canvas.DOWN)
{
selectedY=(++selectedY)%(9+1);
}
else if (action == Canvas.FIRE)//这里的FIRE键我分成了两种情况:一是选种棋子,
{ //二是当选择了棋子后,让棋子走到下面选择的位置

guard=guard+1;//每按下FIRE一次,GUARD就加一,用来判断FIRE是被选种还是选种后走下不棋
if(guard%2==1) //这时是当选种某一个棋子时,调用choosChess函数,选择棋子
{
if(point[selectedY][selectedX]!=0)
{
guard1=selectedX;
guard2=selectedY;
}

}

if(guard%2==0)//这种情况是当棋子被选种后
{
if(point[selectedY][selectedX]!=point[n][m])//当走的下一步不是自身,也就是玩家选过
{ //一个棋子,又不想选了,这只需什么都不做
if((point[n][m]==1)|(point[n][m]==9)|(point[n][m]==17)|(point[n][m]==25))//当选定的棋子是车的时候
{ //repaint就OK了
if(point[selectedY][selectedX]==0)//当下一步走的是空格,则改变选种的格子和下一步所
{ //走的格子的point[][]和word[][]的植,然后repaint就OK
theRuleOfChe(m,n,selectedX,selectedY);
}
else//当下一步是想吃对方的子的,则把下一步格子的值变为刚才选定的格子的值,而
{ //刚才选定的格子的值则便为零
if((point[selectedY][selectedX]/17)!=(point[n][m]/17))//当然,想吃的子不能是自己的
{
theRuleOfChe(m,n,selectedX,selectedY);

}
}
}
if((point[n][m]==2)|(point[n][m]==8)|(point[n][m]==18)|(point[n][m]==24))//当选定的棋子是马的时候
{
if(point[selectedY][selectedX]==0)
{
theRuleOfMa(m,n,selectedX,selectedY);
}
else
{
if((point[selectedY][selectedX]/17)!=(point[n][m]/17))//当然,想吃的子不能是自己的
{
theRuleOfMa(m,n,selectedX,selectedY);

}
}
}
if((point[n][m]==10)|(point[n][m]==11)|(point[n][m]==26)|(point[n][m]==27))//当选定的棋子是炮的时候
{
if(point[selectedY][selectedX]==0)
{
g1=0;
theRuleOfPao(m,n,selectedX,selectedY,g1);
}
else
{
g1=1;
if((point[selectedY][selectedX]/17)!=(point[n][m]/17))//当然,想吃的子不能是自己的
{
theRuleOfPao(m,n,selectedX,selectedY,g1);

}
}
}
if((point[n][m]==3)|(point[n][m]==7)|(point[n][m]==19)|(point[n][m]==23))//当选定的棋子是相的时候
{
if(point[selectedY][selectedX]==0)
{
theRuleOfXiang(m,n,selectedX,selectedY);
}
else
{
if((point[selectedY][selectedX]/17)!=(point[n][m]/17))//当然,想吃的子不能是自己的
{
theRuleOfXiang(m,n,selectedX,selectedY);

}
}
}
if((point[n][m]==4)|(point[n][m]==6)|(point[n][m]==20)|(point[n][m]==22))//当选定的棋子是士的时候
{
if(point[selectedY][selectedX]==0)
{
theRuleOfShi(m,n,selectedX,selectedY);
}
else
{
if((point[selectedY][selectedX]/17)!=(point[n][m]/17))//当然,想吃的子不能是自己的
{
theRuleOfShi(m,n,selectedX,selectedY);

}
}
}
if((point[n][m]==5)|(point[n][m]==21))//当选定的棋子是帅的时候
{
if(point[selectedY][selectedX]==0)
{

上一页  [1] [2] [3] [4] [5] [6]  下一页

[] [返回上一页] [打 印]
文章评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码