Project1

标题: 如何在公共事件中获取技能的使用者和被使用者? [打印本页]

作者: c21c21    时间: 2022-8-7 18:40
标题: 如何在公共事件中获取技能的使用者和被使用者?
本帖最后由 c21c21 于 2022-8-7 18:51 编辑

如题 某个技能 绑定了一个公共事件
然后我想在这个公共事件中 对技能的使用者做一些事 对被使用者做一些事 应该怎么做?
MZ的变量 游戏数据那里 有一个上一个操作者的行动id 可以实现我想要的效果
但是XP这边貌似没有这个功能 我就不知道该怎么办了
暂时不懂脚本 如果涉及到脚本请麻烦详细说明该怎么做
万分感谢
作者: guoxiaomi    时间: 2022-8-7 20:23
本帖最后由 guoxiaomi 于 2022-8-8 11:00 编辑

场景类Scene_Battle的实例变量@active_battler和@target_battlers应该是你想要的东西。在main前添加脚本
  1. class Scene_Battle  
  2.   attr_reader :active_battler
  3.   attr_reader :target_battlers
  4. end
复制代码

然后就可以访问这两个实例变量了,比如把当前的行动者的ID存到1号变量里:
  1. $game_variables[1] = $scene.active_battler.id
复制代码

更多的用法可以看我签名里的《战斗调用公共事件》,不过需要一点脚本基础。
作者: c21c21    时间: 2022-8-7 21:49
guoxiaomi 发表于 2022-8-7 20:23
场景类Scene_Battle的实例变量@active_battler和@target_battlers应该是你想要的东西。在main前添加脚本
然 ...

感谢 再问一下
$game_variables[1] = $scene.active_battler.id 这行应该写在哪里啊?
作者: c21c21    时间: 2022-8-7 21:53
guoxiaomi 发表于 2022-8-7 20:23
场景类Scene_Battle的实例变量@active_battler和@target_battlers应该是你想要的东西。在main前添加脚本
然 ...

原谅我比较菜 再问一下 前面的是这个意思是吧?

作者: c21c21    时间: 2022-8-8 09:50
guoxiaomi 发表于 2022-8-7 20:23
场景类Scene_Battle的实例变量@active_battler和@target_battlers应该是你想要的东西。在main前添加脚本
然 ...

不用了 已经知道了 感谢
作者: c21c21    时间: 2022-8-9 10:44
本帖最后由 c21c21 于 2022-8-9 11:29 编辑
guoxiaomi 发表于 2022-8-7 20:23
场景类Scene_Battle的实例变量@active_battler和@target_battlers应该是你想要的东西。在main前添加脚本
然 ...


不好意思 还要再问一下
在某个技能绑定的公共事件里
我先$game_variables[1] = $scene.active_battler.id
再$game_variables[2] = $scene.target_battler.id
之后显示文章\v[1]、\v[2] 看结果
为什么target_battler这个 出来的结果永远是4啊
active_battler很正常 但是target_battler不管是谁打谁 永远是4

如果加上s的话 这回倒不是4了 变成了一个超大的随机数 这个怎么用啊
作者: guoxiaomi    时间: 2022-8-9 13:01
c21c21 发表于 2022-8-9 10:44
不好意思 还要再问一下
在某个技能绑定的公共事件里
我先$game_variables[1] = $scene.active_battler.i ...

首先肯定是用target_battlers,它返回的是数组,这是因为技能可能有多个目标。你需要用$scene.target_battlers[0].id来获取第一个目标的ID。




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