Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Ryex

271
How do I STOP certain armor ID's from being displayed in in the Equip Item window in the equip scene?

I know how to make ONLY certain armors in a menu

I just use a loop like this right?
for i in [armor ID's that I want to display here]
272
I need a short code that I can call with a Call script command and checks events in a line forward from the actor for a comment in the first line. and if that comment is the string your checking for it flips a self switch in that event to what you choose

you would call it like this

PLACE_CALL_SCRIPT_COMMAND_HERE('string checking for', #range to check, self switch setting to)

make sense?

I'm going to use this in a common event that is attached to a skill so when you use the skill on the map is activates events in range.
273
dose any one know if one exists or where I could look for one?
274
RMXP Script Database / [XP] Collapsed CMS
June 27, 2008, 11:44:56 pm
Collapsed CMS
Authors: Ryex
Version: 2.00
Type: CMS
Key Term: Custom Menu System



Introduction

The Collapsed CMS is a CMS that only displays limited information on the main screen


Features


  • Gradient Bars for Health, SP, and EXP that lag less through entire menu
  • Smaller horizontal status window on main screen
  • Map as background
  • Icons in command menu
  • Small only visible when you need it actor select menu



Screenshots

Screenshots: ShowHide











Script

Spoiler: ShowHide

#=============================================================================
#
# ** Collapsed_CMS
#
#-----------------------------------------------------------------------------
#
# By Ryex
# V 2.00
#
#-----------------------------------------------------------------------------
#
# Features
#
# *Gradient Bars for Health, SP, and EXP that lag less through entire menu
# *Smaller horizontal status window on main screen
# *Map as background 
# *Icons in command menu
# *Small only visible when you need it actor select menu
#
#-----------------------------------------------------------------------------
#
# Instructions
#
# Place in a new script above main
# If you want to change the icons search for this line
#
#  @command_window = Window_HCommand_WI.new
#
# without the # in front. Then replace the icon names in the array that
# follows the line above.
#
#=============================================================================
#==============================================================================
# ** Window_HCommand_WI Modified from Blizzard's Window_HCommand By Ryex
#------------------------------------------------------------------------------
#  This window deals with general command choices, but the display is
#  horizontal.
#==============================================================================

class Window_HCommand_WI < Window_Command
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     width    : window width
  #     commands : command text string array
  #--------------------------------------------------------------------------
  def initialize(width, commands)
    super
    self.width, self.height = commands.size * width + 32, 64
    @column_max = commands.size
    self.contents.dispose
    self.contents = Bitmap.new(self.width - 32, self.height - 32)
    refresh
    update_cursor_rect
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #     index : item number
  #     color : text color
  #--------------------------------------------------------------------------
  def draw_item(i, color)
    self.contents.font.color = color
    w = (self.width - 32) / @column_max
    x = i % @column_max * w
    rect = Rect.new(x, 0, self.contents.width / @column_max, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.blt(x, 4, RPG::Cache.icon(@commands[i][0]),
          Rect.new(0, 0, 24, 24))
    self.contents.draw_text(rect, @commands[i][1], 1)
  end
  #--------------------------------------------------------------------------
  # * Update Cursor Rectangle
  #--------------------------------------------------------------------------
  def update_cursor_rect
    # If cursor position is less than 0
    if @index < 0
      self.cursor_rect.empty
      return
    end
    # Get current row
    row = @index / @column_max
    # If current row is before top row
    if row < self.top_row
      # Scroll so that current row becomes top row
      self.top_row = row
    end
    # If current row is more to back than back row
    if row > self.top_row + (self.page_row_max - 1)
      # Scroll so that current row becomes back row
      self.top_row = row - (self.page_row_max - 1)
    end
    # Calculate cursor width
    cursor_width = (self.width - 32) / @column_max
    # Calculate cursor coordinates
    x = @index % @column_max * cursor_width
    # Update cursor rectangle
    self.cursor_rect.set(x, 0, cursor_width, 32)
  end
end

#==============================================================================
# ** Window_CollapsedMenuStatus By Ryex
#------------------------------------------------------------------------------
#  This window displays limited party member stats horizontaly in the menu.
#==============================================================================

class Window_CollapsedMenuStatus < Window_Base
  #----------------------------------------------------------------------------
  # * Object Initialization
  #     x : x value
  #     y : y value
  #----------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 640, 192)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Draw a gradiant bar of a certen langth (you must provide the amount)
  #     x : x value
  #     y : y value
  #     p : fill_rate
  #     m : max leinght
  #     h : hight
  #     c : Color
  #--------------------------------------------------------------------------
  def draw_bar(x,y,p,m,h,c)
    self.contents.fill_rect(x, y - 1, m, h, Color.new(0, 0, 0))
    for i in 0...(h - 2)
      r = c.red * i / (h - 2)
      g = c.green * i / (h - 2)
      b = c.blue * i / (h - 2)
      self.contents.fill_rect(x + 1, y + i, p * (m - 2), 1, Color.new(r, g, b))
    end
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  def dispose
    super
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      actorx = i * 160 + 4
      draw_actor_name(actor, actorx - 4, 0)
      rate_hp = actor.hp.to_f / actor.maxhp
      draw_bar(actorx, 42, rate_hp, 120, 12, Color.new(255, 0, 0))
      draw_actor_hp(actor, actorx, 32, 120)
      rate_sp = actor.sp.to_f / actor.maxsp
      draw_bar(actorx, 74, rate_sp, 120, 12, Color.new(0, 0, 255))
      draw_actor_sp(actor, actorx, 64, 120)
      rate_exp = $game_party.actors[i].exp.to_f / $game_party.actors[i].next_exp_s.to_i
      draw_bar(actorx, 106, rate_exp, 120, 12, Color.new(255, 255, 0))
      draw_actor_level(actor, actorx, 96)
      draw_actor_state(actor, actorx, 128)
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
  end
end

#==============================================================================
# ** Window_ActorSelect
#------------------------------------------------------------------------------
# This Window provides one the fuctions of the original Window_MenuStatus it
# allows the slection of the actor index
#==============================================================================

class Window_ActorSelect < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(272, 160, 96, 256)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
    self.active = false
    self.index = -1
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
      x = 32
      y = i * 56
      actor = $game_party.actors[i]
      draw_actor_graphic(actor, x, y + 56)
    end
  end
  #--------------------------------------------------------------------------
  # * Cursor Rectangle Update
  #--------------------------------------------------------------------------
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
    else
      self.cursor_rect.set(0, @index * 56, self.width - 32, 56)
    end
  end
end



#==============================================================================
# ** Window_Status
#------------------------------------------------------------------------------
#  This window displays full status specs on the status screen. (modified)
#==============================================================================

class Window_Status < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 0, 640, 480)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = actor
    refresh
  end
  #--------------------------------------------------------------------------
  # * Draw a gradiant bar of a certen langth (you must provide the amount)
  #     x : x value
  #     y : y value
  #     p : fill_rate
  #     m : max leinght
  #     h : hight
  #     c : Color
  #--------------------------------------------------------------------------
  def draw_bar(x,y,p,m,h,c)
    self.contents.fill_rect(x, y - 1, m, h, Color.new(0, 0, 0))
    for i in 0...(h - 2)
      r = c.red * i / (h - 2)
      g = c.green * i / (h - 2)
      b = c.blue * i / (h - 2)
      self.contents.fill_rect(x + 1, y + i, p * (m - 2), 1, Color.new(r, g, b))
    end
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    rate_hp = @actor.hp.to_f / @actor.maxhp
    draw_bar(96, 122, rate_hp, 120, 12, Color.new(255, 0, 0))
    rate_sp = @actor.sp.to_f / @actor.maxsp
    draw_bar(96, 154, rate_sp, 120, 12, Color.new(0, 0, 255))
    rate_exp = @actor.exp.to_f / @actor.next_exp_s.to_i
    draw_bar(96, 42, rate_exp, 120, 12, Color.new(255, 255, 0))
    draw_actor_graphic(@actor, 40, 112)
    draw_actor_name(@actor, 4, 0)
    draw_actor_class(@actor, 4 + 144, 0)
    draw_actor_level(@actor, 96, 32)
    draw_actor_state(@actor, 96, 64)
    draw_actor_hp(@actor, 96, 112, 172)
    draw_actor_sp(@actor, 96, 144, 172)
    draw_actor_parameter(@actor, 96, 192, 0)
    draw_actor_parameter(@actor, 96, 224, 1)
    draw_actor_parameter(@actor, 96, 256, 2)
    draw_actor_parameter(@actor, 96, 304, 3)
    draw_actor_parameter(@actor, 96, 336, 4)
    draw_actor_parameter(@actor, 96, 368, 5)
    draw_actor_parameter(@actor, 96, 400, 6)
    self.contents.font.color = system_color
    self.contents.draw_text(320, 48, 80, 32, "EXP")
    self.contents.draw_text(320, 80, 80, 32, "NEXT")
    self.contents.font.color = normal_color
    self.contents.draw_text(320 + 80, 48, 84, 32, @actor.exp_s, 2)
    self.contents.draw_text(320 + 80, 80, 84, 32, @actor.next_rest_exp_s, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(320, 160, 96, 32, "equipment")
    draw_item_name($data_weapons[@actor.weapon_id], 320 + 16, 208)
    draw_item_name($data_armors[@actor.armor1_id], 320 + 16, 256)
    draw_item_name($data_armors[@actor.armor2_id], 320 + 16, 304)
    draw_item_name($data_armors[@actor.armor3_id], 320 + 16, 352)
    draw_item_name($data_armors[@actor.armor4_id], 320 + 16, 400)
  end
  def dummy
    self.contents.font.color = system_color
    self.contents.draw_text(320, 112, 96, 32, $data_system.words.weapon)
    self.contents.draw_text(320, 176, 96, 32, $data_system.words.armor1)
    self.contents.draw_text(320, 240, 96, 32, $data_system.words.armor2)
    self.contents.draw_text(320, 304, 96, 32, $data_system.words.armor3)
    self.contents.draw_text(320, 368, 96, 32, $data_system.words.armor4)
    draw_item_name($data_weapons[@actor.weapon_id], 320 + 24, 144)
    draw_item_name($data_armors[@actor.armor1_id], 320 + 24, 208)
    draw_item_name($data_armors[@actor.armor2_id], 320 + 24, 272)
    draw_item_name($data_armors[@actor.armor3_id], 320 + 24, 336)
    draw_item_name($data_armors[@actor.armor4_id], 320 + 24, 400)
  end
end


#==============================================================================
# ** Window_Target
#------------------------------------------------------------------------------
#  This window selects a use target for the actor on item and skill screens.
#  (modified)
#==============================================================================

class Window_Target < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 336, 480)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.z += 10
    @item_max = $game_party.actors.size
    refresh
  end
  #--------------------------------------------------------------------------
  # * Draw a gradiant bar of a certen langth (you must provide the amount)
  #     x : x value
  #     y : y value
  #     p : fill_rate
  #     m : max leinght
  #     h : hight
  #     c : Color
  #--------------------------------------------------------------------------
  def draw_bar(x,y,p,m,h,c)
    self.contents.fill_rect(x, y - 1, m, h, Color.new(0, 0, 0))
    for i in 0...(h - 2)
      r = c.red * i / (h - 2)
      g = c.green * i / (h - 2)
      b = c.blue * i / (h - 2)
      self.contents.fill_rect(x + 1, y + i, p * (m - 2), 1, Color.new(r, g, b))
    end
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...$game_party.actors.size
      x = 4
      y = i * 116
      actor = $game_party.actors[i]
      rate_hp = actor.hp.to_f / actor.maxhp
      draw_bar(x + 152, y + 42, rate_hp, 120, 12, Color.new(255, 0, 0))
      rate_sp = actor.sp.to_f / actor.maxsp
      draw_bar(x + 152, y + 74, rate_sp, 120, 12, Color.new(0, 0, 255))
      rate_exp = $game_party.actors[i].exp.to_f / $game_party.actors[i].next_exp_s.to_i
      draw_bar(x + 8, y + 42, rate_exp, 120, 12, Color.new(255, 255, 0))
      draw_actor_name(actor, x, y)
      draw_actor_class(actor, x + 144, y)
      draw_actor_level(actor, x + 8, y + 32)
      draw_actor_state(actor, x + 8, y + 64)
      draw_actor_hp(actor, x + 152, y + 32)
      draw_actor_sp(actor, x + 152, y + 64)
    end
  end
  #--------------------------------------------------------------------------
  # * Cursor Rectangle Update
  #--------------------------------------------------------------------------
  def update_cursor_rect
    # Cursor position -1 = all choices, -2 or lower = independent choice
    # (meaning the user's own choice)
    if @index <= -2
      self.cursor_rect.set(0, (@index + 10) * 116, self.width - 32, 96)
    elsif @index == -1
      self.cursor_rect.set(0, 0, self.width - 32, @item_max * 116 - 20)
    else
      self.cursor_rect.set(0, @index * 116, self.width - 32, 96)
    end
  end
end


#==============================================================================
# ** Window_SkillStatus
#------------------------------------------------------------------------------
#  This window displays the skill user's status on the skill screen.
#==============================================================================

class Window_SkillStatus < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 64, 640, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = actor
    refresh
  end
  #--------------------------------------------------------------------------
  # * Draw a gradiant bar of a certen langth (you must provide the amount)
  #     x : x value
  #     y : y value
  #     p : fill_rate
  #     m : max leinght
  #     h : hight
  #     c : Color
  #--------------------------------------------------------------------------
  def draw_bar(x,y,p,m,h,c)
    self.contents.fill_rect(x, y - 1, m, h, Color.new(0, 0, 0))
    for i in 0...(h - 2)
      r = c.red * i / (h - 2)
      g = c.green * i / (h - 2)
      b = c.blue * i / (h - 2)
      self.contents.fill_rect(x + 1, y + i, p * (m - 2), 1, Color.new(r, g, b))
    end
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    rate_hp = @actor.hp.to_f / @actor.maxhp
    draw_bar(284, 10, rate_hp, 120, 12, Color.new(255, 0, 0))
    rate_sp = @actor.sp.to_f / @actor.maxsp
    draw_bar(460, 10, rate_sp, 120, 12, Color.new(0, 0, 255))
    draw_actor_name(@actor, 4, 0)
    draw_actor_state(@actor, 140, 0)
    draw_actor_hp(@actor, 284, 0)
    draw_actor_sp(@actor, 460, 0)
  end
end


#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs menu screen processing.
#==============================================================================

class Scene_Menu
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    #creates map background
    @map = Spriteset_Map.new
    # Make command window
    s1 = $data_system.words.item
    s2 = $data_system.words.skill
    s3 = $data_system.words.equip
    s4 = "Status"
    s5 = "Save"
    s6 = "End Game"
    @command_window = Window_HCommand_WI.new(96, [["032-Item01",
        $data_system.words.item], ["044-Skill01", $data_system.words.skill],
        ["001-Weapon01", $data_system.words.equip], ["050-Skill07", "Status"],
        ["047-Skill04", "Save"], ["030-Key02","Exit"]
        ])
    @command_window.x = 16
    @command_window.y = 416
    @command_window.index = @menu_index
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable items, skills, equipment, and status
      @command_window.disable_item(0)
      @command_window.disable_item(1)
      @command_window.disable_item(2)
      @command_window.disable_item(3)
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable save
      @command_window.disable_item(4)
    end
    # Make status window
    @status_window = Window_CollapsedMenuStatus.new(0,0)
    @status_window.x = 0
    @status_window.y = 0
    # Make Actor slect window
    @actor_window = Window_ActorSelect.new
    @actor_window.z = 9998
    @actor_window.visible = false
    @actor_window.active = false
    # Make gold window
    @gold_window = Window_Gold.new
    @gold_window.x = 0
    @gold_window.y = 256
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @command_window.dispose
    @status_window.dispose
    @gold_window.dispose
    @actor_window.dispose
    @map.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Update windows
    @command_window.update
    @status_window.update
    @gold_window.update
    @actor_window.update
    @map.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
    if @actor_window.active
      update_actor
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when command window is active)
  #--------------------------------------------------------------------------
  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # If command other than save or end game, and party members = 0
      if $game_party.actors.size == 0 and @command_window.index < 4
        # Play buzzer SE
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case @command_window.index
      when 0  # item
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to item screen
        $scene = Scene_Item.new
      when 1  # skill
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @actor_window.active = true
        @actor_window.visible = true
        @actor_window.index = 0
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @actor_window.active = true
        @actor_window.visible = true
        @actor_window.index = 0
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @actor_window.active = true
        @actor_window.visible = true
        @actor_window.index = 0
      when 4  # save
        # If saving is forbidden
        if $game_system.save_disabled
          # Play buzzer SE
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to save screen
        $scene = Scene_Save.new
      when 5  # end game
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to end game screen
        $scene = Scene_End.new
      end
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when Acior window is active)
  #--------------------------------------------------------------------------
  def update_actor
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Make command window active
      @command_window.active = true
      @actor_window.active = false
      @actor_window.visible = false
      @actor_window.index = -1
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @command_window.index
      when 1  # skill
        # If this actor's action limit is 2 or more
        if $game_party.actors[@actor_window.index].restriction >= 2
          # Play buzzer SE
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to skill screen
        $scene = Scene_Skill.new(@actor_window.index)
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to equipment screen
        $scene = Scene_Equip.new(@actor_window.index)
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to status screen
        $scene = Scene_Status.new(@actor_window.index)
      end
      return
    end
  end
