1, 使用Cocostudio中的动画时,
node.runAction(action); //1
action.play("lable", true) //2
如果第一句已经执行过了,下次再使用action.play播放其它动画时,就不能再执行runActioin了。
下面是Cocostudio使用过程中遇到的问题。
1, 在2.3.2版本中新追加的sprite,在动画中不能修改visible属性。 即不能不会儿让sprite显示,一会儿消失。
不知道为什么之前的版本可以实现这个功能,目前的版本不能实现了。
修改方法是直接个性csd文件。
在<Animation>节点下追加下面的节点,然后重新打开csd文件。
<Timeline ActionTag="-1976170523" Property="VisibleForFrame">
<BoolFrame FrameIndex="0" Tween="False" Value="False" />
<BoolFrame FrameIndex="1" Tween="False" Value="True" />
</Timeline>
ActionTag,根据sprite的名称,从AbstractNodeData中找到,如果想个性anchpoint可以追加。
<Timeline ActionTag="-503367939" Property="AnchorPoint">
<ScaleFrame FrameIndex="17" X="0.4987" Y="0.5024">
<EasingData Type="0" />
</ScaleFrame>
<ScaleFrame FrameIndex="21" X="0.5000" Y="0.5008">
<EasingData Type="0" />
</ScaleFrame>
</Timeline>
3, 使用cc.Class.exten的注意事项。
var Car = cc.Class.extend({
array:[], //NG, 1.
ctor: function(){
this.array = []; // OK 2
},
addElement: function(item){
array.push(item);
}
});
var car1 = new Car();
car1.addElement();
cc.log(car1.array.length); // length = 1
var car2 = new Car();
car2.addElement();
cc.log(car2.array.length); // <span style="font-family: Arial, Helvetica, sans-serif;">length = 2</span>
在1处初始化array的话,使用new object的时候,新的object仍然使用array的引用而不是生成新的array.
所以应该在ctor函数内部进行初始化。