1.这个情况是资源没有被加载的表现

如果AppDelegate.cpp里面没有文件索引的语句 FileUtils::getInstance()->addSearchPath("res");,就更加说明是资源找不到的问题

解决方法

把资源直接复制在Resources文件的根目录下,不要放在Resources/Res目录下。

2.可能是实例化对象类的init方法中没有重写父类的init方法

解决方法

在实例化对象类的init方法中写

Node::init()

Sprite::init()

3.可能是所要使用的资源文件(图片,声音等等)没有在Resources文件夹目录下

解决方法

认真确认资源信息,有可能是资源的文件名写错

4.可能是还没有设置myHero->setPhysicsBody(),就使用myHero->getPhysicsBody(),就会出现关闭程序的框框

解决方法

认真寻找myHero->getPhysicsBody()的句子,在这之前必须有一句myHero->setPhysicsBody()来设置它的物理刚体,一般都是myHero写错成其他名字导致系统找不到这个其他名字的PhysicsBody所引发的错误

5.可能是已经在.h文件中定义类型的变量,在.cpp中又用auto定义了一遍,这个有时候也造成系统输出:读取位置 0x0000039C 时发生访问冲突等错误

.h文件中

Sprite  *confirm;

.cpp文件中

auto confirm = Sprite::create();

解决方法

把auto关键词去掉

6.可能是还没定义节点的大小(或者其他变量的某个属性),就先使用

sprite->getContentSize();

这种情况下也会出现框框

7.可能是语句执行顺序有问题,比如我把

hero_life--;---语句1

this->runAction(Sequence::create(hurt, moveTo, call1 , call2,NULL));---语句2

写成

this->runAction(Sequence::create(hurt, moveTo, call1 , call2,NULL));

hero_life--;

结果动作还没执行完突然玩家强制断了动作,导致必须执行hero_life--;没有执行到,漏执行了一次。但是

gamecontroller->onHurt();  //里面包含了语句1和语句2
cutLife();  //消除一个代表生命的爱心

却把cutLife();执行了,就会出现主角还没死但是代表生命的爱心已经全部消失了。

这时候,再进行碰撞,生命值hero_life终于满足死亡的标准,但是多执行了一次cutLife(),而cutLife()里面放爱心精灵的数组已经空了,这时候再去删除节点和删除数组元素就会出现停止运行的框框。

其实最好的方法是在GameScene.cpp的init方法中先获得主角的生命值_heroLife,再在碰撞检测方法中这样写

if (tag1 == HERO_TAG)
{

  _heroLife--;//先减1,确保不会因为动作执行没完导致没有执行减1的操作
  cutLife();//把爱心去除
  gamecontroller->onHurt();//播放受伤动画
  if (_heroLife < 1)//判定死亡
  {
    this->unscheduleUpdate();
    gcs.clear();
    auto dir = Director::getInstance();
    dir->getEventDispatcher()->removeEventListener(contactListener);
    dir->replaceScene(QuestionScene::createScene(_heroCount, 20));
  }
}

