Noticias

Se ha publicado un nuevo servicio, el Portal de Juegos Online

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: Manejo de distintos personajes  (Leído 484 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Widocf

  • Visitante
  • *
  • Puntos: 7
  • Mensajes: 2
    • Ver Perfil
en: Enero 07, 2021, 09:42:44 pm
Saludos. Espero puedan ayudarme amables personas. Me intriga saber que forma existe para controlar dos personajes diferentes que se pasan un balon...es decir alternar los controles y solo poder mover al que lo tiene.
Desde ya gracias a quienes usen su tiempo para responder

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado 8 bits

Respuesta #1 en: Enero 08, 2021, 02:19:07 am
bueno, lo que tienes que hacer es crear una variable para cada jugador, te explico

digamos que hay dos personajes, el personaje 1 (que por fines practicos le diré mario) y personaje 2 (al que llamaré luigi)

debes hacer que un personaje tenga el balón al iniciar la room

digamos que mario tiene el balón, entonces solo tienes que hacer que si tiene el balon poner el valor de una variable a true, tal que así

if place_meeting(x,y,balon) =y {TengoElBalon=true}

y ahora debes arreglartelas para hacer que mario se mueva solo si tiene el balón, algo como

if TengoElBalon=true{

if keyboard_check(vk_left) {x-=5}
if keyboard_check(vk_right) {x+=5}

}

algo mas o menos así, lo mismo va para luigi ¿capicci?

Azter
 


Desconectado julianxx9

Respuesta #2 en: Enero 09, 2021, 08:08:17 pm
Usando la idea del usuario 8 bits  8). En lugar de una variable para cada personaje, le sera mas practica usar una variable global, esta variable estará declarada en un objeto controlador, esta tendrá un comportamiento booleano.

Esta variable podrá llamarla como quiera, pero para efectos de ejemplo le llamaré global.cjugador=0; //Control Jugador
La variable puede iniciar en 0 indicando que nadie tiene el balón, el valor 1 es para el primer jugador, y el valor 2 es para el segundo jugador.

en el codigo Step de cada personaje puede tipear una condicional que diga:

if (global.cjugador==1{ // Jugador 1
   poderControl=true; //si esta variable es verdadera; la sentencia que tiene escrita sucederá, en este caso los movimientos que usted tiene hechos.
})

lo mismo puede replicarlo en jugador 2.

Suerte en su trabajo de código.   :)

 
Los siguientes usuarios dieron las gracias a este tema: Widocf


Desconectado 8 bits

Respuesta #3 en: Enero 09, 2021, 09:26:48 pm
Que grandiosa idea, tu metodo quedó mucho mejor que el mio

Azter
 
Los siguientes usuarios dieron las gracias a este tema: Widocf


Desconectado Widocf

  • Visitante
  • *
  • Puntos: 7
  • Mensajes: 2
    • Ver Perfil
Respuesta #4 en: Enero 09, 2021, 11:59:55 pm
Gracias 8 Bits y julianxx9.... gracias por su tiempo y voy a intentar las dos. Tengo pocos conocimientos  y todo ayuda a ir practicando cuando se es noob, asi que practicare poner esto en practica. Un abrazo