Project1

标题: 请问有装备增减HP脚本吗? [打印本页]

作者: llzc22    时间: 2014-5-19 16:52
标题: 请问有装备增减HP脚本吗?
本帖最后由 llzc22 于 2014-5-19 19:20 编辑

比如一个角色HP100,穿戴一个设定HP-20的装备后,HP会变成80。
变量的话试过,但是会重复执行减为1啊,求助。
作者: 芯☆淡茹水    时间: 2014-5-19 17:08
可以用自动状态啊!!!
作者: 芯☆淡茹水    时间: 2014-5-19 18:20
本帖最后由 芯☆淡茹水 于 2014-5-19 19:16 编辑

下面这个,未测试。
  1. #==============================================================================
  2. # 武器/防具 的 HP 属性添加。在武器/防具的说明后面,写上半角逗号(,),再写上
  3. # 增加的 HP 数值(未写数值的默认为 0)。
  4. #===============================================================================
  5. module RPG
  6.   class Weapon
  7.     #------------------------------------------------------------------------
  8.     def description
  9.       @description.split(/,/)[0] != nil ? @description.split(/,/)[0] : ""
  10.     end
  11.     #------------------------------------------------------------------------
  12.     def maxhp_plus
  13.       @description.split(/,/)[1] != nil ? @description.split(/,/)[1].to_i : 0
  14.     end
  15.   end
  16.   #===========================================================================
  17.   class Armor
  18.     #------------------------------------------------------------------------
  19.     def description
  20.       @description.split(/,/)[0] != nil ? @description.split(/,/)[0] : ""
  21.     end
  22.     #------------------------------------------------------------------------
  23.     def maxhp_plus
  24.       @description.split(/,/)[1] != nil ? @description.split(/,/)[1].to_i : 0
  25.     end
  26.   end
  27. end
  28. #===============================================================================
  29. class Game_Actor < Game_Battler
  30.   #--------------------------------------------------------------------------
  31.   def base_maxhp
  32.     hp = $data_actors[@actor_id].parameters[0, @level]
  33.     hp += $data_weapons[@weapon_id].maxhp_plus if $data_weapons[@weapon_id] != nil
  34.     hp += $data_armors[@armor1_id].maxhp_plus if $data_armors[@armor1_id] != nil
  35.     hp += $data_armors[@armor2_id].maxhp_plus if $data_armors[@armor2_id] != nil
  36.     hp += $data_armors[@armor3_id].maxhp_plus if $data_armors[@armor3_id] != nil
  37.     hp += $data_armors[@armor4_id].maxhp_plus if $data_armors[@armor4_id] != nil
  38.     return hp
  39.   end
  40.   #---------------------------------------------------------------------------
  41.   alias add_equip_xdrs equip
  42.   def equip(equip_type, id)
  43.     add_equip_xdrs(equip_type, id)
  44.     @hp = [@hp, self.maxhp].min
  45.   end
  46. end
  47. #===============================================================================
复制代码

作者: llzc22    时间: 2014-5-19 19:19
芯☆淡茹水 发表于 2014-5-19 18:20
下面这个,未测试。

没问题了,真的很谢谢大神的热心帮忙~




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