Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.

[XP] Menú OldSchool

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker XP [XP] Menú OldSchool

Mensaje por Wecoc el 2014-03-23, 20:40

Éste menú de estilo simplista imita el estilo de menú que había en RPG maker 95 (o 98, no estoy seguro xD) y su funcionamiento es equivalente al de la ventana de mensajes del RPG maker XP.

No requiere créditos.

Es un menú para 1 actor, pero usando el sistema de rotación de actors puede ser viable para >1.

Habrá tres versiones diferentes del script, (de momento ya hay hechas dos).
- Simple Demo (v1.0) .- Modifica solo el menú principal, no las otras escenas.
- Completed (v1.0) .- Modifica el menú principal y sus escenas internas
- Advanced (v1.0) .- Modificación del Completed mejorado para ventanas translúcidas

Hay algunas llamadas a script que se pueden hacer (viables en los tres) desde Llamar Script.

$game_system.menu_position = n # (0 -> arriba, 1 -> medio, 2 -> abajo) similar al Window Message

$game_system.menu_frame = n # (0 -> visible, 1 -> invisible) similar al Window Message

$game_system.menu_back_opacity = n # (de 0 a 255, 160 para que se vea como la del mensaje)

$game_system.menu_commands = [comandos] # Se pueden controlar los comandos de mensaje así como su orden, el script lee "Item", "Skill", "Equip", "Status", "Save", "End Game", si se quiere traducir habrá que cambiar la línea donde aparecen, que tiene una apariencia similar a
if $game_system.menu_commands[i] == "nombre" y para añadir nuevos comandos habrá que modificar el script.

Además en la versión Completed y en la Advanced hay un module llamado OLDSCHOOL donde podréis cambiar algunas otras globales.

Simple Demo v1.0:
Código:
#==============================================================================
# ** Menú OldSchool Simple Demo v1.0
#------------------------------------------------------------------------------
#  Menú estilo "OldSchool", el menú se mostrará como si fuera un mensaje.
#  Autor: Wecoc - No requiere créditos
#------------------------------------------------------------------------------
#  Como la caja de mensaje, éste tiene algunas opciones;
#  * Posición
#    $game_system.menu_position = n
#       ( donde n puede ser 0 (arriba), 1 (medio) o 2 (abajo) )
#  * Visibilidad
#    $game_system.menu_frame = n
#       ( donde n puede ser 0 (visible) o 1 (invisible) )
#  * Opacidad (back_opacity)
#    $game_system.menu_back_opacity = n
#       ( donde n va de 0 a 255; 160 para opacidad como mensaje )
#  * Comandos
#    $game_system.menu_commands = [comandos]
#------------------------------------------------------------------------------
#  Simple Demo - Modifica solo el menú principal, no las otras escenas
#  Completed - Modifica el menú principal y sus escenas internas
#  Advanced - Modificación del Completed mejorado para ventanas translúcidas
#==============================================================================

class Game_System
  attr_accessor :menu_position  # Opción de Menú: Posición de la Ventana
  attr_accessor :menu_frame     # Opción de Menú: Marco (visible)
  attr_accessor :menu_commands  # Opción de Menú: Comandos
  attr_accessor :menu_back_opacity  # Opción de Menú: Opacidad ventanas
  
  alias menu_oldschool initialize unless $@
  def initialize
    menu_oldschool
    @menu_position = 2
    @menu_frame = 0
    @menu_back_opacity = 160
    @menu_commands = ["Item", "Skill", "Equip", "Status", "Save", "End Game"]
  end
  
  def mes_to_menu
    @menu_position = @message_position
    @menu_frame = @message_frame
  end
end

class Scene_Menu
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end

  def main
    @spriteset = Spriteset_Map.new
    # Make command window
    @command_window = Window_Command.new(480, $game_system.menu_commands)
    @command_window.index = @menu_index
    @command_window.x = 80
    @command_window.height = 160
    case $game_system.menu_position
    when 0  # up
      @command_window.y = 16
    when 1  # middle
      @command_window.y = 160
    when 2  # down
      @command_window.y = 304
    end
    if $game_system.menu_frame == 0
      @command_window.opacity = 255
    else
      @command_window.opacity = 0
    end
    @command_window.back_opacity = $game_system.menu_back_opacity
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable Item
      for i in 0...$game_system.menu_commands.size
        if $game_system.menu_commands[i] == "Item"
          @command_window.disable_item(i)
        end
      end
      # Disable Skill
      for i in 0...$game_system.menu_commands.size
        if $game_system.menu_commands[i] == "Skill"
          @command_window.disable_item(i)
        end
      end
      # Disable Equip
      for i in 0...$game_system.menu_commands.size
        if $game_system.menu_commands[i] == "Equip"
          @command_window.disable_item(i)
        end
      end
      # Disable Status
      for i in 0...$game_system.menu_commands.size
        if $game_system.menu_commands[i] == "Status"
          @command_window.disable_item(i)
        end
      end
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable Save
      for i in 0...$game_system.menu_commands.size
        if $game_system.menu_commands[i] == "Save"
          @command_window.disable_item(i)
        end
      end
    end
    # Execute transition
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    @command_window.dispose
    @spriteset.dispose
  end

  def update
    $game_map.update
    $game_system.map_interpreter.update
    $game_system.update
    $game_screen.update
    @spriteset.update
    @command_window.update
    # If command window is active: call update_command
    if @command_window.active
      update_command
      return
    end
    # If status window is active: call update_status
  end

  def update_command
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end
    if Input.trigger?(Input::C)
      if $game_party.actors.size == 0 and @command_window.index < 4
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case $game_system.menu_commands[@command_window.index]
      when "Item"
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Item.new
      when "Skill"
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Skill.new(0)
      when "Equip"
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Equip.new(0)
      when "Status"
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Status.new(0)
      when "Save"
        if $game_system.save_disabled
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Save.new
      when "End Game"
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_End.new
      end
      return
    end
  end
end



Completed v1.0:
Código:
#==============================================================================
# ** Menú OldSchool Completed v1.0
#------------------------------------------------------------------------------
#  Menú estilo "OldSchool", el menú se mostrará como si fuera un mensaje.
#  Autor: Wecoc - No requiere créditos
#------------------------------------------------------------------------------
#  Como la caja de mensaje, éste tiene algunas opciones;
#  * Posición
#    $game_system.menu_position = n
#      ( donde n puede ser 0 (arriba), 1 (medio) o 2 (abajo) )
#  * Visibilidad
#    $game_system.menu_frame = n
#      ( donde n puede ser 0 (visible) o 1 (invisible) )
#  * Opacidad (back_opacity)
#    $game_system.menu_back_opacity = n
#      ( donde n va de 0 a 255; 160 para opacidad como mensaje )
#  * Comandos
#    $game_system.menu_commands = [comandos]
#------------------------------------------------------------------------------
#  Simple Demo - Modifica solo el menú principal, no las otras escenas
#  Completed - Modifica el menú principal y sus escenas internas
#  Advanced - Modificación del Completed mejorado para ventanas translúcidas
#==============================================================================

class Game_System
  attr_accessor :menu_position  # Opción de Menú: Posición de la Ventana
  attr_accessor :menu_frame    # Opción de Menú: Marco (visible)
  attr_accessor :menu_commands  # Opción de Menú: Comandos
  attr_accessor :menu_back_opacity  # Opción de Menú: Opacidad ventanas
 
  alias menu_oldschool initialize unless $@
  def initialize
    menu_oldschool
    @menu_position = 2
    @menu_frame = 0
    @menu_back_opacity = 255
    @menu_commands = ["Item", "Skill", "Equip", "Status", "Save", "End Game"]
  end
 
  def mes_to_menu
    @menu_position = @message_position
    @menu_frame = @message_frame
  end
end

module OLDSCHOOL
  # Globales para el menú
  ONLY_ITEMS = true # En Window_Item solo se muestran Items, no Weapons ni Armors
 
  BATTLE_SKILLS = true # En Window_Skill se mostraran también las de batalla
 
  ALL_EQUIP = false # En Window_Equip se mostrará todo el equipo obtenido, no
                    # solo el que el actor pueda equipar debido a su clase
                   
  SHOW_ICONS = true # Al dibujar items se mostraran con el icono
 
  PARENTHESIS = true # El número de obtenidos se mostrará "(n)", si no ": n"
 
  SPHELP_ITEM = true # Cuando usas un item, SPHelp se activa
 
  SPHELP_SKILL = true # Cuando usas una skill, SPHelp se activa
 
  SPHELP_EQUIP = true # Cuando cambias de equipo, SPHelp se activa
 
  ACTOR_SEL = true # Cuando seleccionas Skill, Equip o Status lo haces por actor
 
  GOLD = true # Cuando vas a Window_Item se mostrará una ventana con el dinero
end

class Window_Item < Window_Selectable
  def initialize
    super(82 + 32, 64, 248, 192)
    @column_max = 1
    refresh
    self.index = 0
  end

  def item
    return @data[self.index]
  end

  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    # Add item
    for i in 1...$data_items.size
      if $game_party.item_number(i) > 0
        @data.push($data_items[i])
      end
    end
    unless OLDSCHOOL::ONLY_ITEMS
      # Also add weapons and items if outside of battle
      unless $game_temp.in_battle
        for i in 1...$data_weapons.size
          if $game_party.weapon_number(i) > 0
            @data.push($data_weapons[i])
          end
        end
        for i in 1...$data_armors.size
          if $game_party.armor_number(i) > 0
            @data.push($data_armors[i])
          end
        end
      end
    end
    # If item count is not 0, make a bit map and draw all items
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end

  def draw_item(index)
    item = @data[index]
    case item
    when RPG::Item
      number = $game_party.item_number(item.id)
    when RPG::Weapon
      number = $game_party.weapon_number(item.id)
    when RPG::Armor
      number = $game_party.armor_number(item.id)
    end
    if item.is_a?(RPG::Item) and $game_party.item_can_use?(item.id)
      self.contents.font.color = normal_color
    else
      self.contents.font.color = disabled_color
    end
    x = 4
    y = index * 32
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    if OLDSCHOOL::SHOW_ICONS
      bitmap = RPG::Cache.icon(item.icon_name)
      opacity = self.contents.font.color == disabled_color ? 128 : 255
      self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)
    else
      self.contents.draw_text(x, y, 212, 32, item.name, 0)
    end
    if OLDSCHOOL::PARENTHESIS
      self.contents.draw_text(x + 156, y, 48, 32, "(#{number.to_s})", 2)
    else
      self.contents.draw_text(x + 156, y, 48, 32, ": #{number.to_s}", 2)
    end
  end
end

class Window_Skill < Window_Selectable
  attr_accessor :actor
  def initialize
    super(82 + 32, 64, 306, 192)
    @column_max = 1
    @actor = 0
    refresh
    self.index = 0
  end
 
  def item
    return @data[self.index]
  end

  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    # Add skill
    for i in 0...$game_party.actors[@actor].skills.size
      skill = $data_skills[$game_party.actors[@actor].skills[i]]
      if skill != nil
        if OLDSCHOOL::BATTLE_SKILLS and skill.occasion == 1
          next
        end
        @data.push(skill)
      end
    end
    # If item count is not 0, make a bit map and draw all items
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
 
  def draw_item(index)
    skill = @data[index]
    if $game_party.actors[@actor].skill_can_use?(skill.id)
      self.contents.font.color = normal_color
    else
      self.contents.font.color = disabled_color
    end
    x = 4
    y = index * 32
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    if OLDSCHOOL::SHOW_ICONS
      bitmap = RPG::Cache.icon(skill.icon_name)
      opacity = self.contents.font.color == disabled_color ? 128 : 255
      self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(x + 28, y, 212, 32, skill.name, 0)
    else
      self.contents.draw_text(x, y, 212, 32, skill.name, 0)
    end
    self.contents.draw_text(x + 212, y, 48, 32, skill.sp_cost.to_s, 2)
  end
end

class Window_Equip < Window_Selectable
  attr_accessor :choice_window
  attr_accessor :actor
  def initialize(actor)
    super(82 + 64, 64, 248, 192)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = actor
    refresh
  end
 
  def item
    return @data[self.index]
  end
 
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    return if @choice_window.nil?
    @data = []
    actor = $game_party.actors[@actor]
    case @choice_window.index
    when 0 # Weapon
      for i in 1...$data_weapons.size
        if $game_party.weapon_number(i) > 0
          if OLDSCHOOL::ALL_EQUIP == false and not
            actor.equippable?($data_weapons[i])
            next
          end
          @data.push($data_weapons[i])
        end
      end
      if actor.weapon_id != 0
        @data.push($data_weapons[actor.weapon_id])
      end
    when 1 # Shield
      for i in 1...$data_armors.size
        next if $data_armors[i].kind != 0
        if $game_party.armor_number(i) > 0
          if OLDSCHOOL::ALL_EQUIP == false and not
            actor.equippable?($data_armors[i])
            next
          end
          @data.push($data_armors[i])
        end
      end
      if actor.armor1_id != 0
        @data.push($data_armors[actor.armor1_id])
      end
    when 2 # Helmet
      for i in 1...$data_armors.size
        next if $data_armors[i].kind != 1
        if $game_party.armor_number(i) > 0
          if OLDSCHOOL::ALL_EQUIP == false and not
            actor.equippable?($data_armors[i])
            next
          end
          @data.push($data_armors[i])
        end
      end
      if actor.armor2_id != 0
        @data.push($data_armors[actor.armor2_id])
      end
    when 3 # Body
      for i in 1...$data_armors.size
        next if $data_armors[i].kind != 2
        if $game_party.armor_number(i) > 0
          if OLDSCHOOL::ALL_EQUIP == false and not
            actor.equippable?($data_armors[i])
            next
          end
          @data.push($data_armors[i])
        end
      end
      if actor.armor3_id != 0
        @data.push($data_armors[actor.armor3_id])
      end
    when 4 # Accessor
      for i in 1...$data_armors.size
        next if $data_armors[i].kind != 3
        if $game_party.armor_number(i) > 0
          if OLDSCHOOL::ALL_EQUIP == false and not
            actor.equippable?($data_armors[i])
            next
          end
          @data.push($data_armors[i])
        end
      end
      if actor.armor4_id != 0
        @data.push($data_armors[actor.armor4_id])
      end
    end
    @data.sort!{|x,y| x.id <=> y.id }
    @data.uniq!
    @data.push(nil)
    # If item count is not 0, make a bit map and draw all items
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
 
  def draw_item(index)
    item = @data[index]
    actor = $game_party.actors[@actor]
    return if item.nil?
    self.contents.font.color = normal_color
    unless actor.equippable?(item)
      self.contents.font.color = disabled_color
    end
    if item.is_a?(RPG::Weapon)
      if actor.weapon_id == item.id
        self.contents.font.color = system_color
      end
    end
    if item.is_a?(RPG::Armor)
      if actor.armor1_id == item.id or actor.armor2_id == item.id or
        actor.armor3_id == item.id or actor.armor4_id == item.id
          self.contents.font.color = system_color
      end
    end
    x = 4
    y = index * 32
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    if OLDSCHOOL::SHOW_ICONS
      bitmap = RPG::Cache.icon(item.icon_name)
      opacity = self.contents.font.color == disabled_color ? 128 : 255
      self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)
    else
      self.contents.draw_text(x, y, 212, 32, item.name, 0)
    end
  end
end

class Window_SHelp < Window_Base
  attr_reader :line0
  attr_reader :line1
  attr_reader :line2
  attr_reader :line3
 
  def initialize
    super(80, 0, 480, 160)
    self.contents = Bitmap.new(width - 32, height - 32)
    @line0 = ""
    @line1 = ""
    @line2 = ""
    @line3 = ""
  end
 
  def refresh
    self.contents.clear
    self.contents.draw_text(4,  0, 480, 32, @line0, 0)
    self.contents.draw_text(4, 32, 480, 32, @line1, 0)
    self.contents.draw_text(4, 64, 480, 32, @line2, 0)
    self.contents.draw_text(4, 96, 480, 32, @line3, 0)
  end
 
  def draw_line(line, text)
    case line
      when 0 then @line0 = text
      when 1 then @line1 = text
      when 2 then @line2 = text
      when 3 then @line3 = text
    end
    refresh
  end
 
  def draw_next_line(text)
    if @line0 == ""
      draw_line(0, text)
    elsif @line1 == ""
      draw_line(1, text)
    elsif @line2 == ""
      draw_line(2, text)
    elsif @line3 == ""
      draw_line(3, text)
    end
  end
 
  def clear
    @line0 = ""
    @line1 = ""
    @line2 = ""
    @line3 = ""
    refresh
  end
