Cocos2dx 动作函数

来源:互联网 发布:office2016英文版 mac 编辑:程序博客网 时间:2024/05/22 14:13



  1. bool HelloWorld::init()  
  2. {  
  3.     //////////////////////////////  
  4.     // 1. super init first  
  5.     if ( !CCLayer::init() )  
  6.     {  
  7.         return false;  
  8.     }  
  9.   
  10.     CCSprite * sp= CCSprite::create("Icon.png");  
  11.     sp->setPosition(ccp(150, 150));  
  12.     addChild(sp,0,922);  
  13.    
  14. ////    Action动作
  15.   
  16. //      
  17. //    CCMoveBy  创建一个移动的动作   参数1:移动到目标坐标所需的时间 参数2:目标坐标    支持reverse 可以获取其反向动作  
  18. //    CCMoveTo  一样的  
  19. //    CCActionInterval * moveBy = CCMoveBy::create(5,ccp(300, 100));  
  20. //    CCActionInterval * actionmoveback= moveBy->reverse();  
  21. //    sp->runAction(actionmoveback);  
  22. //      

  1. //    CCScaleTo   作用:创建一个缩放的动作  
  2. //    参数1:达到缩放大小所需的时间  
  3. //    参数2 :缩放的比例  
  4. //    CCActionInterval * scaleto = CCScaleTo ::create(2, 2);  
  5. //    sp->runAction(scaleto);  

  6. //      
  7. //    CCScaleBy  作用:创建一个缩放的动作  
  8. //    参数1:达到缩放大小的所需时间  参数2:缩放比例  
  9. //    CCActionInterval * scaleby = CCScaleBy::create(2, 2);  
  10. //    CCActionInterval * actionbyback = scaleby->reverse();  
  11. //    sp->runAction(actionbyback);  

  12. //      
  13. //    CCRotateTo  
  14. //    作用创建一个旋转的动作  
  15. //    参数1:旋转的时间  参数2:旋转饿角度  0 - 360  
  16. //    CCActionInterval * rotateto = CCRotateTo::create(2, 90);  
  17. //    sp->runAction(rotateto);  

  18. //      
  19. //    CCSkewTo  
  20. //    作用创建一个倾斜的动作  
  21. //    参数1:倾斜到特定角度所需的时间  
  22. //    参数2:x轴的倾斜角度  
  23. //    参数3:y轴的倾斜角度  
  24. //    CCActionInterval * skewto = CCSkewTo::create(2, 10, 10);  
  25. //    sp->runAction(skewto);  

  26. //      
  27. //    CCJumpTo  
  28. //    作用:创建一个跳的动作  
  29. //    参数1:跳到目标动作位子的所需时间  
  30. //    参数2:目标位置  
  31. //    参数3:跳的高度  
  32. //    参数4跳到目标位置的次数  
  33. //    CCActionInterval* jumpto = CCJumpTo ::create(2, ccp(300, 200), 50, 4 ); 
  34. //    sp->runAction(jumpto);  

  35. //      
  36. //    CCJumpBy  
  37. //    作用:创建一个跳的动作  
  38. //    参数1:跳到目标动作位子的所需时间  
  39. //    参数2:目标位置  
  40. //    参数3:跳的高度  
  41. //    参数4跳到目标位置的次数  
  42. //    这个支持方向动作reverse  
  43. //    CCActionInterval * jumpby = CCJumpBy ::create(3, ccp(300, 200), 50, 4);  
  44. //       CCActionInterval * ac= jumpby->reverse();  
  45. //    sp->runAction(ac);  
  46.       
  47. //    CCBezier  
  48. //    ccBezierConfig结构体      
  49. //    ccBezierConfig bezierCon;  
  50. //    bezierCon.controlPoint_1=CCPointMake(200, 150);//控制点1  
  51. //    bezierCon.controlPoint_2=CCPointMake(200, 160);//控制点2  
  52. //    bezierCon.endPosition =CCPointMake(340, 100);// 结束位置  
  53. //    CCBezierTo  
  54. //    创建一个贝塞尔曲线运动的动作  
  55. //    参数1:贝塞尔曲线运动的时间  
  56. //    参数2 :ccBezierConfig结构体     
  57. //    CCActionInterval * action = CCBezierTo::create(2, bezierCon);  
  58. //    CCActionInterval * action = CCBezierBy::create(3, bezierCon);//支持反向  
  59. //    CCActionInterval * action1 = action->reverse();  
  60. //    sp->runAction(action1);  
  61.   
  62. //    CCFadeIn  
  63. //    作用:创建一个渐变出现的动作  
  64. //    参数是时间  
  65. //    CCActionInterval * fadein = CCFadeIn::create(2);  
  66. //    sp->runAction(fadein);  
  67.   
  68. //    CCFadeOut  
  69. //    作用:创建一个渐变消失的动作  
  70. //    参数是时间  
  71. //    CCActionInterval * fadeout = CCFadeOut::create(2);  
  72. //    sp->runAction(fadeout);  
  73.   
  74. //    CCTintTo  
  75. //    作用:创建一个色彩变化的消失动作  
  76. //    参数1:色彩变化的动作  
  77. //    参数2 :红色分量  
  78. //    参数3:蓝色分量  
  79. //    CCActionInterval * tinto = CCTintTo ::create(3, 255, 255, 0);  
  80. //    sp->runAction(tinto);  
  81.    
  82.       
  83. //    CCTintBy  
  84. //    作用:创建一个色彩变化的出现动作  
  85. //    参数1:色彩变化的动作  
  86. //    参数2 :红色分量   
  87. //    参数3:蓝色分量   但是家了reverse就是 反向的  
  88. //    CCActionInterval * tintby = CCTintBy::create(3, 0, 255, 255);  
  89. //    CCActionInterval * tintby1 = tintby->reverse();  
  90. //    sp->runAction(tintby1);  
  91.       
  92. //    CCBlink  
  93. //    作用 :创建一额闪烁的动作  
  94. //    参数1:闪烁完成的时间  
  95. //    参数2:闪烁的次数  
  96. //    CCActionInterval * blink = CCBlink ::create(3, 10);  
  97. //    sp->runAction(blink);  
  98.       
  99.       
  100. //    CCDelayTime  
  101. //    创建一个延迟的动作  
  102. //    参数  延迟的时间  
  103. //    CCActionInterval * delaytime = CCDelayTime::create(3);  
  104. //    sp->runAction(delaytime);  
  105.       
  106. //    CCOrbitCamera  
  107. //    作用:创建一个球面坐标轨迹进行旋转的动作  
  108. //    参数1 : 旋转轨迹的时间  
  109. //    参数2 :起始半径  
  110. //    参数3:半径差  
  111. //    参数4:起始z角  
  112. //    参数5:旋转z角的差  
  113. //    参数6:起始x角  
  114. //    参数7:旋转x角的差  
  115. //     CCActionInterval * orbitcamera = CCOrbitCamera::create(3, 10, 0, 45, 180, 90, 0);  
  116. //    sp->runAction(orbitcamera);  
  117.   
  118. //    CCCardinalSpline  
  119. //    作用:创建数组  点的数组  
  120.       CCPointArray * array = CCPointArray::create(20);  
  121.       array->addControlPoint(ccp(0,0));  
  122.       array->addControlPoint(ccp(210,0));  
  123.       array->addControlPoint(ccp(210,240));  
  124.       array->addControlPoint(ccp(0,160));  
  125.       array->addControlPoint(ccp(0,0));  
  126. //    CCCardinalSplineTo  
  127. //    作用:创建一个样条曲线轨迹的动作  
  128. //    参数1:完成轨迹所需的时间  
  129. //    参数2:控制点的坐标数组  
  130. //    拟合度  其值= 0 路径最柔和  
  131. //    CCActionInterval  * CardinalSplineTo=CCCardinalSplineTo::create(3, array, 0);  
  132. //   sp->runAction(CardinalSplineTo);  
  133. //   CCCardinalSplineBy  
  134. //    作用:创建一个样条曲线轨迹的动作  
  135. //    参数1:完成轨迹所需的时间  
  136. //    参数2:控制点的坐标数组  
  137. //    拟合度  其值= 0 路径最柔和  
  138. //    CCActionInterval * CardinalSplineBy = CCCardinalSplineBy::create(3, array, 0);  
  139. //    sp->runAction(CardinalSplineBy);  
  140.       
  141. //    CCCatmullRomTo  CCCatmullRomBY  
  142. //    作用:创建一个样条插值轨迹  
  143. //    参数1:完成轨迹的时间  
  144. //    参数2:控制点的数组坐标  
  145. //    CCActionInterval * catmullRomTo = CCCatmullRomTo::create(3, array);  
  146. //    sp->runAction(catmullRomTo);  
  147.       
  148. //    CCFollow  
  149. //    作用:创建一个跟随动作  
  150. //    参数1:跟随的目标对象  
  151. //    跟随范围,离开范围就不再跟随  
  152.       //创建一个参照物spT  
  153. //    CCSprite * spt = CCSprite::create("Icon.png");  
  154. //    spt->setPosition(ccp(420,40));  
  155. //    addChild(spt);  
  156. //    sp->runAction(CCMoveTo::create(3, ccp(940,sp->getPositionY())));  
  157. //      
  158. //     CCFollow * follow = CCFollow::create(sp,CCRectMake(0, 0, 960, 320));  
  159. //    this-> runAction(follow);  
  160.       
  161. //    CCEaseBounceIn  
  162. //    目标动作  
  163. //    CCActionInterval* move = CCMoveTo::create(3, ccp(300, sp->getPositionY()));  
  164. //    让目标动作缓慢开始  
  165. //    参数:目标动作  
  166. //    CCActionInterval * EaseBounceIn = CCEaseBounceIn::create(move);  
  167. //    sp->runAction(EaseBounceIn);  
  168.       
  169. //    CCEaseBounceOut  
  170. //    作用:让目标动作赋予反弹力,且以目标动作结束位子开始反弹  
  171. //    参数目标动作  
  172. //    CCActionInterval * easeBounceOut = CCEaseBounceOut ::create(move);  
  173. //    sp->runAction(easeBounceOut);  
  174.       
  175. //    CCEaseBounceInOut  
  176. //    作用:让目标动作赋予反弹力,且以目标动作起始与结束位子开始反弹  
  177. //    CCActionInterval * easeBounceInOut= CCEaseBounceInOut::create(move);  
  178. //    sp->runAction(easeBounceInOut);  
  179.       
  180. //    CCEaseBackIn  
  181. //    作用:让目标动作赋予回力 , 且以目标动作起点位置作为回力点  
  182. //    参数:目标动作  
  183. //    CCActionInterval * easeBackIn = CCEaseBackIn::create(move);  
  184. //    sp->runAction(easeBackIn);  
  185.       
  186. //    CCEaseBackOut  
  187. //    作用:让目标动作赋予回力 , 且以目标动作终点位置作为回力点  
  188. //    参数:目标动作  
  189. //    CCActionInterval *easeBackOut = CCEaseBackOut::create(move);  
  190. //    sp->runAction(easeBackOut);  
  191.       
  192. //    CCEaseBackInOut  
  193. //    作用:让目标动作赋予回力 , 且以目标动作起点和终点位置作为回力点  
  194. //    参数:目标动作  
  195. //    CCActionInterval * easeBackInOut = CCEaseBackInOut::create(move);  
  196. //    sp->runAction(easeBackInOut);  
  197.       
  198. //    CCEaseElasticIn  
  199. //    作用:让目标动作赋予弹性 ,且以目标动作起点位子赋予弹性  
  200. //    参数:目标动作  
  201. //    CCActionInterval * easeElasticIn= CCEaseElasticIn::create(move);  
  202. //    sp->runAction(easeElasticIn);  
  203.       
  204. //    CCEaseElasticOut  
  205. //    作用:让目标动作赋予弹性 ,且以目标动作终点位子赋予弹性  
  206. //    参数:目标动作  
  207. //    CCActionInterval *easeElasticOut = CCEaseElasticOut::create(move);  
  208. //    sp->runAction(easeElasticOut);  
  209.       
  210. //    CCEaseElasticInOut  
  211. //    作用:让目标动作赋予弹性 ,且以目标动作起点和终点位子赋予弹性  
  212. //    参数:目标动作  
  213. //    CCActionInterval *easeElasticInOut = CCEaseElasticOut::create(move);  
  214. //    sp->runAction(easeElasticInOut);  
  215.   
  216. //    CCEaseExponentialIn  
  217. //    让目标动作缓慢开始  
  218. //    参数:目标动作  
  219. //    CCActionInterval * easeExponentialIn= CCEaseExponentialIn::create(move);
  220. //    sp->runAction(easeExponentialIn);  
  221.       
  222. //    CCEaseExponentialOut  
  223. //    让目标动作缓慢中止  
  224. //    参数:目标动作  
  225. //    CCActionInterval * easeExponentialIn= CCEaseExponentialOut::create(move);  
  226. //    sp->runAction(easeExponentialIn);  
  227.       
  228. //    CCEaseExponentialInOut  
  229. //    让目标动作缓慢开始和中止  
  230. //    参数:目标动作  
  231. //    CCActionInterval * easeExponentialInOut= CCEaseExponentialInOut::create(move);  
  232. //    sp->runAction(easeExponentialInOut);  
  233.       
  234. //    CCEaseRateAction  
  235. //    作用 : 让目标动作设置速率  
  236. //    参数1:目标动作  
  237. //    参数2:速率  
  238. //    CCActionInterval * move = CCMoveTo::create(5, ccp(300,sp->getPositionY()));  
  239. //    CCActionInterval * easeRateAction = CCEaseRateAction::create(move, 3);  
  240. //    sp->runAction(easeRateAction);  
  241.       
  242. //    CCEaseSineIn  
  243. //    作用:动作由慢到快  
  244. //      参数:目标动作  
  245. //    CCActionInterval * easeSineIn = CCEaseSineIn::create(move);  
  246. //    sp->runAction(easeSineIn);  
  247.       
  248. //    CCEaseSineOut  
  249. //    作用:动作由快到慢  
  250. //    参数:目标动作  
  251. //    CCActionInterval * easeSineOut = CCEaseSineOut::create(move);  
  252. //    sp->runAction(easeSineOut);  
  253.       
  254. //    CCEaseSineInOut  
  255. //    作用:动作由慢到快再快到慢  
  256. //    参数:目标动作  
  257. //    CCActionInterval * easeSineInOut = CCEaseSineInOut::create(move);  
  258. //    sp->runAction(easeSineInOut);  
  259.       
  260. //    CCSpeed  
  261. //    作用:让目标动作运行速度加倍  
  262. //    参数1:目标动作  
  263. //    参数2:倍速  
  264. //        CCActionInterval * move = CCMoveTo::create(10, ccp(300,sp->getPositionY()));  
  265. //    CCSpeed * speed =CCSpeed::create(move, 100);  
  266. //    sp->runAction(speed);  
  267.       
  268. //    CCSpawn  
  269. //    作用:让多个动作同时执行  
  270. //    参数:目标动作的可变参数  
  271. //    CCActionInterval * move = CCMoveTo::create(10, ccp(300,sp->getPositionY()));  
  272. //    CCActionInterval * scale = CCScaleTo::create(2, 3);  
  273. //    CCActionInterval * rotate = CCRotateTo::create(4, 190);  
  274. //    CCFiniteTimeAction * spawn =CCSpawn::create(move,scale,rotate,NULL);  
  275. //    sp->runAction(spawn);  
  276.       
  277. //    CCSequence  
  278. //    作用:让多个动作按照前后顺序逐一执行  
  279. //    参数:目标动作的可变参数  
  280. //    CCActionInterval * move = CCMoveTo::create(2, ccp(300, sp->getPositionY()));  
  281. //    CCActionInterval * scale = CCScaleTo::create(2, 3);  
  282. //    CCFiniteTimeAction * seq= CCSequence::create(move,scale,NULL);  
  283. //    sp->runAction(seq);  
  284. //    扩展如果要对目标动作全部进行方向运动,可以使用如下形式操作  
  285. //    CCFiniteTimeAction *seq=CCSequence::create(moveby,scaleby,...NULL);  
  286. //    CCFiniteTimeAction * reverseseq = CCSequence::create(seq,seq->reverse(),NULL)  
  287. //    注意CCSequence中的所有动作都必须支持reverse函数,否则会出现异常  
  288. //    CCActionInterval * move = CCMoveBy::create(2, ccp(300, sp->getPositionY()));  
  289. //    CCActionInterval * scale = CCScaleBy::create(2, 3);  
  290. //    CCFiniteTimeAction * seq= CCSequence::create(move,scale,NULL);  
  291. //    CCFiniteTimeAction * reveseseq = CCSequence::create(seq,seq->reverse(),NULL);  
  292. //    sp->runAction(reveseseq);  
  293.       
  294. //    CCRepeat  
  295. //    作用:对目标动作进行重复运动(目标动作可以是CCSequence ,CCSpawn)  
  296. //    参数1:目标动作  
  297. //    参数2:重复次数  
  298. //    CCActionInterval * move = CCMoveTo::create(2, ccp(300, sp->getPositionY()));  
  299. //    CCActionInterval * move2 = CCMoveTo::create(2, ccp(100,100));  
  300. //    CCFiniteTimeAction*seq =CCSequence::create(move,move2,NULL);  
  301. //    CCFiniteTimeAction *repeat = CCRepeat::create(seq, 3);  
  302. //    sp->runAction(repeat);  
  303.       
  304. //    CCRepeatForever  
  305. //    作用:对目标动作进行永久性的重复运动(目标动作可以是CCSequence ,CCSpawn)  
  306. //    参数:目标动作  
  307. //    CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));  
  308. //    CCActionInterval * move1 = CCMoveTo::create(1, ccp(100,100));  
  309. //    CCFiniteTimeAction* seq = CCSequence::create(move,move1,NULL);  
  310. //    CCActionInterval * repeatForever =CCRepeatForever::create((CCActionInterval* )seq);  
  311. //    sp->runAction(repeatForever);  
  312.       
  313. //    CCCallFunc  
  314. //    作用:创建一个回调动作(调用不带参数的回调方法);  
  315. //    参数1:目标动作  
  316. //    参数2:目标回调函数  
  317. //    CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));  
  318. //    CCCallFunc * funcall= CCCallFunc::create(this, callfunc_selector(HelloWorld::callbackC));  
  319. //    CCFiniteTimeAction * seq = CCSequence::create(move,funcall,NULL);  
  320. //    sp->runAction(seq);  
  321.       
  322. //    CCCallFuncN  
  323. //    作用:创建一个回调动作(调用 带一个参数的回调方法);  
  324. //    参数1:目标动作  
  325. //    参数2:目标回调函数  
  326. //    CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));  
  327. //    CCCallFuncN * funcall= CCCallFuncN::create(this, callfuncN_selector(HelloWorld::callbackN));  
  328. //    CCFiniteTimeAction * seq = CCSequence::create(move,funcall,NULL);  
  329. //    sp->runAction(seq);  
  330.       
  331. //    CCCallFuncND  
  332. //    作用:创建一个回调动作(调用 带两个参数的回调方法);  
  333. //    参数1:目标动作  
  334. //    参数2:目标回调函数  
  335.     CCActionInterval * move = CCMoveTo::create(1, ccp(300, sp->getPositionY()));  
  336.     CCCallFuncND * funcall= CCCallFuncND::create(this, callfuncND_selector(HelloWorld::callbackND)  ,(void*)0xbebabeba);  
  337.     CCFiniteTimeAction * seq = CCSequence::create(move,funcall,NULL);  
  338.     sp->runAction(seq);  
  339.     return true;  
  340. }  
  341. void HelloWorld::callbackC()  
  342. {  
  343.     CCLOG("callbackC");  
  344. }  
  345.   
  346. void HelloWorld::callbackN(CCNode* sender)  
  347. {  
  348.     CCLOG("callbackN");  
  349. }  
  350.   
  351. void HelloWorld::callbackND(CCNode* sender, void* data)  
  352. {  
  353.     CCLOG("callbackND");  
  354. }

