cocos2d-html5
Version:
Cocos2d-HTML5 core package
39 lines (33 loc) • 1.32 kB
JavaScript
var ScheduleUsingSchedulerTest = cc.Layer.extend({
_accum:0,
ctor : function(){
this._super();
this._accum = 0;
var scheduler = cc.Director.getInstance().getScheduler();
var priority = 0; // priority 0. default.
var paused = false; // not paused, queue it now.
scheduler.scheduleUpdateForTarget(this, priority, paused);
var interval = 0.25; // every 1/4 of second
var repeat = cc.REPEAT_FOREVER; // how many repeats. cc.REPEAT_FOREVER means forever
var delay = 2; // start after 2 seconds;
paused = false; // not paused. queue it now.
scheduler.scheduleCallbackForTarget(this, this.onSchedUpdate, interval, repeat, delay, paused);
},
// callbacks
update:function(dt) {
logTest("update: " + dt);
},
onSchedUpdate:function (dt) {
logTest("onSchedUpdate delta: " + dt);
this._accum += dt;
if( this._accum > 3 ) {
var scheduler = cc.Director.getInstance().getScheduler();
scheduler.unscheduleAllCallbacksForTarget(this);
}
logTest("onSchedUpdate accum: " + this._accum);
}
});
ScheduleUsingSchedulerTest.create = function(args){
var layer = new ScheduleUsingSchedulerTest();
return layer.init() ? layer : null;
};