Project1

标题: 使用特技时执行的公共事件中怎么获取被使用者 [打印本页]

作者: 欧买歌    时间: 2016-7-30 19:05
标题: 使用特技时执行的公共事件中怎么获取被使用者
我想通过公共事件,各种判断,然后给被使用者附加状态,如何获取被使用者是谁呢
作者: 英顺的马甲    时间: 2016-7-30 23:49
本帖最后由 英顺的马甲 于 2016-7-31 01:52 编辑

RUBY 代码复制
  1. Scene_Battle = Class.new(Scene_Battle) {
  2.   superclass.constants.each{|c|const_set(c, superclass.const_get(c))}
  3.   const_set(:ACIION_RESULT_HOOKED, true)
  4.   [:make_item_action_result, :make_skill_action_result].each do |m|
  5.     define_method(m) do |*a|
  6.       super(*a)
  7.       if @common_event_id > 0
  8.         $game_system.battle_interpreter.instance_variable_set(:@attacker, @active_battler)
  9.         $game_system.battle_interpreter.instance_variable_set(:@targets, @target_battlers)
  10.       end
  11.     end
  12.   end
  13. } unless Scene_Battle.const_defined?(:ACIION_RESULT_HOOKED)

用了这脚本后公共事件内就可以用脚本来获取攻击者及对象
@attacker 是攻击者
@targets 是对象的数组
虽然并不清楚能不能实现你想要的效果==




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