end





Instructions

Make a new script and place just above main

Refer to script for rest



Compatibility

No known compatibility issues  (most likely not compatible with any other CMS)



Credits and Thanks


  • Ryexander
  • Blizzard
  • WcW



Author's Notes

I hope you enjoy it this is the menu that will be in my game. however it may go through some changes by then.
275
Option 1: ShowHide




This is what the main part of the menu looks like what i want to know is where would you like to select the actor if you select an option from the menu where you need to select one



this is option one in a pop up menu on the main menu

Option 2: ShowHide




option 2 is selecting it right here in a menu that is over every thing and only visible when you are selecting the actor the good thing about this option is that it provides me with a good place to put the gold and play time windows.


Option 3: ShowHide




Option 3 is in a side bar on all the necessary menus like status and equip
276
RPG Maker Scripts / [RESOLVED] pop up window
June 18, 2008, 02:30:53 pm
I know how to make the window but mot how to make it pop up

what i want to do is  this  i want to have it so the main window looks like this

I have already done this so no worries there
this when you have chosen an option where you need to choose an actor a window pops up and it looks some what like this

this is the part i need help with I can make the window where you chose that actor but i don't know how to make it pop up or appear over every thing.
277
I'm writing a CMS and i has just finished one of my windows so i decided to try and display it and see what it looked like  but as soon

