spineRuntTime for cocos2dx v3,attack播完后回到idle

spineRuntTime for cocos2dx v3,attack播完后回到idle。

_animationNode = spine::SkeletonAnimation::createWithFile("animations/skeleton.json", "animations/skeleton.atlas", 1.0);
_animationNode->setAnimation(0, "idle", true);
_animationNode->setPosition(ccp(x,y));
addChild(_animationNode);

_animationNode->setCompleteListener( [_animationNode] (int trackIndex, int loopCount) {
  spTrackEntry* entry = spAnimationState_getCurrent(_animationNode->getState(), trackIndex);
  const char* t_animationName = (entry && entry->animation) ? entry->animation->name : 0;
  string animationName=t_animationName;
  //CCLOG("%d complete: %s %d", trackIndex, animationName.c_str(),loopCount);
  if(animationName=="attack"){
    _animationNode->setAnimation(0, "idle", true);
  }
});

需要特别注意的是:必须用CompleteListener,而不能用EndListener(会崩溃),参考:https://github.com/EsotericSoftware/spine-runtimes/issues/150

时间: 2024-10-13 12:09:46

spineRuntTime for cocos2dx v3,attack播完后回到idle的相关文章

Cocos2d-x v3.0 新的事件调度方法 lambda表达式的使用

欢迎添? Cocos2d-x 交流群: 193411763 转载请注明原文出处:http://blog.csdn.net/u012945598/article/details/24603251 Cocos 2d-x 3.0 版本号中引入了C++ 11的特性.当中就包括了回调函中使用Lambda对象. 以下我们来看一段TestCpp中的代码: 在上图的触摸事件的回调函数中,共使用了三次Lambda表达式: [ ](Touch * touch,Event * event){ }; 以下我们就来介绍一

使用cocos2d-x v3.1开发小游戏(基本框架)

小游戏的组成 欢迎界面 在游戏资源未全部加载完之前就需要载入,避免进入游戏会有一段黑屏时间. 可以用来展示游戏名称或者开发者logo. 开始菜单界面 一般用于显示游戏名称和关卡选择(或者称游戏难度选择). 可以外加一些设置性功能,如声音开关,帮助入口等等. 如果游戏设置内容较多可以把设置作为一个单独界面,在开始菜单上提供入口即可. 有的小游戏是以弹窗方式的菜单 主游戏界面 游戏的中心部分,比如2048游戏的格子滑动界面,扫雷游戏的扫雷界面,贪吃蛇游戏的蛇移动的界面,等等. 小游戏拥有这一个界面也

Cocos2d-x v3.1 Hello world程序(四)

Cocos2d-x v3.1 Hello world程序(四) 在上一篇文章中我们我们已经使用Cocos-Console工具生成了工程,本机生成的目录为:"D:\CocosProject\Tutorial".我们进入该目录中,如下图: 本篇文章我们将使用Cocos2d-x引擎写一个最简单的工程--"Hello world".我们将使用VS2012进行win32程序的开发,然后使用ADT生成Android的APK程序,当然我们也可以使用Cocos-Console来生成

cocos2dx v3.x lua绑定分析

打算新项目转到cocos2dx v3上了,下载代码浏览过后发现改动真是非常大,结构性调整很多. 比如tolua绑定这一块,就几乎全翻新了. 胶水代码的生成,改成了全自动式的,通过clang来分析c++代码,可以准确的知道每一个类.函数.参数的信息,再也不用手动写pkg文件了. 运行期对象管理这块,似乎也有了不少改动,至少我原来的一些扩展代码运行不了了,还没来得及细看,待看完再一一录下. 先记录一下目前已看清楚的[类名表.类元表.对象实例]之间的关系: 1.类元表:最核心的表,在lua代码里是不可

[Cocos2d-x v3.x]序列帧动画

简介 Cocos2d-x中,动画的具体内容是依靠精灵显示出来的,为了显示动态图片,我们需要不停切换精灵显示的内容,通过把静态的精灵变为动画播放器从而实现动画效果.动画由帧组成,每一帧都是一个纹理,我们可以使用一个纹理序列来创建动画. 我们使用Animation类描述一个动画,而精灵显示动画的动作则是一个Animate对象.动画动作Animate是精灵显示动画的动作,它由一个动画对象创建,并由精灵执行. 创建方法 - 手动添加序列帧到Animation类 - 使用文件初始化Animation类 手

Cocos2d-x v3.1 安装图文教程(二)

   Cocos2d-x v3.1 安装图文教程(二) 如果我们需要在Android平台上运行就必须安装android的SDK,如果我们只想在window上运行就只需要安装Cocos2d-x就行了.当然你要在苹果上运行就必须安装它的XCode,由于在以后的学习中不会使用的跟苹果平台有关的东西,所以以后的文章中将不会介绍有关苹果相关的东西(没设备). 软件包下载 1. 下载Cocos2d-x引擎及相关软件(里面包含了Cocos2d-Console) 引擎和CocoStudio下载地址:http:/

Cocos2d-x v3.6制作射箭游戏(一)

最近玩了一个叫做大箭师鲍比的射箭游戏,觉得蛮好玩的,对此也产生了强烈的copy情结.所以从今天开始,我们将开始新的篇章,同大家分享这款基于 Cocos2d-x-3.6 引擎的游戏的一些制作心得,希望对大家有所帮助. 下图是原版游戏的效果图,有兴趣的童鞋可以在网上找来玩玩. PS:之前已写过多次教程,现如今本人当然还是觉得写初级教程要得心应手些(呵呵,毕竟能力所限),不过初级的写的次数多了,也稍微有些厌烦了.所 以,本教程我们将加大进度,游戏中所涉及到的一些基础概念我们将不会做过多的陈述(当然必要

Cocos2d-x v3.x 官方文档]C++版如何使用WebSocket

在C++中使用 详细代码可参考引擎目录下的/samples/Cpp/TestCpp/Classes/ExtensionsTest/NetworkTest/WebSocketTest.cpp文件. 头文件中的准备工作 首先需要include WebSocket的头文件. #include "network/WebSocket.h" cocos2d::network::WebSocket::Delegate定义了使用WebScocket需要监听的回调通知接口.使用WebSocket的类,需

Cocos2d-x v3.1安装图文教程(二)

如果我们需要在Android平台上运行就必须安装android的SDK,如果我们只想在window上运行就只需要安装Cocos2d-x就行了.当然你要在苹果上运行就必须安装它的XCode,由于在以后的学习中不会使用的跟苹果平台有关的东西,所以以后的文章中将不会介绍有关苹果相关的东西(没设备). 软件包下载 1. 下载Cocos2d-x引擎及相关软件(里面包含了Cocos2d-Console) 引擎和CocoStudio下载地址:http://cocos2d-x.org/download 2. 下