Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 在循环中为每个maxvalue添加X个addChild数量_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 在循环中为每个maxvalue添加X个addChild数量

Actionscript 3 在循环中为每个maxvalue添加X个addChild数量,actionscript-3,flash,Actionscript 3,Flash,作业是根据测验的分数繁殖几根浅色和深色羽毛。浅色羽毛代表正确的点(浅色羽毛),深色羽毛代表错误的点(深色羽毛)(每个点都被跟踪)。所有的羽毛都应该排成一行,这意味着首先是浅色羽毛,然后是深色羽毛。我弄明白了测验的动态性,我在这里发布的功能只适用于当他们按下结束测验时 var light_feather:LightFeather = new LightFeather(); var dark_feather:DarkFeather = new DarkFeather(); var good_ans

作业是根据测验的分数繁殖几根浅色和深色羽毛。浅色羽毛代表正确的点(
浅色羽毛
),深色羽毛代表错误的点(
深色羽毛
)(每个点都被跟踪)。所有的羽毛都应该排成一行,这意味着首先是浅色羽毛,然后是深色羽毛。我弄明白了测验的动态性,我在这里发布的功能只适用于当他们按下结束测验时

var light_feather:LightFeather = new LightFeather();
var dark_feather:DarkFeather = new DarkFeather();

var good_answers:uint = 0;
var bad_answers:uint = 0;

function avsluttFunc (evt:MouseEvent) 
{   
    var sum_LightFeatherX:Number = 0;
    for (var i = 0; i < good_answers; i++) {
        addChild(light_feather);
        light_feather.x += 12 + (i*16);
        light_feather.y = 0;
        trace("Lys X-verdi: " + light_feather.x);
        sum_LightFeatherX += Number(light_feather.x);
        return sum_LightFeatherX;
    }
    trace(sum_LightFeatherX);

    dark_feather.x += sum_LightFeatherX;
    for (var j = 1; j <= bad_answers; j++) {
        addChild(dark_feather);
        dark_feather.x += 12 + (j*16);
        dark_feather.y = 0;
        trace("Mørk X-verdi: " + dark_feather.x);
    }

    /*
        //Resetter poengsummen
        good_answers = 0;
        bad_answers = 0;
    */
}
var light_feather:LightFeather=new LightFeather();
var dark_feather:DarkFeather=新的DarkFeather();
var good_答案:uint=0;
var bad_回答:uint=0;
函数avsluttFunc(evt:MouseEvent)
{   
var sum_LightFeatherX:Number=0;
for(var i=0;i对于(var j=1;j您可以只使用一个for循环来完成所需的操作,请看:

var good_answers:uint = 2;
var bad_answers:uint = 4;

function avsluttFunc(evt:MouseEvent) 
{           
    for (var i:int = 0; i < good_answers + bad_answers; i++) {
        var feather:DisplayObject = i < good_answers ? new LightFeather() : new DarkFeather();  
            feather.x += 12 + i * (feather.width + 1);
            feather.y = 0;
        addChild(feather);          
    }
}
然后,要将其从后台删除,您可以执行以下操作,例如:

for (var i:int = 0; i < feathers.length; i++) {
    var feather:DisplayObject = DisplayObject(feathers[i]);
        feather.parent.removeChild(feather);
}
for(变量i:int=0;i

希望这能有所帮助。

我尝试使用更可读的名称简化您的代码。谢谢!这正是我想要的!快速问题:我发现当我多次进行测验时,羽毛会从上次测验中残留下来。当我按下再次开始测验的按钮时,您有什么方法删除它们吗?@ripsrpas您可以添加所有对象吗到阵列,然后您可以在阵列上使用for循环来删除它们。@akamozo:我已经对其进行了一些修补,但我只能自己从阵列中删除对象。我似乎找不到方法将其从舞台上删除。您如何设置它?@akamozo Brilliant,只是Brilliant!谢谢:)效果很好
for (var i:int = 0; i < feathers.length; i++) {
    var feather:DisplayObject = DisplayObject(feathers[i]);
        feather.parent.removeChild(feather);
}