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

Project1

 找回密码
 注册会员
搜索
楼主: ACRI
打印 上一主题 下一主题

[已经解决] 【ACE】魔法盾脚本请教,如何做出复数的魔法盾

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
跳转到指定楼层
1
发表于 2022-7-29 11:40:13 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 ACRI 于 2022-7-29 22:46 编辑

RUBY 代码复制
  1. class Game_Battler < Game_BattlerBase
  2.  
  3.   STATE_ID = 14   #魔法盾状态的id号
  4.   MP_RATE  = 1.0  #魔法盾吸收伤害的比率0.4就是10点伤害hp6点mp4点
  5.   MP_DAMAGE_RATE = 1  #1MP抵消多少伤害
  6.   VARIABLE_ID = 0      #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

这个魔法盾脚本,请问有没有办法让魔法盾的状态id更多,而且不同的状态ID有不同的吸收率,最后是能否做到让状态没有魔法值自动解除?
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
2
 楼主| 发表于 2022-7-30 17:01:02 | 显示全部楼层
houyuxiaoyang 发表于 2022-7-30 10:21
转成表 stateId = {}   statId["1"] = { "MP_RATE" => 1,  "MP_DAMAGE_RATE " => 1, "VARIABLE_ID" => 0 }  ...

个人不懂脚本(可以说是完全不懂那种)
所以不知道怎么弄啊,老哥

点评

其实感觉,差不多明白了(毕竟一眼就感觉很简单的样子)  发表于 2022-7-30 20:42
不懂就去学习喽~学不会就放弃喽~  发表于 2022-7-30 18:38
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
3
 楼主| 发表于 2022-7-31 04:07:48 | 显示全部楼层
houyuxiaoyang 发表于 2022-7-30 10:21
转成表 stateId = {}   statId["1"] = { "MP_RATE" => 1,  "MP_DAMAGE_RATE " => 1, "VARIABLE_ID" => 0 }  ...

好吧,我是白痴,搞到工程全废了
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
4
 楼主| 发表于 2022-7-31 16:09:51 | 显示全部楼层
阿薩男爵 发表于 2022-7-31 07:03
现在大多数人都去用MV和MZ工具了,所以愿意回答你的人也不多,其实我也不懂,
但是你在下到一个脚本 ...

嗯,也是,还是得自己学脚本啊
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
5
 楼主| 发表于 2022-7-31 16:14:45 | 显示全部楼层
本帖最后由 alexncf125 于 2022-7-31 17:22 编辑
阿薩男爵 发表于 2022-7-31 07:03
现在大多数人都去用MV和MZ工具了,所以愿意回答你的人也不多,其实我也不懂,
但是你在下到一个脚本 ...


游戏其实到不复杂,各种机制也很简陋,就是这个魔法盾实在是让我XX,本来是想搞个等级越高学习的魔法盾越强(抵消的伤害比例越高),但是这个并不支持多个状态,XX啊
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
6
 楼主| 发表于 2022-8-1 00:22:53 | 显示全部楼层
soulsaga 发表于 2022-7-31 23:20
class Game_Battler < Game_BattlerBase

STATE_ID = { #魔法盾状态的id号 左ID右魔法盾吸收伤害的比率

感谢这位老哥的帮助,可惜28行那边报错了

点评

改了..可以再试..  发表于 2022-8-1 00:36
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
7
 楼主| 发表于 2022-8-1 00:44:13 | 显示全部楼层
soulsaga 发表于 2022-7-31 23:20
class Game_Battler < Game_BattlerBase

STATE_ID = { #魔法盾状态的id号 左ID右魔法盾吸收伤害的比率

额,改好了吗?
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
8
 楼主| 发表于 2022-8-1 01:15:22 | 显示全部楼层
soulsaga 发表于 2022-7-31 23:20
class Game_Battler < Game_BattlerBase

STATE_ID = { #魔法盾状态的id号 左ID右魔法盾吸收伤害的比率

又试了一次,不行啊,还是28报错
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1985
在线时间
176 小时
注册时间
2022-6-24
帖子
176
9
 楼主| 发表于 2022-8-1 22:01:09 | 显示全部楼层
本帖最后由 ACRI 于 2022-8-1 22:02 编辑
soulsaga 发表于 2022-7-31 23:20
class Game_Battler < Game_BattlerBase

state_id  = { #魔法盾状态的id号 左ID右魔法盾吸收伤害的比率


唉,还是24行

360截图20220801155906937.jpg (12.09 KB, 下载次数: 15)

就是这样了

就是这样了
在尝试做游戏了,但还是个菜狗(结果现在编程,音乐和剧情设计没开始学,画画也暂时没时间学了(;д;))

(个人精神状况不是很好,有时会说出一些奇怪且根本没法理解意思的话,直接无视就好,如果说出的话不小心冒犯到你,我会在精神状况良好时和你道歉的(`・ω・´)(不过一般在感觉到不适时会直接下线,请勿过于担心))
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-15 18:44

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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