![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2011
Сообщений: 247
|
private var directType:String; private var lvlArray:Array = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,R,1,1,D,0,0,R,1,1,D,0,0,R,1,1,D,0,0, 0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0, 0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0, S,D,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,R,1,F, 0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0, 0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0, 0,R,1,1,U,0,0,R,1,1,U,0,0,R,1,1,U,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,]; //code private function makeRoad():void{ var row:int = 0; for(var i:int=0;i<lvlArray.length;i++){ if(lvlArray[i] == 0){ //code } else if(lvlArray[i] == 1){ //code } else if(lvlArray[i] is String){ var block3:Sprite = new Sprite(); block3.graphics.beginFill(0x111111); block3.graphics.drawRect(0,0,25,25); block3.graphics.endFill(); block3.x = (i - row * 22) * 25; block3.y = row * 25; directType = lvlArray[i]; //addEventListener(Event.ADDED, begindirect); addEventListener(Event.ENTER_FRAME, eFrameD); addChild(block3); trace(directType+' -scan'); } } } private function eFrameD(e:Event):void { trace(directType+' -finish'); } |
|
|||||
|
Регистрация: Apr 2009
Адрес: Armenia , Yerevan
Сообщений: 145
|
Во первых знаешь сколько ентер фреймов ты регистрируеш в приложении ?? от этого он просто вздохнет! должен быть регистрирован один ентер фрейм .
__________________
Urartu is a neoHittite and ProtoArmenian kingdom !! |
|
|||||
|
[+1 24.05.11]
[+1 09.08.11] Регистрация: Mar 2011
Сообщений: 101
|
А зачем у вас здесь ENTER_FRAME? Вы же циклом перебираете массив - в нем и трайс делайте (ну или просто вызывайте какую -то функцию для обработки объекта.
либо укажите кому вы этот ENTER_FRAME назначаете. |
|
|||||
|
Регистрация: Jan 2011
Сообщений: 247
|
Цитата:
Добавлено через 2 минуты Нужен именно Event , потому как там идет дальнейшая обработка каждой строки.. |
|
|||||
|
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
Почему?
Цитата:
|
|
|||||
|
Регистрация: Jan 2011
Сообщений: 247
|
Цитата:
private function eFrameD(e:Event):void { trace(directType); if(directType != 'START' && directType != 'FINISH'){ for(var i:int = 0;i<enemyHolder.numChildren;i++){ var enTarget = enemyHolder.getChildAt(i); if(this.x >= enTarget.x - enTarget.width*.5 && this.x <= enTarget.x + enTarget.width*.5 && this.y >= enTarget.y - enTarget.height * .5 && this.y <= enTarget.y + enTarget.height * .5) { if(directType == 'UP'){ enTarget.xSpeed = 0; enTarget.ySpeed = -maxSpeed; } else if(directType == 'RIGHT'){ enTarget.xSpeed = maxSpeed; enTarget.ySpeed = 0; } else if(directType == 'DOWN'){ enTarget.xSpeed = 0; enTarget.ySpeed = maxSpeed; } else if(directType == 'LEFT'){ enTarget.xSpeed = maxSpeed; enTarget.ySpeed = 0; } } } } } Спасибо , вы само лучше поняли суть вопроса ) я попробовал : все равно последнее передает, что можете посоветовать? |
|
|||||
|
Вы можете присвоить directType имени объекта. Или создать класс спрайта с нужным свойством.
private var directType:String;
private var lvlArray:Array = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,R,1,1,D,0,0,R,1,1,D,0,0,R,1,1,D,0,0,
0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,
0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,
S,D,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,R,1,F,
0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0,
0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0,
0,R,1,1,U,0,0,R,1,1,U,0,0,R,1,1,U,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,];
//code
private function makeRoad():void{
var row:int = 0;
for(var i:int=0;i<lvlArray.length;i++){
if(lvlArray[i] == 0){
//code
} else if(lvlArray[i] == 1){
//code
} else if(lvlArray[i] is String){
var block3:Sprite = new Sprite();
block3.graphics.beginFill(0x111111);
block3.graphics.drawRect(0,0,25,25);
block3.graphics.endFill();
block3.x = (i - row * 22) * 25;
block3.y = row * 25;
directType = lvlArray[i];
block3.name=directType;
//addEventListener(Event.ADDED, begindirect);
addEventListener(Event.ENTER_FRAME, eFrameD);
addChild(block3);
trace(directType+' -scan');
}
}
}
private function eFrameD(e:Event):void {
trace(e.target.name+' -finish');
}
Последний раз редактировалось iNils; 30.07.2011 в 19:21. |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
|
private var _dic:Dictionary = new Dictionary (); private var directType:String; private var lvlArray:Array = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,R,1,1,D,0,0,R,1,1,D,0,0,R,1,1,D,0,0, 0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0, 0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0, S,D,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,R,1,F, 0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0, 0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0, 0,R,1,1,U,0,0,R,1,1,U,0,0,R,1,1,U,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,]; //code private function makeRoad ():void { var row:int = 0; for(var i:int=0;i<lvlArray.length;i++){ if(lvlArray[i] == 0){ //code } else if(lvlArray[i] == 1){ //code } else if(lvlArray[i] is String){ var block3:Sprite = new Sprite(); block3.graphics.beginFill(0x111111); block3.graphics.drawRect(0,0,25,25); block3.graphics.endFill(); block3.x = (i - row * 22) * 25; block3.y = row * 25; _dic[block3] = lvlArray[i]; //addEventListener(Event.ADDED, begindirect); block3.addEventListener(Event.ENTER_FRAME, eFrameD); addChild(block3); trace(_dic[block3]+' -scan'); } } } private function eFrameD(e:Event):void { trace(_dic[e.target]+' -finish'); } |
|
|||||
|
Регистрация: Jan 2011
Сообщений: 247
|
samana, с вашего примера в eFrameD трейсит :
это что-то не то ) iNils, с вашего примера в цикле нормально трейсит а в eFrameD тресит : странно ![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|