Date: 2014/01/03 18:00:49 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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
"BossFight":
type: assignment
interact scripts:
- 1 Boss
default constants:
#Range to warn targets should be larger than Range
WarningRange: 15
WarningMessage: "Any closer and I will kill you."
Health: 400
#Requires Sentry to equip and change Armor or weapons, See Sentry documentation for Weapons types. ID Number and Names are acceptable
#http://wiki.citizensnpcs.com/Sentry#Commands
MeleeEquipment: Diamond_Sword
RangeEquipment: bow
Helmet: 310
ChestPlate: 311
Leggins: 312
Boots: 313
#True or false, if true it will attack anything that attacked it instead of current target
Retaliate: true
#This is the damage the sentry does with each hit, regardless of weapon (or object) held.
Strength: 1
#This value is subtracted from all incoming damage.
#An armor of 10 makes the Sentry very hard to hurt. Armor items equipped on the Sentry have no effect on combat.
Armor: 1
#range in which it will find targets 1-100
MeleeRange: 5
#range in which it will find targets 1-100
RangeAttackRange: 30
#Attack speed can be 0-30
AttackSpeed: 1
#walking speed 0-1.5
Speed: 0.5
#This is the number of seconds between heals of 1 point, values less than 1.0 are acceptable. Set to 0 to turn off healing.
RegenRate: 3.5
#Number in Seconds before the Boss Respawns
Respawn: 10
#How well the NPC can see in the Dark choose a number 0-16
Nightvision: 16
#See http://jd.bukkit.org/rb/apidocs/org/bukkit/potion/PotionEffectType.html for different spells effects
SpellTimeOut: 5s
Spell1: Poison
Spell1Duration: 10s
Spell1Power: 1
#Spell 2
Spell2: Slow
Spell2Duration: 10s
Spell2Power: 1
#Spell 3
Spell3: Blindness
Spell3Duration: 10s
Spell3Power: 1
#Spell 4
Spell4: Confusion
Spell4Duration: 10s
Spell4Power: 1
#Spell 5
Spell5: Harm
Spell5Duration: 1s
Spell5Power: 1
#Spell 6
Spell6: Wither
Spell6Duration: 10s
Spell6Power: 1
#Spell 7
Spell7: Weakness
Spell7Duration: 10s
Spell7Power: 1
#Rewards for killing the Boss
Reward1: 264
Reward1Qty: 1
actions:
on assignment:
- ^execute as_npc "npc select <npc.id>"
- ^execute as_npc "Trait Sentry"
- trigger name:chat toggle:true
- trigger name:click toggle:true
- trigger name:damage toggle:true
- trigger name:proximity toggle:true radius:<cons:MeleeRange>
- execute as_npc "sentry Health <cons:Health>"
- execute as_npc "sentry Armor <cons:Armor>"
- execute as_npc "sentry Strength <cons:Strength>"
- execute as_npc "sentry Range <cons:RangeAttackRange>"
- execute as_npc "sentry Speed <cons:Speed>"
- execute as_npc "sentry Attackrate <cons:AttackSpeed>"
- execute as_npc "sentry HealRate <cons:RegenRate>"
- execute as_npc "sentry Nightvision <cons:Nightvision>"
- execute as_npc "sentry Respawn <cons:Respawn>"
- execute as_npc "sentry equip <cons:Helmet>"
- execute as_npc "sentry equip <cons:Leggins>"
- execute as_npc "sentry equip <cons:ChestPlate>"
- execute as_npc "sentry equip <cons:Boots>"
- execute as_npc "sentry retaliate <cons:Retaliate>"
- execute as_npc "sentry Warning <cons:WarningMessage>"
- execute as_npc "sentry target add entity:player"
- execute as_npc "npc vulnerable"
- execute as_npc "sentry invincible false"
on death:
- chat "Nooooooooooooooooo!!!"
- flag npc in_pursuit:!
- drop item:<cons:reward1> qty:<cons:reward1Qty> location:<npc.location>
on damage:
- if <npc.health.max> - <npc.health> > 550 && <npc.health.max> == 600 {
- despawn 5
- execute as_npc "npc select 0"
- execute as_npc "sentry Health 500"
- narrate "Kruziikrel, ziil los dii du!"
}
- if <npc.health.max> - <npc.health> > 450 {
- despawn 6
- execute as_npc "npc select 0"
- execute as_npc "sentry Health 400"
- narrate "Sahrotaar, ziil los dii du!"
}
- if <npc.health.max> - <npc.health> > 350 && <npc.health.max> == 400 {
- despawn 7
- execute as_npc "npc select 0"
- execute as_npc "sentry Health 300"
- narrate "Relonikiv, ziil los dii du!"
}
on enter proximity:
- lookclose toggle:true
- if <flag.npc[inpursuit]> queue clear
- flag npc in_pursuit:true
- attack
- random {
- execute as_npc "shout yol toor shul"
- execute as_npc "shout liss slen nus"
- execute as_npc "shout rii vaaz zol"
- execute as_npc "shout fo krah diin"
- execute as_npc "shout gaan lah haas"
- execute as_npc "shout fus ro dah"
- execute as_npc "shout fus ro dah"
}
on exit proximity:
- if !<flag.npc[in_pursuit]> queue clear
- lookclose toggle:false
on despawn:
- flag npc in_pursuit:!
on spawn:
- announce "<&4><npc.name.nickname> has respawned."
- execute as_npc "npc select 0"
- execute as_npc "sentry Health 600"
#Acual Denizen Boss script here
'Boss':
type: interact
steps:
'1':
proximity trigger:
entry:
script:
- ^Execute as_npc "Sentry equip <Cons:MeleeEquipment>"
- run Cast delay:<cons:SpellTimeOut>
- attack
#If player is out of range the Boss will switch to a ranged weapon specified above to start attacking
exit:
script:
- ^Execute as_npc "Sentry equip <Cons:RangeEquipment>"
- random {
- execute as_npc "shout Wuld"
- execute as_npc "shout Wuld Nah"
- execute as_npc "shout Wuld Nah Kest"
}
#If you add more spells please make sure to edit the 7 to the new count.
'Cast':
type: task
script:
- random {
- execute as_npc "shout yol toor shul"
- execute as_npc "shout liss slen nus"
- execute as_npc "shout rii vaaz zol"
- execute as_npc "shout fo krah diin"
- execute as_npc "shout gaan lah haas"
- execute as_npc "shout Zun Haal Viik"
}
'Spell':
type: task
context: id
script: