我尝试使用 cc.scaleTo() 为三个圆圈设置动画,并且直到我结合 cc.delayTime() 和 cc.repeatForever() 时它都可以正常工作。在 hello worlds 应用程序中,我添加了:
/////////////////////////////
// 3. add your codes below...
var contacts = [];
for( var i=0 ; i<3 ; i++ ) {
contacts[i] = cc.DrawNode.create();
contacts[i].retain();
contacts[i].clear();
contacts[i].setScale(1);
contacts[i].drawCircle(cc.p(0,0), 30, 0, 100, false, 2, cc.color(255,0,0,255));
contacts[i].setPosition(size.width/2, size.height/2);
this.addChild(contacts[i]);
contacts[i].runAction(
cc.sequence(
cc.delayTime(i),
cc.repeatForever(
cc.sequence(
cc.scaleTo(3, 3),
cc.scaleTo(0.01, 0)
)
)
)
);
}
return true;
这不起作用并显示控制台消息:
[Action update]. override me
当我删除: cc.delayTime() 或 cc.repeatForever() 它工作正常。
contacts[i].runAction(
cc.sequence(
cc.repeatForever(
cc.sequence(
cc.scaleTo(3, 3),
cc.scaleTo(0.01, 0)
)
)
)
);
或者
contacts[i].runAction(
cc.sequence(
cc.delayTime(i),
cc.sequence(
cc.scaleTo(3, 3),
cc.scaleTo(0.01, 0)
)
)
);
并且没有消息出现。
那会是什么?