写个关于使用cocostudio Armature实现动画自由切换的小demo
这是一个关于使用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);//获取你须要的动画
}
这里是源代码和资源地址:
写个关于使用cocostudio Armature实现动画自由切换的小demo的更多相关文章
- Animo.js :一款管理 CSS 动画的强大的小工具
Animo.js 是一个功能强大的小工具,用于管理 CSS 动画.它的特色功能包括像堆栈动画,创建跨浏览器的模糊,设置动画完成的回调等等.Animo 还包括惊人的 animate.css,为您提供了近 ...
- 原生JS写了一个小demo,根据输入的数字生成不同背景颜色的小方块儿~
昨天练习写了这个小demo,个人觉得通过设置定位元素left和top的值,来实现换行的功能,这种方法很巧妙~ 另外,如下代码中的随机颜色的获取,还请各位前辈多多指教:需要改进的地方:或者有没有更好的方 ...
- JS实现动画方向切换效果(包括:撞墙反弹,暂停继续左右运动等)
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 手写jwt验证,实现java和node无缝切换
前言 前端时间和我朋友写了一个简易用户管理后台,功能其实很简单,涉及到的技术栈有:vue+elementUI,java+spring MVC以及node+egg,数据库用的mysql,简单方便. 一开 ...
- 在项目代码中载入cocostudio导出的动画并循环播放
须要在代码中引入#include "cocostudio/CocoStudio.h" using namespace cocostudio; ArmatureDataManager ...
- 用Canvas写一个炫酷的时间更新动画玩玩
正文必须要写点什么... // '; var WINDOW_WIDTH = 913; var WINDOW_HEIGHT = 400; var RADIUS = 7; //球半径 var NUMB ...
- css+jq写的小小的移动端按钮的动画改变(三个很闲变成一个叉号)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- iOS 视图控制器转场动画/页面切换效果/跳转动画 学习
一 学习 在 UINavigationController 中 push 和 pop 的转场效果 (基于iOS7 以上的转场方式) 经过学习了解到,重点分三块: (1)pushAnimation: ...
- 使用karma测试平时写的小demo(arguments为例)
有人说前端自动化测试非常困难,我觉得确实如此.在项目中,我个人也不放心写的测试,还是要手动测试.但是我们平时写demo学习时,完全可以使用自动化测试. 传统demo 1,新建一个html 2,写入js ...
随机推荐
- PD的CDM模型中的三种实体关系
PD的CDM模型中的三种实体关系 本文摘自:http://www.cnblogs.com/syf/articles/2480580.html PD 正向工程使用说明:http://download.c ...
- 将 Shiro 作为应用的权限基础 二:shiro 认证
认证就是验证用户身份的过程.在认证过程中,用户需要提交实体信息(Principals)和凭据信息(Credentials)以检验用户是否合法.最常见的“实体/凭证”组合便是“用户名/密码”组合. 一. ...
- PHP高级教程-邮件
PHP 发送电子邮件 PHP 允许您从脚本直接发送电子邮件. PHP mail() 函数 PHP mail() 函数用于从脚本中发送电子邮件. 语法 mail(to,subject,message,h ...
- ls命令(转)
原文:http://www.cnblogs.com/peida/archive/2012/10/23/2734829.html ls命令是linux下最常用的命令.ls命令就是list的缩写缺省下l ...
- Oracle体系结构三(学习笔记)
- Httpclient 4, error 302. How to redirect?
http://stackoverflow.com/questions/3658721/httpclient-4-error-302-how-to-redirect DefaultHttpClient ...
- Win10怎么设置点击任务栏上文件夹图标直接打开“我的电脑”?
我们都知道Win10任务栏上的文件夹图标可以打开文件资源管理器,但是点击这个图标后打开的位置却是不固定的,有可能是库文件夹,也有可能是其他常用的位置.怎么设置点击这个图标后直接打开"此电脑& ...
- 利用SynchronizationContext.Current在线程间同步上下文
简而言之就是允许一个线程和另外一个线程进行通讯,SynchronizationContext在通讯中充当传输者的角色.另外这里有个地方需要清楚的,不是每个线程都附加SynchronizationCon ...
- 用setitimer实现多个定时器
从这篇文章中可以看出,setitimer只能实现一个定时器,如果多次调用setitimer,旧值都会被覆盖掉. 如何用setitimer实现多个定时器呢?下面是我的一个实现,具体的方法是: 用链表从小 ...
- 【LeetCode】132. Palindrome Partitioning II
Palindrome Partitioning II Given a string s, partition s such that every substring of the partition ...