heres the whole script so far

please note that this script is not complete and is in its earliest stages

#=============================================================================
#
# ** Collapsed_CMS
#
#-----------------------------------------------------------------------------
#
# By Ryex
# V 0.01
#
#=============================================================================
#==============================================================================
# ** Window_HCommand By Blizzard
#------------------------------------------------------------------------------
#  This window deals with general command choices, but the display is
#  horizontal.
#==============================================================================

class Window_HCommand < Window_Command
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     width    : window width
  #     commands : command text string array
  #--------------------------------------------------------------------------
  def initialize(width, commands)
    super
    self.width, self.height = commands.size * width + 32, 64
    @column_max = commands.size
    self.contents.dispose
    self.contents = Bitmap.new(self.width - 32, self.height - 32)
    refresh
    update_cursor_rect
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #     index : item number
  #     color : text color
  #--------------------------------------------------------------------------
  def draw_item(i, color)
    self.contents.font.color = color
    w = (self.width - 32) / @column_max
    x = i % @column_max * w
    rect = Rect.new(x, 0, self.contents.width / @column_max, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.draw_text(rect, @commands[i], 1)
  end
  #--------------------------------------------------------------------------
  # * Update Cursor Rectangle
  #--------------------------------------------------------------------------
  def update_cursor_rect
    # If cursor position is less than 0
    if @index < 0
      self.cursor_rect.empty
      return
    end
    # Get current row
    row = @index / @column_max
    # If current row is before top row
    if row < self.top_row
      # Scroll so that current row becomes top row
      self.top_row = row
    end
    # If current row is more to back than back row
    if row > self.top_row + (self.page_row_max - 1)
      # Scroll so that current row becomes back row
      self.top_row = row - (self.page_row_max - 1)
    end
    # Calculate cursor width
    cursor_width = (self.width - 32) / @column_max
    # Calculate cursor coordinates
    x = @index % @column_max * cursor_width
    # Update cursor rectangle
    self.cursor_rect.set(x, 0, cursor_width, 32)
  end
end

#==============================================================================
# ** Window_CollapsedMenuStatus By Ryex
#------------------------------------------------------------------------------
#  This window displays limited party member stats horizontaly in the menu.
#==============================================================================

class Window_CollapsedMenuStatus < Window_Base
  #----------------------------------------------------------------------------
  # * Object Initialization
  #     x : x value
  #     y : y value
  #----------------------------------------------------------------------------
def initialize(x, y)
    super(x, y, 640, 160)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Draw a % bar of a certen langth (you must provide the amount)
  #     x : x value
  #     y : y value
  #     p : % fill
  #     m : max leinght
  #     r : Red value
  #     g : Green value
  #     b : Blue value
  #--------------------------------------------------------------------------
  def draw_bar(x,y,p,m1,r,g,b)
    self.contents.fill_rect(x, y - 1, m1, 14, Color.new(0, 0, 0))
    m2 = m1 - 2
    self.contents.fill_rect(x + 1, y, p * m2, 12, Color.new(r, g, b))
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  def dispose
    super
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      actorx = i * 160 + 4
      draw_actor_name(actor, actorx, 0)
      rate1 = actor.hp / actor.maxhp
      draw_bar(actorx, 40, rate1, 120, 255, 0, 0)
      draw_actor_hp(actor, actorx, 32, 120)
      rate2 = actor.sp / actor.maxhp
      draw_bar(actorx, 72, rate2, 120, 0, 0, 255)
      draw_actor_sp(actor, actorx, 64, 120)
      rate3 = $game_party.actors[i].exp / $game_party.actors[i].next_exp_s.to_i
      draw_bar(actorx, 102, rate3, 120, 255, 255, 0)
      self.contents.draw_text(actorx, 96, 32, 120, "NEXT LEVEL")
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
  end
end



#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs menu screen processing.
#==============================================================================

class Scene_Menu
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    # Make command window
    s1 = $data_system.words.item
    s2 = $data_system.words.skill
    s3 = $data_system.words.equip
    s4 = "Status"
    s5 = "Save"
    s6 = "End Game"
    @command_window = Window_HCommand.new(96, [s1, s2, s3, s4, s5, s6])
    @command_window.x = 16
    @command_window.y = 416
    @command_window.index = @menu_index
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable items, skills, equipment, and status
      @command_window.disable_item(0)
      @command_window.disable_item(1)
      @command_window.disable_item(2)
      @command_window.disable_item(3)
    end
    # If save is forbidden
    if $game_system.save_disabled
      # Disable save
      @command_window.disable_item(4)
    end
    # Make status window
    @status_window = Window_CollapsedMenuStatus.new(0,0)
    @status_window.x = 0
    @status_window.y = 0
    # Execute transition
    Graphics.transition
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of windows
    @command_window.dispose
    @playtime_window.dispose
    @steps_window.dispose
    @gold_window.dispose
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Update windows
    @command_window.update
    @status_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
    if @status_window.active
      update_status
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when command window is active)
  #--------------------------------------------------------------------------
  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # If command other than save or end game, and party members = 0
      if $game_party.actors.size == 0 and @command_window.index < 4
        # Play buzzer SE
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      case @command_window.index
      when 0  # item
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to item screen
        $scene = Scene_Item.new
      when 1  # skill
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Make status window active
        @command_window.active = false
        @status_window.active = true
        @status_window.index = 0
      when 4  # save
        # If saving is forbidden
        if $game_system.save_disabled
          # Play buzzer SE
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to save screen
        $scene = Scene_Save.new
      when 5  # end game
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to end game screen
        $scene = Scene_End.new
      end
      return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when status window is active)
  #--------------------------------------------------------------------------
  def update_status
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Make command window active
      @command_window.active = true
      @status_window.active = false
      @status_window.index = -1
      return
    end
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @command_window.index
      when 1  # skill
        # If this actor's action limit is 2 or more
        if $game_party.actors[@status_window.index].restriction >= 2
          # Play buzzer SE
          $game_system.se_play($data_system.buzzer_se)
          return
        end
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to skill screen
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to equipment screen
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        # Play decision SE
        $game_system.se_play($data_system.decision_se)
        # Switch to status screen
        $scene = Scene_Status.new(@status_window.index)
      end
      return
    end
  end
