⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chessmain.java

📁 JAVA编写的中国象棋,供初学者学习使用
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
// *******************************************************
//
// 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 + -