Bienvenue visiteur !
|
Statistiques
Liste des membres
Contact
Mentions légales
311 connectés actuellement
30741676 visiteurs depuis l'ouverture
2049 visiteurs aujourd'hui
Partenaires
Tous nos partenaires
Devenir partenaire
|
Le mirudien -
posté le 17/09/2017 à 12:44:53 (237 messages postés)
| | Domaine concerné: Script
Logiciel utilisé: VXACE
Bonjour à tous
J'ai découvert le script suivant qui s'adapte avec le Ace Battle Engine de Yanfly qui est dejà intégrer à mon projet.
J'aimerai bien ajouter cette fonctionnalité qui consiste a avoir ce système des points d'actions à dépenser pour les combats.
https://yanflychannel.wordpress.com/rmvxa/battle-scripts/ace-battle-engine/battle-system-free-turn-battle/
Le script fonctionne pas mal, je n'ai pas de soucis avec celui la en l'état actuel, mais d'un point de vue Gameplay, j'aimerai que le nombre de points d'actions dont dispose chaque personnage soit visibles sur sa fiche de statut. Actuellement on a juste le nombre de point totaux de l'équipe qui s'affiche dans un coin de l'écran durant le combat.
Par exemple, si le personnage A possède 4 PA (points d'actions), qu'il est équipé avec une arme qui lui donne 1PA et qu'il possède un bouclier qui lui retire 2PA. Il lui en reste donc 3. J'aimerai que dans la fenetre statut du personnage A, je puisse ajouter la ligne "PA totaux : 3 PA".
Pour ce faire, il faut que le nombre de PA dispo par personnage soit récupéré dans des variables et c'est la que je bloque.
Quelqu'un s'y connait assez en script pour savoir si il est possible de récupérer ses points dans des variables que je pourrais afficher en jeu. ?
Merci d'avance.
"Le scripts code"
Supprimé car non autorisé par le scripteur original.
|
Projet Miruda http://www.rpg-maker.fr/index.php?page=forum&id=24876Démo Miruda https://le-mirudien.itch.io/miruda-les-pierres-de-ruulna |
le mirudien -
posté le 25/09/2017 à 09:50:52 (237 messages postés)
| | Je tente le up, si personne ne sait, je trouverai un autre moyen d'avoir ces valeurs.
Je reprécise mon soucis, le script permet d'augmenter ou de diminuer le nombre d'actions que peut exécuter un personnage lors des combats, ce nombre que dispose chaque personnage est forcément encodé quelques parts dans le script, j'aimerai les récupérer dans des variables.
|
Projet Miruda http://www.rpg-maker.fr/index.php?page=forum&id=24876Démo Miruda https://le-mirudien.itch.io/miruda-les-pierres-de-ruulna |
HuLijin -
posté le 25/09/2017 à 10:20:05 (1004 messages postés)
| Yeoun, mage-archère-louve | De ce que je lis, la classe Game_BattlerBase a été étendue avec les deux méthodes qui t'intéressent si j'ai bien compris ton problème :
- ftb_actions() pour connaitre le nombre de points utilisés
- max_ftb_actions() pour connaitre le nombre max de points utilisés
Dans Game_Party t'as les 3 méthodes pour connaitre les points utilisés/restants/max. Ça c'est ce qui est utilisé pour l'affichage tel que tu le vois, et qui ne te plait pas.
Un exemple :
1
2
3
4
5
6
7
8
9
10
11
| #--------------------------------------------------------------------------
# new method: ftb_actions_used
#--------------------------------------------------------------------------
def ftb_actions_used
n = 0
for member in $game_party.members
next unless member.game_battlerbase_inputable_ftb
n += member.ftb_actions
end
return n
end |
Du coup, la "variable" que tu cherches, c'est un truc dans le style à utiliser si j'ai bien tout suivi. Avec X la position du héros visible dans le menu de formation (la position -1 ?)
$game_party.members[X].game_battlerbase_inputable_ftb ? $game_party.members[X].ftb_actions : 0
Pour les points max : $game_party.members[X].game_battlerbase_inputable_ftb ? $game_party.members[X].max_ftb_actions : 0
Pour les points restants : $game_party.members[X].game_battlerbase_inputable_ftb ? ($game_party.members[X].max_ftb_actions - $game_party.members[X].ftb_actions) : 0
À demander confirmation auprès des scripteurs ruby, j'ai fais des suppositions sur mes vagues souvenirs des classes de VX Ace.
|
M.V. |
le mirudien -
posté le 26/09/2017 à 09:16:21 (237 messages postés)
| | Décidément ce n'est pas pour moi les scripts. ...
Merci pour ces détails, donc ce qu'il faudrait faire, c'est ajouter des lignes ou créer un autre script dans le genre.
Variable[x] = $game_party.members[X].ftb_actions
je souhaite juste ajouter ce nombre dans la fenêtre statut de la fiche du personnage. Je peux peut être ajouter la valeur de "game_party.members[X].ftb_actions" sans passer par des variables, mais je ne sais pas comment.
Est ce qu'il est possible de faire ce genre de chose à partir de la fonction "script" qui se trouve dans les events ?
|
Projet Miruda http://www.rpg-maker.fr/index.php?page=forum&id=24876Démo Miruda https://le-mirudien.itch.io/miruda-les-pierres-de-ruulna |
HuLijin -
posté le 26/09/2017 à 09:59:10 (1004 messages postés)
| Yeoun, mage-archère-louve | Yop. Rajouter du texte dans autre chose qu'un message avec la commande script de VX ace qui est super capricieuse, je ne crois pas que ça puisse se faire.
Edit, en relisant, j'ai répondu pour l'afficher en combat (en spoiler), une jauge par personne, ce qui est l'endroit logique où on voudrait voir ça. Pour la fenetre de statut, faut regarder comment c'est codé, mais de mémoire t'as pas accès au battler mais au character. Et je ne sais jamais lequel hérite de l'autre, ou s'ils sont totalement étrangers l'un à l'autre, donc si tu as accès facilement à cette info ou non.
Quoi qu'il en soit, Variable[X] ça doit être un truc du genre $game_variables[X]
Rajouter 1 ligne de texte en soi dans la fenêtre de statut ne devrait pas être trop dur, s'il y a la place quelque part.
Spoiler (cliquez pour afficher) Modifier ton script en revanche, ou en créer un nouveau jauste après c'est faisable. Mais ça fait tellement longtemps que j'ai codé pour VX Ace que je suis pas sûre de pouvoir t'aider.
Ça demanderait de copier et modifier la classe Window_FTB_Gauge, en particulier ceci (avec un paramètre pour pouvoir choisir le battler):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| #--------------------------------------------------------------------------
# draw_empty_icons
#--------------------------------------------------------------------------
def draw_empty_icons
n = [b]$game_party[/b].ftb_actions_maximum
dx = contents.width
n.times do
dx -= 24
draw_icon(Icon.ftb_empty, dx, 0)
end
end
#--------------------------------------------------------------------------
# draw_filled_icons
#--------------------------------------------------------------------------
def draw_filled_icons
n = [b]$game_party[/b].ftb_actions_maximum - [b]$game_party[/b].ftb_actions_used
dx = contents.width
n.times do
dx -= 24
draw_icon(Icon.ftb_action, dx, 0)
end
end |
de créer autant de jauges que d'acteurs ici :
1
2
3
4
5
6
| #--------------------------------------------------------------------------
# new method: create_ftb_gauge
#--------------------------------------------------------------------------
def create_ftb_gauge
@ftb_gauge = Window_FTB_Gauge.new(@help_window)
end |
de repositionner correctement les différentes jauges, parce que là je ne comprends pas bien comment c'est fait vu que j'ai plus du tout le fonctionnement de Window_Base en tête.
et de modifier toutes les méthodes où apparait la variable @ftb_gauge.
Assez étrange comme jauge d'ailleurs.
Je crois que j'ai fait vaguement le tour. Si t'es pas un pro du script, essaie de fouiller tous les forums où Yanfly a pu poster son script. Il y a bien une ou deux personnes qui lui ont déjà fait la demande et elle a ptet déjà fourni le morceau de code qui va bien.
Re-edit : c'est vraiment pas clair ce que je raconte -_- je suis pas douée pour les explications.
|
M.V. |
Le mirudien -
posté le 26/09/2017 à 12:21:46 (237 messages postés)
| | Merci, je vais tâcher de dépatouiller tout cela ...
Pour ce qui est de l'afficher dans la fenêtre de statut, je peux prendre l'espace prévu par défaut pour le surnom du perso vue que je ne l'utilise pas.
Si ca marche pas en bidouillant le script, je ferai quelques choses en event, vu que le nombre de P.A dépend des équipements portés par le personnage et les Status qui lui sont appliqués, je peux bidouiller la variable de chaque perso suivant cela, en event commun. Mais c'est un peu bête de faire calculer cela au jeu en event, alors qu'un script le fait déjà.
Je vais voir ce qui est le mieux, merci pour ton coup de main
|
Projet Miruda http://www.rpg-maker.fr/index.php?page=forum&id=24876Démo Miruda https://le-mirudien.itch.io/miruda-les-pierres-de-ruulna |
HuLijin -
posté le 26/09/2017 à 12:29:05 (1004 messages postés)
| Yeoun, mage-archère-louve | On doit surement pouvoir afficher une variable RM dans la case surnom. Le problème, c'est qu'il faut actualiser la variable à chaque changement d'équipement. Et ça c'est lourd
Du coup le mieux c'est effectivement d'éditer le script qui gère la fenêtre de statut. Si tu as de la chance, un membre d'oniro beaucoup plus calé que moi en RGSS te fera la modif. Ça doit bien encore exister des scripteurs Ruby dans le coin.
|
M.V. |
Le mirudien -
posté le 26/09/2017 à 16:32:20 (237 messages postés)
| | Je progresse un peu, en mettant ceci en event commun :
$game_variables[400] = $game_party.ftb_actions_maximum
La variable 400 retient en temps reel, le nombre de point total de l'équipe.
Par contre, je ne trouve pas la ligne pour parvenir a encoder un perso de l'équipe en particulier.
si je mets
$game_party.members[-1].max_ftb_actions = le résultat reste à 0 et si je remplace le X par une valeur supérieur à 0, le jeu plante direct.
Je ne parviens pas a encoder une variable dans la section surnom du perso, par contre, on peut le faire dans la partie description, sur ce coup, je pourrai mettre ma valeur dans cette section la à défaut d'autre chose, me reste a trouver comment récupérer le nombre de ftb_action d'un perso spécifique. (que ce soit via son Id ou son \n[x])
|
Projet Miruda http://www.rpg-maker.fr/index.php?page=forum&id=24876Démo Miruda https://le-mirudien.itch.io/miruda-les-pierres-de-ruulna | Index du forum > Entraide > [VXACE] Yanfly Script : Free Turn Battle mod
|
|
|