| 赞 | 0  | 
 
| VIP | 30 | 
 
| 好人卡 | 18 | 
 
| 积分 | 1 | 
 
| 经验 | 6108 | 
 
| 最后登录 | 2014-5-20 | 
 
| 在线时间 | 92 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 50 
 
        - 在线时间
 - 92 小时
 
        - 注册时间
 - 2013-2-23
 
        - 帖子
 - 130
 
 
 
 | 
	
YF的cost脚本,功能真的很强大。- #==============================================================================
 
 - # 
 
 - # ▼ Yanfly Engine Ace - Skill Cost Manager v1.03
 
 - # -- Last Updated: 2012.01.23
 
 - # -- Level: Normal, Hard, Lunatic
 
 - # -- Requires: n/a
 
 - # 
 
 - #==============================================================================
 
  
- $imported = {} if $imported.nil?
 
 - $imported["YEA-SkillCostManager"] = true
 
  
- #==============================================================================
 
 - # ▼ Updates
 
 - # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 
 - # 2012.08.06 - Restore SP-Paramater: TCR
 
 - # 2012.01.23 - Compatibility Update: Doppelganger
 
 - # 2011.12.11 - Started Script and Finished.
 
 - #            - Added max and min notetags.
 
 - # 
 
 - #==============================================================================
 
 - # ▼ Introduction
 
 - # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 
 - # This script adds more functionality towards skill costs. Skills can now cost
 
 - # HP, more MP, more TP, gold, and even have custom costs. The way the skill
 
 - # costs are drawn in the display windows are changed to deliver more effective
 
 - # and reliable information to the player. And if four skill costs aren't enough
 
 - # to satisfy you, you can even make your own custom skill costs.
 
 - # 
 
 - #==============================================================================
 
 - # ▼ Instructions
 
 - # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 
 - # To install this script, open up your script editor and copy/paste this script
 
 - # to an open slot below ▼ Materials/素材 but above ▼ Main. Remember to save.
 
 - # 
 
 - # -----------------------------------------------------------------------------
 
 - # Actor Notetags - These notetags go in the actors notebox in the database.
 
 - # -----------------------------------------------------------------------------
 
 - # <hp cost rate: x%>
 
 - # Allows the actor to drop the HP cost of skills to x%.
 
 - # 
 
 - # <tp cost rate: x%>
 
 - # Allows the actor to drop the TP cost of skills to x%.
 
 - # 
 
 - # <gold cost rate: x%>
 
 - # Allows the actor to drop the Gold cost of skills to x%.
 
 - # 
 
 - # -----------------------------------------------------------------------------
 
 - # Class Notetags - These notetags go in the class notebox in the database.
 
 - # -----------------------------------------------------------------------------
 
 - # <hp cost rate: x%>
 
 - # Allows the class to drop the HP cost of skills to x%.
 
 - # 
 
 - # <tp cost rate: x%>
 
 - # Allows the class to drop the TP cost of skills to x%.
 
 - # 
 
 - # <gold cost rate: x%>
 
 - # Allows the class to drop the Gold cost of skills to x%.
 
 - # 
 
 - # -----------------------------------------------------------------------------
 
 - # Skill Notetags - These notetags go in the skills notebox in the database.
 
 - # -----------------------------------------------------------------------------
 
 - # <hp cost: x>
 
 - # Sets the skill's HP cost to x. This function did not exist by default in
 
 - # RPG Maker VX Ace.
 
 - # 
 
 - # <hp cost: x%>
 
 - # Sets the HP cost to a percentage of the actor's MaxHP. If a normal HP cost is
 
 - # present on the skill, too, then this value is added to the HP cost.
 
 - # 
 
 - # <hp cost max: x>
 
 - # <hp cost min: x>
 
 - # Sets the maximum and minimum range of the HP Cost of the skill. If you do not
 
 - # use this tag, there will be no maximum and/or minimum range.
 
 - # 
 
 - # <mp cost: x>
 
 - # Sets the skill's MP cost to x. Allows MP cost to exceed 9999, which is RPG
 
 - # Maker VX Ace's database editor's maximum limit.
 
 - # 
 
 - # <mp cost: x%>
 
 - # Sets the MP cost to a percentage of the actor's MaxMP. If a normal MP cost is
 
 - # present on the skill, too, then this value is added to the MP cost.
 
 - # 
 
 - # <mp cost max: x>
 
 - # <mp cost min: x>
 
 - # Sets the maximum and minimum range of the MP Cost of the skill. If you do not
 
 - # use this tag, there will be no maximum and/or minimum range.
 
 - # 
 
 - # <tp cost: x>
 
 - # Sets the skill's TP cost to x. Allows TP cost to exceed 100, which is RPG
 
 - # Maker VX Ace's database editor's maximum limit.
 
 - # 
 
 - # <tp cost: x%>
 
 - # Sets the TP cost to a percentage of the actor's MaxTP. If a normal TP cost is
 
 - # present on the skill, too, then this value is added to the TP cost.
 
 - # 
 
 - # <tp cost max: x>
 
 - # <tp cost min: x>
 
 - # Sets the maximum and minimum range of the TP Cost of the skill. If you do not
 
 - # use this tag, there will be no maximum and/or minimum range.
 
 - # 
 
 - # <gold cost: x>
 
 - # Sets the skill's gold cost to x. Enemies with skills that cost gold do not
 
 - # use gold. If the player does not have enough gold, the skill can't be used.
 
 - # 
 
 - # <gold cost: x%>
 
 - # Sets the skill's gold cost equal to a percentage of the party's total gold.
 
 - # If both a regular gold cost and a percentile gold cost is used, the total of
 
 - # both values will be the skill's gold cost.
 
 - # 
 
 - # <gold cost max: x>
 
 - # <gold cost min: x>
 
 - # Sets the maximum and minimum range of the Gold Cost of the skill. If you do
 
 - # not use this tag, there will be no maximum and/or minimum range.
 
 - # 
 
 - # --- Making Your Own Custom Costs ---
 
 - # 
 
 - # <custom cost: string>
 
 - # If you decide to have a custom cost for your game, insert this notetag to
 
 - # change what displays in the skill menu visually.
 
 - # 
 
 - # <custom cost colour: x>
 
 - # This is the "Window" skin text colour used for the custom cost. By default,
 
 - # it is text colour 0, which is the white colour.
 
 - # 
 
 - # <custom cost size: x>
 
 - # This is the text font size used for the custom cost in the display windows.
 
 - # By default, it is font size 20.
 
 - # 
 
 - # <custom cost icon: x>
 
 - # If you wish to use an icon for your custom cost, replace x with the icon ID
 
 - # you wish to show in display windows. By default, it is 0 (and not shown).
 
 - # 
 
 - # <custom cost requirement>
 
 - #  string
 
 - #  string
 
 - # </custom cost requirement>
 
 - # Sets the custom cost requirement of the skill with an eval function using the
 
 - # strings in between. The strings are a part of one line even if in the notebox
 
 - # they are on separate lines.
 
 - # 
 
 - # <custom cost perform>
 
 - #  string
 
 - #  string
 
 - # </custom cost perform>
 
 - # Sets how the custom cost payment is done with an eval function using the
 
 - # strings in between. The strings are a part of one line even if in the notebox
 
 - # they are on separate lines.
 
 - # 
 
 - # -----------------------------------------------------------------------------
 
 - # Weapon Notetags - These notetags go in the weapons notebox in the database.
 
 - # -----------------------------------------------------------------------------
 
 - # <hp cost rate: x%>
 
 - # Allows the weapon to drop the HP cost of skills to x% when worn.
 
 - # 
 
 - # <tp cost rate: x%>
 
 - # Allows the weapon to drop the TP cost of skills to x% when worn.
 
 - # 
 
 - # <gold cost rate: x%>
 
 - # Allows the weapon to drop the Gold cost of skills to x% when worn.
 
 - # 
 
 - # -----------------------------------------------------------------------------
 
 - # Armour Notetags - These notetags go in the armours notebox in the database.
 
 - # -----------------------------------------------------------------------------
 
 - # <hp cost rate: x%>
 
 - # Allows the armour to drop the HP cost of skills to x% when worn.
 
 - # 
 
 - # <tp cost rate: x%>
 
 - # Allows the armour to drop the TP cost of skills to x% when worn.
 
 - # 
 
 - # <gold cost rate: x%>
 
 - # Allows the armour to drop the TP cost of skills to x% when worn.
 
 - # 
 
 - # -----------------------------------------------------------------------------
 
 - # Enemy Notetags - These notetags go in the enemies notebox in the database.
 
 - # -----------------------------------------------------------------------------
 
 - # <hp cost rate: x%>
 
 - # Allows the enemy to drop the HP cost of skills to x%.
 
 - # 
 
 - # <tp cost rate: x%>
 
 - # Allows the enemy to drop the TP cost of skills to x%.
 
 - # 
 
 - # -----------------------------------------------------------------------------
 
 - # State Notetags - These notetags go in the states notebox in the database.
 
 - # -----------------------------------------------------------------------------
 
 - # <hp cost rate: x%>
 
 - # Allows the state to drop the HP cost of skills to x% when afflicted.
 
 - # 
 
 - # <tp cost rate: x%>
 
 - # Allows the state to drop the TP cost of skills to x% when afflicted.
 
 - # 
 
 - # <gold cost rate: x%>
 
 - # Allows the state to drop the Gold cost of skills to x% when afflicted.
 
 - # 
 
 - #==============================================================================
 
 - # ▼ Compatibility
 
 - # =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 
 - # This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
 
 - # it will run with RPG Maker VX without adjusting.
 
 - # 
 
 - #==============================================================================
 
  
