Comunidad de diseño web y desarrollo en internet online

Codigo funciona como "constante" pero no como "variable

Citar            
MensajeEscrito el 23 Jul 2008 04:27 pm
Amigos tengo una pregunta en as3...

Cuando ejecuto el siguiente codigo " como constante" si lo hace

t=this.triangulo1
if ( t.hitTestObject( e.target ))
{
mensaje.text="Choca la nave al objeto" + t.name;
}
t=this.triangulo2;
if ( t.hitTestObject( e.target ))
{
mensaje.text="Choca la nave al objeto" + t.name;
}
t=this.triangulo3;
if ( t.hitTestObject( e.target ))
{
mensaje.text="Choca la nave al objeto" + t.name;
}
t=this.triangulo4;
if ( t.hitTestObject( e.target ))
{
mensaje.text="Choca la nave al objeto" + t.name;
}

Pero Si lo hago con un for no lo hace ....Uds. saben la razon ...gracias

var i:Number=0;

var t:triangulo=new triangulo();

for( i=1; i<=4; i++)
{

t=this["triangulo"+i];
if ( t.hitTestObject( e.target ))
{
mensaje.text="Choca la nave al objeto" + t.name;
}
}

Inclusive me da el error de que la variable i , no esta definida

atn

Pedro Diaz

Por pdjazr

6 de clabLevel



Genero:Masculino  

Lima -Limon

msie
Citar            
MensajeEscrito el 23 Jul 2008 04:47 pm
prueba:
t=this["triangulo"+i] as Triangulo;

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

clabbrowser
Citar            
MensajeEscrito el 23 Jul 2008 05:18 pm
Gracia Zguillez...lo acabo de solucionar de esta manera:

solo definan 2 mc en la biblioteca uno triangulo y el otro nave ,,,y el codigo as3 hara el resto.

muchas gracias


import flash.events.*;

var dir:Number;
var vel:Number = 5;
var coord:String;


// Creacion de instancias de 4 triangulos
var miArray:Array = new Array();
for(var i:int = 1; i <= 4; i++)
{
miArray[i]=new triangulo();
miArray[i].name = "triangulo"+i;
miArray[i].x=Math.random()*300
miArray[i].y=Math.random()*300
addChild(miArray[i]);
}


//Creacion de instacia de la nave
var n:nave=new nave();
addChild (n);
n.name="nave";
n.x=400;
n.y=300;


//Evento por cada frame , de la nave
n.addEventListener (Event.ENTER_FRAME, volar);
function volar (e:Event):void
{
e.target[coord] += vel*dir;

mensaje.text=""
;

var i:Number=0;

var t:triangulo=new triangulo();

for( i=1; i<=4; i++)
{

t=getChildByName("triangulo"+i)
if ( t.hitTestObject( e.target ))
{
mensaje.text="Choca la nave al objeto" + t.name;
}
}
}

// Evento de tecla presionada
stage.addEventListener (KeyboardEvent.KEY_DOWN, mover);
function mover (eve:KeyboardEvent):void
{
if (eve.keyCode == 37)
{
coord = "x";
dir = -1;
}
if (eve.keyCode == 38)
{
coord = "y";
dir = -1;
}
if (eve.keyCode == 39)
{
coord = "x";
dir = 1;
}
if (eve.keyCode == 40)
{
coord = "y";
dir = 1;
}
}

Por pdjazr

6 de clabLevel



Genero:Masculino  

Lima -Limon

msie
Citar            
MensajeEscrito el 04 Nov 2014 04:02 am
xxxxxxxxxxxxxxxxxx

Por pdjazr

6 de clabLevel



Genero:Masculino  

Lima -Limon

chrome
Citar            
MensajeEscrito el 04 Nov 2014 07:15 am

pdjazr escribió:

xxxxxxxxxxxxxxxxxx

Compi, has levantado un post de hace 6 años...

Por empardopo

71 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.