首页

java开发贪吃蛇游戏

java

2020-6-21

package Snake;

import javax.swing.ImageIcon;

import Resources.ReadyImages;

public class Snake implements Runnable { // 创建一个蛇类

	public int snakeLength; // 蛇的长度
	public int[] snakeX = new int[600]; // 蛇的x坐标
	public int[] snakeY = new int[500]; // 蛇的y坐标
	public String action = "R";	//蛇的动作,默认是向右
	public ImageIcon headimages = ReadyImages.headrightIcon;//头部的图片

	public Snake() { // 初始化蛇的位置

		// 每一个格子都有(25高25宽)
		snakeLength = 3;
		snakeX[0] = 100;snakeY[0] = 100;
		snakeX[1] = 75;snakeY[1] = 100;
		snakeX[2] = 50;snakeY[2] = 100;
	}

	// 重写run方法,
	@Override
	public void run() {
		
		for (int i = snakeLength - 1; i > 0; i--) { // 除了头部其他的都向右移

			snakeX[i] = snakeX[i - 1];
			snakeY[i] = snakeY[i - 1];

		}
		
		try {
			Thread.sleep(100);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}

	}

	/** 吃的动作 */
	public boolean eatfood(int foodx, int foody) {

		// 吃到食物
		if (foodx == snakeX[0] && foody == snakeY[0]) {

			snakeLength  ; // 身体加1
			return true;
		}

		return false;
	}
	
	/**吃到自己*/
	public boolean eatmyself() {
		
		for (int i = 1; i < snakeLength; i  ) {

			if (snakeX[0] == snakeX[i] && snakeY[0] == snakeY[i]) {
				return true;
			}
		}
		
		return false;
	}

	/**蛇的边界问题*/
	public void border() {
		
		if (action == "L") { // 判断蛇的动作

			snakeX[0] = snakeX[0] - 25;
			if (snakeX[0] < 25) {
				snakeX[0] = 600;
			}
			
			headimages = ReadyImages.headleftIcon;

		} else if (action == "R") {

			snakeX[0] = snakeX[0]   25;
			if (snakeX[0] > 600) {
				snakeX[0] = 25;
			}
			
			headimages = ReadyImages.headrightIcon;
			
		} else if (action == "U") {

			snakeY[0] = snakeY[0] - 25;
			if (snakeY[0] < 75) {
				snakeY[0] = 400;
			}
			headimages = ReadyImages.headupIcon;
			
		} else if (action == "D") {

			snakeY[0] = snakeY[0]   25;
			if (snakeY[0] > 400) {
				snakeY[0] = 75;
			}
			headimages = ReadyImages.headdownIcon;
		}
	}
	
	
	
}

资源下载此资源下载价格为3D币(VIP免费),请先
资源文件列表
贪吃蛇游戏/snakes.jar , 12225
贪吃蛇游戏/Snake/.classpath , 301
贪吃蛇游戏/Snake/.project , 381
贪吃蛇游戏/Snake/.settings/org.eclipse.jdt.core.prefs , 598
贪吃蛇游戏/Snake/bin/Controller/GameKeyListener.class , 1255
贪吃蛇游戏/Snake/bin/GamePanel/GamePanel.class , 2853
贪吃蛇游戏/Snake/bin/Resources/ReadyImages.class , 1249
贪吃蛇游戏/Snake/bin/Snake/Snake.class , 1840
贪吃蛇游戏/Snake/bin/StartGame/Start.class , 827
贪吃蛇游戏/Snake/src/Controller/GameKeyListener.java , 1174
贪吃蛇游戏/Snake/src/GamePanel/GamePanel.java , 2788
贪吃蛇游戏/Snake/src/Resources/ReadyImages.java , 1058
贪吃蛇游戏/Snake/src/Snake/Snake.java , 2102
贪吃蛇游戏/Snake/src/StartGame/Start.java , 633
没有账号? 忘记密码?

社交账号快速登录