Date: 2017/06/11 19:50:42 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
on player clicks with BlackHoleCannon:
- determine passively cancelled
- if <player.has_flag[blackholecannon]> {
- narrate "<&c>This weapon is on cooldown!"
- queue clear
}
- define item <player.item_in_hand.scriptname||false>
- define player <player>
- playsound <player.location> sound:???????? volume:2 pitch:1.7
- define points <player.location.points_between[<player.location.add[<player.eye_location.direction.vector.mul[20]>]>].distance[0.4]>
- repeat <def[points].size.as_int>:
- define currentpoint <def[points].get[<def[value]>]>
- particleprojectile <def[currentpoint]> effect:red_dust vector:0,0,0 qty:0 data:1 offset:0.001,0.001,0.001 frequency:1 loops:1 realquantity:150 realoffset:2.0
- run s@BlackHoleFlag d:<def[player]>|<def[currentpoint]>
- if <def[value].mod[5]> == 0 {
- foreach <server.list_online_players.filter[has_flag[sucked]]> {
- if <def[value].flag[sucked].is[==].to[<def[player]>]> {
- shoot <def[value]> d:<def[currentpoint]> speed:0.6 no_rotate
}
}
- foreach <w@Garden.entities.filter[has_flag[blackhole]]> {
- if <def[value].flag[blackhole].is[==].to[<def[player]>]> {
- shoot <def[value]> d:<def[currentpoint]> speed:0.6 no_rotate
}
}
}
- wait 1t
- foreach <server.list_online_players.filter[flag[sucked].is[==].to[<def[player]>]]>:
- hurt 10 <def[value]>
- flag <def[value]> sucked:!
- wait 3s
- foreach <server.list_notables[locations].filter[contains[<def[player]>]]>:
- modifyblock <def[value]> <def[value].notable_name.after[m@].before[.]>
BlackHoleFlag:
type: task
debug: true
speed: 0
script:
- foreach <def[2].find.players.within[5].filter[has_flag[sucked].not].filter[contains[<def[1]>].not]>:
- flag <def[value]> sucked:<def[1]>
- foreach <def[2].find.blocks.within[2]>:
- if <def[value].notable_name> == null && <def[value].material> != m@air {
- note <def[value]> as:<def[value].material>.<def[1]>
- shoot falling_block,<def[value].material.after[m@]> o:<def[value]> d:<def[2]> speed:0.6 save:block
- flag <entry[block].shot_entities> blackhole:<def[1]>
- modifyblock <def[value]> air
}