So I have this pretty basic code in my document class:
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.ui.*;
import flash.events.MouseEvent;
import flash.display.Stage;
import flash.display.MovieClip;
public class Main extends Sprite
{
//Properties
public var circle:Circle;
public var vx:Number;
public var vy:Number;
addEventListener(KeyboardEvent.KEY_DOWN, onKeyboardDown);
addEventListener(KeyboardEvent.KEY_UP, onKeyboardUp);
addEventListener(Event.ENTER_FRAME, onEnter);
public function addedToStageHandler(event:Event):void
{
}
public function Main()
{
super();
init();
}
public function init():void
{
vx = 0;
vy = 0;
circle = new Circle(35, 0x0066FF);
stage.addChild(circle);
circle.x = 50;
circle.y = 50;
}
public function onKeyboardDown(event:KeyboardEvent):void
{
switch(event.keyCode)
{
case Keyboard.LEFT:
vx = -5;
break;
case Keyboard.RIGHT:
vx = 5;
break;
case Keyboard.UP:
vy = -5;
break;
case Keyboard.DOWN:
vy = 5;
break;
}
}
public function onKeyboardUp(event:KeyboardEvent):void
{
switch(event.keyCode)
{
case Keyboard.LEFT:
vx = 0;
break;
case Keyboard.RIGHT:
vx = 0;
break;
case Keyboard.UP:
vy = 0;
break;
case Keyboard.DOWN:
vy = 0;
break;
}
}
public function onEnter(event:Event):void
{
circle.x += vx;
circle.y += vy;
}
}
}
The problem is that I keep getting errors that to a beginner don’t make any sense:
“Call to a possibly undefined method addEventListener.” x 3
“Access of undefined property onEnter.”
“Access of undefined property onKeyboardUp.”
“Access of undefined property onKeyboardDown.”
I really don’t understand this issue. How can AS3 not recognize addEventListener? As well, I did have it so my event listeners were added to the stage “stage.addEventListener” and it wasn’t recognizing the stage either. Can somebody push me in the right direction with this issue? Thanks!
All in all your code is almost there you just need a little bit better understanding on how the display list works.