• Cocos2d-android (04) 执行多个动作


    先后、同时执行多个动作及动作序列执行结束后的事件

     1 import org.cocos2d.actions.instant.CCCallFunc;
     2 import org.cocos2d.actions.interval.CCMoveTo;
     3 import org.cocos2d.actions.interval.CCRotateTo;
     4 import org.cocos2d.actions.interval.CCScaleTo;
     5 import org.cocos2d.actions.interval.CCSequence;
     6 import org.cocos2d.actions.interval.CCSpawn;
     7 import org.cocos2d.layers.CCLayer;
     8 import org.cocos2d.nodes.CCSprite;
     9 import org.cocos2d.types.CGPoint;
    10 
    11 public class GameLayer extends CCLayer {
    12 
    13     private CCSprite sprite;
    14 
    15     public GameLayer() {
    16         sprite = CCSprite.sprite("player.png");
    17         this.addChild(sprite);
    18 
    19         CGPoint startPoint = CGPoint.ccp(200, 200);
    20         sprite.setPosition(startPoint);
    21         CGPoint targetPoint = CGPoint.ccp(600, 600);
    22 
    23         CCMoveTo moveTo = CCMoveTo.action(3, targetPoint);
    24         CCRotateTo rotateTo = CCRotateTo.action(3, 270);
    25         CCScaleTo scaleTo = CCScaleTo.action(3, 3);
    26 
    27         // 多个动作先后执行
    28         CCSequence sequence = CCSequence.actions(moveTo, rotateTo, scaleTo);
    29         // 多个动作同时执行
    30         CCSpawn spawn = CCSpawn.actions(moveTo, rotateTo, scaleTo);
    31         //执行当前对象中的某个方法
    32         CCCallFunc callFunc = CCCallFunc.action(this, "onActionFinished");
    33         CCSequence sequence1 = CCSequence.actions(moveTo, callFunc);
    34 
    35         sprite.runAction(sequence1);
    36     }
    37 
    38     public void onActionFinished(Object sender) {
    39         System.out.println("onActionFinished");
    40     }
    41 }
  • 相关阅读:
    091122杂记
    20100304我的碎碎念
    写给自己
    开始学习AGG
    找两个数组中的相同元素
    要多写代码了
    [翻译] AGG Reference 之 Basic Renderers(基础渲染器)
    在博客园日志中显示数学公式(旧,ASCIIMathML.js版说明)
    091128日志(博客园博客显示数学公式的方法!)
    与临时对象的斗争(上)
  • 原文地址:https://www.cnblogs.com/zhangtingkuo/p/3590013.html
Copyright © 2020-2023  润新知