AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  




Partagez
 

 Police de messages et langages

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
vincentmhd
Maire Lv.9
Maire Lv.9
vincentmhd


Masculin Age : 36
Inscrit le : 04/02/2009
Messages : 326

Police de messages et langages Empty
MessageSujet: Police de messages et langages   Police de messages et langages Icon_minitimeLun 30 Mar 2009 - 4:23

Police de messages et langages



-Introduction

Ce script permet juste de changer la police des messages.
Uniquement des messages. Avec un peu d'imagination on peut aller plus loin...

-Description
D'un point de vue script, le principe est qu'une varaible globale contiendra le nom de la police à utiliser pour le message...
tant qu'elle n'a pas de valeur spéciale, le texte est en Arial, taille 22...


Pour faire un effet de langue ou d'accent:
Plutôt que d'écrire du charabia, pour simuler une langue, vous écrirez le texte normalement, mais c'est la police.
Qui elle fera n'importe quoi, mélanger les lettres, utiliser un autre alphabet... (les idées ne manque pas)
Pour traduire, il vous suffira de retourner à une police normale.


-Le script

Code:

#==============================================================================
#
#  Vincentmhd 23/05/09
#
#
#Avant un message affectez dans un appel de script
#à $fontName le nom de la police entre guillemets
#et à $fontSize la taille de la police
#
#vous pouvez jouer alors avec les conditions
#
#Par défaut $fontName prend comme valeur "Arial"
#                $fontSize prend comme valeur 22
#Ainsi vous sauve les meubles si la police est manquante.
#pour modifier les valeurs par défaut allez à la ligne 68.
#
#Pour installer une police sur l'ordinateur du joueur dès l'installation du jeu
#Faites un dossier "Fonts" dans celui de votre projet (aux côtés de Graphics,
#Audio...). Elle s'installera automatiquement
#
#
#===========================================================================
# Surcharge de Window_Message pour changer la police
#===========================================================================
class Window_Message < Window_Selectable

  alias police_add update_message
 
  def update_message
    police_add
    loop do
      c = @text.slice!(/./m)            # Get next text character
      case c
      when nil                          # There is no text that must be drawn
        finish_message                  # Finish update
        break
      when "\x00"                      # New line
        new_line
        if @line_count >= MAX_LINE      # If line count is maximum
          unless @text.empty?          # If there is more
            self.pause = true          # Insert number input
            break
          end
        end
      when "\x01"                      # \C[n]  (text character color change)
        @text.sub!(/\[([0-9]+)\]/, "")
        contents.font.color = text_color($1.to_i)
        next
      when "\x02"                      # \G  (gold display)
        @gold_window.refresh
        @gold_window.open
      when "\x03"                      # \.  (wait 1/4 second)
        @wait_count = 15
        break
      when "\x04"                      # \|  (wait 1 second)
        @wait_count = 60
        break
      when "\x05"                      # \!  (Wait for input)
        self.pause = true
        break
      when "\x06"                      # \>  (Fast display ON)
        @line_show_fast = true
      when "\x07"                      # \<  (Fast display OFF)
        @line_show_fast = false
      when "\x08"                      # \^  (No wait for input)
        @pause_skip = true
      else                              # Normal text character
       
       
        #Ajout de Vincentmhd   

        self.contents.font.name = [$fontName, "Arial"]       
        if $fontSize == nil
          $fontSize = 22
        end
        self.contents.font.size = $fontSize
       
        contents.draw_text(@contents_x, @contents_y, 40, WLH, c)
        c_width = contents.text_size(c).width
        @contents_x += c_width
      end
      break unless @show_fast or @line_show_fast
    end
  end
  end


-Installation

Ce script n'échappe pas à la régle du "copiez en dessous de material".
Il n'a pas de nécéssité particulière.
Compatibilité optimale, puis que ce n'est que l'ajout d'une méthode...

-Utilisation


Dans l'event, inserez:
$fontName= "Nom de la police voulue avec les guillemets"
et si vous voulez:
$fontSize= le nombre voulu.

Pour l'exemple, je vais utiliser la police "Symbol", donc les personnages étrangers parleront le grec ancien...
Un simple screen vous fera tout comprendre:

Police de messages et langages 37649905

C'est ultra simple dans mon cas. La fille parle grec si vous n'avez pas le dico...

Il existe bien sûr des variantes plus intéressantes, mais elles demandent un peu plus de ressources, en termes de police.
Je ne les illustre pas dans la démo.
Pour une langue genre Al bhed:
-faites une police bien mélangée de notre alphabet ("o" = "i"...)
-garder toutes les polices intermédiaires...
et à la place de tester la présence du dico, nous allons tester dans les message, une variable "Langage".
-Incrémentez cette variable, au fur et à mesure que vous le désirez (trouver des bouquins, histoire du jeu...)
et en réalité plus cette variable sera élevée plus la police que vous utiliserez sera compréhensible...


-Démo

>> Démo v1


Voilà, c'est tout! (c'est un peu court, mais bon quand le principe est simple...)

-Crédit: Vincentmhd


Dernière édition par vincentmhd le Jeu 3 Sep 2009 - 21:22, édité 10 fois
Revenir en haut Aller en bas
MirainoHikari
Ex-Admin-Script
Ex-Admin-Script
MirainoHikari


Masculin Age : 41
Inscrit le : 26/05/2008
Messages : 2360

Police de messages et langages Empty
MessageSujet: Re: Police de messages et langages   Police de messages et langages Icon_minitimeLun 30 Mar 2009 - 19:23

Pourquoi est-ce que ton exemple me rappelle vaguement quelque chose?? Wink

Merci du partage.
Revenir en haut Aller en bas
http://mirainohikari.deviantart.com
Ngaziki
Poulet trizo Lv.3
Poulet trizo Lv.3
Ngaziki


Masculin Age : 26
Inscrit le : 10/10/2010
Messages : 41

Police de messages et langages Empty
MessageSujet: Re: Police de messages et langages   Police de messages et langages Icon_minitimeLun 1 Nov 2010 - 3:07

Probléme line 32/ NoMethodError occurred

undefined method slice!' for nil:NilClass
Revenir en haut Aller en bas
Contenu sponsorisé




Police de messages et langages Empty
MessageSujet: Re: Police de messages et langages   Police de messages et langages Icon_minitime

Revenir en haut Aller en bas
 

Police de messages et langages

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» Codes pour messages...
» Police MS Mincho
» X) police à gogo X)
» Changement de police
» Police d'écriture [Résolu]

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Tutoriels :: Astuces de maker-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit