我有一个 .fla 文件,其中有用于在男孩画中更改皮肤、头发和衬衫颜色的符号。当我用 CreateJS 导出它时,我得到了这个:
// 1Hair
this.shape_226 = new cjs.Shape();
this.shape_226.graphics.f("#FCDEC4").s().p("AA").cp();
this.shape_226.setTransform(0.1,-95.3);`
在那里你可以看到代表头发颜色的颜色(#FCDEC4),我尝试将颜色替换为一个变量(boyHair),就像这样
// 1Hair
this.shape_226 = new cjs.Shape();
this.shape_226.graphics.f(boyHair).s().p("AA").cp();
this.shape_226.setTransform(0.1,-95.3);`
这是生成文件的init函数
//Modified from exported file of Flash Toolkit for CreateJS
var canvas, stage, exportRoot;
function init() {
canvas=document.getElementById("canvas");
exportRoot=new lib.characters();
stage=new createjs.Stage(canvas);
stage.addChild(exportRoot);
stage.update();
createjs.Ticker.setFPS(24);
createjs.Ticker.addListener(stage);
}
我在我的主 JavaScript 文件上设置值,如下所示:
var boyHair="#000000";
并且第一次工作(我猜是在初始化阶段)但是如果我稍后在代码中修改该值,它对画布绘制没有影响,我尝试过stage.update()
但它什么也没做。
你知道是否有办法动态地改变这些颜色吗?
提前致谢