#============================================================================== # +++ 限制移动方向的特定区域 +++ #============================================================================== # 提问区应求 By 三途亚梦 # 原帖地址:[url=https://rpg.blue/thread-379688-1-1.html]https://rpg.blue/thread-379688-1-1.html[/url] #============================================================================== # 本脚本的作用给区域自定义不同方向的通行。 #============================================================================== # # ★在Nopassaingregion按照[区域ID, 通行方向的ID] # 的格式写下数值就能使得特定区域的图块不可通行。 # # 其中代表通行方向的ID为: # 向下(2) 向左(4) 向右(6) 向上 (8) # #============================================================================== module Amu module Region_Nopassaing Nopassaingregion = [[11, 2], [12, 4], [13, 6], [14, 8], [15, 8, 4], [16, 8, 6], [17, 2, 4], [18, 2, 6]] #这里默认使用了11~18号区域,分别为 #11禁止向下;12禁止向左;13禁止向右;14禁止向上 #15禁止向上和向左;16禁止向上向右;17禁止向下向左;18禁止向下向右。 end end class Game_CharacterBase #-------------------------------------------------------------------------- # ● 判定是否可以通行(检查 地图的通行度 和 前方是否有路障) # d : 方向(2,4,6,8) #-------------------------------------------------------------------------- alias amu_passable_without_region? passable? def passable?(x, y, d) regions = Amu::Region_Nopassaing::Nopassaingregion return false if regions.any? {|r| r[0] == $game_map.region_id(x, y) && (1..(r.size-1)).any? {|i| r[i] == d}} amu_passable_without_region?(x, y, d) end end
QQ截图20150606004622.jpg (389.98 KB, 下载次数: 30)
QQ截图20150606004630.jpg (375.84 KB, 下载次数: 28)
QQ截图20150606004639.jpg (436.64 KB, 下载次数: 31)
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |