Anuncios Google

¿como programar vida en un homebrew?

hola,estaba haciendo un juego pero no se como programar vida,y como subir o bajar vida segun la accion,¿como lo hago?

salu2

Editado: Movido a Programación, por favor postea en el lugar correcto, revise las normas de la comunidad. Gracias. -recoco-



Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de copete23

depende de como sea tu

depende de como sea tu juego...

crea una variable vida, y asignale un valor

vida=20;

luego ya tendrias que crear las interacciones, si colisionas con un enemigo pues vida-=5 por ejemplo, si colisionas con algo que te tenga que dar vida, pues vida+=1 o lo que sea.

un saludo

Imagen de The Dark Master

no me quedo muy claro

tengo tres preguntas:

1-¿cuando codifico en source file del juego,que pongo vida=20 y ya esta programada?

2-¿cuando quiero que quiten vida,que pongo vida-=5 y yasta ya le quitan vida?

3-¿como pongo para que cuando tenga 0 de vida salga la pantalla de game over?


Imagen de copete23

perdona, intentare ponerlo

perdona, intentare ponerlo mas amplio, pero no se como esta creado tu codigo asi que tentras que adaptarlo a tus necesidades,

creas una variable  u32 vida=20, 20 o lo que sea, depende de la vida que quieres que tenga de maximo o al inicio tu personaje.

luego supongo que querras que al colisionar con algo te reste vida, bien esto ya depende de como sea tu juego o de como lo queres hacer, asi que te pondre un ejemplo simple para darte una idea

tienes tu personaje  y luego un objeto que te quita vida, esn tonces seria mas o menos asi:

Si la distancia entre personaje y objeto<10 {vida-=5}

lo mismo pasaria para darte vida, pero al contrario,

si utilizas PAlib, podrias utilizar la funcion PA_distance().

 Bueno creo que ya está, espero que este un poco mas claro, lo que te he puesto es la teoria, luego tendras que adaptarlo a tu codigo.

un saludo

Imagen de The Dark Master

mi juego sera al estilo

mi juego sera al estilo smash bros,cuando pulse A y el enemigo este colisionando con el que le quite vida:

 entonces que pongo cuando pulse A y colisione:

life-=5

otra duda que tengo es ¿como poner el contador de vida en la pantalla?

se como poner la vida pero no como mostrarla en la pantalla de forma que se sepa el que este jugando.

otra duda que tengo es como poner que pulse A y colisione con el enemigo,para quitarle la vida¿como pongo que se active la funcion de la vida,pero cuando colisione y pulse A.

 


Imagen de copete23

Para poner la vida o lo que

Para poner la vida o lo que sea, tienes que poner

PA_OutputText(1, 2, 9, "Vida : %d   ", vida);

para que te quite vida, al ser un juego de lucha tendras que tener en cuenta tambien la posicion de la animacion del enemigo que te golpea  y tambien la tuya cuando golpeas, por ejemplo

para que el enemigo te golpee:

si la distancia entr el enemigo y tu < 10 y la animacion del sprite es = 2 (la posicion es el fotograma :D) entonces vida -=1.

no se si esto te orientará, no obstante tendrias que revisar un poco los ejemplos que trae PAlib, en PAlib examples, y podras ver ejemplos para poner textos, con mas colores,fuentes, tabien veras el tema de la animacion de esprites, algo de fisica, que la necesitaras para tu juego, tambien veras ejemplos con botones, etc... tambien podrias ver algo de c/c++ para al menos ver lo basico, luego si no entiendes algo pregunta, es que si no te resultara muy chungo, te lo digo por experiencia, tienes que saber lo minimo en cuanto a funciones de Palib y luego como definir variables en c/c++.

un saludete

Imagen de The Dark Master

ok,vi todos los ejemplos de

ok,vi todos los ejemplos de palib antes de registrarme aqui, y se mucho pero nunca hubo ningun ejemplo sobre la vida,que yo sepa,si me pudieran pasar uno ustedes.


Imagen de kNightFox

Deberias de aparcar las

