“乘以青蛙敌人”计时器和阵列AS3

时间:2010-03-04 18:44:29

标签: flash actionscript-3

如何使用计数器值乘以数组中的青蛙?我的计数器从0到100。我想证明我可以使用计数器增加敌人。

解释得更好
我有10只青蛙在一个阵列中。我想在TimerEvent.TIMER触发的每次迭代中使用一个计时器再添加10个青蛙。

alt text http://www.ashcraftband.com/myspace/videodnd/frog.jpg

//currentCount
var timer:Timer = new Timer(1000, 50);
timer.addEventListener(TimerEvent.TIMER, countdown);
timer.start();
function countdown(event:TimerEvent) {
//    myText.text = String(0 + timer.currentCount);
}



//Creates 10 enemies "I want enemies to multiply 0-100"
var enemyArray:Array = new Array();
for (var i:int = 0; i < 10; i++)
{
   var noname:FrogClass = new FrogClass();
   noname.x = i*10; //this will just assign some different x and y value depending on i.
   noname.y = i*11;
   enemyArray.push(noname); //put the enemy into the array
   addChild(noname); //puts it on the stage
}

alt text http://www.ashcraftband.com/myspace/videodnd/frogs.jpg

符号属性
姓名“noname”
CLASS“FrogClass”

WHY
我需要使用字符串和数组的特定示例,因为我陷入了学习曲线 愚蠢的例子更有趣!

1 个答案:

答案 0 :(得分:0)

  

我想证明我可以使用计数器增加敌人。

恐怕我不明白这意味着什么。

你的for循环将10个FrogClass对象添加到enemyArray数组中。那你的愿望是什么?你想要100只青蛙而不是10只?只需将for循环中的最大值增加到100 ......

更具体地说明你想要的东西。

示例:

我在阵列中有10只青蛙。我想在TimerEvent.TIMER触发的每次迭代中使用一个计时器再添加10个青蛙。所以在timer.currentCount == 1之后我会有20只青蛙。

我在阵列中有10只青蛙。我想用一个计时器来提高阵列中每只青蛙的速度。所以他们的速度从1开始。在timer.currentCount == 1之后,他们的速度将是1.1。

编辑基于更好的描述

var enemyArray:Array = new Array();

var timer:Timer = new Timer(1000, 50);
timer.addEventListener(TimerEvent.TIMER, countdown);
timer.start();
function countdown(event:TimerEvent) {
    addFrogs(10);
}

function addFrogs($n:int):void {
    var noname:FrogClass;
    var offset:int = enemyArray.length;
    for (var i:int = 0; i < $n; i++)
    {
       noname = new FrogClass();
       noname.x = (i + offset) * 10;
       noname.y = (i + offset) * 11;
       enemyArray.push(noname); 
       addChild(noname);
    }
}

但是,由于你的计数器循环50次,这将增加500只青蛙,而不是100只。