Date: 2016/11/30 13:13:50 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
"TheOneAndOnlyNPCDeathEvent":
type: world
debug: false
events:
On npc dies:
- if <npc.has_flag[Zombie]||false> == true {
- run s@RemoveDeadFightingNPC def:<npc.id> delay:0.5s
- if <npc.has_flag[Angreifer]> && {
- yaml id:<player[<npc.flag[Angreifer]>]> set Stats.NPCZombieKills:+:1
- yaml savefile:/Spieler/<player[<npc.flag[Angreifer]>]>.yml id:<player[<npc.flag[Angreifer]>]>
}
- if <npc.flag[ZombieInventar].as_list.size||0> > 0 {
- foreach <npc.flag[ZombieInventar].as_list> {
- drop %value% <npc.location> speed:1
}
}
- if <math.as_int:<server.get_npcs_flagged[Zombie].size>-1||0> >= 1 {
- determine "<gray>[Ger<ü>cht] Ein Super-Zombie weniger, bleiben noch <server.get_npcs_flagged[Zombie].size> <ü>brig."
}
else {
- determine passively no_drops
- determine "<gold>Der letzte bekannte Super-Zombie wurde get<ö>tet."
}
}
- if <npc.has_flag[Zombie]||false> == false && <npc.name> == Zombie {
- ^run s@RemoveDeadFightingNPC def:<npc.id> delay:1s
- determine "<gray>[Ger<ü>cht] Ein inaktiver Zombie weniger D: Wir arbeiten an der Beseitigung des Fails."
}
- if <npc.has_flag[Soldat]> {
- run s@ReplaceDeadSoldier def:<npc.flag[Respawnposition]> delay:10s
- run s@RemoveDeadFightingNPC def:<npc.id> delay:1s
- if <npc.has_flag[Angreifer]> {
- yaml id:<player[<npc.flag[Angreifer]>]> set Stats.NPCSoldatKills:+:1
- yaml savefile:/Spieler/<player[<npc.flag[Angreifer]>]>.yml id:<player[<npc.flag[Angreifer]>]>
}
- flag server NPC_Soldat_Respawnliste:->:<npc.flag[Respawnposition]>
- determine passively no_drops
- determine "<gray>[Ger<ü>cht] Es finden K<ä>mpfe auf einer Milit<ä>rbasis statt."
}
RemoveDeadFightingNPC:
type: task
debug: true
script:
- execute as_server "npc remove <def[1]>"