Date: 2019/03/09 07:39:03 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
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
BloodFlaskVampire:
type: item
display name: "<&4><bold>Blood Flask"
material: potion[flags=li@HIDE_ATTRIBUTES]
lore:
- A flask of vampire blood.
- Can heal any non-vampire.
BloodFlask:
type: item
display name: "<&4><bold>Blood Flask"
material: potion[flags=li@HIDE_ATTRIBUTES]
lore:
- A flask of blood.
- Can heal any vampire
DaylightRing:
type: Item
display name: "<&4><bold>Daylight Ring"
material: iron_nugget
lore:
- This ring allows the darkness
- to walk in the light.
WoodenDagger:
type: item
display name: "<&4><bold>Wooden Dagger"
material: stick
recipe:
- i@air|i@air|i@air
- i@air|stick|i@air
- i@air|stick|i@air
lore:
- A wooden dagger crafted with
- the purpose of cleansing the
- world from darkness.
BloodConsumption:
type: world
debug: false
events:
on player consumes BLOODFLASK:
- if <player.has_flag[is_a_vampire]> && <player.food_level> < 24 {
- feed 5
}
- if !<player.has_flag[is_a_vampire]> {
- cast confusion <player> d:3s hide_particles
- narrate "<&8><&o>The consumption of non-vampiric blood disorients you."
}
on player consumes BLOODFLASKVAMPIRE:
- if <player.has_flag[is_a_vampire]> && <player.food_level> < 24 {
- feed 3
}
- if !<player.has_flag[is_a_vampire]> {
- heal 4
- narrate "<&8><&o>The consumption of vampiric blood heals you slightly."
}
on player consumes item:
- if <player.has_flag[is_a_vampire]> {
- if <context.item.scriptname> != "BLOODFLASK" && <context.item.scriptname> != "BLOODFLASKVAMPIRE" {
- determine cancelled
}
}
VampirePerks:
type: world
debug: false
events:
on player join:
- if <player.has_flag[is_a_vampire]> {
- flag player specie:Vampire
}
- while <player.is_online> && <player.has_flag[is_a_vampire]> {
- if <player.is_online> && <player.flag[age]> > 301 {
- flag player photosensitive:!
}
- if <player.is_online> && <player.flag[age]> < 300 {
- flag player photosensitive
}
- wait 4s
- if <player.is_online> && <player.has_flag[is_a_vampire]> && <player.flag[age]> < 21 {
- cast speed <player> d:10s p:1 hide_particles
- cast jump <player> d:10 p:0 hide_particles
}
- if <player.is_online> && <player.has_flag[is_a_vampire]> && <player.flag[age]> < 41 && <player.flag[age]> > 20 {
- cast speed <player> d:10s p:2 hide_particles
- cast jump <player> d:10 p:0 hide_particles
}
- if <player.is_online> && <player.has_flag[is_a_vampire]> && <player.flag[age]> < 81 && <player.flag[age]> > 40 {
- cast speed <player> d:10s p:2 hide_particles
- cast jump <player> d:10 p:0 hide_particles
- cast strength <player> d:10s p:0 hide_particles
}
- if <player.is_online> && <player.has_flag[is_a_vampire]> && <player.flag[age]> < 151 && <player.flag[age]> > 80 {
- cast speed <player> d:10s p:2 hide_particles
- cast jump <player> d:10 p:0 hide_particles
- cast increase_damage <player> d:10s p:0 hide_particles
}
- if <player.is_online> && <player.has_flag[is_a_vampire]> && <player.flag[age]> < 301 && <player.flag[age]> > 150 {
- cast speed <player> d:10s p:2 hide_particles
- cast jump <player> d:10 p:0 hide_particles
- cast increase_damage <player> d:10s p:0 hide_particles
- cast damage_resistance <player> d:10s p:0 hide_particles
- cast regeneration <player> d:10s p:0 hide_particles
}
- if <player.is_online> && <player.has_flag[is_a_vampire]> && <player.flag[age]> < 451 && <player.flag[age]> > 300 {
- cast speed <player> d:10s p:2 hide_particles
- cast jump <player> d:10 p:0 hide_particles
- cast increase_damage <player> d:10s p:1 hide_particles
- cast damage_resistance <player> d:10s p:1 hide_particles
- cast regeneration <player> d:10s p:1 hide_particles
}
- if <player.is_online> && <player.has_flag[is_a_vampire]> && <player.flag[age]> > 450 {
- cast speed <player> d:10s p:3 hide_particles
- cast jump <player> d:10 p:0 hide_particles
- cast increase_damage <player> d:10s p:2 hide_particles
- cast damage_resistance <player> d:10s p:2 hide_particles
- cast regeneration <player> d:10s p:2 hide_particles
}
}
on player damaged by fall:
- if <player.has_flag[is_a_vampire]> {
- determine cancelled
}
on player damaged by drowning:
- if <player.has_flag[is_a_vampire]> {
- determine cancelled
}
on player damaged by starvation:
- if <player.has_flag[is_a_vampire]> {
- determine cancelled
}
on player damaged with i@WOODENDAGGER:
- if <player.has_flag[is_a_vampire]> {
- determine 6
}
on player damaged with stick:
- if <player.has_flag[is_a_vampire]> {
- determine 3
}
on player damages entity:
- if <player.has_flag[is_a_vampire]> && <player.food_level> < 22 {
- feed 2
}
on player death:
- if <player.has_flag[vampireblood]> {
- narrate "<italic><&4>You feel a strong surge of power... and an overwhelming hunger for blood..."
- flag player is_a_vampire
- flag player specie:Vampire
}
BloodLust:
type: world
debug: false
events:
on entity damaged by player:
- if <player.has_flag[bloodlust]> {
- determine <context.damage.mul[1.25]>
}
VampireCommands:
type: command
debug: false
name: vampire
usage: /vampire
aliases:
- v
- vamp
script:
- if <player.has_flag[is_a_vampire]> && <context.args.get[1]> == "offer" {
- if <player.food_level> < 3 {
- narrate "<&4><italic>You do not have enough blood to offer.."
- queue clear
}
- foreach <player.target[player].within[3]> {
- narrate "<&4><italic>You offer <player.target[player].name> some blood"
- narrate "<&4><italic><player.name> has offered you blood. Do you accept? (Type (/vampire accept) to accept or ignore this player to deny)" targets:<player.target[player]>
- flag p@<player.target[player]> acceptingblood duration:10s
- flag p@<player.target[player]> donater:<player.name> duration:10s
}
- flag player command_cooldown duration:1s
}
- if <context.args.get[1]> == "accept" && <player.has_flag[acceptingblood]> {
- narrate "<&4><italic>You drink blood from an open wound"
- heal 4
- hurt 4 p@<player.flag[donater]>
- narrate "<&4><italic><player.name> drinks some of your blood" targets:<player.target[player]>
- feed -4 target:p@<player.flag[donater]>
- flag player command_cooldown duration:1s
- flag player acceptingblood:!
- if !<player.has_flag[is_a_vampire]> {
- flag player vampireblood duration:2m
}
- if <player.has_flag[is_a_vampire]> {
- feed 4
}
}
- if <player.has_flag[is_a_vampire]> && <context.args.get[1]> == "n" {
- if !<player.has_effect[night_vision]> {
- cast night_vision <player> d:10000
- flag player command_cooldown duration:1s
}
else {
- cast night_vision <player> d:0
- flag player command_cooldown duration:1s
}
}
- if <player.has_flag[is_a_vampire]> && <context.args.get[1]> == "b" {
- if !<player.has_flag[bloodlust]> && <player.food_level> > 2 {
- flag player bloodlust
- narrate "<&4><italic>The hunger for blood takes control"
- while <player.food_level> > 1 && <player.has_flag[bloodlust]> {
- adjust <player> walk_speed:0.4
- feed -1
- wait 6t
}
- flag player bloodlust:!
- adjust <player> walk_speed:0.2
- narrate "<&4><italic>Your body settles"
- flag player command_cooldown duration:1s
}
else {
- if <player.food_level> < 3 {
- narrate "<&4><italic>You are too hungry to enter bloodlust"
}
- flag player bloodlust:!
- flag player command_cooldown duration:1s
}
}
- if <player.has_flag[is_a_vampire]> && !<player.has_flag[command_cooldown]> {
- narrate "__________________________________________________"
- narrate "<&l><&9>Welcome to the Vampire Command Panel!"
- narrate "Your sun exposure is at <bold><&7><player.flag[sun_exposure]>"
- narrate "<&9>Here are some commands you can type<&co>"
- narrate "/vampire offer (cursor on target)"
- narrate "/vampire accept"
- narrate "/vampire n (Toggle Night Vision)"
- narrate "/vampire b (Bloodlust)"
- narrate "__________________________________________________"
}