[Ace] Status menu problem

Status
Not open for further replies.

AoSapphire

Noob - Sage
Veteran
Joined
Oct 23, 2017
Messages
48
Reaction score
38
First Language
English
Primarily Uses
RMVXA
Okay! I'm going to ask help again! :kaohi:

I was able to fix some errors earlier that appeared as I test the game but there are still some things that are not right about it...
I've been going at it for hours now and I'm really tired since it's already night here...

Anyways, I created a new project to see what was the scripts that is making this all trouble and whatnot and found out that it was Yea's Ace status menu...

The MP suddenly disappeared after I put the script in the script editor :kaodes:
Though, I'm not sure about the other two... The character's name isn't on the line with "LV" I actually edited the position of the level as it was too close to the face of the character...
Not only that. This gauge suddenly appeared even though there wasn't supposed to be a gauge there:kaomad2:.

The names are not in the line!!!
Hmmm... But thinking about it, I had Ace status menu for quite a long while and this kind of problem didn't happened before so I'm guessing it had to do with galv's theme menu script too...

I'm not really sure anymore as I has gone to a lot of scripts just so I can try to fix this problem...
Here are the scripts I've gone through, looking, searching and trying to fix so it will make my game work.
Yea:
Ace core engine: https://github.com/Archeia/YEARepo/blob/master/Core/Ace_Core_Engine.rb
Adjust limit: https://github.com/Archeia/YEARepo/blob/master/Core/Adjust_Limits.rb
Ace menu engine: https://github.com/Archeia/YEARepo/blob/master/Menu/Ace_Menu_Engine.rb
Ace status menu: https://github.com/Archeia/YEARepo/blob/master/Menu/Ace_Status_Menu.rb

Blackmorning:
Yea status menu addon: Basic module:
KGC:
Bitmap extension:
Galv:
Menu theme engine: https://galvs-scripts.com/galvs-menu-themes-engine/

It must be from one of these scripts... Maybe I'm really tired now but I can't seem to find it.. Granted I was able to fix hp, its text and its gauge, as well as "LV" and the menu screen. But this guys seems to like to make me suffer :kaodes:

I've been going at it for hours now and it got me really tired.
I'll just leave a thread here. I hope someone can help me:kaoblush:

Thank you in advance and good night, everyone! :kaohi:
 

AoSapphire

Noob - Sage
Veteran
Joined
Oct 23, 2017
Messages
48
Reaction score
38
First Language
English
Primarily Uses
RMVXA
Okay! So, I put the scripts I used one by one in a new "test" game and found out that it was BM's yea status add on that was responsible for this problem...

Before.

After.

I want that gauge behind the character's level removed... As well as put the name like the "parameters" in the right position where it should be, in the middle. I'll have to fix the position of the "atk, mat, etc" too....

I still have not yet found the script that made the mp dissapeared from the "general" status but I'm guessing it's galv's menu theme engine... It's the one I has yet to put in the new test game as I found that it was bm's yea status add on that was causing this problem I found.

EDIT: Okay, it was actually bm's basic module script... Is there anyone who can help me ? :kaocry:
Here is bm's basic module script.
Code:
#==============================================================================
# ** Blackmorning -> Basic Module
#------------------------------------------------------------------------------
#  Blackmorning
#  Version 1.24
#  updated 11/05/2015
# - adjusted help window
#==============================================================================
# ? Introduction
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# - Yami's fix -> revival & item animations in YEA - Ace Battle Engine.
# - adds parameter and experience gauges
# - shows transparent faces for non-battle members in menu
# - new vocab information including for sparam and xparam
# - changes help window to include item type, icon, name
#   (also durability and weight if using Xail system)
# - rotating actor instead of moving.
# - adds codes for other BM scripts
# - added horizontal fix coding for menus(version 1.18)
#==============================================================================
# ? Instructions
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ? Materials but above ? Main.
# Remember to save.
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# Script Calls.
# -----------------------------------------------------------------------------
# setSelfSwitch(map, id, A-D, true/false)
#   ie.   setSelfSwitch(@map_id, 1, "A", true)
# isSelfSwitch?(map, id, A-D)
#   ie.   isSelfSwitch?(2, 1, "A")
# setAllSelf(map, id, true/false)
#   ie.   setAllSelf(2, 1, true)
#===============================================================================
module BM
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Non Member Options -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # if member not in battle party, makes character/face transparent
  NON_PARTY_MEMBER_TRANSPARENCY = true
  STANDBY_COLOR = Color.new(0, 0, 0, 128) #  Standby Members Background Color
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Status Icons on Face (Skills Status Window) -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # for the Skill Status window, states/buffs appear at bottom of actor's face
  MOVE_STATE_OVER_FACE = true
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Bust Image Options -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  PORTRAIT_FOLDER = "Graphics/Portraits/"
  # default "Graphics/Portraits/"
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Text Options -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # for drawing actor class and name in menus
  TEXT={
  :bold =>{
    :actor_name => true,
    :actor_class => false,
    }, # DO NOT REMOVE
  :italic =>{
    :actor_name => false,
    :actor_class => true,
    }, # DO NOT REMOVE
  } # DO NOT REMOVE
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Sound Options -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # for sound effects, a random pitch can be given to give some variation
  RAND_PITCH = false
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Parameters Settings -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # EXP Gauge Options
  EXP_VOCAB = "EXP"
  EXP_GAUGE1   = 12            # "Window" skin text colour for gauge.
  EXP_GAUGE2   = 4             # "Window" skin text colour for gauge.
  SHOW_EXP_GAUGE = true        # show exp gauge in menu
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # show parameters gauge in status
  SHOW_PARAM_GAUGE = false
  # set param ratio max to :set, :max or :current
  # if a stat is higher than param max, then will be based on that stat
  # :set (max param is set number)
  # :max (uses default max param)
  # :current (max param is based on highest current param)
  PARAM_RATIO_MAX = :set
  PARAM_MAX = 100 # if PARAM_RATIO_MAX = :set
  # Each of the stats have a non-window colour. Adjust them as you see fit.
  PARAM_COLOUR ={
  # ParamID => [:stat,       Colour1,                   Colour2          ],
          0 => [ :hp,  Color.new(115,  20,  20), Color.new(170,  44,  44)],
          1 => [ :mp,  Color.new(158, 113, 229), Color.new(205, 178, 245)],
          2 => [ :atk, Color.new(151,  83, 123), Color.new(207, 181, 187)],
          3 => [ :def, Color.new(121, 208, 151), Color.new(184, 233, 205)],
          4 => [ :mat, Color.new( 82, 150, 215), Color.new(161, 197, 236)],
          5 => [ :mdf, Color.new(236, 238, 150), Color.new(246, 253, 203)],
          6 => [ :agi, Color.new(182, 150, 131), Color.new(222, 208, 194)],
          7 => [ :luk, Color.new(146,  89, 165), Color.new(206, 182, 219)],
  } # DO NOT REMOVE
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # Parameter Vocabulary
  PARAM_VOCAB_FULL={
    0 => "Hit Points",
    1 => "Spell Points",
    2 => "Attack",
    3 => "Defence",
    4 => "Intelligence",
    5 => "Resistance",
    6 => "Agility",
    7 => "Luck",
  } # DO NOT REMOVE
  XPARAM_VOCAB = {
    0 => "HIT",
    1 => "EVA",
    2 => "CRI",
    3 => "CEV",
    4 => "MEV",
    5 => "MRF",
    6 => "CNT",
    7 => "HRG",
    8 => "MRG",
    9 => "LRG",
  } # DO NOT REMOVE
  XPARAM_VOCAB_FULL={
    0 => "Hit Rate",
    1 => "Evasion",
    2 => "Critical Hit",
    3 => "Critical Evade",
    4 => "Magic Evasion",
    5 => "Magic Reflect",
    6 => "Counter Rate",
    7 => "HP Regen",
    8 => "SP Regen",
    9 => "LP Regen",
  } # DO NOT REMOVE
  SPARAM_VOCAB = {
    0 => "TGR",
    1 => "GRD",
    2 => "REC",
    3 => "PHA",
    4 => "MCR",  
    5 => "LCR",
    6 => "PDR",
    7 => "MDR",
    8 => "FDR",
    9 => "EXR",
  } # DO NOT REMOVE
  SPARAM_VOCAB_FULL={
    0 => "Target Rate",
    1 => "Guard Rate",
    2 => "Recovery",
    3 => "Item Boost",
    4 => "SP Cost Rate",
    5 => "LP Charge",
    6 => "Physical Damage",
    7 => "Magical Damage",
    8 => "Floor Damage",
    9 => "#{EXP_VOCAB} Rate",
  } # DO NOT REMOVE
  CPARAM_VOCAB ={
    :cdr         => "CDR",  #cooldown rate       # Requires YEA - Skill Restrictions
    :wur         => "WUR",  #warmup rate         # Requires YEA - Skill Restrictions
    :hcr         => "HCR",  #hp cost rate        # Requires YEA - Skill Cost Manager
    :tcr_y       => "LCR",  #tp cost rate        # Requires YEA - Skill Cost Manager
    :gcr         => "GCR",  #gold cost rate      # Requires YEA - Skill Cost Manager
    :hp_physical => "HPhys",#convert hp physical # Requires YEA - Convert Damage
    :mp_physical => "SPhys",#convert mp physical # Requires YEA - Convert Damage
    :hp_magical  => "HMag", #convert hp magical  # Requires YEA - Convert Damage
    :mp_magical  => "SMag", #convert mp magical  # Requires YEA - Convert Damage
  } # DO NOT REMOVE
  CPARAM_VOCAB_FULL ={
    :cdr         => "Cooldown Rate",    #cooldown rate       # Requires YEA - Skill Restrictions
    :wur         => "Warmup Rate",      #warmup rate         # Requires YEA - Skill Restrictions
    :tcr_y       => "LP Cost Rate",     #tp cost rate        # Requires YEA - Skill Cost Manager
    :hcr         => "HP Cost Rate",     #hp cost rate        # Requires YEA - Skill Cost Manager  
    :gcr         => "Gold Cost Rate",   #gold cost rate      # Requires YEA - Skill Cost Manager
    :hp_physical => "Drain HP Physical",#convert hp physical # Requires YEA - Convert Damage
    :mp_physical => "Drain SP Physical",#convert mp physical # Requires YEA - Convert Damage
    :mp_magical  => "Drain HP Magical", #convert hp magical  # Requires YEA - Convert Damage
    :hp_magical  => "Drain SP Magical", #convert mp magical  # Requires YEA - Convert Damage
  } # DO NOT REMOVE
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Actor Movement -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # Hold button when entering direction to turn actor.
  ROTATE_INPUT = Input::Y
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - Advanced Help -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # Show additional info in the help window
  ADVANCED_HELP = true
  # HELP_DISPLAY = [show_help_icon, show_name, show_description, show_type]
  HELP_DISPLAY = [true, true, true, true]
  HELP_SIZE = 2 # number of lines in help
  ITEM_NAME_COLOR = Color.new(182, 150, 131) # color of item/skill name in help
  # NOTE:
  # color is overwritten if using hime item rarity or vlue weapon/armor randomizer
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # - System Options -
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # This determines if the Game's Process Priority will be heightened to "High"
  # at startup. This may help some lag issues.
  HIGH_PROCESS = true
  # This determines if the Mouse Cursor should be hidden will inside the game.
  # This only applies if the mouse is inside the Game's window.
  HIDE_MOUSE = false
  # This determines if the window should be resizable.
  # By default, the game window is not resizable without script calls.
  # Note this does not increase the Game's graphic displaying abilities,
  # and will cause graphics stretching/shrinking.
  ALLOW_RESIZING = false
end
#===============================================================================
# Editting anything past this point may potentially result in causing computer
# damage, incontinence, explosion of user's head, coma, death, and/or halitosis.
# Therefore, edit at your own risk.
#===============================================================================
if $sel_time_frame != nil
  BM::SELCHAR_CALENDER = true
else
  BM::SELCHAR_CALENDER = false
end
#===============================================================================
module BM
  #--------------------------------------------------------------------------
  # * New method: required_script
  #--------------------------------------------------------------------------
  def self.required_script(name, req, version, type = 0)
    if version == true
      return unless (!$imported[req]) # non-bm scripts
      msg = "The script '%s' requires the script\n"
      case type
      when :above
        msg += "'%s' above it to work properly\n"
      when :below
        msg += "'%s' or higher to work properly\n"
      else    
        msg += "'%s' below it to work properly\n"
      end
      msg += "Go to bmscripts.weebly.com to download this script."
      self.exit_message(msg, name, req, version)
    end
    if type != :below && (!$imported[req] || $imported[req] < version) #checks version number
      msg = "The script '%s' requires the script\n"
      case type
      when :above
        msg += "'%s' v%s or higher above it to work properly\n"
      else
        msg += "'%s' v%s or higher to work properly\n"
      end
      msg += "Go to bmscripts.weebly.com to download this script."
      self.exit_message(msg, name, req, version)
    elsif type == :below && $imported[req] # wrong position
      msg = "The script '%s' requires the script\n"
      msg += "'%s' below it to work properly\n"
      msg += "move the scripts to the proper position"
      self.exit_message(msg, name, req, version)
    end
  end
  #--------------------------------------------------------------------------
  # * New method: exit_message
  #--------------------------------------------------------------------------
  def self.exit_message(message, name, req, version = 1.00)
    name = self.script_name(name)
    req  = self.script_name(req)
    msgbox(sprintf(message, name, req, version))
    exit
  end
  #--------------------------------------------------------------------------
  # * New method: script_name
  #--------------------------------------------------------------------------
  def self.script_name(name, ext = "BM")
    name = name.to_s.gsub("_", " ").upcase.split
    name.collect! {|char| char == ext ? "#{char} -" : char.capitalize }
    name.join(" ")
  end
end
$imported ||= {}
$imported[:bm_base] = 1.24
#===============================================================================
module BM
  def self.handle
    a = Win32API.new('kernel32', 'GetPrivateProfileString', 'pppplp', 'l')
    b = Win32API.new('user32', 'FindWindow', 'pp', 'i')
    a.call("Game", "Title", "", title = "\0" * 256, 256, ".//Game.ini")
    return b.call("RGSS Player", title.delete!("\0"))
  end
end
Win32API.new('user32', 'ShowCursor', 'i', 'i').call(0) if BM::HIDE_MOUSE
Win32API.new('kernel32','SetPriorityClass','pi','i').call(-1, 256) if BM::HIGH_PROCESS
Win32API.new('user32', 'SetWindowLong', 'lll', 'l').call(BM.handle, -16, 0x10C70000|0x00080000) if BM::ALLOW_RESIZING
#==============================================================================
# ** Cache
#==============================================================================
module Cache
  #--------------------------------------------------------------------------
  # * New Method: Get Portrait Graphic
  #--------------------------------------------------------------------------
  def self.portrait(filename, hue = 0)
    load_bitmap(BM::PORTRAIT_FOLDER, filename, hue)
  end
end
#==============================================================================
# ** SE  (randomizes pitch)
#==============================================================================
module RPG
  class SE < AudioFile
    def play
      unless @name.empty?
        pitch = @pitch
        pitch += rand(7)-3 if BM::RAND_PITCH
        Audio.se_play("Audio/SE/" + @name, @volume, pitch)
      end
    end
  end
end
#==============================================================================
# ** Numeric
#==============================================================================
class Numeric
  #--------------------------------------------------------------------------
  # * group_digits
  #--------------------------------------------------------------------------
  def group
    return self.to_s unless $imported["YEA-CoreEngine"] && YEA::CORE::GROUP_DIGITS
    self.to_s.gsub(/(\d)(?=\d{3}+(?:\.|$))(\d{3}\..*)?/,'\1,\2')
  end
end
#==============================================================================
# ** Object
#==============================================================================
class Object
  #--------------------------------------------------------------------------
  # * New method: file_exist?
  #--------------------------------------------------------------------------
  def file_exist?(path, filename)
    $file_list ||= {}
    $file_list[path + filename] ||= file_test(path, filename)
    $file_list[path + filename]
  end
  #--------------------------------------------------------------------------
  # * New method: get_file_list
  #--------------------------------------------------------------------------
  def file_test(path, filename)
    bitmap = Cache.load_bitmap(path, filename) rescue nil
    bitmap ? true : false
  end
  #--------------------------------------------------------------------------
  # * New method: portrait_exist?
  #--------------------------------------------------------------------------
  def portrait_exist?(filename)
    file_exist?(BM::PORTRAIT_FOLDER, filename)
  end
  #--------------------------------------------------------------------------
  # * New method: character_exist?
  #--------------------------------------------------------------------------
  def character_exist?(filename)
    file_exist?("Graphics/Characters/", filename)
  end
  #--------------------------------------------------------------------------
  # * New method: faceset_exist?
  #--------------------------------------------------------------------------
  def faceset_exist?(filename)
    file_exist?("Graphics/Faces/", filename)
  end
end
#==============================================================================
# ** Horizontal fix
#==============================================================================
module Horizontal_Fix
  #--------------------------------------------------------------------------
  # * Get Number of Lines to Show
  #--------------------------------------------------------------------------
  def visible_line_number; return 1; end
  #--------------------------------------------------------------------------
  # * Get Digit Count
  #--------------------------------------------------------------------------
  def col_max; return item_max; end
  #--------------------------------------------------------------------------
  # * Get Spacing for Items Arranged Side by Side
  #--------------------------------------------------------------------------
  def spacing; return 8;  end
  #--------------------------------------------------------------------------
  # * Calculate Width of Window Contents
  #--------------------------------------------------------------------------
  def contents_width
    (item_width + spacing) * item_max - spacing
  end
  #--------------------------------------------------------------------------
  # * Calculate Height of Window Contents
  #--------------------------------------------------------------------------
  def contents_height; item_height; end
  #--------------------------------------------------------------------------
  # * Get Leading Digits
  #--------------------------------------------------------------------------
  def top_col
    ox / (item_width + spacing)
  end
  #--------------------------------------------------------------------------
  # * Set Leading Digits
  #--------------------------------------------------------------------------
  def top_col=(col)
    self.ox = (col < 0 ? 0 : col) * (item_width + spacing)
  end
  #--------------------------------------------------------------------------
  # * Get Trailing Digits
  #--------------------------------------------------------------------------
  def bottom_col
    top_col + col_max - 1
  end
  #--------------------------------------------------------------------------
  # * Set Trailing Digits
  #--------------------------------------------------------------------------
  def bottom_col=(col)
    self.top_col = col - (col_max - 1)
  end
  #--------------------------------------------------------------------------
  # * Overwrite: Scroll Cursor to Position Within Screen
  #--------------------------------------------------------------------------
  def ensure_cursor_visible
    self.top_col = index if index < top_col
    self.bottom_col = index if index > bottom_col
  end
  #--------------------------------------------------------------------------
  # * Get Rectangle for Displaying Items
  #--------------------------------------------------------------------------
  def item_rect(index)
    rect = super
    rect.x = index * (item_width + spacing)
    rect.y = 0
    rect
  end
