设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2422|回复: 4
打印 上一主题 下一主题

[已经解决] 请问如何实现产生吸收伤害的护盾效果?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
47 小时
注册时间
2013-9-26
帖子
23
跳转到指定楼层
1
发表于 2013-10-7 04:29:52 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
生命值低于40%的,自动产生护盾吸收20%生命最大值的伤害。
如何设定这样一个技能?

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
3
发表于 2013-10-7 09:34:08 | 只看该作者
  1. class Game_Battler < Game_BattlerBase
  2.   
  3.   STATE_ID = 15   #魔法盾状态的id号
  4.   MP_RATE  = 0.4  #魔法盾吸收伤害的比率0.4就是10点伤害hp6点mp4点
  5.   MP_DAMAGE_RATE = 2
  6.   VARIABLE_ID = 3      #1点mp抵消(3号变量的值+2)点伤害,如果不需要变量功能,就把这个值设为0或负数
  7.   #--------------------------------------------------------------------------
  8.   # ● 计算伤害
  9.   #--------------------------------------------------------------------------
  10.   def make_damage_value(user, item)
  11.     value = item.damage.eval(user, self, $game_variables)
  12.     value *= item_element_rate(user, item)
  13.     value *= pdr if item.physical?
  14.     value *= mdr if item.magical?
  15.     value *= rec if item.damage.recover?
  16.     value = apply_critical(value) if @result.critical
  17.     value = apply_variance(value, item.damage.variance)
  18.     value = apply_guard(value)
  19.     if item.damage.to_hp? and self.state?(STATE_ID)
  20.       mrate = MP_DAMAGE_RATE
  21.       mrate += $game_variables[VARIABLE_ID] if $game_variables[VARIABLE_ID]
  22.       mp_value = [(value * MP_RATE/mrate).to_i  , self.mp].min
  23.       value -= mp_value * mrate
  24.       self.mp -= mp_value
  25.     end
  26.     @result.make_damage(value.to_i, item)
  27.   end
  28. end
复制代码

点评

大神,帮忙改成多状态可以吗  发表于 2016-7-22 08:48
作者是救世小树,这个脚本比较简单,如果你有需要改,我可以帮你改,这个脚本和一切伤害计算有关的脚本冲突,他是直接重写了伤害计算脚本@绿坝  发表于 2013-10-8 13:39

评分

参与人数 2星屑 +5 梦石 +1 收起 理由
迷糊的安安 + 1 认可答案 附赠精美好人卡一张^^.
绿坝 + 5 很有用的脚本,想用到游戏里,请问下作者是.

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
362
在线时间
1292 小时
注册时间
2013-1-12
帖子
3590

贵宾

2
发表于 2013-10-7 05:11:38 | 只看该作者
http://forums.rpgmakerweb.com/index.php?/topic/5380-mana-shield/
請自帶翻譯及代理
效果:
可以增加一種狀態 有此狀態時被攻擊的的傷害會記算吸收百分比(可設定)(會把傷害給MP)
然後盾可承受的傷害好像也可以自己設
低於40%什麼的需要自己修改

评分

参与人数 1梦石 +1 收起 理由
迷糊的安安 + 1 认可答案 附赠精美好人卡一张^^.

查看全部评分


回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-17 12:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表