# \[F8\]\[AS2\] Help with nested loops, arrays and moving MC's

**URL:** <https://forum.kirupa.com/t/f8-as2-help-with-nested-loops-arrays-and-moving-mcs/259949>\
**Category:** Uncategorized\
**Created:** [May 10, 2008, 8:03pm UTC](https://forum.kirupa.com/t/f8-as2-help-with-nested-loops-arrays-and-moving-mcs/259949 "2008-05-10T20:03:33Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![zuperxtreme](https://avatars.discourse-cdn.com/v4/letter/z/e9a140/32.png) [@zuperxtreme](https://forum.kirupa.com/u/zuperxtreme)\
**Post date:** [May 10, 2008, 8:03pm UTC](https://forum.kirupa.com/t/f8-as2-help-with-nested-loops-arrays-and-moving-mcs/259949/1 "2008-05-10T20:03:33Z")

</div>

I need the MC’s on the left, to choose(randomly if possible) a target to the right and move towards it.

My code is:

```auto
//ALL IN ARRAY MOVE TOWARDS ONE ENEMY
var iArray:Array = [];
var kArray:Array = [];
//object 1 array
for (i=0; i<20; i++) {
    newI = "i_"+i;
    iArray.push(newI);
    _root.attachMovie("i", newI, _root.getNextHighestDepth());
    _root[newI]._x = 100+Math.round(Math.random()*30);
    _root[newI]._y = Math.round(Math.random()*300);
}
//object 2 array
for (k=0; k<5; k++) {
    newK = "k_"+k;
    kArray.push(newK);
    _root.attachMovie("k", newK, _root.getNextHighestDepth());
    _root[newK]._x = 400+Math.round(Math.random()*30);
    _root[newK]._y = Math.round(Math.random()*300);
}
//loops,target, move and hitT
for (l=0; l != kArray.length; l++) {
    for (m=iArray.length; m != 0; m--) {
        targetL = eval(kArray[l]);
        targetM = eval(iArray[Math.round(Math.random()*iArray.length)]);
        if (targetM == undefined) {
            targetM = eval(iArray[1]);
        }
        targetL.onEnterFrame = function() {
            //trace(targetM);
            if (this._x<targetM._x) {
                this._x++;
            } else if (this._x>targetM._x) {
                this._x--;
            }
            if (this._y<targetM._y) {
                this._y++;
            } else if (this._y>targetM._y) {
                this._y--;
            }
            if (this.hitTest(targetM)) {
                trace("HIT"+targetM);
                trace(this+" vs "+targetM);
            }
        };
    }
}

```

[http://img236.imageshack.us/my.php?image=zombiedefatkphaselh8.swf](http://img236.imageshack.us/my.php?image=zombiedefatkphaselh8.swf)

As you can see they all go towards one, when each of them should go individually to another individual(or not), just not all to the same.

Hope someone understands…