end
#==============================================================================
# ** Vertical fix
#==============================================================================
module Vertical_Fix
  #--------------------------------------------------------------------------
  # * Get Number of Lines to Show
  #--------------------------------------------------------------------------
  def visible_line_number; return item_max; end
  #--------------------------------------------------------------------------
  # * Get Digit Count
  #--------------------------------------------------------------------------
  def col_max; return 1; end
  #--------------------------------------------------------------------------
  # * Get Spacing for Items Arranged Side by Side
  #--------------------------------------------------------------------------
  def spacing; return 32;  end
  #--------------------------------------------------------------------------
  # overwrite method: contents_width
  #--------------------------------------------------------------------------
  def contents_width; return width - standard_padding * 2; end
  #--------------------------------------------------------------------------
  # overwrite method: contents_height
  #--------------------------------------------------------------------------
  def contents_height
    ch = height - standard_padding * 2
    return [ch - ch % item_height, row_max * item_height].max
  end
  #--------------------------------------------------------------------------
  # * Scroll Cursor to Position Within Screen
  #--------------------------------------------------------------------------
  def ensure_cursor_visible
    self.top_row = row if row < top_row
    self.bottom_row = row if row > bottom_row
  end
  #--------------------------------------------------------------------------
  # * Get Rectangle for Drawing Items
  #--------------------------------------------------------------------------
  def item_rect(index)
    rect = Rect.new
    rect.width = item_width
    rect.height = item_height
    rect.x = index % col_max * (item_width + spacing)
    rect.y = index / col_max * item_height
    rect
  end
  #--------------------------------------------------------------------------
  # overwrite method: cursor_down
  #--------------------------------------------------------------------------
  def cursor_down(wrap = false)
    if index < item_max - col_max || (wrap && col_max == 1)
      select((index + col_max) % item_max)
    end
  end
  #--------------------------------------------------------------------------
  # overwrite method: cursor_up
  #--------------------------------------------------------------------------
  def cursor_up(wrap = false)
    if index >= col_max || (wrap && col_max == 1)
      select((index - col_max + item_max) % item_max)
    end
  end
end
#==============================================================================
# ** Vocab
#==============================================================================
module Vocab
  def self.exp; BM::EXP_VOCAB;  end
  def self.exp_a; BM::EXP_VOCAB; end
  ExpTotal        = "Current #{self.exp}"
  ObtainExp       = "%s #{self.exp} received!"
  def self.element(id); $data_system.elements[id] ? $data_system.elements[id] : ""; end
  def self.state(id); $data_states[id] ? $data_states[id].name : ""; end
  def self.enemies(id); $data_enemies[id] ? $data_enemies[id].name : ""; end
  def self.classes(id); $data_classes[id] ? $data_classes[id].name : ""; end
  def self.items(id); $data_items[id] ? $data_items[id].name : ""; end
  def self.weapons(id); $data_weapons[id] ? $data_weapons[id].name : ""; end
  def self.armors(id); $data_armor[id] ? $data_armor[id].name : ""; end
  def self.skills(id); $data_skills[id] ? $data_skills[id].name : ""; end
  def self.skill_types(id); $data_system.skill_types[id] ? $data_system.skill_types[id] : ""; end
  def self.weapon_types(id); $data_system.weapon_types[id] ?$data_system.weapon_types[id] : ""; end
  def self.armor_types(id); $data_system.armor_types[id] ? $data_system.armor_types[id] : ""; end
  def self.variables(id); $data_system.variables[id] ? $data_system.variables[id] : ""; end
  def self.switches(id); $data_system.switches[id] ? $data_system.switches[id] : ""; end
  #--------------------------------------------------------------------------
  # * New Method: extra Parameters
  #--------------------------------------------------------------------------
  def self.param_a(id)
    case id
    when 0, :hp, :maxhp then self.param(0)
    when 1, :mp, :maxmp then self.param(1)
    when 2, :atk then self.param(2)
    when 3, :def then self.param(3)
    when 4, :mat then self.param(4)
    when 5, :mdf then self.param(5)
    when 6, :agi then self.param(6)
    when 7, :luk then self.param(7)
    else; ""
    end
  end
  #--------------------------------------------------------------------------
  def self.param_f(id)
    case id
    when 0, :maxhp, :hp then BM::PARAM_VOCAB_FULL[0]
    when 1, :maxmp, :mp then BM::PARAM_VOCAB_FULL[1]
    when 2, :atk then BM::PARAM_VOCAB_FULL[2]
    when 3, :def then BM::PARAM_VOCAB_FULL[3]
    when 4, :mat then BM::PARAM_VOCAB_FULL[4]
    when 5, :mdf then BM::PARAM_VOCAB_FULL[5]
    when 6, :agi then BM::PARAM_VOCAB_FULL[6]
    when 7, :luk then BM::PARAM_VOCAB_FULL[7]
    else; ""
    end
  end
  #--------------------------------------------------------------------------
  def self.xparam_a(id)
    case id
    when 0, :hit then BM::XPARAM_VOCAB[0]
    when 1, :eva then BM::XPARAM_VOCAB[1]
    when 2, :cri then BM::XPARAM_VOCAB[2]
    when 3, :cev then BM::XPARAM_VOCAB[3]
    when 4, :mev then BM::XPARAM_VOCAB[4]
    when 5, :mrf then BM::XPARAM_VOCAB[5]
    when 6, :cnt then BM::XPARAM_VOCAB[6]
    when 7, :hrg then BM::XPARAM_VOCAB[7]
    when 8, :mrg then BM::XPARAM_VOCAB[8]
    when 9, :trg then BM::XPARAM_VOCAB[9]
    else; ""
    end
  end
  #--------------------------------------------------------------------------
  def self.xparam_f(id)
    case id
    when 0, :hit then BM::XPARAM_VOCAB_FULL[0]
    when 1, :eva then BM::XPARAM_VOCAB_FULL[1]
    when 2, :cri then BM::XPARAM_VOCAB_FULL[2]
    when 3, :cev then BM::XPARAM_VOCAB_FULL[3]
    when 4, :mev then BM::XPARAM_VOCAB_FULL[4]
    when 5, :mrf then BM::XPARAM_VOCAB_FULL[5]
    when 6, :cnt then BM::XPARAM_VOCAB_FULL[6]
    when 7, :hrg then BM::XPARAM_VOCAB_FULL[7]
    when 8, :mrg then BM::XPARAM_VOCAB_FULL[8]
    when 9, :trg then BM::XPARAM_VOCAB_FULL[9]
    else; ""
    end
  end
  #--------------------------------------------------------------------------
  def self.sparam_a(id)
    case id
    when 0, :tgr then BM::SPARAM_VOCAB[0]
    when 1, :grd then BM::SPARAM_VOCAB[1]
    when 2, :rec then BM::SPARAM_VOCAB[2]
    when 3, :pha then BM::SPARAM_VOCAB[3]
    when 4, :mcr then BM::SPARAM_VOCAB[4]
    when 5, :tcr then BM::SPARAM_VOCAB[5]
    when 6, :pdr then BM::SPARAM_VOCAB[6]
    when 7, :mdr then BM::SPARAM_VOCAB[7]
    when 8, :fdr then BM::SPARAM_VOCAB[8]
    when 9, :exr then BM::SPARAM_VOCAB[9]
    else; ""
    end
  end
  #--------------------------------------------------------------------------
  def self.sparam_f(id)
    case id
    when 0, :tgr then BM::SPARAM_VOCAB_FULL[0]
    when 1, :grd then BM::SPARAM_VOCAB_FULL[1]
    when 2, :rec then BM::SPARAM_VOCAB_FULL[2]
    when 3, :pha then BM::SPARAM_VOCAB_FULL[3]
    when 4, :mcr then BM::SPARAM_VOCAB_FULL[4]
    when 5, :tcr then BM::SPARAM_VOCAB_FULL[5]
    when 6, :pdr then BM::SPARAM_VOCAB_FULL[6]
    when 7, :mdr then BM::SPARAM_VOCAB_FULL[7]
    when 8, :fdr then BM::SPARAM_VOCAB_FULL[8]
    when 9, :exr then BM::SPARAM_VOCAB_FULL[9]
    else; ""
    end
  end
  #--------------------------------------------------------------------------
  def self.cparam_a(id)
    case id
      when :hcr, :tcr_y, :gcr, :cdr, :wur, :hp_physical, :mp_physical, :mp_magical, :hp_magical
        BM::CPARAM_VOCAB[id]
      when :gut
        return unless $imported["BubsGuts"]
        Vocab.guts_a
      else; ""
    end
  end
  #--------------------------------------------------------------------------
  def self.cparam_f(id)
    case id
      when :hcr, :tcr_y, :gcr, :cdr, :wur, :hp_physical, :mp_physical, :mp_magical, :hp_magical
        BM::CPARAM_VOCAB_FULL[id]
      when :gut
        return unless $imported["BubsGuts"]
        Vocab.guts
      else; ""
    end
  end
