Demo – Version 1.6 >
NOTE: This script requires images from the demo.
#------------------------------------------------------------------------------#
# Galv's Menu Themes Engine
#------------------------------------------------------------------------------#
# For: RPGMAKER VX ACE
# Version 1.6
#------------------------------------------------------------------------------#
# NOTICE: This script is NOT free for commercial use.
# Contact Galv via PM at one of the following forums:
# http://www.rpgmakervxace.net/
# http://forums.rpgmakerweb.com/
#------------------------------------------------------------------------------#
#------------------------------------------------------------------------------#
# 2013-06-27 - Version 1.6 - compatibility fix for xp rate
# 2013-06-11 - Version 1.5 - bug fixed with help menu text on incorrect menu
# 2013-06-09 - Version 1.4 - bug missed with last fix... now fixed. I hope.
# 2013-06-08 - Version 1.3 - fixed bug with hidden menu items
# - made disabled buttons text transparent
# 2013-04-16 - Version 1.2 - fixed a graphic object bug. Also included
# - Killozappit's Cache Back script in the demo to
# - help with lag on slower computers.
# 2013-04-15 - Version 1.1 - fixed a bug with using items/skills on actors
# 2013-04-15 - Version 1.0 - release
#------------------------------------------------------------------------------#
# This script replaces the default menu and thus will not be compatible with
# other scripts that do the same. The new changes to the menu offer a few
# things such as:
# - Image controlled menu scenes (including moving backgrounds)
# - 'Themes' allow you to customize the look of the menu and change it in game
# - Other scenes can change with theme (eg. item, equip, custom scenes, etc.)
# - Customisable menu commands (icons, visibility switches, order, vocab)
# - Animated (sliding) commands
# - Help window for selected command
# - Information bar with gold, current location and play time
# - Modified actor status to include exp and tp (for actors with preserve tp)
#------------------------------------------------------------------------------#
#-------------------------------------------------------------------------------
# SCRIPT CALL
#-------------------------------------------------------------------------------
#
# theme("Theme_Name") # Changes your menu theme to use the specified one.
#
#-------------------------------------------------------------------------------
($imported ||= {})["Galv_Menu_Themes"] = true
module GMENU
COMMAND_LIST = [ # don't touch
#-------------------------------------------------------------------------------
#
# * MENU - COMMAND SETUP
#
#-------------------------------------------------------------------------------
# Below list is your in-game menu commands. This replaces the database vocab
# names and adds more control over customizing your game menu.
#-------------------------------------------------------------------------------
# ["Menu Text", :command_type, :Scene, switch1, switch2, help txt, icon]
["Items", :cmd, :Scene_Item, 0, 0, "View or use items from your inventory.",270],
["Skills", :sel, :Scene_Skill, 0, 0, "View or use character skills.",112],
["Equip", :sel, :Scene_Equip, 0, 0, "Equip your characters with weapons and armor.",170],
["Status", :sel, :Scene_Status, 0, 0, "View status of your characters.",117],
["Formation", :sel, :Formation, 0, 0, "Change your character order",121],
["Save", :cmd, :Scene_Save, 0, 0, "Record your game progress.",224],
["Game End", :cmd, :Scene_End, 0, 0, "End or restart the game.",6],
["Example1",:cmd, 1, 0, 0, "Example command - calls common event 1",278],
["Example2",:cmd, 1, 0, 0, "Example command - calls common event 1",278],
# Here are examples of adding functionality via script. The script code for
# these examples is in the "Example Script Commands" script in the list.
#["Gold!", :cmd, :custom1, 0, 0, "Scripted custom symbol example",280],
#["Levelup!", :sel, :custom2, 0, 0, "Scripted custom symbol on actor select example",290],
#-------------------------------------------------------------------------------
] # don't touch
#-------------------------------------------------------------------------------
# INSTRUCTIONS
#-------------------------------------------------------------------------------
# "Menu Text"........ the text used for the menu item
# :command_type...... :cmd - goes to the scene when menu item accessed.
# :sel - select actor before going to the scene.
# scene.............. name of the scene as a symbol. eg. :Scene_Item (*)
# make this a number instead to call a common event.
# switch1............ if switch is OFF, item is disabled. 0 to not use
# switch2............ if switch is OFF, item will not appear. 0 to not use
# help txt........... text that appears at the top of the menu screen
# icon............... the icon id to use an icon next to your menu command
#-------------------------------------------------------------------------------
# (*) Scripters can use a custom symbol here to do other functions by aliasing
# or overwriting methods found on
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
#
# * MENU SETTINGS
#
#-------------------------------------------------------------------------------
SHOW_TP = true # Show TP if actor has 'preserve tp' feature true or false
ACTORS_SHOWN = 4 # Number of actors visible in the menu before scrolling
DEFAULT_THEME = "Theme_Default" # The theme your game will use to begin.
#-------------------------------------------------------------------------------
# THEME SETUP - DEFAULT THEME
#-------------------------------------------------------------------------------
module Theme_Default
# Gerenal Options
FONT = "Arial" # Font used throughout theme.
FONT_SIZE = 21 # Font size used throughout theme.
WINDOW_TONE = [22,52,72,0] # Color tone of scenes that use windowskins
# Background
BACK1_XY = [1,1] # X,Y movement for background1 (default stars)
BACK1_OPACITY = 190 # Background opacity
BACK2_XY = [0,0] # X,Y movement for background2 (default top bar)
BACK2_OPACITY = 255 # Background opacity
BACK3_XY = [0,0] # X,Y movement for background2 (default bottom bar)
BACK3_OPACITY = 255 # Background opacity
SCENE_BACK_OPACITY = 255 # Background opacity for other scene background
# Command Menu
MENU_FONT = "Arial" # Different font used for the menu text
MENU_FONT_SIZE = 21 # Size of menu text
MENU_TXT_COLOR = Color.new(255, 255, 255, 255) # Color of menu text
MENU_TXT_OUT = Color.new(27, 57, 97, 255) # Color of menu text outline
MENU_TXT_XY = [0,-2] # X,Y offset for text in command menu
MENU_ICON_XY = [35,1] # X,Y offset for icons in command menu
SLIDE_ICON = true # true or false to slide icon with menu text
SLIDE_SPEED = 5 # Speed the menu buttons slide in and out
SLIDE_OFF = -30 # X Position of button when cursor not on it
SLIDE_ON = 0 # X Position of button when cursor is on it
MENU_Y_OFFSET = 45 # Distance Y from top of screen
MENU_WIDTH = 170 # Width reserved for the main menu.
# Help Window
HELP_XY = [44,2] # X,Y offset for help text
HELP_TEXT_COLOR = Color.new(200, 235, 255, 255) # Color of help text
# Game Info Window
INFO_XY = [0,0] # X,Y offset for info text
GAME_INFO_TXT_COLOR = Color.new(200, 235, 255, 255) # Game Info text color
CURRENCY_ICON = 262 # Icon used instead of currency vocab. 0 = vocab
# Actor Status
STAT_COLOR = Color.new(167, 223, 248, 255) # Color used for lvl,hp,mp
GAUGEB_COLOR = Color.new(20, 20, 20, 255) # Color of gauge backs
HP_COLOR1 = Color.new(74, 197, 61, 255) # Color for hp gauge gradient
HP_COLOR2 = Color.new(169, 206, 89, 255)# Color for hp gauge gradient
MP_COLOR1 = Color.new(5, 132, 179, 255) # Color for mp gauge gradient
MP_COLOR2 = Color.new(40, 197, 255, 255)# Color for mp gauge gradient
XP_COLOR1 = Color.new(88, 147, 174, 255) # Color for xp gauge gradient
XP_COLOR2 = Color.new(133, 181, 203, 255)# Color for xp gauge gradient
TP_COLOR1 = Color.new(255, 166, 12, 255) # Color for tp gauge gradient
TP_COLOR2 = Color.new(255, 126, 12, 255)# Color for tp gauge gradient
GAUGE_FONT = "VL Gothic Regular" # Font used for hp/mp and amounts.
end
#-------------------------------------------------------------------------------
# CUSTOM THEMES
#-------------------------------------------------------------------------------
# You can make your own custom menu themes and swap between them during the
# game or make them available for others to use. Each theme has it's own folder
# in your project located in /Graphics/GMenu/Theme_Name/
# For example the default theme is:
# /Graphics/GMenu/Theme_Default/
#
# HOW TO MAKE A THEME:
# 1. Make a duplicate of the /Theme_Default/ folder and rename it.
# 2. Modify the graphics how you see fit, using the default as templates
# 3. (Optional) You can use the theme_settings.txt file found in the template
# folder to create new settings for the theme. Copy the script from the
# file and paste it a new script position below this menu script. Change
# "Theme_Default" at the top to the name of your theme's folder.
# 4. If you did that right, now in your game, you can use the script call:
# theme("Theme_Name")
# To change your menu theme during the game to any theme you have installed.
#
# If you do not create your own settings script (step 3) for your custom theme,
# it will use the settings from Theme_Default.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# THEME SETUP - INNER SCENES
#-------------------------------------------------------------------------------
# Inner scenes (such as item, equip, skills etc) can use the same Background
# (using BACK1 setting) as well as windowskin used in the current theme.
# List scenes below that you wish for this to occur.
#-------------------------------------------------------------------------------
SCENE_THEMES = [ # don't touch
#-------------------------------------------------------------------------------
"Scene_Item",
"Scene_Skill",
"Scene_Equip",
"Scene_Status",
"Scene_Save",
"Scene_End",
"Scene_Party",
"Scene_System",
"Scene_Load",
#"Scene_File",
#"Scene_Load",
#"Scene_Shop",
#"Scene_Name",
#"Scene_Gameover",
#"Scene_Title",
#-------------------------------------------------------------------------------
] # don't touch
#-------------------------------------------------------------------------------
# In addition to this, the script will check the theme folder for any images.
# with the scene name (above) followed by "_Background" and "_Background2".
# For example if the following file is found in the theme folder:
# Scene_Item_Background.png (or jpg)
# It will use that image INSTEAD of Background.jpg for Background1. It will
# also look for Scene_Item_Background2.png (or jpg) which will appear above
# the first background. This background is static and does not move.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
#
# * END SETTINGS
#
#-------------------------------------------------------------------------------
end # GMENU
module Check_Theme
def mtheme
Object.const_get("GMENU").const_get($game_system.menu_theme) rescue
GMENU::Theme_Default
end
end # Check_Theme
#----------------------#
#---| GAME_INTERPERTER |----------------------------------------------------
#----------------------#
class Game_Interpreter
def theme(name)
$game_system.menu_theme = name
end
end # Game_Interpreter
#-----------#
#---| CACHE |---------------------------------------------------------------
#-----------#
module Cache
def self.gmenu(filename,theme)
load_bitmap("Graphics/GMenu/" + theme + "/", filename)
end
end # Cache
#-----------------#
#---| GAME_SYSTEM |---------------------------------------------------------
#-----------------#
class Game_System
attr_accessor :menu_theme
alias gmenu_engine_gs_initialize initialize
def initialize
@menu_theme = GMENU::DEFAULT_THEME
gmenu_engine_gs_initialize
end
end # Game_System
#---------------#
#---| GAME_TEMP |-----------------------------------------------------------
#---------------#
class Game_Temp
attr_accessor :themed_scene
attr_accessor :menuindexes
alias gmenu_engine_gt_initialize initialize
def initialize
@themed_scene = false
gmenu_engine_gt_initialize
end
end # Game_Temp
#----------------#
#---| GAME_ACTOR |----------------------------------------------------------
#----------------#
class Game_Actor < Game_Battler
def xp_rate
a = (exp.to_f - current_level_exp.to_f)
b = (next_level_exp.to_f - current_level_exp.to_f)
if exp > 0 && b > 0
return a / b
else
return 0
end
end
end # Game_Actor < Game_Battler
#----------------#
#---| SCENE_MENU |----------------------------------------------------------
#----------------#
class Scene_Menu < Scene_MenuBase
attr_accessor :command_window
include Check_Theme
# OVERWRITE
def start
super
create_graphics
create_help_window
create_new_command_window
create_gameinfo_window
create_status_window
end
#---| CREATE WINDOWS |
def create_help_window
@help_window = Window_MenuHelp.new
end
# OVERWRITE
def create_status_window
@status_window = Window_MainMenuStatus.new(@command_window.width,
@help_window.height,Graphics.height - @help_window.height -
@gameinfo_window.height)
end
# OVERWRITE
def create_new_command_window
@command_window = Window_MenuCommand.new(0,@help_window.height)
@command_window.help_window = @help_window
menu_array = Array.new(GMENU::COMMAND_LIST)
menu_array.each { |cmd|
handle = cmd[0].delete(' ').downcase.to_sym
@command_window.set_handler(handle, method(cmd[1]))
}
@command_window.set_handler(:cancel, method(:return_scene))
end
def create_gameinfo_window
@gameinfo_window = Window_GameInfo.new
@gameinfo_window.x = 0
@gameinfo_window.y = Graphics.height - @gameinfo_window.height
end
#---| CREATE GRAPHICS |
def create_graphics
create_background2
create_background3
end
def create_background2
@background2 = Plane.new
@background2.bitmap = Cache.gmenu("Background2",$game_system.menu_theme)
@background2.opacity = mtheme::BACK2_OPACITY
end
def create_background3
@background3 = Plane.new
@background3.bitmap = Cache.gmenu("Background3",$game_system.menu_theme)
@background3.opacity = mtheme::BACK3_OPACITY
@background3.oy = -Graphics.height
end
#---| UPDATING |
def update
super
update_background2
update_background3
update_gameinfo
end
def update_background2
@background2.ox -= mtheme::BACK2_XY[0]
@background2.oy -= mtheme::BACK2_XY[1]
end
def update_background3
@background3.ox -= mtheme::BACK3_XY[0]
@background3.oy -= mtheme::BACK3_XY[1]
end
def update_gameinfo
@gameinfo_window.refresh
end
#---| FUNCTIONALITY |
alias gmenu_engine_sm_dispose_background dispose_background
def dispose_background
gmenu_engine_sm_dispose_background
if @background2
@background2.bitmap.dispose
@background2.dispose
end
if @background3
@background3.bitmap.dispose
@background3.dispose
end
end
def cmd
cmd = $game_temp.menuindexes[@command_window.index]
symbol = GMENU::COMMAND_LIST[cmd][2]
if GMENU::COMMAND_LIST[cmd][2].is_a?(Integer)
common_event_command(GMENU::COMMAND_LIST[cmd][2])
elsif custom_symbol(symbol)
custom_on_command_ok(symbol)
else
SceneManager.call(GMENU::COMMAND_LIST[cmd][2])
end
end
def common_event_command(id)
$game_temp.reserve_common_event(id)
SceneManager.return
end
def sel
command_personal
end
# OVERWRITE
def command_personal
@status_window.select_last
@status_window.activate
@status_window.set_handler(:ok, method(:on_personal_ok))
@status_window.set_handler(:cancel, method(:on_personal_cancel))
end
# OVERWRITE
def on_personal_ok
cmd = $game_temp.menuindexes[@command_window.index]
symbol = GMENU::COMMAND_LIST[cmd][2]
if symbol == :Formation
on_formation_ok
elsif custom_symbol(symbol)
custom_on_personal_ok(symbol)
else
SceneManager.call(symbol)
end
end
def custom_symbol(symbol)
# Alias/overwrite this method for custom symbols.
# Make this method return true if symbol equals your custom symbol.
end
def custom_on_command_ok(symbol)
# Alias/overwrite this method for custom symbols. (For 'ok' on command)
# Add your functionality here including if symbol equals your custom symbol.
end
def custom_on_personal_ok(symbol)
# Alias/overwrite this method for custom symbols. (For 'ok' on actor)
# Add your functionality here including if symbol equals your custom symbol.
end
def custom_on_personal_cancel(symbol)
# Alias/overwrite this method for custom symbols. (Cancelling on actor)
# Add your cancel code here including if symbol equals your custom symbol.
end
# OVERWRITE
def on_personal_cancel
cmd = @command_window.index
symbol = GMENU::COMMAND_LIST[cmd][2]
if symbol == :Formation
on_formation_cancel
elsif custom_symbol(symbol)
custom_on_personal_cancel(symbol)
else
@status_window.unselect
@command_window.activate
end
end
end # Scene_Menu < Scene_MenuBase
#------------------------#
#---| WINDOW_MENUCOMMAND |--------------------------------------------------
#------------------------#
class Window_MenuCommand < Window_Command
#OVERWRITE
def initialize(x,y)
@menu_buttons = []
super(x, y)
select_last
self.opacity = 0
end
def draw_item(index)
@menu_buttons << MenuBtn.new(@viewport,index)
end
def visible_line_number
item_max
end
def window_width
return mtheme::MENU_WIDTH
end
def update
super
@menu_buttons.each { |btn| btn.update(index) }
end
def dispose
@menu_buttons.each { |btn| btn.dispose }
super
end
def update_cursor
if @cursor_all
cursor_rect.empty
self.top_row = 0
elsif @index < 0
cursor_rect.empty
else
ensure_cursor_visible
cursor_rect.empty
end
end
def add_new_main_commands
$game_temp.menuindexes = []
menu_array = Array.new(GMENU::COMMAND_LIST)
menu_array.each_with_index { |cmd,i|
next if cmd[4] > 0 && !$game_switches[cmd[4]]
$game_temp.menuindexes << i
text = cmd[0]
active = get_active(cmd[2],cmd[3])
handle = cmd[0].delete(' ').downcase.to_sym
add_command(text, handle, active)
}
end
def get_active(symbol,switch)
return false if switch > 0 && !$game_switches[switch]
case symbol
when :Formation
formation_enabled
when :Scene_Save
save_enabled
else
main_commands_enabled
end
end
def make_command_list
add_new_main_commands
end
end # Window_MenuCommand < Window_Command
#----------------------#
#---| WINDOW_MENUSTATUS |----------------------------------------------------
#----------------------#
class Window_MainMenuStatus < Window_MenuStatus
include Check_Theme
def initialize(x, y, h = 0)
@height = h
super(x, y)
self.opacity = 0
end
def window_width
Graphics.width - mtheme::MENU_WIDTH
end
def standard_padding
return 6
end
def window_height
@height
end
def item_height
(@height - 12) / GMENU::ACTORS_SHOWN
end
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_back_graphics(index,item_height,item_width,enabled)
draw_gface(actor.face_name,actor.face_index,rect.x + 1,rect.y + 1,
item_height - 2,enabled)
draw_gsimple_status(actor, rect.x + 108, rect.y, item_height)
end
end
#--------------------#
#---| WINDOW_MENUHELP |------------------------------------------------------
#--------------------#
class Window_MenuHelp < Window_Help
include Check_Theme
def initialize
super(1)
self.opacity = 0
end
def standard_padding
return 6
end
def clear
ind = $game_temp.menuindexes[SceneManager.scene.command_window.index]
set_text(GMENU::COMMAND_LIST[ind][5])
end
def refresh
contents.clear
draw_text_ex(mtheme::HELP_XY[0], mtheme::HELP_XY[1], @text)
end
def draw_text_ex(x, y, text)
reset_font_settings
change_color(mtheme::HELP_TEXT_COLOR)
self.contents.font.name = mtheme::FONT
self.contents.font.size = mtheme::FONT_SIZE
text = convert_escape_characters(text)
pos = {:x => x, :y => y, :new_x => x, :height => calc_line_height(text)}
process_character(text.slice!(0, 1), text, pos) until text.empty?
end
end
#---------------------#
#---| WINDOW_GAMEINFO |-----------------------------------------------------
#---------------------#
class Window_GameInfo < Window_Base
include Check_Theme
def initialize
super(0, 0, Graphics.width, fitting_height(1))
self.opacity = 0
refresh
end
def standard_padding
return 6
end
def refresh
contents.clear
self.contents.font.name = mtheme::FONT
self.contents.font.size = mtheme::FONT_SIZE
draw_gld
draw_location
draw_playtime
end
def draw_gld
value = $game_party.gold
if mtheme::CURRENCY_ICON > 0
i = draw_icon(mtheme::CURRENCY_ICON, contents.width / 4 - 43, -1, true)
draw_currency_value(value,i,tx+4,ty,contents.width / 4 - 45)
else
draw_currency_value(value,Vocab::currency_unit,tx+4,ty,contents.width / 4 - 18)
end
end
def tx
mtheme::INFO_XY[0]
end
def ty
mtheme::INFO_XY[1]
end
def draw_location
change_color(mtheme::GAME_INFO_TXT_COLOR)
draw_text(tx,ty,Graphics.width,line_height,$game_map.display_name,1)
end
def draw_playtime
draw_text(tx,ty,Graphics.width - 20,line_height,time_text,2)
end
def time_text
sprintf("%02d:%02d:%02d", (Graphics.frame_count / 60**2) / 60,
Graphics.frame_count / 60**2 % 60,
Graphics.frame_count / 60 % 60)
end
def draw_currency_value(value, unit, x, y, width)
cx = text_size(unit).width
change_color(mtheme::GAME_INFO_TXT_COLOR)
draw_text(x, y, width - cx - 2, line_height, value, 2)
change_color(system_color)
draw_text(x, y, width, line_height, unit, 2)
end
def open
refresh
super
end
end
#-----------------#
#---| WINDOW_BASE |---------------------------------------------------------
#-----------------#
class Window_Base < Window
include Check_Theme
alias galv_gmenu_engine_wb_initialize initialize
def initialize(x, y, width, height)
galv_gmenu_engine_wb_initialize(x, y, width, height)
if $game_temp.themed_scene
self.windowskin = Cache.gmenu("Windowskin",$game_system.menu_theme) rescue
Cache.system("Window")
set_theme_tone
end
end
alias galv_gmenu_engine_wb_system_color system_color
def system_color
if $game_temp.themed_scene
mtheme::STAT_COLOR
else
galv_gmenu_engine_wb_system_color
end
end
alias galv_gmenu_engine_wb_gauge_back_color gauge_back_color
def gauge_back_color
if $game_temp.themed_scene
mtheme::GAUGEB_COLOR
else
galv_gmenu_engine_wb_gauge_back_color
end
end
def set_theme_tone
a,b,c,d = mtheme::WINDOW_TONE
self.tone.set(a,b,c,d)
end
alias galv_gmenu_engine_wb_update_tone update_tone
def update_tone
if $game_temp.themed_scene
set_theme_tone
else
galv_gmenu_engine_wb_update_tone
end
end
def draw_back_graphics(ind,height,width,enabled = true)
if enabled
bitmap = Cache.gmenu("ActorBackground",$game_system.menu_theme)
else
bitmap = Cache.gmenu("ActorBackgroundDisabled",$game_system.menu_theme)
end
rect = Rect.new(1,0,width - 2,bitmap.height + 2)
y = (rect.y + height) * ind - (bitmap.height - height) - 2
contents.blt(rect.x, y, bitmap, rect, 255)
bitmap.dispose
end
def draw_gsimple_status(actor, x, y, height)
contents.font.name = mtheme::FONT
contents.font.size = mtheme::FONT_SIZE
draw_actor_name(actor, x, y + height - 30)
draw_glevel(actor, x, y + height - 30 - line_height * 1)
draw_gicons(actor, x - 108, y + line_height * 2 + 3)
draw_gclass(actor, x, y + height - 30)
contents.font.size = 20
contents.font.name = mtheme::GAUGE_FONT
w = contents.width - 260
h = (height - 80) / 2
draw_ghp(actor, x + 140, y + h / 2 , w)
draw_gmp(actor, x + 140, y + line_height - 4 + h,w)
if actor.preserve_tp? && GMENU::SHOW_TP
draw_gtp(actor, x + 75, y + line_height - 4 + h,40)
end
draw_gxp(actor, x + 6, y + height - 23, contents.width - 120)
end
def draw_gtp(actor, x, y, width = 124)
draw_gauge(x, y, width, actor.tp_rate,mtheme::TP_COLOR1,mtheme::TP_COLOR1)
change_color(system_color)
draw_text(x - 30, y + 7, 30, line_height, Vocab::tp_a,2)
change_color(tp_color(actor))
draw_text(x + width - 42, y + 3, 42, line_height, actor.tp.to_i, 2)
end
def draw_gxp(actor,x,y,width = 124)
draw_xpgauge(x, y, width, actor.xp_rate, mtheme::XP_COLOR1, mtheme::XP_COLOR2)
end
def draw_xpgauge(x, y, width, rate, color1, color2)
fill_w = (width * rate).to_i
gauge_y = y + line_height - 8
contents.fill_rect(x, gauge_y, width, 4, gauge_back_color)
contents.gradient_fill_rect(x, gauge_y, fill_w, 4, color1, color2)
end
def draw_ghp(actor, x, y, width = 124)
draw_gauge(x, y, width, actor.hp_rate, mtheme::HP_COLOR1, mtheme::HP_COLOR2)
change_color(system_color)
draw_text(x - 30, y + 7, 30, line_height, Vocab::hp_a,2)
draw_current_and_max_values(x, y + 3, width, actor.hp, actor.mhp,
hp_color(actor), normal_color)
end
def draw_gmp(actor, x, y, width = 124)
draw_gauge(x, y, width, actor.mp_rate, mtheme::MP_COLOR1, mtheme::MP_COLOR2)
change_color(system_color)
draw_text(x - 30, y + 7, 30, line_height, Vocab::mp_a,2)
draw_current_and_max_values(x, y + 3, width, actor.mp, actor.mmp,
mp_color(actor), normal_color)
end
def draw_gicons(actor, x, y, width = 96)
icons = (actor.state_icons + actor.buff_icons)[0, width / 24]
icons.each_with_index {|n, i| draw_icon(n, x, y - 16 * i) }
end
def draw_gface(face_name, face_index, x, y, height, enabled = true)
bitmap = Cache.face(face_name)
h = [height,96].min - 1
y_offset = GMENU::ACTORS_SHOWN > 4 ? 1.25 : 1
h2 = 96 - h * y_offset
rect = Rect.new(face_index % 4 * 96, face_index / 4 * 96 + h2, 96, h)
contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha)
bitmap.dispose
end
def draw_glevel(actor, x, y)
wid = Graphics.width - 300
change_color(system_color)
draw_text(x, y, wid, line_height, Vocab::level_a + " " + actor.level.to_s, 0)
end
def draw_gclass(actor, x, y)
change_color(normal_color)
draw_text(x, y, Graphics.width - 290, line_height, actor.class.name,2)
end
end # Window_Base < Window
#-----------------#
#---| SCENEMANAGER |---------------------------------------------------------
#-----------------#
module SceneManager
class << self
alias gmenu_engine_sm_call call
end
def self.call(scene_class)
if scene_class.is_a?(Symbol)
@stack.push(@scene)
@scene = Kernel.const_get(scene_class).new
else
gmenu_engine_sm_call(scene_class)
end
end
def self.themed_scene
array = ["Scene_Menu"] + GMENU::SCENE_THEMES
return true if array.include?(@scene.name)
return false
end
end # SceneManager
class Scene_MenuBase < Scene_Base
include Check_Theme
alias gmenu_engine_sb_start start
def start
gmenu_engine_sb_start
if SceneManager.themed_scene
$game_temp.themed_scene = true
create_theme_backgrounds
end
end
def create_theme_backgrounds
create_background1
create_themebg2
end
def create_background1
@background1 = Plane.new
@background1.bitmap = Cache.gmenu(name + "_Background",$game_system.menu_theme) rescue
Cache.gmenu("Background",$game_system.menu_theme)
@background1.opacity = mtheme::BACK1_OPACITY
@background1.z = -1
@background_sprite.z = -2
end
def create_themebg2
@themebg2 = Sprite.new
if !SceneManager.scene_is?(Scene_Menu)
@themebg2.bitmap = Cache.gmenu(name + "_Background2",$game_system.menu_theme) rescue
Cache.gmenu("Scene_Generic_Background2",$game_system.menu_theme) rescue
nil
end
@themebg2.opacity = mtheme::SCENE_BACK_OPACITY
if @themebg2.bitmap
@themebg2.x = [(Graphics.width - @themebg2.bitmap.width) / 2,0].max
end
@themebg2.z = 0
end
alias gmenu_engine_sb_update update
def update
gmenu_engine_sb_update
if @background1
@background1.ox -= mtheme::BACK1_XY[0]
@background1.oy -= mtheme::BACK1_XY[1]
end
end
alias gmenu_engine_sb_terminate terminate
def terminate
gmenu_engine_sb_terminate
$game_temp.themed_scene = false
@background1.dispose if @background1
@themebg2.dispose if @themebg2
end
def name
if self.to_s =~ /#<(.*):/i
return $1
else
return ""
end
end
end # Scene_Base
#--------------------#
#---| SPRITE_MENUBTN |------------------------------------------------------
#--------------------#
class MenuBtn
include Check_Theme
def initialize(viewport,index)
@index1 = index
@index = 0
create_bitmap
create_text
create_icon
end
def dispose
@text.dispose
@icon.dispose
@btn.dispose
@text.bitmap.dispose
@icon.bitmap.dispose
@btn.bitmap.dispose
end
def update(index)
@index = $game_temp.menuindexes[index]
update_position
end
def menuitem
GMENU::COMMAND_LIST[$game_temp.menuindexes[@index1]]
end
def create_bitmap
if SceneManager.scene.command_window
cmd_index = SceneManager.scene.command_window.index
else
cmd_index = 0
end
@btn = Sprite.new
@btn.bitmap = Cache.gmenu("MenuButton",$game_system.menu_theme)
@btn.y = mtheme::MENU_Y_OFFSET + @index1 * @btn.bitmap.height
@btn.x = @index1 == cmd_index ? mtheme::SLIDE_ON : mtheme::SLIDE_OFF
@btn.opacity = @index1 == cmd_index ? 255 : 160
end
def create_icon
@icon = Sprite.new
@icon.bitmap = Bitmap.new(800,800)
@tempicon = Sprite.new
@tempicon.bitmap = Cache.system("Iconset")
icon_index = menuitem[6]
rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
@icon.bitmap.blt(mtheme::MENU_ICON_XY[0], mtheme::MENU_ICON_XY[1],
@tempicon.bitmap, rect, 255)
@tempicon.bitmap.dispose if @tempicon.bitmap
@tempicon.dispose
@icon.x = @btn.x if mtheme::SLIDE_ICON
@icon.y = @btn.y
@icon.z = 100
end
def create_text
@text = Sprite.new
@text.bitmap = Bitmap.new(180,35)
@text.bitmap.font.name = mtheme::MENU_FONT
@text.bitmap.font.color = mtheme::MENU_TXT_COLOR
@text.bitmap.font.out_color = mtheme::MENU_TXT_OUT
@text.bitmap.font.size = mtheme::MENU_FONT_SIZE
text = menuitem[0]
@text.bitmap.draw_text(mtheme::MENU_TXT_XY[0],
mtheme::MENU_TXT_XY[1],150,35, text,2)
@text.x = @btn.x
@text.y = @btn.y
@text.opacity = 100 if menuitem[3] > 0 && !$game_switches[menuitem[3]]
end
def update_position
if $game_temp.menuindexes[@index1] == @index
@btn.opacity = 255
return if @btn.x >= mtheme::SLIDE_ON
@btn.x += mtheme::SLIDE_SPEED
@text.x += mtheme::SLIDE_SPEED
@icon.x += mtheme::SLIDE_SPEED if mtheme::SLIDE_ICON
else
@btn.opacity = 160
return if @btn.x <= mtheme::SLIDE_OFF
@btn.x -= mtheme::SLIDE_SPEED
@text.x -= mtheme::SLIDE_SPEED
@icon.x -= mtheme::SLIDE_SPEED if mtheme::SLIDE_ICON
end
end
end # Sprite_MenuBtn < Sprite_Base