Deberias de aparcar las PALIB y el juego de momento y centrarte en ejemplos BASICOS de programacion (ya no digo C).
Por lo que he leido y sin animo de ofender, has mirado todos los ejemplos de las PALIB, has copiado las partes de codigo que te han parecido utiles y cuando has necesitado algo que no estava en los ejemplos, algo tan simple como quitar vida (restar el valor de una variable) te has encontrado perdido.
Y no es por desanimar ni criticarte. Simplemente es hacerte ver que la programacion seria necesita una base solida para entender lo que estas haciendo. Sin esa base, es imposible hacer nada correctamente. Empieza con ejemplos sobre uso de variables, condicionales y bucles. Dominado eso, planteate problemas simples, en un array de texto de x caracteres, busca cuantas A hay, o cuantas vocales consecutivas, etc y desarrolla un programa que lo haga.
Pero en serio, no intentes hacer un juego sin saber programar, porque te vas ha agobiar y abandonando la programacion.
 
Saludos

 

Fox


Nuestra web oficial:
http://www.nightfoxandco.com/
 
Siguenos en facebook:
http://www.facebook.com/pages/NightFox-Co/284338634917917
 
Por favor, no useis los MP para preguntas, usar el FORO:
http://www.nightfoxandco.com/forum/
Asi nos ahorramos de contestar lo mismo 20 veces.

 

Imagen de The Dark Master

yo no hago eso

yo no recogo partes de ejemplos ni nada de eso yo se,y ademas me lo as aclarado,era una variable y ahora se como programarla en palib y en dsgamemaker,por fin.


Imagen de kNightFox

Ah, vale, perfecto. Tu

Ah, vale, perfecto. Tu sabes. Solo era el consejo de alguien que lleva 20 años programando desde los Z80 en assembler. Pero si tu sabes, tu veras.


Nuestra web oficial:
http://www.nightfoxandco.com/
 
Siguenos en facebook:
http://www.facebook.com/pages/NightFox-Co/284338634917917
 
Por favor, no useis los MP para preguntas, usar el FORO:
http://www.nightfoxandco.com/forum/
Asi nos ahorramos de contestar lo mismo 20 veces.

 

Imagen de Arbër

Preguntando

Preguntando se aprende, si vuelves 20 años atras tu seguramente también te hacías las mismas preguntas que Master Sonic.

Tiempo al tiempo, nadie nace sabiendo.

Nadie te obliga a contestar...


-----[[7 años en Scenebeta, con la misma ilusión que la del primer día]]----

Imagen de The Dark Master

¿como puedo poner que

¿como puedo poner que cuando tenga 0 de vida aparezca la pantalla de game over.?

Imagen de copete23

No te enfades master sonic,

No te enfades master sonic, tanto knigtfox como yo, solo intentamos ayudarte, lo que no podemos hacer es hacer tu juego por ti, lo que pasa es que lo que has preguntado son cosas basicas como crear una variable vida, que demuestra que no conoces muy bien c/c++ puede que conozcas la funciones de palib pero si no conoces c, no podras hacer nada, es como construir la cas por el tejado, yo te he intentado explicar como hacerlo, tal vez  knigtfox te lo hubiese explicado mejor

(knigtfox=20 añazos progamando, yo=2añitos programando ) pero tienes que tener en cuenta que en programacion no existe una unica forma de crear algo.

Para que salga game over y teniendo en cuenta que conoces palib, tendria que crear una condicion,

si vida es <=0  {borra sprites(); borra fondos(); carga fondo(gameover)}

luego en la pantalla game over puedes poner un texto o algo que indique "pulsa b para reintentar",

 si has pulsado b {borra fondo(gameover); cargatodo lo demas()}

 

un saludo 

 

Imagen de The Dark Master

ya...

no me enfado,pero mi juego ya estaba terminado,puse sin preguntar a nadie,los movimientos de los sprites,scrolling,y todo lo demas pero lo de la vida y la pantalla game over me pararaon los pies,lo unico que quiero decir es que se,saber se,pero no soy tan experto aun como ustedes.


Imagen de Arbër

Tiempo al tiempo

Yo llevo con LUA ya casi dos años, y aun tengo dificultades para hacer alguna que otra cosilla. Como bien te dicen, hay muchisimas maneras de programar algo. Lo unico que tienes que tener es imaginacion.

Saludos ;)


-----[[7 años en Scenebeta, con la misma ilusión que la del primer día]]----

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.