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

📄 maincanvas.java

📁 小子快跑
💻 JAVA
字号:
import javax.microedition.lcdui.*;
import mmae.ui.*;

public class MainCanvas extends XCanvas {

	ItemBase list;
	Image bgImg,skyImg,hwoodImg,monkgameImg,mwoodImg,robotImg,menutextImg,buttonImg,mfwoodImg,backgroundImg;
	int hwoodY,hwoodHD,monkgameX,monkgameHD,menuX,menuHD,buttonY;
	boolean hwoodShow,monkgameShow,menuShow,buttonShow;
	Animate button,menu;
	boolean keyEnable = false;

	public MainCanvas()
	{	

		/***********************************************
		以下为主界面初使化内容
		***********************************************/
	
		//初使化
		list = new ItemBase(3);
		list.setItem(0,go.STR_NEWGAME);
		list.setItem(1,go.STR_SCOREHIGH);		
		list.setItem(2,go.STR_HELP);
		
		bgImg = go.getImage("/BG.png");	
		skyImg = go.getImage("/Sky.png");	
		hwoodImg = go.getImage("/HWood.png");	
		monkgameImg = go.getImage("/MONKGame.png");	
		mwoodImg = go.getImage("/MWood.png");	
		robotImg = go.getImage("/RobotBG.png");	
		menutextImg = go.getImage("/MenuText.png");	
		buttonImg = go.getImage("/Button.png");
		mfwoodImg = go.getImage("/MFWood.png");
		backgroundImg= go.getImage("/BackGround.png");
		
		button = new Animate(buttonImg,50,19);		
		menu = new Animate(menutextImg,46,12);	
		
		hwoodShow = false;
		monkgameShow = true;
		menuShow = true;
		buttonShow = false;
		
		hwoodY = -48;
		hwoodHD = 4;
		monkgameX = -120;
		monkgameHD = 4;
		menuX = -125;
		menuHD = 2;
		buttonY = 23;
		
		//打开线程
		start(20);
	}
	
	public void keyPressed(int keyCode)
	{
		if(keyEnable==false)return;
	  
		//左右软键处理
		switch(keyCode)		
		{
			case SOFTKEY2:
				go.exit();
				break;
			case SOFTKEY1:
				pressOk(list.getFocusIndex());
				break;
		}
		
		//游戏键处理
		switch(getGameAction(keyCode))
		{
			case UP:
				list.prevItem();
				break;
			case DOWN:
				list.nextItem();
				break;
			case FIRE:
				pressOk(list.getFocusIndex());
				break;
		}
		repaint();
	}

	//选项确认处理
	public void pressOk(int index)
	{
	
		/***********************************************
		以下为确定键处理内容
		***********************************************/
		
		switch(index)
		{
			case 0:
				go.changeCanvas(go.CVS_PLAY,true);
				break;
			case 1:
				go.changeCanvas(go.CVS_SCORE,true);
				break;
			case 2:
				go.changeCanvas(go.CVS_HELP,true);
				break;
			case 3:
				go.exit();
				break;
		}			
		kill();
	}	

    public void paint(Graphics g)
	{
	
		/***********************************************
		以下为主界面显示内容
		***********************************************/
		g.setClip(0,0,getWidth(),getHeight());
		
		for(int i=0;i<3;i++)
			g.drawImage(backgroundImg,0,(i+1)*40+48,g.TOP|g.LEFT);
		//g.setColor();
		
		for(int i=0;i<getWidth()/skyImg.getWidth()+1;i++)
		{
			g.drawImage(skyImg,i*skyImg.getWidth(),0,g.TOP|g.LEFT);
		}
		
		g.drawImage(bgImg,-30,40,g.TOP|g.LEFT);
		g.drawImage(robotImg,getWidth()-robotImg.getWidth(),getHeight()-robotImg.getHeight(),g.TOP|g.LEFT);
		
		g.drawImage(hwoodImg,(getWidth()-hwoodImg.getWidth())/2,hwoodY,g.TOP|g.LEFT);
		g.drawImage(monkgameImg,monkgameX,11,g.TOP|g.LEFT);


		int text_w = (mwoodImg.getWidth()-menu.getWidth())/2;
		
		Image[] iwood = new Image[3];
		for(int i=0;i<3;i++)			
			if (list.getFocusIndex()==i) iwood[i] = mfwoodImg;
				else iwood[i] = mwoodImg;
		g.drawImage(iwood[0],menuX-4,87,g.TOP|g.LEFT);
		g.drawImage(iwood[1],getWidth()-menuX-mwoodImg.getWidth()+6,117,g.TOP|g.LEFT);		
		g.drawImage(iwood[2],menuX-4,147,g.TOP|g.LEFT);		
		
		menu.setFrame(0);
		menu.setPosition(text_w+menuX-4,91);
		menu.draw(g);		
		menu.setFrame(1);
		menu.setPosition(text_w+getWidth()-menuX-mwoodImg.getWidth()+6,121);
		menu.draw(g);				
		menu.setFrame(2);
		menu.setPosition(text_w+menuX-4,151);
		menu.draw(g);
		
		button.setFrame(0);
		button.setPosition(2,getHeight()-button.getHeight()-2+buttonY);
		button.draw(g);
		button.setFrame(1);
		button.setPosition(getWidth()-button.getWidth()-2,getHeight()-button.getHeight()-2+buttonY);
		button.draw(g);		
	}	

	//线程主干
	public void update()
	{

		/***********************************************
		以下为主界面线程处理内容
		***********************************************/
	
		if(hwoodShow==false)
		{
			if(hwoodY<25)
			{
				hwoodY += hwoodHD;
			}
			else
			{
				hwoodY -= hwoodHD;
				hwoodHD--;
			}			
			
			repaint(0,0,getWidth(),80);
			if(hwoodHD<0) 
			{
				hwoodShow = true;
			}
			
			if(hwoodHD<3) monkgameShow = false;
		}
		
		if(monkgameShow==false)
		{
			if(monkgameX < 2)
			{
				monkgameX += monkgameHD;				
			}
			else
			{
				monkgameX -= monkgameHD;
				monkgameHD --;
			}
					
			repaint(0,0,getWidth(),80);
			if(monkgameHD<0) 
			{
				monkgameShow = true;						
			}
			
			if(monkgameHD<2)menuShow = false;

		}
		
		if(menuShow==false)
		{
			if(menuX <= (getWidth()-mwoodImg.getWidth())/2)
			{
				menuX += 8;				
			}
			else
			{
				//menuX -= menuHD;
				//menuHD --;
				menuHD = -1;
			}

			repaint(0,80,getWidth(),120);
			if(menuHD<0) 
			{
				menuShow = true;
				buttonShow = true;
			}			
		}
		
		if(buttonShow)
		{
			if(buttonY>0)
				buttonY-=1;
			else
			{
				buttonShow = false;
				keyEnable = true;
				kill();
			}
				
			repaint(0,180,getWidth(),30);
		}
	}
}

⌨️ 快捷键说明

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