#===============================================================================
#
# Yanfly Engine RD - Scene Status ReDux
# Last Date Updated: 2009.05.26
# Level: Normal, Hard, Lunatic
=begin
This script has been slightly editted in a manor that will display
the RES and LUCK stats from Enelvon's scripts. Because its just a silly
edit 10 line edit, no credit is needed! Thus I stay nameless! Hurray!
Jump to around >line 180< for the details of how to edit these new stats.
Keep in mind in order to view both stats, they must be inplace above this script.
=end
#
# There's not a whole lot of reason for the player to visit the status menu.
# Not too much to see aside from things you can already view in other menus
# such as the equipment menu for stats. This script will provide additional
# functionality to the scene in addition to allowing the game maker to free
# up additional space in the main menu for the not actor-oriented stuff.
#
#===============================================================================
# Updates:
# ----------------------------------------------------------------------------
# o 2009.05.26 - Started script and finished.
#===============================================================================
# Instructions
#===============================================================================
#
# This script is plug and play for the most part, but there's bound to be a lot
# things you may want to modify so scroll down and reach each of the individual
# instructions carefully for all sections and modify the constants properly.
#
#===============================================================================
#
# Compatibility
# - Works With: KGC scripts and others!
# - Alias: Scene_Equip: return_scene
# - Alias: Scene_Skill: return_scene
# - Alias: Scene_Title: create_game_objects
# - Alias: Game_Temp: initialize
# - Overwrites: Scene_Status: all
#
#===============================================================================
$imported = {} if $imported == nil
$imported["SceneStatusReDux"] = true
module YE
module REDUX
module STATUS
#------------------------------------------------------------------------
# Instructions on how to set up the STATUS_COMMANDS order.
#------------------------------------------------------------------------
# This array will let you determine how you want your status window
# commands to be ordered. They will appear in the number you order them.
# Each command is assigned a number and these are the following numbers.
#
# 0..Statistics 1..Biography 2..Skills 3..Equips
#
# The next couple are Yanfly Engine ReDux commands and require you to
# have the respective scripts before they will appear in the menu. Be
# sure to add them to STATUS_COMMANDS if you wish to display them.
#
# 4..Change Class .......... Requires Subclass Selection System
# 5..Learn Skills .......... Requires Subclass Selection System
# 6..Skill Slots ........... Requires Equip Skill Slots
#
# There are some pre-made imported functions for this script. Of them are
# the popular and powerful KGC scripts and others which I've also found
# to be rather interesting.
#
# 101..Distribute Parameter .. Requires KGC Distribute Parameter
# 102..Equip Learn Skill ..... Requires KGC Equip Learn Skill
# 103..Skill CP System ....... Requires KGC Skill CP System
# 201..Skill Growth .......... Requires Garlyle's Skill Growth System
# 301..Attributes ............ Requires 332211's Attribute System
# 302..Soul Pieces ........... Requires 332211's Soul Pieces System
# 303..Weapon by Ranks ....... Requires 332211's Weapon by Ranks System
#
# If you wish to add your own commands, you'll need to register them
# under the lunatic mode portion of the script.
#------------------------------------------------------------------------
STATUS_COMMANDS =[ # Make sure you've read the instructions above.
0, # Statistics
1, # Biography
2, # Skills
6, # Skill Slots
3, # Equips
4, # Change Class
5, # Learn Skills
] # Do not remove this.
# The constants below will determine the unique sound and strings made
# specificly for the Scene Status ReDux script.
SOUND = RPG::SE.new("Book", 80, 100)
STATUS = "Status"
BIO = "Biography"
# The following determines determines profile categories for various
# profile information.
BIRTHDAY = "Birthday: "
AGE = "Age: "
ORIGIN = "Origin: "
GENDER = "Gender: "
HEIGHT = "Height: "
WEIGHT = "Weight: "
UNKNOWN = "Unknown"
# This hash will let you determine what full names to give your
# individual actors. Use %s to indicate where the RPG name appears.
ACTOR_PROFILES1 ={
# Actor => [ Full Name, Origin, Gender, Height, Weight]
1 => [ "%s von Xiguel", "Pallia", "Male", "177.8 cm", "72.7 kg"],
2 => [ "Michelle %s", "Retvin", "Female", "170.2 cm", "Unknown"],
3 => [ "%s Manfred", "Namek", "Male", "182.9 cm", "68.2 kg"],
4 => [ "%s Fernaeus", "Yerd", "Female", "162.6 cm", "Secret~"],
} # Do not remove this.
# The following hash will determine the birthday information about the
# actor. The VarID is what stores the birthday. Change the variable to
# change the actor's age in the actual menu. The start age is what the
# variable initially sets the actor's age to. The birthday is just the
# date that the actor is born. Nothing else special about it.
ACTOR_PROFILES2 ={
# Actor => [ VarID, StartAge, Birthday]
1 => [ 21, 18, "May 26"],
2 => [ 22, 17, "Jan 14"],
3 => [ 23, 18, "Oct 31"],
4 => [ 24, 19, "June 3"],
} # Do not remove this.
# This will determine the size of the font used for the biography window.
BIO_FONT_SIZE = 20
# This section will allow you to type out the actor biographies. To
# cause a line break, use a | in the middle of the string. If the actors
# do not have a biography here, it will show actor 0 instead. For that
# reason, do NOT remove actor 0.
ACTOR_BIOGRAPHIES ={
# Actor => Biography
0 => "UNKNOWN UNKNOWN UNKNOWN|UNKNOWN UNKNOWN UNKNOWN|UNKNOWN UNKNOWN UNKNOWN|UNKNOWN UNKNOWN UNKNOWN|UNKNOWN UNKNOWN UNKNOWN|UNKNOWN UNKNOWN UNKNOWN|UNKNOWN UNKNOWN UNKNOWN|UNKNOWN UNKNOWN UNKNOWN",
1 => "Ralph has set off on a quest to save|Don Miguel from the clutches of the evil|witch Margaret. Accompanied by Ulrika,|Bennett, and Ylva, Ralph adventures|the world to find Don Miguel.||\"Let's hurry! Don Miguel cannot wait|much longer!\"",
2 => "Ulrika trained with Ralph before Don|Miguel was kidnapped. She always sees|Ralph as a rival, but also a source of|inspiration. Ulrika firmly believes that|training will let her get rid of her many|weaknesses.||\"Strength comes from a trained heart.\"",
3 => "Bennett choose the wrong profession|given his bursting personality. He and|his best friend Ralph give each other|motivation to strengthen themselves|and to become the ultimate tagteam|ever known to the world.||\"Their priest is a sissy! You heard me,|a sissy!\"",
4 => "Ylva studies in her free time about|various magic and locations. This is|why it seems like she knows a lot,|but the truth is that she only knows|what she has read in books.||\"Why risk your life to experience|something when you can read about|it in a book?\"",
} # Do not remove this.
# The following sets the statistical information for your actors.
# These are all of the information you'll see in the statistics window.
ICON_LVL = 62 # Icon for level
TEXT_LVL = "Level" # Text for level
ICON_EXP = 63 # Icon for experience
TEXT_EXP = "EXP" # Text for experience
ICON_NEXT = 142 # Icon for next level
TEXT_NEXT = "Next" # Text for next level
ICON_HP = 99 # Icon for HP
ICON_MP = 100 # Icon for MP
ICON_ATK = 2 # Icon for ATK
TEXT_ATK = "ATK" # Text for ATK
ICON_DEF = 52 # Icon for DEF
TEXT_DEF = "DEF" # Text for DEF
ICON_SPI = 21 # Icon for SPI
TEXT_SPI = "SPI" # Text for SPI
ICON_AGI = 48 # Icon for AGI
TEXT_AGI = "AGI" # Text for AGI
#==============================================#
# Feel free to adjust wordage and icons for #
# -resistance- and -luck- here, as you like. #
#==============================================================================#
# Also, if you choose to remove LUCK and/or RES from your scripts, #
# You can just erase the #'s infront of the =begin and =end here, #
# and scroll down to about line 760 where there is another set of #
# =begin/=end and remove the #'s from those too. Tadaa! #
#==============================================================================#
#=begin
ICON_RES = 201 # Icon for RES
TEXT_RES = "RES" # Text for RES
ICON_LCK = 152 # Icon for LCK
TEXT_LCK = "LCK" # Text for LCK
#=end
ICON_HIT = 135 # Icon for HIT
TEXT_HIT = "HIT" # Text for HIT
SHOW_HIT = true # Display HIT?
ICON_EVA = 158 # Icon for EVA
TEXT_EVA = "EVA" # Text for EVA
SHOW_EVA = true # Display EVA?
ICON_CRI = 119 # Icon for CRI
TEXT_CRI = "CRI" # Text for CRI
SHOW_CRI = true # Display CRI?
ICON_ODDS = 137 # Icon for ODDS
TEXT_ODDS = "ODD" # Text for ODDS
SHOW_ODDS = true # Display ODDS?
end # STATUS
end # REDUX
end # YE
#===============================================================================
# How to Use: Lunatic Mode
#===============================================================================
#
# If you do not understand hashes, I -STRONGLY- recommend that you stay away
# from this portion of the script as it affects the rest of the script if you
# make a slight mistake.
#
# - First, under IMPORTED_COMMANDS, fill out the hash properly. You will have
# to fill them out correctly given the categories.
#
# Swch? - Does this command require a switch to be on in order to be shown?
# SwID - If the previous was true, this is the Switch ID needed to be on.
# Title - This is the text that appears on the status command window.
# Scene - This is the name of the scene you wish to load.
#
# - Given that you've done everything correctly, return to the top and adjust
# the STATUS_COMMANDS array. Input number 101 or whatever number you've used
# to determine the scene you wish to launch from the status menu.
#
# Note that if you exit the imported scenes, they will return to the main menu
# rather than the status menu. It will remain that way until you edit those
# scripts's respective return_scene definitions.
#
#===============================================================================
module YE
module REDUX
module STATUS
# The following hash will govern the way the status menu will treat
# imported commands. If you do not follow the setup properly, do not
# expect the script to function correctly.
IMPORTED_COMMANDS ={
# -ID => [Swch?, SwID, ----Title----, -----------Scene-----------]
101 => [false, 0, "Level Up", "Scene_DistributeParameter"],
102 => [false, 0, "View AP", "Scene_APViewer"],
103 => [false, 0, "Skill CP", "Scene_SetBattleSkill"],
201 => [false, 0, "Grow Skill", "Scene_SkillGrowth"],
301 => [false, 0, "Attributes", "Scene_Attributes"],
302 => [false, 0, "Soul Pieces", "Scene_soulpieces"],
303 => [false, 0, "Weapon Rank", "Scene_weapon_by_ranks"],
} # Do not remove this.
end # STATUS
end # REDUX
end # YE
#===============================================================================
# Editting anything past this point may potentially result in causing computer
# damage, incontinence, explosion of user's head, coma, death, and/or halitosis.
# Therefore, edit at your own risk.
#===============================================================================
#===============================================================================
# Scene Status
#===============================================================================
class Scene_Status < Scene_Base
#--------------------------------------------------------------------------
# create command list
# --- This portion creates the commands for the status window.
#--------------------------------------------------------------------------
def create_command_list
commands = []
index_list = {}
YE::REDUX::STATUS::STATUS_COMMANDS.each_with_index { |c, i|
case c
when 0 # View Statistics
index_list[:stats] = commands.size
commands.push(YE::REDUX::STATUS::STATUS)
when 1 # View Biography
index_list[:bio] = commands.size
commands.push(YE::REDUX::STATUS::BIO)
when 2 # Skill Menu
index_list[:skill] = commands.size
commands.push(Vocab.skill)
when 3 # Equipment
index_list[:equip] = commands.size
commands.push(Vocab.equip)
when 4 # Change Class
next unless $imported["SubclassSelectionSystem"]
next unless $game_switches[YE::SUBCLASS::ENABLE_CLASS_CHANGE_SWITCH]
index_list[:classchange] = commands.size
commands.push(YE::SUBCLASS::MENU_CLASS_CHANGE_TITLE)
when 5 # Learn Skill
next unless $imported["SubclassSelectionSystem"]
next unless $game_switches[YE::SUBCLASS::ENABLE_LEARN_SKILLS_SWITCH]
index_list[:learnskill] = commands.size
commands.push(YE::SUBCLASS::LEARN_SKILL_TITLE)
when 6 # Skill Slots
next unless $imported["EquipSkillSlots"]
next unless $game_switches[YE::EQUIPSKILL::ENABLE_SLOTS_SWITCH]
index_list[:equipskill] = commands.size
commands.push(YE::EQUIPSKILL::MENU_TITLE)
else
command_array = YE::REDUX::STATUS::IMPORTED_COMMANDS
next unless command_array.include?(c)
command_array = command_array[c]
next if command_array[0] and !$game_switches[command_array[1]]
index_list[c] = commands.size
commands.push(command_array[2])
end
} # Do not remove this.
$game_temp.status_command_index = index_list
return commands
end # create_command_list
#--------------------------------------------------------------------------
# case_command_selection
#--------------------------------------------------------------------------
def case_command_selection(index)
case index
when $game_temp.status_command_index[:stats]
YE::REDUX::STATUS::SOUND.play
$game_temp.status_bio_flag = 0
start_visible_windows
when $game_temp.status_command_index[:bio]
YE::REDUX::STATUS::SOUND.play
$game_temp.status_bio_flag = 1
start_visible_windows
when $game_temp.status_command_index[:skill]
Sound.play_decision
$scene = Scene_Skill.new(@actor_index)
when $game_temp.status_command_index[:equip]
Sound.play_decision
$scene = Scene_Equip.new(@actor_index)
when $game_temp.status_command_index[:classchange]
Sound.play_decision
$scene = Scene_Class_Change.new(@actor_index)
when $game_temp.status_command_index[:learnskill]
Sound.play_decision
$scene = Scene_Learn_Skill.new(@actor_index)
when $game_temp.status_command_index[:equipskill]
Sound.play_decision
$scene = Scene_Equip_Skill.new(@actor_index)
else
return_check = true
for key in $game_temp.status_command_index
if $game_temp.status_command_index[key[0]] == index
return_check = false
found_key = key[0]
break
end
end
return if return_check
Sound.play_decision
command_array = YE::REDUX::STATUS::IMPORTED_COMMANDS[found_key]
$scene = eval(command_array[3] + ".new(@actor_index)")
end
end # case_command_selection
#--------------------------------------------------------------------------
# overwrite initialize
#--------------------------------------------------------------------------
def initialize(actor_index = 0, menu_index = 0)
@menu_index = menu_index
$game_temp.status_menu_flag = true
@actor_index = actor_index
@actor = $game_party.members[@actor_index]
end
#--------------------------------------------------------------------------
# overwrite start
#--------------------------------------------------------------------------
def start
super
create_menu_background
@status_window = Window_Status.new(@actor)
@status_mini_window = Window_Status_Mini.new(@actor)
@status_bio_window = Window_Status_Bio.new(@actor)
start_visible_windows
create_command_window
end
#--------------------------------------------------------------------------
# overwrite terminate
#--------------------------------------------------------------------------
def terminate
super
dispose_menu_background
@command_window.dispose if @command_window != nil
@status_window.dispose if @status_window != nil
@status_mini_window.dispose if @status_mini_window != nil
@status_bio_window.dispose if @status_bio_window != nil
end
#--------------------------------------------------------------------------
# overwrite return scene
#--------------------------------------------------------------------------
def return_scene
if $imported["CustomMenuCommand"] and
$game_temp.menu_command_index.has_key?(:status)
$scene = Scene_Menu.new($game_temp.menu_command_index[:status])
elsif $imported["CustomMenuCommand"]
$scene = Scene_Map.new
else
$scene = Scene_Menu.new(3)
end
$game_temp.status_menu_flag = false
end
#--------------------------------------------------------------------------
# overwrite next actor
#--------------------------------------------------------------------------
def next_actor
@actor_index += 1
@actor_index %= $game_party.members.size
$scene = Scene_Status.new(@actor_index, @command_window.index)
end
#--------------------------------------------------------------------------
# overwrite prev actor
#--------------------------------------------------------------------------
def prev_actor
@actor_index += $game_party.members.size - 1
@actor_index %= $game_party.members.size
$scene = Scene_Status.new(@actor_index, @command_window.index)
end
#--------------------------------------------------------------------------
# overwrite update
#--------------------------------------------------------------------------
def update
super
update_menu_background
@command_window.update
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::C)
$game_temp.status_menu_index = @command_window.index
case_command_selection(@command_window.index)
elsif Input.trigger?(Input::R)
Sound.play_cursor
next_actor
elsif Input.trigger?(Input::L)
Sound.play_cursor
prev_actor
end
end
#--------------------------------------------------------------------------
# create command window
#--------------------------------------------------------------------------
def create_command_window
commands = create_command_list
@command_window = Window_Command.new(160, commands)
@command_window.y = 128
@command_window.height = 288
@command_window.opacity = 0
@command_window.index = @menu_index
end
#--------------------------------------------------------------------------
# start visible windows
#--------------------------------------------------------------------------
def start_visible_windows
@status_mini_window.visible = false
@status_bio_window.visible = false
case $game_temp.status_bio_flag
when 0
@status_mini_window.visible = true
when 1
@status_bio_window.visible = true
end
end
end
#==============================================================================
# Game_Temp
#==============================================================================
class Game_Temp
#--------------------------------------------------------------------------
# Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :status_command_index
attr_accessor :status_menu_flag
attr_accessor :status_menu_index
attr_accessor :status_bio_flag
#--------------------------------------------------------------------------
# alias initialize
#--------------------------------------------------------------------------
alias initialize_statusrd initialize unless $@
def initialize
initialize_statusrd
@status_command_index = {}
@status_menu_flag = false
@status_menu_index = 0
@status_bio_flag = 0
end
end
#===============================================================================
# Scene Title
#===============================================================================
class Scene_Title < Scene_Base
#--------------------------------------------------------------------------
# alias create game objects
#--------------------------------------------------------------------------
alias create_game_objects_statusrd create_game_objects unless $@
def create_game_objects
create_game_objects_statusrd
for key in YE::REDUX::STATUS::ACTOR_PROFILES2
narray = key[1]
$game_variables[narray[0]] = narray[1]
end
end
end # Scene_Title
#===============================================================================
# return scene alias
#===============================================================================
unless $imported["SceneSkillReDux"]
class Scene_Skill < Scene_Base
#--------------------------------------------------------------------------
# alias return scene
#--------------------------------------------------------------------------
alias skill_return_scene_statusrd return_scene unless $@
def return_scene
if $game_temp.status_menu_flag
$scene = Scene_Status.new(@actor_index, $game_temp.status_menu_index)
else
skill_return_scene_statusrd
end
end
end
end
unless $imported["SceneEquipReDux"]
class Scene_Equip < Scene_Base
#--------------------------------------------------------------------------
# alias return scene
#--------------------------------------------------------------------------
alias equip_return_scene_statusrd return_scene unless $@
def return_scene
if $game_temp.status_menu_flag
$scene = Scene_Status.new(@actor_index, $game_temp.status_menu_index)
else
equip_return_scene_statusrd
end
end
end
end
#===============================================================================
# Window_Status
#===============================================================================
class Window_Status < Window_Base
#--------------------------------------------------------------------------
# initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(0, 0, 544, 416)
@actor = actor
refresh
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
draw_actor_face(@actor, 0, 0)
profile1 = YE::REDUX::STATUS::ACTOR_PROFILES1
profile2 = YE::REDUX::STATUS::ACTOR_PROFILES2
if profile1.include?(@actor.id)
text = sprintf(profile1[@actor.id][0], @actor.name)
else
text = @actor.name
end
self.contents.draw_text(112, 0, 180, WLH, text, 0)
#----
dx = 112
if $imported["SubclassSelectionSystem"]
if YE::SUBCLASS::CLASS_ICONS.include?(@actor.class.id)
icon = YE::SUBCLASS::CLASS_ICONS[@actor.class.id]
else
icon = YE::SUBCLASS::CLASS_ICONS[0]
end
draw_icon(icon, dx, 24)
dx += 24
if @actor.subclass != nil
if YE::SUBCLASS::CLASS_ICONS.include?(@actor.subclass.id)
icon = YE::SUBCLASS::CLASS_ICONS[@actor.subclass.id]
else
icon = YE::SUBCLASS::CLASS_ICONS[0]
end
draw_icon(icon, dx, 24)
dx += 24
end
end
draw_actor_class(@actor, dx, 24)
#----
self.contents.font.color = system_color
text1 = YE::REDUX::STATUS::BIRTHDAY
text2 = YE::REDUX::STATUS::AGE
self.contents.draw_text(112, 48, 90, WLH, text1, 2)
self.contents.draw_text(112, 72, 90, WLH, text2, 2)
if profile2.include?(@actor.id)
text1 = profile2[@actor.id][2]
text2 = $game_variables[profile2[@actor.id][0]]
else
text1 = YE::REDUX::STATUS::UNKNOWN
text2 = YE::REDUX::STATUS::UNKNOWN
end
self.contents.font.color = normal_color
self.contents.draw_text(202, 48, 90, WLH, text1, 0)
self.contents.draw_text(202, 72, 90, WLH, text2, 0)
#----
self.contents.font.color = system_color
text1 = YE::REDUX::STATUS::ORIGIN
text2 = YE::REDUX::STATUS::GENDER
text3 = YE::REDUX::STATUS::HEIGHT
text4 = YE::REDUX::STATUS::WEIGHT
self.contents.draw_text(292, 0, 90, WLH, text1, 2)
self.contents.draw_text(292, 24, 90, WLH, text2, 2)
self.contents.draw_text(292, 48, 90, WLH, text3, 2)
self.contents.draw_text(292, 72, 90, WLH, text4, 2)
if profile1.include?(@actor.id)
text1 = profile1[@actor.id][1]
text2 = profile1[@actor.id][2]
text3 = profile1[@actor.id][3]
text4 = profile1[@actor.id][4]
else
text1 = YE::REDUX::STATUS::UNKNOWN
text2 = YE::REDUX::STATUS::UNKNOWN
text3 = YE::REDUX::STATUS::UNKNOWN
text4 = YE::REDUX::STATUS::UNKNOWN
end
self.contents.font.color = normal_color
self.contents.draw_text(382, 0, 90, WLH, text1, 0)
self.contents.draw_text(382, 24, 90, WLH, text2, 0)
self.contents.draw_text(382, 48, 90, WLH, text3, 0)
self.contents.draw_text(382, 72, 90, WLH, text4, 0)
#----
end
end # Window_Status
#==============================================================================
# Window_Status_Mini
#==============================================================================
class Window_Status_Mini < Window_Base
#--------------------------------------------------------------------------
# initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(160, 128, 384, 288)
@actor = actor
self.opacity = 0
self.visible = false
refresh
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = system_color
#---
sw = self.width - 32
dx = 0
dy = 0
draw_icon(YE::REDUX::STATUS::ICON_LVL, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_LVL)
dy += WLH
draw_icon(YE::REDUX::STATUS::ICON_NEXT, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_NEXT)
dy += WLH
draw_icon(YE::REDUX::STATUS::ICON_EXP, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_EXP)
dy = WLH * 3
draw_icon(YE::REDUX::STATUS::ICON_HP, dx, dy)
draw_actor_hp(@actor, dx+24, dy, 128)
dy += WLH
self.contents.font.color = system_color
draw_icon(YE::REDUX::STATUS::ICON_ATK, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_ATK)
dy += WLH
draw_icon(YE::REDUX::STATUS::ICON_DEF, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_DEF)
dy += WLH
draw_icon(YE::REDUX::STATUS::ICON_SPI, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_SPI)
dy += WLH
draw_icon(YE::REDUX::STATUS::ICON_AGI, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_AGI)
#=begin
dy += WLH
draw_icon(YE::REDUX::STATUS::ICON_RES, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_RES)
dy += WLH
draw_icon(YE::REDUX::STATUS::ICON_LCK, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_LCK)
#=end
dx = sw/2
dy = WLH * 3
draw_icon(YE::REDUX::STATUS::ICON_MP, dx, dy)
draw_actor_mp(@actor, dx+24, dy, 128)
dy += WLH
self.contents.font.color = system_color
if YE::REDUX::STATUS::SHOW_HIT
draw_icon(YE::REDUX::STATUS::ICON_HIT, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_HIT)
end
dy += WLH
if YE::REDUX::STATUS::SHOW_EVA
draw_icon(YE::REDUX::STATUS::ICON_EVA, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_EVA)
end
dy += WLH
if YE::REDUX::STATUS::SHOW_CRI
draw_icon(YE::REDUX::STATUS::ICON_CRI, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_CRI)
end
dy += WLH
if YE::REDUX::STATUS::SHOW_ODDS
draw_icon(YE::REDUX::STATUS::ICON_ODDS, dx, dy)
self.contents.draw_text(dx+24, dy, 60, WLH, YE::REDUX::STATUS::TEXT_ODDS)
end
#---
self.contents.font.color = normal_color
dw = sw - 84
dx = 84
dy = 0
self.contents.draw_text(dx, dy, 68, WLH, @actor.level); dy += WLH
self.contents.draw_text(dx, dy, dw, WLH, @actor.next_rest_exp_s); dy += WLH
self.contents.draw_text(dx, dy, dw, WLH, @actor.exp_s); dy += WLH
dy = WLH * 4
self.contents.draw_text(dx, dy, 68, WLH, @actor.atk, 0); dy += WLH
self.contents.draw_text(dx, dy, 68, WLH, @actor.def, 0); dy += WLH
self.contents.draw_text(dx, dy, 68, WLH, @actor.spi, 0); dy += WLH
self.contents.draw_text(dx, dy, 68, WLH, @actor.agi, 0); dy += WLH
#=begin
self.contents.draw_text(dx, dy, 68, WLH, @actor.res, 0); dy += WLH
self.contents.draw_text(dx, dy, 68, WLH, @actor.lck, 0); dy += WLH
#=end
dy = WLH * 4
dx = sw/2 + 84
if YE::REDUX::STATUS::SHOW_HIT
text = sprintf("%d%%", @actor.hit)
self.contents.draw_text(dx, dy, 68, WLH, text, 0)
end; dy += WLH
if YE::REDUX::STATUS::SHOW_EVA
text = sprintf("%d%%", @actor.eva)
self.contents.draw_text(dx, dy, 68, WLH, text, 0)
end; dy += WLH
if YE::REDUX::STATUS::SHOW_CRI
text = sprintf("%d%%", @actor.cri)
self.contents.draw_text(dx, dy, 68, WLH, text, 0)
end; dy += WLH
if YE::REDUX::STATUS::SHOW_ODDS
self.contents.draw_text(dx, dy, 68, WLH, @actor.odds, 0)
end; dy += WLH
end
end # Window_Status_Mini
#==============================================================================
# Window_Status_Bio
#==============================================================================
class Window_Status_Bio < Window_Base
#--------------------------------------------------------------------------
# initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(160, 128, 384, 288)
@actor = actor
self.opacity = 0
refresh
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = normal_color
self.contents.font.size = YE::REDUX::STATUS::BIO_FONT_SIZE
if YE::REDUX::STATUS::ACTOR_BIOGRAPHIES.include?(@actor.id)
text = YE::REDUX::STATUS::ACTOR_BIOGRAPHIES[@actor.id]
else
text = YE::REDUX::STATUS::ACTOR_BIOGRAPHIES[0]
end
y = 0
txsize = YE::REDUX::STATUS::BIO_FONT_SIZE + 4
nwidth = 544
buf = text.gsub(/\\N(\[\d+\])/i) { "\\__#{$1}" }
lines = buf.split(/(?:[|]|\\n)/i)
lines.each_with_index { |l, i|
l.gsub!(/\\__(\[\d+\])/i) { "\\N#{$1}" }
self.contents.draw_text(0, i * txsize + y, nwidth, WLH, l, 0)
}
end
end # Window_Status_Bio
#===============================================================================
#
# END OF FILE
#
#===============================================================================