Partagez
Aller en bas
Bencoco
Bencoco
Membre

Nombre de messages : 31
Age : 29
Localisation : Alsace
Distinction : aucune
Date d'inscription : 04/03/2012

changer la police dans le texte Empty changer la police dans le texte

le Jeu 1 Nov 2012 - 15:00
Voilà comme je n'ai trouvé ça nul part je vous le propose ici,

Ce petit bout de script permet de remplacer la police dans les messages

mais l'intéret ici c'est de pouvoir rremplacer la police sur un seul mot ! avec une inifinité de possibilités de polices !

Pour celà il suffit de modifier un tout petit peu Window_Base :

Remplacer ligne 306 :

Code:
  #--------------------------------------------------------------------------
  # * Control Character Processing
  #    code : the core of the control character
  #            e.g. "C" in the case of the control character \C[1].
  #--------------------------------------------------------------------------
  def process_escape_character(code, text, pos)
    case code.upcase
    when 'C'
      change_color(text_color(obtain_escape_param(text)))
    when 'I'
      process_draw_icon(obtain_escape_param(text), pos)
    when '{'
      make_font_bigger
    when '}'
      make_font_smaller
    end
  end

Par


Code:
  #--------------------------------------------------------------------------
  # * Control Character Processing
  #    code : the core of the control character
  #            e.g. "C" in the case of the control character \C[1].
  #--------------------------------------------------------------------------
  def process_escape_character(code, text, pos)
    case code.upcase
    when 'F'
      change_font(obtain_escape_param(text))
    when 'C'
      change_color(text_color(obtain_escape_param(text)))
    when 'I'
      process_draw_icon(obtain_escape_param(text), pos)
    when '{'
      make_font_bigger
    when '}'
      make_font_smaller
    end
  end
 
  #--------------------------------------------------------------------------
  # * Changement de la police d'écriture
  #--------------------------------------------------------------------------
  def change_font(f)
    case f
    when 0
      contents.font.name = "VL_Gpthic "
    when 1
    contents.font.name =  "Votre policer"
    end
  end

Et le tour est joué ! Remplacer dans le script "Votre Police" par le nom de votre police

Pour ajouter plus de Polices, il suffit de rajouter dans change_font(f) une ligne de when :


Code:
    when 2
    contents.font.name =  "police supplémentaire"

puis lors de l'édition d'un texte il suffit d'écrire la balise \F[f] avec f le numéro de la police souhaitée et de terminer par \F[0] qui est la police de base de rpg maker :

\F[1] votre texte \F[0] pour que les mots "votre texte aient une police différente Smile :

petit exemple :

changer la police dans le texte Demo10

enjoy Smile
Devil131
Devil131
Membre

Nombre de messages : 199
Age : 22
Localisation : Sur Dead Rising 2 ou entrain de regarder The Walking Dead
Distinction : aucune
Date d'inscription : 17/05/2009
http://devil-projet.wifeo.com/

changer la police dans le texte Empty Re: changer la police dans le texte

le Jeu 1 Nov 2012 - 15:51
Ah, c'est plutôt le code qui change Smile

Je pensais pas qu'on pouvait, bravo !
tonyryu
tonyryu
Membre

Nombre de messages : 895
Age : 39
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

changer la police dans le texte Empty Re: changer la police dans le texte

le Ven 2 Nov 2012 - 12:51
2 remarques :
- Eviter de demander à l'utilisateur de modifier des scripts de base, il faut regrouper les modifications dans un seul et même script que les utilisateurs auront juste à copier et éventuellement personnaliser
- La propriété name de la classe Font est un tableau :
name
The font name. Include an array of strings to specify multiple fonts to be used in a desired order.

font.name = ["Myriad", "Verdana"]
In this example, if the higher priority font Myriad does not exist on the system, the second choice Verdana will be used instead.

The default is ["Verdana", "Arial", "Courier New"].
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum