Date: 2023/01/14 01:20:30 UTC-08: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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
direction_arrow_task:
type: task
debug: false
definitions: loc
script:
- if !<[loc].exists>:
- stop
- define unicodes <script[direction_arrow_unicodes].data_key[images]>
- define pl <player.location>
- define angle <[pl].face[<[loc]>].yaw.sub[<[pl].yaw>]>
- if <[angle]> < 0:
- define angle:+:360
#-North 0 degrees
- if <[angle]> >= 0 && <[angle]> < 15:
- define unicode <[unicodes].get[u0]>
# 15 degrees
- else if <[angle]> >= 15 && <[angle]> < 30:
- define unicode <[unicodes].get[u15]>
# 30 degrees
- else if <[angle]> >= 30 && <[angle]> < 45:
- define unicode <[unicodes].get[u30]>
# 45 degrees
- else if <[angle]> >= 45 && <[angle]> < 60:
- define unicode <[unicodes].get[u45]>
# 60 degrees
- else if <[angle]> >= 60 && <[angle]> < 75:
- define unicode <[unicodes].get[u60]>
#-East 90 degrees
- else if <[angle]> >= 75 && <[angle]> < 90:
- define unicode <[unicodes].get[u90]>
#-East 90 degrees
- else if <[angle]> >= 90 && <[angle]> < 105:
- define unicode <[unicodes].get[u90]>
# 105 degrees
- else if <[angle]> >= 105 && <[angle]> < 120:
- define unicode <[unicodes].get[u105]>
# 120 degrees
- else if <[angle]> >= 120 && <[angle]> < 135:
- define unicode <[unicodes].get[u120]>
# 135 degrees
- else if <[angle]> >= 135 && <[angle]> < 150:
- define unicode <[unicodes].get[u135]>
# 150 degrees
- else if <[angle]> >= 150 && <[angle]> < 165:
- define unicode <[unicodes].get[u150]>
#-South 180 degrees
- else if <[angle]> >= 165 && <[angle]> < 180:
- define unicode <[unicodes].get[u180]>
#-South 180 degrees
- else if <[angle]> >= 180 && <[angle]> < 195:
- define unicode <[unicodes].get[u180]>
# 195 degrees
- else if <[angle]> >= 195 && <[angle]> < 210:
- define unicode <[unicodes].get[u195]>
# 210 degrees
- else if <[angle]> >= 210 && <[angle]> < 225:
- define unicode <[unicodes].get[u210]>
# 225 degrees
- else if <[angle]> >= 225 && <[angle]> < 240:
- define unicode <[unicodes].get[u225]>
# 240 degrees
- else if <[angle]> >= 240 && <[angle]> < 255:
- define unicode <[unicodes].get[u240]>
#-West 270 degrees
- else if <[angle]> >= 255 && <[angle]> < 270:
- define unicode <[unicodes].get[u270]>
#-West 270 degrees
- else if <[angle]> >= 270 && <[angle]> < 285:
- define unicode <[unicodes].get[u270]>
# 285 degrees
- else if <[angle]> >= 285 && <[angle]> < 300:
- define unicode <[unicodes].get[u285]>
# 300 degrees
- else if <[angle]> >= 300 && <[angle]> < 315:
- define unicode <[unicodes].get[u300]>
# 315 degrees
- else if <[angle]> >= 315 && <[angle]> < 330:
- define unicode <[unicodes].get[u315]>
# 330 degrees
- else if <[angle]> >= 330 && <[angle]> < 345:
- define unicode <[unicodes].get[u330]>
#-North 360 degrees
- else if <[angle]> >= 345 && <[angle]> < 360:
- define unicode <[unicodes].get[u0]>
- flag <player> direction_arrow.unicode:<[unicode].if_null[<empty>]>
# In degrees
direction_arrow_unicodes:
type: data
images:
u0:
u15:
u30:
u45:
u60:
u90:
u105:
u120:
u135:
u150:
u180:
u195:
u210:
u225:
u240:
u270:
u285:
u300:
u315:
u330: