Эта строка делает абсолютно бессмысленным с точки зрения AS3 logi c:
gotoAndPlay(( 1, Scene (2)));
Если вы посмотрите в раздел « Example » official gotoAndPlay (...) help , есть два возможных использования этого метода:
- Вы передаете единственный аргумент "frame": это либо основанный на 1 int индекс кадра, или это String метка желаемого кадра.
- Два аргумента, где второй - 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));
Итак, вы пытаетесь убедить Fla sh Player в том, что целочисленное значение 2 каким-то образом является объектом Scene , но это не так, поэтому исключение, вызванное Fla sh Player , потому что он не понимает, что вы от него хотите.
Правильная запись того, что вы пытаетесь достичь (перемещение курсора воспроизведения на вторую Scene ), вероятно, будет:
gotoAndPlay(1, "Scene2");
Аргумент « Scene2 » - это строковый литерал, который должен представлять точное имя этой второй вашей сцены, Я не мог знать, что это, но, вероятно, по умолчанию он должен называться « Scene2 » или « Scene 2 ».