AccueilAccueil  PortailPortail  FAQFAQ  RechercherRechercher  MembresMembres  GroupesGroupes  S'enregistrerS'enregistrer  ConnexionConnexion  




Partagez | 
 

 [VX] Fenêtre d'état des personnages

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Croisé Lv.14
Croisé Lv.14


Masculin Age : 27
Inscrit le : 03/03/2009
Messages : 1141

MessageSujet: [VX] Fenêtre d'état des personnages   Dim 28 Fév 2010 - 10:42

Auteur : RisingPhoenix

Explication script :
Ce script affiche une fenetre de statut différente que celle de base, elle donne l'impression d'être plus large

Installation : Placez ce script au dessus de Main dans Matérials

Customisation : Comme tout script de base un Windowskin différent changera le fond de plus voici les lignes pouvant être changé :

- ligne 10 :
SmallFontSize = 18 Remplacez 18 par un autre chiffre pour modifier la taille de la police(10 fera une police plus petite, 25 fera une police plus grande)


- ligne 11 :
WLH = 20 Remplacez 20 par un autre chiffre pour changer la hauteur de chaque ligne et donc l'espace entre les différentes lignes


- ligne 12 :
X_Offset = 100 Eb changeant ce chiffre vous changerez la position de l'image


- ligne 18 :
1 => "", Le 1 correspond à l'ID des personnages et pour attribuer une image, tout d'abord vous devez la mettre dans le Dossier Graphics/System de votre projet puis mettre son nom à l'intérieur des "". Par exemple on veut mettre 2 personnages :

1 => "Ralph",
2 => "Luna",



- ligne 20 :
DefaultFullPic = "" L'intérieur des "" corresponds au nom de l'image par défaut laissez vide si vous voulez pas d'avoir d'image par défaut




Screen





Date :
Février 2008


script :

Code:
#==============================================================================
# ■ RisingPhoenix_Window_Status
#------------------------------------------------------------------------------
#  Make the status window with room on the right for a large picture
#  Author: RisingPhoenix
#  Traduction par Dark Raviel à l'aide du site Reverso.
#==============================================================================

module RisingPhoenix
  SmallFontSize = 18 #Taille de la Police
  WLH = 20 #Hauteur de ligne (si vous mettez 25 par exemple et que la taille de police est 18 il y aura plus d'espace entre les lignes)
  X_Offset = 100 #Position de l'image à droite
  CharacterFullPics = Array.new
  CharacterFullPics = {
  #Image complète des personnage à mettre dans Graphics/System
  #(Try to stick to a height of 390ish, anything below that is cut off - widths can vary but the picture will be right-aligned)
  #ID du personnage => "Nom du fichier image du personnage présent dans votre dossier Graphics/System"
    1 => "",
  }
  DefaultFullPic = "" #Laissez comme ca pour qu'il n'y est aucune image par défaut.
end

class Window_Status < Window_Base
  WLH = RisingPhoenix::WLH
  #--------------------------------------------------------------------------
  # ● Object initialization
  #    actor :The actor for which the window is being made
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 0, 544, 416)
    @actor = actor
    refresh
  end
  #--------------------------------------------------------------------------
  # ● Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    if RisingPhoenix::CharacterFullPics[@actor.id] == nil
      if RisingPhoenix::DefaultFullPic != ""
        draw_status_pic(RisingPhoenix::DefaultFullPic)
      end
    elsif RisingPhoenix::CharacterFullPics[@actor.id] != ""
      draw_status_pic(RisingPhoenix::CharacterFullPics[@actor.id])
    end
    draw_actor_name(@actor, 4, 0)
    self.contents.font.size = RisingPhoenix::SmallFontSize
    draw_actor_class(@actor, 18, WLH + 4)
    draw_basic_info(4, WLH * 2 + 8)
    draw_parameters(4, WLH * 7 + 18)
    draw_equipments(4, WLH * 11 + 28)
  end
  #--------------------------------------------------------------------------
  # ● Define a function to draw the status picture
  #--------------------------------------------------------------------------
  def draw_status_pic(pic_name)
    bitmap = Cache.system(pic_name)
    rect = Rect.new(0, 0, 0, 0)
    rect.width = bitmap.width
    rect.height = bitmap.height
    x = RisingPhoenix::X_Offset
    self.contents.blt(x, 0, bitmap, rect)
    bitmap.dispose
  end
  #--------------------------------------------------------------------------
  # ● 基本情報の描画
  #    x : 描画先 X 座標
  #    y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_basic_info(x, y)
    draw_actor_level(@actor, x, y + WLH * 0)
    #draw_actor_state(@actor, x, y + WLH * 1)
    draw_exp_info(x, y + WLH * 1)
    draw_actor_hp(@actor, x, y + WLH * 3)
    draw_actor_mp(@actor, x, y + WLH * 4)
  end
  #--------------------------------------------------------------------------
  # ● 能力値の描画
  #    x : 描画先 X 座標
  #    y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_parameters(x, y)
    draw_actor_parameter(@actor, x, y + WLH * 0, 0)
    draw_actor_parameter(@actor, x, y + WLH * 1, 1)
    draw_actor_parameter(@actor, x, y + WLH * 2, 2)
    draw_actor_parameter(@actor, x, y + WLH * 3, 3)
  end
  #--------------------------------------------------------------------------
  # ● 経験値情報の描画
  #    x : 描画先 X 座標
  #    y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_exp_info(x, y)
    s1 = @actor.exp_s
    s2 = @actor.next_rest_exp_s
    s_next = sprintf(Vocab::ExpNext, Vocab::level)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y + WLH * 0, 180, WLH, Vocab::ExpTotal)
    self.contents.draw_text(x, y + WLH * 1, 180, WLH, s_next)
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y + WLH * 0, 180, WLH, s1, 2)
    self.contents.draw_text(x, y + WLH * 1, 180, WLH, s2, 2)
  end
 
  def draw_item_name(item, x, y, enabled = true)
    if item != nil
      draw_icon(item.icon_index, x, y, enabled)
      self.contents.font.color = normal_color
      self.contents.font.color.alpha = enabled ? 255 : 128
      self.contents.draw_text(x + 24, y, 172, WLH, item.name)
    end
  end
  #--------------------------------------------------------------------------
  # ● 装備品の描画
  #    x : 描画先 X 座標
  #    y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_equipments(x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 120, WLH, Vocab::equip)
    for i in 0..4
      draw_item_name(@actor.equips[i], x, y + 22 * (i + 1))
    end
  end
end

La traduction n'est que partielle puisque les phrases non traduites je n'ai pas réussi à les comprendre.

_________________
Tout Auteur Inscrit En Gras est à mettre dans Vos Crédits



Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://aigledor1989.forumpro.fr/forum.htm
 

[VX] Fenêtre d'état des personnages

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

 Sujets similaires

-
» Faire des Petits Personnages en laine???
» Liste de personnages "ponifiés" pris
» [Résolu] Création de personnages
» [Nocturne] Mise en page
» Déplacement de plusieurs personnages silmultanéments

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Scripts :: Scripts VX - RGSS2 :: Divers-
Créer un forum | © phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit | Informatique et Internet | Programmation