Comunidad de diseño web y desarrollo en internet online

problema con array

Citar            
MensajeEscrito el 20 Jul 2009 03:21 am
hola, intento hacer que en un array se guarde la posicion x y posicion y del mouse y que mi MC, bolita vaya, planeo hacer que el MC siga el rastro de mi array, pero por le momento esto, simplemente que mi MC vaya a donde de un click(se que se puede hacer de una manera mas facil, pero quiero hacer ^^^^ eso de arriba y creo que para eso si necesito saberle a los arrays mas)
este es mi codigo :
var array:Array = new Array();onMouseDown = function () {array = new Array([_xmouse], [_ymouse]);bolita._x = array[0];bolita._y = array[1];trace(array[0]);};

espero si me contesten este post, porfa gente bonita de cristalab :)

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8
Citar            
MensajeEscrito el 20 Jul 2009 05:42 am
te recomiendo, casi obligo a que uses los tags correspondientes y que indentes tu codigo, asi ni tu solo te entiendes
Dime, como se ve mas limpio y comprensible?

asi:
var array:Array = new Array();onMouseDown = function () {array = new Array([_xmouse], [_ymouse]);bolita._x = array[0];bolita._y = array[1];trace(array[0]);};

o asi:

Código ActionScript :

var array:Array = new Array();
onMouseDown = function () {
   array = new Array([_xmouse], [_ymouse]);
   bolita._x = array[0];
   bolita._y = array[1];
   trace(array[0]);
};


Me gusta mas la idea de separar X y Y como dos arreglos diferentes (aunque si se puede hacer con uno solo)
Creo que quedaria mejor asi:

Código ActionScript :

var valX:Array = new Array();
var valY:Array = new Array();

function agrega () {
   valX.push(_xmouse);
   valY.push(_ymouse);
   trace(valX[valX.length-1] + "-" + valY[valY.length-1]);
   bolita_mc._x = valX[valX.length-2];
   bolita_mc._y = valY[valY.length-2];
}

agrega();

background_mc.onPress = function () {
   agrega();
}

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 21 Jul 2009 12:41 am
ah perdon tribak puse mi post mas bonita que mis otras posts para que no me regañaran por mis posts o_0 post =/
muchas gracias =)

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8
Citar            
MensajeEscrito el 21 Jul 2009 10:33 pm
oye tribak se me olvido preguntar ayer, que haces con esta linea, bolita_mc._x = valX[valX.length-2]; el x de bolita = a valX(para que haces esto)[valX.length-2]
"la longitud de valX-2" eso dice lo que esta entre corchetes mas o menos, pero que hace? yo antes de preguntar habia puesto bolita._x = array.length "me acerque :o"

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8
Citar            
MensajeEscrito el 21 Jul 2009 11:31 pm
bolita_mc | nombre de instancia de mi movieclip
_x | el eje X de el objeto o movieclip

el eje X del movieclip es igual a

valX[] - este es el arreglo (el valor que se requiere va dentro de los corchetes)
valX.length-2 - .length devuelve la cantidad de valores en el arreglo, el menos dos es para que vaya a la posicion que clicaste antes, no a la actual ni te devuelva nulo

por ejemplo
siendo que tienes 6 valores (1,2,3,4,5,6)
trace(valX.length);
te devolveria 6
pero
trace(valX[6]);
te devolveria nulo
entonces
trace(valX[6-1]);
te devuelve 6 (clic actual)
trace(valX[6-2]);
te devuelve 6 (clic anterior)

esto se debe obviamente a que en el arreglo, se comienza a contar con 0
el primer valor del arreglo se guarda en 0, asi en 1,2,3 el tres estaria en arreglo[2]

espero te haya quedado un poco mas claro

suerte

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 21 Jul 2009 11:59 pm
errr
me equivoque
trace(valX[6-2]);
te devuelve 5 (clic anterior)

:P

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 22 Jul 2009 10:28 pm
ohhhh, por eso soy tu fan tribak, :D

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8
Citar            
MensajeEscrito el 22 Jul 2009 11:27 pm
bueno, ya me quedo claro :o, pero ahora como le puedo hacer para el "rastro" que debe seguir mi bolita,hasta ahora lo que llevo es esto(lo mismo de antier -___-): var valX:Array = new Array(); var valY:Array = new Array(); onMouseMove = function () { valX.push(_xmouse); valY.push(_ymouse); }; onMouseDown = function () { bolita._x = valX[valX.length-4]; bolita._y = valY[valY.length-4]; };//cuando pongo el mousedown ya no importa el -2 o -1
el mouseMove para que durante todo lo que camine mi mouse se guarde, y pues me hubiera gustado que funcionara, pero no, pero el mouseDown para que al dar click se mueva por el rastro, lo del rastro quiza sea posible si lograra empezar del primer x y y hacer una variabale que vaya subiendo los arrays o_o o por ejemplo valX[valX.length++]o_0

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8
Citar            
MensajeEscrito el 23 Jul 2009 12:51 am

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 23 Jul 2009 01:47 am
si entendi tribak, el problema de el davo es como aplicarlo U_U

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8
Citar            
MensajeEscrito el 23 Jul 2009 06:18 am
el que no entendio fui yo
por cierto, el link de arriba creo que es exactamente lo que necesitas

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 24 Jul 2009 02:42 am
ah, ahi se ve mi poca capacidad de razonar jej, bueno ya vi la pagina que me dijiste, no buscaba exactamente el rastro asi que dejara el mouse, pero si me va a servir para crear el age of empires 4, ya entendi varias cosas, no se porque pensaba que array era solo para traces o_0, bueno, anteriores.splice(0,1); me puse a leer cosas de splices, y quisiera que me dijeras que hace el (0,1),segun yo entendi dice, empieza del 0 y elimina 1?? segun pienso es asi y se crea un loop o_0
gracias =)

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8
Citar            
MensajeEscrito el 24 Jul 2009 04:03 am
el primer valor es de donde comenzara, y el segundo valor es la cantidad de elementos que se eliminaran

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 24 Jul 2009 11:53 pm
=0 gracias, ahora, si,cuando vean el age of empires 4, diran, o el davo29 ha triunfado
U_U

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie8

 

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