重定义 Game_Event 的 passable? 方法应该就可以了。
例子(未测试):
class Game_Event alias_method :p_20150225?, :passable? def passable?(x, y, d) return false unless p_20150225?(x, y, d) x2 = $game_map.round_x_with_direction(x, d) y2 = $game_map.round_y_with_direction(y, d) $game_map.region_id(x2, y2) != 5 # 5号区域NPC不可通行 end end
class Game_Event
alias_method :p_20150225?, :passable?
def passable?(x, y, d)
return false unless p_20150225?(x, y, d)
x2 = $game_map.round_x_with_direction(x, d)
y2 = $game_map.round_y_with_direction(y, d)
$game_map.region_id(x2, y2) != 5 # 5号区域NPC不可通行
end
end
|