Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: danielsanleo en Septiembre 01, 2011, 09:16:35 PM

Título: enemigo y jugador con la misma vida
Publicado por: danielsanleo en Septiembre 01, 2011, 09:16:35 PM
hola, escribo porque he puesto vida a mi jugador y a los enemigos pero parece ser que cuando les dispara el jugador , le quita vida a el jugador y eso que he puesto que les quite vida a los enemigos. que debo hacer? gracias
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 02, 2011, 12:47:54 AM
Eso es porque estas usando la misma variable para los dos objetos.

Intenta crear una variable: Health_Jugador para la vida del jugador; y una variable Health_Enemigo para la vida del enemigo.

Entonces en los eventos en vez de poner que se quite vida a la variable "health" pones la variable correspondiente, si quieres que la vida de tus enemigos se vea afectada utiliza "Health_Enemigo -= 10" (Esto hara que la vida del enemigo disminuya en 10) y si quieres que sea la del jugador, lo haces de la misma manera pero cambias el nombre de la variable por la del Jugador.

Me explique bien? Si necesitas una mejor explicacion o que te explique algo en particular, dime :)
Título: Re: enemigo y jugador con la misma vida
Publicado por: dark_servant en Septiembre 02, 2011, 02:04:56 AM
te hice un ejemplo revisalo haber si te sirve.
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 02, 2011, 02:19:01 AM
Ahi como esta en el ejemplo, esta bien :)
Título: Re: enemigo y jugador con la misma vida
Publicado por: p34 en Septiembre 02, 2011, 05:16:48 AM
Health no es una variable independiente de cada instancia, sino que es global, por lo tanto si usas health para ti y health para los enemigos, termina siendo la misma variable y pasa lo que te sucedio.
Lo mejor es hacer lo que ya te han dicho, crear una variable llamada health_enemigo y ahora si puedes usar health normal para ti o usar health_jug1, ya depende de ti  :D
Título: Re: enemigo y jugador con la misma vida
Publicado por: danielsanleo en Septiembre 02, 2011, 08:24:17 PM
lo siento pero nose como se pondria la variable con la vida a el enemigo, podrias decirme como se hace? gracias
Título: Re: enemigo y jugador con la misma vida
Publicado por: dark_servant en Septiembre 02, 2011, 08:52:06 PM
vida = 100 //en el jugador

vida_enemigo = 100 //en el objeto del enemigo
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 02, 2011, 11:16:29 PM
Revisa el ejemplo que dark_servant te dejo mas arriba.

Sino tienes dos formas, como siempre: D&D (Drag & Drop,lLibrerias, cuadraditos que arrastras, como le digas xD) y el code:






En el evento create:



Con D&D:

Pesta?a: Control --> Variables --> Set Variable

|
|
v

variable: vida_jugador

Este es el nombre de la variable.
Aqui pones el nombre que tu quieras, pero algo que refiera a que es la vida del jugador, asi se te hace mas facil.

value: 100

Este es el valor de la variable que acabas de crear, le pones 100 para que la vida de tu jugador este en 100.

Esto va en el objeto del jugador para crear la vida del jugador. Ahora ve al objeto del enemigo y haz lo mismo solo que en la parte del nombre de la variable escribe un nombre que haga referencia a la vida del enemigo, por ejemplo: vida_enemigo.




Con codigo:

Pesta?a: Control --> Code --> Execute code

|
|
v

[gml]
vida_jugador = 100

//Con esto declaras la variable "vida_jugador" en 100.
[/gml]

Esto va en el objeto del jugador para crear la vida del jugador. Ahora ve al objeto del enemigo y haz lo mismo solo que en la parte del nombre de la variable escribe un nombre que haga referencia a la vida del enemigo, por ejemplo: vida_enemigo.
Título: Re: enemigo y jugador con la misma vida
Publicado por: danielsanleo en Septiembre 03, 2011, 01:43:31 AM
pues, no me funciona, una cosa, tu pones vida=jugador, pero yo tengo que poner health y no me funciona, nose que hacer.
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 03, 2011, 03:05:34 AM
Me imagino que estas usando las opciones de la barra de vida y demas de los D&D, no?

