Эта строка не имеет абсолютно смысла с точки зрения логики AS3:
gotoAndPlay(( 1, Scene (2)));
Если вы заглянете в раздел «Пример» в официальная gotoAndPlay (...) справка, есть два возможных использования этого метода:
- Вы передаете единственный аргумент "frame": это либо индекс кадра int, отсчитываемый от 1, либо метка String желаемого кадра.
- Два аргумента, где второй - это Строка имени Сцены, являющейся частью основной шкалы времени, а первый - это, опять же, индекс кадра или метка кадра внутри указанная сцена.
А теперь давайте разберемся, что у вас там. Вы передаете аргументы gotoAndPlay (...). Почувствуйте разницу:
// Your version: one argument grouped with additional brackets.
gotoAndPlay(( 1, Scene (2)));
// Alternate version: no additional brackets, two arguments.
gotoAndPlay(1, Scene (2));
Тогда что такое выражение Scene (2), спросите вы? Это называется приведением типов. Операция, при которой вы:
- Явно укажите точный класс того, с чем вы работаете, потому что бывают моменты, когда компилятор не знает точно, например, каков точный класс объекта Event.target. Вот хороший пример, хорошо объясненный: AS3: приведение или как?
- Вы хотите явно преобразовать данные из одного типа в другой (указанное приведение типа), чаще всего используется между int или Number и String типы.
Посмотрим:
function onEvent(e:Event):void
{
// Explicit typecasting.
MovieClip(e.target).nextFrame();
// Explicit typecasting through "as" operator.
var aFrame:int = (e.target as MovieClip).currentFrame;
// Explicit type conversion.
trace("The current frame is", String(aFrame));
Итак, вы пытаетесь убедить Flash Player в том, что целочисленное значение 2 каким-то образом является объектом Scene, но это не так, поэтому исключение, созданное Flash Player, потому что он не понимает, что вы от него хотите.
Правильная запись того, чего вы пытаетесь достичь (перемещение курсора воспроизведения на вторую сцену), вероятно, будет следующей:
gotoAndPlay(1, "Scene2");
Аргумент Scene2 - это строковый литерал, который должен представлять точное имя вашей второй сцены, я не мог знать, что это такое, но, вероятно, его следует назвать По умолчанию "Сцена 2" или "Сцена 2".
person
Organis
schedule
07.05.2020