本篇介绍坦克大战游戏中的主角,坦克类。游戏中坦克种类有多种,但主要特性大同小异。下图为游戏中定义的坦克类层次图。
Tank为所有坦克类的基类,它定义了几个主要的方法
think() 思考,如有AI,算法在这里实现,对于简单坦克SimpleTank,可能随机选择一步,而对SmartTank来说,向靠近玩家坦克的方向前进一步。
drive() 根据Think决定前进一步
shoot() 根据当前条件决定发射一棵子弹。PlayerTank由玩家和可同时发射的子弹来控制,Enemy坦克一般随机控制是否要发射子弹。
基类每个游戏帧的操作如下
派生类中PlayerTank 和 SmartTank逻辑相对复杂一些,FastTank,和HeavyTank都是SimpleTank的子类,FastTank行驶速度较快,而HeavyTank可以承受多次子弹才会被击毁。
PlayerTank中需要处理玩家按键事件,用于控制上下左右以及发射子弹,还要处理升级功能,如吃到增加宝贝。它的
public void upgrade(Powerup powerup)用于处理升级功能。
而在SmartTank的Think方法,它要根据玩家坦克当前位置算出下一步的方向,以便可以不断向玩家坦克靠近,并发射子弹试图击毁玩家坦克。
这些坦克类都定义在om.pstreets.game.battlecity.actors.tank,代码中有较详细的注释,这里不详细一一说明了。
分享到:
相关推荐
android 坦克大战源码 更多我收藏的android源码请继续。。
Android坦克大战游戏源码
Android 坦克大战源代码。欢迎大家下载学习
Android 原生写的坦克大战游戏,其中包括绘图、自定义控件、音频、数据库等知识
安卓android坦克大战源码TankWar
Android坦克大战游戏分析资料。欢迎大家下载学习
Android开发实现坦克大战游戏,可联网对战,绝对NB
使用Android studio开发的坦克大战游戏,适合刚刚开始学习的小白使用,功能简单,也可以用来当作一个期末的大作业使用,不是很复杂,后续还会有更新。
基于C#.NET的坦克大战游戏的设计与实现
android坦克大战实例。一个小游戏,新学者可以尝试学习
期末作业课程设计使用java开发的坦克大战小游戏源码期末作业课程设计使用java开发的坦克大战小游戏源码期末作业课程设计使用java开发的坦克大战小游戏源码期末作业课程设计使用java开发的坦克大战小游戏源码期末作业...
java毕业设计——网络版坦克大战游戏的设计与实现(论文+答辩PPT+源代码+数据库).zip java毕业设计——网络版坦克大战游戏的设计与实现(论文+答辩PPT+源代码+数据库).zip java毕业设计——网络版坦克大战游戏的设计与...
Android应用源码之坦克大战游戏源码
Funcode编程C++实现坦克大战游戏课程设计 1.内容 在一个战场上,玩家控制坦克,消灭敌方坦克,并防止敌方坦克摧毁我方基地。 2.任务和要求 1).游戏有一个初始游戏页面。 2).按下任意键开始游戏,玩家控制坦克在...
C++大作业坦克大战源码C++大作业坦克大战源码C++大作业坦克大战源码C++大作业坦克大战源码C++大作业坦克大战源码。C++大作业坦克大战源码C++大作业坦克大战源码C++大作业坦克大战源码C++大作业坦克大战源码C++大作业...
分享一款经典的游戏TankWar 坦克大战 Android版,比较完整的游戏源码,Bin目录下有游戏所需要的图像、音效等资源,编译android源码后会在Bin目录下生成apk文件,将此文件安装到android手机中即可玩游戏。 这是一个...