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

Project1

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

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

[复制链接]

Lv3.寻梦者

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

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

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

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

Lv4.逐梦者

梦石
0
星屑
6260
在线时间
1481 小时
注册时间
2015-7-25
帖子
652

开拓者

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
笨肉包的首款像素OC游戏《花城梦之心》尝试制作中~
目前的坑 【不可思议的迷宫】幽灵契约外传:歌莉娅
持续更新中~ 当前进度 v0.28
大版本更新时才会更新网盘文件,预计下次大版本更新:v0.30
完成度:
主线 15% 支线 0% 数据库 6% 系统 86% 美术 6%
两边同时填坑~
( 这里是笨肉包~专修魔法!目标是大魔法师!
( 坑太大啦,一个人填不完啦hhh 一定会填完的嗯...
( 每天都和bug们比试魔力~吾之魔法将扫平一切!
( 弱点是美术,魔法修行之余再补补课吧~
( 哼哼哼~这便是魔法的力量!
大家都离开啦,笨肉包也不知道还能坚持多久呀...
这是属于笨肉包一个人的旅行(再见了...蚊子湯,七重酱,笨肉包永远想你们!TwT
回复 支持 反对

使用道具 举报

Lv3.寻梦者

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

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

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1330
在线时间
82 小时
注册时间
2017-9-5
帖子
110
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-11-10 16:33

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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