The RPG Maker Resource Kit

RMRK RPG Maker Creation => VX => VX Scripts Database => Topic started by: modern algebra on May 08, 2009, 01:51:15 AM

Title: Integrated Reserve Party
Post by: modern algebra on May 08, 2009, 01:51:15 AM
Integrated Reserve Party
Version: 1.0d
Author: modern algebra
Date: June 11, 2009

Version History



Description


    This script allows you to have a reserve party. Basically, this means that it allows you to have a larger number of actors in the party than are active at any given time, and it allows the player to choose which actors are active. This is a system implemented in a number of games in the Final Fantasy series, as well as the Tales series and numerous other RPGs. What makes this different from other reserve party scripts is that it is integrated in the DMS, thus allowing you to access menus such as the status menu on party members in reserve, rather than only in the active party. Characters in reserve can be swapped into the active party by the player at any time and vice versa.

    As the game maker, you have a number of options to limit this. You can set a minimum size for the active party, so if you wish the player cannot have fewer than whatever number you set, and as well you can set a maximum size for the reserve party. Further, you can set the percentage of exp received by characters in the reserve party, thus allowing you to limit how much exp is received by characters not in the active party. You can also lock individual actors to either the active party or the reserve.

Features


Screenshots

Choosing status for a reserve party member:
(https://rmrk.net/proxy.php?request=http%3A%2F%2Fimg8.imageshack.us%2Fimg8%2F5017%2Freservepartyscreen1.png&hash=1a785f1ea7e3ad98d36c3a0d4341b1fc3d90f941)

Switching Party composition
(https://rmrk.net/proxy.php?request=http%3A%2F%2Fimg8.imageshack.us%2Fimg8%2F6708%2Freservepartyscreen2.png&hash=d5f8c15851e7df6f99bfdc8ab5549b4cf0069f32)

Instructions

Place above Main and below other custom scripts in the Script Editor

Please see inside the header for detailed instructions on configuration and in-game options

Script


Script is too large. Please see the demo, or the attached txt document (http://rmrk.net/index.php?action=dlattach;topic=33028.0;attach=16405).

Credit



Thanks


Support


Please post in this topic at rmrk.net with any bug reports or suggestions.

Bug Fixes

Spoiler for Target All Bug:
There is a problem with the target all use of an item or skill, where it scrolls down to the last party member. To fix it, place the following code in its own slot in the editor, somewhere below the Reserve Party script, but still above Main.

Code: [Select]
#==============================================================================
# ** Window MenuStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - update_cursor
#==============================================================================

class Window_MenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Update Cursor
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mdrnalgbr_fixallcursor_irp_cfrk_4nv2 update_cursor
  def update_cursor (*args)
    mdrnalgbr_fixallcursor_irp_cfrk_4nv2 (*args)
    self.top_row = 0 if @index >= @item_max && @index < 100
  end
end

Addons

Spoiler for Lock Position:

This addon will allow you to lock an actor to their position, thus barring the player from rearranging him or her. It is useful, for instance, if you always want the main character to be the lead actor.

Code: [Select]
#==============================================================================
#    Lock Position
#      Addon to Integrated Reserve Party 1.0d
#    Version: 1.0
#    Author: modern algebra (rmrk.net)
#    Date: December 23, 2010
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Description:

#    This addon allows you to lock an actor to the position they are in. This
#   is useful if you always need a particular actor to be in the lead.
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Instructions:
#
#    Place this script in its own slot above Main but below the Integrated
#   Reserve Party script in the Script Editor.
#
#    To lock an actor in position, place the following code in a Script command:
#
#        lock_position (actor_id)
#          actor_id : the ID of the actor you want to lock.
#
#    To unlock, use the following code:
#
#        unlock_position (actor_id)
#          actor_id : the ID of the actor you want to unlock.
#
#    To set what icon will be shown for actors who are locked in position, go
#   to line xx and choose the icon index.
#==============================================================================

IRP_LOCK_POSITION_ICON_INDEX = 81

#==============================================================================
# ** Game Actor
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    new accessor instance variable - position_locked
#    aliased method - setup
#==============================================================================

class Game_Actor
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Public Instance Variables
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  attr_accessor :irp_position_locked
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Setup
  #     actor_id : actor ID
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_resrvlock_stup_8hg3 setup
  def setup (*args)
    @irp_position_locked = false
    # Run Original Method
    ma_resrvlock_stup_8hg3 (*args)
  end
end

#==============================================================================
# ** Game_Interpreter
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    new method - lock_position, unlock_position
#==============================================================================

class Game_Interpreter
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Lock Position
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def lock_position (actor_id)
    $game_actors[actor_id].irp_position_locked = true
    $game_party.ma_lock_party (actor_id)
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Unlock Position
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def unlock_position (actor_id)
    $game_actors[actor_id].irp_position_locked = false
    $game_party.ma_unlock_party (actor_id)
  end
end

#==============================================================================
# ** Window_MenuStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - refresh
#==============================================================================

class Window_MenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Refresh
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias malbra_lckposton_refrsh_7yv4 refresh
  def refresh (*args)
    malbra_lckposton_refrsh_7yv4 (*args) # Run Original Method
    ($game_party.members + $game_party.ma_reserve_members).each { |actor|
      next unless actor.irp_position_locked
      rect = Rect.new (self.contents.width - 32, actor.index*96 + 8, 24, 24)
      self.contents.clear_rect (rect)
      draw_icon (IRP_LOCK_POSITION_ICON_INDEX, rect.x, rect.y)
    }
  end
end 

#==============================================================================
# ** Scene_Menu
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased methods - ma_select_active; ma_select_reserve
#==============================================================================

class Scene_Menu
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Select Active
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mara_slctact_lockpos_6uc1 ma_select_active
  def ma_select_active (index, *args)
    if $game_party.members[index] && $game_party.members[index].irp_position_locked
      Sound.play_buzzer
      return
    end
    mara_slctact_lockpos_6uc1 (index, *args) # Run Original Method
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Select Reserve
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mara_slctres_lockpos_2ef3 ma_select_reserve
  def ma_select_reserve (index, *args)
    if $game_party.members[index] && $game_party.members[index].irp_position_locked
      Sound.play_buzzer
      return
    end
    mara_slctres_lockpos_2ef3 (index, *args) # Run Original Method
  end
end

The actor will need to be in the position that you want him or her to be in before you lock it. I probably should have added the function to specify a position to lock him or her to, but I kind of grew tired of looking at how terrible I used to be at scripting :P In any case, you want to do it at the start of the game so it shouldn't be a problem. Even if you want to do it midgame or something, it isn't too hard to rearrange the party manually first using the Change Party Member event command.

Known Compatibility Issues

By default, it does not work with Yanfly's Scene Menu Redux, but this compatibility patch should fix it:
Spoiler for Scene Menu Redux + IRP Compatibility Patch:
First, make sure that the Integrated Reserve Party is lower in the editor than Scene Menu Redux is.

So the order in the Script editor ought to be:

Scene Menu Redux
...
Integrated Reserve Party
IRP SMR Compatibility Patch

Then add this code in its own slot below both scripts in the editor.

Code: [Select]
#==============================================================================
# ** Window_ReDuxMenuStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - refresh
#    modified super method - create_contents
#==============================================================================

class Window_ReDuxMenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Create Window Contents
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def create_contents (*args)
    if @calling_from_refresh
      self.contents.clear
    else
      super (*args)
    end
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Refresh
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias adrbr_yanfly_irpsmrcomp_rfrsh_7ou9 refresh
  def refresh (reserve_input = false)
    $game_party.ma_draw_party_space = reserve_input
    $game_party.ma_return_reserve_members = true
    @calling_from_refresh = true
    # Run Original Method with Reserve Members
    adrbr_yanfly_irpsmrcomp_rfrsh_7ou9 ()
    @calling_from_refresh = false
    @calling_from_refresh
    # For all locked actors, draw an icon
    $game_party.ma_locked_actors.each { |actor_id|
      index = $game_actors[actor_id].index
      draw_icon (PARTY_CHANGE_LOCK_ICON_INDEX, self.contents.width - 32, index*96 + 8)
    }
    $game_party.ma_return_reserve_members = false
    $game_party.ma_draw_party_space = false
    @item_max = @scrn_item_max
  end
end

#==============================================================================
# ** Scene_Menu
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - create_command_window
#==============================================================================

class Scene_Menu
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Create Command Window
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mairp_yerdsmrcomp_crtcmmndwin_4jn2 create_command_window
  def create_command_window(*args)
    mairp_yerdsmrcomp_crtcmmndwin_4jn2(*args)
    @command_window.height = [@command_window.height,
      YE::REDUX::MENU::MAX_ROWS * 24 + 32].min
    @command_window.index = [@menu_index, @command_window.commands.size - 1].min
  end
end

Also, you don't need to do any of the setup for Yanfly's script in order for it to be added to the menu. It should be added automatically.

By default, it does not work with Scene_Status ReDux, but this compatibility patch should fix it:
Spoiler for Scene Status Redux + IRP Compatibility Patch:

Place this in its own slot beneath both Scene Status ReDux and the IRP in the editor.

Code: [Select]
class Scene_Status
  alias mdrnalg_irp_scsttrdux_comp_init_k23a initialize
  def initialize (*args)
    $game_party.ma_return_reserve_members = true
    mdrnalg_irp_scsttrdux_comp_init_k23a (*args)
  end
end

When using Atoa's Materia script, it will not allow access to the Materia Menu for Reserve Actors, but this patch will fix it:
Spoiler for IRP + Atoa Materia Compatibility Patch
Place the IRP below the Materia script, and place this patch below both of them, but still above Main.
[code
:
class Scene_MateriaEquip
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Start Processing
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias malg_matirpcomp_iniz_7uj3 initialize
  def initialize (*args)
    $game_party.ma_return_reserve_members = true
    malg_matirpcomp_iniz_7uj3 (*args)
    $game_party.ma_return_reserve_members = false
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Update Weapon Select
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias modal_irpmatria_updwpn_6yh4 update_weapon_select
  def update_weapon_select (*args)
    $game_party.ma_return_reserve_members = true
    modal_irpmatria_updwpn_6yh4 (*args) # Run Original Method
    $game_party.ma_return_reserve_members = false
  end
end
[/code]

It will not show Reserve Member's level ups through BigEd's Level Up Display script, but this patch should fix it:
Spoiler for IRP + BigEd's Level Up Display Compatibility Patch:

Place this in its own slot beneath the Reserve Party Script and BigEd's Level Up Display script. The order in the editor should be the IRP, then BigEd's Level Up Display script, then the patch, so:

Integrated Reserve Party
...
BigEd's Level UP Display
...
IRP + LUD Patch

Code: [Select]
#==============================================================================
# ** Game_Actor
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - gain_exp
#==============================================================================

class Game_Actor
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Gain EXP
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias modnabr_bed_displvlup_gnep_irpptch_2nc2 gain_exp
  def gain_exp (exp, *args)
    if $game_party.ma_reserve_actors.include? (self.id)
      exp = (exp * @reserve_exp_percent) / 100
    end
    # Run Original Method
    modnabr_bed_displvlup_gnep_irpptch_2nc2 (exp, *args)
  end
end


#==============================================================================
# ** Scene Battle
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - display_level_up
#==============================================================================

class Scene_Battle
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Display Level Up
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mdrnalg_irp_bgedlupwin_beth_7hg2 display_level_up
  def display_level_up (*args)
    # Retrieve all actors through members
    $game_party.ma_return_reserve_members = true
    # Run Original Method
    mdrnalg_irp_bgedlupwin_beth_7hg2 (*args)
    $game_party.ma_return_reserve_members = false
  end
end

Obviously, it will not work well with other party changing scripts. It does not support an active party larger than 4 characters, but it can support smaller active parties. Just change the constant MAX_MEMBERS in Game_Party to allow for that.

Further, since it is integrated into the DMS, it will likely not work with exotic CMSes. I have, however, taken some effort to make it compatible with scripts that change the DMS in less drastic ways. It ought to work with KGC CustomMenuCommand scripts as long as it is placed below all KGC scripts that utilize CustomMenuCommand. Further, graphical changes that alter how the actor is displayed in the Menu window should also be OK. If it does not work, there are a number of Party Changing Scripts not dependent on the DMS. For instance: KGC Large Party (http://www.rpgmakervx.net/index.php?showtopic=1044), Prexus' Party Selector (http://www.rpgmakervx.net/index.php?showtopic=1040), or Dargor's Party Changer (http://www.hbgames.org/forums/viewtopic.php?f=11&t=42719&start=0&sid=5bef5d26e94239f8b90e5d8be7a6da7a)

It should also work with my Quest System. It likely will not work well with my Multiple Parties script, though I will work on a compatibility patch.

If you encounter any problems, please post here and I will do my best to fix it.

Demo


See attached demo (http://rmrk.net/index.php?action=dlattach;topic=33028.0;attach=16406).


Creative Commons License
This script by modern algebra is licensed under a Creative Commons Attribution-Non-Commercial-Share Alike 2.5 Canada License.
Title: Re: Integrated Reserve Party
Post by: Yanfly on May 08, 2009, 02:43:40 AM
I like how easily accessible this one is without the need of a new scene. On top of that, I'm even more thrilled that it doesn't re-order your party when you swap different positions, which is something most party switchers don't retain. Kudos on this great script, MA. =D

EDIT: Also, a little off topic but looking at the demo, how'd you manage to put in those grass flowery patches without them blending into each other?
Title: Re: Integrated Reserve Party
Post by: modern algebra on May 08, 2009, 03:20:02 AM
Thanks! It's always a little tricky integrating things into a scene, and the trade off is compatibility, but I think it's better to have all of the actors accessible from the DMS.

As for the grass patches, that's a little trick I stumbled upon wholly accidentally. If you hold shift and right-click/drag a plot, then it takes the map as it is, so if you hold shift and left click then it wil draw the square exactly as you recorded it, ignoring all adjacent autotiles. You have to hold shift both when you're selecting and when you're drawing though.
Title: Re: Integrated Reserve Party
Post by: Yanfly on May 08, 2009, 03:24:59 AM
I don't think there'd be any compatibility issues involved regarding the menu scene since all but the new definitions are aliased. You're always so set on compatibility (it's a great thing that more people need to do) and you did a good job of that like always. =]

And that's a really neat trick. I'm glad to have learned it, thanks! You're always one to find and figure out something new, haha.
Title: Re: Integrated Reserve Party
Post by: modern algebra on May 08, 2009, 07:45:21 PM
haha, I doubt I was the first to figure it out. I think I even saw it mentioned in a tutorial on some other site recently. It is a useful trick though.

As for the compatibility, I do try, but it is impossible to account for everything. And for a script like this, it is dependent on them having a DMS-like menu system, whereas if it had its own scene it would work with any menu system. Thanks for the compliments though. You have been making some great scripts yourself.
Title: Re: Integrated Reserve Party
Post by: Nitro-RMVX on June 23, 2009, 10:10:07 AM
I'm getting an error: Script 'MA_Reserve Party 1.0' line 504: ArgumentError occurred. wrong number of arguments(1 for 0)

Line 504 says: 'refresh (reserve_input)'

The error pops up when I press X in the map to open the menu.

I have quite some scripts  :-\ so, it might as well be a compatibilty problem with one of them, but I'm not using any other party script.
I use Yanfly's Custom Menu Commands, since it has premade command for KGC, your Quest journal and others.
Other menu commands I have are: Skill Slots (Yanfly), EquipLearnSkill (KGC), Distribute Parameter (KGC) Quest Journal (modern algebra), Bestiary (Yanfly) and Outline (KGC).

If this isn't enough or the right information, please ask what you need.

|Cheers| Nitro-RMVX
Title: Re: Integrated Reserve Party
Post by: modern algebra on June 23, 2009, 01:13:01 PM
Yeah, it's incompatible with Yanfly's Custom Menu Command. I will look into it, but it might be hard to fix.
Title: Re: Integrated Reserve Party
Post by: modern algebra on June 24, 2009, 04:15:06 AM
OK, try adding this below both scripts. Also, make sure that the Integrated Reserve Party is lower in the editor than Scene Menu Redux is.

So the order in the Script editor ought to be:

Scene Menu Redux
...
Integrated Reserve Party
IRP SMR Compatibility Patch

Code: [Select]
#==============================================================================
# ** Window_ReDuxMenStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - refresh
#    modified super method - create_contents
#==============================================================================

class Window_ReDuxMenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Create Window Contents
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def create_contents (*args)
    if @calling_from_refresh
      self.contents.clear
    else
      super (*args)
    end
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Refresh
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias adrbr_yanfly_irpsmrcomp_rfrsh_7ou9 refresh
  def refresh (reserve_input = false)
    $game_party.ma_draw_party_space = reserve_input
    $game_party.ma_return_reserve_members = true
    @calling_from_refresh = true
    # Run Original Method with Reserve Members
    adrbr_yanfly_irpsmrcomp_rfrsh_7ou9 ()
    @calling_from_refresh = false
    @calling_from_refresh
    # For all locked actors, draw an icon
    $game_party.ma_locked_actors.each { |actor_id|
      index = $game_actors[actor_id].index
      draw_icon (PARTY_CHANGE_LOCK_ICON_INDEX, self.contents.width - 32, index*96 + 8)
    }
    $game_party.ma_return_reserve_members = false
    $game_party.ma_draw_party_space = false
    @item_max = @scrn_item_max
  end
end

Also, you don't need to do any of the setup for Yanfly's script in order for it to be added to the menu. It should be added automatically.
Title: Re: Integrated Reserve Party
Post by: Nitro-RMVX on June 24, 2009, 01:01:09 PM
I've tested it and this is the result:

I get no error, that is the good part (I did get an error when I tried to make CMC open the Party Command, but that is just my doing and has nothing to do with your script and patch)
The downside is that the Party Command is grey and I can't access it. Another thing that happends is this:

My Menu looks as following: Status, Item, Equip, Skill, Slots, Skill Book, Level Up, Party (PARTY_CHANGE_MENU_INDEX = 7), Quests, Help, Save, Game End.

When I try Quests, it opens Help. The Help option doesn't do anything and the rest does open the right menu, but party is still grey.

Thank you very much for your time. Nitro-RMVX
Title: Re: Integrated Reserve Party
Post by: modern algebra on June 24, 2009, 03:18:13 PM
Can you send me a copy of your scripts.rvdata?

I've tested it, and so far nothing bad has happened. Party is not grey, so I figure it must either be in setup (if you disabled access, which I don't imagine you'd do) or some type of incompatibility with what scripts you are using. So yeah, can I see the Scripts.rvdata or even the entire project?
Title: Re: Integrated Reserve Party
Post by: Nitro-RMVX on June 24, 2009, 05:49:43 PM
 :'(  ???  >:(  :mad:  :tpg:

After getting really annoyed, I finally discovered what was wrong. To save you all the details, I forgot to make sure the party had more then 1 member.  :-\ Party does work now.
I still have a problem though, but that one is probably for Yanfly. The party overwrites the custom menu command of the Quest Journal, and the Quest Journal overwrites the KGC Outline, resulting that the Quest option opens Outline and outline ("help") doesn't open anything, since save and End Game work fine.
Or might there be any way to make a 'call' to the party script so it kinda runs from the Custom Menu Command script and takes a spot in the Custom menu command list? Because I do believe that would solve the problem.

Again, thanks for your time!
Nitro-RMVX
Title: Re: Integrated Reserve Party
Post by: modern algebra on June 24, 2009, 07:31:08 PM
I don't think the Party command would run smoothly from the Custom Menu because it doesn't call a Scene, it operates within Scene_Menu itself. It would almost certainly be faster for me to see your Scripts.rvdata directly and find out where the problem is from that.

Also, I've tested Quest Journal and Party commands with Scene Menu Redux before and it's worked.

Are you setting the Quest option up through the Scene Menu Redux? Because that might cause the problem. It might be a script order problem too; I'm not sure until I see the Scripts.rvdata
Title: Re: Integrated Reserve Party
Post by: Nitro-RMVX on June 24, 2009, 09:45:29 PM
Very well, if you think something else then me, I go trust you!

I'll send you a PM with the script.rvdata tomorrow, after I find out how xD.

Good luck and I'll just keep thanking you at the end of each post, so thanks again
Nitro-RMVX
Title: Re: Integrated Reserve Party
Post by: modern algebra on June 24, 2009, 11:25:37 PM
To upload it, just archive it (with a program like WinRAR or WinZip or etc...), and then you can either attach it to a post under the Additional options thing in New Reply or upload it to sendspace or another uploading site and send me the link. :)
Title: Re: Integrated Reserve Party
Post by: Nitro-RMVX on June 25, 2009, 08:48:11 AM
Right,... Additional Options  :-\
Scripts don't make the game so I might as well upload it here. (People, just know you can't use my script without the animations :P)

And yes, I am setting the Quest option through the Scene Menu Redux, because it was already built-in when downloading the script.

Nitro-RMVX
Title: Re: Integrated Reserve Party
Post by: modern algebra on June 25, 2009, 03:04:21 PM
OK, it looks like whatever the Help script is, it is interfering ... KGC Outline?

Anyway, Put the Quest Journal and the Party Script below that script in the editor and it should work.

Also, I deleted your attachment and it had only had my download, so no worries on that front.
Title: Re: Integrated Reserve Party
Post by: Nitro-RMVX on June 25, 2009, 04:31:02 PM
whahaha, totally awesome xD... if you had any userbar or something xD...
Anyway, if you want, I could make one, but I have no clue where to link it too :P

Thanks, it works!

A very satisfied 'customer', Nitro-RMVX
Title: Re: Integrated Reserve Party
Post by: modern algebra on June 25, 2009, 04:32:22 PM
haha, I don't think I need a userbar :P Thanks for the offer though.

I am glad it is working now.
Title: Re: Integrated Reserve Party
Post by: Grafikal on June 25, 2009, 04:35:21 PM
... if you had any userbar or something xD...

We think this all the time sir.  :P
Title: Re: Integrated Reserve Party
Post by: Nitro-RMVX on June 25, 2009, 04:58:24 PM
@ Modern Algebra: Hhmmm, ok, no userbar *snif*...  :D

@ Grafikal009: Well, you can't blame me, I use 8 scripts of Modern Algebra, so... 
Spoiler for:
that rocks! :edgarrock:
Title: Re: Integrated Reserve Party
Post by: Ashigaru on July 19, 2009, 04:20:00 PM
It looks like a really good script, though... And I'm sure it's something on my part, because I'm still fairly new to RPG Maker VX, though I've gotten installing scripts down and the others are running okay, but whenever I run it and try to lock my party or removed a character from it I get this error:

Script 'Integrated Reserve Party' line 159: NoMethodError occured.

undefined method 'delete' for nil:NilClass

Any idea what I'm doing wrong?

Not sure if this information helps but I am using the Side View Battle System from Kylock(?) and the Lightning Effect system from Kylock.
Title: Re: Integrated Reserve Party
Post by: chronofreak on July 21, 2009, 12:24:11 AM
Very nice script; it's easy to use and is just what I need.  However, there is one issue I'd like to bring up: when I use a spell to heal my entire party out of battle, the window that shows the characters that will be healed only displays the last character in my reserve list.

Screen shot:
Spoiler for:
(https://rmrk.net/proxy.php?request=http%3A%2F%2Fimg.photobucket.com%2Falbums%2Fv47%2Fchronofreak%2FUntitled-1copy-1.gif%3Ft%3D1248135544&hash=2b124100e0cc06ba810c594889f095fa38a7d7fb)

There is a scroll arrow at the top of the window that indicates that there are more characters above that one, but I can't scroll up to view them.  I currently have 4 active party members and 6 more members in the reserve party.

Can anything be done about this?  Maybe a quick fix to rearrange the actor list and show the first characters instead of the last?
Title: Re: Integrated Reserve Party
Post by: modern algebra on July 21, 2009, 02:49:42 AM
It looks like a really good script, though... And I'm sure it's something on my part, because I'm still fairly new to RPG Maker VX, though I've gotten installing scripts down and the others are running okay, but whenever I run it and try to lock my party or removed a character from it I get this error:

Script 'Integrated Reserve Party' line 159: NoMethodError occured.

undefined method 'delete' for nil:NilClass

Any idea what I'm doing wrong?

Not sure if this information helps but I am using the Side View Battle System from Kylock(?) and the Lightning Effect system from Kylock.

Try placing the Party Script below all other custom scripts, but still above Main.

@chronofreak - that does seem to be a problem. I will see what I can do to fix it tomorrow.
Title: Re: Integrated Reserve Party
Post by: modern algebra on July 26, 2009, 11:36:38 PM
Hey chrono, sorry for being late, but here it is:

Just place it above Main and below the Reserve Party Script

Code: [Select]
#==============================================================================
# ** Window MenuStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - update_cursor
#==============================================================================

class Window_MenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Update Cursor
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mdrnalgbr_fixallcursor_irp_cfrk_4nv2 update_cursor
  def update_cursor (*args)
    mdrnalgbr_fixallcursor_irp_cfrk_4nv2 (*args)
    self.top_row = 0 if @index >= @item_max && @index < 100
  end
end
Title: Re: Integrated Reserve Party
Post by: chronofreak on July 30, 2009, 01:35:20 AM
Ah, that's great!  Thank you!
Title: Re: Integrated Reserve Party
Post by: kitten2021 on August 04, 2009, 05:15:36 AM
Hmm... Sounds extremely nice, however I just have one question:
Is there any way to get the reserve party to work while you are in combat? Example being:

I have 4 members in my part, 2 die in a boss fight, I wish to replace them with my other 2 surviving reserve party members I have sitting off to the side.

Any way I could get that to work in this or it could be added as an option? (Please keep in mind, I have just barely started writing simple scripts, nothing extravagant like this yet...)  :/

Thank you so much for your time! :)
Title: Re: Integrated Reserve Party
Post by: Kathryn on August 04, 2009, 04:43:43 PM
Dammit, I can't believe I haven't noticed this one:

Sorry for the necro Lateish? post.

But this one needed congratulating upon.

Damn good job, MA.
Title: Re: Integrated Reserve Party
Post by: modern algebra on August 04, 2009, 11:18:03 PM
Thanks KitKatKan :)

Hmm... Sounds extremely nice, however I just have one question:
Is there any way to get the reserve party to work while you are in combat? Example being:

I have 4 members in my part, 2 die in a boss fight, I wish to replace them with my other 2 surviving reserve party members I have sitting off to the side.

Any way I could get that to work in this or it could be added as an option? (Please keep in mind, I have just barely started writing simple scripts, nothing extravagant like this yet...)  :/

Thank you so much for your time! :)

