Двс.
Рисую 4 объекта в графе,в ас3 делаю 4 переменные,выставляю в координаты эти 4 картинки,завожу события для каждой кнопки с отдельной функцией,при попытке компилировать,выскакивает внутренняя ошибка
привожу код:
Код AS3:
package
{
import flash.display.*;
import flash.events.*;
public class Tower extends Sprite
{
public function Tower
{
//создаю 4 переменных для соответсвующих стихий
var fire:Fire = new Fire();
var water:Water = new Water();
var land:Land = new Land();
var air:Air = new Air();
fire.x=10;
fire.y=10;
water.x=110;
water.y=10;
land.x=10;
land.y=110;
air.x=110;
air.y=110;
//создаю 4 слушателя для 4 кнопок
fire.addEventListener(MouseEvent.CLICK,clickFire);
water.addEventListener(MouseEvent.CLICK,clickWater);
land.addEventListener(MouseEvent.CLICK,clickLand);
air.addEventListener(MouseEvent.CLICK,clickAir);
}
//функция срабатывающая при нажатии на огонь (удаляет все 4 картинки)
private function clickFire(event.MouseEvent):void
{
var fire:Fire = targetCurrent as Fire();
if(fire)
{
removeChild(fire);
removeChild(water);
removeChild(land);
removeChild(air);
}
}
//функция срабатывающая при нажатии на вода (удаляет все 4 картинки)
private function clickWater(event.MouseEvent):void
{
var water:Water = targetCurrent as Water();
if(water)
{
removeChild(fire);
removeChild(water);
removeChild(land);
removeChild(air);
}
}
//функция срабатывающая при нажатии на земля (удаляет все 4 картинки)
private function clickLand(event.MouseEvent):void
{
var land:Land = targetCurrent as Land();
if(land)
{
removeChild(fire);
removeChild(water);
removeChild(land);
removeChild(air);
}
}
//функция срабатывающая при нажатии на воздух (удаляет все 4 картинки)
private function clickAir(event.MouseEvent):void
{
var air:Air = targetCurrent as Air();
if(air)
{
removeChild(fire);
removeChild(water);
removeChild(land);
removeChild(air);
}
}
}
}
1)Кто подскажет в чем проблема,мне кажется что в currentTarget , я бы его не стал писать вообще?
2)И второй вопрос,можно ли сделать для 4-ех объектов один слушатель?