Le deal à ne pas rater :
Pokémon EV06 : où acheter le Bundle Lot 6 Boosters Mascarade ...
Voir le deal

Aller en bas
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu [résolu]Des event qui me manque ?

Lun 25 Aoû 2014 - 18:06
Bonjour/Bonsoir

Normalement vous devriez comprendre rapidement mais je m'exprime généralement très mal.
Donc en gros j'ai besoins qu'un évent puisse détecte l’évent le plus proche de lui parmi un certain nombre d'évent et
qu'il fasse un certain nombre de pas vers lui.

Le problème est qu'il est déjà impossible de détecte l’évent le plus proche.. donc dans une certaine liste encore plus chaud...
Et il y a aucune option pour faire déplacer un évent vers un autre évent autre que le hero.

Mes questions sont simple :

- Il y a t'il un script pour faire cela
- Il y a t'il une possibilité pour remplacer correctement ça par d'autre évent ?

Cordialement.

Note: J'ai fait une recherche sur le forum mais vue que je marque un peu prêt n'importe quoi...
Je m'excuse a l'avance si il y avait déjà la réponse.


Dernière édition par WhiteShuriken le Jeu 28 Aoû 2014 - 19:17, édité 1 fois
Spytje
Spytje
Administrateur

Nombre de messages : 5935
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Des event qui me manque ?

Lun 25 Aoû 2014 - 18:18
Qu'un event puisse détecter un autre event le plus proche c'est possible en script.

Après limiter cette détection parmi un groupe d'autres event ça je sais pas trop.

Peut être que si tu expliques ce que tu essaies de faire ça serait plus simple pour t'aider correctement
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Lun 25 Aoû 2014 - 18:24
En gros je me suis mis au Tactical RPG mais je voulais le réaliser avec le minimum de script. et surtout ne pas utiliser le "GTBS" que j'aime beaucoup mais que n'utiliserais pas car il n'utilise pas ce que je cherche.
Donc pour le moment les déplacement ça va au niveau des allié mais je n'avais pas remarquer que les ennemie se diriger toujours sur le hero... sachant que c'est le curseur... c'est plutôt... ouais enfin bref... donc a partir de la je cherche a ce que l’Évent de l'ennemie recherche l'un des évent allié qu'il trouve le plus rapprocher et qu'il s’avance vers lui.
Spytje
Spytje
Administrateur

Nombre de messages : 5935
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Des event qui me manque ?

Lun 25 Aoû 2014 - 18:40
Pour les distances player/event il y a ce script :

http://www.rpgmakervxace.net/topic/3230-proximity-events/

A tester...
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Lun 25 Aoû 2014 - 18:53
J'ai essayer de l'intégré mais ce n'est pas très propre.. et surtout qu'il me manque la 2eme partie de l’évent , pour que l'ennemie bouge vers l'allié
Lunri
Lunri
Membre

Nombre de messages : 675
Age : 33
Distinction : aucune
Date d'inscription : 31/07/2011

Résolu Re: [résolu]Des event qui me manque ?

Mar 26 Aoû 2014 - 17:31
Ca doit se faire avec l'évent extender

La fonction distance_between(type, event1, event2)

doc

script

Je suppose que si tu te lances dans un tactical rpg en évent tu sauras te debrouiller avec ca
Balbereith
Balbereith
Staffeux retraité

Nombre de messages : 4129
Age : 31
Localisation : dans l'ombre...
Distinction : Péripatéticienne à temps perdu
Helly n°666 [Coco' ;D]
mon ptit balbounet p'tit jardinier en herbe(les râteaux ça le connait) [tonton Adurna]
Cultivateur professionnel de la commu' (il a de bons outils en de nombreux exemplaires [résolu]Des event qui me manque ? 522164 ) [Coco' Smile]
Date d'inscription : 13/05/2009

Résolu Re: [résolu]Des event qui me manque ?

Mar 26 Aoû 2014 - 18:14
ou en event c'est possible ^^ (long répétitif)