There is no way currently - I usually don't touch battle stuff since so many people use custom battle systems, but I will maybe write an addon to allow what you have suggested at some point in the future. I have a lot to do right now, but I will add it to the queue (don't expect it for a long time, though).
Title: Re: Integrated Reserve Party
Post by: kitten2021 on August 04, 2009, 11:34:17 PM
There's no problem at all! :)
It was just a question on if it could be done, thank you very much though for answering my question.   :)
Oh! BTW, many many props on this thing... Very cool! :)

Thanks,
Kitten2021
Title: Re: Integrated Reserve Party
Post by: Ashigaru on August 18, 2009, 03:57:16 AM
Okay, I got it working! Though now, I am actually curious, is there anyway that you can lock a character in a specific order? For example, would I be able to lock Actor 1 to slot #1? So they're always at the head of the party?
Title: Re: Integrated Reserve Party
Post by: modern algebra on August 18, 2009, 05:09:34 AM
I don't have that functionality built in, sorry.

I could add it, but I sort of figured it was pretty useless.
Title: Re: Integrated Reserve Party
Post by: kotchomet on August 18, 2009, 06:20:16 PM
This script looks like it was exactly what i needed; thanks!  ;8

I was wondering, though: in the game i'm making, inns work differently than in the regular RMVX set-up. I'm making it so that you can rent out an actual room, where you can heal and switch out party members, who would actually be in the room, able to be talked to and such. Do you know how i could do that?
Title: Re: Integrated Reserve Party
Post by: modern algebra on August 18, 2009, 07:03:08 PM
Yes, but you wouldn't need this script for it. With eventing it will be enough. ( though if you want to be able to see them in the menu you would need the script. You could lock all positions though, so you can't do any switching, but it'd be a little ugly)

All you need to do is keep track of who is accessible at any given time (turn a switch on when you add those characters)

Then, in the Inn, make a bunch of events which are conditioned on their respective switches. If the switch is turned ON, they will show up. Then in the process of the event, just put in the option to add them to the main party.
Title: Re: Integrated Reserve Party
Post by: kotchomet on August 18, 2009, 07:16:36 PM
Oh, alright. Thanks anyway!
Title: Re: Integrated Reserve Party
Post by: cheesemastr on November 03, 2009, 05:18:58 AM
This script is amazing it saved me a lot of time and effort of making a party system on my own. I was wondering though if you could make a way to lock an actor to a slot. Like the guy said before to lock actor 001 to slot 1. I need it to do that because it screws up my cutscenes if they switch around the party.
 
Title: Re: Integrated Reserve Party
Post by: modern algebra on November 03, 2009, 12:22:51 PM
umm, yeah - I'll add that feature soon. Probably later today.


EDIT:: Alright, maybe not today. Too much work. But soon!
Title: Re: Integrated Reserve Party
Post by: cheesemastr on December 03, 2009, 08:15:02 PM
umm, yeah - I'll add that feature soon. Probably later today.


EDIT:: Alright, maybe not today. Too much work. But soon!

Im sorry i don't want to seem like im pushing or anything. I just wanted to know how this was coming along? or if you decided just to not do it
Title: Re: Integrated Reserve Party
Post by: Daedren on March 02, 2010, 01:10:23 AM
Excelent script. Just have one question:
Is there a way to check if an actor is in the Reserve party using a Conditional Branch? That'd be useful.

Also, found a small compatibility issue, dunno if you'd want to look into it. Trying to change the Slots (Yanfly's Equip Skill Slots script) of a character in Reserve crashes the game.
"Line 2109. NoMethodError. Undefined method ` skills' for nil:NilClass"

Thanks for the awesome script anyway. Keep on the good work.
Title: Re: Integrated Reserve Party
Post by: Azaman90 on March 27, 2010, 07:10:33 AM
Great script was just wondering how you might make it so that it doesnt activate until a certain
point in the game?

ie. until you recieve a certain item or meet a certain character?

It's probably pretty simple but i've just started with scripting so i'm a bit clueless still at the moment lol

Title: Re: Integrated Reserve Party
Post by: demonking39 on May 15, 2010, 03:13:47 PM
I have the modern algebra party changer script that allows u to have an active party and a reserve party and u can change them up right from the menu. I also have the atoa materia script. This is my problem. When I change the materia of my active party, everything is fine, but it's when I try to change the materia of my reserve party that I get an error and my game crashes. It's bc the materia script does not recognise the extra actors in the menu and cannot process what to do with them. I need sum1 to take a look at it and see if they can figure out how to get the script to read the extra actors, and if not then to pls find a way to prohibit any use of the menu on reserve characters so that if you want to change their equipment or materia u need to bring them into the active party first. I hope sum1 can help me out. Thnx.
Title: Re: Integrated Reserve Party
Post by: modern algebra on May 15, 2010, 03:41:56 PM
Can you link me to this materia script you're using?
Title: Re: Integrated Reserve Party
Post by: cozziekuns on May 15, 2010, 03:49:55 PM
Firstly: http://rmrk.net/index.php/topic,24342.0.html (http://rmrk.net/index.php/topic,24342.0.html). Read number 2 please.

