Date: 2015/12/09 15:28:45 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
#Priest simple quest (maybe)
#I created this script to practice what I had learned by watching the tutorial vidoes at
#http://mcmonkey.org/denizen/vids
#it really is a short script if you trim out the narrates
#The priest in this script will give the quest
#The "dead npc" will give the completion flag
#this NPC on completion will give a reward
#Last edit - 8 Dec 2015
#Rev 0.2e
#Tobias_Knight
#
# First Erisian Priest
#chat format
pchat:
type: format
format: "<&b><npc.name><&f> <&co> <&a><text>"
#
#Now the assignment scripts
ErisianPriestQuest:
type: assignment
interact scripts:
- 10 HailEris
actions:
on assignment:
#Here we go ahead and turn on the triggers and set the range of the proximity trigger.
#but wait we turned OFF the click triger!?!?!? Why? Well do you want random people just coming
#up and fondling you? Well neither does the priest, talk to them a bit even offer to help then try to click them
- trigger name:click state:false
- trigger name:chat state:true
- trigger name:proximity state:true radius:8
#Now we equip our priest with some gear.
- ^equip <npc> head:i@air chest:i@ErisianTunic legs:i@ErisianLeggings boots:i@ErisianBoots
#The Dead NPC , no his name does not have to be Jim, but would need to be changed in some of the narration
#this is pretty basic
DeadJim:
type: assignment
interact scripts:
- 10 LootJim
actions:
on assignment:
- ^equip <npc> head:i@air chest:i@ErisianTunic legs:i@ErisianLeggings boots:i@ErisianBoots
- trigger name:click state:true
- animate <npc> animation:sleep
#
#Item scripts
ErisianTunic:
type: item
material: leather_chestplate
color: PURPLE
display name: Robes of an Erisian Priest
lore:
- The Purple Tunic of an Erisian Priest
enchantments:
- PROTECTION_PROJECTILE
ErisianLeggings:
type: item
material: leather_leggings
color: PURPLE
display name: Leggings of an Erisian
lore:
- The Purple Leggings of an Erisian Priest
ErisianBoots:
type: item
material: leather_boots
color: PURPLE
display name: Boots of an Erisian
lore:
- The Purple Boots of an Erisian Priest
enchantments:
- PROTECTION_FALL
PrincipiaDiscordia:
type: book
title: Principia Discordia
author: Malaclypse the Younger
text:
- Hail Eris!<n>/All/ Hail Kallisti!<n>A proper greeting,<n>Don't forget!<p> In the begining there was chaos,<n>and the Gods strove<n>to impose order.
JimsStaff:
type: item
material: i@stick
display name: Erisian Priests Staff
lore:
- An Erisian Priests Staff
- Found on Brother Jim
enchantments:
- KNOCKBACK:2
#
#Interaction scripts. lets use all the triggers (except damage)just for fun, and a chat trigger that is
#hidden but hinted at in the PrincipiaDiscordia item
#this will be important for future tie in quests but will trigger it here also with a reward)
HailEris:
type: interact
steps:
1:
proximity trigger:
entry:
script:
#setting some flags here so they dont throw and error being NULL
- lookclose state:true
- animate <npc> animation:ARM_SWING
- chat format:pchat "Hail Eris! My friend. I am <npc.name> a travelling priest"
- chat format:pchat "of the Erisian Order. I have /news/ of the world if you are interested."
- chat format:pchat "I need your /help/ if you are interested in a quest."
- zap 2
exit:
script:
- chat format:pchat "Farewell friend!"
- lookclose state:false
2:
chat trigger:
1:
trigger: /News/ of the world
script:
- narrate "Things have gotten bad here in the world."
- narrate "the Illuminati is sending out monks and we do"
- narrate "not know the purpose of thier missions. If"
- narrate "learn anything be sure and let one of the"
- narrate "priests of the Erisian Order know."
2:
trigger: /All/ Hail Kallisti!
script:
- narrate "Hail Eris!! Another Initiate of the Order!"
- flag <player> Intiate
- if <player.has_flag[Erisgift]> {
- random {
- narrate "I have no more gifts for you"
- narrate "I am sorry brother nothing to share"
- narrate "Quit bugging me for free stuff"
}
}
else {
- give golden_apple quantity:1
- flag <player> Erisgift
}
- zap step:1 script:HailEris player:<player>
3:
trigger: "/Help/ you if I can"
script:
- narrate "Great! I appreciate that <player.name>!"
- narrate "Just give me a click and we will begin"
- trigger name:click state:true
- zap step:3 script:s@HailEris player:<player>
#this step explains the quest and
3:
click trigger:
script:
- if <player.has_flag[StaffQuestBegun]> && <player.has_flag[StaffQuestItem]> {
- zap step:1 script:QuestComplete player:<player>
}
else {
- narrate "I have recently discovered that one of the Order"
- narrate "had been taken and killed. Among his belongings was a staff."
- narrate "Bring it back and click me and I will reward you well."
- narrate "What say you? /Yes/ or /No/"
- zap step:4 script:s@HailEris player:<player>
}
##
4:
chat trigger:
1:
trigger: /Yes/ I accept this quest
script:
#here we need to set some quest flags on the player to check later when the item is found and brought back.
#something like if has <flag[StaffQuestBegun].is[==].to[true]> and <flag[StaffQuestItem].is[==].to[true]> then reward
#our dead NPC will "give" them the item (and toggle the flag)when he is clicked on. maybe a nasty suprise.. can i spawn some mythic mobs?!?!?.
# a better idea was given to me from FOrtifier in the IRC channel. Use the player.has_flag to test
- flag <player> StaffQuestBegun
- narrate "I am glad for your help <player.name>!"
- narrate "Not far from here to the east are the remains"
- narrate "of Brother Jim. He fought hard against his enemies."
- narrate "And they know not the power of his Staff"
- narrate "You will find them in a cave marked with purple stained glass near the entrance"
- narrate "I am told he is not far from the entrance"
2:
trigger: /No/ it sounds too dangerous for me
script:
- narrate "<player.name> I am sorry to hear that."
- narrate "If you change your mind please let me know."
- zap step:1 script:s@HailEris player:<player>
QuestComplete:
type: task
script:
- take i@JimsStaff
- narrate "Great your have brought brother Jims staff back!"
- narrate "It was the first staff he created, imbuing it with"
- narrate "his inner spirit and power. Let me give you"
- narrate "a small token of my appreciation"
- define giftcash <util.random.int[71].to[100]>
- give money <def[giftcash]>
- wait 1
- narrate "You may also keep the armor brother Jim wore,"
- narrate "he no longer needs it."
- flag <player> StaffQuestComplete
#
#Dead Jims script
#now for the short and sweet interaction?
LootJim:
type: interact
steps:
1:
click trigger:
script:
#First we check to see if the player has the complete quest flag from the other NPC if so zap them out. next we
#check to see if they have the bugn flag so we give them the item , if not we give them the flag and tell the story
#in reverse where they need to take the staff to the first NPC also set the flag here.
- if <player.has_flag[StaffQuestComplete] {
- narrate "The dead body of Brother Jim there is nothing more to find"
- zap step:2 script:s@LootJim player:<player>
}
- if <player.has_flag[StaffQuestBegun]> {
- flag <player> StaffQuestItem
- give <player> i@JimsStaff
- give <player> i@ErisianBoots
- give <player> i@ErisianLeggings
- give <player> i@ErisianTunic
}
else {
- narrate "You have set my soul free! Thank you!"
- narrate "You must take my staff to a priest"
- narrate "of the Order of Eris. The staff must not"
- narrate "fall into the hands of the Illuminati"
- narrate "Hail Eris!"
- flag <player> StaffQuestBegun
- flag <player> StaffQuestItem
- give <player> i@JimsStaff
- give <player> i@ErisianBoots
- give <player> i@ErisianLeggings
- give <player> i@ErisianTunic
}
- execute as_op "mm mobs spawn IlluminatiMonk 2"