[Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--防御塔(一)

本文聚焦Cocos2d-x 3.x中塔防游戏《王国保卫战》的防御塔设计,从防御塔基类BaseTower开始,详细阐述其属性设定,包括攻敌策略和触摸事件响应。文中提及防御塔的射击逻辑,指出不同类型的塔(如炮塔、弓箭塔、法师塔)仅在攻击动画和轨迹计算上有差异,并预告兵营塔的特殊性将在后续章节讨论。

该章节主要介绍防御塔的基本性质和制作思路


首先我们定义一个防御塔的基类BaseTower 

class BaseTower: public Sprite


我们要先确定一个塔所具备的属性,这些可以根据自己所设计的游戏需要来自行定义,例如:

   CC_SYNTHESIZE(TowerType, towerType, TowerType); //类型
   CC_SYNTHESIZE(Terrain*, myTerrain, MyTerrain);  //建造点
   CC_SYNTHESIZE(std::string, towerName, TowerName); //名称
   CC_SYNTHESIZE(int, level, Level);//等级
   CC_SYNTHESIZE(float, scope, Scope);//范围
   CC_SYNTHESIZE(float, nextScope, NextScope);//升级后范围
   CC_SYNTHESIZE(float, rate, Rate);//攻击速度
   CC_SYNTHESIZE(int, force, Force);//攻击力
   CC_SYNTHESIZE(int, updateMoney, UpdateMoney);//升级所需金钱
   CC_SYNTHESIZE(int, buildMoney, BuildMoney);//售出时返还金钱

然后定义一些可能出现的公共方法,在不同的防御塔子类中实现:

public:
  virtual void updateTower(){};//升级防御塔(基础升级)
  virtual void sellTower();//售卖防御塔
  virtual void removeTo
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值