Welcome to BS Studios.

Here can find out information about releases made by me, my friends, or in a collaborative effort! Please keep in mind that this site may not be updated as often as I like.

Please remember to read the FAQ before asking questions. It covers a lot of ground but not all. If you do have a question that is not covered in the FAQ, do not hesitate to ask.

For a complete listing of all our projects, click the File Archives Tab at the top.

If you are wondering, BS does not stand for what you may think. Me and my friend just happen to have first names that begin with a "B" and a "S", and those are also my initials.

Thank you.

Thursday, October 21, 2010

Really simple individual battle commands for RMXP!

Again, you may recall that in RPG Maker 2003 (RM2K3), you can assign individual commands to each actor, and yet, for some reason, Enterbrain omitted that in RMXP?

Well fear not! I have written up a really simple, easy to use, and easy to customize individual battle command window for each actor based on that actor's id number.

Click to expand and see the script:
#=============================================
# Custom Individual Battle Commands
#---------------------------------------------
# Created By: StupidStormy36
# Version ID: 1.00
# Created on: 04/16/08
#=============================================


#=============================================
# ¦ Module SS36_Battle_Commands
#=============================================
# Initializes all Special battle commands.
#
# Instructions:
#
# Pretty simple really. Just change the Commandx to what string you want it
# to be. Remember this refers to the actor id, not his or her name.
#
#=============================================


module SS36_Battle_Commands
# Constants
Command1 = "Swordplay" # For actor id 1 (Arshes for default)
Command2 = "Lancer" # For actor id 2 (Basil for default)
Command3 = "Bruthe" # For actor id 3 (Sirius for default)
Command4 = "Thievery" # For actor id 4 (Dorothy for default)
Command5 = "Archery" # For actor id 5 (Estelle for default)
Command6 = "Gun Play" # For actor id 6 (Felix for default)
Command7 = "White Magic" # For actor id 7 (Gloria for default)
Command8 = "Black Magic" # For actor id 8 (Hilda for default)
# Add more here if necessary be placing Commandx = "+special+" where x = actor id
# and +special+ is the name of the special command.
end

#=============================================
# ** Scene_Battle (part 5)
#---------------------------------------------
# This class performs battle screen processing.
#=============================================

class Scene_Battle
#-------------------------------------------------------
# Disposes current command window and creates a new one.
#--------------------------------------------------------
def spawn_command_window
# Disposes current command window
@actor_command_window.dispose
# Initializes actor
actor = $game_party.actors[@actor_index]
# Branch based in current actor id (@actor_index)
case actor.id
when 1 # When actor id equals 1
special = SS36_Battle_Commands::Command1
when 2 # When actor id equals 2
special = SS36_Battle_Commands::Command2
when 3 # When actor id equals 3
special = SS36_Battle_Commands::Command3
when 4 # When actor id equals 4
special = SS36_Battle_Commands::Command4
when 5 # When actor id equals 5
special = SS36_Battle_Commands::Command5
when 6 # When actor id equals 6
special = SS36_Battle_Commands::Command6
when 7 # When actor id equals 7
special = SS36_Battle_Commands::Command7
when 8 # When actor id equals 8
special = SS36_Battle_Commands::Command8
# ADD ANY ADDITIONAL ACTORS IF NECESSARY HERE WITH "when x"
# WHILE x EQUALS THE ACTOR ID.
else # When all else fails, goes to
special = $data_system.words.skill
end
# Creates commands
s1 = $data_system.words.attack
s2 = special
s3 = $data_system.words.guard
s4 = $data_system.words.item
# Creates command window
@actor_command_window = Window_Command.new(160, [s1, s2, s3, s4])
@actor_command_window.y = 160
@actor_command_window.back_opacity = 160
@actor_command_window.active = false
@actor_command_window.visible = false
end

alias stupidstormy_phase3_command phase3_setup_command_window
def phase3_setup_command_window
spawn_command_window
stupidstormy_phase3_command
end
end


Read here for more information.


Really Simple Individual Battle Commands.