Tu stock les positions de chaque évent (tu élève chaque variable au carré après avoir soustrait les coordonnées de l'évent de référence) dans des variables et dans une troisième tu sommes les X² et Y² d'un évent, tu obtiens tout les distances aux carrés entre ton évent et les évent de ta liste.

ensuite ta suite de variable tu l'as traite comme un tableau et tu sais quel variable est associé à quel évent, tu utilise une dernière variable pour répéré qu'elle est la plus grande en parcourant "ton tableau" et une autre pour repérer id de la variable et une autre pour savoir l'incrémentation au cas où tu dois sauter plusieurs id. Une fois ton id localisé, tu n'as plus qu'un jeu de conditions pour chaque id à faire.

Je te laisse méditer sur ça ^^ et poser des questions si j'ai pas été clair XD
Zangther
Zangther
Membre

Nombre de messages : 913
Distinction : aucune
Date d'inscription : 06/02/2013

Résolu Re: [résolu]Des event qui me manque ?

Mar 26 Aoû 2014 - 18:20
Ouais, je recommande aussi l'utilisation de l'Event Extender. Solution propre et super puissante.
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 0:31
Lunri a écrit:Ca doit se faire avec l'évent extender

La fonction distance_between(type, event1, event2)

doc

script

Je suppose que si tu te lances dans un tactical rpg en évent tu sauras te debrouiller avec ca


C'est magnifique c'est beau c'est propre et ça fait pas de marque !
Franchement very merci, j'avance un peu plus chaque instants,

Je cherche encore un peu pour les déplacement mais ça marche pour le moment ^^
Heaven
Heaven
Staffeux retraité

Nombre de messages : 2441
Age : 23
Localisation : Alpes-Maritimes VIRILITÉ OLALA
Distinction : Aucune
Date d'inscription : 18/10/2012

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 9:16
Problème résolu du coup ? =D


Heav'n
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 9:46
Bien le gros du problème est résolu..
je pense pouvoir me débrouiller avec l'event extender pour le déplacement des event vers les event mais si quelqu'un a une réponse rapide je suis preneur.
Heaven
Heaven
Staffeux retraité

Nombre de messages : 2441
Age : 23
Localisation : Alpes-Maritimes VIRILITÉ OLALA
Distinction : Aucune
Date d'inscription : 18/10/2012

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 10:38
D'acc, je laisse un peu le sujet en suspens en attendant d'éventuelles réponses qui pourraient t'aider^^


Heav'n
Zangther
Zangther
Membre

Nombre de messages : 913
Distinction : aucune
Date d'inscription : 06/02/2013

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 12:04
Ouais lock pas tout de suite, je vois le problème j'vais écrire un truc pour le résoudre.
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 12:30
Bah enfaite ce qu'il me fraudais pour expliquer au plus simple ça serais une commande du genre "un pas vers le hero" mais la bah... "un pas vers l'event"
Lunri
Lunri
Membre

Nombre de messages : 675
Age : 33
Distinction : aucune
Date d'inscription : 31/07/2011

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 16:59
Ca me semble assez simple.

Imaginons tu as Allié1(id1) Allié2(id2) enemie1(id3)

Position des alliées
Variable 1 = position X allié1
Variable 2 = position Y allié1

Variable 3 = position X allié2
Variable 4 = position Y allié2

Le plus proche ?

Variable 5 = Distance_between(:square,1,3)
Variable 6 = Distance_between(:square,2,3)

Déplacement
Condition si V5>V6
allié2 le plus proche
move_to(3,V3,V4)

Condition si V5 < V6

allié1 le plus proche
move_to(3,V1,V2)

Pas testé mais ca doit être plus ou moins comme ca
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 18:37
Lunri a écrit:Ca me semble assez simple.

Imaginons tu as Allié1(id1) Allié2(id2) enemie1(id3)

Position des alliées
Variable 1 = position X allié1
Variable 2 = position Y allié1

Variable 3 = position X allié2
Variable 4 = position Y allié2

Le plus proche ?

Variable 5 = Distance_between(:square,1,3)
Variable 6 = Distance_between(:square,2,3)

Déplacement
Condition si V5>V6
allié2 le plus proche
move_to(3,V3,V4)

Condition si V5 < V6

allié1 le plus proche
move_to(3,V1,V2)

Pas testé mais ca doit être plus ou moins comme ca

Eh bien non justement le voila le problème,
Je ne sait pas si tu connait le T-RPG mais en gros les ennemie ont des déplacement limiter (exemple 3 case) et donc doivent marcher vers l’évent sans déjà lui passer dessus (ce que ferait cette méthode) et de plus cela fait que si la cible se trouve a 50 case il irait comme même la rencontré.

En gros il fraudais que le move_to gere le déplacement limité et c'est très galère...

J'y avait déjà penser mais je ne trouve justement pas comment limiter le nombre de déplacement...
Lunri
Lunri
Membre

Nombre de messages : 675
Age : 33
Distinction : aucune
Date d'inscription : 31/07/2011

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 19:11
Bah j'pense que tu vas devoir faire avec les positions X et Y + une variable de nombre de "déplacement" encore dispo. Ca risque d'être lourd.


J’espère que Zangther te trouveras un truc plus simple.
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Mer 27 Aoû 2014 - 21:35
Bah c'est déjà ce que j'ai un peu pres mais c'est effectivement très lourd et il y a des bug très très ennuyant ...

Déjà avec le système que j'ai je peut dire adieu au mur parce que le truc c'est que les commande ne détecte pas les wall et veut essayer de passer a travers... De plus le déplacement sont très étrange , l'event arrive bien a la position mais il faut tout un tas de mouvements avant...


De mon coté j'ai jeter un oeil dans les script du jeu pour essayer de voir si je peut recrée la commande "un pas vers le hero" et je suis tomber sur le script "Game_Followers"

Code:
#==============================================================================
# ** Game_Followers
#------------------------------------------------------------------------------
#  This is a wrapper for a follower array. This class is used internally for
# the Game_Player class.
#==============================================================================

class Game_Followers
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :visible                  # Player Followers ON?
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     leader:  Lead character
  #--------------------------------------------------------------------------
  def initialize(leader)
    @visible = $data_system.opt_followers
    @gathering = false                    # Gathering processing underway flag
    @data = []
    @data.push(Game_Follower.new(1, leader))
    (2...$game_party.max_battle_members).each do |index|
      @data.push(Game_Follower.new(index, @data[-1]))
    end
  end
  #--------------------------------------------------------------------------
  # * Get Followers
  #--------------------------------------------------------------------------
  def [](index)
    @data[index]
  end
  #--------------------------------------------------------------------------
  # * Iterator
  #--------------------------------------------------------------------------
  def each
    @data.each {|follower| yield follower } if block_given?
  end
  #--------------------------------------------------------------------------
  # * Iterator (Reverse)
  #--------------------------------------------------------------------------
  def reverse_each
    @data.reverse.each {|follower| yield follower } if block_given?
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    each {|follower| follower.refresh }
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    if gathering?
      move unless moving? || moving?
      @gathering = false if gather?
    end
    each {|follower| follower.update }
  end
  #--------------------------------------------------------------------------
  # * Movement
  #--------------------------------------------------------------------------
  def move
    reverse_each {|follower| follower.chase_preceding_character }
  end
  #--------------------------------------------------------------------------
  # * Synchronize
  #--------------------------------------------------------------------------
  def synchronize(x, y, d)
    each do |follower|
      follower.moveto(x, y)
      follower.set_direction(d)
    end
  end
  #--------------------------------------------------------------------------
  # * Gather
  #--------------------------------------------------------------------------
  def gather
    @gathering = true
  end
  #--------------------------------------------------------------------------
  # * Determine if Gathering
  #--------------------------------------------------------------------------
  def gathering?
    @gathering
  end
  #--------------------------------------------------------------------------
  # * Get Array of Displayed Followers
  #    "folloers" is typo, but retained because of the compatibility.
  #--------------------------------------------------------------------------
  def visible_folloers
    @data.select {|follower| follower.visible? }
  end
  #--------------------------------------------------------------------------
  # * Determine if Moving
  #--------------------------------------------------------------------------
  def moving?
    visible_folloers.any? {|follower| follower.moving? }
  end
  #--------------------------------------------------------------------------
  # * Determine if Gathered
  #--------------------------------------------------------------------------
  def gather?
    visible_folloers.all? {|follower| follower.gather? }
  end
  #--------------------------------------------------------------------------
  # * Detect Collision
  #--------------------------------------------------------------------------
  def collide?(x, y)
    visible_folloers.any? {|follower| follower.pos?(x, y) }
  end
end

Je ne sait pas ce que ça donne mais cela a bien l'air d’être ce que je cherche ?




EDIT : C'est magnifique , après pas moins de 2heures de recherche je suis tomber sur ce script :
http://galvs-scripts.com/2013/03/11/move-route-extras/

"Je m'en vais le partager dans le seconde"
enfin bref ce script me permet exactement de faire ce que je cherchais grace a une commande de script simple "move_toward_event(N)"

Pour le moment j'ai réglé les problème que j'avais mais je voudrais comme même connaitre la solution de Zangther avant de clore définitivement le sujet
Zangther
Zangther
Membre

Nombre de messages : 913
Distinction : aucune
Date d'inscription : 06/02/2013

Résolu Re: [résolu]Des event qui me manque ?

Jeu 28 Aoû 2014 - 16:38
En fait pour le moment je n'ai pas fait grand chose. Si ta solution te convient, je ne vais rien faire de plus.
Après si t'as encore des soucis je peux très bien continuer ma solution. En gros ce que j'aurais pu faire c'est simplement faire un add-on pour l'event extender pour ajouter un paramètre à la commande move_to (qui aurait été la distance max).
WhiteShuriken
WhiteShuriken
Membre

Nombre de messages : 87
Age : 27
Localisation : Le Mans
Distinction : aucune
Date d'inscription : 28/03/2013

Résolu Re: [résolu]Des event qui me manque ?

Jeu 28 Aoû 2014 - 19:17
Eh bien je lock, merci pour a vous tous ! :3
Heaven
Heaven
Staffeux retraité

Nombre de messages : 2441
Age : 23
Localisation : Alpes-Maritimes VIRILITÉ OLALA
Distinction : Aucune
Date d'inscription : 18/10/2012

Résolu Re: [résolu]Des event qui me manque ?

Jeu 28 Aoû 2014 - 19:34
Merci, je déplace :3


Heav'n
Contenu sponsorisé

Résolu Re: [résolu]Des event qui me manque ?

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum