java贪吃蛇豆子和蛇的类
导读:Java贪吃蛇游戏是一款经典的游戏,游戏规则是控制一条蛇不断地吃豆子增长身体,同时避免撞到自己或墙壁。本篇文章将介绍Java实现贪吃蛇游戏中豆子和蛇的类设计。豆子类public class Bean {private int x;priva...
Java贪吃蛇游戏是一款经典的游戏,游戏规则是控制一条蛇不断地吃豆子增长身体,同时避免撞到自己或墙壁。本篇文章将介绍Java实现贪吃蛇游戏中豆子和蛇的类设计。
豆子类
public class Bean { private int x; private int y; private int size; public void Bean(int x, int y, int size) { this.x = x; this.y = y; this.size = size; } public void draw(Graphics2D g2d) { g2d.setColor(Color.yellow); g2d.fillRect(x, y, size, size); } public int getX() { return x; } public int getY() { return y; } public int getSize() { return size; } }
在豆子类中,我们定义了豆子的位置和大小,并且定义了初始化豆子的方法和绘制豆子的方法。其中,我们使用Graphics2D来画出豆子的图形,并且在getX、getY和getSize方法中返回豆子的属性值。
蛇类
public class Snake { private LinkedListbody; private int size; private int direction; public void Snake(int size, int direction, Point origin) { body = new LinkedList(); body.add(origin); this.size = size; this.direction = direction; } public void move() { Point head = new Point(getHead()); switch(direction) { case 0: head.translate(0, -size); break; case 1:head.translate(size, 0); break; case 2:head.translate(0, size); break; case 3:head.translate(-size, 0); break; } body.addFirst(head); body.removeLast(); } public void draw(Graphics2D g2d) { for(Point p : body) { g2d.setColor(Color.green); g2d.fillRect(p.x, p.y, size, size); } } public boolean checkCollision() { Point head = body.getFirst(); int x = head.x; int y = head.y; if(x= 600 || y= 600) { return true; } for(int i = 1; i在蛇类中,我们定义了蛇的身体、大小和移动方向,并且定义了初始化蛇的方法、蛇移动的方法、绘制蛇的方法和检查蛇是否撞墙或撞到自己的方法。其中,在移动蛇的方法中,我们使用了LinkedList来维护蛇的身体,并且根据当前的方向更新蛇头的位置。在检查蛇是否撞墙或撞到自己的方法中,我们判断蛇头是否撞到墙壁或蛇身体。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: java贪吃蛇豆子和蛇的类
本文地址: https://pptw.com/jishu/534197.html