#============================================================================== # ■ 事件碰撞v1.0 2014 10.28 by 魔族宝 #------------------------------------------------------------------------------ # 在事件名内标注<横 = n><纵 = n> # 横向设置为1的话,事件左右一格均不可通行。 # 纵向设置为1的话,事件上下一格均不可通行 # 如果不设置的话,依照原来的碰撞方法。 #============================================================================== #============================================================================== # ■ Game_Event #------------------------------------------------------------------------------ # 处理事件的类。条件判断、事件页的切换、并行处理、执行事件功能 # 在 Game_Map 类的内部使用。 #============================================================================== class Game_Event < Game_Character #-------------------------------------------------------------------------- # ● 判断所在座标是否指定位置 # x : X 座标 # y : Y 座标 #-------------------------------------------------------------------------- def pos?(x, y) xt=(@x==x) xt=(x >= @x-$1.to_i and x <= @x+$1.to_i) if @event.name=~/<横 = (\d+)>/ yt=(@y==y) yt=(y >= @y-$1.to_i and y <= @y+$1.to_i) if @event.name=~/<纵 = (\d+)>/ return (xt and yt) end end
#==============================================================================
# ■ 事件碰撞v1.0 2014 10.28 by 魔族宝
#------------------------------------------------------------------------------
# 在事件名内标注<横 = n><纵 = n>
# 横向设置为1的话,事件左右一格均不可通行。
# 纵向设置为1的话,事件上下一格均不可通行
# 如果不设置的话,依照原来的碰撞方法。
#==============================================================================
#==============================================================================
# ■ Game_Event
#------------------------------------------------------------------------------
# 处理事件的类。条件判断、事件页的切换、并行处理、执行事件功能
# 在 Game_Map 类的内部使用。
#==============================================================================
class Game_Event < Game_Character
#--------------------------------------------------------------------------
# ● 判断所在座标是否指定位置
# x : X 座标
# y : Y 座标
#--------------------------------------------------------------------------
def pos?(x, y)
xt=(@x==x)
xt=(x >= @x-$1.to_i and x <= @x+$1.to_i) if @event.name=~/<横 = (\d+)>/
yt=(@y==y)
yt=(y >= @y-$1.to_i and y <= @y+$1.to_i) if @event.name=~/<纵 = (\d+)>/
return (xt and yt)
end
end
|