Date: 2014/07/07 18:32:50 UTC-07:00
Type: Denizen Script
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
47
48
49
50
51
52
53
54
55
56
57
58
59
# Moving Parkour Walls
#
"MovingWalls":
type: world
debug: true
events:
on script reload:
- repeat 6 {
- schematic unload name:wall%value%
- schematic load name:wall%value%
}
- run InitMovingWalls delay:2s
"InitMovingWalls":
type: task
debug: false
script:
# To add a wall, def order is : startblock|position|direction
- ^run LoopWall 1|def:l@787.5,32,-392,otop|1|north
# - ^run LoopWall 2|def:l@361,18,-285,otop|2|south
# - ^run LoopWall 3|def:l@366,18,-285,otop|3|north
# - ^run LoopWall 4|def:l@366,18,-285,otop|4|south
# - ^run LoopWall 5|def:l@366,18,-285,otop|5|north
# - ^run LoopWall 6|def:l@366,18,-285,otop|1|south
# - run InitMovingWalls delay:10s
"LoopWall":
type: task
debug: false
script:
- ^define wall_id wall<def[1]>
- ^define lstart <def[2]>
- ^define startpos <def[3]>
- ^define direction <def[4]>
- ^define lend <def[2].add[0,0,4]>
- if <def[startpos].is[EQUALS].to[1]> {
- ^define movement li@0|1|2|3|4|5|4|3|2|1
}
else if <def[startpos].is[EQUALS].to[2]> {
- ^define movement li@1|2|3|4|5|4|3|2|1|0
}
else if <def[startpos].is[EQUALS].to[3]> {
- ^define movement li@2|3|4|5|4|3|2|1|0|1
}
else if <def[startpos].is[EQUALS].to[4]> {
- ^define movement li@3|4|5|4|3|2|1|0|1|2
}
else if <def[startpos].is[EQUALS].to[5]> {
- ^define movement li@4|5|4|3|2|1|0|1|2|3
}
- if <def[direction].is[EQUALS].to[south]> {
- define movement <def[movement].reverse>
}
- repeat {
- ^foreach %movement% {
- ^schematic paste name:%wall_id% <def[start_pos].add[0,0,%value%]>
}
}