end
#==============================================================================
# ** Cache
#==============================================================================
module Cache
  #--------------------------------------------------------------------------
  # new method: storage_image
  #--------------------------------------------------------------------------
  def self.storage_image(bitmap, name)
    @image_cache ||= {}
    @image_cache[name] = bitmap unless @image_cache.has_key?(name)
    @image_cache[name]
  end
  #--------------------------------------------------------------------------
  # new method: storage_image
  #--------------------------------------------------------------------------
  def self.restore_image(name)
    return false if @image_cache.nil? || !@image_cache.has_key?(name)
    @image_cache[name]
  end
end
#==============================================================================
# ** Game_Action
#==============================================================================
class Game_Action
  #--------------------------------------------------------------------------
  # * Overwrite: targets_for_friends
  #--------------------------------------------------------------------------
  def targets_for_friends
    if item.for_user?
      [subject]
    elsif item.for_dead_friend?
      if item.for_one?
        [friends_unit.smooth_dead_target(@target_index)]
      else
        friends_unit.dead_members
      end
    elsif item.for_friend?
      if item.for_one?
        if @target_index < 0
          [friends_unit.random_target]
        else
          [friends_unit.smooth_target(@target_index)]
        end
      else
        friends_unit.alive_members
      end
    end
  end
end
#==============================================================================
# ** Game_BattlerBase
#==============================================================================
class Game_BattlerBase
  #--------------------------------------------------------------------------
  # * New Method: atk_element_rate
  #--------------------------------------------------------------------------
  def atk_element_rate(id); features_sum(FEATURE_ATK_ELEMENT, id); end
end
#==============================================================================
# ** Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Alias: Remove the equipment that can not be equipped with Item_gain,
  # returned to the party equipment that removed
  #--------------------------------------------------------------------------
  alias :bm_base_rui :release_unequippable_items
  def release_unequippable_items(item_gain = true)
    loop do
      last_equips = equips.dup
      bm_base_rui(item_gain)
      return if equips == last_equips
    end
  end
end
#==============================================================================
# ** Game_Player
#==============================================================================
class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # * Alias: move_by_input
  #--------------------------------------------------------------------------
  alias :bm_base_mbi :move_by_input
  def move_by_input
    return if !movable? || $game_map.interpreter.running?
    if Input.dir4 > 0
      if Input.press?(BM::ROTATE_INPUT)
        set_direction(Input.dir4)
      else
        bm_base_mbi
      end
    end
  end
end
#==============================================================================
# ** Game_Event
#==============================================================================
class Game_Event
  #--------------------------------------------------------------------------
  # * New method: name
  #--------------------------------------------------------------------------
  def name; @event ? @event.name : ""; end
end
#==============================================================================#
# ** Game_Interpreter
#==============================================================================#
class Game_Interpreter
  #--------------------------------------------------------------------------
  # * New Method: Set SelfSwitch
  #--------------------------------------------------------------------------
  def setSelfSwitch(map, eID, selfSwitch, trueFalse)
    switch = [map, eID, selfSwitch]
    $game_self_switches[switch] = trueFalse
    $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: Is SelfSwitch true/false?
  #--------------------------------------------------------------------------
  def isSelfSwitch?(map, eID, selfSwitch)
    switch = [map, eID, selfSwitch]
    $game_self_switches[switch]
  end
  #--------------------------------------------------------------------------
  # * New Method: Set all SelfSwitches
  #--------------------------------------------------------------------------
  def setAllSelf(map, eID, trueFalse)
    switches = ["A","B","C","D"]
    for i in switches
      setSelfSwitch(map, eID, i, trueFalse)
    end
    $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: Self On
  #--------------------------------------------------------------------------
  def self_on(mapID,eventID,switch)
     $game_self_switches[[mapID, eventID, switch]] = true
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: Self Off
  #--------------------------------------------------------------------------
  def self_off(mapID,eventID,switch)
     $game_self_switches[[mapID, eventID, switch]] = false
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: A switch on
  #--------------------------------------------------------------------------
  def a_on(mapID,eventID)
     $game_self_switches[[mapID, eventID, "A"]] = true
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: A switch off
  #--------------------------------------------------------------------------
  def a_off(mapID,eventID)
     $game_self_switches[[mapID, eventID, "A"]] = false
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: B switch on
  #--------------------------------------------------------------------------
  def b_on(mapID,eventID)
     $game_self_switches[[mapID, eventID, "B"]] = true
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: B switch off
  #--------------------------------------------------------------------------
  def b_off(mapID,eventID)
     $game_self_switches[[mapID, eventID, "B"]] = false
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: C switch on
  #--------------------------------------------------------------------------
  def c_on(mapID,eventID)
     $game_self_switches[[mapID, eventID, "C"]] = true
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: C switch off
  #--------------------------------------------------------------------------
  def c_off(mapID,eventID)
     $game_self_switches[[mapID, eventID, "C"]] = false
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: D switch on
  #--------------------------------------------------------------------------
  def d_on(mapID,eventID)
    $game_self_switches[[mapID, eventID, "D"]] = true
    $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * New Method: D switch off
  #--------------------------------------------------------------------------
  def d_off(mapID,eventID)
     $game_self_switches[[mapID, eventID, "D"]] = false
     $game_map.refresh
  end
  #--------------------------------------------------------------------------
  # * Alias: Change of state
  #--------------------------------------------------------------------------
  alias :bm_base_c313 :command_313
  def command_313
    bm_base_c313
    $game_party.clear_results
  end
end
#==============================================================================
# ** Window_Base
#==============================================================================
class Window_Base < Window
  alias :bm_base_pnc :process_normal_character
  def process_normal_character(c, pos)
    return unless c >= ' '
    bm_base_pnc(c, pos)
  end
  #--------------------------------------------------------------------------
  # * New method: exp_gauge1
  #--------------------------------------------------------------------------
  def exp_gauge1; return text_color(BM::EXP_GAUGE1); end
  #--------------------------------------------------------------------------
  # * New method: exp_gauge2
  #--------------------------------------------------------------------------
  def exp_gauge2; return text_color(BM::EXP_GAUGE2); end
  #--------------------------------------------------------------------------
  # * New method: param_gauge1
  #--------------------------------------------------------------------------
  def param_gauge1(param_id); return BM::PARAM_COLOUR[param_id][1]; end
  #--------------------------------------------------------------------------
  # * New method: param_gauge2
  #--------------------------------------------------------------------------
  def param_gauge2(param_id); return BM::PARAM_COLOUR[param_id][2]; end
  #--------------------------------------------------------------------------
  # * New method: standby color
  #--------------------------------------------------------------------------
  def standby_color(actor)
    return BM::STANDBY_COLOR unless battle_party?(actor)
    return Color.new(0, 0, 0, 0)
  end
  #--------------------------------------------------------------------------
  # * Overwrite: gauge colors
  #--------------------------------------------------------------------------
  def hp_gauge_color1;   BM::PARAM_COLOUR[0][1];   end
  def hp_gauge_color2;   BM::PARAM_COLOUR[0][2];   end
  def mp_gauge_color1;   BM::PARAM_COLOUR[1][1];   end
  def mp_gauge_color2;   BM::PARAM_COLOUR[1][2];   end
  #--------------------------------------------------------------------------
  def item_name_color; BM::ITEM_NAME_COLOR; end
  #--------------------------------------------------------------------------
  # * New Method: percent colour
  #--------------------------------------------------------------------------
  def percent_color(value)
    if value < 0; power_down_color
    elsif value > 0; power_up_color
    else;  normal_color
    end
  end
  #--------------------------------------------------------------------------
  # * New Method: Get Percentage of exp needed
  #--------------------------------------------------------------------------
  def exp_rate(actor)
    now_exp = actor.exp - actor.current_level_exp
    next_exp = actor.next_level_exp - actor.current_level_exp
    rate = now_exp * 1.0 / next_exp
    rate = [[rate, 1.0].min, 0.0].max
  end
  #--------------------------------------------------------------------------
  # * New Method: Get Percentage of Paramaters
  #--------------------------------------------------------------------------
  def param_ratio(actor, param_id)
    minimum = 0
    case BM::PARAM_RATIO_MAX
    when :set
      maximum = BM::PARAM_MAX
    when :max
      maximum = actor.param_max(param_id)
    when :current
      maximum = 1
    end
    for i in 2..7
      maximum = [actor.param(i), maximum].max
      minimum = [actor.param(i), minimum].min
    end
    return 1.0 if maximum == minimum
    rate = actor.param(param_id).to_f/maximum.to_f
    return rate
  end
  #--------------------------------------------------------------------------
  # * New Method: Draw Portrait
  #     enabled : Enabled flag. When false, draw semi-transparently.
  #--------------------------------------------------------------------------
  def draw_portrait(portrait_name, x, y, enabled = true)
    return unless portrait_exist?(portrait_name)
    bitmap = Cache.portrait(portrait_name)
    rect = Rect.new(0, 0, bitmap.width, bitmap.height)
    contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha)
    bitmap.dispose
  end
  #--------------------------------------------------------------------------
  # * New Method: Draw Actor Portrait
  #--------------------------------------------------------------------------
  def draw_actor_portrait(actor, x, y, enabled = true)
    filename = "#{actor.face_name}-#{actor.face_index}"
    return unless portrait_exist?(filename)
    draw_portrait(filename, x, y, enabled)
  end
  #--------------------------------------------------------------------------
  # * Alias: Draw Actor level
  #--------------------------------------------------------------------------
  alias :bm_base_dal :draw_actor_level
  def draw_actor_level(actor, x, y, width = 100)
    draw_gauge(x + 10, y, width - 10, exp_rate(actor), exp_gauge1, exp_gauge2) if BM::SHOW_EXP_GAUGE
    change_color(system_color)
    draw_text(x, y, 32, line_height, Vocab::level_a)
    change_color(normal_color)
    draw_text(x, y, width, line_height, actor.level.group, 2)
  end
  #--------------------------------------------------------------------------
  # * Alias: Draw Parameters
  #--------------------------------------------------------------------------
  alias :bm_base_dap :draw_actor_param
  def draw_actor_param(actor, x, y, param_id, width = 156)
    if BM::SHOW_PARAM_GAUGE
      draw_gauge(x, y, width, param_ratio(actor, param_id), param_gauge1(param_id), param_gauge2(param_id))
    end
    change_color(system_color)
    draw_text(x, y, 120, line_height, Vocab::param(param_id))
    change_color(normal_color)
    draw_text(x, y, width, line_height, actor.param(param_id).group, 2)
  end
  #--------------------------------------------------------------------------
  # * New Method: battle_party?
  #--------------------------------------------------------------------------
  def battle_party?(actor)
    if BM::NON_PARTY_MEMBER_TRANSPARENCY
      return $game_party.battle_members.include?(actor)
    else; true
    end
  end
  #--------------------------------------------------------------------------
  # * Overwrite: draw_actor_face
  #--------------------------------------------------------------------------
  alias :bm_menu_daf :draw_actor_face
  def draw_actor_face(actor, x, y, enabled = battle_party?(actor))
    face_background(actor, x, y)
    bm_menu_daf(actor, x, y, enabled)
  end
  #--------------------------------------------------------------------------
  # * New Method: face_background
  #--------------------------------------------------------------------------
  def face_background(actor, x, y, width = 96, height = 96)
    contents.fill_rect(x, y, width, height, standby_color(actor))
  end
  #--------------------------------------------------------------------------
  # * Overwrite: draw_character
  #--------------------------------------------------------------------------
  def draw_character(character_name, character_index, x, y, ani = false)
    return unless character_name
    bitmap = Cache.character(character_name)
    sign = character_name[/^[\!\$]./]
    if sign && sign.include?('$')
      cw = bitmap.width / 3
      ch = bitmap.height / 4
    else
      cw = bitmap.width / 12
      ch = bitmap.height / 8
    end
    n = character_index
    step = 0
    step = @walk if ani
    src_rect = Rect.new((n%4*3+1+step)*cw, (n/4*4)*ch, cw, ch)
    contents.blt(x - cw / 2, y - ch, bitmap, src_rect, ani ? 255 : translucent_alpha)
  end
  #--------------------------------------------------------------------------
  # * Overwrite: draw_actor_graphic
  #--------------------------------------------------------------------------
  def draw_actor_graphic(actor, x, y, ani = false)
    draw_character(actor.character_name, actor.character_index, x, y, ani)
  end
  #--------------------------------------------------------------------------
  # * Alias: draw_actor_name
  #--------------------------------------------------------------------------
  alias :bm_base_dan :draw_actor_name
  def draw_actor_name(*args)
    contents.font.bold = BM::TEXT[:bold][:actor_name]
    contents.font.italic = BM::TEXT[:italic][:actor_name]
    bm_base_dan(*args)
    contents.font.bold = Font.default_bold
    contents.font.italic = Font.default_italic
  end
  #--------------------------------------------------------------------------
  # * Alias: draw_actor_class
  #--------------------------------------------------------------------------
  alias :bm_base_dac :draw_actor_class
  def draw_actor_class(*args)
    contents.font.bold = BM::TEXT[:bold][:actor_class]
    contents.font.italic = BM::TEXT[:italic][:actor_class]
    bm_base_dac(*args)
    contents.font.bold = Font.default_bold
    contents.font.italic = Font.default_italic
  end
  #--------------------------------------------------------------------------
  # * New Method: ani_motion
  #--------------------------------------------------------------------------
  def ani_motion
    @animtime += 1
    if @animtime == 10
      case @walk
      when 1; @walk -= 1
      when -1; @walk += 1
      when 0
        if @step == 1
          @walk = -1
          @step = 0
        else
          @walk = 1
          @step = 1
        end
      end
      refresh
      @animtime = 0
    end
  end
  #--------------------------------------------------------------------------
  # * game_time
  #--------------------------------------------------------------------------
  def game_time
    gametime = Graphics.frame_count / Graphics.frame_rate
    hours = gametime / 3600
    minutes = gametime / 60 % 60
    seconds = gametime % 60
    result = sprintf("%d:%02d:%02d", hours, minutes, seconds)
    return result
  end
  #--------------------------------------------------------------------------
  # * new method: draw_icon_face
  #--------------------------------------------------------------------------
  def draw_icon_face(actor, dest_rect, enabled)
    bitmap = Cache.face(actor.face_name)
    rect = Rect.new(actor.face_index % 4 * 96, actor.face_index / 4 * 96, 96, 96)
    bitmap.blur if dest_rect.width < 96/2
    cache = Bitmap.new(dest_rect.width, dest_rect.height)
    cache.stretch_blt(Rect.new(0,0,dest_rect.width, dest_rect.height), bitmap, rect)
    Cache.storage_image(cache, actor.face_name + actor.face_index.to_s)
    bitmap.dispose
    contents.stretch_blt(dest_rect, cache, Rect.new(0,0,cache.width,cache.height), enabled ? 255 : translucent_alpha)
  end
  #--------------------------------------------------------------------------
  # * new method: Draw icon Character Graphic
  #--------------------------------------------------------------------------
  def draw_icon_character(actor, dest_rect, enabled = false)
    bitmap = Cache.character(actor.character_name)
    sign = actor.character_name[/^[\!\$]./]
    if sign && sign.include?('$')
      cw = bitmap.width / 3
      ch = bitmap.height / 4
    else
      cw = bitmap.width / 12
      ch = bitmap.height / 8
    end
    n = actor.character_index
    step = 0
    step = @walk if enabled
    src_rect = Rect.new((n%4*3+1+step)*cw, (n/4*4)*ch, cw, ch)
    bitmap.blur if dest_rect.width < bitmap.width/2
    cache = Bitmap.new(dest_rect.width, dest_rect.height)
    cache.stretch_blt(Rect.new(0,0,dest_rect.width, dest_rect.height), bitmap, src_rect)
    Cache.storage_image(cache, actor.character_name + actor.character_index.to_s)
    contents.stretch_blt(dest_rect, cache, Rect.new(0,0,cache.width,cache.height), enabled ? 255 : translucent_alpha)
  end
end
#==============================================================================
# ** Window_Help
#==============================================================================
class Window_Help < Window_Base
  attr_accessor :item_color
  #--------------------------------------------------------------------------
  # * Alias: Object Initialization
  #--------------------------------------------------------------------------
  alias bm_base_init initialize
  def initialize(line_number = BM::HELP_SIZE)
    bm_base_init(line_number)
  end
  #--------------------------------------------------------------------------
  # * new method: item color
  #--------------------------------------------------------------------------
  def set_item_color(item)
    @item_color = normal_color
    @item_color = item_name_color
    return unless item.is_a?(RPG::BaseItem)      
    return unless $imported[:TH_ItemRarity] || $imported[:Vlue_WARandom]
    if $imported[:TH_ItemRarity]
      @item_color = item.rarity_colour  
    elsif $imported[:Vlue_WARandom]
      if item.is_a?(RPG::Weapon) || item.is_a?(RPG::Armor)
        @item_color = item.color
      elsif !item.is_a?(RPG::Weapon) || !item.is_a?(RPG::Armor)
        @item_color = item_name_color
      end  
    end
  end
  #--------------------------------------------------------------------------
  # * Overwrite: set_item
  #--------------------------------------------------------------------------
  alias :bm_base_si :set_item
  def set_item(item)
    return bm_base_si(item) unless BM::ADVANCED_HELP
    unless item; set_text("") ; return; end
    new_line = "\n"
    icon = BM::HELP_DISPLAY[0] ? '\i[' + item.icon_index.to_s + '] ' : ""
    name = BM::HELP_DISPLAY[1] ? item.name : ""
    desc = BM::HELP_DISPLAY[2] ? '\c[0]' + item.description : ""
    if item.is_a?(RPG::Weapon) || item.is_a?(RPG::Armor)
      weight = $imported["XAIL-INVENTORY-WEIGHT"] ? weight = " - Weight: #{item.weight}." : ""
      durability = $imported["XAIL-ITEM-DURABILITY"] ? durability = " - Durability: #{item.durability} / #{item.max_durability}." : ""
    else weight = ""; durability = ""
    end
    if BM::HELP_DISPLAY[3]
      if item.is_a?(RPG::Weapon) ; item_type = " (" + Vocab.weapon_types(item.wtype_id) + ")" end
      if item.is_a?(RPG::Armor) ; item_type = " (" + Vocab.armor_types(item.atype_id) + ")" end
      if item.is_a?(RPG::Skill) ; item_type = " (" + Vocab.skill_types(item.stype_id) + ")" end
    else; item_type = ""
    end
    item_text = icon + name + item_type.to_s + weight + durability + new_line + desc
    set_item_color(item)
    set_text(item_text)
  end
  #--------------------------------------------------------------------------
  # * Overwrite: Draw Text with Control Characters
  #--------------------------------------------------------------------------
  def draw_text_ex(x, y, text)
    reset_font_settings
    change_color(@item_color) unless @item_color == nil
    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_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Selectable
  #--------------------------------------------------------------------------
  # * New Method: face_background
  #--------------------------------------------------------------------------
  def face_background(actor, x, y, width = 96, height = 96)
  end
end
#==============================================================================
# ** Window_SkillStatus
#==============================================================================
class Window_SkillStatus < Window_Base
  if BM::MOVE_STATE_OVER_FACE
    alias :bm_skill_dai :draw_actor_icons
    def draw_actor_icons(actor, x, y)
      bm_skill_dai(actor, 0, 72)
    end
  end
end
#==============================================================================
# ** Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :icon_index
  #--------------------------------------------------------------------------
  # Alias: Setup
  #--------------------------------------------------------------------------
  alias :bm_base_setup :setup
  def setup(actor_id)
    bm_base_setup(actor_id)
    @icon_index = 0
  end
end
#===============================================================================
#
# END OF FILE
#
#===============================================================================
This is the script that made that gauge appeared by the character's level.
 
Last edited:

bgillisp

Global Moderators
Global Mod
Joined
Jul 2, 2014
Messages
13,522
Reaction score
14,255
First Language
English
Primarily Uses
RMVXA
That gauge looks like an Experience gauge. Does it go up when you gain EXP? If so there's a setting to turn it off or on, find the line that says

SHOW_EXP_GAUGE = true

and change it to

SHOW_EXP_GAUGE = false

If that is indeed an EXP gauge it should go away now.
 

AoSapphire

Noob - Sage
Veteran
Joined
Oct 23, 2017
Messages
48
Reaction score
38
First Language
English
Primarily Uses
RMVXA
That gauge looks like an Experience gauge. Does it go up when you gain EXP? If so there's a setting to turn it off or on, find the line that says

SHOW_EXP_GAUGE = true

and change it to

SHOW_EXP_GAUGE = false

If that is indeed an EXP gauge it should go away now.
Yeah, I just found it xD Funny I didn't notice it yesterday :kaodes:
I was also thinking about it when I read it. I mean the exp gauge shouldn't be in the menu and only should show in the character's status.
Now I just need to find where I can fix the words' position.
 

bgillisp

Global Moderators
Global Mod
Joined
Jul 2, 2014
Messages
13,522
Reaction score
14,255
First Language
English
Primarily Uses
RMVXA
That's probably going to be a different script and fix. Can you post a screenshot of the error so one can see what it looks like, and state what you want it to look like?
 

AoSapphire

Noob - Sage
Veteran
Joined
Oct 23, 2017
Messages
48
Reaction score
38
First Language
English
Primarily Uses
RMVXA
That's probably going to be a different script and fix. Can you post a screenshot of the error so one can see what it looks like, and state what you want it to look like?
Sorry for the late reply, I was going through the scripts again.
Before

After
The mp in the menu screen disappeared after I put the yea's ace menu engine...
I don't know which to look since I've been going at it since yesterday but now I'm sure it was this script that made the mp vanished.
I only, currently, have yea's scripts so I'm not sure.

The scripts which is misplacing the words are either in the , bm's basic module, bm's yea ace status add on, KGC 's bitmap extension and galv's menu theme engine. I'm not really sure which one though. I'll keep on looking.
Code:
#==============================================================================
#
# ▼ Yanfly Engine Ace - Ace Menu Engine v1.10
# -- Modified by: Doogy, The_Fireplace, rstp14
# -- Last Updated: 2018.02.27
# -- Level: Normal, Hard
# -- Requires: n/a
#
#==============================================================================

$imported = {} if $imported.nil?
$imported["YEA-AceMenuEngine"] = true

#==============================================================================
# ▼ Updates
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 2018.02.27 - Made it possible to draw the JP bar
# 2018.01.25 - Fixed drawing bug where the HP bar was drawn over the MP bar
#            - Made it possible to draw the MP bar if the TP bar is disabled
# 2016.01.17 - Fixed drawing bug found on the latest update, where the MP bar was drawn behind the HP bar.
# 2015.01.17 - Display update MP gauge behave the same way as TP gauge (hidden if no skill use it).
# 2012.01.03 - Compatibility Update: Ace Item Menu
# 2012.01.01 - Compatibility Update: Kread-EX's Synthesis
#            - Compatibility Update: Kread-EX's Grathnode Install
#            - Compatibility Update: Yami's Slot Battle
# 2011.12.23 - Script efficiency optimized.
# 2011.12.19 - Compatibility Update: Class System
# 2011.12.15 - Updated for better menu MP/TP gauge management.
# 2011.12.13 - Compatibility Update: Ace Equip Engine
# 2011.12.07 - Update to allow for switches to also hide custom commands.
# 2011.12.06 - Started Script and Finished.
#
#==============================================================================
# ▼ Introduction
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# The menu system in RPG Maker VX Ace is great. However, it lacks the user
# customization that RPG Maker 2003 allowed. With this script, you can add,
# remove, and rearrange menu commands as you see fit. In addition to that, you
# can add in menu commands that lead to common events or even custom commands
# provided through other scripts.
#
# This script also provides window appearance management such as setting almost
# all command windows to be center aligned or changing the position of the
# help window. You can also opt to show the TP Gauge in the main menu as well
# as in the skill menu.
#
#==============================================================================
# ▼ Instructions
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ▼ Materials/素材 but above ▼ Main. Remember to save.
#
# Edit the settings in the module below as you see fit.
#
#==============================================================================
# ▼ Compatibility
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
# it will run with RPG Maker VX without adjusting.
#
#==============================================================================

module YEA
  module MENU
 
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # - General Menu Settings -
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # This changes the way menus appear in your game. You can change their
    # alignment, and the location of the help window, Note that any non-Yanfly
    # Engine Ace scripts may not conform to these menu styles.
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    HELP_WINDOW_LOCATION = 0     # 0-Top, 1-Middle, 2-Bottom.
    COMMAND_WINDOW_ALIGN = 1     # 0-Left, 1-Middle, 2-Right.
 
    # These settings below adjust the visual appearance of the main menu.
    # Change the settings as you see fit.
    MAIN_MENU_ALIGN = 0         # 0-Left, 1-Middle, 2-Right.
    MAIN_MENU_RIGHT = false      # false-Left, true-Right.
    MAIN_MENU_ROWS  = 10         # Maximum number of rows for main menu.
    DRAW_TP_GAUGE   = true       # If true, draws TP in the main menu.
    DRAW_MP_GAUGE   = true       # If true, draws MP in the main menu.
 
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # - Main Menu Settings -
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # These settings adjust the main menu, the order at which commands appear,
    # what text is displayed, and what the commands are linked to. Here's a
    # list of which commands do what:
    #
    # -------------------------------------------------------------------------
    # :command         Description
    # -------------------------------------------------------------------------
    # :item            Opens up the item menu. Default menu item.
    # :skill           Opens up the skill menu. Default menu item.
    # :equip           Opens up the equip menu. Default menu item.
    # :status          Opens up the status menu. Default menu item.
    # :formation       Lets player manage party. Default menu item.
    # :save            Opens up the save menu. Default menu item.
    # :game_end        Opens up the shutdown menu. Default menu item.
    #
    # :class           Requires YEA - Class System
    #
    # :gogototori      Requires Kread-EX's Go Go Totori! Synthesis
    # :grathnode       Requires Kread-EX's Grathnote Install
    # :sslots          Requires Yami's YSA - Slot Battle
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    COMMANDS =[
      :item,         # Opens up the item menu. Default menu item.
      :skill,        # Opens up the skill menu. Default menu item.
      :equip,        # Opens up the equip menu. Default menu item.
      :class,        # Requires YEA - Class System.
      :status,       # Opens up the status menu. Default menu item.
      :formation,    # Lets player manage party. Default menu item.
    # :event_1,      # Launches Common Event 1. Common Event Command.
    # :event_2,      # Launches Common Event 2. Common Event Command.
    # :debug,        # Opens up debug menu. Custom Command.
    # :shop,         # Opens up a shop to pawn items. Custom Command.
      :save,         # Opens up the save menu. Default menu item.
      :game_end,     # Opens up the shutdown menu. Default menu item.
    ] # Do not remove this.
 
    #--------------------------------------------------------------------------
    # - Common Event Commands -
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # If you insert one of the following commands into the COMMANDS array, the
    # player can trigger a common event to launch. You can disable certain
    # commands in the menu by binding them to a switch. If you don't want to
    # disable them, set the switch to 0 and it will always be enabled. The
    # ShowSwitch will prevent a command from appear if that switch is false.
    # Set it to 0 for it to have no impact.
    #--------------------------------------------------------------------------
    COMMON_EVENT_COMMANDS ={
    # :command => ["Display Name", EnableSwitch, ShowSwitch, Event ID],
      :event_1 => [        "Camp",           11,          0,        1],
      :event_2 => [   "Synthesis",            0,          0,        2],
    } # Do not remove this.
 
    #--------------------------------------------------------------------------
    # - Custom Commands -
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # For those who use scripts that may lead to other menu scenes, use this
    # hash to manage custom commands that run specific script calls. You can
    # disable certain commands in the menu by binding them to a switch. If you
    # don't want to disable them, set the switch to 0. The ShowSwitch will
    # prevent a command from appear if that switch is false. Set it to 0 for
    # it to have no impact.
    #--------------------------------------------------------------------------
    CUSTOM_COMMANDS ={
    # :command => ["Display Name", EnableSwitch, ShowSwitch, Handler Method],
      :debug   => [       "Debug",            0,          0, :command_debug],
      :shop    => [        "Shop",           12,          0,  :command_shop],
      :gogototori => ["Synthesis",            0,        0,  :command_totori],
      :grathnode => [ "Grathnode",            0,        0, :command_install],
    } # Do not remove this.
 
  end # MENU
