всем хеллоу!
Есть у меня класс Craft :

Код AS3:
package classes
{
import flash.display.MovieClip;
import flash.events.*;
import classes.assisted.keyPressed;
public class Craft extends MovieClip
{
var kp = new keyPressed();
public function Craft():void
{
trace("class craft called");
addEventListener(Event.ENTER_FRAME, ef);
}
public function ef(e:Event)
{
kp.keyP(this);
}
}
}
и есть у меня другой класс keyPressed

Код AS3:
package classes.assisted
{
import flash.events.*;
public class keyPressed
{
public function keyPressed():void
{
trace("class keyPressed called");
}
public function keyP(obj):void
{
obj.addEventListener(KeyboardEvent.KEY_DOWN, kd);
obj.y-=1;
}
public function kd(event:KeyboardEvent)
{
trace("^_^");
//trace(event.keyCode);
}
}
}
и после компиляции компилятор пишет "class keyPressed called", а как бы я по клавишам не стучал, то "^_^" некак не хочет написаться, хотя объект я явно передал классу, тк он медленно но верно ползет вверх

Почему такая несправедливость в мире?
Неужто мне прийдеться передовать не только сам объект, но и коды нажатых клавишь?