
Код AS3:
field.addEventListener(MouseEvent.CLICK, fieldClick);
//Создавать экземпляр sh нужно здесь, когда используете ссылку на него из
//разных функций (Знакомство с областью действия переменной)
// Когда создаете экземпляр класса ( var shoot:sh=new sh; ) пишется new sh()
//у вас скобки пропущены (Объекты и Классы) кстати имя класса (sh)
//принято писать с заглавной (Sh)
var shoot:sh=new sh();
function fieldClick(a:MouseEvent):void {
// Здесь sh не создается, пропущены () - должно быть var shoot:sh=new sh();
// var shoot:sh=new sh;
addChild(shoot);
shoot.x=sam.x;
shoot.y=sam.y;
shoot.addEventListener(Event.ENTER_FRAME, shootTrace);
}
function shootTrace(a:Event):void {
if (shoot.y>0) {
shoot.y-=5;
field.removeEventListener(MouseEvent.CLICK, fieldClick);
}
if (shoot.y<0) {
// Здесь неплохо бы удалить сначала листенер
shoot.removeEventListener(Event.ENTER_FRAME, shootTrace);
removeChild(shoot);
}
}
Знакомство с областью действия переменной
Объекты и классы