end # YEA

#==============================================================================
# ▼ Editting anything past this point may potentially result in causing
# computer damage, incontinence, explosion of user's head, coma, death, and/or
# halitosis so edit at your own risk.
#==============================================================================

#==============================================================================
# ■ Window_MenuCommand
#------------------------------------------------------------------------------
# This class is kept towards the top of the script to provide easier access.
#==============================================================================

class Window_MenuCommand < Window_Command
 
  #--------------------------------------------------------------------------
  # overwrite method: make_command_list
  #--------------------------------------------------------------------------
  def make_command_list
    for command in YEA::MENU::COMMANDS
      case command
      #--- Default Commands ---
      when :item
        add_command(Vocab::item,   :item,   main_commands_enabled)
      when :skill
        add_command(Vocab::skill,  :skill,  main_commands_enabled)
      when :equip
        add_command(Vocab::equip,  :equip,  main_commands_enabled)
      when :status
        add_command(Vocab::status, :status, main_commands_enabled)
      when :formation
        add_formation_command
      when :save
        add_original_commands
        add_save_command
      when :game_end
        add_game_end_command
      #--- Yanfly Engine Ace Commands ---
      when :class
        next unless $imported["YEA-ClassSystem"]
        add_class_command
      #--- Imported Commands ---
      when :sslots
        next unless $imported["YSA-SlotBattle"]
        add_sslots_command
      when :grathnode
        next unless $imported["KRX-GrathnodeInstall"]
        process_custom_command(command)
      when :gogototori
        next unless $imported["KRX-AlchemicSynthesis"]
        process_custom_command(command)
      #--- Imported Commands ---
      else
        process_common_event_command(command)
        process_custom_command(command)
      end
    end
  end
 
  #--------------------------------------------------------------------------
  # new method: process_common_event_command
  #--------------------------------------------------------------------------
  def process_common_event_command(command)
    return unless YEA::MENU::COMMON_EVENT_COMMANDS.include?(command)
    show = YEA::MENU::COMMON_EVENT_COMMANDS[command][2]
    continue = show <= 0 ? true : $game_switches[show]
    return unless continue
    text = YEA::MENU::COMMON_EVENT_COMMANDS[command][0]
    switch = YEA::MENU::COMMON_EVENT_COMMANDS[command][1]
    ext = YEA::MENU::COMMON_EVENT_COMMANDS[command][3]
    enabled = switch <= 0 ? true : $game_switches[switch]
    add_command(text, command, enabled, ext)
  end
 
  #--------------------------------------------------------------------------
  # new method: process_custom_command
  #--------------------------------------------------------------------------
  def process_custom_command(command)
    return unless YEA::MENU::CUSTOM_COMMANDS.include?(command)
    show = YEA::MENU::CUSTOM_COMMANDS[command][2]
    continue = show <= 0 ? true : $game_switches[show]
    return unless continue
    text = YEA::MENU::CUSTOM_COMMANDS[command][0]
    switch = YEA::MENU::CUSTOM_COMMANDS[command][1]
    enabled = switch <= 0 ? true : $game_switches[switch]
    add_command(text, command, enabled)
  end
 
end # Window_MenuCommand

#==============================================================================
# ■ Menu
#==============================================================================

module Menu
 
  #--------------------------------------------------------------------------
  # self.help_window_location
  #--------------------------------------------------------------------------
  def self.help_window_location
    return YEA::MENU::HELP_WINDOW_LOCATION
  end
 
  #--------------------------------------------------------------------------
  # self.command_window_align
  #--------------------------------------------------------------------------
  def self.command_window_align
    return YEA::MENU::COMMAND_WINDOW_ALIGN
  end
 
  #--------------------------------------------------------------------------
  # self.main_menu_align
  #--------------------------------------------------------------------------
  def self.main_menu_align
    return YEA::MENU::MAIN_MENU_ALIGN
  end
 
  #--------------------------------------------------------------------------
  # self.main_menu_right
  #--------------------------------------------------------------------------
  def self.main_menu_right
    return YEA::MENU::MAIN_MENU_RIGHT
  end
 
end # Menu

#==============================================================================
# ■ Game_Actor
#==============================================================================

class Game_Actor < Game_Battler
 
  #--------------------------------------------------------------------------
  # new method: draw_mp?
  #--------------------------------------------------------------------------
  def draw_mp?
    for skill in skills
      next unless added_skill_types.include?(skill.stype_id)
      return true if skill.mp_cost > 0
    end
    return false
  end
 
  #--------------------------------------------------------------------------
  # new method: draw_tp?
  #--------------------------------------------------------------------------
  def draw_tp?
    return false unless $data_system.opt_display_tp
    for skill in skills
      next unless added_skill_types.include?(skill.stype_id)
      return true if skill.tp_cost > 0
    end
    return false
  end
 
end # Game_Actor

#==============================================================================
# ■ Window_Base
#==============================================================================

class Window_Base < Window
 
  #--------------------------------------------------------------------------
  # overwrite method: draw_actor_simple_status
  #--------------------------------------------------------------------------
  def draw_actor_simple_status(actor, dx, dy)
    dy -= line_height / 2
    draw_actor_name(actor, dx, dy)
    draw_actor_level(actor, dx, dy + line_height * 1)
    draw_actor_icons(actor, dx, dy + line_height * 2)
    dw = contents.width - dx - 124
    draw_actor_class(actor, dx + 120, dy, dw)
    draw_actor_hp(actor, dx + 120, dy + line_height * 1, dw)
    if YEA::MENU::DRAW_TP_GAUGE && actor.draw_tp? && (!actor.draw_mp? || !YEA::MENU::DRAW_MP_GAUGE)
      draw_actor_tp(actor, dx + 120, dy + line_height * 2, dw)
    elsif YEA::MENU::DRAW_TP_GAUGE && YEA::MENU::DRAW_MP_GAUGE && actor.draw_tp? && actor.draw_mp?
      if $imported["YEA-BattleEngine"]
        draw_actor_tp(actor, dx + 120, dy + line_height * 2, dw/2 - 1)
        draw_actor_mp(actor, dx + 120 + dw/2, dy + (line_height * 2), dw/2 + 1)
      else
        draw_actor_mp(actor, dx + 120, dy + line_height * 2, dw/2 - 1)
        draw_actor_tp(actor, dx + 120 + dw/2, dy + line_height * 2, dw/2 + 1)
      end
    elsif YEA::MENU::DRAW_MP_GAUGE && actor.draw_mp?
      draw_actor_mp(actor, dx + 120, dy + line_height * 2, dw)
    end
    return unless $imported["YEA-JPManager"]
    draw_actor_jp(actor, dx + 120, dy, dw)
 
  end
 
end # Window_Base

#==============================================================================
# ■ Window_Command
#==============================================================================

class Window_Command < Window_Selectable
 
  #--------------------------------------------------------------------------
  # overwrite method: alignment
  #--------------------------------------------------------------------------
  def alignment
    return Menu.command_window_align
  end
 
end # Window_Command

#==============================================================================
# ■ Window_MenuCommand
#==============================================================================

class Window_MenuCommand < Window_Command
 
  #--------------------------------------------------------------------------
  # alias method: init_command_position
  #--------------------------------------------------------------------------
  class <<self; alias init_command_position_ame init_command_position; end
  def self.init_command_position
    init_command_position_ame
    @@last_command_oy = nil
  end
 
  #--------------------------------------------------------------------------
  # overwrite method: visible_line_number
  #--------------------------------------------------------------------------
  def visible_line_number
    return [[item_max, YEA::MENU::MAIN_MENU_ROWS].min, 1].max
  end
 
  #--------------------------------------------------------------------------
  # overwrite method: alignment
  #--------------------------------------------------------------------------
  def alignment
    return Menu.main_menu_align
  end
 
  #--------------------------------------------------------------------------
  # alias method: process_ok
  #--------------------------------------------------------------------------
  alias window_menucommand_process_ok_ame process_ok
  def process_ok
    @@last_command_oy = self.oy
    window_menucommand_process_ok_ame
  end
 
  #--------------------------------------------------------------------------
  # alias method: select_last
  #--------------------------------------------------------------------------
  alias window_menucommand_select_last_ame select_last
  def select_last
    window_menucommand_select_last_ame
    self.oy = @@last_command_oy unless @@last_command_oy.nil?
    @@last_command_oy = nil
  end
 