end

class Scene_Menu
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end

  def main
    @spriteset = Spriteset_Map.new
    # Make command window
    @command_window = Window_Command.new(480, $game_system.menu_commands)
    @command_window.index = @menu_index
    @command_window.x = 80
    @command_window.height = 160
    @command_window.z = 100
    @command_window.back_opacity = $game_system.menu_back_opacity
    # Make command window
    actors_array = []
    for i in 0...$game_party.actors.size
      actors_array.push($game_party.actors[i].name)
    end
    @actors_window = Window_Command.new(160, actors_array)
    @actors_window.index = 0
    @actors_window.x = 80 + 16
    @actors_window.height = 160
    @actors_window.z = 120
    @actors_window.back_opacity = $game_system.menu_back_opacity
    @actors_window.visible = false
    @actors_window.active = false
    # Make Item window
    @item_window = Window_Item.new
    @item_window.back_opacity = $game_system.menu_back_opacity
    @item_window.z = 150
    @item_window.visible = false
    @item_window.active = false
    # Make Gold window
    @gold_window = Window_Gold.new
    @gold_window.back_opacity = $game_system.menu_back_opacity
    @gold_window.x = 380
    @gold_window.z = 120
    @gold_window.visible = false
    @gold_window.active = false
    # Make Skill window
    @skill_window = Window_Skill.new
    @skill_window.back_opacity = $game_system.menu_back_opacity
    @skill_window.z = 150
    @skill_window.visible = false
    @skill_window.active = false
    # Make Equip choice window
    equipch_array = ["Weapon", "Shield", "Helmet", "Body", "Accessor"]
    @equipch_window = Window_Command.new(160, equipch_array)
    @equipch_window.x = 80 + 32
    @equipch_window.z = 150
    @equipch_window.back_opacity = $game_system.menu_back_opacity
    @equipch_window.visible = false
    @equipch_window.active = false
    # Make Equip window
    @equip_window = Window_Equip.new(0)
    @equip_window.choice_window = @equipch_window
    @equip_window.z = 200
    @equip_window.back_opacity = $game_system.menu_back_opacity
    @equip_window.visible = false
    @equip_window.active = false
    # Make Special Help window
    @sphelp_window = Window_SHelp.new
    @sphelp_window.z = 100
    @sphelp_window.back_opacity = $game_system.menu_back_opacity
    @sphelp_window.visible = false
    @sphelp_window.active = false
    # Make End window
    end_array = ["Menu Principal", "Salir", "Cancelar"]
    @end_window = Window_Command.new(192, end_array)
    @end_window.x = 320 - @end_window.width / 2
    @end_window.y = 240 - @end_window.height / 2
    @end_window.z = 300
    @end_window.back_opacity = $game_system.menu_back_opacity
    @end_window.visible = false
    @end_window.active = false
    # Game System Features
    case $game_system.menu_position
    when 0  # up
      @command_window.y = 16
      @gold_window.y =    16 + 8
      @actors_window.y =  16 + 4
      @item_window.y =    16 + 8
      @skill_window.y =  16 + 8
      @equipch_window.y = 16 + 8
      @equip_window.y =  16 + 24
      @sphelp_window.y =  16
    when 1  # middle
      @command_window.y = 160
      @gold_window.y =    160 + 8
      @actors_window.y =  160 + 4
      @item_window.y =    160 + 8
      @skill_window.y =  160 + 8
      @equipch_window.y = 160 + 8
      @equip_window.y =  160 + 24
      @sphelp_window.y =  160
    when 2  # down
      @command_window.y = 304
      @gold_window.y =    304 - 24
      @actors_window.y =  304 - 16
      @item_window.y =    304 - 24
      @skill_window.y =  304 - 24
      @equipch_window.y = 304 - 24
      @equip_window.y =  304 - 48
      @sphelp_window.y =  304
    end
    if $game_system.menu_frame == 0
      @command_window.opacity = 255
      @actors_window.opacity = 255
      @item_window.opacity = 255
      @gold_window.opacity = 255
      @skill_window.opacity = 255
      @equipch_window.opacity = 255
      @equip_window.opacity = 255
      @sphelp_window.opacity = 255
      @end_window.opacity = 255
    else
      @command_window.opacity = 0
      @actors_window.opacity = 0
      @item_window.opacity = 0
      @gold_window.opacity = 0
      @skill_window.opacity = 0
      @equipch_window.opacity = 0
      @equip_window.opacity = 0
      @sphelp_window.opacity = 0
      @end_window.opacity = 0
    end
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable Item, Skill, Equip and Status
      for i in 0...$game_system.menu_commands.size
        if $game_system.menu_commands[i] == "Item" or
          $game_system.menu_commands[i] == "Skill" or
          $game_system.menu_commands[i] == "Equip" or
          $game_system.menu_commands[i] == "Status"

          @command_window.disable_item(i)
        end
      end
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable Save
      for i in 0...$game_system.menu_commands.size
        if $game_system.menu_commands[i] == "Save"
          @command_window.disable_item(i)
        end
      end
    end
    # Execute transition
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    @command_window.dispose
    @actors_window.dispose
    @gold_window.dispose
    @item_window.dispose
    @skill_window.dispose
    @equipch_window.dispose
    @equip_window.dispose
    @end_window.dispose
    @sphelp_window.dispose
    @spriteset.dispose
  end

  def update
    @command_window.update
    @actors_window.update
    @item_window.update
    @skill_window.update
    @equipch_window.update
    @equip_window.update
    @end_window.update
    @sphelp_window.update
    @gold_window.update
    $game_map.update
    $game_system.map_interpreter.update
    $game_system.update
    $game_screen.update
    @spriteset.update
    if @command_window.active
      update_command
      return
    end
    if @actors_window.active
      update_actors
      return
    end
    if @item_window.active
      update_item
      return
    end
    if @skill_window.active
      update_skill
      return
    end
    if @equipch_window.active
      update_equipch
      return
    end
    if @equip_window.active
      update_equip
      return
    end
    if @sphelp_window.active
      update_sphelp
      return
    end
    if @end_window.active
      update_end
      return
    end
  end
   
  def disable_equipch
    @equipch_window.draw_item(0, @equipch_window.normal_color)
    @equipch_window.draw_item(1, @equipch_window.normal_color)
    @equipch_window.draw_item(2, @equipch_window.normal_color)
    @equipch_window.draw_item(3, @equipch_window.normal_color)
    @equipch_window.draw_item(4, @equipch_window.normal_color)
    actor = $data_actors[$game_party.actors[@actors_window.index].id]
    @equipch_window.disable_item(0) if actor.weapon_fix
    @equipch_window.disable_item(1) if actor.armor1_fix
    @equipch_window.disable_item(2) if actor.armor2_fix
    @equipch_window.disable_item(3) if actor.armor3_fix
    @equipch_window.disable_item(4) if actor.armor4_fix
  end
 
  def update_command
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end
    if Input.trigger?(Input::C)
      if $game_party.actors.size == 0 and @command_window.index < 4
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case $game_system.menu_commands[@command_window.index]
      when "Item"
        $game_system.se_play($data_system.decision_se)
        @item_window.index = 0
        if OLDSCHOOL::GOLD
          @gold_window.visible = true
        end
        @item_window.visible = true
        @item_window.active = true
        @command_window.active = false
      when "Skill"
        $game_system.se_play($data_system.decision_se)
        if OLDSCHOOL::ACTOR_SEL
          @actors_window.index = 0
          @actors_window.visible = true
          @actors_window.active = true
        else
          @skill_window.index = 0
          @skill_window.visible = true
          @skill_window.active = true
        end
        @command_window.active = false
      when "Equip"
        $game_system.se_play($data_system.decision_se)
        if OLDSCHOOL::ACTOR_SEL
          @actors_window.index = 0
          @actors_window.visible = true
          @actors_window.active = true
        else
          @equipch_window.index = 0
          disable_equipch
          @equipch_window.visible = true
          @equipch_window.active = true
        end
        @command_window.active = false
      when "Status"
        $game_system.se_play($data_system.decision_se)
        if OLDSCHOOL::ACTOR_SEL
          @actors_window.index = 0
          @actors_window.visible = true
          @actors_window.active = true
          @command_window.active = false
        else
          $scene = Scene_Status.new(0)
        end
      when "Save"
        if $game_system.save_disabled
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Save.new
      when "End Game"
        $game_system.se_play($data_system.decision_se)
        @end_window.visible = true
        @end_window.active = true
        @command_window.active = false
      end
      return
    end
  end
 
  def update_actors
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @command_window.active = true
      @actors_window.visible = false
      @actors_window.active = false
      return
    end
    if Input.trigger?(Input::C)
      case $game_system.menu_commands[@command_window.index]
      when "Skill"
        $game_system.se_play($data_system.decision_se)
        @skill_window.actor = @actors_window.index
        @skill_window.refresh
        @skill_window.index = 0
        @skill_window.visible = true
        @skill_window.active = true
        @actors_window.active = false
      when "Equip"
        $game_system.se_play($data_system.decision_se)
        @equipch_window.refresh
        @equipch_window.index = 0
        disable_equipch
        @equipch_window.visible = true
        @equipch_window.active = true
        @actors_window.active = false
      when "Status"
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Status.new(@actors_window.index)
      end
      return
    end
  end
 
  def update_item
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @command_window.active = true
      @item_window.visible = false
      @item_window.active = false
      @gold_window.visible = false
      return
    end
    if Input.trigger?(Input::C)
      item = @item_window.item
      unless item.is_a?(RPG::Item)
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      unless $game_party.item_can_use?(item.id)
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      if item.scope >= 3
        if item.scope == 4 || item.scope == 6
          used = false
          for i in $game_party.actors
            used |= i.item_effect(item)
          end
        else
          used = $game_party.actors[0].item_effect(item)
        end
        if used
          $game_system.se_play(item.menu_se)
          if item.consumable
            $game_party.lose_item(item.id, 1)
            @item_window.refresh
          end
          if $game_party.all_dead?
            $scene = Scene_Gameover.new
            return
          end
          if item.common_event_id > 0
            $game_temp.common_event_id = item.common_event_id
            $scene = Scene_Map.new
            return
          end
          if OLDSCHOOL::SPHELP_ITEM
            @command_window.visible = false
            @gold_window.visible = false
            @item_window.visible = false
            @item_window.active = false
            @sphelp_window.visible = true
            @sphelp_window.active = true
            check_item_help(item)
            return
          end
        end
        unless used
          $game_system.se_play($data_system.buzzer_se)
        end
      else
        if item.common_event_id > 0
          $game_temp.common_event_id = item.common_event_id
          $game_system.se_play(item.menu_se)
          if item.consumable
            $game_party.lose_item(item.id, 1)
            @item_window.draw_item(@item_window.index)
          end
          $scene = Scene_Map.new
          return
        end
      end
      return
    end
  end
 
  def update_skill
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      if OLDSCHOOL::ACTOR_SEL
        @actors_window.active = true
      else
        @command_window.active = true
      end
      @skill_window.visible = false
      @skill_window.active = false
      return
    end
    if Input.trigger?(Input::C)
      skill = @skill_window.skill
      actor = @skill_window.actor
      if skill == nil or not actor.skill_can_use?(skill.id)
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      if skill.scope >= 3
        if skill.scope == 4 || skill.scope == 6
          used = false
          for i in $game_party.actors
            used |= i.skill_effect(actor, skill)
          end
        else
          used = actor.skill_effect(actor, skill)
        end
        # If skill was used
        if used
          $game_system.se_play(skill.menu_se)
          actor.sp -= skill.sp_cost
          if $game_party.all_dead?
            $scene = Scene_Gameover.new
            return
          end
          if skill.common_event_id > 0
            $game_temp.common_event_id = skill.common_event_id
            $scene = Scene_Map.new
            return
          end
          if OLDSCHOOL::SPHELP_SKILL
            @command_window.visible = false
            @actors_window.visible = false
            @skill_window.visible = false
            @skill_window.active = false
            @sphelp_window.visible = true
            @sphelp_window.active = true
            check_skill_help(skill)
            return
          end
        end
        unless used
          $game_system.se_play($data_system.buzzer_se)
        end
        return
      else
        if skill.common_event_id > 0
          $game_temp.common_event_id = skill.common_event_id
          $game_system.se_play(skill.menu_se)
          actor.sp -= skill.sp_cost
          $scene = Scene_Map.new
          return
        end
      end
    end
  end
 
  def update_equipch
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      if OLDSCHOOL::ACTOR_SEL
        @actors_window.active = true
      else
        @command_window.active = true
      end
      @equipch_window.visible = false
      @equipch_window.active = false
      return
    end
    if Input.trigger?(Input::C)
      actor = $data_actors[$game_party.actors[@actors_window.index].id]
      case @equipch_window.index
      when 0 # Weapon
        if actor.weapon_fix
          $game_system.se_play($data_system.buzzer_se)
          return
        else
          $game_system.se_play($data_system.decision_se)
          @equip_window.actor = @actors_window.index
          @equip_window.refresh
          @equip_window.index = 0
          @equip_window.active = true
          @equip_window.visible = true
          @equipch_window.active = false
        end
      when 1 # Shield
        if actor.armor1_fix
          $game_system.se_play($data_system.buzzer_se)
          return
        else
          $game_system.se_play($data_system.decision_se)
          @equip_window.actor = @actors_window.index
          @equip_window.refresh
          @equip_window.index = 0
          @equip_window.active = true
          @equip_window.visible = true
          @equipch_window.active = false
        end
      when 2 # Helmet
        if actor.armor2_fix
          $game_system.se_play($data_system.buzzer_se)
          return
        else
          $game_system.se_play($data_system.decision_se)
          @equip_window.actor = @actors_window.index
          @equip_window.refresh
          @equip_window.index = 0
          @equip_window.active = true
          @equip_window.visible = true
          @equipch_window.active = false
        end
      when 3 # Body
        if actor.armor3_fix
          $game_system.se_play($data_system.buzzer_se)
          return
        else
          $game_system.se_play($data_system.decision_se)
          @equip_window.actor = @actors_window.index
          @equip_window.refresh
          @equip_window.index = 0
          @equip_window.active = true
          @equip_window.visible = true
          @equipch_window.active = false
        end
      when 4 # Accessor
        if actor.armor4_fix
          $game_system.se_play($data_system.buzzer_se)
          return
        else
          $game_system.se_play($data_system.decision_se)
          @equip_window.actor = @actors_window.index
          @equip_window.refresh
          @equip_window.index = 0
          @equip_window.active = true
          @equip_window.visible = true
          @equipch_window.active = false
        end
      end
    end
  end
 
  def update_equip
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @equipch_window.active = true
      @equip_window.visible = false
      @equip_window.active = false
      return
    end
    if Input.trigger?(Input::C)
      item = @equip_window.item
      actor = $game_party.actors[@actors_window.index]
      if item != nil and not actor.equippable?(item)
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      case @equipch_window.index
      when 0 # Weapon
        if item == nil and actor.weapon_id == 0
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        if item != nil and item.id == actor.weapon_id
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        $game_system.se_play($data_system.equip_se)
        old_equip = $data_weapons[actor.weapon_id]
        actor.equip(0, item == nil ? 0 : item.id)
        new_equip = $data_weapons[actor.weapon_id]
        @equip_window.refresh
        if OLDSCHOOL::SPHELP_EQUIP
          @command_window.visible = false
          @actors_window.visible = false
          @equipch_window.visible = false
          @equip_window.visible = false
          @equip_window.active = false
          @sphelp_window.visible = true
          @sphelp_window.active = true
          check_weapon_help(old_equip, new_equip)
        end
      when 1 # Shield
        if item == nil and actor.armor1_id == 0
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        if item != nil and item.id == actor.armor1_id
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        $game_system.se_play($data_system.equip_se)
        old_equip = $data_armors[actor.armor1_id]
        actor.equip(1, item == nil ? 0 : item.id)
        new_equip = $data_armors[actor.armor1_id]
        @equip_window.refresh
        if OLDSCHOOL::SPHELP_EQUIP
          @command_window.visible = false
          @actors_window.visible = false
          @equipch_window.visible = false
          @equip_window.visible = false
          @equip_window.active = false
          @sphelp_window.visible = true
          @sphelp_window.active = true
          check_armor_help(old_equip, new_equip)
        end
      when 2 # Helmet
        if item == nil and actor.armor2_id == 0
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        if item != nil and item.id == actor.armor2_id
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        $game_system.se_play($data_system.equip_se)
        old_equip = $data_armors[actor.armor2_id]
        actor.equip(2, item == nil ? 0 : item.id)
        new_equip = $data_armors[actor.armor2_id]
        @equip_window.refresh
        if OLDSCHOOL::SPHELP_EQUIP
          @command_window.visible = false
          @actors_window.visible = false
          @equipch_window.visible = false
          @equip_window.visible = false
          @equip_window.active = false
          @sphelp_window.visible = true
          @sphelp_window.active = true
          check_armor_help(old_equip, new_equip)
        end
      when 3 # Body
        if item == nil and actor.armor3_id == 0
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        if item != nil and item.id == actor.armor3_id
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        $game_system.se_play($data_system.equip_se)
        old_equip = $data_armors[actor.armor3_id]
        actor.equip(3, item == nil ? 0 : item.id)
        new_equip = $data_armors[actor.armor3_id]
        @equip_window.refresh
        if OLDSCHOOL::SPHELP_EQUIP
          @command_window.visible = false
          @actors_window.visible = false
          @equipch_window.visible = false
          @equip_window.visible = false
          @equip_window.active = false
          @sphelp_window.visible = true
          @sphelp_window.active = true
          check_armor_help(old_equip, new_equip)
        end
      when 4 # Accessor
        if item == nil and actor.armor4_id == 0
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        if item != nil and item.id == actor.armor4_id
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        $game_system.se_play($data_system.equip_se)
        old_equip = $data_armors[actor.armor4_id]
        actor.equip(4, item == nil ? 0 : item.id)
        new_equip = $data_armors[actor.armor4_id]
        @equip_window.refresh
        if OLDSCHOOL::SPHELP_EQUIP
          @command_window.visible = false
          @actors_window.visible = false
          @equipch_window.visible = false
          @equip_window.visible = false
          @equip_window.active = false
          @sphelp_window.visible = true
          @sphelp_window.active = true
          check_armor_help(old_equip, new_equip)
        end
      end
    end
  end
 
  def update_sphelp
    if Input.trigger?(Input::B) or Input.trigger?(Input::C)
      $game_system.se_play($data_system.decision_se)
      command = $game_system.menu_commands[@command_window.index]
      if OLDSCHOOL::ACTOR_SEL and command != "Item"
        @actors_window.visible = true
        @actors_window.active = true
      else
        @command_window.active = true
      end
      @command_window.visible = true
      @sphelp_window.active = false
      @sphelp_window.visible = false
      return
    end
  end
 
  def check_item_help(item)
    @sphelp_window.clear
    actor_name = $game_party.actors[0].name
    if item.recover_hp != 0
      if item.recover_hp > 0
        text1 = "¡#{actor_name} has recovered "
      else
        text1 = "¡#{actor_name} has lost "
      end
      text2 = $data_system.words.hp + "!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if item.recover_hp_rate != 0
      if item.recover_hp_rate > 0
        text1 = "¡#{actor_name} has recovered "
      else
        text1 = "¡#{actor_name} has lost "
      end
      text2 = $data_system.words.hp + "!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if item.recover_sp != 0
      if item.recover_sp > 0
        text1 = "¡#{actor_name} has recovered "
      else
        text1 = "¡#{actor_name} has lost "
      end
      text2 = $data_system.words.sp + "!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if item.recover_sp_rate != 0
      if item.recover_sp_rate > 0
        text1 = "¡#{actor_name} has recovered "
      else
        text1 = "¡#{actor_name} has lost "
      end
      text2 = $data_system.words.sp + "!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if item.parameter_type != 0
      text1 = "¡#{actor_name}'s "
      case item.parameter_type
        when 0 then text2 = "Max " + $data_system.words.hp
        when 1 then text2 = "Max " + $data_system.words.sp
        when 2 then text2 = $data_system.words.str
        when 3 then text2 = $data_system.words.dex
        when 4 then text2 = $data_system.words.agi
        when 5 then text2 = $data_system.words.int
      end
      if item.parameter_points != 0
        if item.parameter_points > 0
          text3 = " increased!"
        else
          text3 = " decreased!"
        end
        @sphelp_window.draw_next_line(text1 + text2 + text3)
      end
    end
    if item.plus_state_set.size > 0
      plus_state_array = []
      for i in 0...item.plus_state_set.size
        plus_state_array.push($data_states[item.plus_state_set[i]].name)
      end
      text1 = "¡#{actor_name} gained status: "
      text2 = plus_state_array.join(", ") + "!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if item.minus_state_set.size > 0
      minus_state_array = []
      for i in 0...item.minus_state_set.size
        minus_state_array.push($data_states[item.minus_state_set[i]].name)
      end
      text1 = "¡#{actor_name} lost status: "
      text2 = minus_state_array.join(", ") + "!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
  end
 
  def check_skill_help(skill)
    @sphelp_window.clear
    actor_name = $game_party.actors[@actors_window.index].name
    if skill.power != 0
      if skill.power < 0
        text1 = "¡#{actor_name} has recovered "
      else
        text1 = "¡#{actor_name} has lost "
      end
      text2 = $data_system.words.hp + "!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    # ...
  end
 
  def check_weapon_help(old_item, new_item)
    @sphelp_window.clear
    actor_name = $game_party.actors[@actors_window.index].name
    if old_item != nil and new_item != nil
      atk = new_item.atk - old_item.atk
      pdef = new_item.pdef - old_item.pdef
      mdef = new_item.mdef - old_item.mdef
      str_plus = new_item.str_plus - old_item.str_plus
      dex_plus = new_item.dex_plus - old_item.dex_plus
      agi_plus = new_item.agi_plus - old_item.agi_plus
      int_plus = new_item.int_plus - old_item.int_plus
      # plus_state_set
      # minus_state_set
    elsif old_item == nil
      atk = new_item.atk
      pdef = new_item.pdef
      mdef = new_item.mdef
      str_plus = new_item.str_plus
      dex_plus = new_item.dex_plus
      agi_plus = new_item.agi_plus
      int_plus = new_item.int_plus
      # plus_state_set
      # minus_state_set
    else
      atk = 0 - old_item.atk
      pdef = 0 - old_item.pdef
      mdef = 0 - old_item.mdef
      str_plus = 0 - old_item.str_plus
      dex_plus = 0 - old_item.dex_plus
      agi_plus = 0 - old_item.agi_plus
      int_plus = 0 - old_item.int_plus
      # plus_state_set
      # minus_state_set
    end
    if atk != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.atk}"
      text2 = atk > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if pdef != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.pdef}"
      text2 = pdef > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if mdef != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.mdef}"
      text2 = mdef > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if str_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.str}"
      text2 = str_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if dex_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.dex}"
      text2 = dex_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if agi_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.agi}"
      text2 = agi_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if int_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.int}"
      text2 = int_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
  end
 
  def check_armor_help(old_item, new_item)
    @sphelp_window.clear
    actor_name = $game_party.actors[@actors_window.index].name
    if old_item != nil and new_item != nil
      # auto_state_id
      pdef = new_item.pdef - old_item.pdef
      mdef = new_item.mdef - old_item.mdef
      str_plus = new_item.str_plus - old_item.str_plus
      dex_plus = new_item.dex_plus - old_item.dex_plus
      agi_plus = new_item.agi_plus - old_item.agi_plus
      int_plus = new_item.int_plus - old_item.int_plus
      # guard_state_set 
    elsif old_item == nil
      # auto_state_id
      pdef = new_item.pdef
      mdef = new_item.mdef
      str_plus = new_item.str_plus
      dex_plus = new_item.dex_plus
      agi_plus = new_item.agi_plus
      int_plus = new_item.int_plus
      # guard_state_set 
    else
      # auto_state_id
      pdef = 0 - old_item.pdef
      mdef = 0 - old_item.mdef
      str_plus = 0 - old_item.str_plus
      dex_plus = 0 - old_item.dex_plus
      agi_plus = 0 - old_item.agi_plus
      int_plus = 0 - old_item.int_plus
      # guard_state_set 
    end
    if pdef != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.pdef}"
      text2 = pdef > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if mdef != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.mdef}"
      text2 = mdef > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if str_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.str}"
      text2 = str_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if dex_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.dex}"
      text2 = dex_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if agi_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.agi}"
      text2 = agi_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
    if int_plus != 0
      text1 = "¡#{actor_name}'s #{$data_system.words.int}"
      text2 = int_plus > 0 ? " increased!" : " decreased!"
      @sphelp_window.draw_next_line(text1 + text2)
    end
  end
 
  def update_end
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.decision_se)
      @end_window.active = false
      @end_window.visible = false
      @command_window.active = true
      return
    end
    if Input.trigger?(Input::C)
      case @end_window.index
      when 0  # to title
        $game_system.se_play($data_system.decision_se)
        Audio.bgm_fade(800)
        Audio.bgs_fade(800)
        Audio.me_fade(800)
        $scene = Scene_Title.new
      when 1  # shutdown
        $game_system.se_play($data_system.decision_se)
        Audio.bgm_fade(800)
        Audio.bgs_fade(800)
        Audio.me_fade(800)
        $scene = nil
      when 2  # quit
        $game_system.se_play($data_system.cancel_se)
        $scene = Scene_Menu.new(5)
        return
      end
      return
    end
  end