关于Cocos2d-x程序运行时候提示关闭程序的框框的解决方法的更多相关文章

  1. ASP.NET程序运行出现WebDev.WebServer40.exe已停止工作解决方法(netsh winsock reset)

    问题描述:在开发系统时候运行程序突然报出"WebDev.WebServer40.exe已停止工作"的错误,程序调试运行,发现程序在打开数据库时候报错,也就是Connection.O ...

  2. 运行jar提示“没有主清单属性”的解决方法

    以下记录的是我export jar包后运行遇到问题的解决方法,如有错误,欢迎批评指正. 1.运行导出jar包,提示"没有主清单属性" 2.回想自己导出jar的操作是否有误,重新ex ...

  3. 【转】 VC++ 关闭程序后任务管理器进程中进程仍然存在的解决方法

    转载出处:http://blog.csdn.net/zac_sian/article/details/50809084 可以从以下两个方面进行查找! 1.程序开启了进程,进程中使用了while(1), ...

  4. Windows 系统提示“内存不足”的原因及解决方法

         Windows 系统提示“内存不足”的原因及解决方法 windows XP vista 及windows 7系统的电脑有时候会出现系统提示“内存不足”,这是由多方面原因造成的.本文具体分析下 ...

  5. delphi xe4 程序添加管理员权限要求后不能调试的解决方法

    环境: win7 企业版 xe4 问题: 把项目设置为需要管理员权限才能运行后,调试会弹出一个提示框,如图:

  6. 排错-Loadrunner添加Windows Resource计数器提示“找不到网络路径”解决方法

    Loadrunner添加Windows Resource计数器提示“找不到网络路径”解决方法 by:授客 QQ:1033553122 1.启动windows相关服务 win->services. ...

  7. XCode 添加自定义framework运行时出现dyld: Library not loaded的解决方法

    XCode添加自定义framework运行时出现dyld: Library not loaded的解决方法 在使用自定义的framework运行时,会出现如下的错误: dyld: Library no ...

  8. Jquery中使用setInterval和setTimeout会提示缺少对象的错误,解决方法如下:

    直接在ready中调用其他方法,会提示缺少对象的错误,解决方法如下: 方法1. 应用jQuery的扩展可以解决这个问题. $(document).ready(function(){ $.extend( ...

  9. vs2010一运行就报错deven.exe assert failure 解决方法,卸载系统中.netFramework最新版本的(简体中文)

    vs2010一运行就报错deven.exe assert failure 解决方法,卸载系统中.netFramework最新版本的(简体中文)

随机推荐

  1. SQL Server 2012 Express LocalDB 的作用

    微软最新推出的 SQL Server 2012 Express LocalDB 是一种 SQL Server Express 的运行模式,特别适合用在开发环境使用,也内置在 Visual Studio ...

  2. php序列化与反序列化时字符集不一致问题的解决办法

    今天的用PHP的时候无意的出现了用unserialize()函数转换老是返回false,我确认我的字符串是没错的,测试了很多次还是一样,没办法,启用了error_reporting(E_ALL)启用错 ...

  3. angular.js 中同步视图和模型数据双向绑定,$watch $digest $apply 机制

    Angular.js 中的特性,双向绑定. 让视图的改变直接反应到数据中,数据的改变又实时的通知到视图,如何做到的? 这要归功于 scope 下面3个重要的方法: $watch $digest $ap ...

  4. [na][dhcp]华为DHCP-重要

    近日遇到遇到控制器和wac对接的一些问题.尤其是地址池这块排查起来比较费事,且这些命令不容易找到,以下是能经常用到的命令. 1,查看ip是否冲突: (看下conflict字段) 2,防止冲突命令: 3 ...

  5. jquery,checkbox无法用attr()二次勾选

    今晨,漂亮的测试妹妹提了个奇怪的bug,说我一功能checkbox时隐时现,比如第一次打开有勾选,第n次打开可能就不选了. 想到与美女有亲密接触机会,马上鸡动起来. 经过偶层层抽次剥茧(da da j ...

  6. sqllite 试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)

    试图加载格式不正确的程序. (异常来自 HRESULT:0x8007000B) 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细 ...

  7. 你应该知道的Virtual Studio

    最近,在网上看到一篇关于VS2008的一些提示,可以提高开发效率,我把它翻译过来,当然里面也有很多自己的想法,分享一下,大家可以择有用的提示而用之. 参考:每个开发者都应该知道的提示和诀窍 提示一:拷 ...

  8. 封装一个音乐列表music-list基础组件,可以共用,哪个需要的时候就是哪个props相应的值

    1.封装music-lsit组件: <template> <div class="music-list singer-detail"> <div cl ...

  9. GNU风格 ARM汇编语法4

    .GNU汇编语言定义入口点 汇编程序的缺省入口是_start标号,用户也可以在连接脚本文件中用ENTRY标志指明其它入口点. 例:定义入口点 .section .data < initializ ...

  10. Windows2012R2版本区别

    From:https://zh.wikipedia.org/wiki/Windows_Server_2012 Windows Server 2012有4种版本:Foundation, Essentia ...