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

📄 henwaycanvas.java

📁 这是本人在上学的时候写的一个小鸡过马路的程序.里面据体实现了音乐播放,碰撞检测等功能J2ME程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			g.drawString("振动: 开",60,60+font.getHeight(),0);
		}
		g.drawString("更改",0,getHeight()-font.getHeight(),0);
		g.drawString("返回",getWidth()-font.stringWidth("返回"),getHeight()-font.getHeight(),0);
	}
	public void GameOver(Graphics g)
	{
		g.setColor(200,200,30);
		g.fillRect(0,0,getWidth(),getHeight());
		//Draw the game over message and score
		g.setColor(0, 255, 255); // white
		g.setFont(font);
		g.drawString("GAME OVER", 90, 40, Graphics.TOP | Graphics.HCENTER);
		g.setFont(font);
		g.drawString("You scored " + score + " points.", 90, 70, Graphics.TOP |
		    Graphics.HCENTER);
		g.drawString("重玩",0,getHeight()-font.getHeight(),0);
		g.drawString("退出",getWidth()-font.stringWidth("退出"),getHeight()-font.getHeight(),0);
	}
	public void drawMenu(Graphics g)
	{
		g.setFont(font);
		g.setColor(200,200,30);
		g.fillRect(0,0,getWidth(),getHeight());
		if(!back)
		{
			g.setColor(150,100,0);
			g.fillRect(0,30+font.getHeight()*num,getWidth(),font.getHeight());
			
			g.setColor(0,255,255);
			g.drawString("开始新游戏",getWidth()/2-font.stringWidth("开始新游戏")/2,30,0);
			g.drawString("设置",getWidth()/2-font.stringWidth("设置")/2,30+font.getHeight(),0);
			g.drawString("帮助",getWidth()/2-font.stringWidth("帮助")/2,30+font.getHeight()*2,0);
			g.drawString("关于",getWidth()/2-font.stringWidth("关于")/2,30+font.getHeight()*3,0);
			g.drawString("退出",getWidth()/2-font.stringWidth("退出")/2,30+font.getHeight()*4,0);
		}
		else
		{
			g.setColor(150,100,0);
			g.fillRect(0,30+font.getHeight()*num,getWidth(),font.getHeight());
			
			g.setColor(0,255,255);
			g.drawString("继续",getWidth()/2-font.stringWidth("继续")/2,30,0);
			g.drawString("开始新游戏",getWidth()/2-font.stringWidth("开始新游戏")/2,30+font.getHeight(),0);
			g.drawString("设置",getWidth()/2-font.stringWidth("设置")/2,30+font.getHeight()*2,0);
			g.drawString("帮助",getWidth()/2-font.stringWidth("帮助")/2,30+font.getHeight()*3,0);
			g.drawString("关于",getWidth()/2-font.stringWidth("关于")/2,30+font.getHeight()*4,0);
			g.drawString("退出",getWidth()/2-font.stringWidth("退出")/2,30+font.getHeight()*5,0);
		}
		
		g.drawString("确定",0,getHeight()-font.getHeight(),0);
		g.drawString("返回",getWidth()-font.stringWidth("返回"),getHeight()-font.getHeight(),0);
		
	}
	public void run()
	{
		while(!sleeping)
		{
			long st=System.currentTimeMillis();
			CheckScore();
			repaint();
			serviceRepaints();
			long et=System.currentTimeMillis();
			try
			{
				if((et-st)<frameDelay)
				{
					Thread.sleep(frameDelay-(et-st));
				}
			}
			catch(Exception e){}
		}
	}
	public void keyReleased(int keyCode)
	{
		if(gameState==5)
		{
			if(keyCode==-2)
			{
				left=false;
			}
			else if(keyCode==-5)
			{
				right=false;
			}
			else if(keyCode==-1)
			{
				up=false;
			}
			else if(keyCode==-6)
			{
				down=false;
			}
		}
	}
	public void keyPressed(int keyCode)
	{
		
		int key=getGameAction(keyCode);
		if(gameState==0)
		{
			if(keyCode==-6)
			{
				gameState=1;
			}
			else if(keyCode==-7)
			{
				mf.destroyApp(false);
				mf.notifyDestroyed();
			}
		}
		else if(gameState==1)
		{
			if(keyCode==-6)
			{
				if(!back)
				{
					if(num==0)
					{
						gameState=5;
//						 Start playing the music indefinitely
						if(soundset==0)
						{
						    try {
						      musicPlayer.setLoopCount(-1);
						      musicPlayer.start();
						    }
						    catch (MediaException me) {
						    }
						}
					}
					else if(num==1)
					{
						gameState=2;
					}
					else if(num==2)
					{
						gameState=3;
					}
					else if(num==3)
					{
						gameState=4;
					}
					else if(num==4)
					{
						mf.destroyApp(false);
						mf.notifyDestroyed();
					}
				}
				else
				{
					if(num==0)
					{
						back=false;
						gameState=5;
//						 Start playing the music indefinitely
						if(soundset==0)
						{
						    try {
						      musicPlayer.setLoopCount(-1);
						      musicPlayer.start();
						    }
						    catch (MediaException me) {
						    }
						}
					}
					else if(num==1)
					{
						gameState=5;
						carSprite[3].setPosition(128, 64);
						carSprite[0].setPosition(27, 0);
						carSprite[1].setPosition(62, 0);
						carSprite[2].setPosition(93, 67);
						chickenSprite.setPosition(0, 77);
				        score = 0;
				        numLives = 3;
//						Start playing the music indefinitely
						if(soundset==0)
						{
						    try {
						      musicPlayer.setLoopCount(-1);
						      musicPlayer.start();
						    }
						    catch (MediaException me) {
						    }
						}
					}
					else if(num==2)
					{
						gameState=2;
					}
					else if(num==3)
					{
						gameState=3;
					}
					else if(num==4)
					{
						gameState=4;
					}
					else if(num==5)
					{
						mf.destroyApp(false);
						mf.notifyDestroyed();
					}
				}
			}
			else if(keyCode==-7)
			{
				gameState=0;
			}
			else if(key== -1)
			{
				if(!back)
				{
					num--;
					if(num<0)
					{
						num=4;
					}
				}
				else
				{
					num--;
					if(num<0)
					{
						num=5;
					}
				}
			}
			else if(key==-2)
			{
				if(!back)
				{
					num++;
					if(num>4)
					{
						num=0;
					}
				}
				else 
				{
					num++;
					if(num>5)
					{
						num=0;
					}
				}
			}
		}
		else if(gameState==2)
		{
			if(keyCode==-6)
			{
				if(setnum==0)
				{
					if(soundset==1)
					{
						soundset=0;
					}
					else
					{
						soundset=1;
					}
				}
				else if(setnum==1)
				{
					if(vibraset==1)
					{
						vibraset=0;
					}
					else
					{
						vibraset=1;
					}
				}
				
			}
			else if(keyCode==-7)
			{
				gameState=1;
			}
			else if(key==-1)
			{
				setnum--;
				if(setnum<0)
				{
					setnum=1;
				}
			}
			else if(key==-2)
			{
				setnum++;
				if(setnum>1)
				{
					setnum=0;
				}
			}
		}
		else if(gameState==3)
		{
			if(keyCode==-7)
			{
				gameState=1;
			}
		}
		else if(gameState==4)
		{
			if(keyCode==-7)
			{
				gameState=1;
			}
		}
		else if(gameState==5)
		{
			if(keyCode==-6)
			{
				gameState=1;
				back=true;
				try
			    {
					musicPlayer.stop();
			    }
				catch(Exception e){}
			    
			}
			else if(keyCode==-7)
			{
				mf.destroyApp(false);
				mf.notifyDestroyed();
			}
			else if(keyCode==-3)
			{
		        left=true;
			}
			else if(keyCode==-4)
			{
				right=true;
			}
			else if(keyCode==-1)
			{
				up=true;
			}
			else if(keyCode==-2)
			{
				down=true;
			}
		}
		else if(gameState==6)
		{
			if(keyCode==-6)
			{
				left=false;
				right=false;
				up=false;
				down=false;
				recordJob(true);
			        // Start a new game
			      	if(soundset==0)
			      	{
				        try {
				        	musicPlayer.setLoopCount(-1);
				        	musicPlayer.start();
				        }
				        catch (MediaException me) {
				        }
			      	}
			      	carSprite[3].setPosition(128, 64);
					carSprite[0].setPosition(27, 0);
					carSprite[1].setPosition(62, 0);
					carSprite[2].setPosition(93, 67);
					chickenSprite.setPosition(0, 77);
					gameOver=false;
					score=0;
					numLives=3;
					gameState=5;
			      
			}
			else if(keyCode==-7)
			{
				left=false;
				right=false;
				up=false;
				down=false;
				gameState=1;
				carSprite[3].setPosition(128, 64);
				
				carSprite[0].setPosition(27, 0);
				carSprite[1].setPosition(62, 0);
				carSprite[2].setPosition(93, 67);
				chickenSprite.setPosition(0, 77);
				
				gameOver=false;
				score=0;
				numLives=3;
			}
		}
	}
}

⌨️ 快捷键说明

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