在新窗口中打开脚本页

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#==============================================================================
# ■ 站在椅子上
# by :VIPArcher [email: VIPArcher@sina.com]
# -- 本脚本来自 http://rm.66rpg.com 使用或转载请保留以上信息。
#------------------------------------------------------------------------------
# ■ 使用说明:
# 通过对【椅子】图块设定特定的地形标志而让角色的 screen_y 坐标
# 微调以达到模拟出角色站在椅子上的感觉。
# 如果事件名称里带有EV(默认事件名)则不会调整其 screen_y 坐标
#==============================================================================
$VIPArcherScript ||= {};$VIPArcherScript[:chair_y] = 20140920
#--------------------------------------------------------------------------------
module VIPArcher end
#==============================================================================
# ★ 设定部分 ★
#==============================================================================
module VIPArcher::CHAIR
TERRAIN_Y = {
5 => 4, # 小椅子
6 => 8, # 大椅子
7 => 10 # 床铺
};TERRAIN_Y.default = 0 #这行不能删
end
#==============================================================================
# ☆ 设定结束 ☆
#==============================================================================
class Game_CharacterBase
include VIPArcher::CHAIR
#--------------------------------------------------------------------------
# ● 设置站在椅子上的y调整
#--------------------------------------------------------------------------
def chair_y
if self.is_a?(Game_Event) # 判定是否地图事件
return 0 if self.instance_variable_get("@event").name.include?("EV")
return 0 if move_frequency == 5
end
@stop_count == 0 ? 0 : TERRAIN_Y[self.terrain_tag]
end
#--------------------------------------------------------------------------
# ● 获取画面 Y 坐标(加上椅子高度)
#--------------------------------------------------------------------------
alias vip20140919_screen_y screen_y
def screen_y
vip20140919_screen_y - chair_y
end
end

文章目录