Показать сообщение отдельно
Старый 30.08.2011, 17:02
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 9  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Цитата:
Сообщение от windrunner31 Посмотреть сообщение
Ну как подойтии...Делаете массивы башенок,потом при нажатии на мышку проводите цикл
Код AS3:
var a:Array = new Array();
for(var i:int = 0;i < a.length;i++) {
//тут действия обращаясь к башне как к a[i]
}
Вот по сути и все
По вашему примеру сделал так :
Код AS3:
		private function makeTurret(xValue:int,yValue:int):void{
			var turret = new Sprite();
			turret.x = xValue + 12.5;
			turret.y = yValue + 12.5;
			turret.graphics.beginFill(0x999999);
			turret.graphics.drawCircle(0,0,12.5);
			turret.graphics.endFill();
			turret.graphics.beginFill(0xFFFFFF);
			turret.graphics.drawRect(-2.5, 0, 5, 20);
			turret.graphics.endFill();
			sprTurret.push(turret);
			//addChild(turret);
			//for (var n:int = sprites.length - 1; n >= 0; n--) {
			for(var i:int = 0;i < sprTurret.length;i++) {
			var spr2Turret:Sprite = sprTurret[i];
			addChild(spr2Turret);
			spr2Turret.addEventListener(Event.ENTER_FRAME, eFrameEvents);
			}
 
		}
результат тот же, попробовал применить по-другому массив:
Код AS3:
	private function makeTurret(xValue:int,yValue:int):void{
			var turret = new Sprite();
			turret.x = xValue + 12.5;
			turret.y = yValue + 12.5;
			turret.graphics.beginFill(0x999999);
			turret.graphics.drawCircle(0,0,12.5);
			turret.graphics.endFill();
			turret.graphics.beginFill(0xFFFFFF);
			turret.graphics.drawRect(-2.5, 0, 5, 20);
			turret.graphics.endFill();
			sprTurret.push(turret);
			//addChild(turret);
			for (var n:int = sprites.length - 1; n >= 0; n--) {
			//for(var i:int = 0;i < sprTurret.length;i++) {
			var spr2Turret:Sprite = sprTurret[n];
			addChild(spr2Turret);// <------ ошибка  Error #2007: Параметр child не должен быть равен нулю.
			spr2Turret.addEventListener(Event.ENTER_FRAME, eFrameEvents);
			}
 
		}
Так тоже , тоже самое:
Код AS3:
private function makeTurret(xValue:int,yValue:int):void{
			var turret = new Sprite();
			turret.x = xValue + 12.5;
			turret.y = yValue + 12.5;
			turret.graphics.beginFill(0x999999);
			turret.graphics.drawCircle(0,0,12.5);
			turret.graphics.endFill();
			turret.graphics.beginFill(0xFFFFFF);
			turret.graphics.drawRect(-2.5, 0, 5, 20);
			turret.graphics.endFill();
			sprTurret.push(turret);
			addChild(turret);
			for (var n:int = sprites.length - 1; n >= 0; n--) {
			//for(var i:int = 0;i < sprTurret.length;i++) {
			var spr2Turret:Sprite = sprTurret[n];
			//addChild(spr2Turret);
			if(spr2Turret != null){
				spr2Turret.addEventListener(Event.ENTER_FRAME, eFrameEvents);
			}
			}
 
		}


Последний раз редактировалось GrafMine; 30.08.2011 в 17:26.