Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Battle Memory
#1
This is a locked, single-post thread from Creation Asylum. Archived here to prevent its loss.
No support is given. If you are the owner of the thread, please contact administration.


Credit sandgolem, aka me.

Just dump this in your game. Under the default scripts, SDK (optional) and above main.

Helps make those battles a little less irritating smile.gif No modifications necessary other than setting a switch # in the comments. Characters will auto-select their last selected things, if they can, instead of always "Attack" being the default option.

Enabled by turning the switch on, disabled whenever the switch is off.
Should be compatible with most battle systems but I haven't tested.

Code:
#=============================================================================
# ** SG Battle Command Memory
#=============================================================================
# sandgolem
# Version 1
# 20.06.06
#=============================================================================

Scene_Battle::SG_Command_Memory_Switch = 5
# When this switch is on, commands are remembered.

#=============================================================================
#
# To check for updates or find more scripts, visit:
# http://www.gamebaker.com/rmxp/scripts/
#
# To use this script, copy it and insert it in a new section above "Main",
# but under the default scripts and the SDK if you're using it.
#
# Have problems? You can leave me a message at:
# http://www.gamebaker.com/users/sandgolem
#
#=============================================================================

#--------------------------------------------------------------------------
# * SDK Log Script
#--------------------------------------------------------------------------
begin
  SDK.log("SG Battle Command Memory", "sandgolem", 1, "20.06.06")
  if SDK.state("SG Battle Command Memory") != true
    @sg_battlecmemory_disabled = true
  end
  rescue
end

#--------------------------------------------------------------------------
# * Begin SDK Enable Test
#--------------------------------------------------------------------------
if !@sg_battlecmemory_disabled
  
class Game_Actor < Game_Battler
  attr_accessor :sg_last_selected_action
  attr_accessor :sg_last_selected_actor
  attr_accessor :sg_last_selected_enemy
  attr_accessor :sg_last_selected_item
  attr_accessor :sg_last_selected_skill
end

class Scene_Battle
  
  alias sandgolem_battlememory_battle_main main
  def main
    sandgolem_battlememory_battle_main
    for i in $game_party.actors
      if i.sg_last_selected_action != 1
        i.sg_last_selected_action = nil
      end
      i.sg_last_selected_actor = nil
      i.sg_last_selected_enemy = nil
      i.sg_last_selected_item = nil
      i.sg_last_selected_skill = nil
    end
  end

  alias sandgolem_battlememory_battle_ph3setupcom phase3_setup_command_window
  def phase3_setup_command_window
    sandgolem_battlememory_battle_ph3setupcom
    if $game_switches[SG_Command_Memory_Switch]
      if @active_battler.sg_last_selected_action != nil
        @actor_command_window.index = @active_battler.sg_last_selected_action
      end
    end
  end
        
  alias sandgolem_battlememory_battle_startactorsel start_actor_select
  def start_actor_select
    sandgolem_battlememory_battle_startactorsel
    if $game_switches[SG_Command_Memory_Switch]
      if @active_battler.sg_last_selected_actor != nil
        @actor_arrow.index = @active_battler.sg_last_selected_actor
      end
    end
  end

  alias sandgolem_battlememory_battle_startenemysel start_enemy_select
  def start_enemy_select
    sandgolem_battlememory_battle_startenemysel
    if $game_switches[SG_Command_Memory_Switch]
      if @active_battler.sg_last_selected_enemy != nil
        @enemy_arrow.index = @active_battler.sg_last_selected_enemy
      end
    end
  end
  
  alias sandgolem_battlememory_battle_startitemsel start_item_select
  def start_item_select
    sandgolem_battlememory_battle_startitemsel
    if $game_switches[SG_Command_Memory_Switch]
      if @active_battler.sg_last_selected_item != nil
        @item_window.index = @active_battler.sg_last_selected_item
      end
    end
  end

  alias sandgolem_battlememory_battle_startskillsel start_skill_select
  def start_skill_select
    sandgolem_battlememory_battle_startskillsel
    if $game_switches[SG_Command_Memory_Switch]
      if @active_battler.sg_last_selected_skill != nil
        @skill_window.index = @active_battler.sg_last_selected_skill
      end
    end
  end
  
  alias sandgolem_battlememory_battle_uph3bc update_phase3_basic_command
  def update_phase3_basic_command
    if Input.trigger?(Input::B) or Input.trigger?(Input::C)
      @active_battler.sg_last_selected_action = @actor_command_window.index
    end
    sandgolem_battlememory_battle_uph3bc
  end

  alias sandgolem_battlememory_battle_enditemsel end_item_select
  def end_item_select
    @active_battler.sg_last_selected_item = @item_window.index
    sandgolem_battlememory_battle_enditemsel
  end  

  alias sandgolem_battlememory_battle_endskillsel end_skill_select
  def end_skill_select
    @active_battler.sg_last_selected_skill = @skill_window.index
    sandgolem_battlememory_battle_endskillsel
  end

  alias sandgolem_battlememory_battle_endactorsel end_actor_select
  def end_actor_select
    @active_battler.sg_last_selected_actor = @actor_arrow.index
    sandgolem_battlememory_battle_endactorsel
  end

  alias sandgolem_battlememory_battle_endenemysel end_enemy_select
  def end_enemy_select
    @active_battler.sg_last_selected_enemy = @enemy_arrow.index
    sandgolem_battlememory_battle_endenemysel
  end
  
  alias sandgolem_battlememory_battle_itemactres make_item_action_result
  def make_item_action_result
    sandgolem_battlememory_battle_itemactres
    if $game_party.item_number(@active_battler.current_action.item_id) == 0
      @active_battler.sg_last_selected_item = nil
    end
  end
end

#--------------------------------------------------------------------------
# * End SDK Enable Test
#--------------------------------------------------------------------------
end
}


Possibly Related Threads…
Thread Author Replies Views Last Post
  Battle Trophies GoldenShadow 0 2,519 09-07-2006, 01:00 PM
Last Post: GoldenShadow
  Obtain Experience as You Battle Tsunokiette 0 2,078 06-28-2006, 01:00 PM
Last Post: Tsunokiette
  Change Cursor with differend commands in Battle Divinity 0 2,210 06-22-2006, 01:00 PM
Last Post: Divinity
  Before Battle Switch Sheol 0 2,268 04-20-2006, 01:00 PM
Last Post: Sheol
  After Battle Changes 1.1 Sheol 0 2,146 02-07-2006, 01:00 PM
Last Post: Sheol
  New Battle System V1.5 (Added Side View) Guedez 0 2,425 01-12-2006, 01:00 PM
Last Post: Guedez
  Little Battle Edit Darkness Seraph 0 1,772 12-26-2005, 01:00 PM
Last Post: Darkness Seraph
  Battle Event List & Pre-Battle Troop Setup SephirothSpawn 0 2,465 12-25-2005, 01:00 PM
Last Post: SephirothSpawn
  Random Battle Music Boss & Final Boss setup Eccid 0 2,023 11-03-2005, 01:00 PM
Last Post: Eccid
  Event check before battle end Jimmie 0 1,836 09-03-2005, 01:00 PM
Last Post: Jimmie



Users browsing this thread: