elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ¿Pasos a seguir en "imitación" de Donkey Kong?
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Pasos a seguir en "imitación" de Donkey Kong?  (Leído 59 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.688


Hackentifiko!


Ver Perfil
¿Pasos a seguir en "imitación" de Donkey Kong?
« en: Hoy a las 06:00 »

Me refiero a qué debería agregar o mejorar.

Foto:


Por ejemplo:
1- Debería haber un martillo en el centro de la pantalla y Mario debería poder agarrarlo.
2- Los barriles al tocar el suelo deberían empezar a rodar por él en vez de seguir de largo.
3- El objetivo del juego debería ser subir, así que debería haber...

El orden debe ser teniendo en cuenta qué es más fácil de hacer (eso se prefiere que esté 1ero) y qué es más importante (idem). Puede que sea imposible cumplir ambos criterios a la vez, pero más o menos.

Me interesa lo de que Mario pueda subir ¿pero cual sería la forma más fácil? No que una plataforma lo suba, claro, Mario debe poder moverse hacia los lados para esquivar los barriles.
Ya puse que Mario pueda saltar, y lo que se me ocurre es poner pisos con subida como en el juego original pero mucho más juntos, de modo que si Mario salta en el extremo de uno, puede que llegue al otro:
/
\
No tan así extremo pero si está en el de abajo a la izquierda, está tan cerca del de arriba que al saltar quedaría arriba.
Entonces por ahora no tendría que poner escaleras y que las pueda subir, que parece más difícil.
Otra posibilidad es que haya muchas plataformas, no, mejor pisos sin inclinación, muy juntos, y al saltar debe quedar en un piso de arriba y la pantalla debe bajar, como si la cámara siguiera a Mario y siempre mostrara lo que hay arriba, sino... Bueno, pueden ser 2 versiones distintas del juego, uno en que subes infinitamente y la cámara siempre te muestra abajo (algo como Ice Climber pero infinito, la dificultad aumenta al subir), y otro en que pasas de pantalla cuando llegas arriba del todo. Como es una imitación, haré eso último.

La pregunta así sería ¿cual sería la forma "correcta" de hacer que si el personaje saltó y cayó en una plataforma quede encima de ella?
En mi juego por ahora Mario no podría bajar, o sea, no sería como en el original en que muere si cae o si salta hacia un sitio muy bajo, ese no es el problema, lo que digo es que se podría poner que si salta queda más arriba al caer, porque no importa hacia dónde lo haga, hay piso, pero eso sería trampa, debe estar programado para chequear que haya piso y si hay que quede encima. A eso me refiero con "correcta".
La función que se ejecuta al saltar es:
Código
  1. function Jump () {
  2. Player._x = Player._x+DKMarioSpeedX;
  3. Player._y = Player._y+DKMarioSpeedY;
  4. DKMarioSpeedY = DKMarioSpeedY+0.015;
  5. if (Player._y >= 568) {
  6. Player._y = 568;
  7. Player.gotoAndStop(1);
  8. Quiet();
  9. }
  10. }
En vez de ese if debo poner que si DKMarioSpeedY es negativa... ¿entonces empezar a chequear piso por piso a ver si toca alguno? Sólo los que estén en la pantalla, pero en este caso son todos. No es que sean muchos, pero me parecía poco eficiente.
Pero no es "si lo toca", es "si está por encima, pero no tan por encima", m... ¿Entonces algo así:
Si Mario está cayendo
   PisoaChequar = 9
   do
      Si Mario está tocando el piso PisoaChequar
         Si Mario está por encima de (posición del piso PisoaChequar)
...más o menos entiendo la idea, pero me entrevera eso de que si está encima pero no tan encima. La posición de Mario está en los pies, eso ya lo tengo, así que si está tocando y está encima ¿alcanza con eso, debe quedar encima? La posición de la plataforma está en su centro.
Si la plataforma fuese muy alta:
M6
____M5_
M4
 P M3
M2
----M1--

M1 (Mario en la posición 1) la está tocando pero no está encima, así que seguirá subiendo por el salto.
M2 lo mismo.
M3 está justo en el centro vertical de la plataforma, pero no está bajando, así que seguirá. ¿Y si estuviera bajando? Debe seguir bajando, supongo.
M4 está por encima del centro, pero no encima de la parte de arriba. Si está subiendo seguirá ¿y si está bajando? Ponerlo encima de la plataforma suena mal, debe ocurrir sólo si estuvo encima.
M5 está justo en el suelo de la plataforma. ¿Acaso ese es el punto vertical que importa, no el centro? Obviamente si M está cayendo debe quedar encima, pero este caso es poco probable (posiciones exactamente iguales mientras M cae).
M6 no está tocando así que sigue su curso.

Haré las plataformas y "la trampa", el modo fácil, pero quisiera hacerlo bien y como ven no tengo del todo claro cómo sería.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines