Nome Script:
Endline Automatico dei Messaggi
Descrizione:
Per molti risulta tedioso ogni volta calibrare i messaggi al fine di non trovarli tranciati in game, di conseguenza ho creato questo piccolo script per far mandare a capo automaticamente il testo del messaggio una volta arrivato al limite massimo di caratteri, risparmiando così un bel po' di tempo.
Autore: Sora Keyblade
Istruzioni per l'uso: Nel commento all'inizio del codice è spiegato tutto dettagliatamente
Bug e Conflitti: N/A
Script:
Spoiler
#============================================================================== # SK | Endline Automatico dei Messaggi # Autore: Sora Keyblade # Versione: 1.2 # Programma: RPG Maker VX Ace # Data: 31/12/2014 # Ultima Modifica: 06/08/2016 #------------------------------------------------------------------------------- # Descrizione: # Script ideato per Elysian Quest. # Per molti risulta tedioso ogni volta calibrare i messaggi al fine di non # trovarli tranciati in game, di conseguenza ho creato questo piccolo script # per far mandare a capo automaticamente il testo del messaggio una volta # arrivato al limite massimo di caratteri, risparmiando così un po' di tempo. #------------------------------------------------------------------------------- # Limiti dello script: # -Il tasto anteprima, presente quando si crea/modifica un messaggio, non # presenterà il messaggio modificato da questo script, ma quello base di # rpgmkr, probabilmente in futuro verrà risolto questo problema #------------------------------------------------------------------------------- # Istruzioni: # Mettete il seguente codice sotto -Materials-, con il nome che più desideri # e seguire le istruzioni della parte modificabile #------------------------------------------------------------------------------- # Termini di Uso: # -Free sia per giochi commerciali che non. # -Obbligatorio creditare "Sora Keyblade". # -Vietata l'appropriazione indebita #------------------------------------------------------------------------------- # Special Thanks: # -Holy87 # -Haru #=============================================================================== # -Inizio parte modificabile #=============================================================================== module SK # Avete presente quando volete che il testo di un messaggio sia "centrato", # così da renderlo più incisivo? Di solito questo effetto è creato con un # lavoro sulla barra spaziiatrice, ma, ahimé, questo script elimina completamente # la spaziatura "in eccesso", rendendo impossibile spostare il testo più a # destra. Per sopperire a questa mancanza ho creato un metodo # per annullare momentaneamente l'effetto dello script, così da poter "centrare" # come più vi pare il testo. # ATTENZIONE: Se userete questo metodo dovrete andare a capo manualmente per # quel messaggio! # Il processo per fare ciò è semplicissimo, dovrete modificare il valore dopo # il simbolo di uguale con un numero a vostro piacimento che andrà ad indicare # il numero di spazi minimi ad inizio messaggio necessari ad annullare l'effetto # dello script. # Esempio (valore dopo l'uguale: 2): # " Il coniglio rosso vi ucciderà nel sonno" # l'effetto dello script è annullato grazie ai due spazi ad inizio messaggio Numero_spazi_annullamento_Script=2 end #=============================================================================== # -Fine Parte Modificabile #=============================================================================== class Game_Message alias clear_sora clear def clear clear_sora end def endline(text) if face_name=="" @max_lettere=53 else @max_lettere=41 end @testo=text @contatore=0 @[email protected](" ") @testo="" for i in [email protected] if @array[i]=~/\\V\[(.+)\]/ variabile=$game_variables[$1.to_i] numero_variabile=$1 @contatore+=(@array[i].size-4-numero_variabile.to_s.size)+variabile.to_s.size+1 else @contatore+=@array[i].size+1 end if @contatore>=@max_lettere @texts.push(@testo) @testo="" if @array[i]=~/\\V\[(.+)\]/ variabile=$game_variables[$1.to_i] numero_variabile=$1 @contatore=(@array[i].size-4-numero_variabile.to_s.size)+variabile.to_s.size+1 else @contatore=@array[i].size end end @testo+=@array[i]+" " end @texts.push(@testo) end alias add_sora add def add (text) unless text=~/[ ]{#{SK::Numero_spazi_annullamento_Script},}\w+/ endline(text) else add_sora(text) end end end
Modificato da Sora Keyblade, 06 August 2016 - 18:59 PM.