java版贪吃蛇小游戏

上传人:第*** 文档编号:61573012 上传时间:2018-12-04 格式:DOC 页数:15 大小:91.50KB
返回 下载 相关 举报
java版贪吃蛇小游戏_第1页
第1页 / 共15页
java版贪吃蛇小游戏_第2页
第2页 / 共15页
java版贪吃蛇小游戏_第3页
第3页 / 共15页
java版贪吃蛇小游戏_第4页
第4页 / 共15页
java版贪吃蛇小游戏_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《java版贪吃蛇小游戏》由会员分享,可在线阅读,更多相关《java版贪吃蛇小游戏(15页珍藏版)》请在金锄头文库上搜索。

1、辅助类 Coordinate.java复制代码package com.nn.util; /* *坐标点 */ public class Coordinate public int x; public int y; public Coordinate(int newX, int newY) x = newX; y = newY; public boolean equals(Coordinate other) if (x = other.x & y = other.y) return true; return false; Override public String toString() ret

2、urn Coordinate: + x + , + y + ; 复制代码接口 Direction复制代码package com.nn.entity; public interface Direction public class Dir public static final int UP = 1; public static final int DOWN = 2; public static final int LEFT = 3; public static final int RIGHT = 4; 复制代码实体类 Snake.java复制代码package com.nn.entity; i

3、mport java.util.ArrayList; import com.nn.entity.Direction.Dir; import com.nn.util.Coordinate; public class Snake /小方块x坐标 private int x; /小方块y坐标 private int y; /宽度 public static final int TILE_W = 10; /高度 public static final int TILE_H = 10; /下一个方向 private int mNextDirection = Dir.RIGHT; /游戏是否结束 priv

4、ate boolean isEnd; /存放贪吃蛇 private ArrayList mSnakeTrail = new ArrayList(); /存放豆子 private ArrayList mAppleList = new ArrayList(); public Snake() initNewGame(); /初始化新游戏 public void initNewGame() /初始化蛇身 mSnakeTrail.add(new Coordinate(5, 7); mSnakeTrail.add(new Coordinate(6, 7); mSnakeTrail.add(new Coor

5、dinate(7, 7); mSnakeTrail.add(new Coordinate(8, 7); mSnakeTrail.add(new Coordinate(9, 7); mSnakeTrail.add(new Coordinate(10, 7); /初始化豆子 mAppleList.add(new Coordinate(20,3); /设置初始状态为false isEnd = false; public ArrayList getmSnakeTrail() return mSnakeTrail; public ArrayList getmAppleList() return mApp

6、leList; public boolean isEnd() return isEnd; public int getmNextDirection() return mNextDirection; public void setEnd(boolean isEnd) this.isEnd = isEnd; 复制代码frame类 继承JFrame SnakeFrame.java复制代码package com.nn.ui; import java.awt.Dimension; import java.awt.Toolkit; import javax.swing.JFrame; /* *游戏界面 *

7、/ public class SnakeFrame extends JFrame private static final long serialVersionUID = 1L; /宽度 private static final int width = 530; /高度 private static final int height = 450; /高度偏移量 private static final int offset = 15; public SnakeFrame() init(); /* * 初始化游戏界面 */ private void init() this.setTitle(Ja

8、va版贪吃蛇_1.0); /frame的高度 宽度 this.setSize(width, height); /窗口居中显示 Toolkit toolkit = Toolkit.getDefaultToolkit(); Dimension screen = toolkit.getScreenSize(); int w = screen.width; int h = screen.height; /计算左上角坐标点的x y值 this.setLocation(w-this.getWidth()/2, (h-this.getHeight()/2-offset); /设置默认关闭的操作 this.s

9、etDefaultCloseOperation(EXIT_ON_CLOSE); /设置窗口大小不可改变 this.setResizable(false); /设置可见性 this.setVisible(true); this.setLayout(null); 复制代码panel j继承JPanel SnakePanel.java复制代码package com.nn.ui; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.event.ActionEvent; import

10、 java.awt.event.ActionListener; import java.util.ArrayList; import javax.swing.JButton; import javax.swing.JPanel; import com.nn.control.PlayControl; import com.nn.entity.Snake; import com.nn.util.Coordinate; public class SnakePanel extends JPanel private static final long serialVersionUID = 1L; /panel的宽度 private static final int width = 400; /panel的高度 private static final int height = 400; /坐标点x private static final int x = 10; /坐标点y private static final int y = 10; /方块尺寸 private static final int SIZE = 10; /是否开启网格 private boolean isOpen = false; private Snake snake;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号