CCFollow和ActionCallFunc
CCSize s = CCDirector::sharedDirector()->getWinSize();
pSprite->setPosition(ccp(-, s.height / ));
CCActionInterval* move = CCMoveBy::create(, ccp(s.width * , ));
CCActionInterval* move_back = move->reverse();
CCFiniteTimeAction* seq = CCSequence::create(move, move_back, NULL);
CCAction* rep = CCRepeatForever::create((CCActionInterval*)seq); pSprite->runAction(rep); this->runAction(CCFollow::create(pSprite, CCRectMake(, , s.width * - , s.height)));
//三个动作都绑定一个函数,三个动作同时执行,执行完后响应函数
void ActionCallFunc::onEnter()
{
ActionsDemo::onEnter(); centerSprites(); CCFiniteTimeAction* action = CCSequence::create(
CCMoveBy::create(, ccp(,)),
CCCallFunc::create(this, callfunc_selector(ActionCallFunc::callback1)),
NULL); CCFiniteTimeAction* action2 = CCSequence::create(
CCScaleBy::create( , ),
CCFadeOut::create(),
CCCallFuncN::create(this, callfuncN_selector(ActionSequence2::callback2)),
NULL); CCFiniteTimeAction* action3 = CCSequence::create(
CCRotateBy::create( , ),
CCFadeOut::create(),
CCCallFuncND::create(this, callfuncND_selector(ActionSequence2::callback3), (void*)0xbebabeba),
NULL); m_grossini->runAction(action);
m_tamara->runAction(action2);
m_kathia->runAction(action3);
} void ActionCallFunc::callback1()
{
CCSize s = CCDirector::sharedDirector()->getWinSize();
CCLabelTTF *label = CCLabelTTF::create("callback 1 called", "Marker Felt", );
label->setPosition(ccp( s.width/*,s.height/)); addChild(label);
} void ActionCallFunc::callback2(CCNode* pSender)
{
CCSize s = CCDirector::sharedDirector()->getWinSize();
CCLabelTTF *label = CCLabelTTF::create("callback 2 called", "Marker Felt", );
label->setPosition(ccp( s.width/*,s.height/)); addChild(label);
} void ActionCallFunc::callback3(CCNode* pTarget, void* data)
{
CCSize s = CCDirector::sharedDirector()->getWinSize();
CCLabelTTF *label = CCLabelTTF::create("callback 3 called", "Marker Felt", );
label->setPosition(ccp( s.width/*,s.height/));
addChild(label);
}
CCFollow和ActionCallFunc的更多相关文章
- CCAction、CCFiniteTimeAction、CCSpeed、CCFollow
/**************************************************************************** Copyright (c) 2010-201 ...
- CCFollow
// CCFollow // 作用:创建一个跟随动作 // 参数1:跟随的目标对象 // 跟随范围,离开范围就不再跟随 //创建一个参照物spT // CCSprite ...
- [原创]cocos2d-x研习录-第三阶 特性之动作
在前面的Cocos2D-x的概念类中,我们了解到节点类CCNode.导演类CCDirector.场景类CCScene.布景层类CCLayer和精灵类CCSprite等,这些类都是构成游戏画面的基本元素 ...
- cocos2dx常见的46中+22中动作详解
cocos2dx常见的46中+22中动作详解 分类: iOS2013-10-16 00:44 1429人阅读 评论(0) 收藏 举报 bool HelloWorld::init(){ ///// ...
- 转载cocos2dx的各种动作用法
以下内容来源于:http://www.cnblogs.com/linux-ios/archive/2013/04/06/3001946.html 转载时请保留以上链接. bool HelloWorld ...
- cocos2d-x知识巩固-基础篇(1)
有段时间没有学习cocos2dx了,作为新人,自己觉得还是要稳扎稳打,一点点的去积累,梳理好每一个知识点,这样对自己的成长能够有一个更清晰的认识,以便做更好的提高. 从2013年8月开始接触cocos ...
- cocos2d-x Action
转自:http://codingnow.cn/cocos2d-x/775.html 从结构图可以看出,动作类的基类是CCAction,通过继承它可以实现很多种动作. CCFiniteTimeActio ...
- CosCos2D-android 代码总结
CosCos2D-android 学习总结 资料: Android游戏开发视频教程 Cocos-android-1代码包下载 直接上代码: MainActivity中Cocos常规写法: //coco ...
- [一位菜鸟的COCOS-2D编程之路]COCOS2D中得动作,特效和动画
一,CCActionManager 管理所有节点动作的对象 来看看打飞机里面的一个onEnter 方法 - (void)onEnter { [super onEnter]; //一定要注意添加此方法, ...
随机推荐
- [Android Pro] Android系统手机端抓包方法 和 通过File查看应用程序流量
adb shellcat proc/uid_stat/%uid%/tcp_snd proc/uid_stat/%uid%/tcp_rcv ------------------------------ ...
- 盗COOKIE之方法总结
1.xss跨站盗cookie 2.ajax跨域盗cookie 3.hosts文件映射 对于第一种方法,首先:在有跨站漏洞的页面贴上跨站代码如: <script>window.open('h ...
- Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space
在Eclipse 调试 springside showcase项目中,tomcat报异常 Exception in thread "RMI TCP Connection(idle)" ...
- Ripple 水波纹效果
背景+波纹 对于有边界限制的Ripple,我们就需要给他提供一个范围,即添加一个item标签. 如果在一个ripple标签中,添加一个item标签,在item中添加如下属性: [android:dra ...
- 关于Javascript你可能不知道的事
NaN表示一个不能产生正常结果的运算结果.它不等于任何值,包括它自己.可以用isNaN(number)来检测. 同Java中的字符串一样,JS中的字符串是不可变的.也就是说一旦字符串被创建,就无法改变 ...
- text-overflow样式属性值ellipsis的用法
一.div标签中使用text-overflow样式属性值ellipsis的方法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. ...
- XMPPFrameWork IOS 开发(三)登录
原始地址:XMPPFrameWork IOS 开发(三) XMPP中常用对象们: XMPPStream:xmpp基础服务类 XMPPRoster:好友列表类 XMPPRosterCoreDataSto ...
- 在帝国cms中新建只具有编辑某些栏目权限的后台用户或新建编辑用户在选择栏目时不能选择问题解决方法
在帝国cms中,鉴于有些部门只允许编辑自己部门所负责栏目内的新闻.信息等,所以创建只具有某一栏目或某几个栏目的编辑权限的后台用户至关重要. 1. 点击上面导航栏中的“用户”按钮 2. 点击左侧菜单中的 ...
- STL栈的应用之表达式求值
#include<iostream> #include<cstring> #include<cstdio> #include<stack> using ...
- android基础知识:SharedPreferences和PreferenceActivity
1.android文件存储 对Android系统了解的都知道,Android系统有四种基本的数据保存方法,一是SharedPreference,二是文件,三是SQLite,四是ContentProvi ...