Comunidad de diseño web y desarrollo en internet online

Problema con código

Citar            
MensajeEscrito el 22 Ene 2009 11:23 pm
Hola, no soy programador, pero me puse a programar un rompecabezas de 12 fichas, aunke las únicas ke toca mover son 5, lo ke hice fue ponerle a la primera ficha (f1) acciones para arrastrar y soltar, y cuando suelte si está entre ciertos puntos de X y Y se acomoda automáticamente a x=360 y y=240, ok? (todas las fichas se acomodan en el mismo lugar) y si no se suelta dentro de esos puntos en X y Y se devuelve a su posición original, el código es así:

Código :

f1.onPress = function () {
   startDrag ("f1");
}
f1.onRelease = function () {
   stopDrag () ;
   if ((f1._x <= 370) && (f1._x >= 350) && (f1._y <= 250) && (f1._y >= 230)) {      
      setProperty("f1", _x, "360");
      setProperty("f1", _y, "240");
      f1.enabled = false;
   } else {
      setProperty("f1", _x, "800");
      setProperty("f1", _y, "200");
   }
}


Y el código lo copié 4 veces mas (por lo ke son 5 fichas) cambiando f1 por f2, f3, f4, f5.
Hasta ahí todo normal, y funciona perfecto. Ahora, el problema es que quiero que cuando ya esten todas las fichas acomodadas en x=360 y y=240 vaya a otro frame. He intentado varios códigos pero nada que doy :( y el código final hasta ahora va a así:

Código :


stop();

f1.onPress = function () {
   startDrag ("f1");
}
f1.onRelease = function () {
   stopDrag () ;
   if ((f1._x <= 370) && (f1._x >= 350) && (f1._y <= 250) && (f1._y >= 230)) {      
      setProperty("f1", _x, "360");
      setProperty("f1", _y, "240");
      f1.enabled = false;
   } else {
      setProperty("f1", _x, "800");
      setProperty("f1", _y, "200");
   }
}
f2.onPress = function () {
   startDrag ("f2");
}
f2.onRelease = function () {
   stopDrag () ;
   if ((f2._x <= 370) && (f2._x >= 350) && (f2._y <= 250) && (f2._y >= 230)) {      
      setProperty("f2", _x, "360");
      setProperty("f2", _y, "240");
      f2.enabled = false;
   } else {
      setProperty("f2", _x, "90");
      setProperty("f2", _y, "490");
   }
}
f3.onPress = function () {
   startDrag ("f3");
}
f3.onRelease = function () {
   stopDrag () ;
   if ((f3._x <= 370) && (f3._x >= 350) && (f3._y <= 250) && (f3._y >= 230)) {      
      setProperty("f3", _x, "360");
      setProperty("f3", _y, "240");
      f3.enabled = false;
   } else {
      setProperty("f3", _x, "670");
      setProperty("f3", _y, "400");
   }
}
f4.onPress = function () {
   startDrag ("f4");
}
f4.onRelease = function () {
   stopDrag () ;
   if ((f4._x <= 370) && (f4._x >= 350) && (f4._y <= 250) && (f4._y >= 230)) {      
      setProperty("f4", _x, "360");
      setProperty("f4", _y, "240");
      f4.enabled = false;
   } else {
      setProperty("f4", _x, "780");
      setProperty("f4", _y, "180");
   }
}
f5.onPress = function () {
   startDrag ("f5");
}
f5.onRelease = function () {
   stopDrag () ;
      if ((f5._x <= 370) && (f5._x >= 350) && (f5._y <= 250) && (f5._y >= 230)) {      
      setProperty("f5", _x, "360");
      setProperty("f5", _y, "240");
      f5.enabled = false;
   } else {
      setProperty("f5", _x, "-75");
      setProperty("f5", _y, "320");
   }
}


Muchas gracias, y si necesitan mas info del archivo me avisan... Muchas gracias!!! :) :D

Por camiloesc

Claber

145 de clabLevel

1 tutorial

Genero:Masculino  

Bogotá, Colombia

firefox
Citar            
MensajeEscrito el 22 Ene 2009 11:29 pm
Aquí dejo la ruta del swf si lo quieren ver:

ROMPECABEZAS

Gracias de nuevo!!! :D

Por camiloesc

Claber

145 de clabLevel

1 tutorial

Genero:Masculino  

Bogotá, Colombia

firefox
Citar            
MensajeEscrito el 22 Ene 2009 11:58 pm
hasta arriba crea una variable con el numero de piezas, podria ser

Código ActionScript :

noPiezas = 5;

que ocurrente verdad :P

abajo de donde bloqueas el boton

Código ActionScript :

f1.enabled=false;
noPiezas --;
comprobar();


y hasta abajo pones tu funcion

Código ActionScript :

function comprobar(){
if(noPiezas==0){
trace("ya gane!!!");
}
}

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 23 Ene 2009 02:45 pm
ufff severo, muchas gracias, al pelo :D :D :D gracias :D

Por camiloesc

Claber

145 de clabLevel

1 tutorial

Genero:Masculino  

Bogotá, Colombia

firefox
Citar            
MensajeEscrito el 23 Ene 2009 02:51 pm
hey otra cosita que me acabo de dar cuenta, al final le puse el codigo ke me dijiste ke est este:

Código :

function comprobar(){ 
if(noPiezas==0){ 
trace("ganéee!!!") ;
}  


yo puse este:

Código :

function comprobar(){ 
if(noPiezas==0);{ 
trace("ganéee!!!") ; 
}


la diferencia es que despues del if(noPiezas==0) le puse un ; para ver que pasaba y entonces cada vez que acomodo una pieza, me sale el trace("ganéee!!!"), igual ya lo acabé y quedó muy bien!! :D pero en que influye ese ; ??


Gracias!!! ;)

Por camiloesc

Claber

145 de clabLevel

1 tutorial

Genero:Masculino  

Bogotá, Colombia

firefox
Citar            
MensajeEscrito el 23 Ene 2009 03:35 pm
la estructura del if es

if(comprobacion){
acciones
}else{
acciones
}

el ; se usa para terminar una linea y con el if se ponen todas las acciones segun tu resultado verdadero/falso entre llaves { }

con el ; es como si tuviera un error y se salta la llave que tiene adelante, entonces sigue leyendo la siguente linea

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox

 

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