主要是对何青编写的java游戏程序设计教程的综合运用,游戏主体主要有两关,本游戏需求许多相关要素,包括玩家的键盘各种按键的处理办法,包括左右移动,space跳跃,r键重新开始,ctrl发射子弹,p键暂停,esc退出到菜单,还有包括自己调试时加的’j’、’z’、’+/=’、’-’所分别代表的unattack态,跳跃初速度加10,进入下一关,回到上一关,并且设计了各种道具(包括恢复生命的红心,获得uattack状态的五角星和提升跳跃的能量球),设计了四种敌人,因为时间紧促,目前行为模式没有什么区别,但设计了简单的反应,例如在发现玩家之后会主动冲向玩家(设计了关于敌人是否发现玩家的hasFoundPlayer()方法放在npc类之中,并对其进行相关使用来实现),而不是机械性的反复运动,此外游戏本身有着计分系统,虽然没有完善通关记录的实现,但还是能时刻在屏幕中显示分数,此外在屏幕还会显示敌人数和剩余生命,本游戏设计了两个关卡并通过文件读写和将其数据转化为各种砖块背景(所写的TileMap类和gameworldmanager类中的loadTileMap方法来实现),以及通过BufferedImage来存放背景并能将背景(窗口背景)进行滚动(通过所写的Ribbon 类中的各种方法)从而达到背景在玩家走的时候也在动的感觉。同时设计了子弹的发射,能够通过子弹和‘踩’击杀敌人获得分数。当击杀玩全部敌人进入下一关卡等等。每一句都有相应的注释,附带一个上万字的java大作业报告书,适用于想在大学期间学习简单java游戏设计的同学。
1