#==============================================================================
# 事件周围区域判定
#------------------------------------------------------------------------------
# 作者:正太君(聪仔)
# 请保留脚本来源...
# 本脚本来自rpg.blue
#==============================================================================
#==============================================================================
# ■ Game_Character
#==============================================================================
class Game_Character < Game_CharacterBase
attr_reader :event
end
module Kernel
#--------------------------------------------------------------------------
# ● 矩形 共6个参数
#--------------------------------------------------------------------------
# x、y :进入区域的事件x、y坐标...
# ox, oy :区域中心的事件x、y坐标...
# a :矩形的长边减1后的一半,可理解成长轴向的半径...
# b :矩形的短边减1后的一半,可理解成短轴向的半径...
# 例如一个7×3的矩形,a为3,b为1;端正的正方形a、b相等...
#--------------------------------------------------------------------------
def in_rectangle(x, y, ox, oy, a, b)
(x - ox).abs <= a and (y - oy).abs <= b
end
#--------------------------------------------------------------------------
# ● 45度倾斜的正方形(或称为LZ所谓的菱形) 共5个参数
#--------------------------------------------------------------------------
# x、y :进入区域的事件x、y坐标...
# ox, oy :区域中心的事件x、y坐标...
# r : 正方形的对角线长度减1后的一半,可理解成正方形的半径...
#--------------------------------------------------------------------------
def in_square(x, y, ox, oy, r)
((x - ox) - (y - oy)).abs <= r and ((x - ox) + (y - oy)).abs <= r
end
end