10903


Cocos2d-JS 3.6を使用して

[code]

    this.schedule(this.myTask, 1.0);
    
[/code]

で呼び出したmyTaskを止めるにはどうすればよいでしょうか?

Cocos2d-XではpauseTargetを使うらしいのですが、うまく呼び出せません。


CC BY-SA 3.0
2015-05-15T00:48:30.723
10201
2015-06-02T12:32:05.023
356
question
javascript cocos2d-x
Cocos2d-JSでscheduleを止める方法


`this.unschedule(this.myTask);`

でいかがでしょう？

サンプルを作ってみました。

[code]

    window.onload = function(){
    cc.game.onStart = function(){
    
        var currentTimer = 0;
        var timerMax = 5;
    
        //load resources
        cc.LoaderScene.preload(["HelloWorld.png"], function () {
            var MyScene = cc.Scene.extend({
                onEnter:function () {
                    this._super();
                    var size = cc.director.getWinSize();
                    var sprite = cc.Sprite.create("HelloWorld.png");
                    sprite.setPosition(size.width / 2, size.height / 2);
                    sprite.setScale(0.8);
                    this.addChild(sprite, 0);
    
                    var label = cc.LabelTTF.create("Hello World", "Arial", 40);
                    label.setPosition(size.width / 2, size.height / 2);
                    this.addChild(label, 1);
    
                    //スケジュール登録
                    this.schedule(this.myTask, 1.0);
                },
                myTask:function(){
                  console.log("ok")
                  currentTimer++;
                  if(currentTimer == timerMax){
    
                    //スケジュール解除
                    this.unschedule(this.myTask);
                  }
                }
            });
            cc.director.runScene(new MyScene());
        }, this);
    };
    cc.game.run("gameCanvas");
    
[/code]

};


CC BY-SA 3.0
2015-06-02T12:32:05.023
10903
2015-06-02T12:32:05.023
9965
10201
answer