BizarreMonkey
Member
Okay, here's the Link http://www.rpgrevolution.com/forums/?showtopic=10238
and it's line 124 of the Animated Battler Formations.
Good luck :D
and it's line 124 of the Animated Battler Formations.
Good luck :D
$game_parties.next_party
$game_parties.prior_party
$game_system.multiple_parties = false
#==============================================================================
# ** Animated Battlers VX Add-On #1:
# Animated Battler Formations
#------------------------------------------------------------------------------
# by DerVVulfman
# version 1.0
# 05-20-2008
# RGSS2 / RPGMaker VX
#==============================================================================
#
# INTRODUCTION:
#
# Rather than reinstitute the formation system I included and hardwired into
# "Minkoff's Animated Battlers - Enhanced", I decided to use an outside script
# that is highly customizable. With this add-on, the end user can design the
# battle formations for the actor battlers. They will start out and remain
# lined up in the order the end user sets up.
#
# The system recognizes the 'Mirror Effect' system in Animated Battlers VX,
# and will adjust and reverse the battler positions accordingly. You need not
# worry about creating duplicate formation entries for both left and right
# sided formations.
#
#------------------------------------------------------------------------------
#
# CREATING THE FORMATIONS:
#
# This system allows you to create multiple formations. This is accomplished
# by the way you use the 'ABATVX_FORMATION' array. The syntax is as follows:
#
# ABATVX_FORMATION = { id => [ formation set ], id => [formation set],... }
#
# So... with that, you can make multiple sets of formations which you can
# switch to while the game is running..
#
# Now... each formation set holds the x and y position for each actor battler
# in combat. Not by their 'Actor ID' mind you, merely by party member order.
# So the first member in your party,regardless of their position in your actor
# database, will be first battler position defined in the formation set. The
# layout for each formation set is as follows:
#
# [ [Battler 1's X & Y], [Battler 2's X & Y],... ]
#
# Most people would set a formation set with allowances for 4 battlers. But if
# you wanted to use a large party script to increase the number of members in
# your battle party, you can add more than 4 battler arrays like so:
#
# ...ON = { 0 => [ [350,200], [395,235], [440,270], [485,305], [530,340] ],
# 1 => [ [530,200], [485,235], [440,275], [395,305], [350,340] ] }
#
#------------------------------------------------------------------------------
#
# SCRIPT CALL:
#
# There's only one script call you should be familiar with right now, and that
# is the script call that changes the formation you want to use in battle. By
# default, the system uses the formation set by ID #0. But you can change the
# formation being used with the following call:
#
#
# The call is simple: $game_system.abatvx_form_id = number
#
# Where the number is the ID number of your formation. That's it.
#
#
#------------------------------------------------------------------------------
#
# TERMS AND CONDITIONS:
#
# Free to use, even in commercial projects. Just note that I need some form
# of due credit... even a mere mention in some end titles.
#
#==============================================================================
# THE FORMATION
# SETTING ARRAY
# ==============
# ID Battler 1 Battler 2 Battler 3 Battler 4
ABATVX_FORMATION = { 0 => [ [300, 200], [350, 235], [410, 270], [485, 305] ],
1 => [ [485, 200], [440, 235], [395, 270], [350, 305] ] }
#==============================================================================
# ** Game_System
#------------------------------------------------------------------------------
# This class handles system-related data. Also manages vehicles and BGM, etc.
# The instance of this class is referenced by $game_system.
#==============================================================================
class Game_System
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :abatvx_form_id # Formation ID
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
alias init_game_system initialize
def initialize
init_game_system
@abatvx_form_id = 0 # Initial formation
end
end
#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
# This class handles actors. It's used within the Game_Actors class
# ($game_actors) and referenced by the Game_Party class ($game_party).
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# * Actor X Coordinate
#--------------------------------------------------------------------------
def screen_x
return self.abatvx_bypass_x if self.abatvx_form_bypass == true
if $game_system.abatvx_mirror
return 544 - ABATVX_FORMATION[$game_system.abatvx_form_id][self.index][0]
else
return ABATVX_FORMATION[$game_system.abatvx_form_id][self.index][0] #This line is the problem.
end
end
#--------------------------------------------------------------------------
# * Actor Y Coordinate
#--------------------------------------------------------------------------
def screen_y
return self.abatvx_bypass_y if self.abatvx_form_bypass == true
return ABATVX_FORMATION[$game_system.abatvx_form_id][self.index][1]
end
end
#==============================================================================
# ** Actor Battler Graphics
#------------------------------------------------------------------------------
# by DerVVulfman
# version 1.0
# 03-25-2008
# RGSS2
#==============================================================================
#
# INTRODUCTION:
#
# This system permits you to include 'Actor Battler' graphics that were not
# included in the RPGMaker VX system. This script mimics many of the lost
# features, and includes a new one: Actor Battler Centering.
#
#------------------------------------------------------------------------------
#
# USAGE:
#
# --Positioning--
# A nice feature to this system is the ability to adjust the left/right &
# up/down position of your battlers.
#
# Actually, the vertical up/down position can be adjusted by changing the
# value of the SCREEN_Y variable. The left/right positioning is a little
# different.
#
# The CENTER_X value is a true/false value that sets whether the battlers
# line up from the left and space themselves out in the manner of the de-
# fault RPGMaker XP or whether the system calculates and centers them ac-
# ross the screen.
#
# The DEFAULT_X value establishes how many actors are typically shown in
# the battlefield. While this is the default value, the maximum value used
# can be changed with a script call.
#
# Finally, the TRANSPARENT value is another true/false value that you can
# use to make the battlers lightly transparent until they're about to per-
# form an attack. Another feature from RPGMaker XP.
#
# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
#
# --The Actor List--
# This system DOES require you to edit the configuration system to list all
# of the 'actor' battlers that you are using. It is assumed that these
# battlers will be in the 'Graphics\Battlers' folder with the rest of the
# enemy battlers.
#
# Each value in the ACTOR array holds two values: filename and hue. This
# not only allows you to add battle graphics for your heroes, but adjusts
# the character's hue as well. If you do not include the hue setting, it
# goes to the default setting of '0'.
#
#------------------------------------------------------------------------------
#
# SCRIPT CALLS:
#
# There's only two script calls that you need to know.
#
# --Changing Battlers--
# Given that this system allows you to use 'Actor' battlers, you may find a
# need to 'change' the battler in-game. Unfortunately, this cannot be done
# with a pre-rendered map event, so I had to make a script call:
#
# $game_actors[ID].set_battler("filename", hue)
#
# By using this call, you can change the graphic and hue of a battler while
# the game is running.
#
# As an example: $game_actors[1].set_battler("Ylva")
#
# ...would set actor #1's battler to use "Ylva.png" as the graphic desired.
# You may note that the 'hue' was not included in this call. The default
# value of '0' was used.
#
# NOTE: Just calling $game_actors[2].set_battler() would erase the battler
# from actor #2, rendering it invisible on the battlefield.
#
# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
#
# --Changing Position Value--
# This script allows you to have the battlers centered in the battlefield
# and spaced out evenly. Under most circumstances, you have four members
# in your party. But what if you want to increase the number of members
# to 5 or 6?
#
# Now, this system does not increase the number of members in your party,
# but it is already set up to adjust the spacing of your members in the
# battlefield. With a simple script call:
#
# $game_system.actorbattler_max = 7
#
# You can make the system space the battlers on the field with the under-
# standing that up to 7 members are in the party.
#
#------------------------------------------------------------------------------
#
# EDITS AND MODIFICATIONS:
#
# This system Aliases the following methods:
# * initialize (RPG::Actor)
# * initialize (Game_Temp)
# * initialize (Game_System)
# * initialize (Game_Actor)
# * update (Sprite_Battler)
# * start (Scene_Battle)
# * start_party_command_selection (Scene_Battle)
# * process_victory (Scene_Battle)
# * execute_action (Scene_Battle)
#
# This system redefines the following methods:
# * use_sprite? (Game_Actor)
# * create_actors (Spriteset_Battle)
# * update_actors (Spriteset_Battle)
#
#
#------------------------------------------------------------------------------
#
# TERMS AND CONDITIONS:
#
# Free to use, even in commercial projects. Just note that I need some form
# of due credit... even a mere mention in some end titles.
#
#==============================================================================
#==============================================================================
# ** Actor_Battler Module
#------------------------------------------------------------------------------
# A module containing configurable data for the Actor Battler Graphic system.
#==============================================================================
module Actor_Battler
# Actor battler array
ACTOR = Array.new # Do not touch -_^
#========================================================================
# ** C O N F I G U R A T I O N S Y S T E M ** #
#========================================================================
# --Positioning--
# Actor Battler positioning system
#
CENTER_X = true # If true, centers actors rather than default lineup.
DEFAULT_X = 5 # Default party Max
SCREEN_Y = 400 # Vertical height of battlers
TRANSPARENT = false # If true, makes lightly transparent until attacking.
# --Actor List--
# Add your actor battlers here
#
# Actor# Filename, Hue (optional)
ACTOR[1] = ["Cid"]
ACTOR[2] = ["Auron"]
ACTOR[3] = ["Rikku"]
ACTOR[4] = ["Tifa"]
ACTOR[5] = ["Watts"]
ACTOR[6] = ["Mal"]
#========================================================================
# ** E N D O F C O N F I G U R A T I O N ** #
#========================================================================
end
#==============================================================================
# ** RPG Module
#------------------------------------------------------------------------------
# A module containing RPGVX Data Structures.
#==============================================================================
module RPG
#============================================================================
# ** Actor
#----------------------------------------------------------------------------
# Data class for actors
#============================================================================
class Actor
#------------------------------------------------------------------------
# * Alias Listings
#------------------------------------------------------------------------
alias actorbattler_init initialize
#------------------------------------------------------------------------
# * Object Initialization
#------------------------------------------------------------------------
def initialize
# Perform the original call
actorbattler_init
@battler_name = ""
@battler_hue = 0
end
end
end
#==============================================================================
# ** Game_Temp
#------------------------------------------------------------------------------
# This class handles temporary data that is not included with save data.
# The instance of this class is referenced by $game_temp.
#==============================================================================
class Game_Temp
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :battle_main_phase # battle flag: main phase
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias actorbattler_initialize initialize
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
# Perform the original call
actorbattler_initialize
# Set the main phase flag to false
@battle_main_phase = false
end
end
#==============================================================================
# ** Game_System
#------------------------------------------------------------------------------
# This class handles system-related data. Also manages vehicles and BGM, etc.
# The instance of this class is referenced by $game_system.
#==============================================================================
class Game_System
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :actorbattler_max # Max. size for centered battlers
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias actorbattler_initialize initialize
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
# Perform the original call
actorbattler_initialize
# Set 'Centered' battler max to 4 (default)
@actorbattler_max = Actor_Battler::DEFAULT_X
end
end
#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
# This class handles actors. It's used within the Game_Actors class
# ($game_actors) and referenced by the Game_Party class ($game_party).
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :screen_x # battle screen X coordinate
attr_accessor :screen_y # battle screen Y coordinate
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias actorbattler_init initialize
#--------------------------------------------------------------------------
# * Object Initialization
# actor_id : actor ID
#--------------------------------------------------------------------------
def initialize(actor_id)
# Perform the original call
actorbattler_init(actor_id)
# Apply battler graphic
@battler_name = Actor_Battler::ACTOR[actor_id][0]
# Apply battler hue if exists, else default of '0'
if Actor_Battler::ACTOR[actor_id][1] != nil
@battler_hue = Actor_Battler::ACTOR[actor_id][1]
else
@battler_hue = 0
end
end
#--------------------------------------------------------------------------
# * Change Battler
# battler_name : new battler graphic filename
# battler_hue : new battler hue setting (default = 0)
#--------------------------------------------------------------------------
def set_battler(battler_name = "", battler_hue = 0)
@battler_name = battler_name
@battler_hue = battler_hue
end
#--------------------------------------------------------------------------
# * Use Sprites?
#--------------------------------------------------------------------------
def use_sprite?
return true
end
#--------------------------------------------------------------------------
# * Get Battle Screen X-Coordinate
#--------------------------------------------------------------------------
def screen_x
if self.index != nil
if Actor_Battler::CENTER_X
# Return after calculating x-coords of centered party members
return self.index * (544 / $game_system.actorbattler_max) +
($game_system.actorbattler_max - $game_party.members.size) *
(272 / $game_system.actorbattler_max) +
(272 / $game_system.actorbattler_max)
else
# Return after calculating x-coords of default-aligned party members
return self.index * 136 + 68
end
else
return 0
end
end
#--------------------------------------------------------------------------
# * Get Battle Screen Y-Coordinate
#--------------------------------------------------------------------------
def screen_y
return Actor_Battler::SCREEN_Y
end
#--------------------------------------------------------------------------
# * Get Battle Screen Z-Coordinate
#--------------------------------------------------------------------------
def screen_z
# Return after calculating z-coordinate by order of members in party
if self.index != nil
return $game_party.members.size - self.index
else
return 0
end
end
end
#==============================================================================
# ** Sprite_Battler
#------------------------------------------------------------------------------
# This sprite is used to display battlers. It observes a instance of the
# Game_Battler class and automatically changes sprite conditions.
#==============================================================================
class Sprite_Battler < Sprite_Base
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias actorbattler_update update
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
# Perform the original call
actorbattler_update
# If the actor battlers are lightly transparent until they act
if Actor_Battler::TRANSPARENT == true
# If the battler is a visible actor battler
if @battler.is_a?(Game_Actor) and @battler_visible
# Bring opacity level down a bit when not in main phase
if $game_temp.battle_main_phase
self.opacity += 3 if self.opacity < 255
else
self.opacity -= 3 if self.opacity > 207
end
end
end
end
end
#==============================================================================
# ** Spriteset_Battle
#------------------------------------------------------------------------------
# This class brings together battle screen sprites. It's used within the
# Scene_Battle class.
#==============================================================================
class Spriteset_Battle
#--------------------------------------------------------------------------
# * Create Actor Sprite
# Removes the 'empty' battler image used by the default system and
# replaces it. It also observes the actual size of the party and
# not a predetermined 4-party limit.
#--------------------------------------------------------------------------
def create_actors
@actor_sprites = []
for actor in $game_party.members.reverse
@actor_sprites.push(Sprite_Battler.new(@viewport2, actor))
end
end
#--------------------------------------------------------------------------
# * Update Actor Sprite
#--------------------------------------------------------------------------
def update_actors
# Reset actor battler sprites if party size increases
if $game_party.members.size > @actor_sprites.size
dispose_actors
create_actors
end
for sprite in @actor_sprites
sprite.update
end
end
end
#==============================================================================
# ** Scene_Battle
#------------------------------------------------------------------------------
# This class performs battle screen processing.
#==============================================================================
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias actorbattler_s start
alias actorbattler_spcs start_party_command_selection
alias actorbattler_pv process_victory
alias actorbattler_ea execute_action
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
actorbattler_s
$game_temp.battle_main_phase = false
end
#--------------------------------------------------------------------------
# * Start party command selection
#--------------------------------------------------------------------------
def start_party_command_selection
actorbattler_spcs
if $game_temp.in_battle
$game_temp.battle_main_phase = false
end
end
#--------------------------------------------------------------------------
# * Victory Processing
#--------------------------------------------------------------------------
def process_victory
$game_temp.battle_main_phase = false
actorbattler_pv
end
#--------------------------------------------------------------------------
# * Start Execution of Battle Processing
#--------------------------------------------------------------------------
def execute_action
actorbattler_ea
$game_temp.battle_main_phase = true
end
end
#==============================================================================
# ** Animated Battlers VX ver. 2.4 (05-11-2008)
#
#------------------------------------------------------------------------------
# * (1) Configuration: The Sprite Battler Class (initialize system)
#==============================================================================
#==========================================================================
# **** GENERAL CONTROLS **** #
#==========================================================================
# * Default Battler Style Switches
#--------------------------------------------------------------------------
DEFAULT_ENEMY = true # If true, these switches allows the use
DEFAULT_ACTOR = true # of RTP battlers for actors/enemies
DEFAULT_ENEMY_ID = [] # Ids of enemies using RTP battlers
DEFAULT_ACTOR_ID = [] # Ids of actors using RTP battlers
DEFAULT_COLLAPSE_ACTOR = true # If true, restores the old 'red fade'
DEFAULT_COLLAPSE_ENEMY = true # collapse effect (using spritesheets)
# * Animation Frames and Animation Speed
#--------------------------------------------------------------------------
MNK_SPEED = 4 # Framerate speed of the battlers
MNK_RUSH_SPEED = 1.5 # Melee/Skill/Item motion speed of the battlers
MNK_POSES = 11 # Maximum # of poses (stances) in the template
MNK_FRAMES = 4 # Maximum # of frames in each pose
MNK_FRAMES_STANDARD = 4 # Standard # of frames played in each pose.
# Individual Spritesheet Control Center
#--------------------------------------------------------------------------
MNK_POSES_ENEMY = {6 => 7} # ID and # of poses for each enemy
MNK_FRAMES_ENEMY = nil # ID and # of frames for each enemy
MNK_POSES_ACTOR = {3 => 4} # ID and # of poses for each actor
MNK_FRAMES_ACTOR = nil # ID and # of frames for each actor.
# * Wooziness Rates
#--------------------------------------------------------------------------
MNK_LOW_HP_PERCENTAGE = 0.25 # Health% for WOOZY pose.
MNK_LOW_HP_ACTOR = {7 => 0.50, 8 => 0.75} # Ind. health% for actors.
MNK_LOW_HP_ENEMY = {1 => 0.50} # Ind. health% for enemies.
MNK_LOW_HP_FLAT = false # If true, flat rate hp
#==========================================================================
# **** POSE CONTROL CENTER **** #
#==========================================================================
# Editable Template (Some people wanted to change their template design)
#--------------------------------------------------------------------------
MNK_POSE1 = 1 # Ready
MNK_POSE2 = 2 # Struck
MNK_POSE3 = 3 # Woozy
MNK_POSE4 = 4 # Block
MNK_POSE5 = 5 # Charge
MNK_POSE6 = 6 # Retreat
MNK_POSE7 = 7 # Attack
MNK_POSE8 = 8 # Item
MNK_POSE9 = 9 # Skill
MNK_POSE10 = 10 # Victory
MNK_POSE11 = 11 # Defeat
# Editable Template (for Custom Actor Spritesheets)
#--------------------------------------------------------------------------
MNK_APOSE1 = {3 => 2}
MNK_APOSE2 = {3 => 2} # Bennett is using a Charset graphic as a battler.
MNK_APOSE3 = {3 => 2} # The battler was copied into the Battler folder.
MNK_APOSE4 = {3 => 2} # This setup allows you to use Charactersets for
MNK_APOSE5 = {3 => 2} # battlers battlers.
MNK_APOSE6 = {3 => 3}
MNK_APOSE7 = {3 => 2}
MNK_APOSE8 = {3 => 2}
MNK_APOSE9 = {3 => 2}
MNK_APOSE10 = {3 => 1}
MNK_APOSE11 = {3 => 4}
# Editable Template (for Custom Enemy Spritesheets)
#--------------------------------------------------------------------------
MNK_EPOSE1 = {6 => 2}
MNK_EPOSE2 = {6 => 4} # I set up one of the enemies to use a Cybersam
MNK_EPOSE3 = {6 => 7} # battler.
MNK_EPOSE4 = {6 => 3}
MNK_EPOSE5 = {6 => 1}
MNK_EPOSE6 = {6 => 4}
MNK_EPOSE7 = {6 => 5}
MNK_EPOSE8 = {6 => 6}
MNK_EPOSE9 = {6 => 6}
MNK_EPOSE10 = {6 => 3}
MNK_EPOSE11 = {6 => 7}
#==========================================================================
# **** EXPANDED POSE CONTROL CENTER **** #
#==========================================================================
# Looping Poses
#--------------------------------------------------------------------------
# These arrays merely hold the ID of actors or enemies whose poses loop at
# the end of combat. Enemies have no 'winning' animation pose.
MNK_LOOPS_WINNING_ACTOR = [] # Actor IDs if their victory pose loops
MNK_LOOPS_WINNING_ENEMY = [] # Enemy IDs if their victory pose loops
MNK_LOOPS_DEFEATED_ACTOR = [] # Actor IDs if their defeat pose loops
MNK_LOOPS_DEFEATED_ENEMY = [] # Enemy IDs if their defeat pose loops
# Non-Default Poses (can expand beyond the default 11 poses here)
# (New system mimics the revised Template system. Can use 'custom' sheets)
#--------------------------------------------------------------------------
# The first value in each set indicates the index number in a spritesheet.
# This value is overrided by a value in one of the other two accompanying
# arrays... one for actor battlerss, the other for enemy battlers.
#
# To define a pose linked to a specific battler, the syntax is...
# '' hash array '' = { battler.id => pose# }
# Where Aluxes and the Ghost (RTP) would be the 1st battlers (per array),
# and the pose# would be the pose in your spritesheet.
#
# Combinations in the hash arrays are possible, so if the MNK_POSES_DYING_E
# array has {1 => 5, 9 => 2}, then the GHOST (enemy #1) would be using the
# 6th pose (index 5) and the 9th enemy battler would be using the 3rd pose.
#--------------------------------------------------------------------------
MNK_POSES_SETUP = 7 # Choose animation pose for 'preparation'
MNK_POSES_SETUP_A = {2 => 4}
MNK_POSES_SETUP_E = {1 => 4}
MNK_POSES_CASTPREP = 4 # Set 'casting' pose for skill preparation
MNK_POSES_CASTPREP_A = {}
MNK_POSES_CASTPREP_E = {9 => 3}
MNK_POSES_DYING = 7 # Choose animation pose for dying throws.
MNK_POSES_DYING_A = {}
MNK_POSES_DYING_E = {9 => 5}
MNK_POSES_ESCAPE = 2 # Set 'coward' pose for fleeing monsters)
MNK_POSES_ESCAPE_A = {}
MNK_POSES_ESCAPE_E = {9 => 5}
MNK_POSES_CRITICAL = nil # Set pose for BIG hits
MNK_POSES_CRIT_A = {}
MNK_POSES_CRIT_E = {9 =>5}
MNK_POSES_WINNING = nil # Set winning (Victory Dance before pose)
MNK_POSES_WINNING_A = {3 => 9}
MNK_POSES_WINNING_E = {}
# Non-Default Pose Hashes (poses dependant on .id values)
# (New system mimics the revised Template system.)
#--------------------------------------------------------------------------
# The first hash in each set indicates the id number (be it skill, item or
# otherwise, and the pose it brings up. These mimic the 2nd array type in
# the above Non-Default poses. As such, a hash value of {1 => 10) for the
# MNK_POSES_WEAPONS hash would make the 'Bronze Sword' use the 10th index (or
# 11th spritesheet) pose... aka the 'Defeat' pose.
#
# To define an advanced pose linked to a specific battler, the syntax is...
# = { battler.id => { item/skill.id => pose# } }
# ...so this gets more complicated. But this does allow each battler to
# have his or her own unique pose, regardless of spritesheet type.
#--------------------------------------------------------------------------
MNK_POSES_CASTED = {61 => 6} # Set a specific skill to use a pose
MNK_POSES_CASTED_A = {}
MNK_POSES_CASTED_E = {}
MNK_POSES_STATUS = {7 => 3} # Set status values to poses here
MNK_POSES_STAT_A = {}
MNK_POSES_STAT_E = {}
MNK_POSES_SKILLS = {33 => 4} # Default: #57(Cross Cut) does 'Attack'
MNK_POSES_SKILLS_A = {}
MNK_POSES_SKILLS_E = {}
MNK_POSES_ITEMS = {13 => 4} # Default: #13(Sharp Stone) does 'Block'
MNK_POSES_ITEMS_A = {}
MNK_POSES_ITEMS_E = {}
MNK_POSES_WEAPONS = {} # Didn't set any weapons to any poses
MNK_POSES_WEAPS_A = {}
MNK_POSES_WEAPS_E = {} # Non-functional (Enemies don't use 'em.)
# Non-Default Pose Hashes (Hits & Critical Hits)
# (Just like above, but pertains to specific hits and critical hits)
#--------------------------------------------------------------------------
MNK_STRUCK_WEAPS = {} # Set a specific 'Struck' to a weapon attack
MNK_STRUCK_WEAPS_A = {}
MNK_STRUCK_WEAPS_E = {6 => {4 => 3}}
MNK_STRUCK_SKILLS = {} # Set a specific 'Struck' to a skill
MNK_STRUCK_SKILLS_A = {3 => {33 => 4 }, 5 => {7 => 7}}
MNK_STRUCK_SKILLS_E = {}
MNK_STRUCK_ITEMS = {} # Set a specific 'Struck' to an item attack
MNK_STRUCK_ITEMS_A = {}
MNK_STRUCK_ITEMS_E = {}
MNK_CRIT_WEAPS = {} # Set a specific 'Critical Hit' to a weapon
MNK_CRIT_WEAPS_A = {}
MNK_CRIT_WEAPS_E = {}
MNK_CRIT_SKILLS = {} # Set a specific 'Critical Hit' to a skill
MNK_CRIT_SKILLS_A = {}
MNK_CRIT_SKILLS_E = {}
MNK_CRIT_ITEMS = {} # Set a specific 'Critical Hit' to an item
MNK_CRIT_ITEMS_A = {}
MNK_CRIT_ITEMS_E = {}
#==========================================================================
# **** FRAME CONTROL CENTER **** #
#==========================================================================
# * Frames Control
#--------------------------------------------------------------------------
MNK_FRAMES_PER_POSE = {} # Set #of frames to pose(by index)
# Advanced Individual Pose/Frame Hashes # Advanced Individual Poses uses
# hashes within hashes. As a demo
MNK_POSES_FR_ACTOR = {} # you can see that enemy #1 has 2
MNK_POSES_FR_ENEMY = {} # sets of controls: index 0 (for
# a ready pose is set to 1 frame,
# while index 3 (block) is set to 'two' frames. Likewise, for the actor's
# hash, Actor #7 (Gloria) has only 1 control hash. It sets index pose '0'
# (the ready pose again) to use four frames of animation (even though I had
# set the ready pose to just use '2' with the MNK_FRAMES_PER_POSE hash earlier.
#==========================================================================
# **** MOVEMENT CONTROL CENTER **** #
#==========================================================================
# * Offset / Battler Overlap System
#--------------------------------------------------------------------------
MNK_OFFSET = 0 # How much additional space between battlers
MNK_OFFSET_ACTOR = {1 => -75}
MNK_OFFSET_ENEMY = nil
# * Forward Step System (Final Fantasy-Style)
#--------------------------------------------------------------------------
MNK_STEP_ATTACK = false # If true, battler steps forward to attack
MNK_STEP_SKILL = false # If true, battler steps forward to use skill
MNK_STEP_ITEM = false # If true, battler steps forward to use item
# * Movement Arrays (Arrays for skill/weapon/item IDs that affect movement)
#--------------------------------------------------------------------------
MNK_MOVING_ITEM = [] # Examples are items that need to be applied.
MNK_MOVING_SKILL = [] # Examples are martial-arts and sneak attacks
MNK_MOVE2CENTER_ATK = [] # Moves battler to center based on weapon id!
MNK_MOVE2CENTER_ITEM = [] # Moves battler to center for a big item atk!
MNK_MOVE2CENTER_SKILL = [] # Moves battler to center for a big skill atk!
#
# * Remember, do not supply Skill or Item ID#'s that have 'None' scopes into
# either the MNK_MOVING_ITEM or MNK_MOVING_SKILL hashes. These skills &
# item attacks have no target and would cause an error when trying to find
# an enemy to move towards.
#==========================================================================
# **** STATIONARY CONTROL CENTER **** #
#==========================================================================
# * Stationary Battlers (simple True/False settings)
#--------------------------------------------------------------------------
MNK_STATIONARY_ENEMIES = false # If the enemies don't move while attacking
MNK_STATIONARY_ACTORS = false # If the actors don't move while attacking
# * Arrays filled with skill/weapon/item IDs that halt movement
#--------------------------------------------------------------------------
MNK_STATIONARY_ENEMY_IDS = [] # Individual enemies that don't move
MNK_STATIONARY_WEAPONS = [6, 12, 18, 24] # Weapons that prevent movement
MNK_STATIONARY_SKILLS = [] # Skills that prevent movement
MNK_STATIONARY_ITEMS = [] # Items that prevent movement
#==========================================================================
# **** TRANSPARENCY CONTROL CENTER **** #
#==========================================================================
MNK_TRANSLUCENCY = 127 # Degree of transparency
MNK_TRANSLUCENT_ACTOR = [] # ID of actor at translucency settings
MNK_TRANSLUCENT_ENEMY = [] # ID of enemy at translucency settings
MNK_PHASING = false # If battlers fade in/out while charging
MNK_PHASING_ACTOR = [] # IDs of actors that fade in/out if charging
MNK_PHASING_ENEMY = [] # IDs of enemies that fade in/out if charging
#==========================================================================
# **** CUSTOM FEATURE CENTER **** #
#==========================================================================
MNK_PHASING = false # Battlers phase in & out when moving
MNK_MIRROR_ENEMIES = false # Enemy battlers use reversed image
MNK_CALC_SPEED = false # System calculates a mean/average speed
class Window_Base < Window
def draw_face(face_name, face_index, x, y, size = 96, opacity = 255)
bitmap = Cache.face(face_name)
rect = Rect.new(0, 0, 0, 0)
rect.x = face_index % 4 * 96 + (96 - size) / 2
rect.y = face_index / 4 * 96 + (96 - size) / 2
rect.width = size
rect.height = size
self.contents.blt(x, y, bitmap, rect,opacity)
bitmap.dispose
end
def draw_actor_face(actor, x, y, size = 96, opacity = 255)
draw_face(actor.face_name, actor.face_index, x, y, size, opacity)
end
end
class Window_BattleStatus < Window_Selectable
def initialize
super(0, 0, 416, 128)
@column_max = 4
@spacing = 0
refresh
self.active = false
end
def refresh
self.contents.clear
@item_max = $game_party.members.size
for i in 0...@item_max
draw_faces(i)
end
for i in 0...@item_max
draw_item(i)
end
end
def draw_faces(index)
actor = $game_party.members[index]
draw_actor_face(actor, actor.index * 96 + 2, 0, 96, 100)
end
def draw_item(index)
self.contents.font.color = normal_color
actor = $game_party.members[index]
draw_actor_name(actor, index * 96 + 2, 0)
draw_actor_state(actor, index * 96 + 2, 18, 48)
draw_actor_hp(actor, index * 96 + 2, 56, 86)
draw_actor_mp(actor, index * 96 + 2, 74, 86)
end
end
# 6) To lock an actor in the party, use :
# - $game_actors[actor_id].party_locked = true/false
# 7) To lock an actor in the reserve, use :
# - $game_actors[actor_id].reserve_locked = true/false
If the initial party size is set to 8, then you turn it to 4 for a battle, you still need to set it back to 8 when the battle is over.Anko4t6":1ycn0lse said:And whenever I change the number of party members allowed in the battle, I lose access to them in the game's main menu.