为了尽量复原泡泡堂游戏,我们初步实现了机器人功能。该机器人可以判断障碍物释放炸弹、规避炸弹、攻击玩家。目前该机器人仍存在一些小问题,比如某些情况会卡住不动
人物在拐角处移动的时候经常不是刚好对齐的状态,程序会判定玩家碰撞了障碍物所以导致玩家无法拐弯。所以我们在处理这种情况的时候,会让玩家进行平滑的移动使得玩家看上去是滑进去的,增强玩家游戏体验
如果您仅是想试玩该泡泡堂游戏,那么可以选择以下方式获得打包文件夹,并执行其中的CrazyArcade.jar文件
注意:无论您使用哪种方式,在运行程序之前请确保您安装了JRE环境
如果您是想获取该项目源代码进行参考、学习或者修改,可以按以下步骤进行
该项目是练习项目,没有参与任何商业行为。
游戏启动入口
package com.a225.main; import java.io.IOException; import com.a225.frame.GameFrame; import com.a225.model.loader.ElementLoader; import com.a225.thread.GameMusicPlayer; /** * 游戏启动入口 * @ClassName: GameStart * @Description: * @author: WeiXiao * @CreateDate: 2019年4月8日 下午4:17:37 */ public class GameStart { private static GameFrame gameFrame; //游戏启动入口 public static void main(String[] args) { // 资源加载 try { ElementLoader.getElementLoader().readGamePro(); ElementLoader.getElementLoader().readImagePro(); ElementLoader.getElementLoader().readCharactorsPro(); ElementLoader.getElementLoader().readBubblePro(); ElementLoader.getElementLoader().readSquarePro(); } catch (IOException e) { System.out.println("资源加载失败"); e.printStackTrace(); } //初始化 gameFrame = new GameFrame(); //界面显示 gameFrame.setVisible(true); //音乐播放 GameMusicPlayer musicPlayer = new GameMusicPlayer(); musicPlayer.start(); } /** * 界面切换 * @param panelName 界面名称 */ public static void changeJPanel(String panelName){ if(panelName == "game") { GameController.setGameRunning(true); gameFrame.addListener(); } else { GameController.setGameRunning(false); gameFrame.removeListener(); } gameFrame.changePanel(panelName); //强制刷新,否则监听无效 gameFrame.setVisible(false); gameFrame.setVisible(true); } public static void startNewGame() { GameController.setGameRunning(true); gameFrame.startGame(); changeJPanel("game"); } }
游戏控制信息类
package com.a225.main; /** * 游戏控制信息类 * @ClassName: GameController * @Description: * @author: WeiXiao * @CreateDate: 2019年4月12日 上午9:13:13 */ public class GameController { private static boolean gameRunning = false; private static boolean twoPlayer; private static int npcNum; public static boolean isGameRunning() { return gameRunning; } public static void setGameRunning(boolean gameRunning) { GameController.gameRunning = gameRunning; } public static boolean isTwoPlayer() { return twoPlayer; } public static void setTwoPlayer(boolean twoPlayer) { GameController.twoPlayer = twoPlayer; } public static int getNpcNum() { return npcNum; } public static void setNpcNum(int npcNum) { GameController.npcNum = npcNum; } }
代码过多,不便全部放出,获取完整项目,前往
以上就是JAVA实现的CrazyArcade泡泡堂游戏的详细内容,更多关于Java CrazyArcade泡泡堂游戏的资料请关注脚本之家其它相关文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、来自互联网转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系QQ:712375056 进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
Copyright © 2009-2021 56dr.com. All Rights Reserved. 特网科技 特网云 版权所有 珠海市特网科技有限公司 粤ICP备16109289号
域名注册服务机构:阿里云计算有限公司(万网) 域名服务机构:烟台帝思普网络科技有限公司(DNSPod) CDN服务:阿里云计算有限公司 中国互联网举报中心 增值电信业务经营许可证B2
建议您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流浏览器浏览本网站