Domaine concerné: Script
Logiciel utilisé: RPG VX ACE
Bonsoir a tous !
Voila un bon moment ou je ne m’était pas heurté a un problème surpassant mes compétence.
Bref je voulait faire un projet sans script particulier, tout en event mais la structure même de rpg maker ne me convient pas, enfin pas totalement puisque en fait il y as juste une petite irrégularité dans le système de combat basique de rpg maker que je souhaite modifier.
En gros nous avont dans un combat normal :
==> Event process ( tout action pouvant être événementiel dans le combat )
==> Apparition des commandes joueurs.
==> Début du premier tour
==> Event process
==> Dégats Joueur
==> Riposte ennemie ( ou inversement avec la ligne du dessus celons le speed )
==> Event process
==> Fin du 1 er tour
==> Apparition des commandes joueurs.
==> Début du 2 ieme tour
==> Event process
==> Dégats Joueur
==> Riposte ennemie
==> Event process
==> Fin du 2 iem tour
ect
ect
==> Début de X tour
==> Event process
==> Dégats joueur Je tue tout les ennemies
==> Fin du combat
J'adore enregistrer tout se qui se passe dans des variables question d'utilité quand ont as besoin d'afficher quelque chose en particulier.
Hors avant l'enclanchement de la fin du combat je n'ai pas de event process se qui fait que mes variable sont enregistrer en debut et en fin de tour mais la mort de tout les ennemis ne compte pas comme une fin de tour ! Donc la fin du combat s'enclanche sans enregistrer dans mes variables les dernière actions, et ne déclanche pas les action souhaiter en event de combat.
Utile par exemple si je veut afficher le total des dégât subit par le monstre qui peut même dépasser sa vie totale pour en décider un overkill ou non. ( se qui n'est pas le cas dans mon projet c'est juste exemple d'utilité )
Se que je souhaite en reprenant le schéma du dessus :
==> Event process ( tout action pouvant être événementiel dans le combat )
==> Apparition des commandes joueurs.
==> Début du premier tour
==> Event process
==> Dégats Joueur
==> Riposte ennemie ( ou inversement avec la ligne du dessus celons le speed )
==> Event process
==> Fin du 1 er tour
==> Apparition des commandes joueurs.
==> Début du 2 ieme tour
==> Event process
==> Dégats Joueur
==> Riposte ennemie
==> Event process
==> Fin du 2 iem tour
ect
ect
==> Début de X tour
==> Event process
==> Dégats joueur Je tue tout les ennemies
==> Event process
==> Début du X+1 tour : ==> Fin du combat
========================================
J'ai essayer de jouer avec les interrupteur et les variable impossible d'obtenir se que je veut je me suis donc dit que c'est un problème de codage de base tel qu'est programmer le jeu.
Donc j'ai ouvert les script suivant :
- BattleManager
- Game_Battler
- Scene_Battle
En lisant c'est script j'en suis venu a la conclusion qu'il fallait que j'intègre c'est 2 commandes dans la partie " fin du combat " :
BattleManager.turn_end
process_event
J'ai donc modifier la première en BattleManager.battle_end j'ai trouver une ligne s'appelant BattleManager.Battle_start ou BattleManager.battle_on (je ne me souvient plus exactement)
Mais surtout la ligne process-event qui ne veut absolument pas marcher je me suis donc dit que c'est un problème d'écriture ou de définition mais honnêtement c'est la ou j'arrive a rien autant lire un script et le modifier sa va mais écrire quelque chose de moi même ... c'est une autre histoire.
J'ai le sentiment que la réponse se trouve dans le premier script et être demander en commande/définition dans les autres ou un truc comme sa je me trompe ?
Si vous avez une idée merci d'avance, en espérant avoir suffisamment détailler.
|