我是如何从0开始,在23天里完成一款Android游戏开发的 – Part4 – 第9至第11天
本文由 ImportNew - ImportNew读者 翻译自 bigosaur。如需转载本文,请先参见文章末尾处的转载要求。
本文是这个系列的第四篇文章,记录作者在第9至第11天的情况。文章由@蠡暘翻译并由ImportNew团队成员整理了全文。如果你也希望参与类似的系列文章翻译,可以加入我们的Android开发 和 技术翻译 小组。
第9天 这是一款第一人称视角射击游戏,但它绝不老套
在与人们谈论起这款游戏的时候,为它定义一个明确的分类确实很难。虽然可以将它看作一款传统的街机游戏,但与那些到处移动自己的飞船、直线开火的街机游戏不同的是——你的位置是固定的并且可以按照指令向任意方向开枪。经过仔细回想,我从来没有见过一模一样的游戏,所以不要试图把它归到那些现有的分类中。我能给出的最为贴切的描述是:与太空入侵者类似,但是游戏中没有飞船。这样的描述把人们完全搞晕了。
今天我重写了制造外星人的代码,并且把外星人的颜色都改成了白色。这样就可以在游戏运行过程中用同一个子画面更新外星人的颜色,假设你没有发现外星人是单色的。除了boss之外,我都打算这样处理。boss会增加一些发光的动态效果之类的。谁知道呢,也许会有艺术家发现游戏的潜力并且创作出给力的效果。如果发现这种情况请联系我。
我考虑在敌人将要“升级”的时候给出提示,像是“外星人已经升级”这样带有金属感的文字会与外星人一起出现,
爆炸的代码也进行了统一。一开始是通过一个2D“像素”数组展示敌人被炸成碎片。现在这段代码进行了优化,各种外星人都使用了同样的效果,只有boss除外。boss会分阶段炸成碎片。这个设计我还需要仔细考虑。
无论如何,如果你对玩这个游戏感兴趣,这个.apk文件就是迄今为止的全部成果。虽然没有什么特色,但是你能看到我一直在努力。
第10天 让游戏玩起来更有意思
我已经开始怀疑这个概念是否真的具有较长时间的可玩性。如果外星人可以左右移动游戏会变得更好玩一点。我新增了两种攻击队形看上去感觉好多了。我还增加了击毁外星人爆炸时镜头抖动的效果,这样游戏感觉更鲜活了。重新填充弹药的功能也实现了,现在如果你把十发容量的弹夹打空就不得不重新填装。在使你中断射击重新填充弹药的同时可玩性也增加了。我把一些外星人丑陋的品红色替换成冷色调的蓝白色效果好看多了。
我想如果设定成玩家只操控屏幕的下半部分——有护盾遮挡的地方,屏幕的上半部分就可以一直看到敌人的情况而不会被玩家的手指挡到。这种情况是经常出现的。一开始护盾可能有半个屏幕大,随着敌人的攻击护盾逐渐被打掉直到枪口裸露没有任何防护。虽然这意味着可能要画一把枪却不失为一个好主意,我可能会试试。
星空之战的名字已经取好了。我尝试了其他20几个名字,但由于太空主题的游戏太多很难找到一个免费的名字。
第11天 增加外星人种类、攻击方式,第一级boss出现
第一个boss出现在第10关出现,它的外形就是个大方块。我称它为Borg,虽然它和Borg一点不像。它会不断发射外星人,你必须打很多次才能消灭它,我为干掉boss的场景设置了一个大的震动。boss是由10×10的像素积木组合而成爆炸效果很炫。
我还加入了个新蛇形移动攻击,外星人落下时会左右移动并然后下降不断重复直至到达底部。我在这个攻击模式中稍稍加快了移动速度,这样玩起来更具有挑战性。
我还画了一些好看的外星人并给它们起了名字,每种类型都由Java类的名字命名。分别是:Hairy、Glider、Worker和Eater。
这是今天做的.jar文件,只要你安装了java就可以在windows、linux、mac上运行。在linux上我执行的命令是:
java -jar stardust.jar
为了保证正常的游戏效果,请注意窗口的高度不能小于800。我在 1680×1050的台式机上运行良好,但在1280×800的笔记本上由于任务栏占据了一定空间窗口被垂直压缩,因此我需要点击外星人的下方进行射击。我想如果要发布PC版的就必须解决这个问题。
-- 扫描加关注,微信号: importnew --原文链接: bigosaur 翻译: ImportNew.com - ImportNew读者
译文链接: http://www.importnew.com/6640.html
[ 转载请保留原文出处、译者、译文链接和上面的微信二维码图片。]
相关文章
- 我是如何从0开始,在23天里完成一款Android游戏开发的 – Part3 – 第6至第8天
- 我是如何从0开始,在23天里完成一款Android游戏开发的 – Part 2 – 第3至第5天
- 我是如何从0开始,在23天里完成一款Android游戏开发的 – Part 1 – 开篇与前2天
- Android vs iOS 游戏之迷思
- 深入解析Android关机
- 安卓上的蓝牙数据传输
- Android支持库——RenderScript
- Android禅艺
- 以日为始:Dalvik vs ASM.JS vs 本地代码——大比拼
- 神秘的朝鲜Android平板电脑——Samjiyon