2 мувиклипа с тем же именем экземпляра - PullRequest
0 голосов
/ 27 января 2012

У меня есть 2 копии одного и того же мувиклипа на временной шкале, и мне нужно, чтобы они оба делали одно и то же, поэтому я решил дать им одно и то же имя экземпляра.

У меня есть прослушиватель событий на сцене, который прослушивает щелчок мыши, а затем проверяет, что было щелкнуто с использованием параметра переключателя, но параметр переключателя выбирает только один экземпляр мувиклипа, другой по умолчанию используется по умолчанию. .

Главным образом я спрашиваю, возможно ли иметь мувиклипы на временной шкале с тем же именем экземпляра?

public function Main() {
    stage.addEventListener(MouseEvent.CLICK, doStuff);
}

public function doStuff(e:MouseEvent):void {
    switch (e.target) {
        case myMC1 :
            //do stuff
            break;
        case myMC2 :
            //do stuff
            break;
        case myMC3 :
            //do stuff
            break;
        default :
            //do stuff
    }
}

Ответы [ 2 ]

2 голосов
/ 27 января 2012

Дайте экземплярам два разных имени (НИКОГДА НЕ ИСПОЛЬЗУЙТЕ ИМЯ ИМЕННО ДЛЯ ДВУХ ОБЪЕКТОВ, ДЕЙСТВИТЕЛЬНО :)) и измените оператор switch следующим образом:

 public function doStuff(e:MouseEvent):void {
switch (e.target) {
    case myMC1 :
    case myMC2 :
        //do stuff
        break;
    case myMC3 :
        //do stuff
        break;
    default :
        //do stuff
}
}

Форматируя его таким образом, вы можете выполнить один и тот же код для двух разных случаев

1 голос
/ 27 января 2012

Вместо этого используйте e.currentTarget.e.target предоставит вам объект, отправивший событие, которое может быть дочерним элементом вашего MovieCLip

...