end
278
RPG Maker Scripts / [RESOLVED]% bars
May 31, 2008, 08:24:13 pm
hello every one I'm finally getting back to making my CMS and I wanted to put bars in but I realized after looking at many examples that I don't know how they work

so I was wondering if any one could make a very simple example of a solid color bar that fills based on the % health/MP/EXP of the actor? and explain how it works? and if you feel you have the time explain it line by line?
279
Entertainment / the glory's of photo editing
May 28, 2008, 12:19:22 pm


lol

yes I made this
280
Is it possible to make a script the allows the playing of .WMV (windows media video) files in RPG maker xp?

I know it is possible to play AVI files because I've seen the script. but AVI files aren't the best for one thing a 1 megabit WMV file is 63 megabits as an AVI so you can see the limitation.

I Just wanted to know

-Ryex

PS: LOL I signed
281
Entertainment / My Asan'Tear Logo Movie
April 03, 2008, 07:47:34 pm
It took me a week but I finally got this out of directer off of Mac and into a windows movie format.

282
I guess i'l make the first topic in this section

You know the icon next to the address in the address bar in Firefox and IE that pears next to some sites? Chaos-project for example?

how do you define what it is?
283
Advertising / Asan'Tear
March 25, 2008, 01:55:59 pm


an RPG Maker development community

