[Java] 贪吃蛇java代码 →→→→→进入此内容的聊天室

来自 , 2020-10-23, 写在 Java, 查看 111 次.
URL http://www.code666.cn/view/e6384711
  1. public class Snake{
  2.  
  3.         //食物成员变量
  4.         Food food = new Food();
  5.  
  6.         //蛇的成员变量
  7.         int[] snakex = new int[150];
  8.         int[] snakey = new int[150];
  9.         int len =  3 , score = 0 , speed = 1;
  10.         int i = 20 , j = 0;
  11.         int tempx = 0 , tempy = 0;
  12.         int tempx1 = 0 , tempy1 = 0;
  13.         boolean start = false;
  14.         boolean failed = true;
  15.         boolean isMove = false;
  16.         boolean pause = true;
  17.  
  18.  
  19.         //小蛇移动的方式
  20.         public boolean move(){
  21.                 tempx = snakex[0];
  22.                 tempy = snakey[0];
  23.                 snakex[0] += i;
  24.                 snakey[0] += j;
  25.                 for (int m = len ; m > 0 ; m--){
  26.                         if(m != 1){
  27.                                 tempx1 = snakex[m-1];
  28.                                 snakex[m] = tempx1;
  29.                                 tempy1 = snakey[m-1];
  30.                                 snakey[m] = tempy1;
  31.                         }
  32.                         else{
  33.                                 snakex[m] = tempx;
  34.                                 snakey[m] = tempy;
  35.                         }
  36.                 }
  37.  
  38.                 //遇到墙体
  39.                 if( snakex[0] < 210)
  40.                         snakex[0] = 770;
  41.                 if(snakex[0] >= 790)
  42.                         snakex[0] = 210;
  43.                 if(snakey[0] < 80)
  44.                         snakey[0] = 540;
  45.                 if(snakey[0] >= 560)
  46.                         snakey[0] = 80;
  47.  
  48.                 // 吃食物
  49.                 if(snakex[0] == food.eatx && snakey[0] == food.eaty){  
  50.                         len ++;
  51.                         score += 50*speed;
  52.                         food.eatx = food.r.nextInt(29)*20+210;
  53.                         food.eaty = food.r.nextInt(24)*20+80;
  54.                         for(int k = 0 ; k < len ; k++){
  55.                                 if(food.eatx == snakex[k] && food.eaty == snakey[k]){
  56.                                         food.eatx = food.r.nextInt(29)*20+210;
  57.                                         food.eaty = food.r.nextInt(24)*20+80;
  58.                                 }
  59.                         }
  60.                 }
  61.                 // 如果蛇头碰到自己的身体游戏结束
  62.                 for (int i = 1 ; i < len; i ++){
  63.                         if (snakex[0] == snakex[i] && snakey[0] == snakey[i]){
  64.                                 failed = false;
  65.                                 start = false;
  66.                         }
  67.         }
  68.  
  69.  
  70.                 //分数越高速度越快
  71.                 if(score == 150)
  72.                         speed = 2;
  73.                 if(score == 450)
  74.                         speed = 3;
  75.                 if(score == 900)
  76.                         speed = 4;
  77.                 if(score == 1500)
  78.                         speed = 5;
  79.                 if(score == 2250)
  80.                         speed = 6;
  81.                 if(score == 3150)
  82.                         speed = 7;
  83.  
  84.                 return isMove = false;
  85.         }
  86.  
  87.         //蛇的初始化
  88.         public void setup(){
  89.                 i = 20;
  90.                 j = 0;
  91.                 len = 3;
  92.                 score = 0;
  93.                 speed = 1;
  94.                 snakex[0] = 310; snakex[1] = 290; snakex[2] = 270;
  95.                 snakey[0] = 300; snakey[1] = 300; snakey[2] = 300;
  96.         }
  97. }

回复 "贪吃蛇java代码"

这儿你可以回复上面这条便签

captcha