Cocos2d-x   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了[Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--其他大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

最后一章,讲一下其他零碎的地方。


防御塔方面,还有炮塔的两个高级塔,例如地震塔,机器人塔。地震塔就是周围敌人全部减少血量,机器人塔就是一个士兵类,炮塔升级成士兵类,实现方式和士兵类似。

法师塔方面,死亡先知塔可以召唤龙卷风,龙卷风是一个子弹类,生成后自行寻找最近敌人并且移动到敌人处,对敌人造成伤害。DK塔可以召唤一个死亡骑士。

还有一些其方面没有介绍,结合该系列其他防御塔、士兵、敌人的思路即可实现。


动画管理类

负责创建动画

例如法师塔上面的法师的动画

AnimationCache::geTinstance()->addAnimation(createAnimation("mage_shooter_00%02d.png",17,29,0.04f,"mage_shooter_0001.png"),"mage_shoot_up");

mage_shoot_up是创建的动画名,在载入地图时将动画一一创建,使用时候根据创建的动画名即可使用

shooter->runAction(Animate::create(AnimationCache::geTinstance()->getAnimation("mage_shoot_up")));


createAnimation是创建动画函数,根据传入的贴图名(在PList中)、开始图片、结束图片等创建真动画


Animation* MyAnimation::createAnimation(const char* prefixName,int start,int end,float delay)
{
    Vector<SpriteFrame*> animFrames;
    
	for (int i = start; i <= end; i++)
    {
        auto frame = SpriteFrameCache::geTinstance()->getSpriteFrameByName(String::createWithFormat(prefixName,i)->getCString());
		if(frame!=nullptr)
			animFrames.pushBACk(framE);
    }
    return Animation::createWithSpriteFrames(animFrames,delay);
}


音效管理类

负责播放音效

检测音效是否开启,若开启、播放

void SoundManager::playEfreetiLaugh()
{
    if(cheakEffectState())
	SimpleAudioENGIne::geTinstance()->playEffect("sound/boss_efreeti_evillaugh.wav");
}


游戏管理类

进度管理,敌人数组

单例

GameManager* GameManager::geTinstance()
{
	if (instance == NULL)
		instance = new GameManager();
	return instance;
}

3个进度选项,根据选择,生成tag,在使用Xml保存进度时使用使用

void GameManager::seTinstance(int tag)
{
	SLOTNUM = tag;

	sprintf(SLOTX_ISEXIT,"Slot%d",tag); 

	sprintf(LEVELX_ISDOWN,tag); 
	strcat(LEVELX_ISDOWN,"_Level_%d");

	sprintf(LEVELX_STARNUM,tag); 
	strcat(LEVELX_STARNUM,"_Level_%d_star");
..........................
}


--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

该系列到此为止终结了~感谢阅读

如有疑问或者不对的地方,欢迎交流

大佬总结

以上是大佬教程为你收集整理的[Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--其他全部内容,希望文章能够帮你解决[Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--其他所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。