Paso a explicarte, el hecho es que estos D&D funcionan con la variable health, pero que es UNICA en todo el juego.

Haz esto, usa la variable Health en el jugador (Que es del que vas a crear la barra de vida y demas), y con la vida del enemigo crea una variable "vida_enemigo" y cuando le tengas que restar vida pon set variable, le das a -10 (Por ejemplo) y le das a relative. Y ahi le bajara 10 de vida.

Entiendes?
Título: Re: enemigo y jugador con la misma vida
Publicado por: dark_servant en Septiembre 03, 2011, 03:08:39 AM
Cita de: danielsanleo en Septiembre 03, 2011, 01:43:31 AM
pues, no me funciona, una cosa, tu pones vida=jugador, pero yo tengo que poner health y no me funciona, nose que hacer.
Duda por que tienes que poner forzosamente health? si vida hace lo mismo

y 2 si lo quieres con "iconos que se arrastran" por si no sabes codigo te dejo un ejemplo ahora tengo duda quieres dibujar tambien una barra o como sabes que les resta vida a los 2?

por si, si te dejo el ejemplo solo examinalo bien.
Título: Re: enemigo y jugador con la misma vida
Publicado por: danielsanleo en Septiembre 04, 2011, 01:43:26 AM
muchas gracias ya me funciona, pero las barras de vida no se ven ,mi juego es tipo gta 2 , entonces como se podria hacer que la vida del jugador se vea en el extremo derecho de la pantalla y el del enemigo , no hace falta que tenga barra de vida
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 04, 2011, 02:06:53 AM
Cuando usas una view, esta misma tiene valores de x e y propios, estos 0 se situan en la esquina superior izquierda.

Que quiere decir esto?

Que para que la barra de vida del jugador te aparezca desde la punta superior izquierda de la pantalla y por mas que te muevas la barra de vida tambien se mueva.

Debes poner en el valor "x": view_xview
Y en el valor Y: view_yview
Y los valores x2 e y2 (Que son donde termina la barra de vida) debes ponerlos a tu gusto.
Título: Re: enemigo y jugador con la misma vida
Publicado por: danielsanleo en Septiembre 04, 2011, 02:13:42 PM
no he sabido hacerlo, la barra no me aparece en la pantalla, ayuda porfavor, gracias
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 04, 2011, 03:31:56 PM
Aca te hice un engine de como seria:

@ Mueves al personaje con las flechas, los cursores. Al enemigo con WASD y disparas (Con el enemigo, asi ves como baja la vida del Jugador) con <Space>.

@ La view sigue al jugador.

@ Los valores de la barra de vida los puedes cambiar sumandole o restandole cosas a "view_xview" y "view_yview".
Título: Re: enemigo y jugador con la misma vida
Publicado por: danielsanleo en Septiembre 05, 2011, 08:06:51 PM
pero mi problema es que cuando el jugador dispara al enemigo, se muere el jugador y no  el enemigo, asiq ue necesito un engine que ponga la vida del jugador y el enemigo y  funcione, gracias de todas formas,
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 05, 2011, 11:18:03 PM
Ya hay 3 engines en este mismo posts que hace eso.

Es porque le estas restando valores a la variable equivocada.

Si la vida del jugador esta guardada en la variable "Vida_Jugador" fijate de restarle valores a esta variable.

Y cuando le tengas que restar al enemigo, restale a "Vida_Enemigo"

(Obviamente, ahi van los nombres de las variables que escojiste)

Y si lo quieres hacer con D&D, en la pagina anterior te dejaron un engine sobre como hacerlo con D&D
Título: Re: enemigo y jugador con la misma vida
Publicado por: danielsanleo en Septiembre 06, 2011, 08:59:21 PM
que es D&D , perdon pero esque acabo de empezar con game maker, gracias y perdonar mi ignorancia
Título: Re: enemigo y jugador con la misma vida
Publicado por: MaanuRP en Septiembre 06, 2011, 11:01:48 PM
Ya te lo explique en la pagina anterior, pero capaz que no entendi.

D&D, Drag & Drop, se llama el sistema que usas para programar si es que usas las librerias, y las librerias son estas (Imagen):