Project1

标题: 求个小脚本的VA版 [打印本页]

作者: longshili    时间: 2013-10-27 14:17
标题: 求个小脚本的VA版
这是个战斗后百分比回血的小脚本(VX),想要VA版的,能帮忙看下吗?谢谢
RUBY 代码复制
  1. class Scene_Battle < Scene_Base
  2.   #--------------------------------------------------------------------------
  3.   # ● 结束战斗
  4.   #     result : 结果(0:胜利,1:逃跑,2:失败)
  5.   #--------------------------------------------------------------------------
  6.   def battle_end(result)
  7.     if result == 2 and not $game_troop.can_lose
  8.       call_gameover
  9.     else
  10.       $game_party.clear_actions
  11.       $game_party.remove_states_battle
  12.       $game_troop.clear
  13.       if $game_temp.battle_proc != nil
  14.         $game_temp.battle_proc.call(result)
  15.         $game_temp.battle_proc = nil
  16.       end
  17.       if result == 0
  18.         $game_party.members.each{|i|
  19.           h = i.maxhp * 3#%         #戰鬥後回復的HP百分比
  20.           h /= 100
  21.           m = i.maxmp * 3#%         #戰鬥後回復的MP百分比
  22.           m /= 100
  23.           i.hp += h
  24.           i.mp += m
  25.         }
  26.       end  
  27.       unless $BTEST
  28.         $game_temp.map_bgm.play
  29.         $game_temp.map_bgs.play
  30.       end
  31.       $scene = Scene_Map.new
  32.       @message_window.clear
  33.       Graphics.fadeout(30)
  34.     end
  35.     $game_temp.in_battle = false
  36.   end
  37. end

作者: 喵呜喵5    时间: 2013-10-27 15:24
http://rpg.blue/home.php?mod=spa ... o=blog&id=11572
作者: 喵呜喵5    时间: 2013-10-27 15:52
本帖最后由 喵呜喵5 于 2013-10-27 16:47 编辑

RUBY 代码复制
  1. =begin
  2. ===============================================================================
  3.   战斗结束后回复 By喵呜喵5
  4. ===============================================================================
  5. 【说明】
  6.  
  7.   战斗后回复一定量的HP、MP
  8.   回复的数值可以参考数据库的伤害公式来写,支持以下字符:
  9.  
  10.   $game_variables[n] n号变量的数值
  11.   hp 当前HP
  12.   mp 当前mp
  13.   tp  当前HP
  14.   level 当前等级
  15.  
  16.   mhp 最大HP  Maximum Hit Point
  17.   mmp 最大MP  Maximum Magic Point
  18.   atk 物理攻击  ATtacK power
  19.   def 物理防御  DEFense power
  20.   mat 魔法攻击  Magic ATtack power
  21.   mdf 魔法防御  Magic DeFense power
  22.   agi 敏 捷 值 AGIlity
  23.   luk 幸 运 值 LUcK
  24.   hit 成功几率  HIT rate
  25.   eva 闪避几率  EVAsion rate
  26.   cri 必杀几率  CRItical rate
  27.   cev 闪避必杀几率  Critical EVasion rate
  28.   mev 闪避魔法几率  Magic EVasion rate
  29.   mrf 反射魔法几率  Magic ReFlection rate
  30.   cnt 反击几率  CouNTer attack rate
  31.   hrg HP再生速度  Hp ReGeneration rate
  32.   mrg MP再生速度  Mp ReGeneration rate
  33.   trg TP再生速度  Tp ReGeneration rate
  34.   tgr 受到攻击的几率 TarGet Rate
  35.   grd 防御效果比率  GuaRD effect rate
  36.   rec 恢复效果比率  RECovery effect rate
  37.   pha 药理知识  PHArmacology
  38.   mcr MP消费率 Mp Cost Rate
  39.   tcr TP消耗率 Tp Charge Rate
  40.   pdr 物理伤害加成  Physical Damage Rate
  41.   mdr 魔法伤害加成  Magical Damage Rate
  42.   fdr 地形伤害加成  Floor Damage Rate
  43.   exr 经验获得加成  EXperience Rate
  44.  
  45.  
  46.   同样支持包括$game_switches在内其他所有的全局变量
  47.   如果计算公式包含多行代码或者多个判定条件,请使用“;”号分隔
  48.   (不懂脚本的话无需理解上面两句话的意思)   
  49.  
  50. =end
  51. module M5_BattleRecover
  52. #==============================================================================
  53. #  设定部分
  54. #==============================================================================
  55.  
  56.   HP = "mhp*0.5 + $game_variables[1]"
  57.   #这里设置HP的回复量,请不要删除引号
  58.  
  59.   MP = "mmp*0.5 + $game_variables[1]"
  60.   #这里设置MP的回复量,请不要删除引号
  61.  
  62.   ALWAYS = true
  63.   #设置为true的话,即使战斗没有胜利也可以恢复HP  
  64.  
  65. #==============================================================================
  66. #  设定结束
  67. #==============================================================================
  68. #==============================================================================
  69. #  脚本部分
  70. #==============================================================================
  71. end
  72. class << BattleManager  
  73.   alias m5_20131027_battle_end battle_end
  74.   def battle_end(result)
  75.     m5_20131027_battle_end(result)
  76.     if (result == 0) or M5_BattleRecover::ALWAYS
  77.       $game_party.m5_recovery
  78.     end
  79.   end
  80. end  
  81. class Game_Battler < Game_BattlerBase  
  82.   def m5_recovery   
  83.     self.mp += eval(M5_BattleRecover::HP).round
  84.     self.hp += eval(M5_BattleRecover::MP).round
  85.   end
  86. end
  87. class Game_Unit
  88.   def m5_recovery
  89.     members.each {|member| member.m5_recovery }   
  90.   end
  91. end
  92. #==============================================================================
  93. #  脚本结束
  94. #==============================================================================





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1