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

Project1

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

[有事请教] 关于魔法反射必中的问题

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1040
在线时间
69 小时
注册时间
2017-9-5
帖子
79
跳转到指定楼层
1
发表于 2024-4-6 16:06:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
比如我方魔法回避率90%,没有魔法反射【默认100%魔法反射】的时候,敌方魔法攻击命中率10%,90%几率miss
我方套上魔法反射后,【90%】的回避率就直接等于0%,敌方魔法攻击必定命中【只是被反射回去了】
怎么能让我方先计算回避率,在回避不了的情况下才触发魔法反射呢?

Lv3.寻梦者

梦石
0
星屑
4828
在线时间
1355 小时
注册时间
2015-7-25
帖子
544

开拓者

2
发表于 2024-4-6 18:08:01 | 只看该作者
话说触发反射不是对战斗更有利吗?为啥纠结于闪避呢
只改了魔法反射,物理反击没动

RUBY 代码复制
  1. class Game_Battler
  2.   attr_accessor :invoke_magic
  3.   alias mf240406ini initialize
  4.   def initialize
  5.     mf240406ini
  6.     @invoke_magic = false
  7.   end
  8.   def item_apply(user, item)
  9.     @result.clear
  10.     @result.used = item_test(user, item)
  11.     @result.missed = (@result.used && rand >= item_hit(user, item))
  12.     @result.evaded = (!@result.missed && rand < item_eva(user, item))
  13.     if @result.hit?
  14.       return $invoke_magic = true if @invoke_magic
  15.       unless item.damage.none?
  16.         @result.critical = (rand < item_cri(user, item))
  17.         make_damage_value(user, item)
  18.         execute_damage(user)
  19.       end
  20.       item.effects.each {|effect| item_effect_apply(user, item, effect) }
  21.       item_user_effect(user, item)
  22.     end
  23.   end
  24. end
  25. class Scene_Battle
  26.   alias mf240406start start
  27.   def start
  28.     mf240406start
  29.     $invoke_magic = false
  30.   end
  31.   def invoke_item(target, item)
  32.     if rand < target.item_cnt(@subject, item)
  33.       invoke_counter_attack(target, item)
  34.     elsif rand < target.item_mrf(@subject, item)
  35.       target.invoke_magic = true
  36.       apply_item_effects(apply_substitute(target, item), item)
  37.     else
  38.       apply_item_effects(apply_substitute(target, item), item)
  39.     end
  40.     invoke_magic_reflection(target, item) if $invoke_magic
  41.     $invoke_magic = false
  42.     target.invoke_magic = false
  43.     @subject.last_target_index = target.index
  44.   end
  45. end
目前的坑 幽灵契约外传:歌莉娅
回归持续更新中~ 进度 v0.22/v1.00
笨肉包开始学像素画啦!努力训练中XD
啊~今天也是填mo坑yu的一天呢!
这是属于笨肉包一个人的旅行~(再见了...蚊子湯,七重酱,笨肉包永远想你们!TwT

看!是肉包!
只能看!不能吃!
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1040
在线时间
69 小时
注册时间
2017-9-5
帖子
79
3
 楼主| 发表于 2024-4-6 18:35:18 | 只看该作者
魔法丶小肉包 发表于 2024-4-6 18:08
话说触发反射不是对战斗更有利吗?为啥纠结于闪避呢
只改了魔法反射,物理反击没动

感谢大佬帮忙,主要是我想弄个【魔法反射无视】,能贯通反射,不闪避贯通的魔法都就必中了
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1040
在线时间
69 小时
注册时间
2017-9-5
帖子
79
4
 楼主| 发表于 2024-4-9 17:39:27 | 只看该作者
本帖最后由 间桐樱 于 2024-4-9 20:21 编辑
魔法丶小肉包 发表于 2024-4-6 18:08
话说触发反射不是对战斗更有利吗?为啥纠结于闪避呢
只改了魔法反射,物理反击没动


大佬这几行代码插在哪里呀?
alias mf240406ini initialize
alias mf240406start start
  def initialize
    mf240406ini

点评

没读懂没关系,只是在不清楚的情况下尽量不要随意修改哦,这几行甚至都不在同一个类中...  发表于 2024-4-11 11:25
因为没读懂......  发表于 2024-4-10 14:16
不要去管这几行,你直接把整个脚本复制进去并放在main的上方就行了  发表于 2024-4-9 23:48
你直接全部复制进去直接用即可,这几行是你从哪里单独弄出来的呢?  发表于 2024-4-9 23:45
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-2 17:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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