SHARE
TWEET

Menu Variables

Holy87 Jun 24th, 2015 219 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. =begin
  2.  ==============================================================================
  3.   ■ Variabili nel menu di Holy87
  4.       versione 1.0
  5.       Difficoltà utente: ★
  6.       Licenza: CC. Chiunque può scaricare, modificare, distribuire e utilizzare
  7.       lo script nei propri progetti, sia amatoriali che commerciali. Vietata
  8.       l'attribuzione impropria.
  9.  ==============================================================================
  10.     Questo script aggiunge quante variabili desideri nella schermata del menu,
  11.     nella finestra dell'oro.
  12.  ==============================================================================
  13.   ■ Compatibilità
  14.     Window_Gold -> alias refresh
  15.  ==============================================================================
  16.   ■ Installazione e istruzioni
  17.     Installare questo script sotto Materials e prima del Main.
  18.     Configurare quante variabili vuoi nell'array VARIABLES in basso.
  19.  ==============================================================================
  20. =end
  21.  
  22. #==============================================================================
  23. # ** CONFIGURAZIONE
  24. #------------------------------------------------------------------------------
  25. #  Configura lo script
  26. #==============================================================================
  27. module MenuVariablesConfig
  28.   VARIABLES = [
  29.   #--------------------------------------------------------------------------
  30.   # * Aggiungi tante righe quante sono le variabili che vuoi e configurale come
  31.   #   da esempio.
  32.   #--------------------------------------------------------------------------
  33.   #nome mostrato  ID variabile  icona
  34.   ["Variabile A", 1,            10    ],
  35.   ["Variabile B", 2,            15    ],
  36.   ["Variabile C", 3,            20    ],
  37.   ]#non rimuovere questa parentesi
  38. end
  39.  
  40.  
  41. #==============================================================================
  42. # ** Variable_Description
  43. #------------------------------------------------------------------------------
  44. #  Contiene le informaizoni sulla variabile da mostrare
  45. #==============================================================================
  46. class Variable_Description
  47.   attr_reader :name         #nome
  48.   attr_reader :id           #id
  49.   attr_reader :icon_index   #id dell'icona
  50.   #--------------------------------------------------------------------------
  51.   # * Inizializzazione
  52.   #   var_array: array delle informazioni sulla variabile [nome, id, icona]
  53.   #--------------------------------------------------------------------------
  54.   def initialize(var_array)
  55.     @name = var_array[0]
  56.     @id = var_array[1]
  57.     @icon_index = var_array[2]
  58.   end
  59.   #--------------------------------------------------------------------------
  60.   # * Restituisce il valore della variabile
  61.   #--------------------------------------------------------------------------
  62.   def value; $game_variables[@id]; end
  63.   #--------------------------------------------------------------------------
  64.   # * Restituisce true se non ha l'icona
  65.   #--------------------------------------------------------------------------
  66.   def no_icon?; @icon_index == 0 || @icon_index.nil?; end
  67. end
  68.  
  69. #==============================================================================
  70. # ** Window_Gold
  71. #------------------------------------------------------------------------------
  72. #  Modifica della finestra per includere anche le finestre
  73. #==============================================================================
  74. class Window_Gold < Window_Base
  75.   include MenuVariablesConfig
  76.   alias h87_menuvariable_refresh refresh unless $@
  77.   #--------------------------------------------------------------------------
  78.   # * Modifica del metodo per l'altezza
  79.   #--------------------------------------------------------------------------
  80.   def fitting_height(number)
  81.     number += VARIABLES.size if SceneManager.scene.is_a?(Scene_Menu)
  82.     super(number)
  83.   end
  84.   #--------------------------------------------------------------------------
  85.   # * Refresh della finestra
  86.   #--------------------------------------------------------------------------
  87.   def refresh
  88.     if SceneManager.scene.is_a?(Scene_Menu)
  89.       contents.clear
  90.       draw_variables
  91.       draw_currency_value(value, currency_unit, 4, line_height*@variables.size, contents.width - 8)
  92.     else
  93.       h87_menuvariable_refresh
  94.     end
  95.   end
  96.   #--------------------------------------------------------------------------
  97.   # * Ottiene gli oggetti delle informazioni sulle variabili
  98.   #--------------------------------------------------------------------------
  99.   def get_variables
  100.     @variables = []
  101.     for i in 0.. VARIABLES.size-1
  102.       @variables.push(Variable_Description.new(VARIABLES[i]))
  103.     end
  104.   end
  105.   #--------------------------------------------------------------------------
  106.   # * Disegna le variabili
  107.   #--------------------------------------------------------------------------
  108.   def draw_variables
  109.     get_variables
  110.     for i in 0..@variables.size-1
  111.       var = @variables[i]
  112.       twidth = contents_width - text_size(var.value).width
  113.       twidth -= 24 unless var.no_icon?
  114.       change_color(system_color)
  115.       draw_text(0, line_height*i, twidth, line_height, var.name)
  116.       change_color(normal_color)
  117.       twidth = contents_width - (var.no_icon? ? 0 : 24)
  118.       draw_text(0, line_height*i, twidth, line_height, var.value, 2)
  119.       unless var.no_icon?
  120.         draw_icon(var.icon_index, contents_width-24, line_height*i)
  121.       end
  122.     end
  123.   end
  124. end  #fine dello script.
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top