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

Project1

 找回密码
 注册会员
搜索
楼主: 暴走杀神
打印 上一主题 下一主题

[已经解决] 我想改一下技能的命中判定

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2104
在线时间
81 小时
注册时间
2018-6-29
帖子
19

R考场第七期纪念奖

1
发表于 2020-2-15 23:52:11 | 显示全部楼层
暴走杀神 发表于 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

评分

参与人数 1星屑 +50 +1 收起 理由
RyanBern + 50 + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2104
在线时间
81 小时
注册时间
2018-6-29
帖子
19

R考场第七期纪念奖

2
发表于 2020-2-16 21:19:34 | 显示全部楼层
暴走杀神 发表于 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
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-5 16:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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