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

📄 gamecanvas.java

📁 这是一个跳跳板的游戏的源代码,是一个不错的小游戏!
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
				    w=0;
				    }
				    
				    }else if(board2[i][2]==3){
				    g1.drawImage(m[2],board2[i][0],board2[i][1]-m[0].getHeight()-7,Graphics.TOP|Graphics.LEFT);
				    w++;
				    if(w>2){
				    board2[i][2]=1;
				    w=0;
				    }
				    
				  }
				  //画蜜蜂
				  if(board2[i][2]==4){
				  	g1.drawImage(m[3],board2[i][0],board2[i][1]-m[3].getHeight()-5,Graphics.TOP|Graphics.LEFT);
				  	 
				  	 board2[i][2]=5;
				  }
				  else if(board2[i][2]==5){
				  	g1.drawImage(m[4],board2[i][0],board2[i][1]-m[4].getHeight()-5,Graphics.TOP|Graphics.LEFT);
				  	board2[i][2]=4;
				  }
				  
				  //画蛇
				  if(board2[i][2]==6){
				  	g1.drawImage(m[5],board2[i][0],board2[i][1]-m[5].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	 w3++;
				  	 if(w3>10){
				  	 board2[i][2]=7;
				  	 w3=0;
				  	 }
				  }else if(board2[i][2]==7){
				  	g1.drawImage(m[6],board2[i][0]-3,board2[i][1]-m[6].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	board2[i][2]=6;
				  }
				  
				  //画人
				   if(board2[i][2]==8){
				  	g1.drawImage(m[7],board2[i][0],board2[i][1]-m[7].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	 
				   }
				   //画狼人
				   if(board2[i][2]==9){
				  	g1.drawImage(m[8],board2[i][0],board2[i][1]-m[8].getHeight(),Graphics.TOP|Graphics.LEFT);
				  
				  }
				  
				  //画球
				   if(board2[i][2]==10){
				   	
				  	g1.drawImage(m[9],board2[i][0],board2[i][1]-m[9].getHeight(),Graphics.TOP|Graphics.LEFT);
				  
				  	 board2[i][2]=11;
				  	 
				  }else if(board2[i][2]==11){
				  	g1.drawImage(m[10],board2[i][0],board2[i][1]-m[10].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	board2[i][2]=10;
				  }
		    
				  //画假美眉
				   if(board2[i][2]==12){
				   	g1.drawImage(m[11],board2[i][0],board2[i][1]-m[11].getHeight(),Graphics.TOP|Graphics.LEFT);
				   }
				}
				for(int i=0;i<9;i++){
					if(board3[i][3]==0)
				    g1.drawImage(img1,board3[i][0],board3[i][1],Graphics.TOP|Graphics.LEFT);
					if(board3[i][3]==1)
					g1.drawImage(img2,board3[i][0],board3[i][1],Graphics.TOP|Graphics.LEFT);
						//画猴子
				  if(board3[i][2]==1){//为动态图片
					g1.drawImage(m[0],board3[i][0],board3[i][1]-m[0].getHeight(),Graphics.TOP|Graphics.LEFT);
				    w++;
				    if(w>10){
					board3[i][2]=2;
					w=0;
				    }
				    }else if(board3[i][2]==2){
				    g1.drawImage(m[1],board3[i][0],board3[i][1]-m[0].getHeight()-10,Graphics.TOP|Graphics.LEFT);
				    w++;
				    if(w>2){
				    board3[i][2]=3;
				    w=0;
				    }
				    
				    }else if(board3[i][2]==3){
				    g1.drawImage(m[2],board3[i][0],board3[i][1]-m[0].getHeight()-7,Graphics.TOP|Graphics.LEFT);
				    w++;
				    if(w>2){
				    board3[i][2]=1;
				    w=0;
				    }
				    
				  }
				  //画蜜蜂
				  if(board3[i][2]==4){
				  	g1.drawImage(m[3],board3[i][0],board3[i][1]-m[3].getHeight()-5,Graphics.TOP|Graphics.LEFT);
				  	 
				  	 board3[i][2]=5;
				  }
				  else if(board3[i][2]==5){
				  	g1.drawImage(m[4],board3[i][0],board3[i][1]-m[4].getHeight()-5,Graphics.TOP|Graphics.LEFT);
				  	board3[i][2]=4;
				  }
				  
				  //画蛇
				  if(board3[i][2]==6){
				  	g1.drawImage(m[5],board3[i][0],board3[i][1]-m[5].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	 w3++;
				  	 if(w3>10){
				  	 board3[i][2]=7;
				  	 w3=0;
				  	 }
				  }else if(board3[i][2]==7){
				  	g1.drawImage(m[6],board3[i][0]-3,board3[i][1]-m[6].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	board3[i][2]=6;
				  }
				  
				  //画人
				   if(board3[i][2]==8){
				  	g1.drawImage(m[7],board3[i][0],board3[i][1]-m[7].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	 
				   }
				   //画狼人
				   if(board3[i][2]==9){
				  	g1.drawImage(m[8],board3[i][0],board3[i][1]-m[8].getHeight(),Graphics.TOP|Graphics.LEFT);
				  
				  }
				  
				  //画球
				   if(board3[i][2]==10){
				   	
				  	g1.drawImage(m[9],board3[i][0],board3[i][1]-m[9].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	
				  	 board3[i][2]=11;
				  	 
				  }else if(board3[i][2]==11){
				  	g1.drawImage(m[10],board3[i][0],board3[i][1]-m[10].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	board3[i][2]=10;
				  }
		    
				  //画假美眉
				   if(board3[i][2]==12){
				   	g1.drawImage(m[11],board3[i][0],board3[i][1]-m[11].getHeight(),Graphics.TOP|Graphics.LEFT);
				   }
				}
			    for(int i=0;i<9;i++){
			    	if(board4[i][3]==0)
					g1.drawImage(img1,board4[i][0],board4[i][1],Graphics.TOP|Graphics.LEFT);
					if(board4[i][3]==1)
					g1.drawImage(img2,board4[i][0],board4[i][1],Graphics.TOP|Graphics.LEFT);
			        	//画猴子
				  if(board4[i][2]==1){//为动态图片
					g1.drawImage(m[0],board4[i][0],board4[i][1]-m[0].getHeight(),Graphics.TOP|Graphics.LEFT);
				    w++;
				    if(w>10){
					board4[i][2]=2;
					w=0;
				    }
				    }else if(board4[i][2]==2){
				    g1.drawImage(m[1],board4[i][0],board4[i][1]-m[0].getHeight()-10,Graphics.TOP|Graphics.LEFT);
				    w++;
				    if(w>2){
				    board4[i][2]=3;
				    w=0;
				    }
				    
				    }else if(board4[i][2]==3){
				    g1.drawImage(m[2],board4[i][0],board4[i][1]-m[0].getHeight()-7,Graphics.TOP|Graphics.LEFT);
				    w++;
				    if(w>2){
				    board4[i][2]=1;
				    w=0;
				    }
				    
				  }
				  //画蜜蜂
				  if(board4[i][2]==4){
				  	g1.drawImage(m[3],board4[i][0],board4[i][1]-m[3].getHeight()-5,Graphics.TOP|Graphics.LEFT);
				  	 
				  	 board4[i][2]=5;
				  }
				  else if(board4[i][2]==5){
				  	g1.drawImage(m[4],board4[i][0],board4[i][1]-m[4].getHeight()-5,Graphics.TOP|Graphics.LEFT);
				  	board4[i][2]=4;
				  }
				  
				  //画蛇
				  if(board4[i][2]==6){
				  	g1.drawImage(m[5],board4[i][0],board4[i][1]-m[5].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	 w3++;
				  	 if(w3>10){
				  	 board4[i][2]=7;
				  	 w3=0;
				  	 }
				  }else if(board4[i][2]==7){
				  	g1.drawImage(m[6],board4[i][0]-3,board4[i][1]-m[6].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	board4[i][2]=6;
				  }
				  
				  //画人
				   if(board4[i][2]==8){
				  	g1.drawImage(m[7],board4[i][0],board4[i][1]-m[7].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	 
				   }
				   //画狼人
				   if(board4[i][2]==9){
				  	g1.drawImage(m[8],board4[i][0],board4[i][1]-m[8].getHeight(),Graphics.TOP|Graphics.LEFT);
				  
				  }
				  
				  //画球
				   if(board4[i][2]==10){
				   	
				  	g1.drawImage(m[9],board4[i][0],board4[i][1]-m[9].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	
				  	 board4[i][2]=11;
				  	 
				  }else if(board4[i][2]==11){
				  	g1.drawImage(m[10],board4[i][0],board4[i][1]-m[10].getHeight(),Graphics.TOP|Graphics.LEFT);
				  	board4[i][2]=10;
				  }
		    
				  //画假美眉
				   if(board4[i][2]==12){
				   	g1.drawImage(m[11],board4[i][0],board4[i][1]-m[11].getHeight(),Graphics.TOP|Graphics.LEFT);
				   }
				}
			    
		
			     c++;
				if(c<3)
				g1.setColor(255,0,0);
				else{
				g1.setColor(255,255,255);
			 	c=0;
				}
				for(int i=0;i<p;i++){
				g1.fillRect(111+i*3,50,1,25);
				}
			    
			    g.drawImage(buffer, 0, 0, Graphics.TOP | Graphics.LEFT); 
			    
			    
			    
			    
				
				switch(gameState) {
					case GAME_PLAYING:
						if(isPaused) {
				
							drawSt = "Pause";
						}else {
						
							return;
						}
					break;

					case GAME_END:
					
						drawSt = "Game over!!!";
					break;

					default:
					return;
				}
				stWidth = defFont.stringWidth(drawSt);
				drawX = (screenWidth-stWidth) / 2;
				drawY = (screenHeight - (stHeight)) / 2;

				//描绘文本框
				g.setColor(0x00BBBBBB);
				g.fillRoundRect(drawX-2, drawY+2, stWidth+9, stHeight+2, 5, 5);
				g.setColor(255,0,0);
				g.drawString(drawSt, drawX+1, drawY+1, Graphics.TOP|Graphics.LEFT);
			
			break;
		}
	}
 
 
	
	/** 按键按下事件发生时被调用出来的方法 */
	protected synchronized void keyPressed(int keyCode) {
	//	tmpKey=keyCode;
		int gameCode = getGameAction(keyCode);
		 switch (gameState) {
	      case 0: //主菜单title状态
	        switch (gameCode) {
	          case Canvas.LEFT:
	            curMenu--;
	            if (curMenu < 0) {
	              curMenu = 2;
	            }
	            break;
	          case Canvas.RIGHT:
	            curMenu++;
	            if (curMenu > 2) {
	              curMenu = 0;
	            }
	            break;
	          case Canvas.FIRE:
	            switch (curMenu) {
	              case 0: //新游戏
	                Init();
	           	  
	              	level=1;
	              	minute=2;
	              	second=59;
	              	p2=5;//五次机会
	              	GameInit();
	    			gameState = GAME_START;
	    			doThreadStart();
	    			curMenu=0;
	    		    addCommand(pauseCmd);
		            addCommand(exitCmd);
		           
	                break;
	              case 1: //游戏说明
	                menuCount=1;
	                curMenu=3;
	                break;
	              case 2: //退出游戏
	              	 main.doExit();
	                break;
	              case 3:
	              	menuCount=0;
	              	curMenu=0;
                       
	            }

	        }
	        repaint();
	        break;
	     
	
	
	   case 2: //游戏态	

	       
	        switch(gameCode) {
			
              case Canvas.UP:	
              if(jumpCan){
                
                if((jumpUD==0||jumpUD==2)&&manState!=0){
              
                   if(man.getState()==1){
                   
                    man.setState(3);
                   }else if(man.getState()==2){
                    
                    man.setState(4);
                   }
                   
                   STATE=1;
                   jumpCan=false;//设置为跳跃态
                   
                }
               }
                break;
			  case Canvas.DOWN:
			  if(jumpCan){
			    if((jumpUD==1||jumpUD==2)&&manState!=0){//如果可以向下蹦
			      
			       if(man.getState()==1){
                   
                     man.setState(3);
                   
                   }else if(man.getState()==2){
                   
                     man.setState(4);
                   }
			        
			       STATE=2;
			       jumpCan=false;
			       
			    }
			  }
	            break;
	        	
			 case Canvas.LEFT://左蹦
			 if(jumpCan){
				
			    if(man.getX()>15){
			    	v=60;
			 	STATE=3;//移动的同时传递一个状态变量
			 	if(man.getState()!=5&&man.getState()!=6){
			 	
			 	
			 	   man.setState(3);
			 	}else if(man.getState()==5||man.getState()==6){
			 	   man.setState(5);
			 	}
			 	jumpCan=false;
			 	}
			 }
				break;
			 case Canvas.RIGHT://右蹦
			 if(jumpCan){
			    if(man.getX()<109){
                v=60;
			 	STATE=4;
			 	if(man.getState()!=5&&man.getState()!=6){
			 	
		    	 	man.setState(4);
		        }else if(man.getState()==5||man.getState()==6){
		        	man.setState(6);
		        }
			 	jumpCan=false;
			 	}
			 }
				break;
			 case FIRE:	//按下Fire按键时
			   
			 break;
			}
	    break;    
	  }
   }
	
  void crash2(){//与墙壁的碰状判断
  	//左边两个墙壁
 
  
  	if((man.getX()>0)
         &&(man.getX()<10)
         &&(man.getY()>0)
         &&(man.getY()<45)){
         man.setAlive(false);
         	
     }
     
     if((man.getX()>0)
         &&(man.getX()<10)
         &&(man.getY()+21>78)
         &&(man.getY()+21<128)){
         man.setAlive(false);
         	
     }
      
     
     
    //右边两个墙壁
     if((man.getX()+17>118)
         &&(man.getX()+17<128)
         &&(man.getY()>0)
         &&(man.getY()<45)){
         man.setAlive(false);
         	
     }
    
     if((man.getX()+17>118)
         &&(man.getX()+17<128)
         &&(man.getY()+21>78)
        ){

⌨️ 快捷键说明

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