Your lucky Falcon hasn't come back yet :)

Secondly: I believe his using http://www.rpgmakervx.net/index.php?showtopic=7769 (http://www.rpgmakervx.net/index.php?showtopic=7769).
Title: Re: Integrated Reserve Party
Post by: modern algebra on May 15, 2010, 04:49:57 PM
Alright, try pasting this below the two scripts but still above Main.

Code: [Select]
class Scene_MateriaEquip
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Start Processing
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias malg_matirpcomp_iniz_7uj3 initialize
  def initialize (*args)
    $game_party.ma_return_reserve_members = true
    malg_matirpcomp_iniz_7uj3 (*args)
    $game_party.ma_return_reserve_members = false
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Update Weapon Select
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias modal_irpmatria_updwpn_6yh4 update_weapon_select
  def update_weapon_select (*args)
    $game_party.ma_return_reserve_members = true
    modal_irpmatria_updwpn_6yh4 (*args) # Run Original Method
    $game_party.ma_return_reserve_members = false
  end
end


It might not work if you've been messing around with things, but it did when I tested.

Also, the IRP must be below Materia, but it sounds like you've already done that.
Title: Re: Integrated Reserve Party
Post by: Wiimeiser on September 18, 2010, 02:49:37 AM
Is there a Melody version of the Redux patch, or some other workaround? Because Melody changes all the Refresh stuff around.
Title: Re: Integrated Reserve Party
Post by: GhyZe on November 06, 2010, 12:16:10 PM
Great Job!  ;)
Thanks a lot....I've used this script...
but since I downloaded the demo,  do I need to add the bug fixes?
I haven't found any error and I'm also using Yanfly script.
Title: Re: Integrated Reserve Party
Post by: heisenman on November 06, 2010, 07:56:40 PM
The IRP SMR Compatibility Patch is for Scene Menu ReDux users, if you're not using it, there's no point in adding it.



EDIT: Also, this is the party changer script of my dreams, I love you forever unicorn algebra ~
Title: Re: Integrated Reserve Party
Post by: modern algebra on November 09, 2010, 01:47:59 AM
haha, thanks.
Title: Re: Integrated Reserve Party
Post by: heisenman on November 09, 2010, 05:37:23 AM
Ok, I found kind of a discrepancy. Not a bug or anything though.
When there's at least one party member in reserve, the dark rectangle is permanent, before, during and after using the party management.
However, when you have all your reserve slots empty, there's no dark rectangle before you use this function, and after you use it, it's not disposed, it stays there until you select a new scene.
Doesn't it make more sense that if there's not a rectangle before, there shouldn't be one after?
Title: Re: Integrated Reserve Party
Post by: duckput on November 28, 2010, 01:14:02 PM
i have a problem,
its a compability issue.

your awesome script and another of your awesome script.

this script and Diary 1.0
http://rmrk.net/index.php/topic,35059.msg423257.html#msg423257

link to diary 1.0 by modern algebra.


Help...   :'(
Title: Re: Integrated Reserve Party
Post by: modern algebra on November 28, 2010, 05:32:29 PM
Alright, well go to line 780 of the Diary script and replace all of this:

Code: [Select]
#==============================================================================
# ** Window_Command
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  Summary of Changes:
#    new instance variable - ma_disabled_commands
#    aliased method - initialize, draw_item
#==============================================================================

class Window_Command
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Public Instance Variable
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  attr_reader :ma_disabled_commands
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Initialize
  #     width      : window width
  #     commands   : command string array
  #     column_max : digit count (if 2 or more, horizontal selection)
  #     row_max    : row count (0: match command count)
  #     spacing    : blank space when items are arrange horizontally
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mdrbra_intgrte_prtychng_menu_init_74b2 initialize
  def initialize(*args)
    # Initialize new instance variable
    @ma_disabled_commands = []
    # Run Original Method
    mdrbra_intgrte_prtychng_menu_init_74b2 (*args)
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Draw Item
  #     index   : item number
  #     enabled : enabled flag. When false, draw semi-transparently
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mrnalr_prtchng_intgrtin_menu_drw_itm_6gb3 draw_item
  def draw_item (index, enabled = true)
    # Run Original Method
    mrnalr_prtchng_intgrtin_menu_drw_itm_6gb3 (index, enabled)
    enabled ? @ma_disabled_commands.delete (index) : @ma_disabled_commands.push (index)
  end
end

with this:

Code: [Select]
#==============================================================================
# ** Window_Command
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  Summary of Changes:
#    new instance variable - ma_disabled_commands
#    aliased method - initialize, draw_item
#==============================================================================

class Window_Command
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Public Instance Variable
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  attr_reader :ma_disabled_commands
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Object Initialization
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mdrbra_dryinit_6yh1 initialize
  def initialize(*args)
    # Initialize new instance variable
    @ma_disabled_commands = []
    # Run Original Method
    mdrbra_dryinit_6yh1 (*args)
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Draw Item
  #     index   : item number
  #     enabled : enabled flag. When false, draw semi-transparently
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mrnalr_pdiary_draw_itm_5ty1 draw_item
  def draw_item (index, enabled = true, *args)
    # Run Original Method
    mrnalr_pdiary_draw_itm_5ty1 (index, enabled, *args)
    enabled ? @ma_disabled_commands.delete (index) : @ma_disabled_commands.push (index)
  end
end



You could also just delete it altogether and not replace it with anything, but then if you ever took the IRP out you'd have to replace it.
Title: Re: Integrated Reserve Party
Post by: duckput on November 29, 2010, 03:46:34 AM
thanks! it works perfectly.  ;8


EDIT: just 1 more question, i'm also using your quest journa script v 1.1.
when ever i test my game, i open the 'Quest' menu everything is fine, until i pressed my escape button, to go to the previous menu, an error pop up and it says

"Script Diary v 1.0 line 832 ArgumentError occured.
comparison of string with 4 failed"

is it related to this party script?
Title: Re: Integrated Reserve Party
Post by: modern algebra on November 29, 2010, 04:48:33 AM
No, the Diary and Quest Journal scripts are just incompatible when both are used in the menu. It's not hard to fix, you just need to do a little replacing. It's a fairly simple thing to make them compatible though. All you really need to do is go into the diary script, find the line that says:

Code: [Select]
elsif menu_index >= Data_DiaryEntries::MENU_INDEX

and replace it with:

Code: [Select]
elsif menu_index.is_a? (Integer) && menu_index >= Data_DiaryEntries::MENU_INDEX
Title: Re: Integrated Reserve Party
Post by: duckput on November 29, 2010, 11:37:56 AM
it did fix some problems, but when i go to the quest menu and press my esc button to go back to the previous menu, another error popped up saying:

Script 'Integrated Reserve Party' line 686: ArgumentError occurred.
comparison of String with 5 failed.

Help... (again)
Title: Re: Integrated Reserve Party
Post by: modern algebra on November 29, 2010, 01:58:06 PM
Is the Integrated Reserve Party above both the Diary and the Quest Journal in the Script Editor? Try that.
Title: Re: Integrated Reserve Party
Post by: duckput on November 29, 2010, 02:12:00 PM
I never thought about placing it in different orders.
Anyway the script is already on top of every other scripts, but I got it everything to work by placing the party script below every other scripts
woohoo ;8

your scripts are awesome btw.
Title: Re: Integrated Reserve Party
Post by: Infinate X on November 30, 2010, 11:48:47 PM
This reminds me of Mario RPG! That game freezes for me every time I beat johney so I can't beat it >:( 


 :dwi:
Title: Re: Integrated Reserve Party
Post by: MonkeyMan454 on December 04, 2010, 06:41:11 PM
I don't understand how to put this in my game can anyone help me?
Title: Re: Integrated Reserve Party
Post by: heisenman on December 05, 2010, 01:56:47 AM
Just paste it in the script editor below Material but above Main o:
Title: Re: Integrated Reserve Party
Post by: yuyu! on December 15, 2010, 07:32:11 PM
@ Grafikal009: Just about the same for me :)
I just wanted to say that I really appreciate these scripts, this one in particular is probably my favorite. It works nicely since I like making many characters to switch out and use. :D
Title: Re: Integrated Reserve Party
Post by: Forty on December 19, 2010, 11:27:25 PM
I was playing with your script and I noticed that the reserve party does not gain exp. Although this is fine for me, I thought I would bring it to your attention.
Title: Re: Integrated Reserve Party
Post by: modern algebra on December 19, 2010, 11:36:30 PM
They do as long as the PARTY_CHANGE_RESERVE_EXP_PERCENT constant isn't set to 0. It is probably an incompatibility with another script though. Maybe one that overwrites levelup stuff or a different battle script.
Title: Re: Integrated Reserve Party
Post by: modern algebra on December 23, 2010, 06:44:50 PM
I wrote an addon that will allow you to lock an actor to a position, so that he or she cannot be shifted around at all. It is useful, for instance, if you want the main character to always be the lead actor.


Code: [Select]
#==============================================================================
#    Lock Position
#      Addon to Integrated Reserve Party 1.0d
#    Version: 1.0
#    Author: modern algebra (rmrk.net)
#    Date: December 23, 2010
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Description:

#    This addon allows you to lock an actor to the position they are in. This
#   is useful if you always need a particular actor to be in the lead.
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Instructions:
#
#    Place this script in its own slot above Main but below the Integrated
#   Reserve Party script in the Script Editor.
#
#    To lock an actor in position, place the following code in a Script command:
#
#        lock_position (actor_id)
#          actor_id : the ID of the actor you want to lock.
#
#    To unlock, use the following code:
#
#        unlock_position (actor_id)
#          actor_id : the ID of the actor you want to unlock.
#
#    To set what icon will be shown for actors who are locked in position, go
#   to line xx and choose the icon index.
#==============================================================================

IRP_LOCK_POSITION_ICON_INDEX = 81

#==============================================================================
# ** Game Actor
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    new accessor instance variable - position_locked
#    aliased method - setup
#==============================================================================

class Game_Actor
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Public Instance Variables
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  attr_accessor :irp_position_locked
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Setup
  #     actor_id : actor ID
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_resrvlock_stup_8hg3 setup
  def setup (*args)
    @irp_position_locked = false
    # Run Original Method
    ma_resrvlock_stup_8hg3 (*args)
  end
end

#==============================================================================
# ** Game_Interpreter
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    new method - lock_position, unlock_position
#==============================================================================

class Game_Interpreter
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Lock Position
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def lock_position (actor_id)
    $game_actors[actor_id].irp_position_locked = true
    $game_party.ma_lock_party (actor_id)
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Unlock Position
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def unlock_position (actor_id)
    $game_actors[actor_id].irp_position_locked = false
    $game_party.ma_unlock_party (actor_id)
  end
end

#==============================================================================
# ** Window_MenuStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - refresh
#==============================================================================

class Window_MenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Refresh
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias malbra_lckposton_refrsh_7yv4 refresh
  def refresh (*args)
    malbra_lckposton_refrsh_7yv4 (*args) # Run Original Method
    ($game_party.members + $game_party.ma_reserve_members).each { |actor|
      next unless actor.irp_position_locked
      rect = Rect.new (self.contents.width - 32, actor.index*96 + 8, 24, 24)
      self.contents.clear_rect (rect)
      draw_icon (IRP_LOCK_POSITION_ICON_INDEX, rect.x, rect.y)
    }
  end
end 

#==============================================================================
# ** Scene_Menu
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased methods - ma_select_active; ma_select_reserve
#==============================================================================

class Scene_Menu
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Select Active
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mara_slctact_lockpos_6uc1 ma_select_active
  def ma_select_active (index, *args)
    if $game_party.members[index] && $game_party.members[index].irp_position_locked
      Sound.play_buzzer
      return
    end
    mara_slctact_lockpos_6uc1 (index, *args) # Run Original Method
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Select Reserve
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mara_slctres_lockpos_2ef3 ma_select_reserve
  def ma_select_reserve (index, *args)
    if $game_party.members[index] && $game_party.members[index].irp_position_locked
      Sound.play_buzzer
      return
    end
    mara_slctres_lockpos_2ef3 (index, *args) # Run Original Method
  end
end

The actor will need to be in the position that you want him or her to be in before you lock it. I probably should have added the function to specify a position to lock him or her to, but I kind of grew tired of looking at how terrible I used to be at scripting :P In any case, you want to do it at the start of the game so it shouldn't be a problem. Even if you want to do it midgame or something, it isn't too hard to rearrange the party manually first using the Change Party Member event command.
Title: Re: Integrated Reserve Party
Post by: Adrien on January 06, 2011, 12:24:30 AM
This may have been answered but:

- How would I call this via an npc interaction?
- How would I exclude - not lock - specific actors out so they don't appear?
Title: Re: Integrated Reserve Party
Post by: yuyu! on January 06, 2011, 12:31:29 AM
To have this called by an NPC... I think you can change the maximum of the reserve with this command: "change_reserve_maximum (new_maximum)" to make it look like the reserve is not there by setting it to "0", then call the command and change it via your NPC scene. I'll have to test that out. :) I don't know about the other question yet, I'll look around the script.

*EDIT* If you want the actor to be excluded and return by event, you could always make them leave the party with normal eventing and make them rejoin with eventing, but do not "initialize" them when they return. Is that what you mean? :)
Title: Re: Integrated Reserve Party
Post by: Adrien on January 06, 2011, 12:34:00 AM
Sorry I got this mixed up with a party switcher script. >_> doesnt look like this is what I wanted. but nice script
Title: Re: Integrated Reserve Party
Post by: yuyu! on January 06, 2011, 12:37:50 AM
I think MA has a seperate party script as well. I'll check it out and PM you if it helps your request. Sound good? :)
Title: Re: Integrated Reserve Party
Post by: Adrien on January 06, 2011, 12:40:30 AM
Yup
Title: Re: Integrated Reserve Party
Post by: Forty on January 06, 2011, 01:02:40 AM
They do as long as the PARTY_CHANGE_RESERVE_EXP_PERCENT constant isn't set to 0. It is probably an incompatibility with another script though. Maybe one that overwrites levelup stuff or a different battle script.

