Показать сообщение отдельно
Старый 15.11.2012, 23:51
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 10  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Ну а откуда по-вашему func_fire может знать о каких-то water, air и land?
Это же ЛОКАЛЬНЫЕ переменные конструктора. Никто, кроме функции(-конструктора) Towers, ничего о них не знает.

Добавлено через 7 минут
Вы можете вывести эти переменные в члены Класса, тогда любой метод класса будет иметь к ним доступ.
Код AS3:
package
{
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	public class Towers extends Sprite
	{
		private var fire:Fire;
		private var water:Water;
		private var land:Land;
		private var air:Air;
 
		public function Towers():void
		{
			fire = new Fire();
			water = new Water();
			land = new Land();
			air = new Air();
			fire.x=20;
			fire.y=20;
			water.x=20;
			water.y=300;
			land.x=300;
			land.y=20;
			air.x=300;
			air.y=300;
			addChild(fire);
			addChild(water);
			addChild(land);
			addChild(air);
			fire.addEventListener(MouseEvent.CLICK,func_fire);
			/*water.addEventListener(MouseEvent.CLICK,func);
			land.addEventListener(MouseEvent.CLICK,func);
			air.addEventListener(MouseEvent.CLICK,func);*/
		}
		public function func_fire(e:MouseEvent):void
		{
			removeChild(water); //на самом деле надо проверять, есть ли такой чайлд
			removeChild(air);
			removeChild(land);
 
		}
	}
}
Добавлено через 8 минут
И да, надо отписываться наверное от события клика по fire после того, как его один раз кликнули, ибо удалять то уже некого.
__________________
Reality.getBounds(this);