首先感谢笨木头,《cocos2d-x 3.x开发之旅》是一本很精彩的书,很庆幸自己能坚持把最后的卡牌塔防的实例学完,现把实例学习中碰到问题记录下来,希望碰到问题的伙伴们能一起交流.......

1、怪物在被打死之后,发现炮塔不再攻击,查了下是英雄没有重新选择怪物导致。在怪物死亡后将其设置为不可见即可。如下(由于个人喜好对类名添加了kptf四个字母):

voidkptfMonster::onDead(){

//如果怪物死亡则删除怪物

this->setVisible(false);//将怪物设置成不可见,因选取攻击对象时会以可见作为选取条件

this->removeFromParent();

//this->removeAllChildrenWithCleanup(true);

}

2、convertToWorldSpace的报错:在最后判断胜利的时候报

convertToWorldSpace  Thread 1:EXC_BAD_ACCESS(code=1,addresss=0x0)查了下应该是按书上的源码删除了怪物列表里的怪物导致的报错。

将判断胜利条件修改下,如下(注释部分为书给的示例)

void kptfMonsterManager::logic(float dt){

Vector<kptfMonster*>monsterWantToDelete;

for (auto monster:m_monsterList) {

if (monster->isMoveEnd()==true) {

monsterWantToDelete.pushBack(monster);

}

else if(monster->isDead()==true ){

monsterWantToDelete.pushBack(monster);

}

}

//    for (auto monster:monsterWantToDelete) {

//        monster->removeFromParent();

//        m_monsterList.eraseObject(monster);

//    }

//

//    if (m_monsterList.size()==0) {

//        NOTIFY->postNotification("AllMonsterDead");

//    }

if (m_monsterList.size()==monsterWantToDelete.size()) {

NOTIFY->postNotification("AllMonsterDead");

}

}

笨木头老师《卡牌塔防》学习中遇到问题记录相关推荐

  1. cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第八部---怪物出场

    /* 说明: **1.本次游戏实例是<cocos2d-x游戏开发之旅>上的最后一个游戏,这里用3.0重写并做下笔记 **2.我也问过木头本人啦,他说:随便写.第一别全然照搬代码.第二能够说 ...

  2. cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第三步---编辑器(2)---更方便更多操作更像编辑器

    /* 说明: **1.本次游戏实例是<cocos2d-x游戏开发之旅>上的最后一个游戏,这里用3.0重写并做下笔记 **2.我也问过木头本人啦,他说:随便写,第一别完全照搬代码:第二可以说 ...

  3. cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第三步---编辑器(2)---更方便很多其它操作更像编辑器...

    /* 说明: **1.本次游戏实例是<cocos2d-x游戏开发之旅>上的最后一个游戏,这里用3.0重写并做下笔记 **2.我也问过木头本人啦.他说:随便写,第一别全然照搬代码:第二能够说 ...

  4. 算法:塔防游戏中的路径寻找

    在塔防游戏中,有许多敌人向着同一目标前进.在很多塔防游戏当中,有一条或几条事先预定好的路径.在一些中,比如经典的<Desktop Tower Defense>,你可以将塔放在任何位置,它们 ...

  5. java学习中,字符串使用(比较、构造方法)(java 学习中的小记录)

    java学习中,字符串使用(比较.构造方法)(java 学习中的小记录)作者:王可利(Star·星星) String的使用 1.在内存中是如何保存字符串. == :比较的是地址(引用数据类型) equ ...

  6. java学习中,异常和错误的简介、捕获异常、抛出异常、自定义异常、finally关键字(java 学习中的小记录)

    java学习中,异常和错误的简介.捕获异常.抛出异常.自定义异常.finally关键字(java 学习中的小记录) 参考文章: (1)java学习中,异常和错误的简介.捕获异常.抛出异常.自定义异常. ...

  7. java学习中,instanceof 关键字 和 final 关键字、值的传递(java 学习中的小记录)...

    java学习中,instanceof 关键字 和 final 关键字.值的传递(java 学习中的小记录)作者:王可利(Star·星星) instanceof 关键字 作用: 1.用来判断某个对象是否 ...

  8. java学习中,DVD管理系统纯代码(java 学习中的小记录)

    java学习中,DVD管理系统纯代码(java 学习中的小记录)作者:王可利(Star·星星) class DvdMain{public static void main (String[] args ...

  9. [cocos2d-x学习笔记][入门基础][塔防]塔防游戏中箭塔旋转并攻击实现

    1. 检测炮塔视线范围内距离它最近的敌人. int length=0; float index=0; for (int i=0; i<Game::allEnemy.size(); i++) { ...

最新文章

  1. ORACLE EXP命令
  2. C# 视频监控系列(10):服务器端——验证、设置画面质量、字幕叠加、板卡序列号...
  3. 95. Leetcode 1049. 最后一块石头的重量 II (动态规划-背包问题)
  4. 总帐科目的批量传输与复制
  5. 机器学习分类与性能度量
  6. Python把list变为str
  7. ArcGIS依据某一字段进行数据分层
  8. IQ推理:P先生和Q先生
  9. Oracle安装教程
  10. Ansys Speos | 手把手教你画光导
  11. 【U+】友加畅捷U+通用财务清理操作员密码
  12. oss 私有云访问 获取临时图片地址
  13. 皮克定理(格点三角形求面积或求三角形里格点(整点)个数)
  14. line划线计算机图像学,计算机图形学DDA画线法+中点画线法+Bresenham画线法(示例代码)...
  15. stm32闪存的理解
  16. 2021年新版本下载钉钉群直播回放视频方法介绍
  17. 地图经纬度坐标转换BD-09/GCJ-02/WGS84坐标转换
  18. python中del什么意思_python del函数是什么以及如何使用?
  19. C 中的auto register static extern的使用
  20. 煎蛋网妹子图爬虫(requests库实现)

热门文章

  1. 2018 Android中高级面试题
  2. spi通信的理解(NSS,SSI,SSM位,贼恶心)
  3. 傻傻分不清楚:裸纤、专线、SDH、MSTP、MSTP+、OTN、PTN、IP-RAN!
  4. 阿里云日志服务发布历史
  5. 【spring】最惨富二代,还要亲自打天下
  6. F - Construct Highway
  7. MOS管规格书参数解析
  8. HDU2547(数学逻辑)
  9. 安装永中Office for linux
  10. android版本10安装包,Android 10系统,Android 10手机系统正式版安装预约 v10.0-手游汇...