That's probably exactly what happened. No big deal, I'll just make an arena or something in the game, haha.
Title: Re: Integrated Reserve Party
Post by: ShortStar on February 02, 2011, 09:19:31 PM
This doesn't seem to work. Could it be Yanfly now uses a Main Menu Melody instead of a Scene Menu Redux? I have tried both compatability patches. Now I will go looking for help.
Title: Re: Integrated Reserve Party
Post by: Mr G W on March 21, 2011, 06:22:39 PM
Im using zeriab caterpillar with this script. the caterpillar only refreshes if i swap the actor 1. is there any way to always refresh the caterpilar when i switch the party members?

It doesnt work with Full Status CMS...
Title: Re: Integrated Reserve Party
Post by: modern algebra on March 23, 2011, 12:27:54 AM
No, well it was never ever intended to work with any custom menu systems - after all, something can really only be integrated when you have knowledge of what you are integrating it with. That said, I can do something about the Caterpillar script, but I am fairly busy at the moment and I might forget. Maybe you can remind me by PM if I haven't done this by this time next week?
Title: Re: Integrated Reserve Party
Post by: Mr G W on March 23, 2011, 08:41:02 AM
Sure, no prob.

EDIT: The caterpillar script also doesnt refresh if i place multiple actors in the reserve. the first gets removed and the others stay following. In other works, it doesnt always refresh.
Title: Re: Integrated Reserve Party
Post by: Mr G W on July 09, 2011, 05:22:28 PM
Theres a bug where even if you set a minimum active number, you can still place party members in the reserve party by selecting the first empty space in the reserve party. The second empty slot and so on work fine.
Title: Re: Integrated Reserve Party
Post by: Kotone123 on July 15, 2011, 09:14:24 PM
Wonderful script you have there. I tested it and it works fine. :D
Title: Re: Integrated Reserve Party
Post by: Kotone123 on July 21, 2011, 05:27:28 AM
I love this script, and I definently recommend it to anyone. But Algebra? Quick question, does this work with Full Status CMS?
Title: Re: Integrated Reserve Party
Post by: modern algebra on July 21, 2011, 11:20:39 AM
No, it wouldn't.
Title: Re: Integrated Reserve Party
Post by: MonkeyMan454 on September 05, 2011, 02:29:16 PM
@modern algebra

Hey it's been a while since I used RPG Maker VX and I remembered that I was using this script. How do you change the maximum number of party members?
Title: Re: Integrated Reserve Party
Post by: pacdiggity on September 05, 2011, 08:59:17 PM
Go to Game_Party and alter the MAX_MEMBERS constant.
Title: Re: Integrated Reserve Party
Post by: theUN3ARTH on October 04, 2011, 04:15:54 AM
@Modern Algebra
Is there any way to call a window in-battle to show the reserve party? I was looking to have a member-swap system just liuke ffx. How could I do this?
Title: Re: Integrated Reserve Party
Post by: oriceles on October 06, 2011, 05:40:24 AM
As I already see necroposting in here I will post. Nobody knows if i can see the reserve party members with YEZ to YEM Status Biography? That would be very awesome and give it a Fire emblem touch to the game. I'll test an edit this post later. Not to offend but I see this script much simpler than the one from Pacman.

EDIT: I tried to use both and this worked :D! I'm going to use this on my game haha, is something like golden sun.

ModernAlgebra the lock position addon works also with your Change Party Order script? i like having the option of change them without the menu, an with the caterpillar my charas look very funny
Title: Re: Integrated Reserve Party
Post by: JonFawkes on October 06, 2011, 05:50:41 AM
It's simpler but is only compatible as long as you don't use anything that modifies that status screen. I believe the Yanfly script you want to use pulls up its own scene, so it shouldn't be a problem.

My problem is that I am using MA's CMS, which has no room for the Integrated Reserve Party. In this case, Pacman's script is more suitable for my uses.
Title: Re: Integrated Reserve Party
Post by: oriceles on October 06, 2011, 07:35:31 AM
My problem is that I am using MA's CMS, which has no room for the Integrated Reserve Party. In this case, Pacman's script is more suitable for my uses.

Well is nice to have different options depending of which modifications are made.
In my case I'm too happy with the the combination result.
Title: Re: Integrated Reserve Party
Post by: Raphaela on October 28, 2011, 03:56:45 PM
Hello, I'm new around here and I made an account just to have my problem solved.

I'm using this Larger Party script and it's awesome, BUT I can't lock the main character.
I've put the Addon script and I'm using a event to call a script using this text:

lock_position (actor_id)
actor_id : 001

But it always give me an error message.

What am I doing wrong? Please, someone tell me.
Title: Re: Integrated Reserve Party
Post by: modern algebra on October 28, 2011, 11:34:37 PM
actor_id is to be replaced by the id, so not like that. Also, don't use leading zeroes. In other words:

Code: [Select]
lock_position (1)
Title: Re: Integrated Reserve Party
Post by: kathy on November 12, 2011, 06:42:25 AM
(https://rmrk.net/proxy.php?request=http%3A%2F%2Fimg810.imageshack.us%2Fimg810%2F1461%2Fnewbitmapimagefey.png&hash=54c1885aa6b545ff7186292c791245dbab371380)
This happens whenever I bring up the menu when on the map. What could be causing this, specifically?

EDIT: It appears that this only happens when I load a save file (presumably because they were created before the script was installed).
How can I make it so that the testers of my game do not need to go over from the beginning?
Title: Re: Integrated Reserve Party
Post by: pacdiggity on November 12, 2011, 07:47:13 AM
This may not work, but put this in a script command via event immediately after loading the game.
Code: [Select]
$game_party.ma_reserve_actors = []
$game_party.ma_max_active_size = MAX_MEMBERS
$game_party.ma_min_active_size = PARTY_CHANGE_MIN_ACTIVE_SIZE
$game_party.ma_max_reserve_size = PARTY_CHANGE_MAX_RESERVE_SIZE
$game_party.ma_locked_actors = []
$game_party.ma_party_access = true
$game_party.ma_return_reserve_members = false
$game_party.ma_draw_party_space = false
You'll need to split the lines, and you'll probably need more than one command. It should work, but I'm not quite sure. Don't place all your trust in it.
Title: Re: Integrated Reserve Party
Post by: kathy on November 12, 2011, 08:39:31 PM
How would I set an event to happen upon loading the game?
Title: Re: Integrated Reserve Party
Post by: andyvrc on December 27, 2011, 06:49:09 AM
i've got this error from your reserve party script..
here are some error..
please help me mr.. :))