- module YEA
 
 -   module SKILL_COST
 
 -     
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # - HP Cost Settings -
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # New to this script are HP costs. HP costs require the battler to have
 
 -     # sufficient HP before being able to use the skill. The text colour that's
 
 -     # used, the suffix, or whether or not to use an icon. If you do not wish
 
 -     # to use an icon, set the icon to 0.
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     HP_COST_COLOUR = 21         # Colour used from "Window" skin.
 
 -     HP_COST_SIZE   = 20         # Font size used for HP costs.
 
 -     HP_COST_SUFFIX = "%sHP"     # Suffix used for HP costs.
 
 -     HP_COST_ICON   = 0          # Icon used for HP costs. Set 0 to disable.
 
 -     
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # - MP Cost Settings -
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # Here, you can change the settings for MP costs: the text colour that's
 
 -     # used, the suffix, or whether or not to use an icon. If you do not wish
 
 -     # to use an icon, set the icon to 0.
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     MP_COST_COLOUR = 23         # Colour used from "Window" skin. Default: 23
 
 -     MP_COST_SIZE   = 20         # Font size used for MP costs. Default: 24
 
 -     MP_COST_SUFFIX = "%sMP"     # Suffix used for MP costs. No suffix default.
 
 -     MP_COST_ICON   = 0          # Icon used for MP costs. Set 0 to disable.
 
 -     
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # - TP Cost Settings -
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # Here, you can change the settings for TP costs: the text colour that's
 
 -     # used, the suffix, or whether or not to use an icon. If you do not wish
 
 -     # to use an icon, set the icon to 0.
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     TP_COST_COLOUR = 2          # Colour used from "Window" skin. Default: 29
 
 -     TP_COST_SIZE   = 20         # Font size used for TP costs. Default: 24
 
 -     TP_COST_SUFFIX = "%sTP"     # Suffix used for TP costs. No suffix default.
 
 -     TP_COST_ICON   = 0          # Icon used for TP costs. Set 0 to disable.
 
 -     
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # - Gold Cost Settings -
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     # New to this script are Gold costs. Gold costs require the party to have
 
 -     # enough gold before being able to use the skill. The text colour that's
 
 -     # used, the suffix, or whether or not to use an icon. If you do not wish
 
 -     # to use an icon, set the icon to 0.
 
 -     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 
 -     GOLD_COST_COLOUR = 6          # Colour used from "Window" skin.
 
 -     GOLD_COST_SIZE   = 20         # Font size used for Gold costs.
 
 -     GOLD_COST_SUFFIX = "%sGold"   # Suffix used for Gold costs.
 
 -     GOLD_COST_ICON   = 0          # Icon used for Gold costs. Set 0 to disable.
 
 -     
 
 -   end # SKILL_COST
 
 - end # YEA
 
  
