Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Afiliados
Estadísticas
Tenemos 3768 miembros registrados.
El último usuario registrado es lMac.

Nuestros miembros han publicado un total de 85827 mensajes en 12223 argumentos.

Problema mientras improvisaba (Ace) :D

Ver el tema anterior Ver el tema siguiente Ir abajo

Problema mientras improvisaba (Ace) :D

Mensaje por Bleuw el 2013-09-06, 04:48

Ok, la cosa es así, ayer me puse a probar hacer puzzles y cosas por el estilo (Estaba aburrido y algo cansado como para hacer algo productivo :D), y me encontré con algo que no puedo solucionar, no me las ingenio.
Y es lo siguiente; estaba haciendo un lugar donde el protagonista se caiga o sea, algo así como un puzzle hecho con fozas estilo castillo donde obviamente al pisarlas te caés, allí también aparecen y desaparecen plataformas por aquí y allá. Y me topé con el siguiente problema, que mi mente limitada no supo resolver. (Posiblemente sea muy sencillo.)
Cuando piso el pozo, bien, el chara se cae, cuando estoy en la plataforma, bien también, puedo cruzar... sin embargo, si estoy en la plataforma y esta desaparece mientras estoy encima (Aparecen y desaparecen con los segundos) no supe como lograr que el chara caiga, es decir, queda como si estuviera aún sobre la plataforma y mi idea es, y de acuerdo a las leyes de la física, (Física donde cosas aparecen y desaparecen solas =P) que si le quitamos el suelo a algo donde está apoyado, por ende, por gravedad o por que alguien tuvo ganas cuando creó todo, ese algo se cae. Pues no pasa en mi "puzzle", no lo pude hacer.
Quería saber si alguien tiene idea como hacerlo, el resto funciona bien, pero no sé solucionar eso D:
No es que sea fundamental para mi proyecto, ni mucho menos, pero ahora quiero saber como se hace xD
avatar
Bleuw
Aventurero
Aventurero

0/3

Créditos 1608

Gracias : 102

Volver arriba Ir abajo

Re: Problema mientras improvisaba (Ace) :D

Mensaje por orochii el 2013-09-06, 06:16

Pues yo hice algo así como lo que dices. Losas que aparecen/desaparecen. Lo que yo hice fue manejarlo todo de acuerdo a una ruta. La ruta se veía algo así:
Código:
<>Interruptor: [asdf] OFF
<>Cambiar opacidad: 255
<>Esperar XX frames
(... puedes hacer que se desvanezca suavemente)
<>Interruptor: [asdf] ON
<>Cambiar opacidad: 0
<>Esperar XX frames
(... y que aparezca igual)
Eso hará que cuando el interruptor esté en ON, se dé la caída. Ahora, la caída es dentro de cada uno de los eventos, y va algo así:
Código:
Condición de inicio: Colisionar
<>Condición: Interruptor [asdf] ON
  <>Esperar a fin de movimiento
  <>Teletransportar [mapa_asdf], (x,y)
:Fin
Ahora bien, yo lo hice con interruptores locales. La cosa es que yo me hice un apaño para poderlos usar desde lo de las rutas xD. Pero más o menos el código sería algo así en Ace:
Código:
class Game_Event
  def set_self(switch, n)
    key = [@map_id, @id, switch]
    $game_self_switches[key] = n
  end
end
Eso lo pegas sobre Main. Luego dentro de la ruta, en lugar de los activar/desactivar interruptor pones esto en el comando de llamar script (sí, las rutas también tienen =DDDDD!).
Código:
set_self("A",true)
Código:
set_self("A",false)
Espero que te sirva mi intento de ayuda, salut,
Orochii Zouveleki
avatar
orochii
Reportero

0/3

Créditos 7413

Gracias : 361

Volver arriba Ir abajo

Re: Problema mientras improvisaba (Ace) :D

Mensaje por Krush el 2013-09-06, 06:37

Hace tiempo que no toqué el maker pero alomejor puedo aportar algo:

Prueba hacer que en el evento haya una condifión if:

Código:

while ( Me_Caigo == false ) {
     animación: se quita la plataforma;
     wait 60 frames;
     if (char_On_Falling_Platform == true)  {
          Me_Caigo = true
     } else {
    animación: se pone la plataforma;
    wait 60 frames;
    } //Fin del if/else
}  //Fin del while

Teleport: Al lugar a donde se cae
Es más que nada un pseudocode con la que intento mostrarte mi idea, espero que la entiendas >.<

Se trata de que siempre se repita el while loop, si después de 60 frames está encima de la plataforma, entonces se caera. El boolean "Me_Caigo" (que es una variable que es true o false) se pone en true (porque se cae, lógico xD) y entonces cuando vuelve a llegar arriba en el while, no se volverá a ejecutar lo que está dentro del while porque la condicion de que "Me_Caigo" sea falsa, ya no es correcto. Entiendes? >.<

Pasaría lo siguiente:

Se quita la plataforma
se espera 60 frames
se controla: está el personaje encima del evento?
si la respuesta es si: entonces se caerá
si la respuesta es no: sigue la animación como si nada hubiese pasado hasta que te caigas

Como digo, hace tiempo que no toco el maker asique alomejor no es posible hacerlo solo por eventos. Creo que tienes que ponerlo en proceso parallelo ya que sino el while nunca te deja hacer otra cosa y se para el juego (eso me pasaba por lo menos con el XP).

EDITO:
Se me olvidó mencionar, que en la if, el "char_On_Falling_Platform" tienes que usar un método para determinar si el personaje está encima del evento o no, y eso define si el "char_On_Falling_Platform" es true o false.

Saludos,
Krush
avatar
Krush
Soñador
Soñador

0/3

Créditos 234

Gracias : 3

Volver arriba Ir abajo

Re: Problema mientras improvisaba (Ace) :D

Mensaje por Bleuw el 2013-09-06, 06:55

Gracias a ambos, de hecho, pude solucionarlo de ambas formas, era algo tan sencillo que hasta pena preguntarlo. =P (Al menos aprendo :D)
Creo que haberme imaginado que se podía hacer también con variables en proceso paralelo, tan simple como el clásico puzzle, "Poner una roca sobre un botón y que ésta abra la puerta" era mucho para mi. xD

EDIT: No se por que puse abra con H... ya lo borré, que asco xD
avatar
Bleuw
Aventurero
Aventurero

0/3

Créditos 1608

Gracias : 102

Volver arriba Ir abajo

Re: Problema mientras improvisaba (Ace) :D

Mensaje por Krush el 2013-09-06, 18:50

Me alegro que te haya ayudado^^ Para aprender estamos todos aqui :D

Saludos,
Krush
avatar
Krush
Soñador
Soñador

0/3

Créditos 234

Gracias : 3

Volver arriba Ir abajo

Re: Problema mientras improvisaba (Ace) :D

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


Permisos de este foro:
No puedes responder a temas en este foro.