Есть ли способ заставить видеоклип идентифицировать себя в AS2?

По сути, я делаю очень простую пошаговую боевую игру, используя ActionScript 2.0.

Я ОЧЕНЬ новичок в программировании, с очень ограниченными знаниями Visual Basic, поэтому я с радостью признаю, что на самом деле не знаю, что делаю. У меня есть начало, но я решил переписать все целиком, потому что не смогу легко переключаться между врагами и уровнями.

Я создал одного и того же врага дважды using _root.attachMovie и обозначил их как Enemy1 и Enemy2. После их создания я попытался заставить их идентифицировать себя с:

_root.Enemy1.identify = "Enemy1"
_root.Enemy1.identify = "Enemy1"

Используя отладчик, это, по-видимому, работает (внутри мувиклипа у них есть переменная с именем identity, которая правильно их помечает), но когда я пытаюсь использовать оператор if, чтобы поместить их в свои отдельные позиции, это просто не работает; он скользит прямо над. Код, который у меня есть в видеоклипах:

if (identify == "Enemy1") {

    function poschange() {

        _root.Enemy1._x = _root.Enemy1.POSX;

        _root.Enemy1._y = _root.Enemy1.POSY;

        _root.Enemy1.swapDepths(_root.Enemy1.POSY);

    }

} else if (identify == "Enemy2") {

    function poschange() {

        _root.Enemy2._x = _root.Enemy2.POSX;

        _root.Enemy2._y = _root.Enemy2.POSY;

        _root.Enemy2.swapDepths(_root.Enemy2.POSY);

    }

}

poschange();

Функции poschange отлично работают для игровых персонажей, просто этот оператор if, чтобы определить, какой враг, по-видимому, терпит неудачу.

Итак, мой вопрос: есть ли более простой способ для видеоклипа идентифицировать свой собственный идентификатор, поэтому мне не нужно использовать этот метод, или что-то не так с моим кодом?


person Odin Anstiss Liljefors    schedule 13.05.2011    source источник