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

📄 startcanvas.java

📁 用J2ME写的一个益智类手机游戏。玩家回答问题
💻 JAVA
字号:
package mindsurf;

import java.util.*;
import javax.microedition.lcdui.*;
import com.nokia.mid.ui.FullCanvas;

/*游戏开场动画*/
public class StartCanvas extends FullCanvas implements Runnable{
  Display display;
  private Image start[]=new Image[3];
  private int flag=0;
  private boolean b1=true;
  private boolean b2=true;
  private boolean b3=false;
  private boolean b4=false;
  private boolean next=false;

  /** Constructor */
  public StartCanvas(Display display) {
    this.display=display;
    try{
      start[0]=Image.createImage("/res/shijietu.png");
      start[1]=Image.createImage("/res/nvren3s.png");
      start[2]=Image.createImage("/res/nanren3s.png");
   }catch(Exception e){}
   Thread thread=new Thread(this);
   thread.start();
    }

  /** Required paint implementation */
  protected void paint(Graphics g) {
    //设置字体
      Font f=Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_SMALL);
      g.setFont(f);

    //背景图
      g.setColor(0x30188B);
      g.fillRect(0,0,128,96);
      g.setColor(0,0,0);
      g.drawImage(start[0],2,8,Graphics.LEFT | Graphics.TOP);

   if(flag==0){
     g.setClip(94,56,24,40);
     g.drawImage(start[2], 94, 56, Graphics.LEFT | Graphics.TOP);
     //女人说话动画
     g.setClip(10,56,24,40);
     if (b1) {
       g.drawImage(start[1], 10, 56, Graphics.LEFT | Graphics.TOP);
     }
     else {
       g.drawImage(start[1], -14, 56, Graphics.LEFT | Graphics.TOP);
     }
   }else if(flag==1){
     g.setClip(10,56,24,40);
     g.drawImage(start[1], 10, 56, Graphics.LEFT | Graphics.TOP);
     //男人说话动画
     g.setClip(94,56,24,40);
     if (b2) {
       g.drawImage(start[2], 94, 56, Graphics.LEFT | Graphics.TOP);
     }
     else {
       g.drawImage(start[2], 70, 56, Graphics.LEFT | Graphics.TOP);
     }
     //人物出手动画
   }else if(flag==2){
       g.setClip(10,56,24,40);
       g.drawImage(start[1],10,60,Graphics.LEFT | Graphics.TOP);
       g.setClip(94,56,24,40);
       g.drawImage(start[2],94,60,Graphics.LEFT | Graphics.TOP);
   }else if(flag==3){
       g.setClip(10,56,34,40);
       g.drawImage(start[1],-38,56,Graphics.LEFT | Graphics.TOP);
       g.setClip(94,56,34,40);
       g.drawImage(start[2],46,56,Graphics.LEFT | Graphics.TOP);
   }

     //女人说话
     if(b3){
       g.setClip(0,0,128,128);
       g.setColor(255,255,255);
       g.drawString("欢迎你到智力大冲浪",10,15,Graphics.LEFT | Graphics.TOP);
     }
     //男人说话
     if(b4){
       g.drawString("按任意键挑战脑力",15,35,Graphics.LEFT | Graphics.TOP);
     }

     //画屏(演播台)
     g.setClip(0,0,128,128);
     g.setColor(0xB0B0B0);
     g.fillRect(0,96,32,32);
     g.fillRect(96,96,32,32);
     g.setColor(255,255,255);
     g.fillRect(32,96,64,32);
     g.setColor(0x686665);
     g.fillRect(0,108,128,2);
     g.drawString("演播室",45,112,Graphics.LEFT | Graphics.TOP);
     g.setColor(0,0,0);
  }

  public void keyPressed(int keyCode){
        //按任意键显示下一个界面
        if(next){
          IqMIDlet.playflag=true;
          display.setCurrent(new LoadingCanvas(display));
          start=null;
          System.gc();
        }
 }

    public void run() {
      int i = 0;
      while (i < 27) {
        try {
          Thread.sleep(200);
        }
        catch (Exception e) {}
        if (i == 4) {
          //延迟到i=4出现女人说话的文字
          b3 = !b3;
        }
        if (i == 11) {
          //男人说话动画开始
          flag = 1;
        }
        if (i == 15) {
          //延迟到i=15出现女人说话的文字
          b4 = !b4;
        }
        if (i == 22) {
          //人物出手动画开始
          flag = 2;
        }
        if (i == 24) {
          flag = 3;
        }
        if (i == 26) {
          //可切换画面标识
          next = !next;
        }
        if (i < 11) {
          //i从0-10女人的说话动画
          b1 = !b1;
        }
        else if (i < 21) {
          //i从11-21男人的说话动画
          b2 = !b2;
        }
        i++;
        repaint();
      }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -