【libnids 源码】【js查看源码乱码】【极速版打卡源码】贪吃蛇源码java下载_贪吃蛇源码java下载不了

时间:2024-12-24 06:58:58 编辑:gta源码 来源:多用户商城源码A

1.java贪吃蛇游戏程序 问题 急!贪吃!蛇源!下下载!载贪libnids 源码!吃蛇!源码!贪吃!蛇源!下下载!载贪!吃蛇js查看源码乱码
2.求贪吃蛇java程序代码(要能运行的源码,有完整注释的)
3.求JAVA贪吃蛇代码 要能运行有注解的!

贪吃蛇源码java下载_贪吃蛇源码java下载不了

java贪吃蛇游戏程序 问题 急!贪吃!蛇源!下下载!极速版打卡源码!!!!!csgo外部雷达源码!!

       太简单了,我都写在自己手机上了。

       都不看书的AppDown软件库源码,全部自己思考。

       他这代码也太烂了。

       // 蛇是用一个二维的int数组表示

       //snake[i][0] 表示横轴 snake[i][1]表示纵轴

       public int[][] snake = new int[][2];

       public int SnakeNum; //蛇长度

       public final int SnakeSize; //大概是蛇的最长值

       public int foodX; //食物横轴

       public int foodY; //食物纵轴

       public Random random = new Random(); //随机丢食物

       private void init()

       {

       SnakeNum = 5; //初始蛇长

       exp = 0;

       for (int i = 0; i < SnakeNum; i++)

       {

       snake[i][0] = SnakeSize * 3;

       snake[i][1] = SnakeSize * 3;

       }

       DIR = DIR_DOWN;

       foodX = SnakeSize * 5; 初始食物

       foodY = SnakeSize * 5;

       }

       private void move(int dir)

       {

       //把头以外的部分向前一格 去掉了尾那一格

       for (int i = SnakeNum; i > 0; i--)

       {

       snake[i][0] = snake[i - 1][0];

       snake[i][1] = snake[i - 1][1];

       }

       //根据 dir 方向做蛇头

       switch (dir)

       {

       case DIR_UP:

       snake[0][1] = snake[0][1] - SnakeSize;

       break;

       case DIR_DOWN:

       snake[0][1] = snake[0][1] + SnakeSize;

       break;

       case DIR_LEFT:

       snake[0][0] = snake[0][0] - SnakeSize;

       break;

       case DIR_RIGHT:

       snake[0][0] = snake[0][0] + SnakeSize;

       break;

       }

       }

       private void eatFood()

       {

       //如果蛇头与食物相等 所以吃掉

       if (snake[0][0] == foodX && snake[0][1] == foodY)

       {

       SnakeNum++; //蛇长加一格

       exp++; //加分 还是什么

       one++; //加分 还是什么

       levelup(); //加速度吧

       filename = 1; //文件名

       isPlaySound = true; //声音吧

       PlaySound(filename); //拨声音

       makeFood(); // 抛食物

       }

       }

       private void makeFood()

       {

       while (true)

       {

       //食物是随机的。但是不能在蛇身上和屏幕外

       //并且坐标要为 蛇每一格长度的整数倍

       foodX = Math.abs(random.nextInt() % (SCREEN_WIDTH - SnakeSize + 1)) / SnakeSize * SnakeSize;

       foodY = Math.abs(random.nextInt() % (SCREEN_HEIGHT - B_BLACK - SnakeSize + 1)) / SnakeSize * SnakeSize;

       boolean b = true;

       //不能在蛇身上

       for (int i = 0; i < SnakeNum; i++)

       {

       if (foodX == snake[i][0] && snake[i][1] == foodY)

       {

       b = false;

       break;

       }

       }

       if (b)

       {

       break;

       }

       }

       }

       //判断游戏结束

       private boolean isGameOver()

       {

       // 如果蛇头走出了屏幕 结束

       if (snake[0][0] < 0 || snake[0][0] > (SCREEN_WIDTH - SnakeSize) ||

       snake[0][1] < 0 || snake[0][1] > (SCREEN_HEIGHT - B_BLACK - SnakeSize))

       {

       return true;

       }

       for (int i = 4; i < SnakeNum; i++)

       {

       if (snake[0][0] == snake[i][0] && snake[0][1] == snake[i][1])

       {

       return true;

       }

       }

       return false;

       } //后面的写不下了 QQ

求贪吃蛇java程序代码(要能运行的,有完整注释的)

       三个文件,楼主看好:

       运行可以,但是并不能鼓吹是一个具有好的风格的代码,。

       //文件一

       package greedysnake_cx;

       public class Node {

        int x=0;

        int y=0;

        int nodewidth;

        int nodeheight;

        Node(int x,int y){

        this.x=x;

        this.y=y;

        }

       }

       //文件二

       package greedysnake_cx;

       /

**

        * 实现一个greedysnake的模型,具有功能:

        * 1)移动,moveOn()----从director参数中获取方向信息,如果方向定义的下一个点的逻辑值是true,检查是不是food,是则将food添加到

        * 列表的头部,snake继续移动,不是则停止移动(撞到蛇尾巴了)

        * 2)加速,speedUp()----将现成的停滞时间间隔interval按照一定的比率 speedRate进行扩大

        * 3)减速,speedDown()----....

        *

        * 该类实现Runnable接口,

        * */

       //定义snake的模型

       import java.util.*;

       import javax.swing.*;

       public class SnakeModel implements Runnable {

        private GreedSnake gs;

        //给每一个矩阵点确立一个boolean值

        boolean[][] matrix;

        private int maxX;

        private int maxY;

        //设置一个节点的列表;

        LinkedList nodeArray = new LinkedList();

        Node food=null;

        int direction=UP;

        int score=0;

        //定义方向

        public final static int LEFT=1;

        public final static int UP=2;

        public final static int RIGHT=3;

        public final static int DOWN=4;

        private int interval=; //停顿时间的间隔

        boolean pause=false; //定义暂停

        private double speedRate=0.5; //定义速度的变更幅度

        //constructor

        public SnakeModel(GreedSnake gs,int maxx,int maxy){

        this.gs=gs;

        this.maxX=maxx;

        this.maxY=maxy;

        //this.matrix=null;

        ////////////////////////////////////////////////////////////////////

        //init matrix[][];

        matrix=new boolean[maxX][]; //