end



Screens de la versión Completed:
https://2img.net/h/s27.postimg.cc/vqctznjyb/screen01.png
https://2img.net/h/s27.postimg.cc/czawphpdv/screen02.png
https://2img.net/h/s27.postimg.cc/5grrguy0z/screen03.png
https://2img.net/h/s27.postimg.cc/tj8lbqeo3/screen04.png

Si veis algún bug, comentadlo. El script Advanced saldrá dentro de una semana aproximadamente, hasta entonces intentaré arreglar lo que me digáis en el resto.

REGISTRO DE ACTUALIZACIONES

26/03/14
Completed - Agregada ventana de selección de Actor para Skill, Equip y Status --> ACTOR_SEL
Completed - Agregada ventana de dinero cuando estas en Item --> GOLD


Última edición por Wecoc el 2014-03-26, 18:14, editado 2 veces
avatar
Wecoc
Administrador
Administrador



Créditos 12314

Gracias : 655

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Menú OldSchool

Mensaje por orochii el 2014-03-23, 21:51

Si le hicieras el soporte de más personajes... que el rm95 tenía... =DDDDD...

Pero ta guay jajaja. Es un poco como el menú de DragonQuest, Earthbound y... otros xd. ¡Ah! ¡Y Phantasy Star! 83! El menú debió gustar bastante para que se extendiera por al menos tres consolas distintas xD (NES, SNES y GEN).
avatar
orochii
Reportero

0/3

Créditos 7343

Gracias : 477

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


Permisos de este foro:
No puedes responder a temas en este foro.