| 赞 | 0 |
| VIP | |
| 好人卡 | |
| 积分 | 1 |
| 经验 | |
| 最后登录 | 2017-9-21 |
| 在线时间 | 85 小时 |
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 85 小时
- 注册时间
- 2011-3-6
- 回帖
- 36
|
发表于 2017-1-22 14:04:55
|
显示全部楼层
本帖最后由 weew163com 于 2017-1-22 14:17 编辑
别的有人回答了 这个是4的做法,
来到脚本管理器的 Game_Battler 的 item_apply(user, item) (应用技能/物品的效果)
在它最下面两个end之间加入 make_tsxg(user, item)
然后在 main 前插入脚本
[pre lang="ruby"]class Game_Battler < Game_BattlerBase
#--------------------------------------------------------------------------
# ● 设置特殊效果
#--------------------------------------------------------------------------
def make_tsxg(user, item)
if item.is_a?(RPG::Skill) #判断是技能不是物品
case item.id #循环判断技能编号
when 2 #如果是2号技能
the_mp = (user.mp/$game_party.alive_members.size).to_i #定义使用者的mp除以人数的数值
user.mp = 0 #清空使用者的mp
$game_party.alive_members.each do |i| #每一个活着的成员执行一次(输出成员为i
i.mp += the_mp #成员 i 的mp增加定义好的数值
over_mp = i.mp + the_mp - i.mmp #定义超出mp上限的数值
user.mp += over_mp if over_mp > 0 #返还超出上限部分的mp
end
end
end
end
end[/pre]
==============================
脚本里面:
over_mp = i.mp + the_mp - i.mmp
user.mp += over_mp if over_mp > 0
这两句 表示如果mp+分给他的mp大于了他的最大mp
把多出来的mp返还给使用者。
如果不需要可以删除
|
|