Project1

标题: 我想改一下技能的命中判定 [打印本页]

作者: 暴走杀神    时间: 2019-9-14 21:40
标题: 我想改一下技能的命中判定
rt,我想改技能命中的判定像普通攻击那样,以及技能的暴击率,怎么样修改?

捕获.PNG (83.96 KB, 下载次数: 32)

捕获.PNG

捕获1.PNG (53.59 KB, 下载次数: 33)

捕获1.PNG

捕获2.PNG (121.87 KB, 下载次数: 33)

捕获2.PNG

作者: miantouchi    时间: 2019-9-19 19:58
修改 Game_Battler 3里面的 def skill_effect(user, skill)
作者: 暴走杀神    时间: 2019-11-3 22:17
miantouchi 发表于 2019-9-19 19:58
修改 Game_Battler 3里面的 def skill_effect(user, skill)

对了技能暴击要怎么弄来着?
作者: kelove331    时间: 2020-2-6 21:38
本帖最后由 kelove331 于 2020-2-14 07:54 编辑

   if skill.id == 1 and rand(100) < 15  #技能1有15%的概率造成2.5倍伤害
             power *= (2.5).to_i
         self.damage = power
         self.hp -= self.damage
       end
作者: kelove331    时间: 2020-2-8 03:54
kelove331 发表于 2020-2-6 21:38
if skill.id == 1 and rand(100) < 15  #技能1有15%的概率造成2.5倍伤害
             power *= (2.5).t ...

好像是的,其实我觉得可以用大佬你的战斗调用公共事件!!!那个是真的好用!!!!
作者: 暴走杀神    时间: 2020-2-13 14:18
kelove331 发表于 2020-2-6 21:38
if skill.id == 1 and rand(100) < 15  #技能1有15%的概率造成2.5倍伤害
             power *= (2.5).t ...

不明白这要放到哪,放到脚本里面都是末尾报错
作者: kelove331    时间: 2020-2-14 07:53
本帖最后由 kelove331 于 2020-2-14 07:54 编辑
暴走杀神 发表于 2020-2-13 14:18
不明白这要放到哪,放到脚本里面都是末尾报错


不好意思,多了个end,已经修改了,这个放在game_battler3里!
作者: 暴走杀神    时间: 2020-2-15 22:12
kelove331 发表于 2020-2-14 07:53
不好意思,多了个end,已经修改了,这个放在game_battler3里!

总觉得显示出来的伤害数字与实际伤害不符啊,我又自己稍微修改了下还是这样。
最好还是有那种触发暴击效果后显示暴击的字符(跟普攻那样的)

QQ截图20200215215955.png (260.34 KB, 下载次数: 23)

QQ截图20200215215955.png

QQ截图20200215220029.png (648.2 KB, 下载次数: 26)

QQ截图20200215220029.png

QQ截图20200215220109.png (654.98 KB, 下载次数: 26)

QQ截图20200215220109.png

作者: 1103123301    时间: 2020-2-15 23:52
暴走杀神 发表于 2020-2-15 22:12
总觉得显示出来的伤害数字与实际伤害不符啊,我又自己稍微修改了下还是这样。
最好还是有那种触发暴击效 ...

将 if skill.id == 1 and rand(100) < 15  #技能1有15%的概率造成2.5倍伤害
             power *= (2.5).to_i
         self.damage = power
         self.hp -= self.damage
       end
伤害数字与实际伤害不符是因为这伤害计算与技能威力挂钩,改成下面这个试试
#技能暴击率与伤害(宝箱君修改)
       if skill.id == 57 and rand(100) < 100  #技能57号有100%的概率造成2倍伤害
         $技能暴击效果宝箱君 = (2.5).to_i #由于伤害不能有小数点因此2.5等价于2   3.8等价于3!
         self.damage *= $技能暴击效果宝箱君 #伤害乘以2
         self.critical = true #会心一击标志
       end
作者: 暴走杀神    时间: 2020-2-16 17:02
1103123301 发表于 2020-2-15 23:52
将 if skill.id == 1 and rand(100) < 15  #技能1有15%的概率造成2.5倍伤害
             power *= (2.5 ...

谢了,不过每个技能都可以分别这样设置吗?
作者: 1103123301    时间: 2020-2-16 21:19
暴走杀神 发表于 2020-2-16 17:02
谢了,不过每个技能都可以分别这样设置吗?

可以,比如
RUBY 代码复制
  1. if skill.id == 57 and rand(100) < 100  #技能57号有100%的概率造成2倍伤害
  2.          $技能暴击效果宝箱君 = (2.5).to_i #由于伤害不能有小数点因此2.5等价于2   3.8等价于3!
  3.          self.damage *= $技能暴击效果宝箱君 #伤害乘以2
  4.          self.critical = true #会心一击标志
  5.        end
  6. if skill.id == 58 and rand(100) < 100  #技能58号有100%的概率造成2倍伤害
  7.          $技能暴击效果宝箱君 = (2.5).to_i #由于伤害不能有小数点因此2.5等价于2   3.8等价于3!
  8.          self.damage *= $技能暴击效果宝箱君 #伤害乘以2
  9.          self.critical = true #会心一击标志
  10.        end

但要想一步到位还有这个方法。
$技能暴击栏宝箱君 = [57,58,59] #将技能化为数组等价于skill.id == 57 skill.id == 58 skill.id == 59
      if $技能暴击栏宝箱君.include?(skill.id) and rand(100) < 100  #自定的技能有100%的概率造成2倍伤害
         $技能暴击效果宝箱君 = (2.5).to_i #由于伤害不能有小数点因此2.5等价于2   3.8等价于3!
         self.damage *= $技能暴击效果宝箱君 #伤害乘以2
         self.critical = true #会心一击标志
       end
作者: 轩辕合流    时间: 2020-2-17 17:00
暴走杀神 发表于 2020-2-16 17:02
谢了,不过每个技能都可以分别这样设置吗?

可以,is_a判断对象,然后角色和敌人可以的分开设置。  技能就用id来判定或者其他什么的
作者: 暴走杀神    时间: 2020-2-17 21:17
1103123301 发表于 2020-2-16 21:19
可以,比如
if skill.id == 57 and rand(100) < 100  #技能57号有100%的概率造成2倍伤害
         $技能 ...

好的,谢了




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