Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- =begin =========================================================================
- Dekita's v1.7
- ★ Perfect Stat Point Distribution System™ ★
- ================================================================================
- Script Information:
- ====================
- This script will Nullify the traditional RPG-Maker "Level up -> increases
- parameters" feature. Instead when you level you will be presented with a stat
- point distribution screen. you can then increase each parameter using the
- points you gain.
- This script will give you COMPLETE control over all aspects of how your
- characters stats increase during gameplay.
- The control and customisation for this "System" has been designed to be
- as dynamic as possible.
- ================================================================================
- TERMS OF USE:
- ==============
- 1. You MUST give credit to Dekita.
- 2. This script is for NON-Commercial use ONLY!*
- 3. You CANNOT give credit to yourself for Re-posting this script
- or Posting a modified version.*
- 4. Do not Re-Distribute/Re-Post this script.
- 5. You are NOT allowed to convert this script to any other engine,
- E.G converting it from RGSS3 into RGSS2.*
- 6. ENJOY!
- -------------------------------------------------------------------------------
- * = Unless permissions are given by Dekita.
- http://dekitarpg.wordpress.com/
- ================================================================================
- History:
- =========
- D /M /Y
- 13/09/2o12 - Added More Notetags,
- 12/09/2o12 - Improved script layout and compatability with future features,
- Added Notetags for enemy's to drop Distribution/Attribute points,
- 29/08/2o12 - Added extra random-ness to the stat gains for each option,
- 24/08/2o12 - Improved Script calls,
- Changed vit/str/dex and mag from useless counters into unique params.
- 22/08/2o12 - Started "Re-Writing" script for compatibility with future add-on's,
- 21/08/2o12 - Finished.(v1.4),
- - other stuff,
- 15/08/2o12 - Added options for "Dekita - Perfect Element/Status Control"
- 14/08/2o12 - Compatability update for "Dekita - Perfect Element/Status Control"
- - Released Script.(v1.3)
- 13/08/2o12 - Added bonus level points.
- - Released Script.(v1.2)
- 12/08/2o12 - Added ability to continue using parameter curves growth.
- - Fixed bug where using "SceneManager.call(Scene_Level_Up)" gave an
- error message(if no actor had leveled).
- - Added main menu command, Added switch to show/enable menu command.
- - Removed a useless script call.(lose_pts)
- - General tidying of the script.
- 11/08/2o12 - Added script calls to increase vit,str,dex and mag counters.
- - Removed "Perfect Stat Point Control Mode"
- - Changed name of script to Perfect Stat Point Distribution System.
- - Updated script to give ALOT more control over how
- x-params/s-params increase/decrease via command options.
- - Removed formula's method for increasing x/s-params.
- 08/08/2o12 - Released Script. (v1.1)
- - Compatability update -> (Perfect Status Screen).
- 07/08/2o12 - Fixed PROPERTIES_BIGGER_NUMBERS < Customisation module.
- - Added Gain/Lose points script calls as requested by "The Attendee"
- @ http://www.rpgmakervxace.net
- - Released Script. (v1.0)
- 06/08/2o12 - Added TP cost, HP Cost and GOLD Cost formula's.
- - Improved layout again.
- 05/08/2O12 - Added visual Vit,Str,Mag,Dex counters.
- 02/08/2012 - Added Ability to convert from "PSPDS" into "PSPCS"
- - Added more customisation.
- 01/08/2o12 - Added MASS Customisation.
- - Finished Script Base.
- 31/07/2o12 - Improved layout.
- - Added customisation options for when the SPD Screen triggers.
- 30/07/2o12 - Script now displays actors JP if Yanfly's JP manager is installed.
- - Added minor customisation.
- - Improved Layout.
- 21/07/2o12 - Started script.
- ================================================================================
- Credit and Thanks to :
- =======================
- mobychan & Tsukihime - for helping me understand notetags a little better ^_^
- Adrian Meza - for showing me how to add bonus level points.
- Niclas - for showing me how to properly define add_xparam.
- De Mack - for showing me how to write a basic distribute parameters script.
- ================================================================================
- Known Bugs:
- ============
- Guardian/Summon Scripts usually override the SPD Screen process if
- "INBATTLE = true" < Customisation module
- If you encounter this problem simply set
- "ONMAP" to "true" and "INBATTLE" to "false" < Customisation module
- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- If a new bug is found please contact me at
- http://dekitarpg.wordpress.com/
- ================================================================================
- INSTRUCTIONS:
- ==============
- Place this script UNDER "▼ Materials" and ABOVE "▼ Main" in your script editor.
- ================================================================================
- Script Calls:
- ==============
- Use the following script call in game (an event) to change the amount of
- points you gain each time you level up
- $pts = x
- e.g
- $pts = 7 <- this will change the points gained per level to 7
- --------------------------------------------------------------------------------
- Use the following script call to give an actor x amount of points
- gain_pts(actor_id, value)
- gain_atti(actor_id, value) < requires add-ons to spend attribute points.
- e.g
- gain_pts(1, 10) < This will give actor 1, 10 points to distribute.
- NOTE:
- value can be negative e.g
- gain_pts(1, -10) < This will remove 10 points from actor 1.
- NOTE_2: if an actor does not have the points you try to remove it wont work!
- --------------------------------------------------------------------------------
- Use the following script calls to add vit, str, dex or mag to an actor.
- inc_vit(actor_id, value)
- inc_str(actor_id, value)
- inc_dex(actor_id, value)
- inc_mag(actor_id, value)
- NOTE: I have made these script calls work the same way as if you spend a point
- in a stat(vit,str,dex and mag) e.g if you increase vit it will increase
- all params/xparams and sparams that you define under option 1 customisation.
- The same goes for str, dex and mag also.
- NOTE_2: as with gain_pts value can be negative.
- --------------------------------------------------------------------------------
- Use the following script call in game (an event) to trigger the SPD Screen
- SceneManager.call(Scene_Level_Up)
- NOTE: If no actor has leveled when you call this scene it will display the first
- actor in the party. If an actor has leveled it will show the SPDS for them.
- ================================================================================
- NoteTags:
- ==========
- <pts gain: X> (Gains Distribution Points)
- <atti gain: X> (Gains Attribute Points)
- Place these notetags into enemy noteboxes to gain X amount of points when the
- enemy is defeated. replace X with a value of your choosing, e.g <pts gain: 99>
- --------------------------------------------------------------------------------
- <vit: X>
- <str: X>
- <dex: X>
- <mag: X>
- Place these notetags into weapon or armor noteboxes to increase actors stats by
- X amount of points when the item is equipped,
- Place these notetags into enemy noteboxes to increase the enemys stats by
- X amount of points.
- NOTE: This will increase all params/x-params and s-params that you have set
- to increase for vit,str,dex and mag options within the stat point distribution
- script. e.g if option_1_MaxHP_GAIN = 9.5 for each one point of vit you will
- gain 1 vit and 9.5 MaxHP added to your current amount.
- ================================================================================
- Import:
- ========
- =end
- $imported = {} if $imported.nil?
- $imported["DPB-PSPDS"] = true
- module DPB
- module PSPDS
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Command's (selectable) DO NOT CHANGE OR REMOVE ANY OF THESE!
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- COMMANDS =[
- :Vitality, # < DO NOT REMOVE OR
- :Strength, # < CHANGE ANY OF THESE
- :Dexterity,# < COMMANDS
- :Magic, # < DO NOT REMOVE !
- ] # Do not remove this.
- #===============================================================================#
- # #
- # PSPDS #
- # (Perfect Stat Point Distribution System) #
- # - CUSTOMISATION BEGIN - #
- # #
- # #
- #===============================================================================#
- # ☆ Customisation = Tah-Dah
- #===========================
- # I have added as much customisation as i thought was needed.
- # Probably a little too much, :o , if there is such a thing.\..\..
- #
- # It is advised you take a moment to look through the cusomisation options
- # to see if any apply to your current project.
- #
- #===============================================================================
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Vocab Settings
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- LVLUPPTSVOCAB = "Points" # Help info used for the name of your level up points
- COST_VOCAB = "Points Cost:"
- YANFLY_JP_VOCAB = "Yanfly-JP" # <Only visable if using yanfly's Jp Manager
- ADDSTATTEXT = "Stat Added !" # Help info for when points are added
- NOPOINTSTEXT = "No Points Left To Add !!" # Help info for when no points are remaining
- VIT_GAIN_VOCAB = "Increases overall Survivability" # Help info for command option 1
- STR_GAIN_VOCAB = "Increases overall Strength" # Help info for command option 2
- DEX_GAIN_VOCAB = "Increases overall Dexterity" # Help info for command option 3
- MAG_GAIN_VOCAB = "Increases overall Magic Power" # Help info for command option 4
- WAIT_TIME = 30 # the time you wait (for the command window to re-activate)
- # after increasing a stat.
- # (time is in frames. 60 frames = 1 second)
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- # - Victory Messages -
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- # This adjusts the victory message shown for the default battle system.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- GAINED_POINTS_MESSAGE = "%s has earned %s %s!"
- GAINED_ATTRIBUTE_MESSAGE = "%s has gained %s %s!"
- # Attribute points require further add-ons to use.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Display SPD (Stat Point Distribution) Screen
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # By default the SPD Screen will be displayed at the end of battle (if you
- # level up). Some scripts may interfere with this one e.g summoning scripts,
- # when you level after your summon kills a monster in battle, the De-Summon
- # process usually overrides this one :(
- #
- # NOTE: if your party has more than 1 member that levels at the same time
- # then i recommend having both these options = true
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- INBATTLE = false # IF "true" screen triggers at end of battle (if an actor levels up)
- ONMAP = true # IF "true" screen triggers on map screen after an actor levels up.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Draw Actor Graphic ?
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- DRAW_ACTOR_GRAPHIC = false
- DAG_X = 432 # x location for actor graphic
- DAG_Y = 90 # y location for actor graphic
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Font Settings
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- PROPFONTSIZE = 14 # For Displayed Properties
- PARAMFONTSIZE = 20 # For Parameters in point selection window and JP if
- # Yanfly JP Manager is installed
- FONTSIZE = 16 # For Almost Everything Else and information in PSS*
- # (PSS = Perfect Status Screen) * = If imported.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Points gained after each level up
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # This is where you define the amount of distribution points each character
- # gains after each level up.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- LVUPPTS = 5 # Recommended to be under 10
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Default parameter growth
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # This is where you define whether you still gain parameters via
- # the parameter curves in the database.
- # set this to true if you wish to use that method (as well as SPD method).
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- USE_DEFAULT_PARAM_GAIN = false
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Bonus Point Gains
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # Here you can grant bonus points on specific levels e.g reach level 10
- # gain 5 bonus spendable points as a reward .
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- BONUS_POINTS_ON_LEVELS = true # If 'true' this will only grant points on
- # levels listed in LEVELS.
- LEVELS = [10, 20, 30, 40, 50, 75, 100] # If BONUS_POINTS_ON_LEVELS is 'true'
- # these will be the levels that the
- # actor(s) will gain bonus points on.
- ONLY_GAIN_POINTS_ON_LEVELS = false # Make this option "true" if you only want
- # to gains points on the levels stated
- # in LEVELS.
- # NOTE: BONUS_POINTS_ON_LEVELS "MUST!" be
- # "true" for this option to work.
- BONUSPOINTS = 10 # Define here how many bonus points your actors
- # gain on their bonus point levels.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Parameter gain settings
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # These settings adjust the points gained for each point spent
- # in each command option as well as each command options name.
- # You can also put negative values for each parameter.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # !! IMPORTANT !!
- #-----------------
- # It is important to note that Actor Ex-Parameters and Sp-Parameters deal
- # with percentage chance values. This means that their gain/reduce values
- # should be values that represent rates. What this means is:
- # 0.001 = 0.1%
- # 0.01 = 1%
- # 0.1 = 10%
- # 1.0 = 100%
- #
- # Be *VERY* careful with Ex/Sp-Parameters when defining their gain/reduce values.
- #
- # NOTE: the %-age of increase/decrease is of the current value e.g if you have
- # 50% and decrease it a further 1% it wouldnt go down to 49% instead it would be
- # 49.5% .
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- COMMAND_COLUMN_EXTRA_WIDTH = 0
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # Option 1 settings (command option 1)
- #-------------------------------------
- # Adjust these to your liking. you can set it to decrease by using "-" before
- # your value. e.g OPTION_1_MaxHP_GAIN = -9.5 will reduce MHP by 9.5
- #
- # i have also introduced a random gain min - maximum value option
- # its quite simple enter the min and max extra value that you want it to increase
- # e.g OP_1_MaxHP_RAND_MIN = 0 | OP_1_MaxHP_RAND_MAX = 5
- # Will increase MaxHP by 0-5 + OPTION_1_MaxHP_GAIN . easy . no?
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- COMMAND_NAME_1 = "Vitality" # Name of command option
- OPTION_1_COST = 1 # The amount of points it costs to increase this option
- # Default = 1
- #Regular-Parameters
- OPTION_1_MaxHP_GAIN = 9.5 # Maximum HP Stat.
- OP_1_MaxHP_RAND_MIN = 0 # Random gain minimum.
- OP_1_MaxHP_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MaxMP_GAIN = 0 # Maximum MP Stat.
- OP_1_MaxMP_RAND_MIN = 0 # Random gain minimum.
- OP_1_MaxMP_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_ATK_GAIN = 0 # Attack Stat.
- OP_1_ATK_RAND_MIN = 0 # Random gain minimum.
- OP_1_ATK_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_DEF_GAIN = 0.4 # Defence Stat.
- OP_1_DEF_RAND_MIN = 0 # Random gain minimum.
- OP_1_DEF_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MAT_GAIN = 0 # Magic Attack Stat.
- OP_1_MAT_RAND_MIN = 0 # Random gain minimum.
- OP_1_MAT_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MDF_GAIN = 0.4 # Magic Defence Stat.
- OP_1_MDF_RAND_MIN = 0 # Random gain minimum.
- OP_1_MDF_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_AGI_GAIN = 0 # Agility Stat.
- OP_1_AGI_RAND_MIN = 0 # Random gain minimum.
- OP_1_AGI_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_LUK_GAIN = 0 # Luck Stat.
- OP_1_LUK_RAND_MIN = 0 # Random gain minimum.
- OP_1_LUK_RAND_MAX = 0 # Random gain maximum.
- #The following are % gains, 0.01 = 1%
- #X-Parameters
- OPTION_1_HIT_GAIN = 0.00 # Hit Rate.
- OP_1_HIT_RAND_MIN = 0 # Random gain minimum.
- OP_1_HIT_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_EVA_GAIN = 0.00 # Evasion Rate.
- OP_1_EVA_RAND_MIN = 0 # Random gain minimum.
- OP_1_EVA_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_CRI_GAIN = 0.00 # Critical Hit Rate.
- OP_1_CRI_RAND_MIN = 0 # Random gain minimum.
- OP_1_CRI_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_CEV_GAIN = 0.001 # Critical Evasion Rate.
- OP_1_CEV_RAND_MIN = 0 # Random gain minimum.
- OP_1_CEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MEV_GAIN = 0.00 # Magic Evasion Rate.
- OP_1_MEV_RAND_MIN = 0 # Random gain minimum.
- OP_1_MEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MRF_GAIN = 0.00 # Magic Reflect Rate.
- OP_1_MRF_RAND_MIN = 0 # Random gain minimum.
- OP_1_MRF_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_CNT_GAIN = 0.00 # Counter Rate.
- OP_1_CNT_RAND_MIN = 0 # Random gain minimum.
- OP_1_CNT_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_HRG_GAIN = 0.0005 # HP Regeneration Rate.
- OP_1_HRG_RAND_MIN = 0 # Random gain minimum.
- OP_1_HRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MRG_GAIN = 0.00 # MP Regeneration Rate.
- OP_1_MRG_RAND_MIN = 0 # Random gain minimum.
- OP_1_MRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_TRG_GAIN = 0.00 # TP Regeneration Rate.
- OP_1_TRG_RAND_MIN = 0 # Random gain minimum.
- OP_1_TRG_RAND_MAX = 0 # Random gain maximum.
- #S-Parameters
- OPTION_1_TGR_GAIN = 0.013 # Target Rate. (monsters targeting you)
- OP_1_TGR_RAND_MIN = 0 # Random gain minimum.
- OP_1_TGR_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_GRD_GAIN = 0.013 # Guard Effect Rate
- OP_1_GRD_RAND_MIN = 0 # Random gain minimum.
- OP_1_GRD_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_REC_GAIN = 0.00 # Recovery Effect Rate.
- OP_1_REC_RAND_MIN = 0 # Random gain minimum.
- OP_1_REC_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_PHA_GAIN = 0.00 # Pharmacology Effect Rate.
- OP_1_PHA_RAND_MIN = 0 # Random gain minimum.
- OP_1_PHA_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MCR_GAIN = -0.00 # MP Cost Rate
- OP_1_MCR_RAND_MIN = 0 # Random gain minimum.
- OP_1_MCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_TCR_GAIN = -0.00 # TP Charge Rate.
- OP_1_TCR_RAND_MIN = 0 # Random gain minimum.
- OP_1_TCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_PDR_GAIN = -0.00025 # Physical Damage Rate.(incomming)
- OP_1_PDR_RAND_MIN = 0 # Random gain minimum.
- OP_1_PDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_MDR_GAIN = -0.00025 # Magical Damage Rate.(incomming)
- OP_1_MDR_RAND_MIN = 0 # Random gain minimum.
- OP_1_MDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_FDR_GAIN = -0.00 # Floor Damage Rate.
- OP_1_FDR_RAND_MIN = 0 # Random gain minimum.
- OP_1_FDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_1_EXR_GAIN = 0 # EXP Gain Rate.
- OP_1_EXR_RAND_MIN = 0 # Random gain minimum.
- OP_1_EXR_RAND_MAX = 0 # Random gain maximum.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # Option 2 settings (command option 2)
- #-------------------------------------
- # Adjust these to your liking. you can set it to decrease by using "-" before
- # your value. e.g OPTION_1_MaxHP_GAIN = -9.5 will reduce MHP by 9.5
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- COMMAND_NAME_2 = "Strength"
- OPTION_2_COST = 1 # The amount of points it costs to increase this option
- # Default = 1
- #Regular-Parameters
- OPTION_2_MaxHP_GAIN = 0 # Maximum HP Stat.
- OP_2_MaxHP_RAND_MIN = 0 # Random gain minimum.
- OP_2_MaxHP_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MaxMP_GAIN = 0 # Maximum MP Stat.
- OP_2_MaxMP_RAND_MIN = 0 # Random gain minimum.
- OP_2_MaxMP_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_ATK_GAIN = 1.2 # Attack Stat.
- OP_2_ATK_RAND_MIN = 0 # Random gain minimum.
- OP_2_ATK_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_DEF_GAIN = 0.6 # Defence Stat.
- OP_2_DEF_RAND_MIN = 0 # Random gain minimum.
- OP_2_DEF_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MAT_GAIN = -0.01 # Magic Attack Stat.
- OP_2_MAT_RAND_MIN = 0 # Random gain minimum.
- OP_2_MAT_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MDF_GAIN = -0.01 # Magic Defence Stat.
- OP_2_MDF_RAND_MIN = 0 # Random gain minimum.
- OP_2_MDF_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_AGI_GAIN = 0 # Agility Stat.
- OP_2_AGI_RAND_MIN = 0 # Random gain minimum.
- OP_2_AGI_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_LUK_GAIN = 0.1 # Luck Stat.
- OP_2_LUK_RAND_MIN = 0 # Random gain minimum.
- OP_2_LUK_RAND_MAX = 0 # Random gain maximum.
- #The following are % gains, 0.01 = 1%
- #X-Parameters
- OPTION_2_HIT_GAIN = 0.00 # Hit Rate.
- OP_2_HIT_RAND_MIN = 0 # Random gain minimum.
- OP_2_HIT_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_EVA_GAIN = 0.00 # Evasion Rate.
- OP_2_EVA_RAND_MIN = 0 # Random gain minimum.
- OP_2_EVA_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_CRI_GAIN = 0.00 # Critical Hit Rate.
- OP_2_CRI_RAND_MIN = 0 # Random gain minimum.
- OP_2_CRI_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_CEV_GAIN = 0.00 # Critical Evasion Rate.
- OP_2_CEV_RAND_MIN = 0 # Random gain minimum.
- OP_2_CEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MEV_GAIN = 0.00 # Magic Evasion Rate.
- OP_2_MEV_RAND_MIN = 0 # Random gain minimum.
- OP_2_MEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MRF_GAIN = 0.00 # Magic Reflect Rate.
- OP_2_MRF_RAND_MIN = 0 # Random gain minimum.
- OP_2_MRF_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_CNT_GAIN = 0.0005 # Counter Rate.
- OP_2_CNT_RAND_MIN = 0 # Random gain minimum.
- OP_2_CNT_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_HRG_GAIN = 0.00 # HP Regeneration Rate.
- OP_2_HRG_RAND_MIN = 0 # Random gain minimum.
- OP_2_HRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MRG_GAIN = 0.00 # MP Regeneration Rate.
- OP_2_MRG_RAND_MIN = 0 # Random gain minimum.
- OP_2_MRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_TRG_GAIN = 0.00 # TP Regeneration Rate.
- OP_2_TRG_RAND_MIN = 0 # Random gain minimum.
- OP_2_TRG_RAND_MAX = 0 # Random gain maximum.
- #S-Parameters
- OPTION_2_TGR_GAIN = 0.0009 # Target Rate. (monsters targeting you)
- OP_2_TGR_RAND_MIN = 0 # Random gain minimum.
- OP_2_TGR_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_GRD_GAIN = 0.005 # Guard Effect Rate
- OP_2_GRD_RAND_MIN = 0 # Random gain minimum.
- OP_2_GRD_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_REC_GAIN = 0.00 # Recovery Effect Rate.
- OP_2_REC_RAND_MIN = 0 # Random gain minimum.
- OP_2_REC_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_PHA_GAIN = 0.00 # Pharmacology Effect Rate.
- OP_2_PHA_RAND_MIN = 0 # Random gain minimum.
- OP_2_PHA_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MCR_GAIN = -0.00 # MP Cost Rate
- OP_2_MCR_RAND_MIN = 0 # Random gain minimum.
- OP_2_MCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_TCR_GAIN = -0.00 # TP Charge Rate.
- OP_2_TCR_RAND_MIN = 0 # Random gain minimum.
- OP_2_TCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_PDR_GAIN = -0.0020 # Physical Damage Rate.(incomming)
- OP_2_PDR_RAND_MIN = 0 # Random gain minimum.
- OP_2_PDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_MDR_GAIN = -0.00 # Magical Damage Rate.(incomming)
- OP_2_MDR_RAND_MIN = 0 # Random gain minimum.
- OP_2_MDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_FDR_GAIN = -0.00 # Floor Damage Rate.
- OP_2_FDR_RAND_MIN = 0 # Random gain minimum.
- OP_2_FDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_2_EXR_GAIN = 0 # EXP Gain Rate.
- OP_2_EXR_RAND_MIN = 0 # Random gain minimum.
- OP_2_EXR_RAND_MAX = 0 # Random gain maximum.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # Option 3 settings (command option 3)
- #-------------------------------------
- # Adjust these to your liking. you can set it to decrease by using "-" before
- # your value. e.g OPTION_1_MaxHP_GAIN = -9.5 will reduce MHP by 9.5
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- COMMAND_NAME_3 = "Dexterity"
- OPTION_3_COST = 1 # The amount of points it costs to increase this option
- # Default = 1
- #Regular-Parameters
- OPTION_3_MaxHP_GAIN = 0 # Maximum HP Stat.
- OP_3_MaxHP_RAND_MIN = 0 # Random gain minimum.
- OP_3_MaxHP_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MaxMP_GAIN = 0 # Maximum MP Stat.
- OP_3_MaxMP_RAND_MIN = 0 # Random gain minimum.
- OP_3_MaxMP_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_ATK_GAIN = 0 # Attack Stat.
- OP_3_ATK_RAND_MIN = 0 # Random gain minimum.
- OP_3_ATK_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_DEF_GAIN = 0 # Defence Stat.
- OP_3_DEF_RAND_MIN = 0 # Random gain minimum.
- OP_3_DEF_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MAT_GAIN = 0 # Magic Attack Stat.
- OP_3_MAT_RAND_MIN = 0 # Random gain minimum.
- OP_3_MAT_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MDF_GAIN = 0 # Magic Defence Stat.
- OP_3_MDF_RAND_MIN = 0 # Random gain minimum.
- OP_3_MDF_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_AGI_GAIN = 1.2 # Agility Stat.
- OP_3_AGI_RAND_MIN = 0 # Random gain minimum.
- OP_3_AGI_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_LUK_GAIN = 0.6 # Luck Stat.
- OP_3_LUK_RAND_MIN = 0 # Random gain minimum.
- OP_3_LUK_RAND_MAX = 0 # Random gain maximum.
- #The following are % gains, 0.01 = 1%
- #X-Parameters
- OPTION_3_HIT_GAIN = 0.005 # Hit Rate.
- OP_3_HIT_RAND_MIN = 0 # Random gain minimum.
- OP_3_HIT_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_EVA_GAIN = 0.0005 # Evasion Rate.
- OP_3_EVA_RAND_MIN = 0 # Random gain minimum.
- OP_3_EVA_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_CRI_GAIN = 0.001 # Critical Hit Rate.
- OP_3_CRI_RAND_MIN = 0 # Random gain minimum.
- OP_3_CRI_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_CEV_GAIN = 0.0005 # Critical Evasion Rate.
- OP_3_CEV_RAND_MIN = 0 # Random gain minimum.
- OP_3_CEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MEV_GAIN = 0.00025 # Magic Evasion Rate.
- OP_3_MEV_RAND_MIN = 0 # Random gain minimum.
- OP_3_MEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MRF_GAIN = 0.00 # Magic Reflect Rate.
- OP_3_MRF_RAND_MIN = 0 # Random gain minimum.
- OP_3_MRF_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_CNT_GAIN = 0.0002 # Counter Rate.
- OP_3_CNT_RAND_MIN = 0 # Random gain minimum.
- OP_3_CNT_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_HRG_GAIN = 0.00 # HP Regeneration Rate.
- OP_3_HRG_RAND_MIN = 0 # Random gain minimum.
- OP_3_HRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MRG_GAIN = 0.00 # MP Regeneration Rate.
- OP_3_MRG_RAND_MIN = 0 # Random gain minimum.
- OP_3_MRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_TRG_GAIN = 0.0005 # TP Regeneration Rate.
- OP_3_TRG_RAND_MIN = 0 # Random gain minimum.
- OP_3_TRG_RAND_MAX = 0 # Random gain maximum.
- #S-Parameters
- OPTION_3_TGR_GAIN = 0.00 # Target Rate. (monsters targeting you)
- OP_3_TGR_RAND_MIN = 0 # Random gain minimum.
- OP_3_TGR_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_GRD_GAIN = 0.00 # Guard Effect Rate
- OP_3_GRD_RAND_MIN = 0 # Random gain minimum.
- OP_3_GRD_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_REC_GAIN = 0.00 # Recovery Effect Rate.
- OP_3_REC_RAND_MIN = 0 # Random gain minimum.
- OP_3_REC_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_PHA_GAIN = 0.00 # Pharmacology Effect Rate.
- OP_3_PHA_RAND_MIN = 0 # Random gain minimum.
- OP_3_PHA_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MCR_GAIN = -0.00 # MP Cost Rate
- OP_3_MCR_RAND_MIN = 0 # Random gain minimum.
- OP_3_MCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_TCR_GAIN = -0.0025 # TP Charge Rate.
- OP_3_TCR_RAND_MIN = 0 # Random gain minimum.
- OP_3_TCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_PDR_GAIN = -0.00 # Physical Damage Rate.(incomming)
- OP_3_PDR_RAND_MIN = 0 # Random gain minimum.
- OP_3_PDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_MDR_GAIN = -0.00 # Magical Damage Rate.(incomming)
- OP_3_MDR_RAND_MIN = 0 # Random gain minimum.
- OP_3_MDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_FDR_GAIN = -0.00 # Floor Damage Rate.
- OP_3_FDR_RAND_MIN = 0 # Random gain minimum.
- OP_3_FDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_3_EXR_GAIN = 0 # EXP Gain Rate.
- OP_3_EXR_RAND_MIN = 0 # Random gain minimum.
- OP_3_EXR_RAND_MAX = 0 # Random gain maximum.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # Option 4 settings (command option 4)
- #-------------------------------------
- # Adjust these to your liking. you can set it to decrease by using "-" before
- # your value. e.g OPTION_1_MaxHP_GAIN = -9.5 will reduce MHP by 9.5
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- COMMAND_NAME_4 = "Magic"
- OPTION_4_COST = 1 # The amount of points it costs to increase this option
- # Default = 1
- #Regular-Parameters
- OPTION_4_MaxHP_GAIN = 0 # Maximum HP Stat.
- OP_4_MaxHP_RAND_MIN = 0 # Random gain minimum.
- OP_4_MaxHP_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MaxMP_GAIN = 9.5 # Maximum MP Stat.
- OP_4_MaxMP_RAND_MIN = 0 # Random gain minimum.
- OP_4_MaxMP_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_ATK_GAIN = -0.01 # Attack Stat.
- OP_4_ATK_RAND_MIN = 0 # Random gain minimum.
- OP_4_ATK_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_DEF_GAIN = -0.01 # Defence Stat.
- OP_4_DEF_RAND_MIN = 0 # Random gain minimum.
- OP_4_DEF_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MAT_GAIN = 1.2 # Magic Attack Stat.
- OP_4_MAT_RAND_MIN = 0 # Random gain minimum.
- OP_4_MAT_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MDF_GAIN = 0.6 # Magic Defence Stat.
- OP_4_MDF_RAND_MIN = 0 # Random gain minimum.
- OP_4_MDF_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_AGI_GAIN = 0 # Agility Stat.
- OP_4_AGI_RAND_MIN = 0 # Random gain minimum.
- OP_4_AGI_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_LUK_GAIN = 0.1 # Luck Stat.
- OP_4_LUK_RAND_MIN = 0 # Random gain minimum.
- OP_4_LUK_RAND_MAX = 0 # Random gain maximum.
- #The following are % gains, 0.01 = 1%
- #X-Parameters
- OPTION_4_HIT_GAIN = 0.00 # Hit Rate.
- OP_4_HIT_RAND_MIN = 0 # Random gain minimum.
- OP_4_HIT_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_EVA_GAIN = 0.00 # Evasion Rate.
- OP_4_EVA_RAND_MIN = 0 # Random gain minimum.
- OP_4_EVA_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_CRI_GAIN = 0.00 # Critical Hit Rate.
- OP_4_CRI_RAND_MIN = 0 # Random gain minimum.
- OP_4_CRI_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_CEV_GAIN = 0.00 # Critical Evasion Rate.
- OP_4_CEV_RAND_MIN = 0 # Random gain minimum.
- OP_4_CEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MEV_GAIN = 0.001 # Magic Evasion Rate.
- OP_4_MEV_RAND_MIN = 0 # Random gain minimum.
- OP_4_MEV_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MRF_GAIN = 0.00 # Magic Reflect Rate.
- OP_4_MRF_RAND_MIN = 0 # Random gain minimum.
- OP_4_MRF_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_CNT_GAIN = 0.00 # Counter Rate.
- OP_4_CNT_RAND_MIN = 0 # Random gain minimum.
- OP_4_CNT_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_HRG_GAIN = 0.00 # HP Regeneration Rate.
- OP_4_HRG_RAND_MIN = 0 # Random gain minimum.
- OP_4_HRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MRG_GAIN = 0.0005 # MP Regeneration Rate.
- OP_4_MRG_RAND_MIN = 0 # Random gain minimum.
- OP_4_MRG_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_TRG_GAIN = 0.00 # TP Regeneration Rate.
- OP_4_TRG_RAND_MIN = 0 # Random gain minimum.
- OP_4_TRG_RAND_MAX = 0 # Random gain maximum.
- #S-Parameters
- OPTION_4_TGR_GAIN = 0.00 # Target Rate. (monsters targeting you)
- OP_4_TGR_RAND_MIN = 0 # Random gain minimum.
- OP_4_TGR_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_GRD_GAIN = 0.004 # Guard Effect Rate
- OP_4_GRD_RAND_MIN = 0 # Random gain minimum.
- OP_4_GRD_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_REC_GAIN = 0.00 # Recovery Effect Rate.
- OP_4_REC_RAND_MIN = 0 # Random gain minimum.
- OP_4_REC_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_PHA_GAIN = 0.00 # Pharmacology Effect Rate.
- OP_4_PHA_RAND_MIN = 0 # Random gain minimum.
- OP_4_PHA_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MCR_GAIN = -0.0025 # MP Cost Rate
- OP_4_MCR_RAND_MIN = 0 # Random gain minimum.
- OP_4_MCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_TCR_GAIN = -0.00 # TP Charge Rate.
- OP_4_TCR_RAND_MIN = 0 # Random gain minimum.
- OP_4_TCR_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_PDR_GAIN = -0.00 # Physical Damage Rate.(incomming)
- OP_4_PDR_RAND_MIN = 0 # Random gain minimum.
- OP_4_PDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_MDR_GAIN = -0.0020 # Magical Damage Rate.(incomming)
- OP_4_MDR_RAND_MIN = 0 # Random gain minimum.
- OP_4_MDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_FDR_GAIN = -0.00 # Floor Damage Rate.
- OP_4_FDR_RAND_MIN = 0 # Random gain minimum.
- OP_4_FDR_RAND_MAX = 0 # Random gain maximum.
- OPTION_4_EXR_GAIN = 0 # EXP Gain Rate.
- OP_4_EXR_RAND_MIN = 0 # Random gain minimum.
- OP_4_EXR_RAND_MAX = 0 # Random gain maximum.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Parameters Gauge Settings
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # Set this to "true" if you wish to have Gauges for params e.g
- # MaxHP, MaxMP, Atk, Def, Mat, Mdf, Agi, Luk
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- DRAW_PARAM_GAUGES = true
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Parameters Colour Settings
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # These settings adjust the way the parameters window visually appears.
- # Each of the stats have a non-window colour. Adjust them as you see fit.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- PARAM_COLOUR ={
- # ParamID => [:stat, Colour1, Colour2 ],
- 2 => [ :atk, Color.new(225, 100, 100), Color.new(240, 150, 150)],
- 3 => [ :def, Color.new(250, 150, 30), Color.new(250, 180, 100)],
- 4 => [ :mat, Color.new( 70, 140, 200), Color.new(135, 180, 230)],
- 5 => [ :mdf, Color.new(135, 130, 190), Color.new(170, 160, 220)],
- 6 => [ :agi, Color.new( 60, 180, 80), Color.new(120, 200, 120)],
- 7 => [ :luk, Color.new(255, 240, 100), Color.new(255, 250, 200)],
- } # Do not remove this.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Properties Window Settings
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # These settings adjust the way the properties window visually appears.
- # The properties have abbreviations, but leaving them as such makes things
- # confusing (as it's sometimes hard to figure out what the abbreviations
- # mean). Change the way the appear, whether or not they appear, and what
- # order they will appear in.
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # These are the parameters that appear in column 1.
- # This column's settings are only relevant if DRAW_PARAM_GAUGES = false (above)
- PROPERTIES_PARAMCOLUMN =[
- [:mhp, "Max HP"], #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- [:mmp, "Max MP"], # <- Rename these to whatever you want your
- [:atk, "Attack"], # <- origional parameters to be called :)
- [:def, "Defence"], # <-
- [:mat, "M Attack"], # <- NOTE: Only applies if DRAW_PAAM_GAUGES is
- [:mdf, "M Defence"], # <- "false"
- [:agi, "Speed"], # <-
- [:luk, "Luck"], #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- ] # Do not remove this.
- # These are the properties that appear in column 2.
- PROPERTIES_COLUMN1 =[
- [:hit, "Hit Rate"],
- [:eva, "Evasion"],
- [:cri, "Critical Hit"],
- [:cev, "Critical Evade"],
- [:mev, "Magic Evasion"],
- [:mrf, "Magic Reflect"],
- [:cnt, "Counter Rate"],
- [:tgr, "Target Rate"],
- ] # Do not remove this.
- # These are the properties that appear in column 3.
- PROPERTIES_COLUMN2 =[
- [:hrg, "HP Regen"],
- [:mrg, "MP Regen"],
- [:trg, "TP Regen"],
- [:rec, "Recovery"],
- [:grd, "Guard Rate"],
- [:pha, "Item Boost"],
- [:exr, "EXP Rate"],
- [:tcr, "TP Charge"],
- ] # Do not remove this.
- # These are the properties that appear in column 4.
- PROPERTIES_COLUMN3 =[
- [:hcr, "HP Cost Rate"], # Requires YEA - Skill Cost Manager
- [:mcr, "MP Cost Rate"],
- [:tcr_y, "TP Cost Rate"], # Requires YEA - Skill Cost Manager
- [:cdr, "Cooldown Rate"], # Requires YEA - Skill Restrictions
- [:wur, "Warmup Rate"], # Requires YEA - Skill Restrictions
- [:pdr, "Physical Damage"],
- [:mdr, "Magical Damage"],
- [:fdr, "Floor Damage"],
- [:atkrt, "Attack Speed"],
- [:atktimes,"Attack Times"],
- [:atklvl, "Attack Level"], # Requires Dekita's - Perfect Skill Formula's
- [:deflvl, "Defence Level"], # Requires Dekita's - Perfect Skill Formula's
- ] # Do not remove this.
- DRAW_ALL_COLUMNS = true # This option is for those who do not want all 4 columns
- # Simply set this to false to only draw 3 columns
- # e.g the param column, column1 and column2.
- #===============================================================================#
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- # #
- # PSPDS #
- # (Perfect Stat Point Distribution System) #
- # - CUSTOMISATION END - #
- # #
- # #
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #===============================================================================#
- # http://dekitarpg.wordpress.com/
- #===============================================================================#
- #################################################################################
- #===============================================================================#
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- # #
- # ★ Perfect Elements Control ★
- # and
- # ★ Perfect Status Control ★
- # ★ ADD-ON's ★
- # - CUSTOMISATION BEGIN -
- # #
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #===============================================================================#
- # IMPORTANT !!
- #=============
- # The following customisation options are for elements/status control add-on's
- # If you are not using any of these add-on's,then DO NOT CHANGE THESE OPTIONS !!
- #-------------------------------------------------------------------------------
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # ☆ Gain Attribute Points?
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- # Here you can grant another type of points, ATTRIBUTE's <3
- # If you set "USE_ATTRIBUTE_POINTS = true"
- # Then you will gain attribute points on the levels stated in "ATTILEVZ"
- # You can then use these points to spend on increasing the following...
- # • Elemental Resistances - e.g fire, water, wind...
- # • Attack Element Values - e.g dealing fire/water/wind damage as standard...
- # • State Resistances - e.g Increased chance to resist "poison" ect...
- # • State Attack Rate - e.g Attack with a 4% chance to inflict "poison" ect...
- # Finnaly: "ATTIPTZ" is how many attribute points will be given when any
- ########### character reaches level [x] (levels defined in - "ATTILEVZ")
- #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- USE_ATTRIBUTE_POINTS = true # If 'true' this will grant attribute points on
- # levels listed in "ATTILEVZ".
- ATTILEVZ = [5,10,20,30,40,50,60,70,80,90,91,92,93,94,95,96,97,98,99,100]
- # If "USE_ATTRIBUTE_POINTS" is 'true' these will be the levels that actor(s)
- # will gain attribute points on.
- ATTIPTZ = 10 # Define here how many attribute points your actors gain
- # when they reach a level listed in "ATTILEVZ"
- ATTIPTZVOCAB = "Affinity"
- ATTIPTZ_COST_VOCAB = "Affinity Cost:"
- #NOTE: this is the vocab for elements and states whether you use affinity
- #points or use regular level up points, change accordingly.
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- # #
- # PSPDS #
- # (Perfect Stat Point Distribution System) #
- # - SCRIPT BEGIN - #
- # #
- # #
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #===============================================================================#
- # http://dekitarpg.wordpress.com/
- #===============================================================================#
- # ARE YOU MODIFYING BEYOND THIS POINT? \.\. #
- # YES?\.\. #
- # OMG, REALLY? #
- # WELL SLAP MY FACE AND CALL ME A DRAGON.\..\.. #
- # I REALLY DIDN'T THINK YOU HAD IT IN YOU.\..\.. #
- #===============================================================================#
- POINTS_COLUMN =[
- [:points, DPB::PSPDS::LVLUPPTSVOCAB],
- [:affinity, DPB::PSPDS::ATTIPTZVOCAB],
- [:yanflyjp, DPB::PSPDS::YANFLY_JP_VOCAB],
- # [:spirit, "Spirit"],
- ] # Do not remove this.
- NEW_STATS_COLUMN =[
- [:vit, DPB::PSPDS::COMMAND_NAME_1],
- [:str, DPB::PSPDS::COMMAND_NAME_2],
- [:dex, DPB::PSPDS::COMMAND_NAME_3],
- [:mag, DPB::PSPDS::COMMAND_NAME_4],
- ] # Do not remove this.
- $pts = DPB::PSPDS::LVUPPTS
- $bonuspts = DPB::PSPDS::BONUSPOINTS
- $attiptz = DPB::PSPDS::ATTIPTZ
- $spiritptz = 1
- end # PSPDS
- end # DPB
- #==============================================================================
- class Object
- #==============================================================================
- def dpbz_randy(min, max)
- min + rand(max - min + 1)
- end
- end
- module DPB
- module REGEXP
- module ENEMY
- PTS_GAIN = /<(?:PTS_GAIN|pts gain):[ ](\d+)>/i
- ATTI_GAIN = /<(?:ATTI_GAIN|atti gain):[ ](\d+)>/i
- SPIRIT_GAIN = /<(?:SPIRIT_GAIN|spirit gain):[ ](\d+)>/i
- end # ENEMY
- end # REGEXP
- end # DPB
- #==============================================================================
- module DataManager
- #==============================================================================
- class <<self; alias load_database_ptsandatti load_database; end
- def self.load_database
- load_database_ptsandatti
- load_notetags_ptsandatti
- end
- def self.load_notetags_ptsandatti
- groups = [$data_enemies]
- for group in groups
- for obj in group
- next if obj.nil?
- obj.load_notetags_ptsandatti
- end
- end
- end
- end # DataManager
- #==============================================================================
- class RPG::Enemy < RPG::BaseItem
- #==============================================================================
- attr_accessor :pts_gain
- attr_accessor :atti_gain
- attr_accessor :spirit_gain
- def load_notetags_ptsandatti
- @pts_gain = 0
- @atti_gain = 0
- @spirit_gain = 0
- #---
- self.note.split(/[\r\n]+/).each { |line|
- case line
- #---
- when DPB::REGEXP::ENEMY::PTS_GAIN
- @pts_gain = $1.to_i
- when DPB::REGEXP::ENEMY::ATTI_GAIN
- @atti_gain = $1.to_i
- when DPB::REGEXP::ENEMY::SPIRIT_GAIN
- @spirit_gain = $1.to_i
- #---
- end
- } # self.note.split
- #---
- end
- end # RPG::Enemy
- #==============================================================================
- module BattleManager
- #==============================================================================
- class <<self; alias battlemanager_display_exp_ptsandatti display_exp; end
- def self.display_exp
- battlemanager_display_exp_ptsandatti
- gain_pts
- gain_atti
- gain_spirit
- end
- def self.gain_pts
- amount = $game_troop.pts_total
- fmt = DPB::PSPDS::GAINED_POINTS_MESSAGE
- if $game_troop.pts_total >= 1
- for member in $game_party.members
- member.gain_lvl_pts(amount)
- value = $game_troop.pts_total
- $game_message.add('\.' + sprintf(fmt, member.name, value, DPB::PSPDS::LVLUPPTSVOCAB))
- end
- wait_for_message
- end
- end
- def self.gain_atti
- amount = $game_troop.atti_total
- fmt = DPB::PSPDS::GAINED_ATTRIBUTE_MESSAGE
- if $game_troop.atti_total >= 1
- for member in $game_party.members
- member.gain_atti_ptz(amount)
- value = $game_troop.atti_total
- $game_message.add('\.' + sprintf(fmt, member.name, value, DPB::PSPDS::ATTIPTZVOCAB))
- end
- wait_for_message
- end
- end
- def self.gain_spirit
- amount = $game_troop.spirit_total
- fmt = DPB::PSPDS::GAINED_ATTRIBUTE_MESSAGE
- if $game_troop.spirit_total >= 1
- for member in $game_party.members
- member.gain_spirit_ptz(amount)
- value = $game_troop.spirit_total
- $game_message.add('\.' + sprintf(fmt, member.name, value, "Gained spirit"))
- end
- wait_for_message
- end
- end
- end # BattleManager
- #==============================================================================
- class Game_BattlerBase
- #==============================================================================
- alias dpb_pspds_init initialize
- def initialize(*args, &block)
- clear_xparam_plus
- clear_sparam_plus
- clear_dpbzparam_plus
- dpb_pspds_init(*args, &block)
- end
- def vit; dpbzparam(0); end
- def str; dpbzparam(1); end
- def dex; dpbzparam(2); end
- def mag; dpbzparam(3); end
- def xparam(xparam_id)
- (features_sum(FEATURE_XPARAM, xparam_id) + xparam_plus(xparam_id))
- end
- def xparam_plus(xparam_id)
- @xparam_plus[xparam_id]
- end
- def clear_xparam_plus
- @xparam_plus = [0] * 10
- end
- def add_xparam(xparam_id, value)
- @xparam_plus[xparam_id] += value
- refresh
- end
- def sparam(sparam_id)
- (features_pi(FEATURE_SPARAM, sparam_id) + sparam_plus(sparam_id))
- end
- def sparam_plus(sparam_id)
- @sparam_plus[sparam_id]
- end
- def clear_sparam_plus
- @sparam_plus = [0] * 10
- end
- def add_sparam(sparam_id, value)
- @sparam_plus[sparam_id] += value
- refresh
- end
- def dpbzparam(dpbzparam_id)
- (features_sum(FEATURE_PARAM, dpbzparam_id) + dpbzparam_plus(dpbzparam_id))
- end
- def dpbzparam_plus(dpbzparam_id)
- @dpbzparam_plus[dpbzparam_id]
- end
- def clear_dpbzparam_plus
- @dpbzparam_plus = [0] * 4
- end
- def add_dpbzparam(dpbzparam_id, value)
- @dpbzparam_plus[dpbzparam_id] += value
- refresh
- end
- end # Game_BattlerBase
- #==============================================================================
- class Scene_Level_Up < Scene_MenuBase
- #==============================================================================
- def msg
- s = ["#{DPB::PSPDS::VIT_GAIN_VOCAB}
- #{DPB::PSPDS::COST_VOCAB} #{@actor.cost_caract(0)}",
- "#{DPB::PSPDS::STR_GAIN_VOCAB}
- #{DPB::PSPDS::COST_VOCAB} #{@actor.cost_caract(1)}",
- "#{DPB::PSPDS::DEX_GAIN_VOCAB}
- #{DPB::PSPDS::COST_VOCAB} #{@actor.cost_caract(2)}",
- "#{DPB::PSPDS::MAG_GAIN_VOCAB}
- #{DPB::PSPDS::COST_VOCAB} #{@actor.cost_caract(3)}"]
- return s
- end
- def start
- super
- if $game_temp.actor_level_up[0]
- @actor = $game_temp.actor_level_up[0]
- end
- create_status_window
- create_command_window
- create_help_window
- @help_window.set_text(msg[@command_window.index])
- @help_window.y = (Graphics.height - 80)
- @help_window.opacity = 0
- $game_temp.actor_level_up.delete_at(0)
- end
- def create_command_window
- @command_window = Window_Level_upCommand.new
- @command_window.set_handler(:gain_vit, method(:command_gain_vit))
- @command_window.set_handler(:cancel, method(:return_scene))
- @command_window.set_handler(:gain_str, method(:command_gain_str))
- @command_window.set_handler(:gain_dex, method(:command_gain_dex))
- @command_window.set_handler(:gain_mag, method(:command_gain_mag))
- @command_window.set_handler(:pagedown, method(:next_actor))
- @command_window.set_handler(:pageup, method(:prev_actor))
- @command_window.y = 0
- end
- def create_status_window
- @status_window = Window_Status_Level_up.new(@actor)
- @status_window.x = 0
- @status_window.y = 0
- end
- def command_gain_vit
- index = @command_window.index
- @command_window.refresh
- if @actor.level_up_pts >= @actor.cost_caract(index)
- @actor.gain_lvl_pts(-@actor.cost_caract(index))
- #reg's
- @actor.add_param(0, DPB::PSPDS::OPTION_1_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxHP_RAND_MIN, DPB::PSPDS::OP_1_MaxHP_RAND_MAX))
- @actor.add_param(1, DPB::PSPDS::OPTION_1_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxMP_RAND_MIN, DPB::PSPDS::OP_1_MaxMP_RAND_MAX))
- @actor.add_param(2, DPB::PSPDS::OPTION_1_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_ATK_RAND_MIN, DPB::PSPDS::OP_1_ATK_RAND_MAX))
- @actor.add_param(3, DPB::PSPDS::OPTION_1_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_DEF_RAND_MIN, DPB::PSPDS::OP_1_DEF_RAND_MAX))
- @actor.add_param(4, DPB::PSPDS::OPTION_1_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MAT_RAND_MIN, DPB::PSPDS::OP_1_MAT_RAND_MAX))
- @actor.add_param(5, DPB::PSPDS::OPTION_1_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MDF_RAND_MIN, DPB::PSPDS::OP_1_MDF_RAND_MAX))
- @actor.add_param(6, DPB::PSPDS::OPTION_1_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_AGI_RAND_MIN, DPB::PSPDS::OP_1_AGI_RAND_MAX))
- @actor.add_param(7, DPB::PSPDS::OPTION_1_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_LUK_RAND_MIN, DPB::PSPDS::OP_1_LUK_RAND_MAX))
- #x's
- @actor.add_xparam(0, DPB::PSPDS::OPTION_1_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HIT_RAND_MIN, DPB::PSPDS::OP_1_HIT_RAND_MAX))
- @actor.add_xparam(1, DPB::PSPDS::OPTION_1_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_1_EVA_RAND_MIN, DPB::PSPDS::OP_1_EVA_RAND_MAX))
- @actor.add_xparam(2, DPB::PSPDS::OPTION_1_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CRI_RAND_MIN, DPB::PSPDS::OP_1_CRI_RAND_MAX))
- @actor.add_xparam(3, DPB::PSPDS::OPTION_1_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CEV_RAND_MIN, DPB::PSPDS::OP_1_CEV_RAND_MAX))
- @actor.add_xparam(4, DPB::PSPDS::OPTION_1_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MEV_RAND_MIN, DPB::PSPDS::OP_1_MEV_RAND_MAX))
- @actor.add_xparam(5, DPB::PSPDS::OPTION_1_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRF_RAND_MIN, DPB::PSPDS::OP_1_MRF_RAND_MAX))
- @actor.add_xparam(6, DPB::PSPDS::OPTION_1_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CNT_RAND_MIN, DPB::PSPDS::OP_1_CNT_RAND_MAX))
- @actor.add_xparam(7, DPB::PSPDS::OPTION_1_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HRG_RAND_MIN, DPB::PSPDS::OP_1_HRG_RAND_MAX))
- @actor.add_xparam(8, DPB::PSPDS::OPTION_1_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRG_RAND_MIN, DPB::PSPDS::OP_1_MRG_RAND_MAX))
- @actor.add_xparam(9, DPB::PSPDS::OPTION_1_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TRG_RAND_MIN, DPB::PSPDS::OP_1_TRG_RAND_MAX))
- #s's
- @actor.add_sparam(0, DPB::PSPDS::OPTION_1_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TGR_RAND_MIN, DPB::PSPDS::OP_1_TGR_RAND_MAX))
- @actor.add_sparam(1, DPB::PSPDS::OPTION_1_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_1_GRD_RAND_MIN, DPB::PSPDS::OP_1_GRD_RAND_MAX))
- @actor.add_sparam(2, DPB::PSPDS::OPTION_1_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_1_REC_RAND_MIN, DPB::PSPDS::OP_1_REC_RAND_MAX))
- @actor.add_sparam(3, DPB::PSPDS::OPTION_1_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_1_PHA_RAND_MIN, DPB::PSPDS::OP_1_PHA_RAND_MAX))
- @actor.add_sparam(4, DPB::PSPDS::OPTION_1_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MCR_RAND_MIN, DPB::PSPDS::OP_1_MCR_RAND_MAX))
- @actor.add_sparam(5, DPB::PSPDS::OPTION_1_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TCR_RAND_MIN, DPB::PSPDS::OP_1_TCR_RAND_MAX))
- @actor.add_sparam(6, DPB::PSPDS::OPTION_1_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_PDR_RAND_MIN, DPB::PSPDS::OP_1_PDR_RAND_MAX))
- @actor.add_sparam(7, DPB::PSPDS::OPTION_1_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MDR_RAND_MIN, DPB::PSPDS::OP_1_MDR_RAND_MAX))
- @actor.add_sparam(8, DPB::PSPDS::OPTION_1_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_FDR_RAND_MIN, DPB::PSPDS::OP_1_FDR_RAND_MAX))
- @actor.add_sparam(9, DPB::PSPDS::OPTION_1_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_EXR_RAND_MIN, DPB::PSPDS::OP_1_EXR_RAND_MAX))
- #dpbz'
- @actor.add_dpbzparam(0, 1)
- #end inc stat
- @help_window.set_text(DPB::PSPDS::ADDSTATTEXT)
- else
- @help_window.set_text(DPB::PSPDS::NOPOINTSTEXT)
- end
- @status_window.refresh
- @command_window.refresh
- wait(DPB::PSPDS::WAIT_TIME)
- @command_window.activate
- end
- def command_gain_str
- index = @command_window.index
- @command_window.refresh
- if @actor.level_up_pts >= @actor.cost_caract(index)
- @actor.gain_lvl_pts(-@actor.cost_caract(index))
- #reg's
- @actor.add_param(0, DPB::PSPDS::OPTION_2_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxHP_RAND_MIN, DPB::PSPDS::OP_1_MaxHP_RAND_MAX))
- @actor.add_param(1, DPB::PSPDS::OPTION_2_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxMP_RAND_MIN, DPB::PSPDS::OP_1_MaxMP_RAND_MAX))
- @actor.add_param(2, DPB::PSPDS::OPTION_2_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_ATK_RAND_MIN, DPB::PSPDS::OP_1_ATK_RAND_MAX))
- @actor.add_param(3, DPB::PSPDS::OPTION_2_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_DEF_RAND_MIN, DPB::PSPDS::OP_1_DEF_RAND_MAX))
- @actor.add_param(4, DPB::PSPDS::OPTION_2_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MAT_RAND_MIN, DPB::PSPDS::OP_1_MAT_RAND_MAX))
- @actor.add_param(5, DPB::PSPDS::OPTION_2_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MDF_RAND_MIN, DPB::PSPDS::OP_1_MDF_RAND_MAX))
- @actor.add_param(6, DPB::PSPDS::OPTION_2_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_AGI_RAND_MIN, DPB::PSPDS::OP_1_AGI_RAND_MAX))
- @actor.add_param(7, DPB::PSPDS::OPTION_2_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_LUK_RAND_MIN, DPB::PSPDS::OP_1_LUK_RAND_MAX))
- #x's
- @actor.add_xparam(0, DPB::PSPDS::OPTION_2_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HIT_RAND_MIN, DPB::PSPDS::OP_1_HIT_RAND_MAX))
- @actor.add_xparam(1, DPB::PSPDS::OPTION_2_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_1_EVA_RAND_MIN, DPB::PSPDS::OP_1_EVA_RAND_MAX))
- @actor.add_xparam(2, DPB::PSPDS::OPTION_2_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CRI_RAND_MIN, DPB::PSPDS::OP_1_CRI_RAND_MAX))
- @actor.add_xparam(3, DPB::PSPDS::OPTION_2_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CEV_RAND_MIN, DPB::PSPDS::OP_1_CEV_RAND_MAX))
- @actor.add_xparam(4, DPB::PSPDS::OPTION_2_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MEV_RAND_MIN, DPB::PSPDS::OP_1_MEV_RAND_MAX))
- @actor.add_xparam(5, DPB::PSPDS::OPTION_2_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRF_RAND_MIN, DPB::PSPDS::OP_1_MRF_RAND_MAX))
- @actor.add_xparam(6, DPB::PSPDS::OPTION_2_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CNT_RAND_MIN, DPB::PSPDS::OP_1_CNT_RAND_MAX))
- @actor.add_xparam(7, DPB::PSPDS::OPTION_2_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HRG_RAND_MIN, DPB::PSPDS::OP_1_HRG_RAND_MAX))
- @actor.add_xparam(8, DPB::PSPDS::OPTION_2_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRG_RAND_MIN, DPB::PSPDS::OP_1_MRG_RAND_MAX))
- @actor.add_xparam(9, DPB::PSPDS::OPTION_2_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TRG_RAND_MIN, DPB::PSPDS::OP_1_TRG_RAND_MAX))
- #s's
- @actor.add_sparam(0, DPB::PSPDS::OPTION_2_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_TGR_RAND_MIN, DPB::PSPDS::OP_2_TGR_RAND_MAX))
- @actor.add_sparam(1, DPB::PSPDS::OPTION_2_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_2_GRD_RAND_MIN, DPB::PSPDS::OP_2_GRD_RAND_MAX))
- @actor.add_sparam(2, DPB::PSPDS::OPTION_2_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_2_REC_RAND_MIN, DPB::PSPDS::OP_2_REC_RAND_MAX))
- @actor.add_sparam(3, DPB::PSPDS::OPTION_2_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_2_PHA_RAND_MIN, DPB::PSPDS::OP_2_PHA_RAND_MAX))
- @actor.add_sparam(4, DPB::PSPDS::OPTION_2_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_MCR_RAND_MIN, DPB::PSPDS::OP_2_MCR_RAND_MAX))
- @actor.add_sparam(5, DPB::PSPDS::OPTION_2_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_TCR_RAND_MIN, DPB::PSPDS::OP_2_TCR_RAND_MAX))
- @actor.add_sparam(6, DPB::PSPDS::OPTION_2_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_PDR_RAND_MIN, DPB::PSPDS::OP_2_PDR_RAND_MAX))
- @actor.add_sparam(7, DPB::PSPDS::OPTION_2_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_MDR_RAND_MIN, DPB::PSPDS::OP_2_MDR_RAND_MAX))
- @actor.add_sparam(8, DPB::PSPDS::OPTION_2_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_FDR_RAND_MIN, DPB::PSPDS::OP_2_FDR_RAND_MAX))
- @actor.add_sparam(9, DPB::PSPDS::OPTION_2_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_EXR_RAND_MIN, DPB::PSPDS::OP_2_EXR_RAND_MAX))
- #dpbz'
- @actor.add_dpbzparam(1, 1)
- #end inc stat
- @help_window.set_text(DPB::PSPDS::ADDSTATTEXT)
- else
- @help_window.set_text(DPB::PSPDS::NOPOINTSTEXT)
- end
- @status_window.refresh
- @command_window.refresh
- wait(DPB::PSPDS::WAIT_TIME)
- @command_window.activate
- end
- def command_gain_dex
- index = @command_window.index
- @command_window.refresh
- if @actor.level_up_pts >= @actor.cost_caract(index)
- @actor.gain_lvl_pts(-@actor.cost_caract(index))
- #reg's
- @actor.add_param(0, DPB::PSPDS::OPTION_3_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MaxHP_RAND_MIN, DPB::PSPDS::OP_1_MaxHP_RAND_MAX))
- @actor.add_param(1, DPB::PSPDS::OPTION_3_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MaxMP_RAND_MIN, DPB::PSPDS::OP_1_MaxMP_RAND_MAX))
- @actor.add_param(2, DPB::PSPDS::OPTION_3_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_3_ATK_RAND_MIN, DPB::PSPDS::OP_3_ATK_RAND_MAX))
- @actor.add_param(3, DPB::PSPDS::OPTION_3_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_3_DEF_RAND_MIN, DPB::PSPDS::OP_3_DEF_RAND_MAX))
- @actor.add_param(4, DPB::PSPDS::OPTION_3_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MAT_RAND_MIN, DPB::PSPDS::OP_3_MAT_RAND_MAX))
- @actor.add_param(5, DPB::PSPDS::OPTION_3_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MDF_RAND_MIN, DPB::PSPDS::OP_3_MDF_RAND_MAX))
- @actor.add_param(6, DPB::PSPDS::OPTION_3_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_3_AGI_RAND_MIN, DPB::PSPDS::OP_3_AGI_RAND_MAX))
- @actor.add_param(7, DPB::PSPDS::OPTION_3_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_3_LUK_RAND_MIN, DPB::PSPDS::OP_3_LUK_RAND_MAX))
- #x's
- @actor.add_xparam(0, DPB::PSPDS::OPTION_3_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_3_HIT_RAND_MIN, DPB::PSPDS::OP_3_HIT_RAND_MAX))
- @actor.add_xparam(1, DPB::PSPDS::OPTION_3_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_3_EVA_RAND_MIN, DPB::PSPDS::OP_3_EVA_RAND_MAX))
- @actor.add_xparam(2, DPB::PSPDS::OPTION_3_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_3_CRI_RAND_MIN, DPB::PSPDS::OP_3_CRI_RAND_MAX))
- @actor.add_xparam(3, DPB::PSPDS::OPTION_3_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_3_CEV_RAND_MIN, DPB::PSPDS::OP_3_CEV_RAND_MAX))
- @actor.add_xparam(4, DPB::PSPDS::OPTION_3_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MEV_RAND_MIN, DPB::PSPDS::OP_3_MEV_RAND_MAX))
- @actor.add_xparam(5, DPB::PSPDS::OPTION_3_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MRF_RAND_MIN, DPB::PSPDS::OP_3_MRF_RAND_MAX))
- @actor.add_xparam(6, DPB::PSPDS::OPTION_3_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_3_CNT_RAND_MIN, DPB::PSPDS::OP_3_CNT_RAND_MAX))
- @actor.add_xparam(7, DPB::PSPDS::OPTION_3_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_3_HRG_RAND_MIN, DPB::PSPDS::OP_3_HRG_RAND_MAX))
- @actor.add_xparam(8, DPB::PSPDS::OPTION_3_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MRG_RAND_MIN, DPB::PSPDS::OP_3_MRG_RAND_MAX))
- @actor.add_xparam(9, DPB::PSPDS::OPTION_3_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_3_TRG_RAND_MIN, DPB::PSPDS::OP_3_TRG_RAND_MAX))
- #s's
- @actor.add_sparam(0, DPB::PSPDS::OPTION_3_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_TGR_RAND_MIN, DPB::PSPDS::OP_3_TGR_RAND_MAX))
- @actor.add_sparam(1, DPB::PSPDS::OPTION_3_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_3_GRD_RAND_MIN, DPB::PSPDS::OP_3_GRD_RAND_MAX))
- @actor.add_sparam(2, DPB::PSPDS::OPTION_3_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_3_REC_RAND_MIN, DPB::PSPDS::OP_3_REC_RAND_MAX))
- @actor.add_sparam(3, DPB::PSPDS::OPTION_3_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_3_PHA_RAND_MIN, DPB::PSPDS::OP_3_PHA_RAND_MAX))
- @actor.add_sparam(4, DPB::PSPDS::OPTION_3_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MCR_RAND_MIN, DPB::PSPDS::OP_3_MCR_RAND_MAX))
- @actor.add_sparam(5, DPB::PSPDS::OPTION_3_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_TCR_RAND_MIN, DPB::PSPDS::OP_3_TCR_RAND_MAX))
- @actor.add_sparam(6, DPB::PSPDS::OPTION_3_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_PDR_RAND_MIN, DPB::PSPDS::OP_3_PDR_RAND_MAX))
- @actor.add_sparam(7, DPB::PSPDS::OPTION_3_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MDR_RAND_MIN, DPB::PSPDS::OP_3_MDR_RAND_MAX))
- @actor.add_sparam(8, DPB::PSPDS::OPTION_3_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_FDR_RAND_MIN, DPB::PSPDS::OP_3_FDR_RAND_MAX))
- @actor.add_sparam(9, DPB::PSPDS::OPTION_3_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_EXR_RAND_MIN, DPB::PSPDS::OP_3_EXR_RAND_MAX))
- #dpbz'
- @actor.add_dpbzparam(2, 1)
- #end inc stat
- @help_window.set_text(DPB::PSPDS::ADDSTATTEXT)
- else
- @help_window.set_text(DPB::PSPDS::NOPOINTSTEXT)
- end
- @status_window.refresh
- @command_window.refresh
- wait(DPB::PSPDS::WAIT_TIME)
- @command_window.activate
- end
- def command_gain_mag
- index = @command_window.index
- @command_window.refresh
- if @actor.level_up_pts >= @actor.cost_caract(index)
- @actor.gain_lvl_pts(-@actor.cost_caract(index))
- #reg's
- @actor.add_param(0, DPB::PSPDS::OPTION_4_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MaxHP_RAND_MIN, DPB::PSPDS::OP_4_MaxHP_RAND_MAX))
- @actor.add_param(1, DPB::PSPDS::OPTION_4_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MaxMP_RAND_MIN, DPB::PSPDS::OP_4_MaxMP_RAND_MAX))
- @actor.add_param(2, DPB::PSPDS::OPTION_4_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_4_ATK_RAND_MIN, DPB::PSPDS::OP_4_ATK_RAND_MAX))
- @actor.add_param(3, DPB::PSPDS::OPTION_4_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_4_DEF_RAND_MIN, DPB::PSPDS::OP_4_DEF_RAND_MAX))
- @actor.add_param(4, DPB::PSPDS::OPTION_4_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MAT_RAND_MIN, DPB::PSPDS::OP_4_MAT_RAND_MAX))
- @actor.add_param(5, DPB::PSPDS::OPTION_4_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MDF_RAND_MIN, DPB::PSPDS::OP_4_MDF_RAND_MAX))
- @actor.add_param(6, DPB::PSPDS::OPTION_4_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_4_AGI_RAND_MIN, DPB::PSPDS::OP_4_AGI_RAND_MAX))
- @actor.add_param(7, DPB::PSPDS::OPTION_4_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_4_LUK_RAND_MIN, DPB::PSPDS::OP_4_LUK_RAND_MAX))
- #x's
- @actor.add_xparam(0, DPB::PSPDS::OPTION_4_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_4_HIT_RAND_MIN, DPB::PSPDS::OP_4_HIT_RAND_MAX))
- @actor.add_xparam(1, DPB::PSPDS::OPTION_4_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_4_EVA_RAND_MIN, DPB::PSPDS::OP_4_EVA_RAND_MAX))
- @actor.add_xparam(2, DPB::PSPDS::OPTION_4_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_4_CRI_RAND_MIN, DPB::PSPDS::OP_4_CRI_RAND_MAX))
- @actor.add_xparam(3, DPB::PSPDS::OPTION_4_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_4_CEV_RAND_MIN, DPB::PSPDS::OP_4_CEV_RAND_MAX))
- @actor.add_xparam(4, DPB::PSPDS::OPTION_4_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MEV_RAND_MIN, DPB::PSPDS::OP_4_MEV_RAND_MAX))
- @actor.add_xparam(5, DPB::PSPDS::OPTION_4_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MRF_RAND_MIN, DPB::PSPDS::OP_4_MRF_RAND_MAX))
- @actor.add_xparam(6, DPB::PSPDS::OPTION_4_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_4_CNT_RAND_MIN, DPB::PSPDS::OP_4_CNT_RAND_MAX))
- @actor.add_xparam(7, DPB::PSPDS::OPTION_4_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_4_HRG_RAND_MIN, DPB::PSPDS::OP_4_HRG_RAND_MAX))
- @actor.add_xparam(8, DPB::PSPDS::OPTION_4_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MRG_RAND_MIN, DPB::PSPDS::OP_4_MRG_RAND_MAX))
- @actor.add_xparam(9, DPB::PSPDS::OPTION_4_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_4_TRG_RAND_MIN, DPB::PSPDS::OP_4_TRG_RAND_MAX))
- #s's
- @actor.add_sparam(0, DPB::PSPDS::OPTION_4_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_TGR_RAND_MIN, DPB::PSPDS::OP_4_TGR_RAND_MAX))
- @actor.add_sparam(1, DPB::PSPDS::OPTION_4_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_4_GRD_RAND_MIN, DPB::PSPDS::OP_4_GRD_RAND_MAX))
- @actor.add_sparam(2, DPB::PSPDS::OPTION_4_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_4_REC_RAND_MIN, DPB::PSPDS::OP_4_REC_RAND_MAX))
- @actor.add_sparam(3, DPB::PSPDS::OPTION_4_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_4_PHA_RAND_MIN, DPB::PSPDS::OP_4_PHA_RAND_MAX))
- @actor.add_sparam(4, DPB::PSPDS::OPTION_4_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MCR_RAND_MIN, DPB::PSPDS::OP_4_MCR_RAND_MAX))
- @actor.add_sparam(5, DPB::PSPDS::OPTION_4_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_TCR_RAND_MIN, DPB::PSPDS::OP_4_TCR_RAND_MAX))
- @actor.add_sparam(6, DPB::PSPDS::OPTION_4_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_PDR_RAND_MIN, DPB::PSPDS::OP_4_PDR_RAND_MAX))
- @actor.add_sparam(7, DPB::PSPDS::OPTION_4_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MDR_RAND_MIN, DPB::PSPDS::OP_4_MDR_RAND_MAX))
- @actor.add_sparam(8, DPB::PSPDS::OPTION_4_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_FDR_RAND_MIN, DPB::PSPDS::OP_4_FDR_RAND_MAX))
- @actor.add_sparam(9, DPB::PSPDS::OPTION_4_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_EXR_RAND_MIN, DPB::PSPDS::OP_4_EXR_RAND_MAX))
- #dpbz'
- @actor.add_dpbzparam(3, 1)
- #end inc stat
- @help_window.set_text(DPB::PSPDS::ADDSTATTEXT)
- else
- @help_window.set_text(DPB::PSPDS::NOPOINTSTEXT)
- end
- @status_window.refresh
- @command_window.refresh
- wait(DPB::PSPDS::WAIT_TIME)
- @command_window.activate
- end
- def wait(time)
- t = 0
- loop do
- Graphics.update
- if t == time
- break
- end
- t += 1
- end
- end
- def update
- super
- @help_window.set_text(msg[@command_window.index])
- end
- def on_actor_change
- @status_window.actor = @actor
- @status_window.refresh
- @command_window.activate
- end
- end # class
- if DPB::PSPDS::INBATTLE
- #==============================================================================
- class Scene_Battle < Scene_Base # < Default setting. Only used when "INBATTLE" is true
- #==============================================================================
- alias old_update update
- def update
- old_update
- if $game_temp.actor_level_up[0]
- SceneManager.call(Scene_Level_Up)
- $game_temp.actor_level_up.delete_at(0)
- end
- end
- end#class
- end# if
- if DPB::PSPDS::ONMAP
- #==============================================================================
- class Scene_Map < Scene_Base # < Only used if "ONMAP" is true
- #==============================================================================
- alias old_update update
- def update
- old_update
- if $game_temp.actor_level_up[0]
- SceneManager.call(Scene_Level_Up)
- $game_temp.actor_level_up.delete_at(0)
- end
- end
- end# class
- end# if
- #==============================================================================
- class Game_Actor < Game_Battler
- #==============================================================================
- attr_reader :level_up_pts
- attr_reader :atti_ptz
- attr_reader :spirit_ptz
- alias old_initialize initialize
- def initialize(actor_id)
- old_initialize(actor_id)
- @level_up_pts = 0
- @atti_ptz = 0
- @spirit_ptz = 0
- end
- def cost_caract(param)
- tbl = [DPB::PSPDS::OPTION_1_COST,
- DPB::PSPDS::OPTION_2_COST,
- DPB::PSPDS::OPTION_3_COST,
- DPB::PSPDS::OPTION_4_COST]
- return tbl[param]
- end
- def gain_lvl_pts(value)
- @level_up_pts += value
- if @level_up_pts < 0
- @level_up_pts = 0
- end
- end
- def gain_atti_ptz(value)
- @atti_ptz += value
- if @atti_ptz < 0
- @atti_ptz = 0
- end
- end
- def gain_spirit_ptz(value)
- @spirit_ptz += value
- if @spirit_ptz < 0
- @spirit_ptz = 0
- end
- end
- def param_base(param_id)
- if DPB::PSPDS::USE_DEFAULT_PARAM_GAIN
- return self.class.params[param_id, @level]
- else
- return self.class.params[param_id, 1]
- end
- end
- if DPB::PSPDS::ONLY_GAIN_POINTS_ON_LEVELS
- def level_up
- @level += 1
- $game_temp.actor_level_up.push(self) unless $game_temp.actor_level_up.include?(self)
- self.class.learnings.each do |learning|
- learn_skill(learning.skill_id) if learning.level == @level
- end
- if DPB::PSPDS::BONUS_POINTS_ON_LEVELS
- return unless DPB::PSPDS::LEVELS.include?(@level)
- gain_lvl_pts($bonuspts)
- else
- end
- end
- else
- def level_up
- @level += 1
- $game_temp.actor_level_up.push(self) unless $game_temp.actor_level_up.include?(self)
- self.class.learnings.each do |learning|
- learn_skill(learning.skill_id) if learning.level == @level
- end
- gain_lvl_pts($pts)
- if DPB::PSPDS::ATTILEVZ.include?(@level)
- gain_atti_ptz($attiptz)
- end
- if DPB::PSPDS::BONUS_POINTS_ON_LEVELS
- return unless DPB::PSPDS::LEVELS.include?(@level)
- gain_lvl_pts($bonuspts)
- else
- end
- end
- end
- end # Game_Actor
- #==============================================================================
- class Game_Enemy < Game_Battler
- #==============================================================================
- def pts
- return enemy.pts_gain
- end
- def atti
- return enemy.atti_gain
- end
- def spirit
- return enemy.spirit_gain
- end
- end # Game_Enemy
- #==============================================================================
- class Game_Troop < Game_Unit
- #==============================================================================
- def pts_total
- dead_members.inject(0) {|r, enemy| r += enemy.pts }
- end
- def atti_total
- dead_members.inject(0) {|r, enemy| r += enemy.atti }
- end
- def spirit_total
- dead_members.inject(0) {|r, enemy| r += enemy.spirit }
- end
- end # Game_Troop
- #==============================================================================
- class Game_Temp
- #==============================================================================
- attr_accessor :actor_level_up
- alias pspds_initialize initialize
- def initialize
- pspds_initialize
- @actor_level_up = []
- end
- end # class
- #==============================================================================
- class Game_Interpreter
- #==============================================================================
- def gain_pts(actor_id, value)
- actor = $game_actors[actor_id]
- return if actor == nil
- actor.gain_lvl_pts(value)
- end
- def gain_atti(actor_id, value)
- actor = $game_actors[actor_id]
- return if actor == nil
- actor.gain_atti_ptz(value)
- end
- def gain_spirit(actor_id, value)
- actor = $game_actors[actor_id]
- return if actor == nil
- actor.gain_spirit_ptz(value)
- end
- def inc_vit(actor_id, value)
- actor = $game_actors[actor_id]
- return if actor == nil
- t = 1
- loop do
- actor.add_param(0, DPB::PSPDS::OPTION_1_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxHP_RAND_MIN, DPB::PSPDS::OP_1_MaxHP_RAND_MAX))
- actor.add_param(1, DPB::PSPDS::OPTION_1_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxMP_RAND_MIN, DPB::PSPDS::OP_1_MaxMP_RAND_MAX))
- actor.add_param(2, DPB::PSPDS::OPTION_1_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_ATK_RAND_MIN, DPB::PSPDS::OP_1_ATK_RAND_MAX))
- actor.add_param(3, DPB::PSPDS::OPTION_1_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_DEF_RAND_MIN, DPB::PSPDS::OP_1_DEF_RAND_MAX))
- actor.add_param(4, DPB::PSPDS::OPTION_1_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MAT_RAND_MIN, DPB::PSPDS::OP_1_MAT_RAND_MAX))
- actor.add_param(5, DPB::PSPDS::OPTION_1_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MDF_RAND_MIN, DPB::PSPDS::OP_1_MDF_RAND_MAX))
- actor.add_param(6, DPB::PSPDS::OPTION_1_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_AGI_RAND_MIN, DPB::PSPDS::OP_1_AGI_RAND_MAX))
- actor.add_param(7, DPB::PSPDS::OPTION_1_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_LUK_RAND_MIN, DPB::PSPDS::OP_1_LUK_RAND_MAX))
- #x's
- actor.add_xparam(0, DPB::PSPDS::OPTION_1_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HIT_RAND_MIN, DPB::PSPDS::OP_1_HIT_RAND_MAX))
- actor.add_xparam(1, DPB::PSPDS::OPTION_1_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_1_EVA_RAND_MIN, DPB::PSPDS::OP_1_EVA_RAND_MAX))
- actor.add_xparam(2, DPB::PSPDS::OPTION_1_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CRI_RAND_MIN, DPB::PSPDS::OP_1_CRI_RAND_MAX))
- actor.add_xparam(3, DPB::PSPDS::OPTION_1_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CEV_RAND_MIN, DPB::PSPDS::OP_1_CEV_RAND_MAX))
- actor.add_xparam(4, DPB::PSPDS::OPTION_1_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MEV_RAND_MIN, DPB::PSPDS::OP_1_MEV_RAND_MAX))
- actor.add_xparam(5, DPB::PSPDS::OPTION_1_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRF_RAND_MIN, DPB::PSPDS::OP_1_MRF_RAND_MAX))
- actor.add_xparam(6, DPB::PSPDS::OPTION_1_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CNT_RAND_MIN, DPB::PSPDS::OP_1_CNT_RAND_MAX))
- actor.add_xparam(7, DPB::PSPDS::OPTION_1_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HRG_RAND_MIN, DPB::PSPDS::OP_1_HRG_RAND_MAX))
- actor.add_xparam(8, DPB::PSPDS::OPTION_1_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRG_RAND_MIN, DPB::PSPDS::OP_1_MRG_RAND_MAX))
- actor.add_xparam(9, DPB::PSPDS::OPTION_1_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TRG_RAND_MIN, DPB::PSPDS::OP_1_TRG_RAND_MAX))
- #s's
- actor.add_sparam(0, DPB::PSPDS::OPTION_1_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TGR_RAND_MIN, DPB::PSPDS::OP_1_TGR_RAND_MAX))
- actor.add_sparam(1, DPB::PSPDS::OPTION_1_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_1_GRD_RAND_MIN, DPB::PSPDS::OP_1_GRD_RAND_MAX))
- actor.add_sparam(2, DPB::PSPDS::OPTION_1_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_1_REC_RAND_MIN, DPB::PSPDS::OP_1_REC_RAND_MAX))
- actor.add_sparam(3, DPB::PSPDS::OPTION_1_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_1_PHA_RAND_MIN, DPB::PSPDS::OP_1_PHA_RAND_MAX))
- actor.add_sparam(4, DPB::PSPDS::OPTION_1_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MCR_RAND_MIN, DPB::PSPDS::OP_1_MCR_RAND_MAX))
- actor.add_sparam(5, DPB::PSPDS::OPTION_1_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TCR_RAND_MIN, DPB::PSPDS::OP_1_TCR_RAND_MAX))
- actor.add_sparam(6, DPB::PSPDS::OPTION_1_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_PDR_RAND_MIN, DPB::PSPDS::OP_1_PDR_RAND_MAX))
- actor.add_sparam(7, DPB::PSPDS::OPTION_1_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MDR_RAND_MIN, DPB::PSPDS::OP_1_MDR_RAND_MAX))
- actor.add_sparam(8, DPB::PSPDS::OPTION_1_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_FDR_RAND_MIN, DPB::PSPDS::OP_1_FDR_RAND_MAX))
- actor.add_sparam(9, DPB::PSPDS::OPTION_1_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_1_EXR_RAND_MIN, DPB::PSPDS::OP_1_EXR_RAND_MAX))
- #dpbz'
- actor.add_dpbzparam(0, 1)
- if t == value
- break
- end
- t += 1
- end
- end
- def inc_str(actor_id, value)
- actor = $game_actors[actor_id]
- return if actor == nil
- t = 1
- loop do
- #reg's
- actor.add_param(0, DPB::PSPDS::OPTION_2_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxHP_RAND_MIN, DPB::PSPDS::OP_1_MaxHP_RAND_MAX))
- actor.add_param(1, DPB::PSPDS::OPTION_2_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MaxMP_RAND_MIN, DPB::PSPDS::OP_1_MaxMP_RAND_MAX))
- actor.add_param(2, DPB::PSPDS::OPTION_2_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_ATK_RAND_MIN, DPB::PSPDS::OP_1_ATK_RAND_MAX))
- actor.add_param(3, DPB::PSPDS::OPTION_2_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_DEF_RAND_MIN, DPB::PSPDS::OP_1_DEF_RAND_MAX))
- actor.add_param(4, DPB::PSPDS::OPTION_2_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MAT_RAND_MIN, DPB::PSPDS::OP_1_MAT_RAND_MAX))
- actor.add_param(5, DPB::PSPDS::OPTION_2_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MDF_RAND_MIN, DPB::PSPDS::OP_1_MDF_RAND_MAX))
- actor.add_param(6, DPB::PSPDS::OPTION_2_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_AGI_RAND_MIN, DPB::PSPDS::OP_1_AGI_RAND_MAX))
- actor.add_param(7, DPB::PSPDS::OPTION_2_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_1_LUK_RAND_MIN, DPB::PSPDS::OP_1_LUK_RAND_MAX))
- #x's
- actor.add_xparam(0, DPB::PSPDS::OPTION_2_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HIT_RAND_MIN, DPB::PSPDS::OP_1_HIT_RAND_MAX))
- actor.add_xparam(1, DPB::PSPDS::OPTION_2_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_1_EVA_RAND_MIN, DPB::PSPDS::OP_1_EVA_RAND_MAX))
- actor.add_xparam(2, DPB::PSPDS::OPTION_2_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CRI_RAND_MIN, DPB::PSPDS::OP_1_CRI_RAND_MAX))
- actor.add_xparam(3, DPB::PSPDS::OPTION_2_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CEV_RAND_MIN, DPB::PSPDS::OP_1_CEV_RAND_MAX))
- actor.add_xparam(4, DPB::PSPDS::OPTION_2_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MEV_RAND_MIN, DPB::PSPDS::OP_1_MEV_RAND_MAX))
- actor.add_xparam(5, DPB::PSPDS::OPTION_2_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRF_RAND_MIN, DPB::PSPDS::OP_1_MRF_RAND_MAX))
- actor.add_xparam(6, DPB::PSPDS::OPTION_2_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_1_CNT_RAND_MIN, DPB::PSPDS::OP_1_CNT_RAND_MAX))
- actor.add_xparam(7, DPB::PSPDS::OPTION_2_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_HRG_RAND_MIN, DPB::PSPDS::OP_1_HRG_RAND_MAX))
- actor.add_xparam(8, DPB::PSPDS::OPTION_2_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_MRG_RAND_MIN, DPB::PSPDS::OP_1_MRG_RAND_MAX))
- actor.add_xparam(9, DPB::PSPDS::OPTION_2_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_1_TRG_RAND_MIN, DPB::PSPDS::OP_1_TRG_RAND_MAX))
- #s's
- actor.add_sparam(0, DPB::PSPDS::OPTION_2_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_TGR_RAND_MIN, DPB::PSPDS::OP_2_TGR_RAND_MAX))
- actor.add_sparam(1, DPB::PSPDS::OPTION_2_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_2_GRD_RAND_MIN, DPB::PSPDS::OP_2_GRD_RAND_MAX))
- actor.add_sparam(2, DPB::PSPDS::OPTION_2_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_2_REC_RAND_MIN, DPB::PSPDS::OP_2_REC_RAND_MAX))
- actor.add_sparam(3, DPB::PSPDS::OPTION_2_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_2_PHA_RAND_MIN, DPB::PSPDS::OP_2_PHA_RAND_MAX))
- actor.add_sparam(4, DPB::PSPDS::OPTION_2_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_MCR_RAND_MIN, DPB::PSPDS::OP_2_MCR_RAND_MAX))
- actor.add_sparam(5, DPB::PSPDS::OPTION_2_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_TCR_RAND_MIN, DPB::PSPDS::OP_2_TCR_RAND_MAX))
- actor.add_sparam(6, DPB::PSPDS::OPTION_2_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_PDR_RAND_MIN, DPB::PSPDS::OP_2_PDR_RAND_MAX))
- actor.add_sparam(7, DPB::PSPDS::OPTION_2_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_MDR_RAND_MIN, DPB::PSPDS::OP_2_MDR_RAND_MAX))
- actor.add_sparam(8, DPB::PSPDS::OPTION_2_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_FDR_RAND_MIN, DPB::PSPDS::OP_2_FDR_RAND_MAX))
- actor.add_sparam(9, DPB::PSPDS::OPTION_2_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_2_EXR_RAND_MIN, DPB::PSPDS::OP_2_EXR_RAND_MAX))
- #dpbz'
- actor.add_dpbzparam(1, 1)
- if t == value
- break
- end
- t += 1
- end
- end
- def inc_dex(actor_id, value)
- actor = $game_actors[actor_id]
- return if actor == nil
- t = 1
- loop do
- #reg's
- actor.add_param(0, DPB::PSPDS::OPTION_3_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MaxHP_RAND_MIN, DPB::PSPDS::OP_1_MaxHP_RAND_MAX))
- actor.add_param(1, DPB::PSPDS::OPTION_3_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MaxMP_RAND_MIN, DPB::PSPDS::OP_1_MaxMP_RAND_MAX))
- actor.add_param(2, DPB::PSPDS::OPTION_3_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_3_ATK_RAND_MIN, DPB::PSPDS::OP_3_ATK_RAND_MAX))
- actor.add_param(3, DPB::PSPDS::OPTION_3_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_3_DEF_RAND_MIN, DPB::PSPDS::OP_3_DEF_RAND_MAX))
- actor.add_param(4, DPB::PSPDS::OPTION_3_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MAT_RAND_MIN, DPB::PSPDS::OP_3_MAT_RAND_MAX))
- actor.add_param(5, DPB::PSPDS::OPTION_3_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MDF_RAND_MIN, DPB::PSPDS::OP_3_MDF_RAND_MAX))
- actor.add_param(6, DPB::PSPDS::OPTION_3_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_3_AGI_RAND_MIN, DPB::PSPDS::OP_3_AGI_RAND_MAX))
- actor.add_param(7, DPB::PSPDS::OPTION_3_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_3_LUK_RAND_MIN, DPB::PSPDS::OP_3_LUK_RAND_MAX))
- #x's
- actor.add_xparam(0, DPB::PSPDS::OPTION_3_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_3_HIT_RAND_MIN, DPB::PSPDS::OP_3_HIT_RAND_MAX))
- actor.add_xparam(1, DPB::PSPDS::OPTION_3_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_3_EVA_RAND_MIN, DPB::PSPDS::OP_3_EVA_RAND_MAX))
- actor.add_xparam(2, DPB::PSPDS::OPTION_3_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_3_CRI_RAND_MIN, DPB::PSPDS::OP_3_CRI_RAND_MAX))
- actor.add_xparam(3, DPB::PSPDS::OPTION_3_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_3_CEV_RAND_MIN, DPB::PSPDS::OP_3_CEV_RAND_MAX))
- actor.add_xparam(4, DPB::PSPDS::OPTION_3_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MEV_RAND_MIN, DPB::PSPDS::OP_3_MEV_RAND_MAX))
- actor.add_xparam(5, DPB::PSPDS::OPTION_3_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MRF_RAND_MIN, DPB::PSPDS::OP_3_MRF_RAND_MAX))
- actor.add_xparam(6, DPB::PSPDS::OPTION_3_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_3_CNT_RAND_MIN, DPB::PSPDS::OP_3_CNT_RAND_MAX))
- actor.add_xparam(7, DPB::PSPDS::OPTION_3_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_3_HRG_RAND_MIN, DPB::PSPDS::OP_3_HRG_RAND_MAX))
- actor.add_xparam(8, DPB::PSPDS::OPTION_3_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MRG_RAND_MIN, DPB::PSPDS::OP_3_MRG_RAND_MAX))
- actor.add_xparam(9, DPB::PSPDS::OPTION_3_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_3_TRG_RAND_MIN, DPB::PSPDS::OP_3_TRG_RAND_MAX))
- #s's
- actor.add_sparam(0, DPB::PSPDS::OPTION_3_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_TGR_RAND_MIN, DPB::PSPDS::OP_3_TGR_RAND_MAX))
- actor.add_sparam(1, DPB::PSPDS::OPTION_3_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_3_GRD_RAND_MIN, DPB::PSPDS::OP_3_GRD_RAND_MAX))
- actor.add_sparam(2, DPB::PSPDS::OPTION_3_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_3_REC_RAND_MIN, DPB::PSPDS::OP_3_REC_RAND_MAX))
- actor.add_sparam(3, DPB::PSPDS::OPTION_3_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_3_PHA_RAND_MIN, DPB::PSPDS::OP_3_PHA_RAND_MAX))
- actor.add_sparam(4, DPB::PSPDS::OPTION_3_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MCR_RAND_MIN, DPB::PSPDS::OP_3_MCR_RAND_MAX))
- actor.add_sparam(5, DPB::PSPDS::OPTION_3_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_TCR_RAND_MIN, DPB::PSPDS::OP_3_TCR_RAND_MAX))
- actor.add_sparam(6, DPB::PSPDS::OPTION_3_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_PDR_RAND_MIN, DPB::PSPDS::OP_3_PDR_RAND_MAX))
- actor.add_sparam(7, DPB::PSPDS::OPTION_3_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_MDR_RAND_MIN, DPB::PSPDS::OP_3_MDR_RAND_MAX))
- actor.add_sparam(8, DPB::PSPDS::OPTION_3_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_FDR_RAND_MIN, DPB::PSPDS::OP_3_FDR_RAND_MAX))
- actor.add_sparam(9, DPB::PSPDS::OPTION_3_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_3_EXR_RAND_MIN, DPB::PSPDS::OP_3_EXR_RAND_MAX))
- #dpbz'
- actor.add_dpbzparam(2, 1)
- if t == value
- break
- end
- t += 1
- end
- end
- def inc_mag(actor_id, value)
- actor = $game_actors[actor_id]
- return if actor == nil
- t = 1
- loop do
- #reg's
- actor.add_param(0, DPB::PSPDS::OPTION_4_MaxHP_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MaxHP_RAND_MIN, DPB::PSPDS::OP_4_MaxHP_RAND_MAX))
- actor.add_param(1, DPB::PSPDS::OPTION_4_MaxMP_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MaxMP_RAND_MIN, DPB::PSPDS::OP_4_MaxMP_RAND_MAX))
- actor.add_param(2, DPB::PSPDS::OPTION_4_ATK_GAIN + dpbz_randy(DPB::PSPDS::OP_4_ATK_RAND_MIN, DPB::PSPDS::OP_4_ATK_RAND_MAX))
- actor.add_param(3, DPB::PSPDS::OPTION_4_DEF_GAIN + dpbz_randy(DPB::PSPDS::OP_4_DEF_RAND_MIN, DPB::PSPDS::OP_4_DEF_RAND_MAX))
- actor.add_param(4, DPB::PSPDS::OPTION_4_MAT_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MAT_RAND_MIN, DPB::PSPDS::OP_4_MAT_RAND_MAX))
- actor.add_param(5, DPB::PSPDS::OPTION_4_MDF_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MDF_RAND_MIN, DPB::PSPDS::OP_4_MDF_RAND_MAX))
- actor.add_param(6, DPB::PSPDS::OPTION_4_AGI_GAIN + dpbz_randy(DPB::PSPDS::OP_4_AGI_RAND_MIN, DPB::PSPDS::OP_4_AGI_RAND_MAX))
- actor.add_param(7, DPB::PSPDS::OPTION_4_LUK_GAIN + dpbz_randy(DPB::PSPDS::OP_4_LUK_RAND_MIN, DPB::PSPDS::OP_4_LUK_RAND_MAX))
- #x's
- actor.add_xparam(0, DPB::PSPDS::OPTION_4_HIT_GAIN + dpbz_randy(DPB::PSPDS::OP_4_HIT_RAND_MIN, DPB::PSPDS::OP_4_HIT_RAND_MAX))
- actor.add_xparam(1, DPB::PSPDS::OPTION_4_EVA_GAIN + dpbz_randy(DPB::PSPDS::OP_4_EVA_RAND_MIN, DPB::PSPDS::OP_4_EVA_RAND_MAX))
- actor.add_xparam(2, DPB::PSPDS::OPTION_4_CRI_GAIN + dpbz_randy(DPB::PSPDS::OP_4_CRI_RAND_MIN, DPB::PSPDS::OP_4_CRI_RAND_MAX))
- actor.add_xparam(3, DPB::PSPDS::OPTION_4_CEV_GAIN + dpbz_randy(DPB::PSPDS::OP_4_CEV_RAND_MIN, DPB::PSPDS::OP_4_CEV_RAND_MAX))
- actor.add_xparam(4, DPB::PSPDS::OPTION_4_MEV_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MEV_RAND_MIN, DPB::PSPDS::OP_4_MEV_RAND_MAX))
- actor.add_xparam(5, DPB::PSPDS::OPTION_4_MRF_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MRF_RAND_MIN, DPB::PSPDS::OP_4_MRF_RAND_MAX))
- actor.add_xparam(6, DPB::PSPDS::OPTION_4_CNT_GAIN + dpbz_randy(DPB::PSPDS::OP_4_CNT_RAND_MIN, DPB::PSPDS::OP_4_CNT_RAND_MAX))
- actor.add_xparam(7, DPB::PSPDS::OPTION_4_HRG_GAIN + dpbz_randy(DPB::PSPDS::OP_4_HRG_RAND_MIN, DPB::PSPDS::OP_4_HRG_RAND_MAX))
- actor.add_xparam(8, DPB::PSPDS::OPTION_4_MRG_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MRG_RAND_MIN, DPB::PSPDS::OP_4_MRG_RAND_MAX))
- actor.add_xparam(9, DPB::PSPDS::OPTION_4_TRG_GAIN + dpbz_randy(DPB::PSPDS::OP_4_TRG_RAND_MIN, DPB::PSPDS::OP_4_TRG_RAND_MAX))
- #s's
- actor.add_sparam(0, DPB::PSPDS::OPTION_4_TGR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_TGR_RAND_MIN, DPB::PSPDS::OP_4_TGR_RAND_MAX))
- actor.add_sparam(1, DPB::PSPDS::OPTION_4_GRD_GAIN + dpbz_randy(DPB::PSPDS::OP_4_GRD_RAND_MIN, DPB::PSPDS::OP_4_GRD_RAND_MAX))
- actor.add_sparam(2, DPB::PSPDS::OPTION_4_REC_GAIN + dpbz_randy(DPB::PSPDS::OP_4_REC_RAND_MIN, DPB::PSPDS::OP_4_REC_RAND_MAX))
- actor.add_sparam(3, DPB::PSPDS::OPTION_4_PHA_GAIN + dpbz_randy(DPB::PSPDS::OP_4_PHA_RAND_MIN, DPB::PSPDS::OP_4_PHA_RAND_MAX))
- actor.add_sparam(4, DPB::PSPDS::OPTION_4_MCR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MCR_RAND_MIN, DPB::PSPDS::OP_4_MCR_RAND_MAX))
- actor.add_sparam(5, DPB::PSPDS::OPTION_4_TCR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_TCR_RAND_MIN, DPB::PSPDS::OP_4_TCR_RAND_MAX))
- actor.add_sparam(6, DPB::PSPDS::OPTION_4_PDR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_PDR_RAND_MIN, DPB::PSPDS::OP_4_PDR_RAND_MAX))
- actor.add_sparam(7, DPB::PSPDS::OPTION_4_MDR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_MDR_RAND_MIN, DPB::PSPDS::OP_4_MDR_RAND_MAX))
- actor.add_sparam(8, DPB::PSPDS::OPTION_4_FDR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_FDR_RAND_MIN, DPB::PSPDS::OP_4_FDR_RAND_MAX))
- actor.add_sparam(9, DPB::PSPDS::OPTION_4_EXR_GAIN + dpbz_randy(DPB::PSPDS::OP_4_EXR_RAND_MIN, DPB::PSPDS::OP_4_EXR_RAND_MAX))
- #dpbz'
- actor.add_dpbzparam(3, 1)
- if t == value
- break
- end
- t += 1
- end
- end
- end# class
- #==============================================================================
- class Window_Level_upCommand < Window_Command
- #==============================================================================
- def initialize
- super(0, 300)
- @actor = $game_temp.actor_level_up[0]
- @@last_command_symbol = nil
- select_last
- self.opacity = 0
- end
- def window_width
- return (Graphics.width - 24) / 4.15 + (DPB::PSPDS::COMMAND_COLUMN_EXTRA_WIDTH)
- end
- def window_height
- return 344
- end
- def visible_line_number
- item_max
- end
- def make_command_list
- for command in DPB::PSPDS::COMMANDS
- case command
- when :Vitality
- add_command("", :gain_vit, true)
- when :Strength
- add_command("", :gain_str, true)
- when :Dexterity
- add_command("", :gain_dex, true)
- when :Magic
- add_command("", :gain_mag, true)
- end
- end
- end
- def process_ok
- @@last_command_symbol = current_symbol
- super
- end
- def select_last
- select_symbol(@@last_command_symbol)
- end
- end#class
- #==============================================================================
- class Window_Status_Level_up < Window_Selectable
- #==============================================================================
- def initialize(actor)
- super(-50, -50, window_width, window_height)
- contents.font.size = DPB::PSPDS::FONTSIZE
- @actor = actor
- refresh
- activate
- end
- def window_width; return Graphics.width - 0; end
- def window_height; return Graphics.height - 0; end
- def actor=(actor)
- return if @actor == actor
- @actor = actor
- refresh
- end
- def refresh
- contents.clear
- draw_block1(line_height * 1)
- draw_block2(line_height * 1)
- contents.font.size = DPB::PSPDS::FONTSIZE
- end
- def draw_block1(y)
- draw_actor_face(@actor, (window_width - 24) / 2.5, 0)
- if DPB::PSPDS::DRAW_ACTOR_GRAPHIC
- draw_actor_graphic(@actor, DPB::PSPDS::DAG_X, DPB::PSPDS::DAG_Y)#, 50)
- end
- end
- def draw_block2(y)
- draw_basic_info(32, y)
- end
- def draw_horz_line(y)
- line_y = y + line_height / 2 - 1
- contents.fill_rect(0, line_y, contents_width, 2, line_color)
- end
- def line_color
- color = normal_color
- color.alpha = 48
- color
- end
- end
- def draw_parameters(x, y)
- 6.times {|i| draw_actor_param(@actor, x, y + 7 + line_height * i, i + 2) }
- end
- if DPB::PSPDS::DRAW_ALL_COLUMNS
- def draw_parameter_graph
- dy = line_height * 3/2
- maximum = 1
- minimum = @actor.param_max(2)
- for i in 2..7
- maximum = [@actor.param(i), maximum].max
- minimum = [@actor.param(i), minimum].min
- end
- maximum += minimum * 0.33 unless maximum == minimum
- for i in 2..7
- rate = calculate_rate(maximum, minimum, i)
- dy = line_height * i - line_height/2
- draw_param_gauge(i, dy, rate)
- self.contents.font.size = DPB::PSPDS::PARAMFONTSIZE
- change_color(system_color)
- draw_text(5, dy + 140, contents.width - 56, line_height, Vocab::param(i))
- dw = (contents.width - 48) * rate - 8
- change_color(normal_color)
- draw_text((window_width - 24) / 4 - 24, dy + 140, dw-8, line_height, @actor.param(i))#.group, 2)
- end
- end
- else
- def draw_parameter_graph
- dy = line_height * 3/2
- maximum = 1
- minimum = @actor.param_max(2)
- for i in 2..7
- maximum = [@actor.param(i), maximum].max
- minimum = [@actor.param(i), minimum].min
- end
- maximum += minimum * 0.33 unless maximum == minimum
- for i in 2..7
- rate = calculate_rate(maximum, minimum, i)
- dy = line_height * i - line_height/2
- draw_param_gauge(i, dy, rate)
- self.contents.font.size = DPB::PSPDS::PARAMFONTSIZE
- change_color(system_color)
- draw_text(5, dy + 140, contents.width - 56, line_height, Vocab::param(i))
- dw = (contents.width - 48) * rate - 8
- change_color(normal_color)
- draw_text((window_width - 60) / 3 - 24, dy + 140, dw-8, line_height, @actor.param(i))#.group, 2)
- end
- end
- end#if
- def calculate_rate(maximum, minimum, param_id)
- return 1.0 if maximum == minimum
- rate = (@actor.param(param_id).to_f - minimum) / (maximum - minimum).to_f
- rate *= 0.67
- rate += 0.33
- return rate
- end
- if DPB::PSPDS::DRAW_ALL_COLUMNS
- def draw_param_gauge(param_id, dy, rate)
- dw = (window_width - 24) / 4 - 12
- colour1 = param_gauge1(param_id)
- colour2 = param_gauge2(param_id)
- draw_gauge(5, dy + 140, dw, rate, colour1, colour2)
- end
- else
- def draw_param_gauge(param_id, dy, rate)
- dw = (window_width - 24) / 3 - 24
- colour1 = param_gauge1(param_id)
- colour2 = param_gauge2(param_id)
- draw_gauge(5, dy + 140, dw, rate, colour1, colour2)
- end
- end
- def param_gauge1(param_id)
- return DPB::PSPDS::PARAM_COLOUR[param_id][1]
- end
- def param_gauge2(param_id)
- return DPB::PSPDS::PARAM_COLOUR[param_id][2]
- end
- def draw_basic_info(x, y)
- draw_actor_icons(@actor, (window_width - 24) / 2.5, y + line_height * 3)
- contents.font.size = DPB::PSPDS::FONTSIZE
- if DPB::PSPDS::DRAW_PARAM_GAUGES
- draw_parameter_graph
- if DPB::PSPDS::DRAW_ALL_COLUMNS
- draw_actor_hp(@actor, 5, y+106 + line_height * 0,(window_width - 24) / 4 - 12)
- draw_actor_mp(@actor, 5, y+106 + line_height * 1,(window_width - 24) / 4 - 12)
- else
- draw_actor_hp(@actor, 5, y+106 + line_height * 0,(window_width - 24) / 3 - 24)
- draw_actor_mp(@actor, 5, y+106 + line_height * 1,(window_width - 24) / 3 - 24)
- end
- else
- draw_properties_paramcolumn
- end
- contents.font.size = DPB::PSPDS::PROPFONTSIZE
- draw_horz_line(line_height * 4)
- draw_horz_line(Graphics.height - line_height * 4)
- draw_new_stats_column
- draw_properties_column1
- draw_properties_column2
- draw_points_column
- if DPB::PSPDS::DRAW_ALL_COLUMNS
- draw_properties_column3
- end
- reset_font_settings
- end
- def draw_points_column
- dx = (window_width - 24) / 5 * 4
- dw = (window_width - 24) / 5
- dy = 0
- for property in DPB::PSPDS::POINTS_COLUMN
- dy = draw_property(property, dx, dy, dw)
- end
- end
- def draw_new_stats_column
- dx = 0
- dw = (window_width - 24) / 5
- dy = 0
- for property in DPB::PSPDS::NEW_STATS_COLUMN
- dy = draw_property(property, dx, dy, dw)
- end
- end
- if DPB::PSPDS::DRAW_ALL_COLUMNS
- def draw_properties_column1
- dx = 5 + (window_width - 24) / 4
- dw = (window_width - 24) / 3.6 - 24
- dy = 130
- for property in DPB::PSPDS::PROPERTIES_COLUMN1
- dy = draw_property(property, dx, dy, dw)
- end
- end
- def draw_properties_column2
- dx = 5 + (window_width - 24) / 2
- dw = (window_width - 24) / 3.6 - 24
- dy = 130
- for property in DPB::PSPDS::PROPERTIES_COLUMN2
- dy = draw_property(property, dx, dy, dw)
- end
- end
- def draw_properties_column3
- dx = 5 + (window_width - 24) / 2 + (window_width / 4.15)
- dw = (window_width - 24) / 3.6 - 24
- dy = 130
- for property in DPB::PSPDS::PROPERTIES_COLUMN3
- dy = draw_property(property, dx, dy, dw)
- end
- end
- def draw_properties_paramcolumn
- dx = 5
- dw = (window_width - 24) / 3.6 - 24
- dy = 130
- for property in DPB::PSPDS::PROPERTIES_PARAMCOLUMN
- dy = draw_property(property, dx, dy, dw)
- end
- end
- else # if
- def draw_properties_column1
- dx = 5 + (window_width - 24) / 3
- dw = (window_width - 24) / 3 - 12
- dy = 130
- for property in DPB::PSPDS::PROPERTIES_COLUMN1
- dy = draw_property(property, dx, dy, dw)
- end
- end
- def draw_properties_column2
- dx = 5 + (window_width - 24) / 3 * 2
- dw = (window_width - 24) / 3 - 12
- dy = 130
- for property in DPB::PSPDS::PROPERTIES_COLUMN2
- dy = draw_property(property, dx, dy, dw)
- end
- end
- def draw_properties_paramcolumn
- dx = 5
- dw = (window_width - 24) / 3 - 12
- dy = 130
- for property in DPB::PSPDS::PROPERTIES_PARAMCOLUMN
- dy = draw_property(property, dx, dy, dw)
- end
- end
- end# if
- def draw_property(property, dx, dy, dw)
- fmt = "%1.2f%%"
- dpb = "%1.0f"
- case property[0]
- when :vit
- value = sprintf(dpb, @actor.vit)
- when :str
- value = sprintf(dpb, @actor.str)
- when :dex
- value = sprintf(dpb, @actor.dex)
- when :mag
- value = sprintf(dpb, @actor.mag)
- when :points
- value = @actor.level_up_pts
- when :spirit
- value = @actor.spirit_ptz
- when :atklvl
- return dy unless $imported["DPB-PSPDS-ATL-DFL"]
- value = @actor.atl.to_i
- when :deflvl
- return dy unless $imported["DPB-PSPDS-ATL-DFL"]
- value = @actor.dfl.to_i
- when :affinity
- return dy unless DPB::PSPDS::USE_ATTRIBUTE_POINTS
- value = @actor.atti_ptz
- when :yanflyjp
- return dy unless $imported["YEA-JPManager"]
- value = @actor.jp
- when :mhp
- value = sprintf(dpb, @actor.mhp)
- when :mmp
- value = sprintf(dpb, @actor.mmp)
- when :atk
- value = sprintf(dpb, @actor.atk)
- when :def
- value = sprintf(dpb, @actor.def)
- when :mat
- value = sprintf(dpb, @actor.mat)
- when :mdf
- value = sprintf(dpb, @actor.mdf)
- when :agi
- value = sprintf(dpb, @actor.agi)
- when :luk
- value = sprintf(dpb, @actor.luk)
- when :atkrt
- value = sprintf(dpb, @actor.atk_speed)
- when :atktimes
- value = sprintf(dpb, @actor.atk_times_add)
- when :actiontimes
- value = @actor.action_plus_set
- when :hit
- value = sprintf(fmt, @actor.hit * 100)
- when :eva
- value = sprintf(fmt, @actor.eva * 100)
- when :cri
- value = sprintf(fmt, @actor.cri * 100)
- when :cev
- value = sprintf(fmt, @actor.cev * 100)
- when :mev
- value = sprintf(fmt, @actor.mev * 100)
- when :mrf
- value = sprintf(fmt, @actor.mrf * 100)
- when :cnt
- value = sprintf(fmt, @actor.cnt * 100)
- when :hrg
- value = sprintf(fmt, @actor.hrg * 100)
- when :mrg
- value = sprintf(fmt, @actor.mrg * 100)
- when :trg
- value = sprintf(fmt, @actor.trg * 100)
- when :tgr
- value = sprintf(fmt, @actor.tgr * 100)
- when :grd
- value = sprintf(fmt, @actor.grd * 100)
- when :rec
- value = sprintf(fmt, @actor.rec * 100)
- when :pha
- value = sprintf(fmt, @actor.pha * 100)
- when :mcr
- value = sprintf(fmt, @actor.mcr * 100)
- when :tcr
- value = sprintf(fmt, @actor.tcr * 100)
- when :pdr
- value = sprintf(fmt, @actor.pdr * 100)
- when :mdr
- value = sprintf(fmt, @actor.mdr * 100)
- when :fdr
- value = sprintf(fmt, @actor.fdr * 100)
- when :exr
- value = sprintf(fmt, @actor.exr * 100)
- when :hcr
- return dy unless $imported["YEA-SkillCostManager"]
- value = sprintf(fmt, @actor.hcr * 100)
- when :tcr_y
- return dy unless $imported["YEA-SkillCostManager"]
- value = sprintf(fmt, @actor.tcr_y * 100)
- when :gcr
- return dy unless $imported["YEA-SkillCostManager"]
- value = sprintf(fmt, @actor.gcr * 100)
- when :cdr
- return dy unless $imported["YEA-SkillRestrictions"]
- value = sprintf(fmt, @actor.cdr * 100)
- when :wur
- return dy unless $imported["YEA-SkillRestrictions"]
- value = sprintf(fmt, @actor.wur * 100)
- else; return dy
- end
- colour = Color.new(0, 0, 0, translucent_alpha/2)
- rect = Rect.new(dx+1, dy+1, dw-2, line_height-2)
- contents.fill_rect(rect, colour)
- change_color(system_color)
- draw_text(dx+4, dy, dw-8, line_height, property[1], 0)
- change_color(normal_color)
- draw_text(dx+4, dy, dw-8, line_height, value, 2)
- return dy + line_height
- end # END SCRIPT.
- #===============================================================================#
- # http://dekitarpg.wordpress.com/
- #===============================================================================#
- module DPB
- module REGEXP
- module EQUIPITEM
- INC_VIT = /<vit: (.*)>/i
- INC_STR = /<str: (.*)>/i
- INC_DEX = /<dex: (.*)>/i
- INC_MAG = /<mag: (.*)>/i
- end # EQUIPITEM
- end # REGEXP
- end # DPB
- #==============================================================================
- module DataManager
- #==============================================================================
- class <<self; alias load_database_PSPDS load_database; end
- def self.load_database
- load_database_PSPDS
- load_notetags_PSPDS
- end
- def self.load_notetags_PSPDS
- groups = [$data_weapons, $data_armors, $data_enemies]
- for group in groups
- for obj in group
- next if obj.nil?
- obj.load_notetags_PSPDS
- end
- end
- end
- end # DataManager
- #==============================================================================
- class RPG::EquipItem < RPG::BaseItem
- #==============================================================================
- attr_accessor :dpbzparams
- attr_accessor :xparams
- attr_accessor :sparams
- def load_notetags_PSPDS
- @dpbzparams = [0] * 4
- @xparams = [0] * 10
- @sparams = [0] * 10
- self.note.split(/[\r\n]+/).each { |line|
- case line
- when DPB::REGEXP::EQUIPITEM::INC_VIT
- @dpbzparams[0] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_1_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_1_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_1_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_1_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_1_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_1_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_1_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_1_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_1_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_1_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_1_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_1_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_1_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_1_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_1_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_1_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_1_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_1_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_1_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_1_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_1_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_1_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_1_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_1_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_1_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_1_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_1_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_1_EXR_GAIN * $1.to_i)
- when DPB::REGEXP::EQUIPITEM::INC_STR
- @dpbzparams[1] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_2_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_2_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_2_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_2_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_2_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_2_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_2_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_2_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_2_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_2_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_2_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_2_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_2_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_2_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_2_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_2_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_2_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_2_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_2_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_2_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_2_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_2_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_2_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_2_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_2_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_2_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_2_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_2_EXR_GAIN * $1.to_i)
- when DPB::REGEXP::EQUIPITEM::INC_DEX
- @dpbzparams[2] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_3_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_3_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_3_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_3_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_3_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_3_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_3_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_3_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_3_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_3_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_3_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_3_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_3_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_3_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_3_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_3_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_3_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_3_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_3_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_3_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_3_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_3_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_3_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_3_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_3_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_3_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_3_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_3_EXR_GAIN * $1.to_i)
- when DPB::REGEXP::EQUIPITEM::INC_MAG
- @dpbzparams[3] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_4_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_4_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_4_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_4_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_4_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_4_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_4_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_4_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_4_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_4_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_4_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_4_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_4_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_4_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_4_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_4_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_4_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_4_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_4_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_4_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_4_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_4_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_4_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_4_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_4_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_4_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_4_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_4_EXR_GAIN * $1.to_i)
- #---
- end
- } # self.note.split
- #---
- end
- end # RPG::EquipItem
- #==============================================================================
- class RPG::Enemy < RPG::BaseItem
- #==============================================================================
- attr_accessor :dpbzparams
- attr_accessor :xparams
- attr_accessor :sparams
- def load_notetags_PSPDS
- @dpbzparams = [0] * 4
- @xparams = [0] * 10
- @sparams = [0] * 10
- self.note.split(/[\r\n]+/).each { |line|
- case line
- when DPB::REGEXP::EQUIPITEM::INC_VIT
- @dpbzparams[0] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_1_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_1_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_1_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_1_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_1_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_1_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_1_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_1_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_1_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_1_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_1_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_1_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_1_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_1_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_1_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_1_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_1_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_1_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_1_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_1_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_1_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_1_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_1_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_1_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_1_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_1_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_1_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_1_EXR_GAIN * $1.to_i)
- when DPB::REGEXP::EQUIPITEM::INC_STR
- @dpbzparams[1] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_2_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_2_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_2_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_2_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_2_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_2_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_2_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_2_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_2_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_2_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_2_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_2_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_2_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_2_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_2_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_2_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_2_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_2_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_2_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_2_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_2_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_2_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_2_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_2_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_2_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_2_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_2_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_2_EXR_GAIN * $1.to_i)
- when DPB::REGEXP::EQUIPITEM::INC_DEX
- @dpbzparams[2] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_3_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_3_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_3_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_3_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_3_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_3_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_3_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_3_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_3_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_3_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_3_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_3_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_3_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_3_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_3_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_3_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_3_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_3_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_3_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_3_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_3_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_3_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_3_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_3_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_3_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_3_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_3_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_3_EXR_GAIN * $1.to_i)
- when DPB::REGEXP::EQUIPITEM::INC_MAG
- @dpbzparams[3] += $1.to_i
- @params[0] += (DPB::PSPDS::OPTION_4_MaxHP_GAIN * $1.to_i)
- @params[1] += (DPB::PSPDS::OPTION_4_MaxMP_GAIN * $1.to_i)
- @params[2] += (DPB::PSPDS::OPTION_4_ATK_GAIN * $1.to_i)
- @params[3] += (DPB::PSPDS::OPTION_4_DEF_GAIN * $1.to_i)
- @params[4] += (DPB::PSPDS::OPTION_4_MAT_GAIN * $1.to_i)
- @params[5] += (DPB::PSPDS::OPTION_4_MDF_GAIN * $1.to_i)
- @params[6] += (DPB::PSPDS::OPTION_4_AGI_GAIN * $1.to_i)
- @params[7] += (DPB::PSPDS::OPTION_4_LUK_GAIN * $1.to_i)
- #x's
- @xparams[0] += (DPB::PSPDS::OPTION_4_HIT_GAIN * $1.to_i)
- @xparams[1] += (DPB::PSPDS::OPTION_4_EVA_GAIN * $1.to_i)
- @xparams[2] += (DPB::PSPDS::OPTION_4_CRI_GAIN * $1.to_i)
- @xparams[3] += (DPB::PSPDS::OPTION_4_CEV_GAIN * $1.to_i)
- @xparams[4] += (DPB::PSPDS::OPTION_4_MEV_GAIN * $1.to_i)
- @xparams[5] += (DPB::PSPDS::OPTION_4_MRF_GAIN * $1.to_i)
- @xparams[6] += (DPB::PSPDS::OPTION_4_CNT_GAIN * $1.to_i)
- @xparams[7] += (DPB::PSPDS::OPTION_4_HRG_GAIN * $1.to_i)
- @xparams[8] += (DPB::PSPDS::OPTION_4_MRG_GAIN * $1.to_i)
- @xparams[9] += (DPB::PSPDS::OPTION_4_TRG_GAIN * $1.to_i)
- #s's
- @sparams[0] += (DPB::PSPDS::OPTION_4_TGR_GAIN * $1.to_i)
- @sparams[1] += (DPB::PSPDS::OPTION_4_GRD_GAIN * $1.to_i)
- @sparams[2] += (DPB::PSPDS::OPTION_4_REC_GAIN * $1.to_i)
- @sparams[3] += (DPB::PSPDS::OPTION_4_PHA_GAIN * $1.to_i)
- @sparams[4] += (DPB::PSPDS::OPTION_4_MCR_GAIN * $1.to_i)
- @sparams[5] += (DPB::PSPDS::OPTION_4_TCR_GAIN * $1.to_i)
- @sparams[6] += (DPB::PSPDS::OPTION_4_PDR_GAIN * $1.to_i)
- @sparams[7] += (DPB::PSPDS::OPTION_4_MDR_GAIN * $1.to_i)
- @sparams[8] += (DPB::PSPDS::OPTION_4_FDR_GAIN * $1.to_i)
- @sparams[9] += (DPB::PSPDS::OPTION_4_EXR_GAIN * $1.to_i)
- #---
- end
- } # self.note.split
- #---
- end
- end # RPG::Enemy
- #==============================================================================
- class Game_Actor < Game_Battler
- #==============================================================================
- alias dpbzGAsetup setup
- def setup(actor_id)
- dpbzGAsetup(actor_id)
- clear_dpbzparam_plus
- clear_xparam_plus
- clear_sparam_plus
- end
- alias game_actor_param_plus_PSPDS dpbzparam_plus
- def dpbzparam_plus(dpbzparam_id)
- n = game_actor_param_plus_PSPDS(dpbzparam_id)
- n += dpbz_parameter_rate(dpbzparam_id)
- return n
- end
- alias game_actor_xparam_plus_PSPDS xparam_plus
- def xparam_plus(xparam_id)
- n = game_actor_xparam_plus_PSPDS(xparam_id)
- n += x_parameter_rate(xparam_id)
- return n
- end
- alias game_actor_sparam_plus_PSPDS sparam_plus
- def sparam_plus(sparam_id)
- n = game_actor_sparam_plus_PSPDS(sparam_id)
- n += s_parameter_rate(sparam_id)
- return n
- end
- def dpbz_parameter_rate(dpbzparam_id)
- rate = 0.0
- rate += equips.compact.inject(0) {|r, i|
- r += i.dpbzparams[dpbzparam_id] rescue 0 }
- return rate
- end
- def x_parameter_rate(xparam_id)
- rate = 0.0
- rate += equips.compact.inject(0) {|r, i|
- r += i.xparams[xparam_id] rescue 0 }
- return rate
- end
- def s_parameter_rate(sparam_id)
- rate = 0.0
- rate += equips.compact.inject(0) {|r, i|
- r += i.sparams[sparam_id] rescue 0 }
- return rate
- end
- end # Game_Actor
- #--------------------------------------------------------------------------
- class Game_Enemy < Game_Battler
- #--------------------------------------------------------------------------
- alias game_enemy_param_plus_PSPDS dpbzparam_plus
- def dpbzparam_plus(dpbzparam_id)
- n = game_enemy_param_plus_PSPDS(dpbzparam_id)
- n += enemy.dpbzparams[dpbzparam_id]
- return n
- end
- alias game_enemy_xparam_plus_PSPDS xparam_plus
- def xparam_plus(xparam_id)
- n = game_enemy_xparam_plus_PSPDS(xparam_id)
- n += enemy.xparams[xparam_id]
- return n
- end
- alias game_enemy_sparam_plus_PSPDS sparam_plus
- def sparam_plus(sparam_id)
- n = game_enemy_sparam_plus_PSPDS(sparam_id)
- n += enemy.sparams[sparam_id]
- return n
- end
- end # game enemy
- #===============================================================================#
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- # #
- # PSPDS #
- # (Perfect Stat Point Distribution System) #
- # - SCRIPT END - #
- # #
- # #
- #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
- #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
- #===============================================================================#
- # http://dekitarpg.wordpress.com/
- #===============================================================================#
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement