首页 > 分享 > Java实现开心消消乐游戏的代码解析

Java实现开心消消乐游戏的代码解析

开心消消乐小游戏

最新推荐文章于 2024-06-01 21:54:49 发布

原创 于 2023-04-02 20:27:30 发布 · 2.3k 阅读

· 11

· 58 ·

CC 4.0 BY-SA版权

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

开心消消乐

文章目录 开心消消乐 消消乐游戏需求 游戏展示 初始界面 爆炸展示 代码实现 熊类 鸟类 狐狸类 青蛙类 元素类 图片类 游戏窗口

消消乐游戏需求

所参与的角色:熊、鸟、狐狸、青蛙 功能: 由系统随机长成元素并显示在窗口中(8行6列),保证不能有可消元素 选中两个元素,若相邻则交换,而后判断: 若不可消(不连3),则换回去 若可消(连3及以上),则: 爆破后删除元素 重新生成新的元素,若还是可消则重复2.2步骤,直到没有可消元素为止

游戏展示

初始界面

在这里插入图片描述

爆炸展示

在这里插入图片描述

代码实现

熊类

public class Bear extends Element{ public Bear(int x, int y) { super(x, y); } @Override public ImageIcon getImage() { return Images.bear; } }

java

123456789101112131415161718 鸟类

public class Bird extends Element{ public Bird(int x, int y) { super(x, y); } @Override public ImageIcon getImage() { return Images.bird; } }

java

12345678910111213141516 狐狸类

public class Fox extends Element { public Fox(int x, int y) { super(x, y); } @Override public ImageIcon getImage() { return Images.fox; } }

java

12345678910111213141516 青蛙类

public class Frog extends Element { public Frog(int x, int y) { super(x, y); } @Override public ImageIcon getImage() { return Images.frog; } }

java

12345678910111213141516 元素类

public abstract class Element { private int x, y; //x, y 坐标 private boolean selected; //是否选中 private boolean eliminated; //是否可消除 private int eliminatedIndex; //爆炸动画图片起始下标 public Element(int x, int y) { this.x = x; this.y = y; this.selected = false; this.eliminated = false; this.eliminatedIndex = 0; } /** * 获取图片 * * @return */ public abstract ImageIcon getImage(); public void paintElement(Graphics g) { if (isSelected()) { g.setColor(Color.GREEN); g.fillRect(x, y, World.ELEMENT_SIZE, World.ELEMENT_SIZE); this.getImage().paintIcon(null, g, this.x, this.y); } else if (isEliminated()) { //若没到最后一张爆炸图 if (eliminatedIndex < Images.bombs.length) { Images.bombs[eliminatedIndex++].paintIcon(null, g, x, y); } } else { this.getImage().paintIcon(null, g, this.x, this.y); } } /** * 是否选中 * * @return */ boolean isSelected() { return selected; } public void setSelected(boolean selected) { this.selected = selected; } /** * 是否消除 * * @return */ boolean isEliminated() { return eliminated; } public void setEliminated(boolean eliminated) { this.eliminated = eliminated; } public int getX() { return x; } public int getY() { return y; } public void setX(int x) { this.x = x; } public void setY(int y) { this.y = y; } }

java

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 图片类

public class Images { public static ImageIcon background; //背景图 public static ImageIcon bird; public static ImageIcon bear; public static ImageIcon fox; public static ImageIcon frog; public static ImageIcon[] bombs; static { background = new ImageIcon("HappyEliminate/src/com/liner/img/background.png"); bird = new ImageIcon("HappyEliminate/src/com/liner/img/bird.png"); bear = new ImageIcon("HappyEliminate/src/com/liner/img/bear.png"); fox = new ImageIcon("HappyEliminate/src/com/liner/img/fox.png"); frog = new ImageIcon("HappyEliminate/src/com/liner/img/frog.png"); bombs = new ImageIcon[4]; for (int i = 0; i < bombs.length; i++) { bombs[i

java

1234567891011121314151617181920212223

相关知识

《开心消消乐》中的每日挑战有什么奖励?
《开心消消乐》关于乐元素所做的三消游戏!
花朵消消乐游戏
《开心消消乐®
开心消消乐赚钱版安卓下载
花花消消乐游戏下载
乐元素徐辉:《开心消消乐》4亿用户背后的故事丨游戏陀螺
开心消消乐关卡花在哪里更换
《开心消消乐®》官方比赛报名流程
《开心消消乐®》官方论坛:交流与分享攻略

网址: Java实现开心消消乐游戏的代码解析 https://m.huajiangbk.com/newsview2553908.html

所属分类:花卉
上一篇: 2026年1月50D消光高弹面料
下一篇: Unity 3D游戏