Date: 2013/11/16 18:17:00 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
"slime_pets":
type: world
debug: false
events:
on player chats:
- if <context.message.contains[summon_slime]> == true && <player.flag[slimefriend]> == true {
- execute as_op "npc create gooey --type slime --trait controllable"
- execute as_op "npc size 1"
- execute as_op "npc assign --set slime_pet"
"slime_pet":
type: assignment
debug: false
interact scripts:
- 1 slime_follower
actions:
on assignment:
- flag player slime_follower:<npc>
- flag npc exception:->:<player>
- trigger name:proximity state:true radius:16
- flag npc mobprox_range:16
- flag npc mobprox_timer:6
- trait mobprox
on mob move proximity:
- cast slow d:60 p:10 <npc.location.find.living_entities.within[12].exclude[<npc.flag[exception]>].exclude[<npc>].get[1]>
"slime_follower":
type: interact
debug: true
steps:
"1":
proximity trigger:
move:
script:
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> speed:0.7
- if <queue.exists[SLIME_IDLE]> == true {
- queue queue:SLIME_IDLE stop
}
- ^flag player OLDLOCATION:<player.location>
- ^if <player.location.distance[<player.flag[OLDLOCATION]>]> > 0.1 {
}
else wait 1 {
- run slime_idle id:slime_idle delay:1s
}
"slime_idle":
type: task
debug: false
script:
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- ^fly <npc> origin:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,3,0]> destination:<player.location.add[<player.location.direction.vector.mul[-5]>].add[0,4,0]> speed:0.1
- run slime_idle id:slime_idle