All new site!

Be sure to take a look at the "About us" section on the site under services for my offers of service. Of coarse it apples to resources as well as games

here is the link and enjoy
http://www.asantear.co.cc
284
Script Requests / [RESOLVED] Help with my menu
March 22, 2008, 10:28:45 am
Well after weeks of trying I still don't get it. I've fooled around long enough. I'm trying to turn the command window in to a bar that displays the commands horizontally but I can't seem to do it. I can add the columns but I can't get the commands the display in another column.

can some one help?

basicly it will look like this

285
http://www.sendspace.com/file/mu3ini



I have been playing the Golden sun emulator and I was studying the battle system when it came to me how it "Really" works

I was wrong before It dose NOT Skew anything. the only thing the script would have to do to the sprite is reflect it across a Y axis, resize it and move it

To explain how this system would work and how to manipulate the sprit to achieve the desired effect, I have attached a Word Document at the top that has labeled figures Refer to the indicated Diagram when I use any of the fallowing: (1A), (1B), (2A), (2B), (A), (B), (C), (D), (E), (F), (G), (H).


To start the system only uses 1 Sprit for when the batters are standing still and doing a normal rotation out to the side of the battle (2A).  If the system needs to do a full rotation so that your party is in the back and it appears that you are looking at the battle from behind the enemy then is uses a second Sprit (1A).