- #==============================================================================
 
 - # ▼ Editting anything past this point may potentially result in causing
 
 - # computer damage, incontinence, explosion of user's head, coma, death, and/or
 
 - # halitosis so edit at your own risk.
 
 - #==============================================================================
 
  
- module YEA
 
 -   module REGEXP
 
 -   module BASEITEM
 
 -     
 
 -     HP_COST_RATE = /<(?:HP_COST_RATE|hp cost rate):[ ](\d+)([%%])>/i
 
 -     TP_COST_RATE = /<(?:TP_COST_RATE|tp cost rate):[ ](\d+)([%%])>/i
 
 -     GOLD_COST_RATE = /<(?:GOLD_COST_RATE|gold cost rate):[ ](\d+)([%%])>/i
 
 -     
 
 -   end # BASEITEM
 
 -   module SKILL
 
 -     
 
 -     HP_COST_SET = /<(?:HP_COST|hp cost):[ ](\d+)>/i
 
 -     HP_COST_PER = /<(?:HP_COST|hp cost):[ ](\d+)([%%])>/i
 
 -     MP_COST_SET = /<(?:MP_COST|mp cost):[ ](\d+)>/i
 
 -     MP_COST_PER = /<(?:MP_COST|mp cost):[ ](\d+)([%%])>/i
 
 -     TP_COST_SET = /<(?:TP_COST|tp cost):[ ](\d+)>/i
 
 -     TP_COST_PER = /<(?:TP_COST|tp cost):[ ](\d+)([%%])>/i
 
 -     GOLD_COST_SET = /<(?:GOLD_COST|gold cost):[ ](\d+)>/i
 
 -     GOLD_COST_PER = /<(?:GOLD_COST|gold cost):[ ](\d+)([%%])>/i
 
 -     
 
 -     CUSTOM_COST_TEXT = /<(?:CUSTOM_COST|custom cost):[ ](.*)>/i
 
 -     CUSTOM_COST_COLOUR =
 
 -       /<(?:CUSTOM_COST_COLOUR|custom cost colour|custom cost color):[ ](\d+)>/i
 
 -     CUSTOM_COST_SIZE = /<(?:CUSTOM_COST_SIZE|custom cost size):[ ](\d+)>/i
 
 -     CUSTOM_COST_ICON = /<(?:CUSTOM_COST_ICON|custom cost icon):[ ](\d+)>/i
 
 -     CUSTOM_COST_REQUIREMENT_ON = 
 
 -       /<(?:CUSTOM_COST_REQUIREMENT|custom cost requirement)>/i
 
 -     CUSTOM_COST_REQUIREMENT_OFF = 
 
 -       /<\/(?:CUSTOM_COST_REQUIREMENT|custom cost requirement)>/i
 
 -     CUSTOM_COST_PERFORM_ON = 
 
 -       /<(?:CUSTOM_COST_PERFORM|custom cost perform)>/i
 
 -     CUSTOM_COST_PERFORM_OFF = 
 
 -       /<\/(?:CUSTOM_COST_PERFORM|custom cost perform)>/i
 
 -     
 
 -     HP_COST_MIN = /<(?:HP_COST_MIN|hp cost min):[ ](\d+)>/i
 
 -     HP_COST_MAX = /<(?:HP_COST_MIN|hp cost max):[ ](\d+)>/i
 
 -     MP_COST_MIN = /<(?:MP_COST_MIN|mp cost min):[ ](\d+)>/i
 
 -     MP_COST_MAX = /<(?:MP_COST_MIN|mp cost max):[ ](\d+)>/i
 
 -     TP_COST_MIN = /<(?:TP_COST_MIN|tp cost min):[ ](\d+)>/i
 
 -     TP_COST_MAX = /<(?:TP_COST_MIN|tp cost max):[ ](\d+)>/i
 
 -     GOLD_COST_MIN = /<(?:GOLD_COST_MIN|gold cost min):[ ](\d+)>/i
 
 -     GOLD_COST_MAX = /<(?:GOLD_COST_MIN|gold cost max):[ ](\d+)>/i
 
 -     
 
 -   end # SKILL
 
 -   end # REGEXP
 
 - end # YEA
 
  
- #==============================================================================
 
 - # ■ Icon
 
 - #==============================================================================
 
  
- module Icon
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # self.mp_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def self.mp_cost; return YEA::SKILL_COST::MP_COST_ICON; end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # self.tp_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def self.tp_cost; return YEA::SKILL_COST::TP_COST_ICON; end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # self.hp_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def self.hp_cost; return YEA::SKILL_COST::HP_COST_ICON; end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # self.gold_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def self.gold_cost; return YEA::SKILL_COST::GOLD_COST_ICON; end
 
 -     
 
 - end # Icon
 
  
- #==============================================================================
 
 - # ■ Numeric
 
 - #==============================================================================
 
  
- class Numeric
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: group_digits
 
 -   #--------------------------------------------------------------------------
 
 -   unless $imported["YEA-CoreEngine"]
 
 -   def group; return self.to_s; end
 
 -   end # $imported["YEA-CoreEngine"]
 
 -     
 
 - end # Numeric
 
  
- #==============================================================================
 
 - # ■ DataManager
 
 - #==============================================================================
 
  
- module DataManager
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # alias method: load_database
 
 -   #--------------------------------------------------------------------------
 
 -   class <<self; alias load_database_scm load_database; end
 
 -   def self.load_database
 
 -     load_database_scm
 
 -     load_notetags_scm
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: load_notetags_scm
 
 -   #--------------------------------------------------------------------------
 
 -   def self.load_notetags_scm
 
 -     groups = [$data_actors, $data_classes, $data_skills, $data_weapons,
 
 -       $data_armors, $data_enemies, $data_states]
 
 -     for group in groups
 
 -       for obj in group
 
 -         next if obj.nil?
 
 -         obj.load_notetags_scm
 
 -       end
 
 -     end
 
 -   end
 
 -   
 
 - end # DataManager
 
  
- #==============================================================================
 
 - # ■ RPG::BaseItem
 
 - #==============================================================================
 
  