end # Window_MenuCommand

#==============================================================================
# ■ Scene_Menu
#==============================================================================

class Scene_Menu < Scene_MenuBase
 
  #--------------------------------------------------------------------------
  # alias method: start
  #--------------------------------------------------------------------------
  alias scene_menu_start_ame start
  def start
    scene_menu_start_ame
    relocate_windows
  end
 
  #--------------------------------------------------------------------------
  # new method: relocate_windows
  #--------------------------------------------------------------------------
  def relocate_windows
    return unless Menu.main_menu_right
    @command_window.x = Graphics.width - @command_window.width
    @gold_window.x = Graphics.width - @gold_window.width
    @status_window.x = 0
  end
 
end # Scene_Menu

#==============================================================================
# ■ Scene_Item
#==============================================================================

class Scene_Item < Scene_ItemBase
 
  #--------------------------------------------------------------------------
  # alias method: start
  #--------------------------------------------------------------------------
  alias scene_item_start_ame start
  def start
    scene_item_start_ame
    return if $imported["YEA-ItemMenu"]
    relocate_windows
  end
 
  #--------------------------------------------------------------------------
  # new method: relocate_windows
  #--------------------------------------------------------------------------
  def relocate_windows
    case Menu.help_window_location
    when 0 # Top
      @help_window.y = 0
      @category_window.y = @help_window.height
      @item_window.y = @category_window.y + @category_window.height
    when 1 # Middle
      @category_window.y = 0
      @help_window.y = @category_window.height
      @item_window.y = @help_window.y + @help_window.height
    else # Bottom
      @category_window.y = 0
      @item_window.y = @category_window.height
      @help_window.y = @item_window.y + @item_window.height
    end
    if $imported["YEA-ItemMenu"]
      @types_window.y = @category_window.y
      @status_window.y = @category_window.y
    end
  end
 
end # Scene_Item

#==============================================================================
# ■ Scene_Skill
#==============================================================================

class Scene_Skill < Scene_ItemBase
 
  #--------------------------------------------------------------------------
  # alias method: start
  #--------------------------------------------------------------------------
  alias scene_skill_start_ame start
  def start
    scene_skill_start_ame
    relocate_windows
  end
 
  #--------------------------------------------------------------------------
  # new method: relocate_windows
  #--------------------------------------------------------------------------
  def relocate_windows
    case Menu.help_window_location
    when 0 # Top
      @help_window.y = 0
      @command_window.y = @help_window.height
      @status_window.y = @help_window.height
      @item_window.y = @status_window.y + @status_window.height
    when 1 # Middle
      @command_window.y = 0
      @status_window.y = 0
      @help_window.y = @status_window.y + @status_window.height
      @item_window.y = @help_window.y + @help_window.height
    else # Bottom
      @command_window.y = 0
      @status_window.y = 0
      @item_window.y = @status_window.y + @status_window.height
      @help_window.y = @item_window.y + @item_window.height
    end
  end
 
end # Scene_Skill

#==============================================================================
# ■ Scene_Equip
#==============================================================================

class Scene_Equip < Scene_MenuBase
 
  #--------------------------------------------------------------------------
  # alias method: start
  #--------------------------------------------------------------------------
  alias scene_equip_start_ame start
  def start
    scene_equip_start_ame
    relocate_windows
    relocate_aee_windows
  end
 
  #--------------------------------------------------------------------------
  # new method: relocate_windows
  #--------------------------------------------------------------------------
  def relocate_windows
    return if $imported["YEA-AceEquipEngine"]
    case Menu.help_window_location
    when 0 # Top
      @help_window.y = 0
      @status_window.y = @help_window.height
      @command_window.y = @help_window.height
      @slot_window.y = @command_window.y + @command_window.height
      @item_window.y = @slot_window.y + @slot_window.height
    when 1 # Middle
      @status_window.y = 0
      @command_window.y = 0
      @slot_window.y = @command_window.y + @command_window.height
      @help_window.y = @slot_window.y + @slot_window.height
      @item_window.y = @help_window.y + @help_window.height
    else # Bottom
      @status_window.y = 0
      @command_window.y = 0
      @slot_window.y = @command_window.y + @command_window.height
      @item_window.y = @slot_window.y + @slot_window.height
      @help_window.y = @item_window.y + @item_window.height
    end
  end
 
  #--------------------------------------------------------------------------
  # new method: relocate_aee_windows
  #--------------------------------------------------------------------------
  def relocate_aee_windows
    return unless $imported["YEA-AceEquipEngine"]
    case Menu.help_window_location
    when 0 # Top
      @help_window.y = 0
      @command_window.y = @help_window.height
      @slot_window.y = @command_window.y + @command_window.height
    when 1 # Middle
      @command_window.y = 0
      @help_window.y = @command_window.height
      @slot_window.y = @help_window.y + @help_window.height
    else # Bottom
      @command_window.y = 0
      @slot_window.y = @command_window.height
      @help_window.y = @slot_window.y + @slot_window.height
    end
    @actor_window.y = @command_window.y
    @item_window.y = @slot_window.y
    @status_window.y = @slot_window.y
  end
 
end # Scene_Equip

#==============================================================================
# ■ Scene_Menu
#==============================================================================

class Scene_Menu < Scene_MenuBase
 
  #--------------------------------------------------------------------------
  # alias method: create_command_window
  #--------------------------------------------------------------------------
  alias scene_menu_create_command_window_ame create_command_window
  def create_command_window
    scene_menu_create_command_window_ame
    process_common_event_commands
    process_custom_commands
  end
 
  #--------------------------------------------------------------------------
  # new method: process_common_event_commands
  #--------------------------------------------------------------------------
  def process_common_event_commands
    for command in YEA::MENU::COMMANDS
      next unless YEA::MENU::COMMON_EVENT_COMMANDS.include?(command)
      @command_window.set_handler(command, method(:command_common_event))
    end
  end
 
  #--------------------------------------------------------------------------
  # new method: command_common_event
  #--------------------------------------------------------------------------
  def command_common_event
    event_id = @command_window.current_ext
    return return_scene if event_id.nil?
    return return_scene if $data_common_events[event_id].nil?
    $game_temp.reserve_common_event(event_id)
    return_scene
  end
 
  #--------------------------------------------------------------------------
  # new method: process_custom_commands
  #--------------------------------------------------------------------------
  def process_custom_commands
    for command in YEA::MENU::COMMANDS
      next unless YEA::MENU::CUSTOM_COMMANDS.include?(command)
      called_method = YEA::MENU::CUSTOM_COMMANDS[command][3]
      @command_window.set_handler(command, method(called_method))
    end
  end
 
  #--------------------------------------------------------------------------
  # new method: command_debug
  #--------------------------------------------------------------------------
  def command_debug
    SceneManager.call(Scene_Debug)
  end
 
  #--------------------------------------------------------------------------
  # new method: command_shop
  #--------------------------------------------------------------------------
  def command_shop
    goods = []
    SceneManager.call(Scene_Shop)
    SceneManager.scene.prepare(goods, false)
  end
 
  #--------------------------------------------------------------------------
  # new method: command_totori
  #--------------------------------------------------------------------------
  def command_totori
    return unless $imported['KRX-AlchemicSynthesis']
    SceneManager.call(Scene_Alchemy)
  end
 
end # Scene_Menu

#==============================================================================
#
# ▼ End of File
#
#==============================================================================

Edit: The MP on the leader/first player is there but the 2nd member's mp isn't showing at all.

Edit2:
Nevermind! I was able to make the mp appear again!:kaojoy:

I put yea's ace menu engine below yea's core engine and it worked! :kaoblush:

I just need to find the script who is responsible for misplacing the words and it's done! :kaosalute:
 
Last edited:

slimmmeiske2

Little Red Riding Hood
Global Mod
Joined
Sep 6, 2012
Messages
7,839
Reaction score
5,222
First Language
Dutch
Primarily Uses
RMXP

This thread is being closed, due to being solved. If for some reason you would like this thread re-opened, please report this post and leave a message why. Thank you.

 
Status
Not open for further replies.

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

How many parameters is 'too many'??
Yay, now back in action Happy Christmas time, coming back!






Back in action to develop the indie game that has been long overdue... Final Fallacy. A game that keeps on giving! The development never ends as the developer thinks to be the smart cookie by coming back and beginning by saying... "Oh bother, this indie game has been long overdue..." How could one resist such? No-one c
So I was playing with filters and this looked interesting...

Versus the normal look...

Kind of gives a very different feel. :LZSexcite:
To whom ever person or persons who re-did the DS/DS+ asset packs for MV (as in, they are all 48x48, and not just x2 the pixel scale) .... THANK-YOU!!!!!!!!! XwwwwX

Forum statistics

Threads
105,853
Messages
1,016,990
Members
137,562
Latest member
tamedeathman
Top