Now look at figure (2B) this is what the camera view is when you are selecting your moves, the battle back is zoomed in when looking from the angle. Note that there is no difference is sprits between (2A), (2B), (A), or (B) the only difference is the position and size (some of the pics are zoomed more than others).
When you are done selecting your moves the system moves and resizes the sprits until they are in the positions of figure (A), it also takes the battle back, back to normal zoom and scrolls it to fallow with the rotation, this is the normal camera angle when you are in an attack faze.  Also note that the battle back scrolls to the left during this operation. also all battle backs in is game a draws so that they can scroll seamlessly.

From this explanation the rest of the figures should be self explanatory but if you have questions please ask.


286
RPG Maker Scripts / my first script (sagestions)
February 22, 2008, 06:20:08 pm
I have decided to learn how to script and I have be reading, but frankly reading it nowhere near as good a teacher as experience. So all you scripters out there, what was you first script or what is a good starting level of script to learn from.

ie. Menu system, or other simple functionality script that (preferably) has already been made.
287
General Discussion / Changing the Game icon
February 02, 2008, 09:28:53 pm
I seem to have seen this some where but can't find it again any help?

in case you need clairafacation i mean like Blizz Did with Chaos Project
288
General Discussion / The Best CMS (Custom Message System)
February 01, 2008, 11:33:26 pm
What is the best CMS?

