[Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--敌人(二)之BOSS

该章节主要介绍游戏中的BOSS


我主要制作了两个BOSS,分别为第6关的神灯和11关的大猩猩




首先,是BOSS的入场动画,例如第六关墙壁倒塌的效果。我们注意到BaseMap中有个虚函数virtual void waveEvent();,在BaseMap的addWaves函数最后加入waveEvent(),每个地图复写这个函数,根据各个地图写上自己的动画即可。其他关也有类似的动画。


Boss也是继承与Monster基类,除了基本属性略强外,拥有技能。添加一个定时器,来设置不同时间后释放技能。

两个BOSS都有一个同样的技能就是召唤小弟,下面介绍这个技能的实现方式。

在创建BOSS时,除了传入BOSS自身的路线外,将其他所有路线也传入BOSS,作为其小弟的路线,当释放技能时,根据BOSS目前所在位置计算出小弟的出生位置,每个path都添加若干小弟,别忘了在GameMangager加入。

void Boss_Canibal::addSons()
{
	for(unsigned int i =0;i<sonPath.size();i++){
		for(unsigned int j =1;j<sonPath.at(i).size();j++){
			std::vector<Point> points = sonPath.at(i).at(j);
			auto canibalOffspring = CanibalOffspring::createMonster(points,pointCounter);
			this->getParent()->addChild(canibalOffspring);
			GameManager::getInstance()->monsterVector.pushBack(canibalOffspring);
		}
	}
}


除此之外,还有其他技能,思路和防御塔技能一样,没有什么好介绍的~~




猜你喜欢

转载自blog.csdn.net/oShunz/article/details/49835109