Hey Galv, another awesome script. I need some help with it this time, when I open the menu in my game I got this error msj:
” Script ‘Galv – Custom Menu’ line: 1024:NoMethorError ocurred.
undefinied method
I go to see that line of code and find this :
text = GMENU::COMMAND_LIST[@index1][0]
Wich makes me think of an incompatibility issue with the scripts I use that modify the menu, this scripts are:
– Galv Orb Shards
– Modern Algebra Quest Journal
I tryied to configure the scenes of those 2 scripts like this:
[“Orb Shards”,:cmd, :Scene_Shards, 0, 0, “View or equip your magic shards”,3248]
And I had no luck at all, I really like this script so, what am I doing wrong? Thanks in advance :D
I thought I stopped that happening in Shards script. What you need to do is set those scripts to not display menu items and then add them manually:
[“Quests”, :cmd, :Scene_Quest, 0, 0, “View quest log.”,270],
Works perfect now! This gives games a lot more of customization and makes them look cooler, kudos to you (: ,
my only complain can be that lag issue very, I haven’t a very speedy pc, but it is not too slow either, and it takes like 5 – 7 seconds to open the menu, when I open something like Formation, it opens the scene quickly, but when going back to the Main Menu it takes again another 5 – 7 seconds, is this a problem for every pc ? Thank you very much for all of your scripts!
I downloaded your demo galv..
your exe contains a heur.advml.c virus can u plz remove it.
I’ve double checked with scans of my own and 1/58 virus scanners provided the false positive, the rest were clean.
Virus scanning software can give false positives and I cannot fix your software if that is the case. I advise researching these and if you are unsure of a download from somewhere, don’t download the file.
That’s a problem for older PC’s and a helpful script from Killozapit should fix it. (it is included in the latest demo)
Brilliant! Thank you very much :D
I don’t know if it is correct to ask you, but since I started using KilloZapit amazing cache script, I get this error sometimes at line 237:
disposed bitmap
I tryied playing with the settings on the script but had no luck at all :/
When exactly does the error happen? I might need to see it happening in order to help.
change it to this
BITMAP_MAX_AGE = nil
It happens sometimes when I enter a map with a picture showing sun beams, and some other very random times.
Sorry, not sure why that would be happening. When I get some time I will try to replicate it and see if I can work it out. by picture do you mean one that was made with the “Show Picture” event command?
Yeah, a picture that is used normally to give a more “realistic” atmosphere to the map. Well I can wait, take your time, thank you very much for your help.
Hello sir !
Awesome script, as usual. I just had one question. I already removed some things from the menu, such as lvl, hp or Skills, Equip and Formation by adding a bunch of # in the default scripts. Will this Menu Engine make them reappear, and if yes, how do I remove them again ?
I know I could figure out all of this by myself but my computer crashed and I can’t download Ace on my iPad, so…
Anyway, thank you again for this wonderful script ! Great job ^^
PS : I’m French, so sorry for grammar or spelling mistakes ><
I believe you will have to change that again, yes, as this script creates new ones for the main menu screen. Sorry, I don’t have time to personalize scripts for everyone, you will have to work it out
I wasn’t requesting a personalized script, don’t worry. I am sure I will eventually find a way to do all this stuff… At least I hope so.
Thank you for answering so quickly !
Hello, I got a problem with the script :
When I want to open the menu, i got this message : “Script Scene_Menu l.21 wrong number of arguments (0 of 2)”
What can I do, please ?
1. Make sure you put the script below Materials and above Main
2. Make sure you started a new game in your test play to test
3.You can check for compatibility. Make sure no other scripts are conflicting (copy your project and take scripts out one at a time.
Love your menu script, any insight on how to get it working with Yanfly’s Class system?
haven’t tried the scripts together but can’t think of why they wouldn’t work together. What does it do?
Hello Galv, like “Mojo”, i’m still figuring out how to bend those two scripts toghether.
The problem is that i can’t find the command to call the Class System.
I tryed:
:Scene_Class_System
:Scene_class
:Scene_Class
:class
But none of them worked.
I’ll leave the link to the script. Thanks in advance.
Any way to make this compatible with Yanfly’s Party System and System Options?
Did you try putting his scripts under this one and then there is a list in the settings you can make it work with those scenes.
I saw the settings, but I don’t what’s the name of :scene for those two. Try everything like Scene_Options, Scene_Party but no luck.
Scene_System
Scene_Party
I just tested both and they are compatible, no problems.
Works fine, strange, I’m sure it doesn’t work the first time. Thanks :D
Thanks for the themes! I have a question, is there a way it shows the description of the character instead of the hp, mp bars?
No, sorry – it’s not set up to do that. You’d have to modify the script itself.
I love the script, but there’s one thing I can’t figure out. I’m using a custom Iconset, and although I can change the menu icon for things like ‘Save’ and ‘Items’, but I can’t find anywhere to change the Icon next to the amount of Gold the party has. At the moment its some green sword that looks like a light sabre… :/
Any ideas?
It’s a complex script, please read the whole thing. You will find it in the theme setup
CURRENCY_ICON
Unbelievable…. I spent ages looking for that and it was so obvious.
Thanks for the quick reply!
I need some help with it this time, when I open the menu in my game I got this error msj:
Script ‘Galv’s Menu Themes Engine’ line 1003: NoMethodError occurred.
undefined method `[]’ for nil:NilClass
Hi Galv hope you are well i am creating a kickstarter project and i wonderd if i can use this and ctredit you in the credits? Thanks regards John
Hi John, please PM me on rpgmakerweb.com or rpgmakervxace.net to discuss :)
Thanks
Is there any way to remove the EXP gauge?
remove code from line 814 (which will look like below:)
draw_gxp(actor, x + 6, y + height – 23, contents.width – 120)
Then you’ll have to modify the graphic to remove the text ‘EXP’
Okay thanks a ton. One more thing, After I started a new game it loaded the map but as soon as everything appeared I got this error. Script ‘Game_Interpreter’ line 1411: NoMethod Error occured undefeined method ‘global_icon_visibility’ for #. How can I fix this?
global_icon_visibility isn’t a method from this script. It sounds like you are using that in a script call and do not have the script that recognises it installed.
Do you need a screenshot of the error? If so, how can I get it to you?
Ok I feel dumb it is from an old script I removed but I never had this pop up until I installed your script. Thanks btw this script is really nice and fits into my game perfectly. I just need to change the menu graphics some.
Hi, an awesome menu! But I would like to know how to make five characters on the screen as shown in the example image. And if possible six.
change the number in the settings at:
ACTORS_SHOWN = 4
to 6
How do I disable animated background in the menu because it takes a while to access it if it is animated
Being animated isn’t the cause of how long it takes to access. But please read the script instructions…
The Cache script in the demo is a possible solution to use for the loading time.
Hi, thanks for this wonderful script!
I was just wondering if there was a way to carry over your help window style into the sub menus? Copying and pasting the data doesn’t seem to work. Sorry for the dumb questions, I’d just like to keep the other menus looking as good as the main menu you created!
I didn’t make the style of the help menu transfer over, unfortunately. That would have been a great idea, though! Maybe one day when I am not busy I can add that
No problem! Thanks for the fast response. :)
Hi.I got a line 890 name error occurred when i try to use sphere grid script on the menu.
Thanks for the script.
I don’t know what sphere grid is. If you let me know when the error occurs as well I might be able to see why and tell you how to fix.
Script ‘Galv’s Menu Themes Engine’ line 892:NameError occured.
uninitialized constant Kernel::Scene_sphere_grid
This is the message i get when i try to open sphere grid from the menu.I use Crystal engine Sphere grid script.
Sounds like you are using the incorrect name. You need to find the exact name of the scene.
I tried some other names, the script does not seem to recognize sphere_grid from the menu.But a script call still works to open the sphere grid.
I will use that alternative.Farewell for now.
Hey Galv.
Since the Orb Shards Script Doesn’t Show up in the menu, i tried to Activate it trough an Common Event in the Menu
I’t Worked But When i leave The Orb Menu i don’t return to the Menu, instead i go back to the Map.
After a while it becomes realy annoying so………….
Can You Help Me ?
You need to add it to the menu themes command list code in order for it to show up. Try this:
[“Shards”, :sel, :Scene_Shards, 0, 0, “View a hero’s magic shards.”,112],
i’l Try it and then i tell you if it workrd
Tanks
i’t Worked, Guessed the problem was :cmd instead of :sel
LOL Silly
Tanks
I have a mission system written in my previous menu, but i don’t know how can i combine that with your menu.
Can you teach me? thankyou very much
**************************************************************************************************************************************
class Scene_Menu < Scene_MenuBase
alias yima_create_command_window create_command_window
def create_command_window
yima_create_command_window
@command_window.set_handler(:task, method(:command_task))#任務系統
end
def command_task
SceneManager.call(Scene_Task)#呼叫任務系統介面
end
end
class Window_MenuCommand < Window_Command
alias yima_add_main_commands add_main_commands
def add_main_commands
yima_add_main_commands
add_command("\\I[371]任務系統", :task, main_commands_enabled)#\\I[371]的部分是配合指令選項加上圖標腳本
end
end
Remove that part of the script and add the command in the Menu Theme Engine script in the ‘MENU – COMMAND SETUP’
[“Tasks”, :cmd, :Scene_Task, 0, 0, “Description here.”,270],
WOW, YOU ARE SO great !!!! Thx for your teaching!!
Normally when you only have one member it your party and select lets say the equipment command you still have to select what party member you want to look at the equipment for even though it is obvious since there is only one party member who’s equipment you want to look at is there a way to make it that when there is only one member in the party it opens up their info without having to select them
That functionality is not in the current script, sorry
When I have the Save and Formation functions disabled they still appear lit up in the menu. Is there a way to have them darkened when not available? I can make my own altered graphics if that’s needed, I just need to know how to call them under those conditions.
There is a transparent text effect when menu is disabled. Sorry, I am not currently doing any script alterations.
How would you make the hp gauges red?
Never mind i got it.
how would i use this with Nicke Attribute System?
Sorry I don’t have time to teach people how to use other scripts
where do i download the images
Up the top of the page where there’s a clickable link that says “Demo – Version 1.6 >”
Try clicking on it
Can I make a request?
Would it be possible for you to make a compatible with Yanfly’s class system
Sorry, I am too busy for requests at this time
i know it’s rude to asking like that ,but can shards playing with this menu ?
If you mean does my shard script work with this menu, yes – you just need to add the menu command via the theme engines menu command list and not through the shard script.
I get the error of: Script ” Line 268: TypeError occurred can’t convert nil into String When trying to open my menu. any help?
If you have other scripts that add menu commands for them, disable that in their scripts and add it via the menu theme script
Hey… I have couple of errors to report to:
1) line 619: NoMethodError occurred – undefined method ‘face_name’ for nil:NilClass
– This error occurs when I try to open menu with clear game.
2) line 268: TypeError: occurred. can’t convert nil into Strong
– This happens when I try to open menu in loaded game.
Anyway to fix these?
Some tests to do:
Main ones in there I am guessing is – start a new test game. Do not load a test game that was saved prior to adding the script.
Any other scripts you have that add menu commands usually have settings to not add them. Only add menu command via the menu script.
I actually made it work the way that I removed each script I had and replaced them once by one… Now it is working. I guess there was some miss-match-information from my previous scripts.
Thanks anyway. *smile*
PLEASE I NEED TO KNOW : WHAT LINE I HAVE TO ERASE FOR DESACTIVE THE MAIN MENU OPTION WHEN I SELECT QUIT IN MENU
I don’t know why you are typing in allcaps… or what exactly you are trying to do :/
picking up an error when i try to run it. error on line 1003. no implicit conversion from nil to integer. idk why im getting this. but other scripts im running that may mess this up are a quest log script and a menu cursor script. any advice?
In the quest log or any other script that has an option to ‘add a menu command’, change the option to make them not add the command
Would this script be free if it was used to make a free game? and I mean one that is distributed privately?
Yeah, if you don’t plan to profit from it then go right ahead :)
Hi, i was just wondering whether it would be possible to have this work with Hime’s Junction system? I have the script, but when i open the menu, the junction option is nowhere to be seen when using Themes Engine.
You need to add the option within the menu setup of the menu theme script
Forgive me if this was mentioned somewhere and I didn’t see it, but, how do I remove the example slots in the menu?
In the script settings under MENU – COMMAND SETUP
Each line is a menu command. Remove the lines that have Example in them
Thank you so much, but one question, when in the menu, the game runs slightly sluggish, it’s no glaring issue but it
is a bit annoying, is there anything I can do to improve that? I’m using Lune’s anti lag script right now.
The cache script that is included in the demo will help with loading time. If you mean during using the menu then not really. Upgrade PC maybe? :)
I see, thank you, then. :3
Hey man, I just wanna ask you something.
Is there any way of combining the Menu Layout script with this one?
It would really help me :)
Unfortunately they aren’t compatible. I dont have time to make them, sorry :(
That’s ok :) I totally get it :D
hey I keep getting an error saying ” ‘Script Galvs_Menu_Themes’ line 1333 TypeError occurred. Can’t convert nil into String
First I just want to thank you for creating this awsome script it’s super easy to use and very customizable. But recently I’ve been experiencing lag when opening the menu (around 6 seconds of it) but the weird thing is I’ve been using this script for over a month and have never experienced lag with it before, would changing the size of my icon set have anything to do with it?
Yes, definitely. If you have a huge iconset I have found increasing loading time dramatically. Try to keep your iconset limited to only the ones you use so it’s as small as it can be
thanks for responding to my comment so quickly I useally have to wait for days on other forums, its a bummer I’m going to have to cut my iconset but it’s worth it if I’m able to use this awsome script. Keep up the good work.
Is there any way of rearranging the texts shown? For example, I’d like to see the Map Display Name at upper right corner of the screen, the Currency Display at the lower left corner, the Game Time below the Curency Display and next to those two is the Command Help Discription?
Not without modifying the script code unfortunately
Nevermind about this… I got it… It needed a lot of tweaking, but I found a way… I just got two more things to know. It shows that the Menu Texts (“Items”,”Equipment”, etc.) is in a Right Alignment… How do I change it to Left or Center? The other question is not as important therefore I will ask it some other time… Thank you!
Unfortunately I didn’t make an option for that and I don’t have time for requests, sorry
Hello there, I was able to remove all the stats at the status menu, but I have absolutely no idea how to insert something now. I’d like to insert a detailed text about the characters, since it’s going to be a mystery game.
Even if I can’t do it with your script, can you please help me? I searched like 90% of the internet but still haven’t found anything yet. Thanks in advance :)
Sorry, that would require custom scripting and I am too busy to do that. I recommend asking in an rpgmaker forum
I was just about to say that this reminded me of the menu from RPG Maker XP, except with facesets instead of sprites.
Hello..i really like the themes.I have some trouble..how to remove from the menu the 2 example? i am using a scrit that make the coin separated in copper,silver and gold..how to make it work? or there is some one that is compatible with your themes? thanks
This script is not new user friendly, sorry. And I do not know other scripts that would be compatible for in menu stuff with this script.
ok..i managed to remove the 2 example…but i wanted the menu layout too :( why it isn’t compatible? is a your script :( i really like it but i like the theme too :(
it isn’t compatible with your menu theme script?! :(
Hey, this may be a dumb question but what color system should I be using to customize the colors in this script? I see four values, so… cmyk?
Actually – R,G,B,opacity are the values (if I remember Ace correctly haha)
Scripe “galv menu” line 268Type error ocured.
cant convert nil into string
Some tests to do:
Which will lead you to the problem and then I can help further.
Scripe “galv menu” line 268Type error ocured.
cant convert nil into string
I tried all the things you told me to do at https://galvs-scripts.com/errors-using-scripts/ so don’t lead me there. Please.
One of the suggestions in that list of things to try was test the script in a new project.
You are saying you tested this in a new project and still get the error. Unfortunately I cannot replicate this as it works in a new project, so I cannot help. Sorry.
Hey Galv. This script is awesome but I need some help. I installed Menu Theme Engine and it works. I added CSCA Quest System and successfully connected it to Menu Theme Engine but it doesn’t show a background image. Is there a way to fix it?
Did you add the scene to the SCENE_THEMES list? I had a quick look at CSCA Quest script and the scene name is:
“CSCA_Scene_Quest”,
Yes, I did. It only uses the window skin. Sorry for the late response.
Sorry, I just downloaded the script you are talking about and could not get it to run without error even without other scripts. Unfortunately I don’t have time to error trap what’s going on with it.
If it’s opening for you and you really did add the string I mentioned to the SCENE_THEMES array, then the quest script might change how default backgrounds work and would take more to change it.
Dont forget to try swapping their positions in the script list.
Thanks for the help Galv. I figured it out and it works now. Sorry I bothered you.
Hi ! Thanks so much for this script !
I was still wondering how to remove the health and power bar ? (from the menu)
There’s no option for that in this script – I recommend asking in a forum for someone to write a script to do that
Oh okay, thanks for the quick response ! :)
Hello Galv, thanks for the script.
I’m using ‘Learn Skill Engine” from Yanfly and when I into in ‘Learn Skills'(Learn Skill is inside Skill) reappears the basic ace menu interface.
I try this:
[“Learn”, :cmd, :Scene_learn_skills, 0, 0, “Change your party.”,121],
But doesn’t work.
You need to look in the script for the scene name. It’s not Scene_learn_skills. Try using:
:Scene_LearnSkill
and you probably want to use :sel instead of :cmd to select the player.
Great, it works! Thank you very much!
Hey Galv, this is an amazing script! Thank you for taking the time to create it. :)
Are there any plans on converting this into an MV Plug-in? This does exactly what I’ve been looking for (being able to change the theme through a switch/command in-game).
I haven’t thought about doing this one in MV, but maybe one day.
Hi, just wanted to share op’s request, I would be very interested in this kind of menu theme in MV. I’m sure there are others, if you find a moment to appease :)
One day I will. Currently I cannot spend enough time to get everything I want done, but I have a patreon for those who wish to support me, which would allow me to do more of the huge projects I want to do like the MV version of this.
when ever i try to open my menu it just tells me that im missing a file called graphics/Gmenu/theme_default/background please help >.<
You need to download the demo and copy the file over to your project. This is not an easy script to use, study the demo and read the documentation to learn.
thanks its all working now :3
Hi Galv! I need this script to change the graphic based on the actor’s class, does the Menu Layout has a setting for this? Or how can i acchieve this?
No, sorry – the menu script takes from the default actor’s face.
I can’t get this to work with Vlue’s Appraisal Shop. Is there an easy fix? I’m not a scripter by any means. The appraisal shop can be found here, maybe someone way smarter than me can help me out: https://pastebin.com/raw/PGxAm55F
how would i change the examples in your script to working buttons that do more than just give the player money or things like that? can you give me a demo on other things that these can be used as?
for example, if i wanted to use one of the examples to call for my vehicle? say i wanted to put in an option that says ” call airship” or “Call Car to location”?
I recommend asking in a forum on how to do those things using a common event.
hello galv ! first of all, a huge thank you for all your hard work ! 🙏🏻💗 as i’m sure you know, you’re seriously the backbone of the rpgmaker community.
and secondly, unfortunately, the download link doesn’t seem to be working ! i haven’t tried out the script yet, since i can’t access the graphics first through the download link. do you mind sending an external link to the graphics somewhere else ? thank you so so much 😊
Thanks for letting me know, I fixed an issue with the download link – should work now.