- class RPG::BaseItem
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # public instance variables
 
 -   #--------------------------------------------------------------------------
 
 -   attr_accessor :tp_cost_rate
 
 -   attr_accessor :hp_cost_rate
 
 -   attr_accessor :gold_cost_rate
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # common cache: load_notetags_scm
 
 -   #--------------------------------------------------------------------------
 
 -   def load_notetags_scm
 
 -     @tp_cost_rate = 1.0
 
 -     @hp_cost_rate = 1.0
 
 -     @gold_cost_rate = 1.0
 
 -     #---
 
 -     self.note.split(/[\r\n]+/).each { |line|
 
 -       case line
 
 -       #---
 
 -       when YEA::REGEXP::BASEITEM::TP_COST_RATE
 
 -         @tp_cost_rate = $1.to_i * 0.01
 
 -       when YEA::REGEXP::BASEITEM::HP_COST_RATE
 
 -         @hp_cost_rate = $1.to_i * 0.01
 
 -       when YEA::REGEXP::BASEITEM::GOLD_COST_RATE
 
 -         @gold_cost_rate = $1.to_i * 0.01
 
 -       #---
 
 -       end
 
 -     } # self.note.split
 
 -     #---
 
 -   end
 
 -   
 
 - end # RPG::BaseItem
 
  
- #==============================================================================
 
 - # ■ RPG::Skill
 
 - #==============================================================================
 
  
- class RPG::Skill < RPG::UsableItem
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # public instance variables
 
 -   #--------------------------------------------------------------------------
 
 -   attr_accessor :hp_cost
 
 -   attr_accessor :hp_cost_percent
 
 -   attr_accessor :mp_cost_percent
 
 -   attr_accessor :tp_cost_percent
 
 -   attr_accessor :gold_cost
 
 -   attr_accessor :gold_cost_percent
 
 -   
 
 -   attr_accessor :hp_cost_min
 
 -   attr_accessor :hp_cost_max
 
 -   attr_accessor :mp_cost_min
 
 -   attr_accessor :mp_cost_max
 
 -   attr_accessor :tp_cost_min
 
 -   attr_accessor :tp_cost_max
 
 -   attr_accessor :gold_cost_min
 
 -   attr_accessor :gold_cost_max
 
 -   
 
 -   attr_accessor :use_custom_cost
 
 -   attr_accessor :custom_cost_text
 
 -   attr_accessor :custom_cost_colour
 
 -   attr_accessor :custom_cost_size
 
 -   attr_accessor :custom_cost_icon
 
 -   attr_accessor :custom_cost_requirement
 
 -   attr_accessor :custom_cost_perform
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # common cache: load_notetags_scm
 
 -   #--------------------------------------------------------------------------
 
 -   def load_notetags_scm
 
 -     @hp_cost = 0
 
 -     @gold_cost = 0
 
 -     @hp_cost_percent = 0.0
 
 -     @mp_cost_percent = 0.0
 
 -     @tp_cost_percent = 0.0
 
 -     @gold_cost_percent = 0.0
 
 -     
 
 -     @custom_cost_text = "0"
 
 -     @custom_cost_colour = 0
 
 -     @custom_cost_size = 20
 
 -     @custom_cost_icon = 0
 
 -     @custom_cost_requirement = ""
 
 -     @custom_cost_perform = ""
 
 -     
 
 -     @use_custom_cost = false
 
 -     @custom_cost_req_on = false
 
 -     @custom_cost_per_on = false
 
 -     #---
 
 -     self.note.split(/[\r\n]+/).each { |line|
 
 -       case line
 
 -       #---
 
 -       when YEA::REGEXP::SKILL::MP_COST_SET
 
 -         @mp_cost = $1.to_i
 
 -       when YEA::REGEXP::SKILL::MP_COST_PER
 
 -         @mp_cost_percent = $1.to_i * 0.01
 
 -       when YEA::REGEXP::SKILL::TP_COST_SET
 
 -         @tp_cost = $1.to_i
 
 -       when YEA::REGEXP::SKILL::TP_COST_PER
 
 -         @tp_cost_percent = $1.to_i * 0.01
 
 -       when YEA::REGEXP::SKILL::HP_COST_SET
 
 -         @hp_cost = $1.to_i
 
 -       when YEA::REGEXP::SKILL::HP_COST_PER
 
 -         @hp_cost_percent = $1.to_i * 0.01
 
 -       when YEA::REGEXP::SKILL::GOLD_COST_SET
 
 -         @gold_cost = $1.to_i
 
 -       when YEA::REGEXP::SKILL::GOLD_COST_PER
 
 -         @gold_cost_percent = $1.to_i * 0.01
 
 -       #---
 
 -       when YEA::REGEXP::SKILL::HP_COST_MIN
 
 -         @hp_cost_min = $1.to_i
 
 -       when YEA::REGEXP::SKILL::HP_COST_MAX
 
 -         @hp_cost_max = $1.to_i
 
 -       when YEA::REGEXP::SKILL::MP_COST_MIN
 
 -         @mp_cost_min = $1.to_i
 
 -       when YEA::REGEXP::SKILL::MP_COST_MAX
 
 -         @mp_cost_max = $1.to_i
 
 -       when YEA::REGEXP::SKILL::TP_COST_MIN
 
 -         @tp_cost_min = $1.to_i
 
 -       when YEA::REGEXP::SKILL::TP_COST_MAX
 
 -         @tp_cost_max = $1.to_i
 
 -       when YEA::REGEXP::SKILL::GOLD_COST_MIN
 
 -         @gold_cost_min = $1.to_i
 
 -       when YEA::REGEXP::SKILL::GOLD_COST_MAX
 
 -         @gold_cost_max = $1.to_i
 
 -       #---
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_TEXT
 
 -         @custom_cost_text = $1.to_s
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_COLOUR
 
 -         @custom_cost_colour = $1.to_i
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_SIZE
 
 -         @custom_cost_size = $1.to_i
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_ICON
 
 -         @custom_cost_icon = $1.to_i
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_REQUIREMENT_ON
 
 -         @custom_cost_req_on = true
 
 -         @use_custom_cost = true
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_REQUIREMENT_OFF
 
 -         @custom_cost_req_on = false
 
 -         @use_custom_cost = true
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_PERFORM_ON
 
 -         @custom_cost_per_on = true
 
 -         @use_custom_cost = true
 
 -       when YEA::REGEXP::SKILL::CUSTOM_COST_PERFORM_OFF
 
 -         @custom_cost_per_on = false
 
 -         @use_custom_cost = true
 
 -       else
 
 -         @custom_cost_requirement += line.to_s if @custom_cost_req_on
 
 -         @custom_cost_perform += line.to_s if @custom_cost_per_on
 
 -       #---
 
 -       end
 
 -     } # self.note.split
 
 -     #---
 
 -   end
 
 -   
 
 - end # RPG::Skill
 
  
- #==============================================================================
 
 - # ■ Game_BattlerBase
 
 - #==============================================================================
 
  
- class Game_BattlerBase
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # alias method: skill_cost_payable?
 
 -   #--------------------------------------------------------------------------
 
 -   alias game_battlerbase_skill_cost_payable_scm skill_cost_payable?
 
 -   def skill_cost_payable?(skill)
 
 -     return false if hp <= skill_hp_cost(skill)
 
 -     return false unless gold_cost_met?(skill)
 
 -     return false unless custom_cost_met?(skill)
 
 -     return game_battlerbase_skill_cost_payable_scm(skill)
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: gold_cost_met?
 
 -   #--------------------------------------------------------------------------
 
 -   def gold_cost_met?(skill)
 
 -     return true unless actor?
 
 -     return $game_party.gold >= skill_gold_cost(skill)
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: custom_cost_met?
 
 -   #--------------------------------------------------------------------------
 
 -   def custom_cost_met?(skill)
 
 -     return true unless skill.use_custom_cost
 
 -     return eval(skill.custom_cost_requirement)
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # alias method: pay_skill_cost
 
 -   #--------------------------------------------------------------------------
 
 -   alias game_battlerbase_pay_skill_cost_scm pay_skill_cost
 
 -   def pay_skill_cost(skill)
 
 -     game_battlerbase_pay_skill_cost_scm(skill)
 
 -     self.hp -= skill_hp_cost(skill)
 
 -     $game_party.lose_gold(skill_gold_cost(skill)) if actor?
 
 -     pay_custom_cost(skill)
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: pay_custom_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def pay_custom_cost(skill)
 
 -     return unless skill.use_custom_cost
 
 -     eval(skill.custom_cost_perform)
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # alias method: skill_mp_cost
 
 -   #--------------------------------------------------------------------------
 
 -   alias game_battlerbase_skill_mp_cost_scm skill_mp_cost
 
 -   def skill_mp_cost(skill)
 
 -     n = game_battlerbase_skill_mp_cost_scm(skill)
 
 -     n += skill.mp_cost_percent * mmp * mcr
 
 -     n = [n.to_i, skill.mp_cost_max].min unless skill.mp_cost_max.nil?
 
 -     n = [n.to_i, skill.mp_cost_min].max unless skill.mp_cost_min.nil?
 
 -     return n.to_i
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # alias method: skill_tp_cost
 
 -   #--------------------------------------------------------------------------
 
 -   alias game_battlerbase_skill_tp_cost_scm skill_tp_cost
 
 -   def skill_tp_cost(skill)
 
 -     n = game_battlerbase_skill_tp_cost_scm(skill) * tcr_y
 
 -     n += skill.tp_cost_percent * max_tp * tcr_y
 
 -     n = [n.to_i, skill.tp_cost_max].min unless skill.tp_cost_max.nil?
 
 -     n = [n.to_i, skill.tp_cost_min].max unless skill.tp_cost_min.nil?
 
 -     return n.to_i
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: tcr_y
 
 -   #--------------------------------------------------------------------------
 
 -   def tcr_y
 
 -     n = 1.0
 
 -     if actor?
 
 -       n *= self.actor.tp_cost_rate
 
 -       n *= self.class.tp_cost_rate
 
 -       for equip in equips
 
 -         next if equip.nil?
 
 -         n *= equip.tp_cost_rate
 
 -       end
 
 -     else
 
 -       n *= self.enemy.tp_cost_rate
 
 -       if $imported["YEA-Doppelganger"] && !self.class.nil?
 
 -         n *= self.class.tp_cost_rate
 
 -       end
 
 -     end
 
 -     for state in states
 
 -       next if state.nil?
 
 -       n *= state.tp_cost_rate
 
 -     end
 
 -     return n
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: skill_hp_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def skill_hp_cost(skill)
 
 -     n = skill.hp_cost * hcr
 
 -     n += skill.hp_cost_percent * mhp * hcr
 
 -     n = [n.to_i, skill.hp_cost_max].min unless skill.hp_cost_max.nil?
 
 -     n = [n.to_i, skill.hp_cost_min].max unless skill.hp_cost_min.nil?
 
 -     return n.to_i
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: hcr
 
 -   #--------------------------------------------------------------------------
 
 -   def hcr
 
 -     n = 1.0
 
 -     if actor?
 
 -       n *= self.actor.hp_cost_rate
 
 -       n *= self.class.hp_cost_rate
 
 -       for equip in equips
 
 -         next if equip.nil?
 
 -         n *= equip.hp_cost_rate
 
 -       end
 
 -     else
 
 -       n *= self.enemy.hp_cost_rate
 
 -       if $imported["YEA-Doppelganger"] && !self.class.nil?
 
 -         n *= self.class.hp_cost_rate
 
 -       end
 
 -     end
 
 -     for state in states
 
 -       next if state.nil?
 
 -       n *= state.hp_cost_rate
 
 -     end
 
 -     return n
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: skill_gold_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def skill_gold_cost(skill)
 
 -     n = skill.gold_cost * gcr
 
 -     n += skill.gold_cost_percent * $game_party.gold * gcr
 
 -     n = [n.to_i, skill.gold_cost_max].min unless skill.gold_cost_max.nil?
 
 -     n = [n.to_i, skill.gold_cost_min].max unless skill.gold_cost_min.nil?
 
 -     return n.to_i
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: gcr
 
 -   #--------------------------------------------------------------------------
 
 -   def gcr
 
 -     n = 1.0
 
 -     n *= self.actor.gold_cost_rate
 
 -     n *= self.class.gold_cost_rate
 
 -     for equip in equips
 
 -       next if equip.nil?
 
 -       n *= equip.gold_cost_rate
 
 -     end
 
 -     for state in states
 
 -       next if state.nil?
 
 -       n *= state.gold_cost_rate
 
 -     end
 
 -     return n
 
 -   end
 
 -   
 
 - end # Game_BattlerBase
 
 -   
 
 - #==============================================================================
 
 - # ■ Window_Base
 
 - #==============================================================================
 
  
- class Window_Base < Window
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # overwrite methods: cost_colours
 
 -   #--------------------------------------------------------------------------
 
 -   def mp_cost_color; text_color(YEA::SKILL_COST::MP_COST_COLOUR); end;
 
 -   def tp_cost_color; text_color(YEA::SKILL_COST::TP_COST_COLOUR); end;
 
 -   def hp_cost_color; text_color(YEA::SKILL_COST::HP_COST_COLOUR); end;
 
 -   def gold_cost_color; text_color(YEA::SKILL_COST::GOLD_COST_COLOUR); end;
 
 -   
 
 - end # Window_Base
 
  
- #==============================================================================
 
 - # ■ Window_SkillList
 
 - #==============================================================================
 
  
- class Window_SkillList < Window_Selectable
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # overwrite method: draw_skill_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_skill_cost(rect, skill)
 
 -     draw_tp_skill_cost(rect, skill) unless $imported["YEA-BattleEngine"]
 
 -     draw_mp_skill_cost(rect, skill)
 
 -     draw_tp_skill_cost(rect, skill) if $imported["YEA-BattleEngine"]
 
 -     draw_hp_skill_cost(rect, skill)
 
 -     draw_gold_skill_cost(rect, skill)
 
 -     draw_custom_skill_cost(rect, skill)
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: draw_mp_skill_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_mp_skill_cost(rect, skill)
 
 -     return unless @actor.skill_mp_cost(skill) > 0
 
 -     change_color(mp_cost_color, enable?(skill))
 
 -     #---
 
 -     icon = Icon.mp_cost
 
 -     if icon > 0
 
 -       draw_icon(icon, rect.x + rect.width-24, rect.y, enable?(skill))
 
 -       rect.width -= 24
 
 -     end
 
 -     #---
 
 -     contents.font.size = YEA::SKILL_COST::MP_COST_SIZE
 
 -     cost = @actor.skill_mp_cost(skill)
 
 -     text = sprintf(YEA::SKILL_COST::MP_COST_SUFFIX, cost.group)
 
 -     draw_text(rect, text, 2)
 
 -     cx = text_size(text).width + 4
 
 -     rect.width -= cx
 
 -     reset_font_settings
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: draw_tp_skill_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_tp_skill_cost(rect, skill)
 
 -     return unless @actor.skill_tp_cost(skill) > 0
 
 -     change_color(tp_cost_color, enable?(skill))
 
 -     #---
 
 -     icon = Icon.tp_cost
 
 -     if icon > 0
 
 -       draw_icon(icon, rect.x + rect.width-24, rect.y, enable?(skill))
 
 -       rect.width -= 24
 
 -     end
 
 -     #---
 
 -     contents.font.size = YEA::SKILL_COST::TP_COST_SIZE
 
 -     cost = @actor.skill_tp_cost(skill)
 
 -     text = sprintf(YEA::SKILL_COST::TP_COST_SUFFIX, cost.group)
 
 -     draw_text(rect, text, 2)
 
 -     cx = text_size(text).width + 4
 
 -     rect.width -= cx
 
 -     reset_font_settings
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: draw_hp_skill_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_hp_skill_cost(rect, skill)
 
 -     return unless @actor.skill_hp_cost(skill) > 0
 
 -     change_color(hp_cost_color, enable?(skill))
 
 -     #---
 
 -     icon = Icon.hp_cost
 
 -     if icon > 0
 
 -       draw_icon(icon, rect.x + rect.width-24, rect.y, enable?(skill))
 
 -       rect.width -= 24
 
 -     end
 
 -     #---
 
 -     contents.font.size = YEA::SKILL_COST::HP_COST_SIZE
 
 -     cost = @actor.skill_hp_cost(skill)
 
 -     text = sprintf(YEA::SKILL_COST::HP_COST_SUFFIX, cost.group)
 
 -     draw_text(rect, text, 2)
 
 -     cx = text_size(text).width + 4
 
 -     rect.width -= cx
 
 -     reset_font_settings
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: draw_gold_skill_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_gold_skill_cost(rect, skill)
 
 -     return unless @actor.skill_gold_cost(skill) > 0
 
 -     change_color(gold_cost_color, enable?(skill))
 
 -     #---
 
 -     icon = Icon.gold_cost
 
 -     if icon > 0
 
 -       draw_icon(icon, rect.x + rect.width-24, rect.y, enable?(skill))
 
 -       rect.width -= 24
 
 -     end
 
 -     #---
 
 -     contents.font.size = YEA::SKILL_COST::GOLD_COST_SIZE
 
 -     cost = @actor.skill_gold_cost(skill)
 
 -     text = sprintf(YEA::SKILL_COST::GOLD_COST_SUFFIX, cost.group)
 
 -     draw_text(rect, text, 2)
 
 -     cx = text_size(text).width + 4
 
 -     rect.width -= cx
 
 -     reset_font_settings
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # new method: draw_custom_skill_cost
 
 -   #--------------------------------------------------------------------------
 
 -   def draw_custom_skill_cost(rect, skill)
 
 -     return unless skill.use_custom_cost
 
 -     change_color(text_color(skill.custom_cost_colour), enable?(skill))
 
 -     icon = skill.custom_cost_icon
 
 -     if icon > 0
 
 -       draw_icon(icon, rect.x + rect.width-24, rect.y, enable?(skill))
 
 -       rect.width -= 24
 
 -     end
 
 -     contents.font.size = skill.custom_cost_size
 
 -     text = skill.custom_cost_text
 
 -     draw_text(rect, text, 2)
 
 -     cx = text_size(text).width + 4
 
 -     rect.width -= cx
 
 -     reset_font_settings
 
 -   end
 
 -   
 
 - end # Window_SkillList
 
  
- #==============================================================================
 
 - # 
 
 - # ▼ End of File
 
 - # 
 
 - #==============================================================================
 
  复制代码 |   
 
评分
- 
查看全部评分
 
 
 
 
 
 |