在上篇我们完成了子弹和地图碰撞的检测,在这篇我们将完成敌方坦克AI的编写。
具体思路是屏幕中保持有四个敌方坦克,然后坦克随机方向运动,并且子弹消失后1秒发射一次
1.我们新建一个敌方坦克的AI类来控制地方坦克AI行为:
static const char* enemyTankType[] =
{
"normalU.png", "speedU.png", "armor1U.png"
};
class EnemyAI
{
public:
EnemyAI();
~EnemyAI();
static EnemyAI* createEnemyAIWithTank(Tank* tank);
void initEnemyAIWithTank(Tank* tank);
void update(float delta);
private:
void addTank(float delta);
void tankAction(float delta);
private:
CCArray* mEnemyTanks;
Tank* mTank;
TileMapInfo* mTileMapInfo;
//出现地点
CCPoint bornPoint[3];
};
上面目前只添加三种类型的敌方坦克,
在成员变量中,mEnemyTanks存放了所有的坦克,
mTank存放了玩家坦克,最后mTileMapInfo存放了地图信息。
bornPoint存放了敌方坦克出身的三个位置。
2.先实现void EnemyAI::initEnemyAIWithTank(Tank* tank)来初始化我们的EnemyAI类:
void EnemyAI::i