在新窗口中打开脚本页

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
#==============================================================================
# ■ 地图卷动扩展
# By :VIPArcher [email: VIPArcher@sina.com]
# -- 本脚本来自 httprm.66rpg.com 使用或转载请保留以上信息。
#==============================================================================
# 说明:
# 事件脚本里调用 start_scroll(direction, distance, speed)来进行画面卷动
# direction: 7 8 9 distance:卷动距离
# ↖↑↗ speed:卷动速度 1 - 6
# 4← →6 1: 1/8倍速度; 2: 1/4倍速度
# ↙↓↘ 3: 1/2倍速度; 4: 正常速度
# 1 2 3 5: 2倍速度; 6: 4倍速度
# 如果斜向移动到边界时则会变成水平方向卷动
#==============================================================================
$VIPArcherScript ||= {};$VIPArcherScript[:map_scroll] = 20150503
#==============================================================================
class Game_Interpreter
#--------------------------------------------------------------------------
# ● 执行地图卷动 start_scroll(direction, distance, speed)
# direction 卷动方向(1-9)
# distance 卷动距离(格数)
# speed 卷动速度(1-6)
#--------------------------------------------------------------------------
def start_scroll(direction, distance, speed)
Fiber.yield while $game_map.scrolling?
$game_map.start_scroll(direction, distance, speed)
end
end
#==============================================================================
class Game_Map
#--------------------------------------------------------------------------
# ● 执行卷动
#--------------------------------------------------------------------------
alias do_scroll_dir8_extra do_scroll
def do_scroll(direction, distance)
do_scroll_dir8_extra(direction, distance)
case direction
when 1; scroll_down (distance);scroll_left (distance)
when 3; scroll_down (distance);scroll_right(distance)
when 7; scroll_up (distance);scroll_left (distance)
when 9; scroll_up (distance);scroll_right(distance)
else end
end
end

文章目录