Advanced_Window_Status
Informações
É personalizável: Sim
Necessita de objetos externos(Imagens..): Sim
Advance_Window_Status de DeadMaker é licenciado sob uma Licença Creative Commons Atribuição-Uso não-comercial-Compartilhamento pela mesma licença 3.0 Unported.
Introdução
EsteInformações
É personalizável: Sim
Necessita de objetos externos(Imagens..): Sim
Advance_Window_Status de DeadMaker é licenciado sob uma Licença Creative Commons Atribuição-Uso não-comercial-Compartilhamento pela mesma licença 3.0 Unported.
Introdução
script cria uma janela de status um tanto quanto mais bonita da
convencional, ele e de super facil modificação está tudo muito bem
explicado no proprio script ^^ ! Espero que gostem 8D !
OBSS : Não liguem para as posições caso não tenha gostado de alguma está bem explicado no script como modificar nem o design que esta um lixo =P.
Instruções
Baixe
a DEMO com as imagens, e cole o script no seu projeto, ou apenas copie
os scripts que irei postar e salve as imagens nescessarias.Devo avisar
também que dentro deste script possui uma window_base, modificada para
que desenhe somente os itens sem o nome, mas nada que venha causar
problema futuramente.
Não se esqueça de definir os status do heroi conforme a database do seu projeto nas seguintes linhas :
39 Até 42 !
Screens
Script:
Advanced_Window_Status :
- Código:
#-------------------------------------------------------------------------------
#One_Player_Advenced_Status
#-------------------------------------------------------------------------------
#Por: DeadMaker/VitorM
#Agracedimentos : Kyo Panda e Gab!
#Ajuda para desenhar somente os icones equipados sem os nomes ^^ !
#-------------------------------------------------------------------------------
#Data: 22/03/2011
#-------------------------------------------------------------------------------
#Introdução : Este script e de simples configuração até para quem não possui
#muita experiencia com o mesmo.Espero que gostem ^^ !
#-------------------------------------------------------------------------------
#Gráficos nescessarios (Pasta Pictures):
#-------------------------------------------------------------------------------
# =>Back_Status
# =>Bar_Agilidade
# =>Bar_Defesa
# =>Bar_Força
# =>Bar_Inteligencia
# =>Bar_HP
# =>Bar_MP
# =>Bar_Maxx
#-------------------------------------------------------------------------------
#Mais informações sobre o script :
# - www.junglemakers.xp3.biz
# - www.mundorpgmaker.com
# - www.santuariorpgmaker.com
#-------------------------------------------------------------------------------
#Modulo responsavel por todas configurações manuais do Scene_Status, nele você
#modifica desde as posições dos gráficos até a musica de fundo ! Super simples
#até para quem não possui conhecimento com scripts ^^ !
#-------------------------------------------------------------------------------
#Iniciando Configurações dos valores de atributo
#-------------------------------------------------------------------------------
#Lembre-se se definir os valores de acordo com o database !
#-------------------------------------------------------------------------------
module Stats
STATS = []
STATS = [
635, #=> Valor da Força
564, #=> Valor da Defesa
582, #=> Valor da Agilidade
349] #=> Valor da Inteligencia
#-------------------------------------------------------------------------------
#Posição X de Equipamentos :
#-------------------------------------------------------------------------------
EQUIPS_X = []
EQUIPS_X = [
206, #=> Posição X Arma
365, #=> Posição X Escudo
205, #=> Posição X Elmo
205, #=> Posição X Armadura
366] #=> Posição X Acessorio
#-------------------------------------------------------------------------------
#Posição Y de Equipamentos :
#-------------------------------------------------------------------------------
EQUIPS_Y = []
EQUIPS_Y = [
416, #=> Posição Y Arma
375, #=> Posição Y Escudo
333, #=> Posição Y Elmo
376, #=> Posição Y Armadura
409] #=> Posição Y Acessorio
#-------------------------------------------------------------------------------
#Posição X das bars :
#-------------------------------------------------------------------------------
BARS_X = []
BARS_X = [
56, #=> Posição X bar de HP
56, #=> Posição X bar de Força
56, #=> Posição X bar de Agilidade
56, #=> Posição X bar de Maxx
394, #=> Posição X bar de MP
394, #=> Posição X bar de Defesa
394, #=> Posição X bar de Inteligencia
306] #=> Posição X grafico do Heroi
#-------------------------------------------------------------------------------
#Posição Y das bars :
#-------------------------------------------------------------------------------
BARS_Y = []
BARS_Y = [
133, #=> Posição Y bar de HP
159, #=> Posição Y bar de Força
185, #=> Posição Y bar de Agilidade
238, #=> Posição Y bar de Maxx
133, #=> Posição Y bar de MP
159, #=> Posição Y bar de Defesa
185, #=> Posição Y bar de Inteligencia
202] #=> Posição Y grafico do Heroi
#-------------------------------------------------------------------------------
#Posição X textos :
#-------------------------------------------------------------------------------
TEXTS_X = []
TEXTS_X = [
110, #=> Posição X do valor HP
448, #=> Posição X do valor MP
110, #=> Posição X do valor Força
448, #=> Posição X do valor Defesa
110, #=> Posição X do valor Agilidade
448, #=> Posição X do valor Inteligencia
275, #=> Posição X do valor MaxStatus
313, #=> Posição X do valor ActorLevel
35, #=> Posição X do texto HP
555, #=> Posição X do texto MP
555, #=> Posição X do texto DEF
555, #=> Posição X do texto INT
29, #=> Posição X do texto STR
32, #=> Posição X do texto AGI
287, #=> Posição X do texto LV
275, #=> Posição X do texto MAX STATS
293, #=> Posição X do Nome do Heroi
274] #=> Posição X do Classe do Heroi
#-------------------------------------------------------------------------------
#Posição Y textos :
#-------------------------------------------------------------------------------
TEXTS_Y = []
TEXTS_Y = [
123, #=> Posição Y do valor HP
123, #=> Posição Y do valor MP
149, #=> Posição Y do valor Força
149, #=> Posição Y do valor Defesa
175, #=> Posição Y do valor Agilidade
175, #=> Posição Y do valor Inteligencia
228, #=> Posição Y do valor MaxStatus
190, #=> Posição Y do valor ActorLevel
123, #=> Posição Y do texto HP
123, #=> Posição Y do texto MP
149, #=> Posição Y do texto DEF
175, #=> Posição Y do texto INT
149, #=> Posição Y do texto STR
175, #=> Posição Y do texto AGI
190, #=> Posição Y do texto LV
215, #=> Posição Y do texto MAX STATS
107, #=> Posição Y do Nome do Heroi
128] #=> Posição Y do Classe do Heroi
#-------------------------------------------------------------------------------
#Musica de Fundo, caso não queira nenhuma deixe a linha assim :
# BACK_BGM = RPG::AudioFile.new("")
#-------------------------------------------------------------------------------
BACK_BGM = RPG::AudioFile.new("012-Theme01")
end
#-------------------------------------------------------------------------------
#Nota: Modifique apenas os valores acima. Evite modificar os nomes !
#-------------------------------------------------------------------------------
#Lembrando que X move as imagens ou textos na horizontal começando da esquerda
#ja quando Y as move na vertical começando de cima !
#-------------------------------------------------------------------------------
#Fim das configurações basicas.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
#Comandos principais :
#-------------------------------------------------------------------------------
class Window_Status < Window_Base
include Stats
def initialize(actor)
super(0, 0, 640, 480)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.size = 15
self.opacity = 0
self.back_opacity = 0
@actor = actor
$game_party.actors[0]
@maxfor = STATS[0]
@maxdef = STATS[1]
@maxagi = STATS[2]
@maxint = STATS[3]
$game_system.bgm_play(BACK_BGM)
@maxx = @maxfor + @maxdef + @maxagi + @maxint
@to_max = @actor.str + @actor.dex + @actor.agi + @actor.int
refresh
end
#-------------------------------------------------------------------------------
#Criando Gráficos e informações :
#-------------------------------------------------------------------------------
def refresh
self.contents.clear
#---------------------------------------------------------------------------
#Enviando ID's dos equipamentos :
#---------------------------------------------------------------------------
@data = []
@data.push($data_weapons[@actor.weapon_id])
@data.push($data_armors[@actor.armor1_id])
@data.push($data_armors[@actor.armor2_id])
@data.push($data_armors[@actor.armor3_id])
@data.push($data_armors[@actor.armor4_id])
#---------------------------------------------------------------------------
#Desenhando equipamentos :
#---------------------------------------------------------------------------
draw_item_icon(@data[0], EQUIPS_X[0], EQUIPS_Y[0])
draw_item_icon(@data[1], EQUIPS_X[1], EQUIPS_Y[1])
draw_item_icon(@data[2], EQUIPS_X[2], EQUIPS_Y[2])
draw_item_icon(@data[3], EQUIPS_X[3], EQUIPS_Y[3])
draw_item_icon(@data[4], EQUIPS_X[4], EQUIPS_Y[4])
#---------------------------------------------------------------------------
#Desenhando gráfico do heroi :
#---------------------------------------------------------------------------
draw_actor_graphic(@actor, BARS_X[7], BARS_Y[7])
#---------------------------------------------------------------------------
#Desenhando nome do heroi :
#---------------------------------------------------------------------------
draw_actor_name(@actor, TEXTS_X[16], TEXTS_Y[16])
#---------------------------------------------------------------------------
#Desenhando Classe do heroi :
#---------------------------------------------------------------------------
draw_actor_class(@actor, TEXTS_X[17], TEXTS_Y[17])
#---------------------------------------------------------------------------
#Criando barra do HP :
#---------------------------------------------------------------------------
bhp = RPG::Cache.picture("Bar_HP")
bhpwidth = bhp.width * @actor.hp/@actor.maxhp
bhpheight = bhp.height
bhp_rect = Rect.new(0,0,bhpwidth,bhpheight)
self.contents.blt(BARS_X[0],BARS_Y[0],bhp,bhp_rect)
#---------------------------------------------------------------------------
#Criando barra da Força :
#---------------------------------------------------------------------------
bforç = RPG::Cache.picture("Bar_Força")
bforçwidth = bforç.width * @actor.str/@maxfor
bforçheight = bforç.height
bforç_rect = Rect.new(0,0,bforçwidth,bforçheight)
self.contents.blt(BARS_X[1],BARS_Y[1],bforç,bforç_rect)
#---------------------------------------------------------------------------
#Criando barra da Agilidade :
#---------------------------------------------------------------------------
bagi = RPG::Cache.picture("Bar_Agilidade")
bagiwidth = bagi.width * @actor.agi/@maxagi
bagiheight = bagi.height
bagi_rect = Rect.new(0,0,bagiwidth,bagiheight)
self.contents.blt(BARS_X[2],BARS_Y[2],bagi,bagi_rect)
#---------------------------------------------------------------------------
#Criando barra do MP :
#---------------------------------------------------------------------------
bsp = RPG::Cache.picture("Bar_MP")
bspwidth = bsp.width * @actor.sp/@actor.maxsp
bspheight = bsp.height
bsp_rect = Rect.new(0,0,bspwidth,bspheight)
self.contents.blt(BARS_X[4],BARS_Y[4],bsp,bsp_rect)
#---------------------------------------------------------------------------
#Criando barra da Defesa :
#---------------------------------------------------------------------------
bdef = RPG::Cache.picture("Bar_Defesa")
bdefwidth = bdef.width * @actor.dex/@maxdef
bdefheight = bdef.height
bdef_rect = Rect.new(0,0,bdefwidth,bdefheight)
self.contents.blt(BARS_X[5],BARS_Y[5],bdef,bdef_rect)
#---------------------------------------------------------------------------
#Criando barra de Inteligencia :
#---------------------------------------------------------------------------
bint = RPG::Cache.picture("Bar_Inteligencia")
bintwidth = bint.width * @actor.int/@maxint
bintheight = bint.height
bint_rect = Rect.new(0,0,bintwidth,bintheight)
self.contents.blt(BARS_X[6],BARS_Y[6],bint,bint_rect)
#---------------------------------------------------------------------------
#Criando barra de Status Maximo :
#---------------------------------------------------------------------------
bmaxx = RPG::Cache.picture("Bar_Maxx")
bmaxxwidth = bmaxx.width * @to_max/@maxx
bmaxxheight = bmaxx.height
bmaxx_rect = Rect.new(0,0,bmaxxwidth,bmaxxheight)
self.contents.blt(BARS_X[3],BARS_Y[3],bmaxx,bmaxx_rect)
#---------------------------------------------------------------------------
#Escrevendo valores :
#---------------------------------------------------------------------------
self.contents.draw_text(TEXTS_X[0], TEXTS_Y[0], 132, 32, "#{@actor.hp} / #{@actor.maxhp}")
self.contents.draw_text(TEXTS_X[1], TEXTS_Y[1], 132, 32, "#{@actor.sp} / #{@actor.maxsp}")
self.contents.draw_text(TEXTS_X[2], TEXTS_Y[2], 132, 32, "#{@actor.str} / #{@maxfor}")
self.contents.draw_text(TEXTS_X[3], TEXTS_Y[3], 132, 32, "#{@actor.dex} / #{@maxdef}")
self.contents.draw_text(TEXTS_X[4], TEXTS_Y[4], 132, 32, "#{@actor.agi} / #{@maxagi}")
self.contents.draw_text(TEXTS_X[5], TEXTS_Y[5], 132, 32, "#{@actor.int} / #{@maxint}")
self.contents.draw_text(TEXTS_X[6], TEXTS_Y[6], 132, 32, "#{@to_max} / #{@maxx}")
self.contents.draw_text(TEXTS_X[7], TEXTS_Y[7], 132, 32, "#{@actor.level}")
self.contents.font.color = system_color
#---------------------------------------------------------------------------
#Escrevendo textos :
#---------------------------------------------------------------------------
self.contents.draw_text(TEXTS_X[8], TEXTS_Y[8], 132, 32, "HP")
self.contents.draw_text(TEXTS_X[9], TEXTS_Y[9], 132, 32, "MP")
self.contents.draw_text(TEXTS_X[10], TEXTS_Y[10], 132, 32, "DEF")
self.contents.draw_text(TEXTS_X[11], TEXTS_Y[11], 132, 32, "INT")
self.contents.draw_text(TEXTS_X[12], TEXTS_Y[12], 132, 32, "STR")
self.contents.draw_text(TEXTS_X[13], TEXTS_Y[13], 132, 32, "AGI")
self.contents.draw_text(TEXTS_X[14], TEXTS_Y[14], 132, 32, "LV")
self.contents.draw_text(TEXTS_X[15], TEXTS_Y[15], 132, 32, "MAX STATS")
end
end
#-------------------------------------------------------------------------------
# Scene_Status
#-------------------------------------------------------------------------------
# Esta janela exibe o Status
#-------------------------------------------------------------------------------
class Scene_Status
#-----------------------------------------------------------------------------
# Inicialização dos Objetos
#
# actor_index : índice do Herói
#-----------------------------------------------------------------------------
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
end
#-----------------------------------------------------------------------------
# Processamento Principal
#-----------------------------------------------------------------------------
def main
@window_stats = Sprite.new
@window_stats.bitmap = RPG::Cache.picture("Back_Status")
@actor = $game_party.actors[@actor_index]
@status_window = Window_Status.new(@actor)
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@status_window.dispose
end
#-----------------------------------------------------------------------------
# Atualização do frame
#-----------------------------------------------------------------------------
def update
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$game_system.bgm_fade(1500)
$game_system.bgm_stop
$scene = Scene_Menu.new(3)
return
end
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
@actor_index += 1
@actor_index %= $game_party.actors.size
$scene = Scene_Status.new(@actor_index)
return
end
if Input.trigger?(Input::L)
$game_system.se_play($data_system.cursor_se)
@actor_index += $game_party.actors.size - 1
@actor_index %= $game_party.actors.size
$scene = Scene_Status.new(@actor_index)
return
end
end
end
#-------------------------------------------------------------------------------
#Fim do Script
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
#Window_Base modificado :
#-------------------------------------------------------------------------------
class Window_Base < Window
#-----------------------------------------------------------------------------
# Inicialização dos Objetos
#
# x : coordenada x da janela
# y : coordenada y da janela
# width : largura da janela
# height : altura da janela
#-----------------------------------------------------------------------------
def initialize(x, y, width, height)
super()
@windowskin_name = $game_system.windowskin_name
self.windowskin = RPG::Cache.windowskin(@windowskin_name)
self.x = x
self.y = y
self.width = width
self.height = height
self.z = 100
end
#-----------------------------------------------------------------------------
# Exibição
#-----------------------------------------------------------------------------
def dispose
# Exibir se um bitmap for definido
if self.contents != nil
self.contents.dispose
end
super
end
#-----------------------------------------------------------------------------
# Selcionar Cor do Texto
#
# n : número da cor do texto (0-7)
# (Se quiser alterar, utilize o mesmo padrão (R,G,B, o último é a Gama)
#-----------------------------------------------------------------------------
def text_color(n)
case n
when 0
return Color.new(255, 255, 255, 255)
when 1
return Color.new(128, 128, 255, 255)
when 2
return Color.new(255, 128, 128, 255)
when 3
return Color.new(128, 255, 128, 255)
when 4
return Color.new(128, 255, 255, 255)
when 5
return Color.new(255, 128, 255, 255)
when 6
return Color.new(255, 255, 128, 255)
when 7
return Color.new(192, 192, 192, 255)
else
normal_color
end
end
#-----------------------------------------------------------------------------
# Definir cor normal do texto (neste caso branca)
#-----------------------------------------------------------------------------
def normal_color
return Color.new(255, 255, 255, 255)
end
#-----------------------------------------------------------------------------
# Desabilitar Cor do Texto
#-----------------------------------------------------------------------------
def disabled_color
return Color.new(255, 255, 255, 128)
end
#-----------------------------------------------------------------------------
# Definir Cor do Texto do Sistema
#-----------------------------------------------------------------------------
def system_color
return Color.new(192, 224, 255, 255)
end
#-----------------------------------------------------------------------------
# Definir Cor do Texto do Crítico (neste caso amarela)
#-----------------------------------------------------------------------------
def crisis_color
return Color.new(255, 255, 64, 255)
end
#-----------------------------------------------------------------------------
# Difinir Cor do Texto do Dano (neste caso vermelha)
#-----------------------------------------------------------------------------
def knockout_color
return Color.new(255, 64, 0)
end
#-----------------------------------------------------------------------------
# Atualização do Frame
#-----------------------------------------------------------------------------
def update
super
# Resetar se uma Windowskin for alterada
if $game_system.windowskin_name != @windowskin_name
@windowskin_name = $game_system.windowskin_name
self.windowskin = RPG::Cache.windowskin(@windowskin_name)
end
end
#-----------------------------------------------------------------------------
# Desenhar Gráfico
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
#-----------------------------------------------------------------------------
def draw_actor_graphic(actor, x, y)
bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
cw = bitmap.width / 4
ch = bitmap.height / 4
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
end
#-----------------------------------------------------------------------------
# Desenhar Nome
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
#-----------------------------------------------------------------------------
def draw_actor_name(actor, x, y)
self.contents.font.color = normal_color
self.contents.draw_text(x, y, 120, 32, actor.name)
end
#-----------------------------------------------------------------------------
# Desenhar Classe
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
#-----------------------------------------------------------------------------
def draw_actor_class(actor, x, y)
self.contents.font.color = normal_color
self.contents.draw_text(x, y, 236, 32, actor.class_name)
end
#-----------------------------------------------------------------------------
# Desenhar Nível
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
#-----------------------------------------------------------------------------
def draw_actor_level(actor, x, y)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 32, 32, "Lv")
self.contents.font.color = normal_color
self.contents.draw_text(x + 32, y, 24, 32, actor.level.to_s, 2)
end
#-----------------------------------------------------------------------------
# Criar String de Status para Desenhar
#
# actor : Herói
# width : Desenhar o comprimento
# need_normal : Quer seja, ou não [Normal], need= verdadeiro ou falso
#-----------------------------------------------------------------------------
def make_battler_state_text(battler, width, need_normal)
brackets_width = self.contents.text_size("[]").width
text = ""
for i in battler.states
if $data_states[i].rating >= 1
if text == ""
text = $data_states[i].name
else
new_text = text + "/" + $data_states[i].name
text_width = self.contents.text_size(new_text).width
if text_width > width - brackets_width
break
end
text = new_text
end
end
end
if text == ""
if need_normal
text = "[Normal]"
end
else
text = "[" + text + "]"
end
return text
end
#-----------------------------------------------------------------------------
# Desenhar Status
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
# width : Desenhar o comprimento
#-----------------------------------------------------------------------------
def draw_actor_state(actor, x, y, width = 120)
text = make_battler_state_text(actor, width, true)
self.contents.font.color = actor.hp == 0 ? knockout_color : normal_color
self.contents.draw_text(x, y, width, 32, text)
end
#-----------------------------------------------------------------------------
# Desenhar EXP
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
#-----------------------------------------------------------------------------
def draw_actor_exp(actor, x, y)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 24, 32, "E")
self.contents.font.color = normal_color
self.contents.draw_text(x + 24, y, 84, 32, actor.exp_s, 2)
self.contents.draw_text(x + 108, y, 12, 32, "/", 1)
self.contents.draw_text(x + 120, y, 84, 32, actor.next_exp_s)
end
#-----------------------------------------------------------------------------
# Desenhar HP
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
# width : Desenhar comprimento
#-----------------------------------------------------------------------------
def draw_actor_hp(actor, x, y, width = 144)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 32, 32, $data_system.words.hp)
if width - 32 >= 108
hp_x = x + width - 108
flag = true
elsif width - 32 >= 48
hp_x = x + width - 48
flag = false
end
self.contents.font.color = actor.hp == 0 ? knockout_color :
actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
self.contents.draw_text(hp_x, y, 48, 32, actor.hp.to_s, 2)
if flag
self.contents.font.color = normal_color
self.contents.draw_text(hp_x + 48, y, 12, 32, "/", 1)
self.contents.draw_text(hp_x + 60, y, 48, 32, actor.maxhp.to_s)
end
end
#-----------------------------------------------------------------------------
# Desenhar MP
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
# width : Desenhar comprimento
#-----------------------------------------------------------------------------
def draw_actor_sp(actor, x, y, width = 144)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 32, 32, $data_system.words.sp)
if width - 32 >= 108
sp_x = x + width - 108
flag = true
elsif width - 32 >= 48
sp_x = x + width - 48
flag = false
end
self.contents.font.color = actor.sp == 0 ? knockout_color :
actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
self.contents.draw_text(sp_x, y, 48, 32, actor.sp.to_s, 2)
if flag
self.contents.font.color = normal_color
self.contents.draw_text(sp_x + 48, y, 12, 32, "/", 1)
self.contents.draw_text(sp_x + 60, y, 48, 32, actor.maxsp.to_s)
end
end
#-----------------------------------------------------------------------------
# Desenhar Parâmetro
#
# actor : Herói
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
# width : Desenhar comprimento
# type : tipo de parâmetro (0-6)
#-----------------------------------------------------------------------------
def draw_actor_parameter(actor, x, y, type)
case type
when 0
parameter_name = $data_system.words.atk
parameter_value = actor.atk
when 1
parameter_name = $data_system.words.pdef
parameter_value = actor.pdef
when 2
parameter_name = $data_system.words.mdef
parameter_value = actor.mdef
when 3
parameter_name = $data_system.words.str
parameter_value = actor.str
when 4
parameter_name = $data_system.words.dex
parameter_value = actor.dex
when 5
parameter_name = $data_system.words.agi
parameter_value = actor.agi
when 6
parameter_name = $data_system.words.int
parameter_value = actor.int
end
self.contents.font.color = system_color
self.contents.draw_text(x, y, 120, 32, parameter_name)
self.contents.font.color = normal_color
self.contents.draw_text(x + 120, y, 36, 32, parameter_value.to_s, 2)
end
#-----------------------------------------------------------------------------
# Desenhar Nome do Item
#
# item : Item
# x : Desenhar a partir da coordenada x
# y : Desenhar a partir da coordenada y
#-----------------------------------------------------------------------------
def draw_item_name(item, x, y)
if item == nil
return
end
bitmap = RPG::Cache.icon(item.icon_name)
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24))
self.contents.font.color = normal_color
self.contents.draw_text(x + 28, y, 212, 32, item.name)
end
def draw_item_icon(item, x, y)
if item == nil
return
end
bitmap = RPG::Cache.icon(item.icon_name)
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24))
end
end
Complementos
Spoiler :
Back_Status (Pictures)
Bar_Agilidade (Pictures)
Bar_Força (Pictures)
Bar_Defesa (Pictures)
Bar_Inteligencia (Pictures)
Bar_HP (Pictures)
Bar_MP (Pictures)
Bar_Maxx (Pictures)
Donwload
Link :: 4Shared
Créditos
Kyo Panda e Gab por terem a paciencia de ajudar sempre quando preciso brigadao ^^ !!