这是一个关于使用cocostudio实现动画自由切换的小demo

auto  sprite =Sprite::create("background.png");
sprite->setAnchorPoint(Point(0,0));
this->addChild(sprite); ArmatureDataManager::getInstance()->addArmatureFileInfo("catArmature/catArmature.ExportJson");
auto _cat =this->insCatAnimation();
this->addChild(_cat, 1, CATTAG); auto label=LabelTTF::create("Let cat move","Arial",26);
auto item = MenuItemLabel::create(label,CC_CALLBACK_0(HelloWorld::catMove, this)); auto label2 = LabelTTF::create("Let cat pase", "Arial", 26);
auto item2 = MenuItemLabel::create(label2, CC_CALLBACK_0(HelloWorld::catPase, this)); auto menu =Menu::create(item,item2,NULL);
menu->alignItemsVertically();
menu->setPosition(Point(400, 400));
this->addChild(menu); return true;
}
cocostudio::Armature* HelloWorld::insCatAnimation()
{
Size visibleSize = Director::getInstance()->getVisibleSize();
Point origin = Director::getInstance()->getVisibleOrigin();
auto cat = Armature::create("catArmature");
cat->setPosition(Point(visibleSize.width * 0.6 + 250, visibleSize.height * 0.5 + 20));
cat->getAnimation()->playWithIndex(0); return cat;
} void HelloWorld::catMove()
{
auto cat=(Armature*)this->getChildByTag(CATTAG);
cat->getAnimation()->playWithIndex(0);
auto catM =MoveTo::create(24.0f,Point(150,cat->getPosition().y));
cat->runAction(catM);
} void HelloWorld::catPase()
{
auto cat =(Armature*)this->getChildByTag(CATTAG);
cat->stopAllActions();
cat->getAnimation()->playWithIndex(1);//获取你须要的动画
}

这里是源代码和资源地址:

http://download.csdn.net/detail/u010296979/7288227

写个关于使用cocostudio Armature实现动画自由切换的小demo的更多相关文章

  1. Animo.js :一款管理 CSS 动画的强大的小工具

    Animo.js 是一个功能强大的小工具,用于管理 CSS 动画.它的特色功能包括像堆栈动画,创建跨浏览器的模糊,设置动画完成的回调等等.Animo 还包括惊人的 animate.css,为您提供了近 ...

  2. 原生JS写了一个小demo,根据输入的数字生成不同背景颜色的小方块儿~

    昨天练习写了这个小demo,个人觉得通过设置定位元素left和top的值,来实现换行的功能,这种方法很巧妙~ 另外,如下代码中的随机颜色的获取,还请各位前辈多多指教:需要改进的地方:或者有没有更好的方 ...

  3. JS实现动画方向切换效果(包括:撞墙反弹,暂停继续左右运动等)

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  4. 手写jwt验证,实现java和node无缝切换

    前言 前端时间和我朋友写了一个简易用户管理后台,功能其实很简单,涉及到的技术栈有:vue+elementUI,java+spring MVC以及node+egg,数据库用的mysql,简单方便. 一开 ...

  5. 在项目代码中载入cocostudio导出的动画并循环播放

    须要在代码中引入#include "cocostudio/CocoStudio.h" using namespace cocostudio; ArmatureDataManager ...

  6. 用Canvas写一个炫酷的时间更新动画玩玩

    正文必须要写点什么...   // '; var WINDOW_WIDTH = 913; var WINDOW_HEIGHT = 400; var RADIUS = 7; //球半径 var NUMB ...

  7. css+jq写的小小的移动端按钮的动画改变(三个很闲变成一个叉号)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. iOS 视图控制器转场动画/页面切换效果/跳转动画 学习

    一 学习 在 UINavigationController 中 push 和 pop 的转场效果  (基于iOS7 以上的转场方式) 经过学习了解到,重点分三块: (1)pushAnimation:  ...

  9. 使用karma测试平时写的小demo(arguments为例)

    有人说前端自动化测试非常困难,我觉得确实如此.在项目中,我个人也不放心写的测试,还是要手动测试.但是我们平时写demo学习时,完全可以使用自动化测试. 传统demo 1,新建一个html 2,写入js ...

随机推荐

  1. php之快速入门学习-10(数组)

    PHP 数组 数组能够在单个变量中存储多个值: <?php $cars=array("Volvo","BMW","Toyota"); ...

  2. Linux软件安装方法

    常用的两种软件安装方法: 1.RPM软件安装 rpm -qi 软件名 查询 rpm -ivh *.rpm 安装 rpm -e 软件名 卸载 系统自带的一些rpm包在系统镜像的Server文件夹里,需要 ...

  3. 美国程序猿(软件project师)平均年薪状况调查

    来源站点:Indeed.com&computerengineeringsalarydata.com Average Software Engineer Salary by 50 States ...

  4. Linux高级权限管理

    传统的UGO(rwx-wx-wx)权限模型,无法解决当多个组需要对一个文件执行某些权限的问题. ACL :访问控制列表access control list一种高级的权限机制,允许我们对文件或者文件夹 ...

  5. JavaScript debugger 语句

    实例 开启 debugger ,代码在执行到第三行前终止. var x = 15 * 5; debugger; document.getElementbyId("demo").in ...

  6. 类的专有方法(__len__)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #http://www.imooc.com/code/6252 #类的专有方法(__len__) #如果一个类 ...

  7. 为什么WEB-INF外的jsp无法根据cookie享受国际化

    243行走WEB-INF外则获取为空,走springmvc则可以获取到:

  8. php新特性:trait 关键字使用

    1.trait关键字:含义[特性] 1.1 和require include 区别: 后两者需要 实例化一个类或者静态调用,而trait相当于继承,但又不是extends关键字,它解决了单继承. 2. ...

  9. 将Memcached作为服务自动启动

    1.最简单的做法 通常:启动Memcache的服务器端的命令为: /usr/local/bin/memcached -d -m 256 -u root -l 127.0.0.1 -p 12000 -c ...

  10. HDUOJ----(4706)Children's Day

    Children's Day Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...