📄 chessmain.java
字号:
// *******************************************************
//
// FILENAME: chessmain.java
// PROJECT: chineseChess2
// DESCRIPTION: 中国象棋网络版
//
// *******************************************************
import java.io.*;
import javax.microedition.io.*;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
/*****************************************************/
//// 基类
//
//
/*****************************************************/
public class chessmain extends Canvas implements Runnable
{
int self=0;
int gamecontinue = 1;//after the game is win or lost ,stop.1:continue,0:stop.
//初始化变量
Image imagejiemian = null;
Image imagexuanzeanniu= null;
Image imagedating =null;
Image imageno1 =null;
Image imageno2 =null;
Image imageno3 =null;
Image imageno4 =null;
Image imageno5 =null;
Image imageno6 =null;
Image imageren =null;
Image imagewin=null;
Image imagelost=null;
Image imagestandoff=null;
Image imagediban= null;
Image imagehand=null;
Image imagehongbing1= null;
Image imagehongbing2= null;
Image imagehongbing3= null;
Image imagehongbing4= null;
Image imagehongbing5= null;
Image imagehongju1= null;
Image imagehongju2= null;
Image imagehongma1= null;
Image imagehongma2= null;
Image imagehongpao1= null;
Image imagehongpao2= null;
Image imagehongshi1= null;
Image imagehongshi2= null;
Image imagehongshuai= null;
Image imagehongxiang1= null;
Image imagehongxiang2= null;
Image imagelvjiang= null;
Image imagelvju1= null;
Image imagelvju2= null;
Image imagelvma1= null;
Image imagelvma2= null;
Image imagelvpao1= null;
Image imagelvpao2= null;
Image imagelvshi1= null;
Image imagelvshi2= null;
Image imagelvxiang1= null;
Image imagelvxiang2= null;
Image imagelvzu1= null;
Image imagelvzu2= null;
Image imagelvzu3= null;
Image imagelvzu4= null;
Image imagelvzu5= null;
Image imageall=null;
MIDlet omidlet;
private int width,height,isFirst=1,itemPress=112; // 取屏幕的中间点
int activeX,activeY,isPress=0,activeid=0,activecolor=255,idX=0,idY=0,handX=85,handY=20;
int chessmatrixX[]=new int[9];
int chessmatrixY[]=new int[10];
int chessitem[]=new int[32*6];//id,X,Y,isShow,type(),me,
int sTime;
String person="no";
InputStream is = null;
OutputStream os = null;
StreamConnection socket = null;
String mTemp;
Thread thread;
int yesno=0;
SocketThread socketthread = new SocketThread ();
/*****************************************************/
// 基类构造函数
//
//
/*****************************************************/
public chessmain(MIDlet midlet) // 我的画布
{
if(socketthread.B_Socketthread == true)
socketthread.start();
width=getWidth();
height=getHeight();
thread=new Thread(this);
omidlet=midlet;
try{
imagejiemian = Image.createImage("/jiemian.png");
imagexuanzeanniu = Image.createImage("/xuanzeanniu.png");
imagediban = Image.createImage("/diban.png");
imagehand = Image.createImage("/hand.png");
imagedating = Image.createImage("/datingdiban.png");
imageno1 = Image.createImage("/no1.png");
imageno2 = Image.createImage("/no2.png");
imageno3 = Image.createImage("/no3.png");
imageno4 = Image.createImage("/no4.png");
imageno5 = Image.createImage("/no5.png");
imageno6 = Image.createImage("/no6.png");
imageren = Image.createImage("/ren.png");
imagewin = Image.createImage("/win.png");
imagelost = Image.createImage("/lost.png");
imagestandoff = Image.createImage("/standoff.png");
imagehongbing1 = Image.createImage("/hongbing.png");
imagehongbing2 = Image.createImage("/hongbing.png");
imagehongbing3 = Image.createImage("/hongbing.png");
imagehongbing4 = Image.createImage("/hongbing.png");
imagehongbing5 = Image.createImage("/hongbing.png");
imagehongju1 = Image.createImage("/hongju.png");
imagehongju2 = Image.createImage("/hongju.png");
imagehongma1 = Image.createImage("/hongma.png");
imagehongma2 = Image.createImage("/hongma.png");
imagehongpao1 = Image.createImage("/hongpao.png");
imagehongpao2 = Image.createImage("/hongpao.png");
imagehongshi1 = Image.createImage("/hongshi.png");
imagehongshi2 = Image.createImage("/hongshi.png");
imagehongshuai = Image.createImage("/hongshuai.png");
imagehongxiang1 = Image.createImage("/hongxiang.png");
imagehongxiang2 = Image.createImage("/hongxiang.png");
imagelvjiang = Image.createImage("/lvjiang.png");
imagelvju1 = Image.createImage("/lvju.png");
imagelvju2 = Image.createImage("/lvju.png");
imagelvma1 = Image.createImage("/lvma.png");
imagelvma2 = Image.createImage("/lvma.png");
imagelvpao1 = Image.createImage("/lvpao.png");
imagelvpao2 = Image.createImage("/lvpao.png");
imagelvshi1 = Image.createImage("/lvshi.png");
imagelvshi2 = Image.createImage("/lvshi.png");
imagelvxiang1 = Image.createImage("/lvxiang.png");
imagelvxiang2 = Image.createImage("/lvxiang.png");
imagelvzu1 = Image.createImage("/lvzu.png");
imagelvzu2 = Image.createImage("/lvzu.png");
imagelvzu3 = Image.createImage("/lvzu.png");
imagelvzu4 = Image.createImage("/lvzu.png");
imagelvzu5 = Image.createImage("/lvzu.png");
imageall = Image.createImage(width,height);
}
catch(Exception e)
{ }
}
/*****************************************************/
//// 绘制
//
//
/*****************************************************/
protected void paint(Graphics g)
{
g.drawImage(imageall,width/2,height/2,g.HCENTER|g.VCENTER);
}
/*****************************************************/
// // 键盘消息
//
//
/*****************************************************/
public void keyPressed( int code )
{
int SMessage;
if (gamecontinue==1)
{
switch(getGameAction(code))
{
case RIGHT:
{
if(isFirst==1)
{
}
if(isFirst==2)
{
handX=85;
}
if(isFirst==3)
{
if(activeX<104)
activeX+=13;
}
break;
}
case LEFT:
{
if(isFirst==1)
{
}
if(isFirst==2)
{
handX=28;
}
if(isFirst==3)
{
if(activeX>13)
activeX-=13;
}
break;
}
case UP:
{
//处理界面
if(isFirst==1)
{
if(itemPress==94)
itemPress=112;
else
itemPress=94;
}
if(isFirst==2)
{
if(handY>20)
handY-=35;
}
if(isFirst==3)
{
if(activeY>13)
activeY-=13;
}
break;
}
case DOWN:
{
//处理界面
if(isFirst==1)
{
if(itemPress==94)
itemPress=112;
else
itemPress=94;
}
if(isFirst==2)
{
if(handY<125)
handY+=35;
}
if(isFirst==3)
{
if(activeY<117)
activeY+=13;
}
break;
}
case FIRE: // enter key
{
//处理界面
if(isFirst==1)
{
if(itemPress==94)
{
isFirst++;
}
}
if(isFirst==2)
{
if(handX==28&&handY==125)
{
handX=28;
handY=20;
if(person=="yes")
isFirst++;
}
if(handX==85&&handY==125)
{
handX=28;
handY=55;
isFirst--;
}
if(self==0)
{
self=1;
yesno=1;
activeY=13*7+7;
}
if(self==1)
{
self=0;
yesno=0;
activeY=13*2+7;
}
}
//处理下棋
if(isFirst==3)
{
if(isPress==0)
{
for(int i=0;i<32;i++)
{
if(chessitem[i*6+1]==activeX && chessitem[i*6+2]==activeY && chessitem[i*6+5]==self&&chessitem[i*6+3]==1)
{
isPress=1;
activeid=chessitem[i*6];
idX=chessitem[i*6+1];
idY=chessitem[i*6+2];
if(yesno==1)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -