Fala autor: Esse script modifica a Janela de Menu do seu jogo deixando a mais bonita e simples, todos os efeitos foram criados recursos do próprio maker para que tivesse o mínimo de incompatibilidades possíveis. Alguns comandos foram recriados para que caso eles fossem usados em outros scripts não sofressem mudanças. Espero que gostem do script e que ele possa ser útil em seus projetos.
Lag: Inexistente, mínimo ou imperceptível.
Lag: Inexistente, mínimo ou imperceptível.
Incompatibilidade: Com outro script que altere a Scene_Menu.
Este script também altera informações no Window_MenuCommand,Window_Gold,Window_Base e no Window_MenuStatus.
Script:
Ruby:
#==============================================================================
# Taka Engine - Menu Plus I
# Autor: Takkun (a.k.a Faalco)
# Criado: 11/18/2014
# Version: 1.0a
#==============================================================================
# ? Instruções:
# -----------------------------------------------------------------------------
# Copie o script e cole o mesmo acima do Main de seu projeto. Pode causar
# incompatibilidade com outros scripts que modifiquem o Menu ou acresentem
# algo no mesmo (Devido a modificação das janelas).
#
#==============================================================================
#
# Esse script modifica a Janela de Menu do seu jogo deixando a mais bonita e
# simples, todos os efeitos foram criados recursos do próprio maker para que
# tivesse o mínimo de incompatibilidades possíveis. Alguns comandos foram
# recriados para que caso eles fossem usados em outros scripts não sofressem
# mudanças.
#
# Qualquer dúvida perante ao script pode ser tirada no tópico onde encontrou
# o mesmo, caso queira dar uma sugestão para melhoria ou ideia para script
# mande-me uma mensagem pessoal em umas das comunidades que atuo.
#
# ? Apenas para RPG Maker VXAce ?
#==============================================================================
($imported ||= {})["Taka_Engine_MenuPlus"] = true
#==============================================================================#
# ? Módulo de configuração do Script
#==============================================================================#
module TAKA
module MENU
#--------------------------------------------------------------------------#
# ? COnfigurações
#--------------------------------------------------------------------------#
# Fonte que irá mostrar o nome dos Heróis.
FONT_NAME = "Verdana"
# Tamanho da fonte que mostrará o nome dos Heróis
FONT_NAME_SIZE = 21
# Fonte que mostrará demais informações.
FONT_NORMAL_NAME = "Verdana"
# Tamanho da fonte que mostrará demais informações.
FONT_NORMAL_SIZE = 14
# Ícone que será mostrada na janela de Gold.
ICON_GOLD = 361
end #MENU
end #TAKA
#==============================================================================#
# ? Window_Base
#==============================================================================#
class Window_Base < Window
#--------------------------------------------------------------------------
# ? Desenho da barra de HP (Neo)
#--------------------------------------------------------------------------
def draw_actor_neohp(actor, x, y, width = 62)
draw_gauge(x, y, width, actor.hp_rate, hp_gauge_color1, hp_gauge_color2)
change_color(system_color)
draw_text(x, y, 30, line_height, Vocab::hp_a)
draw_current_and_max_values(x, y, width, actor.hp, actor.mhp,
hp_color(actor), normal_color)
end
#--------------------------------------------------------------------------
# ? Desenho da barra de MP (Neo)
#--------------------------------------------------------------------------
def draw_actor_neomp(actor, x, y, width = 62)
draw_gauge(x, y, width, actor.mp_rate, mp_gauge_color1, mp_gauge_color2)
change_color(system_color)
draw_text(x, y, 30, line_height, Vocab::mp_a)
draw_current_and_max_values(x, y, width, actor.mp, actor.mmp,
mp_color(actor), normal_color)
end
#--------------------------------------------------------------------------
# ? Desenho dos ícones de Status (Neo)
#--------------------------------------------------------------------------
def draw_neo_actor_icons(actor, x, y, width = 72)
icons = (actor.state_icons + actor.buff_icons)[0, width / 24]
icons.each_with_index {|n, i| draw_icon(n, x + 24 * i, y) }
end
#--------------------------------------------------------------------------
# ? Desenho dos grupo de Status (Neo)
#--------------------------------------------------------------------------
def draw_actor_neo_simple_status(actor, x, y)
self.contents.font.name = TAKA::MENU::FONT_NAME
self.contents.font.size = TAKA::MENU::FONT_NAME_SIZE
draw_actor_name(actor, x - 55, y - 10)
self.contents.font.name = TAKA::MENU::FONT_NORMAL_NAME
self.contents.font.size = TAKA::MENU::FONT_NORMAL_SIZE
draw_actor_level(actor, x + 35, y - 10 + line_height * 1)
draw_neo_actor_icons(actor, x + 20, y - 10)
draw_actor_class(actor, x - 55, y - 10 + line_height * 1)
draw_actor_neohp(actor, x - 55, y - 10 + line_height * 2)
draw_actor_neomp(actor, x + 27, y - 10 + line_height * 2)
end
end
#==============================================================================#
# ? Window_MenuStatus
#==============================================================================#
class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# ? Aquisição da largura da Janela
#--------------------------------------------------------------------------
def window_width
Graphics.width - 300
end
#--------------------------------------------------------------------------
# ? Aquisição da altura da Janela
#--------------------------------------------------------------------------
def window_height
Graphics.height - 70
end
#--------------------------------------------------------------------------
# ? Aquisição de altura do Item
#--------------------------------------------------------------------------
def item_height
(height - standard_padding * 2) / 4
end
#--------------------------------------------------------------------------
# ? Desenho de um Item
#--------------------------------------------------------------------------
def draw_item(index)
actor = $game_party.members[index]
enabled = $game_party.battle_members.include?(actor)
rect = item_rect(index)
draw_item_background(index)
draw_actor_graphic(actor, rect.x + 25, rect.y + 55)
draw_actor_neo_simple_status(actor, rect.x + 108, rect.y + line_height / 2)
end
end
#==============================================================================
# ? Window_MenuCommand
#==============================================================================
class Window_MenuCommand < Window_Command
#--------------------------------------------------------------------------
# ? Inicialização do objeto
#--------------------------------------------------------------------------
def initialize
super(72, 22)
select_last
end
end
#==============================================================================
# ? Window_Gold
#==============================================================================
class Window_Gold < Window_Base
#--------------------------------------------------------------------------
# ? Renovação
#--------------------------------------------------------------------------
def refresh
contents.clear
draw_currency_value(value, currency_unit, 4, 0, contents.width - 8)
icon = draw_icon(TAKA::MENU::ICON_GOLD, 0, 0)
end
end
#==============================================================================
# ? Scene_Menu
#==============================================================================
class Scene_Menu < Scene_MenuBase
#--------------------------------------------------------------------------
# ? Criação da janela de atributos
#--------------------------------------------------------------------------
def create_status_window
@status_window = Window_MenuStatus.new(232, 22)
end
#--------------------------------------------------------------------------
# ? Criação da janela de dinheiro
#--------------------------------------------------------------------------
def create_gold_window
@gold_window = Window_Gold.new
@gold_window.x = 72
@gold_window.y = 320
end
end
Engines: RPG Maker VXAce.
Créditos:
[o]Takkun por criar o script.
[o]XP por me ajudar a sanar algumas dúvidas durante a criação.