Which one do you use?

Why DO you Use it?

Who makes the best CMSs?

Post it all below! :D

289
Chat / the "SNOW DAY" thread
January 28, 2008, 01:31:14 pm
This is what it took to make the supperntendend close the schools for the first time in 35 YEARS




290
A page that contains resources from my searches as well as some things I've done

DISSCLAMIER:
I in no way claim rights to these files (unless of coarse they have my name in the credit area) all credit if you use these files should go to the Person or company listed in the file's description




Sound:

Music from Mech Commander: ShowHide


Content: Music from Mech Commander
Filename: MC2_music.zip
File Size: 95.59 MB
Download Format: .ZIP
Content Format: .WAV
Credit:

MC2_music.zip



Music from Age Of Empires 3: ShowHide
 

Content: Music from Age Of Empires 3
Filename: AOE3_sound.zip
File Size: 76.65 MB
Download Format: .ZIP
Content Format: .WAV
Credit:Ensemble Studios

AOE3_sound.zip



Back ground sounds from Age Of Empires 2: ShowHide


Content: Back ground sounds from Age Of Empires 2
Filename: AOE2_background_files.zip
File Size: 1.86 MB
Download Format: .ZIP
Content Format: .WAV
Credit: Ensemble Studios

AOE2_background_files.zip



