oDustGgg個人原創、歡迎轉載、轉載請註明出處、http://blog.csdn.net/odustggg/article/details/8187326
參考文獻:http://cn.cocos2d-x.org/document
1、動作概述
CCNode有一個成員函數叫runAction、
CCAction* runAction(CCAction* action);
這保證了繼承了此介面的CCSprite對象可以執行各種動作
2、使用方法
local action = CCMoveTo::actionWithDuration(2.0,CCPoint(100, 100))Sprite:runAction(action)
startWithTagert:(id) 將節點與行為對象相關聯
stop 取消節點與行為的關聯、即停止行為
isDone 檢測行為是否執行完畢
pause 暫停行為(可恢複)
unPause 從暫停中恢複。
isRunning 是否在運行
注意:action是個抽象類別 方法需要繼承了它的子類自己實現
3、動作子類簡圖
a、CCFiniteTimeAction 是時間類動作的抽象基類、用於表示在有限時間內可以完成的動作
b、CCFollow 是一個跟隨節點的動作類
很多遊戲都是這樣的,要將主角放在螢幕中間,無論主角怎樣移動、螢幕都是以主角為中心的、
很簡單一句就搞定了、其中layer是你需要移動的層,sprite是你的螢幕要跟隨的精靈
layer:runAction(CCFollow::actionWithTarget(sprite))
c、CCSpeed 變化速度的一個動作、用於類比“縮時攝影”或“快進”的效果、
警告: 被改變的動作不能被作為序列因為它不是一個CCIntervalAction對象
local move = CCMoveBy:actionWithDuration(3,CCPoint(350,0))--調整為3倍速運行 local speed= CCSpeed:actionWithAction(move,3.0)