Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.

[XP] Ultimate Multi trigger Events

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker XP [XP] Ultimate Multi trigger Events

Mensaje por Wecoc el 2018-07-15, 15:51

He hecho un sistema engine+script (engript para los amigos) que permite tener eventos con múltiples triggers a la vez, sin que eso afecte demasiado al lag y sin que altere el modo en el que van los triggers por defecto cuando no se llama específicamente al script.

Este sistema permite:
- Tener eventos que hagan cosas distintas según como los activas: Pulsar tecla, Toparse con Héroe, Pisar, Colisionar
- Usar teclas distintas a la de Aceptar para activarlo (y que el mismo evento haga distintas cosas según esa tecla)
- Distinguir entre colisionar tú con el evento y que el evento colisione contigo
- Distinguir entre la posición a la que estás cuando lo activas: Encima, en frente o tras un obstáculo (por ejemplo tras una mesa)

Espero que os sirva. He puesto comentarios en los eventos para que veáis exactamente cómo va. Es más fácil de lo que parece, simples condiciones y efectos.
Descarga: Ultimate Multi trigger Events.zip
avatar
Wecoc
Administrador
Administrador



Créditos 12297

Gracias : 648

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Ultimate Multi trigger Events

Mensaje por xXIsrael0499Xx el 2018-07-16, 15:45

Hermoso, ya mismo te doy tu +1 y me descargo la demo.

Por cosas asi es que no me canso de estar en este foro, arigato wecoc, te la comiste.

Saludos.
avatar
xXIsrael0499Xx
Veterano
Veterano

0/3

Créditos 2047

Gracias : 113

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Ultimate Multi trigger Events

Mensaje por AsFzKakarotto el 2018-07-16, 20:54

jajaaa me gusto eso de que el evento distingue cuando colisiona contigo, ingenioso... por falta de tiempo no lo he visto muy bien, pero si se puede hacer eso, veré también si un evento detecta a otro evento que se colisione (colisión entre dos eventos) se podría hacer cosilla buenas con eso, pero en si esta muy bueno esos trigger.
avatar
AsFzKakarotto
Soñador
Soñador

0/3

Créditos 318

Gracias : 68

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Ultimate Multi trigger Events

Mensaje por Wecoc el 2018-07-17, 01:30

veré también si un evento detecta a otro evento que se colisione (colisión entre dos eventos)

El sistema no acepta eso. Se podría ampliar con un segundo script que permitiera tal comprobación y otras parecidas, si de verdad te interesa puedo ponerlo aquí como una espécie de tutorial, pero en verdad no se me ocurre un caso donde eso pueda ser útil... Por ejemplo en un sistema de flechas lo que se hace es comprobar que el evento de flecha y el del target tengan las mismas coordenadas, no hace falta comprobar colisión, es mucho más fácil... y la mayoría de casos será lo mismo; una simple comprobación de coordenadas.

Al comprobar la colisión en cambio no se comprueban las coordenadas tal cual, se comprueba la voluntad del evento A a moverse hacia la posición del evento B, lo cual la no pasabilidad de ambos se lo impide y justo en ese momento se da la colisión. No tiene por qué haber movimiento de ninguno de los eventos; podían estar ya en frente uno del otro y simplemente en un momento dado uno intenta avanzar y no puede. No sé si me explico...
avatar
Wecoc
Administrador
Administrador



Créditos 12297

Gracias : 648

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Ultimate Multi trigger Events

Mensaje por AsFzKakarotto el 2018-07-17, 03:39

A ok no te preocupes ;) era una simple función adicional que esperaba ver, pues nada más. Lo que pensaba era hacer una sala con varios luchadores cuyos movimientos son aleatorios en la velocidad de el héroe, los cuales al colisionar se prediseñaba una batalla especial dependiente a la condición entre los que se han colisionado. Lo cual seria una lucha al azar algo que la comprobación por coordenada seria difícil de lograr. Pero como digo, no te preocupes fue solo algo previsto, si no se puede, pues que más da. por cierto saludos, espero que te encuentres bien.
avatar
AsFzKakarotto
Soñador
Soñador

0/3

Créditos 318

Gracias : 68

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Ultimate Multi trigger Events

Mensaje por Wecoc el 2018-07-17, 19:19

Ya está, ya lo hice. En verdad era bastante simple de hacer.
Necesitas este código, puedes copiarlo en el mismo script, al final:

Código:
#==============================================================================
# ** [XP] Ultimate Multitrigger Events - Addon: Event Collision
#------------------------------------------------------------------------------
# Autor: Wecoc (No requiere créditos)
#==============================================================================

class Game_Event < Game_Character
  def collides?() return @collide_mode end
  def collides_event?(event)
    return false if @collide_mode == false
    if event.is_a?(Array)
      for e in event
        return true if collides_event?(e)
      end
      return false
    end
    if event.is_a?(Integer)
      if event == -1
        event = $game_player
      else
        event = $game_map.events[event]
      end
    end
    return false if event.nil?
    return false if event.through or self.through
    new_x = @x
    new_y = @y
    case @direction
      when 2 then new_y += 1
      when 4 then new_x -= 1
      when 6 then new_x += 1
      when 8 then new_y -= 1
    end
    if event.x == new_x and event.y == new_y
      if not jumping? and not over_trigger?
        return true
      end
    end
  end
end

Para comprobar si el evento colisiona con cualquier cosa (tile o evento) se usa esto en Condiciones y Efectos:
$game_map.events[@event_id].collides?

Para comprobar si colisiona con un evento, en este ejemplo de ID 1:
$game_map.events[@event_id].collides_event?(1)

También puedes hacer la comprobación inversa: que el evento 1 colisione con el evento actual:
$game_map.events[1].collides_event?(@event_id)

Podéis comprobar ambas a la vez usando or entre ellas... o también podéis hacer combinaciones más locas.
Como últimos dos trucos: si usáis -1 como ID dentro del paréntesis comprobará la colisión con el personaje, que es similar al trigger?("collide") del script anterior.
También podéis asignar una array para comprobar varios a la vez: collides_event?([-1, 2, 4]) sería que colisiona con el personaje o con eventos de id 2 y 4.
avatar
Wecoc
Administrador
Administrador



Créditos 12297

Gracias : 648

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Ultimate Multi trigger Events

Mensaje por AsFzKakarotto el 2018-07-19, 01:19

No tenias por que molestarte Wecoc, aunque a varios nos puede servir después de todo. Lo voy a revisar por lo pronto, creo que va a quedar genial. Deja darme la oportunidad de agradecerte X2 ya que la solución que me has dado en el otro tema sobre la variable, se actualiza perfectamente. Ese error no solo lo tenia yo, por la web está el script con el mismo problema y pues no encontraba el error.
avatar
AsFzKakarotto
Soñador
Soñador

0/3

Créditos 318

Gracias : 68

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Ultimate Multi trigger Events

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.