Golden sun sound files: ShowHide


Content: Sound files from games 1 AND 2
Filename: Golden_sun_sound_files.zip
File Size: 396.48 KB
Download Format: .ZIP
Content Format: .MIDI
Credit:Camelot Software Planning
Golden_sun_sound_files.zip



Stronghold Crusader: ShowHide


Content: sound effects from Stronghold Crusader some 800+ sword, shield, death, and other life sounds
Filename: Strounghold_Crusader_Backs.zip
File Size: 16.31 MB MB
Download Format: .ZIP
Content Format: .WAV
Credit: Firefly Studios

Strounghold_Crusader_Backs.zip

Content: Music from Stronghold Crusader (had to convert these from .raw form
Filename: Strounghold_music.zip
File Size: 34.44 MB MB
Download Format: .ZIP
Content Format: .WMA
Credit: Firefly Studios

Strounghold_music.zip




Content: Wind and other background sounds from Stronghold Crusader
Filename: Stronghold Background sounds.zip
File Size: 1.02 MB
Download Format: .ZIP
Content Format: .WAV
Credit: Firefly Studios

Stronghold Background sounds.zip






Battlebacks:

Riped from the golden sun games more WILL come

Field 1: ShowHide

Forest 1: ShowHide

Cave 1: ShowHide

Snow Field 1: ShowHide







Sprites:

Object Set From Golden Sun: ShowHide






RECLAIMER:
I DO claim rights to these files all the files below ARE ORIGONALY created by Camelot Software Planning  but I have done ALOT of work Recreating them In a RMXP Compatible form. and I mean ALOT.


Anamations:

Note: almost all these animations work best when each frame is zoomed to 300%

Tempest: ShowHide

FrothSpiral: ShowHide

FireyBlast: ShowHide

Eruption: ShowHide

DragonFire: ShowHide

DesturctRay: ShowHide

Deluge: ShowHide

BlueBolt: ShowHide

attack: ShowHide

enamy attack: ShowHide

flair: ShowHide

quake: ShowHide





Edits
credit me for anything in this section

Ubsidein Gate with portal: ShowHide







Origanals
You had better credit me here!

Window Skins: ShowHide



291
Script Requests / Mirror Script?
January 27, 2008, 08:56:17 am
IS it possible to make a script the duplacates a mirror? like you stand in frount of it and your reflection appears?
292
Chat / Nowhere is somewhere?
January 26, 2008, 10:23:03 pm
i just notice the words under my avatar did you put them there Bliz?
293
Resource Requests / object sprite
January 26, 2008, 03:45:34 pm
What i need looks like this


But the dark gray needs to be an obsidian black glass color
And the movement animation should be a glare going across the rock.  And the steps need to be a marble

Also the obsidian needs to have symbols etched in to it.

Can you guys make this?