本文转载自:http://blog.csdn.net/ff313976/article/details/23667209
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 怀孕两个月下体流褐色分泌物怎么办 头发总是大把大把的得掉 怎么办 严重脱发怎么办去问南宁肤康 脱发严重怎么办去看南宁肤康 前额头发少怎么办 如何使头发增多 生完宝宝头发一把一把的掉怎么办 生完宝宝后头发掉的厉害怎么办 生完宝宝头发掉的厉害怎么办 生了小孩后头发掉很多怎么办 生了孩子头发掉的很厉害怎么办 母乳期头发掉的很厉害怎么办 宝宝吃母乳头发掉的厉害怎么办 头发油腻头皮屑多还掉头发怎么办 头发剪了中分刘海弯了怎么办 头发掉了长出来的头发很细怎么办? 头皮损伤毛囊怎么办还会长头发吗 一岁宝宝头发稀少怎么办能刮光头么 前编头发长了怎么办怎么梳理 九个月宝宝头发稀少不长怎么办 前牙吃饭咬合很深吃饭就痛怎么办 吃了甜的冷的就牙疼怎么办 吃热的凉的甜的牙疼怎么办 头发太细了想让头发变粗点怎么办 我的头发又少又很油该怎么办 头发油掉发头顶头发稀疏怎么办 我的头发天生就少又细怎么办 头发越来越少怎么办 用什么好呢 头发油掉头发怎么办吃什么药好 生完孩子三个月掉头发很厉害怎么办 电夹板夹头发现在掉头发怎么办 刚剪完的头发前面短后面长怎么办 头发太多太厚怎么办_百度经验 米诺地尔搽剂喷在头皮上痛怎么办 米诺地尔擦了头皮痒怎么办 头发又细又少一天不洗就油怎么办 头又尖头发又细又少不知怎么办 蘑菇头发型留长尴尬期怎么办 月经期间洗了下头量很少了怎么办 宝宝喝了有沐浴露的洗澡水怎么办 4个月宝宝头发长的慢怎么办 宝宝不小心吃了自己拉的屎怎么办