Date: 2018/08/18 05:36:21 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
WaterBubble:
type: world
debug: false
events:
on player right clicks with item:
- if <player.has_flag[element_toggled]> {
- queue clear
}
- if <player.flag[element].is[!=].to[water]> {
- queue clear
}
- if <player.has_flag[WaterBubble]> {
- flag <player> WaterBubble:!
- flag <player> WaterBubbleLocs:!
}
- if <player.location.material.name.is[==].to[stationary_water]> {
- if !<player.has_flag[WaterBubble]> {
- flag <player> WaterBubble
}
}
- wait 1t
- while <player.has_flag[WaterBubble]> && !<player.has_flag[element_toggled]> {
- flag <player> WaterBubble duration:1.5s
- flag <player> WaterBubbleLocs:<player.location.find.blocks[stationary_water].within[<player.flag[WaterIndex]>]> duration:2s
- modifyblock <player.flag[WaterBubbleLocs]> air
- wait 1t
}
on block physics:
- foreach <server.list_online_players> {
- if <def[value].has_flag[WaterBubble]> {
- narrate "found waterbubble!"
- if <def[value].flag[WaterBubbleLocs].contains[<context.location>]> {
- narrate "cancelled!"
- determine cancelled
}
}
}