| [VX] Ajout de commandes de subtitution de texte pour les messages | |
|
Auteur | Message |
---|
Ex-Admin-Script
Age : 42 Inscrit le : 26/05/2008 Messages : 2360
| Sujet: [VX] Ajout de commandes de subtitution de texte pour les messages Mar 26 Aoû 2008 - 18:15 | |
| C'est étrange que ce script n'était pas ici. Ça m'étonne un peu. Je ne trouve plus l'original, mais je vais vous poster ma version de ce script (que j'ai simplifié). Le script ADS est une création de modern algebra. Je l'ai modifier pour mes besoins et simplifier quelques fonctions dont je n'avais pas besoin. La procédure est la même, script a ajouter dans la section material au dessus du main après tout autres script de surcharge de message. Tout ce que ça fait c'est ajouter des fonctions dans les messages pour afficher différents trucs. regarder dans les commentaires en intro du script pour une liste exaustive des commandes. - Code:
-
# Window_Message by RPG-Maker VX # ADS by modern algebra (rmrk.net) # MyMessage by MirainoHikari (http://rpg-maker-vx.bbactif.com) # version 1.1 # # Syntaxe des options de message # # \v[VAR] - Affiche la variable #VAR # \n[ID] - Affiche le nom du personnage ID (liste des personnages) # \c[COLOR] - Modifie la couleur du texte pour la couleur avec l'id COLOR # \G - Affiche la fenêtre de monnaie # \. - Attend 1/4 sec (15 frames) avant de poursuivre le message # \| - Attend 1 sec (60 frames) avant de poursuivre le message # \! - Attend que le joueur appuie sur une touche avant de poursuivre le message # \> - Affiche le texte rapidement # \< - Affiche le texte lentement # \^ - N'arrête pas le texte à la fin de l'affichage du message # # \af[ID] - Affiche le visage du personnage ID (liste des personnages) # \pf[ID] - Affiche le visage du personnage ID (liste d'équipe) # \ns[ID] - Affiche le nom de la compétence ID (liste des skills) # # \bln[TAGET,BALOON] - Affiche l'emotion avec l'id BALOON sur l'evenement avec l'id TARGET (si 0, sur héro) # # \ac[ID] - Affiche la classe du personnage ID (liste d'équipe) # \np[ID] - Affiche le nom du personnage ID (liste d'équipe) # \ne[ID] - Affiche le nom de l'événement selon ID de l'event sur la carte active # \nc[ID] - Affiche le nom de la classe ID (liste des classes) # \nm[ID] - Affiche le nom du monstre ID (liste des monstres) # \ni[ID] - Affiche le nom de l'objet ID (liste des items) # \nw[ID] - Affiche le nom de l'arme ID (liste des armes) # \na[ID] - Affiche le nom de l'armure ID (liste des armures) # \pi[ID] - Affiche le prix de l'objet ID (liste des items) # \pw[ID] - Affiche le prix de l'arme ID (liste des armes) # \pa[ID] - Affiche le prix de l'arme ID (liste des armes) # \ii[ID] - Affiche l'icone de l'objet ID (liste des items) # \iw[ID] - Affiche l'icone de l'arme ID (liste des armes) # \ia[ID] - Affiche l'icone de l'arme ID (liste des armes)
#============================================================================== # MyMessage #------------------------------------------------------------------------------ # Surcharge le script de base Window_Message #==============================================================================
class Window_Message < Window_Selectable #-------------------------------------------------------------------------- # ● convert_special_characters #-------------------------------------------------------------------------- alias mm_csc convert_special_characters def convert_special_characters mm_csc # By Hikari @text.gsub!(/\\AF\[(\d+)\]/i) { "\x31[#{$1.to_i}]"} # Actor Face @text.gsub!(/\\PF\[(\d+)\]/i) { "\x32[#{$1.to_i}]"} # Party Face @text.gsub!(/\\NS\[(\d+)\]/i) { $data_skills[$1.to_i].name } # Skill Name @text.gsub!(/\\IS\[(\d+)\]/i) { "\x98[#{$data_skills[$1.to_i].icon_index}]" } # Skill Icon # from ADS Edited by SPM @text.gsub!(/\\SE\[(\d+)\]/i) {(RPG::SE.new($1)).play} # FROM ADS @text.gsub! (/\\BLN\[(\d+,\d+)\]/i) { "\x96[#{$1.to_s}]" } # Balloon @text.gsub!(/\\AC\[(\d+)\]/i) { $game_actors[$1.to_i].class.name } # Actor Class @text.gsub!(/\\NC\[(\d+)\]/i) { $data_classes[$1.to_i].name } # Class Name @text.gsub!(/\\NP\[(\d+)\]/i) { $game_party.members[$1.to_i].name } # Actor Name by Party Index begin @text.gsub!(/\\NE\[(\d+)\]/i) { $game_map.events[$1.to_i].name } # Event Name rescue end @text.gsub!(/\\NM\[(\d+)\]/i) { $data_enemies[$1.to_i].name } # Monster Name @text.gsub!(/\\NI\[(\d+)\]/i) { $data_items[$1.to_i].name } # Item Name @text.gsub!(/\\NW\[(\d+)\]/i) { $data_weapons[$1.to_i].name } # Weapon Name @text.gsub!(/\\NA\[(\d+)\]/i) { $data_armors[$1.to_i].name } # Armor Name @text.gsub!(/\\PI\[(\d+)\]/i) { $data_items[$1.to_i].price.to_s } # Item Price @text.gsub!(/\\PW\[(\d+)\]/i) { $data_weapons[$1.to_i].price.to_s } # Weapon Price @text.gsub!(/\\PA\[(\d+)\]/i) { $data_armors[$1.to_i].price.to_s } # Armor Price @text.gsub! (/\\II\[(\d+)\]/i) { "\x98[#{$data_items[$1.to_i].icon_index}]" } # Item Icon @text.gsub! (/\\IW\[(\d+)\]/i) { "\x98[#{$data_weapons[$1.to_i].icon_index}]" } # Weapon Icon @text.gsub! (/\\IA\[(\d+)\]/i) { "\x98[#{$data_armors[$1.to_i].icon_index}]" } # Armor Icon end #-------------------------------------------------------------------------- # ● Update Message #-------------------------------------------------------------------------- alias mm_update_m update_message def update_message loop do c = @text.slice(/./m) # Get next text character case c when "\x31" #Hikari - \AF[X] affiche le visage d'un acteur @text.sub! (/\[(\d*)\]/, "") #Récupère l'id de l'acteur actor = $game_actors[$1.to_i] $game_message.face_name = actor.face_name $game_message.face_index = actor.face_index begin draw_face(actor.face_name, actor.face_index, 0, 0) rescue end @contents_x = 112 @text.slice!(/./) #retire cette commande de la liste when "\x32" #Hikari - \PF[X] affiche le visage d'un personnage @text.sub! (/\[(\d*)\]/, "") #récupère l'index du personnage actor = $game_party.members[$1.to_i] $game_message.face_name = actor.face_name $game_message.face_index = actor.face_index begin draw_face(actor.face_name, actor.face_index, 0, 0) rescue end @contents_x = 112 @text.slice!(/./) #retire cette commande de la liste when "\x96" # Show Balloon #ADS # Extract Target and Balloon ID @text.sub! (/\[(\d*),(\d*)\]/, "") # If target is player if $1.to_i == 0 $game_player.balloon_id = $2.to_i else return if $game_map.events[$1.to_i] == nil $game_map.events[$1.to_i].balloon_id = $2.to_i end @text.slice!(/./) #retire cette commande de la liste when "\x98" # (Icon) #ADS @text.sub!(/\[(\d*)\]/, "") draw_icon ($1.to_i, @contents_x, @contents_y) @contents_x += 24 @text.slice!(/./) #retire cette commande de la liste else # pour le reste, sortir de la boucle et se référer au code original break end end mm_update_m end end
Les auteurs sont dans le script. Pas de capture d'écran, ça fait juste ajouter du texte et des icones... Rien de valable pour une capture.
Dernière édition par MirainoHikari le Mar 9 Juin 2009 - 17:52, édité 2 fois |
|
| |
Invité
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Mer 27 Aoû 2008 - 9:53 | |
| à mettre au dessus de main? |
|
| |
Invité
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Mer 27 Aoû 2008 - 9:58 | |
| Apprend à lire XD:
script a ajouter dans la section material au dessus du main. |
|
| |
Flibustier Lv.21
Age : 30 Inscrit le : 24/05/2008 Messages : 3234
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Jeu 11 Sep 2008 - 17:00 | |
| Donc j'utilise ce script mais j'aimerai bien que les faces des heros (\pf[0]) se trouve à 112 coordonné Y au dessus ! S'il vous plait aider moi ! Car je trouve pas la ligne à modifier ! |
|
| |
Ex-Admin-Script
Age : 42 Inscrit le : 26/05/2008 Messages : 2360
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Jeu 11 Sep 2008 - 17:07 | |
| - Code:
-
when "\x77" #MH @text.sub! (/\[(\d*)\]/, "") actor = $game_actors[$1.to_i] begin draw_face(actor.face_name, actor.face_index, 0, 0) rescue end @contents_x = 112 @restart_line = 112 Ce bout de code est celui qui affiche ton visage. Je ne me rappelle pas par coeur les paramêtres de draw_face, mais c'est lui que tu devra regarder. Je te rappelle que je préfère faire des patch que de réécrire la classe au complet pour que mon code soit compatible le plus possible avec les autres scripts que tu aurrais pu ajouter. La classe surchargée est Window_Message. Donc part de cette classe (défaut de VX) et cherche. probablement que les 0s ont un lien avec ce que tu cherches. pour ce qui est des 112, c'est la largeur pour ton image (en fait la marge pour que le texte recomence et ne soit pas par dessus l'image). Voilà, c'est les indice que je peux te donner. Regarde ça et refait signe si tu ne trouve pas (mais fait une bonne recherche avant). |
|
| |
Flibustier Lv.21
Age : 30 Inscrit le : 24/05/2008 Messages : 3234
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Jeu 18 Sep 2008 - 16:30 | |
| Nan ! Désolé j'ai modifier mais impossible avec ces commande ! Domage qu'il n'est pas ecrit => Axe_Y (sa arrangerai tous ) ! |
|
| |
Ex-Admin-Script
Age : 42 Inscrit le : 26/05/2008 Messages : 2360
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Ven 19 Sep 2008 - 1:23 | |
| Sinon, t'as toujours la possibilité d'interragire avec les images plutot que les visages... Je verrai peut-être à donner cette possibilité. |
|
| |
Flibustier Lv.21
Age : 30 Inscrit le : 24/05/2008 Messages : 3234
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Sam 27 Sep 2008 - 8:15 | |
| Ok Mais j'ai pas trop compris ! Mais t'en que ça marche ça me vas |
|
| |
Invité
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Sam 27 Sep 2008 - 18:27 | |
| Konnichi wa LaMeche. Pourquoi tu fais un UP sur ce message? |
|
| |
Flibustier Lv.21
Age : 30 Inscrit le : 24/05/2008 Messages : 3234
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Dim 28 Sep 2008 - 8:25 | |
| Ben je fait des up car j'ai extrêmement besoin de cette fonction ! Il faut impérativement que le visage soit 120 Y au dessus sinon cela me fait bugger mon jeu ! |
|
| |
Ex-Admin-Script
Age : 42 Inscrit le : 26/05/2008 Messages : 2360
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Dim 28 Sep 2008 - 18:19 | |
| Ok. Je n'ai pas le temps de le faire, mais si un scripteur veut bien le faire, ce n'est pas très compliquer. En fait, c'est de prendre la fonction d'affichage d'image plutôt que d'affichage du visage et de faire en sorte que lorsqu'un message est affiché avec une commande d'affichage (à 2 ou 4 params) l'image soit afficher au coordonées désirée. Ainsi, pas de visage même si une commande de visage est afficher. Dans environ 3 semaine, je devrais pouvoir recommencer à scripter et je le ferai à ce moment là si personne ne l'a fait. les commende \pa et \pp seront ajouter à mon script. Je verrai peut-être même à ajouter un truc pour calculer automatiqument des visages plus gros. Enfin. Donc LaMeche, patiente encore un peu. Si Blockade et jebbou ne te répondent pas, je m'occuperai de ce script après la fin du cours que je donne (soit dans environs 3 semaines, le temps que je corrige leur examen). |
|
| |
Flibustier Lv.21
Age : 30 Inscrit le : 24/05/2008 Messages : 3234
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Lun 29 Sep 2008 - 14:02 | |
| Merci beaucoup J'attendrai ! |
|
| |
Ex-Admin-Script
Age : 42 Inscrit le : 26/05/2008 Messages : 2360
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Mar 9 Juin 2009 - 17:51 | |
| Hmmm.... on ne peut pas le faire à même la fenêtre de message car on a pas de droit sur la classe screen qui affiche les images... va falloir trouver une autre méthode.
_________________________________________________________
UP: Version mise à jour. Je buche encore sur le problème que m'avais soumis LaMeche, mais au moins, maintenant, je suis compatible avec les autres scripts de messages. Une surcharge pure comme on les aime. Hier matin, ça me fendait les fesse de devoir copier coller tout ce que je voulais avoir d'un script de message à l'autre. J'ai résolu la surcharge. Donc en mettant ce script en dernier, il ne détruit pas les anciens, il ne fait qu'ajouter. La boucle ma donner du fil à retordre, mais j'y suis parvenu.
Donc, pour mettre dans votre projet, simpelement mettre dans la section material (avant le main) dans votre projet ET vous assurez qu'il n'y a pas d'autre surcharge "moins bien faite" après. S'il y a d'autre script de surcharge de message, placer celui-ci après. Ainsi, les deux scripts fonctionneront parfaitment sans s'entrenuire (car le mien s'assurera que l'autre est exécuter). |
|
| |
Habitant Lv.6
Age : 34 Inscrit le : 24/12/2009 Messages : 139
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Jeu 31 Déc 2009 - 10:21 | |
| Désolé du necropost mais quelqu'un pourrait me dire pourquoi quand je parle à un perso, quelquefois cela fait une erreur à cose de la ligne 93 : $game_message.face_name = actor.face_name |
|
| |
Maître des Duels
Age : 32 Inscrit le : 29/07/2009 Messages : 7841
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages Jeu 31 Déc 2009 - 10:41 | |
| Quelle erreur ? Tu as modifié des choses dans le script, si oui qui ? Tu as d'autres scripts ? Si oui donne nous donc la liste. |
|
| |
| Sujet: Re: [VX] Ajout de commandes de subtitution de texte pour les messages | |
| |
|
| |
| [VX] Ajout de commandes de subtitution de texte pour les messages | |
|