(https://rmrk.net/proxy.php?request=http%3A%2F%2Fphotoserver.ws%2Fimages%2Fe8RU4ef969586658b.png&hash=e6ed2aea35f5e9e29d5a4152b561582f6a105e0a)
Title: Re: Integrated Reserve Party
Post by: gadgetsj on March 27, 2012, 03:58:58 AM
This script is just what I needed, but I'm having an error with compatibility with KGC Equip Extend script. Specifically, if I try to change out equipment of a reserve party member I get the error:

Script 'EquipExtend' line 1055 :NoMethodError Occurred
undefined method 'armor_number' for nil:NilClass

Line 1055 of EquipExtend reads:

@equip_index = [@equip_index, actor.armor_number].min

I've been searching forums here and RMVX community, but haven't had any luck with an answer. I'd hate to take either of these scripts out of my game, either. Thanks for any help you can provide, and thank you again for your awesome work.
Title: Re: Integrated Reserve Party
Post by: Revtattertot on March 30, 2012, 05:07:49 AM
Hi. I'm trying to get your script to work for my game, but there's a big problem. It loads in fine, then everything tharts processing in the map and I get this:

"undefined method 'ma_reserve_actors='for#<Game_Party:0x405a290>"

I configured everything properly up to that point, and even used Pacman's tip for the line 799 error, but I can't seem to fix this. Can you reply with some help, I'm kinda losin' it here.

With sanity,
Revtattertot.
Title: Re: Integrated Reserve Party
Post by: pacdiggity on March 30, 2012, 07:05:36 AM
It's not that big an issue. You can just start a new game, only preexisting save files are corrupted.

However, MA, I think save file corruption could be avoided by aliasing the method that loads files and initializing the constants there if it doesn't exist. Would that work?
Title: Re: Integrated Reserve Party
Post by: Revtattertot on March 30, 2012, 11:25:53 AM
Good to know, thanks!
Title: Re: Integrated Reserve Party
Post by: modern algebra on March 31, 2012, 04:01:53 AM
However, MA, I think save file corruption could be avoided by aliasing the method that loads files and initializing the constants there if it doesn't exist. Would that work?

Yes, it would.
Title: Re: Integrated Reserve Party
Post by: Revtattertot on March 31, 2012, 04:23:47 AM
Thanks for the feedback, guys.
Revtattertot
Title: Re: Integrated Reserve Party
Post by: pacdiggity on March 31, 2012, 04:52:37 AM
So it could just be:
Code: [Select]
class Scene_File < Scene_Base
  alias omg_what_rdsvfl read_save_file
  def read_save_file(*args)
    omg_what_rdsvfl(*args)
    $game_party.ma_reserve_actors = []
    $game_party.ma_max_active_size = MAX_MEMBERS
    $game_party.ma_min_active_size = PARTY_CHANGE_MIN_ACTIVE_SIZE
    $game_party.ma_max_reserve_size = PARTY_CHANGE_MAX_RESERVE_SIZE
    $game_party.ma_locked_actors = []
    $game_party.ma_party_access = true
    $game_party.ma_return_reserve_members = false
    $game_party.ma_draw_party_space = false
  end
end
Or something of that manner.
Title: Re: Integrated Reserve Party
Post by: Revtattertot on March 31, 2012, 05:31:39 AM
Now I'm getting a line 970 syntax error. Is there a second script I need with this?
Title: Re: Integrated Reserve Party
Post by: pacdiggity on March 31, 2012, 05:38:26 AM
Give me a second.
That's weird. My stuff things don't work.
Title: Re: Integrated Reserve Party
Post by: modern algebra on March 31, 2012, 12:28:27 PM
Well, some of those variables aren't publically accessible. Also, you would need to perform a check to see if they are already defined. Otherwise, for games that were started with the IRP, you would be deleting the entire reserve party everytime you loaded the game. In other words, it would be something like this:

Code: [Select]
class Game_Party
  def ma_irp_initvars
    # Initialize Variables
    @ma_reserve_actors = []
    @ma_max_active_size = MAX_MEMBERS
    @ma_min_active_size = PARTY_CHANGE_MIN_ACTIVE_SIZE
    @ma_max_reserve_size = PARTY_CHANGE_MAX_RESERVE_SIZE
    @ma_locked_actors = []
    @ma_party_access = true
    @ma_return_reserve_members = false
    @ma_draw_party_space = false
  end
end

class Scene_File < Scene_Base
  alias omg_what_rdsvfl read_save_file
  def read_save_file(*args)
    omg_what_rdsvfl(*args)
    $game_party.ma_irp_initvars if !$game_party.ma_reserve_actors
  end
end

Of course, I don't recall the script so there may be other instance variables I am neglecting, but you got the basic idea. Additionally, there are other things that happen in the read_save_file method, and if those methods interact with any of the variables created for the IRP then it won't make a difference. I did not look into that for this script, but it could easily be a problem for other scripts and would require additional aliasing.

All of my scripts in Ace have support for old savefiles, so you can look at them to see how it's done too. But you got the idea.
Title: Re: Integrated Reserve Party
Post by: pacdiggity on March 31, 2012, 12:44:57 PM
I was lazy, haha. I knew the logic behind that, I just didn't do it. Couldn't you also just use the ||= operator to avoid overwriting?

And I think that's all of the variables.
Title: Re: Integrated Reserve Party
Post by: modern algebra on March 31, 2012, 12:53:08 PM
Yes, you could, but doing an if branch is negligibly more efficient.
Title: Re: Integrated Reserve Party
Post by: digdarkevil on July 01, 2013, 01:50:48 PM
Maybe It has been already answered.. but, do you know why I get this error ?
It happenned to me so often and I was not able to fix it.. help please  :'(

It work just fine but the scrolling wont work  :-\
Title: Re: Integrated Reserve Party
Post by: modern algebra on July 01, 2013, 02:08:17 PM
I'm not sure what is going on there, but it seems like the problem is because whatever custom menu script you are using to make that data window is too big to accomodate the number of commands. I'm not sure that has anything to do with the reserve party script, but that might be because I am not sure what you are trying to show me with that screenshot.
Title: Re: Integrated Reserve Party
Post by: digdarkevil on July 01, 2013, 02:16:06 PM
I'm using those scripts
YERD_Scene_Menu_Redux
Reserve Party
Compatibility Patch
YERD_SceneStatusRedux
Compatibility Patch


Before I Inserted Them My Window Scrolled Down To Show The Other Commands But Now It Grows With The Number Of Commands  :-\

That Was My Menu Window, And Since I'm Using Menu Redux The Second Window For Time, Steps And Etc Is Over It..
Title: Re: Integrated Reserve Party
Post by: modern algebra on July 01, 2013, 02:28:25 PM
Well, create a new project with all those scripts in it and the error recreated, and upload it for me. I will see if I can figure out what is going wrong.
Title: Re: Integrated Reserve Party
Post by: digdarkevil on July 01, 2013, 07:40:46 PM
Here.  :)
Title: Re: Integrated Reserve Party
Post by: modern algebra on July 01, 2013, 09:51:12 PM
Alright, replace the Reserve Party Compatibility Patch that you have now with the following one:

Code: [Select]
#==============================================================================
# ** Window_ReDuxMenuStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - refresh
#    modified super method - create_contents
#==============================================================================

class Window_ReDuxMenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Create Window Contents
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def create_contents (*args)
    if @calling_from_refresh
      self.contents.clear
    else
      super (*args)
    end
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Refresh
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias adrbr_yanfly_irpsmrcomp_rfrsh_7ou9 refresh
  def refresh (reserve_input = false)
    $game_party.ma_draw_party_space = reserve_input
    $game_party.ma_return_reserve_members = true
    @calling_from_refresh = true
    # Run Original Method with Reserve Members
    adrbr_yanfly_irpsmrcomp_rfrsh_7ou9 ()
    @calling_from_refresh = false
    @calling_from_refresh
    # For all locked actors, draw an icon
    $game_party.ma_locked_actors.each { |actor_id|
      index = $game_actors[actor_id].index
      draw_icon (PARTY_CHANGE_LOCK_ICON_INDEX, self.contents.width - 32, index*96 + 8)
    }
    $game_party.ma_return_reserve_members = false
    $game_party.ma_draw_party_space = false
    @item_max = @scrn_item_max
  end
end

#==============================================================================
# ** Scene_Menu
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - create_command_window
#==============================================================================

class Scene_Menu
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Create Command Window
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mairp_yerdsmrcomp_crtcmmndwin_4jn2 create_command_window
  def create_command_window(*args)
    mairp_yerdsmrcomp_crtcmmndwin_4jn2(*args)
    @command_window.height = [@command_window.height,
      YE::REDUX::MENU::MAX_ROWS * 24 + 32].min
    @command_window.index = [@menu_index, @command_window.commands.size - 1].min
  end
end
Title: Re: Integrated Reserve Party
Post by: digdarkevil on July 01, 2013, 10:20:13 PM
Great It Works !!
Thank You So Much  :D
Title: Re: Integrated Reserve Party
Post by: modern algebra on July 01, 2013, 11:06:36 PM
I'm happy to help.
Title: Re: Integrated Reserve Party
Post by: digdarkevil on July 02, 2013, 01:29:01 PM
By the way, Awesome Scipt ! :D
This is exactly what I was look for :)