Date: 2014/04/24 16:44: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
death:
type: world
events:
on player dies:
- foreach <n@<player.flag[body]>.inventory.list_contents> { - drop %value% <n@<player.flag[body]>.location> }
- remove n@<player.flag[body]>
- create player <player.name> <player.location> save:corpse
- flag player body:<n@<player.name>.id>
- assignment set script:corpse npc:<player.name>
- trigger proximity state:true radius:8 npc:n@<n@<player.name>.id>
- trigger damage state:true npc:n@<n@<player.name>.id>
- inventory swap d:in@npc[n@<player.flag[body]>] o:in@player[p@<player.name>]
- inventory clear d:in@player[p@<player.name>]
- animate n@<player.flag[body]> a:sleep
- run remove def:<entry[corpse].created_npc> delay:24h
cleancorpse:
type: task
script:
- remove %1%
corpse:
type: assignment
interact scripts:
- 10 body
body:
type: interact
Steps:
'retrive':
click trigger:
script:
- execute as_op "ex inventory open d:<npc.inventory>"
damage trigger:
script:
- execute as_op "ex inventory open d:<npc.inventory>"
proximity trigger:
enter:
script:
- if <npc.inventory.qty> == 0 remove n@<npc.id>
exit:
script:
- if <npc.inventory.qty> == 0 remove n@<npc.id>