Date: 2017/06/26 20:38:56 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
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
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
#######################
# Bert in der Wildniss#
#######################
e_bert_as:
type: assignment
actions:
on assignment:
- trigger name:click state:true
- trigger name:chat state:true radius:4
interact scripts:
- 10 e_bert_in
e_bert_in:
default constants:
1: Lyla schickt mich, sie macht sich große Sorgen!
2: Ich kam hier nur zufällig vorbei.
3: Bis bald.
4: Was ist passiert ?
5: Die Wölfe haben den kürzeren gezogen
6: Schnelle Beine könnte man sagen.
7: Klar folge mir.
8: Tut mir leid, du wirst alleine zurecht kommen müssen.
9: Nagut ... ich nehme dich doch mit.
10: Komm, wir gehen los!
type: interact
steps:
1:
click trigger:
script:
#Invisible Check
- ^if <player.has_flag[compl_find_bert]> {
- narrate "ERROR Du solltest disen NPC nicht sehen können!"
- queue clear
}
#
- ^if <player.has_flag[<npc>_engaged]> { - queue clear }
- if !<player.has_flag[<proc[e-id]>]||false> {
- flag player "<npc.flag[e-id]>:|:1|2|3"
- chat "Wer bist du !? Und wie hast du mich gefunden !?"
}
else {
- chat "Reden wir."
}
- inject locally loader
chat trigger:
1:
trigger: /regex:.+/
script:
#Invisible Check
- ^if <player.has_flag[compl_find_bert]> {
- queue clear
}
#
- ^if <player.has_flag[<npc>_engaged]> { - queue clear }
- ^if <context.message> !matches number { - narrate "<&6>Du musst eine Zahl nennen." - queue clear }
- ^if <context.message> < 1 || <context.message> > <player.flag[<proc[e-id]>].size||0> { - narrate "<&6>Die Zahl ist ungültig!" - queue clear }
- ^flag player <npc>_engaged
- inject locally <player.flag[<proc[e-id]>].get[<context.message>]>_effect
- ^if <def[queue]||x> != clear { - ^inject locally loader }
- flag player <npc>_engaged:!
loader:
- foreach <player.flag[<proc[e-id]>].as_list> {
- narrate "<def[loop_index]>. <&a><script.constant[<def[value]>]>"
}
1_effect:
- chat "Dann geht es ihr also noch gut ?"
- wait 2
- chat "Ein Glück. Allerdings ..."
- wait 2
- chat "... ich komme hier leider nicht ohne weitere Hilfe weg."
- ^flag player "<proc[e-id]>:<-:2"
- ^flag player "<proc[e-id]>:<-:1"
- flag player "<proc[e-id]>:|:4"
2_effect:
- chat "Nunja, ich bin hier in einige ..."
- wait 1
- chat ".. nennen wir es mal 'Schwierigkeiten' geraten."
- ^flag player "<proc[e-id]>:<-:2"
- ^flag player "<proc[e-id]>:<-:1"
- flag player "<proc[e-id]>:|:4"
3_effect:
- chat "Auf Wiedersehen."
- define queue clear
4_effect:
- chat "Ich habe hier zwischen den Bäumen nach einigen geeigneten Ästen gesucht."
- wait 3
- chat "Plötzlich stand ein ganzes Rudel Wölfe hinter mir."
- wait 2
- chat "Ich lief so schnell ich konnte und bin auf diesen Felsen geklettert."
- wait 3
- chat "Mit einer Verletzung am Fuß und ohne Waffe wäre ich leichte Beute."
- wait 2
- chat "Also bin ich fürs erste hier geblieben."
- wait 2
- chat "Wie bist du eigentlich hier durch gekommen ?"
- flag player "<proc[e-id]>:<-:4"
- flag player "<proc[e-id]>:|:5|6"
5_effect:
- chat "Respekt."
- wait 2
- chat "... mhmm ... kannst du ... mir vielleicht helfen zurück zu kommen ?"
- flag player "<proc[e-id]>:<-:6"
- flag player "<proc[e-id]>:<-:5"
- flag player "<proc[e-id]>:|:7|8"
6_effect:
- chat "Respekt."
- wait 2
- chat "... mhmm ... kannst du ... mir vielleicht helfen zurück zu kommen ?"
- flag player "<proc[e-id]>:<-:6"
- flag player "<proc[e-id]>:<-:5"
- flag player "<proc[e-id]>:|:7|8"
7_effect:
- chat "Vielen dank!"
- wait 2
- chat "Wir sollten auf weitere wilde Tiere aufpassen."
- wait 3
- chat "Achja und nimm am besten alle Äste mit, die du finden kannst..."
- wait 3
- chat ".. deswegen bin ich ja eigentlich hier."
- wait 2
- chat "Ich versuche mit dir Schritt zu halten, aber du weißt ja, ... meine Verletzung."
- ^flag player "<proc[e-id]>:<-:7"
- ^flag player "<proc[e-id]>:<-:8"
- ^flag player "<proc[e-id]>:|:10"
- inject locally start_follow
8_effect:
- chat "Meinst du das ernst !?"
- wait 2
- chat "Du willst mich doch hier wohl nicht einfach zurücklassen !?"
- flag player "<proc[e-id]>:|:9"
- flag player "<proc[e-id]>:<-:7"
- flag player "<proc[e-id]>:<-:8"
9_effect:
- chat "Danke. Ich hoffe mal das eben war nur ein dummer Scherz."
- wait 2
- chat "Wir sollten auf weitere wilde Tiere aufpassen."
- wait 3
- chat "Achja und nimm am besten alle Äste mit, die du finden kannst..."
- wait 3
- chat ".. deswegen bin ich ja eigentlich hier."
- wait 2
- chat "Ich versuche mit dir Schritt zu halten, aber du weißt ja, ... meine Verletzung."
- flag player "<proc[e-id]>:<-:9"
- flag player "<proc[e-id]>:|:10"
- inject locally start_follow
10_effect:
- chat "Los geht es! Aber du weißt ja, gib auf dich Acht."
- ^inject locally start_follow
start_follow:
- ^create player <npc.name> <npc.location> save:bert
- ^adjust <player> hide_entity:<proc[n-id].context[bert_outside]>
- ^adjust <entry[bert].created_npc> skin:<proc[n-id].context[bert_outside].skin||<npc.name>>
- ^assignment set "script:e_bert_following_as" npc:<entry[bert].created_npc>
- ^flag <entry[bert].created_npc> following:<player>
- ^flag player start_find_bert:<entry[bert].created_npc>
- ^flag player join_channel:->:erpg_bert_removed
- ^flag player quit_channel:->:erpg_remove_bert
- ^flag player "<proc[e-id]>:<-:10"
- run s@message_note "def:Bring Bert zu Lyla"
- follow followers:<entry[bert].created_npc> target:<player>
- ^narrate "<&7>[<npc.name> folgt dir nun]"
- ^define queue clear
################
#Folgender Bert#
################
e_bert_following_as:
type: assignment
actions:
on assignment:
- trigger name:click state:true
- trigger name:chat state:true radius:4
interact scripts:
- 10 e_bert_following_in
e_bert_following_in:
default constants:
1: Folge mir!
type: interact
steps:
1:
click trigger:
script:
- ^if <npc.flag[following]> != <player> { - chat "Ich bin mit <&6><npc.flag[following].as_player.name><&f> unterwegs!" - queue clear }
- ^if <player.has_flag[<npc>_engaged]> { - queue clear }
- if <pl.location.find.entities.within[10].contains[<s@g_var.constant[npc_lyla].as_npc>]||false> {
- run s@e_bert_returning
- queue clear
}
else if !<player.has_flag[<proc[e-id]>]> {
- flag player "<proc[e-id]>:|:1"
- chat "Wo gehen wir hin?"
}
else {
- chat "Sind wir schon da ?"
}
- inject locally loader
chat trigger:
1:
trigger: /regex:.+/
script:
- ^if <player.has_flag[<npc>_engaged]> { - queue clear }
- ^if <context.message> !matches number { - narrate "<&6>Du musst eine Zahl nennen." - queue clear }
- ^if <context.message> < 1 || <context.message> > <player.flag[<proc[e-id]>].size||0> { - narrate "<&6>Die Zahl ist ungültig!" - queue clear }
- ^flag player <npc>_engaged
- inject locally <player.flag[<proc[e-id]>].get[<context.message>]>_effect
- ^if <def[queue]||x> != clear { - ^inject locally loader }
- flag player <npc>_engaged:!
loader:
- foreach <player.flag[<proc[e-id]>].as_list> {
- narrate "<def[loop_index]>. <&a><script.constant[<def[value]>]>"
}
1_effect:
- chat "Unterwegs, ich folge dir."
- narrate "<&7>[<npc.name> folgt dir nun]"
- follow followers:<npc> target:<player>
- define queue clear
###############
#Bert im Lager# DIALOG IST TODO !
###############
e_bert_returning:
type: task
speed: 0t
script:
- remove <pl.flag[start_find_bert].as_npc>
- adjust <player> show_entity:<proc[n-id].context[bert]>
- run s@qu_complete "def:start_find_bert"
- flag player join_channel:<-:erpg_bert_removed
- flag player quit_channel:<-:erpg_remove_bert
- flag <pl.flag[start_find_bert].as_npc> following:!
- inject <s@e_questlog> path:reward_find_bert
#
#
#
- chat "Ohhh Bert ! Ich habe mir solche Sorgen gemacht ! ;( " targets:<player> talkers:<proc[n-id].context[lyla]>
- wait 2
- chat "Keine Sorge Lyla, ich bin okay." targets:<player> talkers:<proc[n-id].context[bert]>
- wait 1
- teleport <player> 63,141,269,0,90,erpg
- look <player> <s@g_var.constant[npc_lyla].as_npc.location>
- wait 1
- chat "Vielen dank! ... Ich und Bert danken dir so sehr!" targets:<player> talkers:<proc[n-id].context[lyla]>
- wait 1
- chat "Falls wir etwas f<ü>r dich tuen können ... lass es uns wissen." targets:<player> talkers:<proc[n-id].context[lyla]>
- wait 1
- chat "Ich h<ä>tte da aufjedenfall noch ein paar Dinge zum reden." targets:<player> talkers:<proc[n-id].context[bert]>
#
- flag player "<proc[e-id-get].context[lyla]>:!"
- flag player "<proc[e-id-get].context[lyla]>:|:3|9"
- foreach "<player.flag[<proc[e-id-get].context[lyla]>].as_list>" {
- narrate "<def[loop_index]>. <&a><s@e_lyla_in.constant[<def[value]>]>"
}
e_bert_camp_as:
type: assignment
actions:
on assignment:
- trigger name:click state:true
- trigger name:chat state:true radius:4
interact scripts:
- 10 e_bert_camp_in
e_bert_camp_in:
default constants:
1: Da gibt es wohl eine kaputte Leiter
2: Bis bald
3: Hier sind alle 12 Stöcke
4: Was hast du nun vor ?
type: interact
steps:
1:
click trigger:
script:
#Invisible Check
- ^if !<player.has_flag[compl_find_bert]> {
- narrate "ERROR Du solltest disen NPC nicht sehen können!"
- queue clear
}
#
- ^if <player.has_flag[<npc>_engaged]> { - queue clear }
- if !<player.has_flag[<proc[e-id]>]> {
- flag player "<proc[e-id]>:|:1|2"
- chat "Nun, endlich können wir in Ruhe reden."
- wait 2
- chat "Du hast mir ziemlich aus der Patsche geholfen."
- wait 2
- chat "Ich habe zwar nicht sehr viel dabei was ich dir geben könnte"
- wait 2
- chat "Aber es ist besser als nichts, du kannst es bestimmt gebrauchen."
- inject <s@e_questlog> path:reward_bert_bonus
}
else {
- chat "Reden wir."
}
- inject locally loader
chat trigger:
1:
trigger: /regex:.+/
script:
#Invisible Check
- ^if !<player.has_flag[compl_find_bert]> {
- queue clear
}
#
- ^if <player.has_flag[<npc>_engaged]> { - queue clear }
- ^if <context.message> !matches number { - narrate "<&6>Du musst eine Zahl nennen." - queue clear }
- ^if <context.message> < 1 || <context.message> > <player.flag[<proc[e-id]>].size||0> { - narrate "<&6>Die Zahl ist ungültig!" - queue clear }
- ^flag player <npc>_engaged
- inject locally <player.flag[<proc[e-id]>].get[<context.message>]>_effect
- ^if <def[queue]||x> != clear { - ^inject locally loader }
- flag player <npc>_engaged:!
loader:
- foreach <player.flag[<proc[e-id]>].as_list> {
- narrate "<def[loop_index]>. <&a><script.constant[<def[value]>]>"
}
1_effect:
- chat "Das ist richtig. Der Weg führt durch die Höhle,"
- wait 2
- chat "da die Leiter kaputt ist kommt man so nicht weiter."
- wait 2
- chat "Mit genug Stöcken lassen sich neue Leiterteile herstellen."
- wait 2
- chat "Falls du 12 Stöcke hast kannst du sie mir geben, damit ich sie zusammenbaue."
- flag player "<proc[e-id]>:<-:1"
- flag player "<proc[e-id]>:|:3"
2_effect:
- chat "Auf Wiedersehen."
- define queue clear
3_effect:
- chat "Dann lass mal hersehen."
- wait 2
- if "<player.inventory.contains[repair_stick].quantity[12]>" {
- ^take i@repair_stick quantity:12
- give i@repair_ladder quantity:3
- chat "... alle 12 ... sehr gut."
- wait 1
- chat "Hier hast du 3 Leiterteile."
- wait 1
- chat "Du kannst versuchen sie an den übrig gebliebenen Holzteilen zu befestigen, das sollte klappen."
- flag player "<proc[e-id]>:<-:3"
- flag player "<proc[e-id]>:|:4"
}
else {
- chat "So wie es aussieht hast du noch nicht genug Äste dabei, du brauchst 12."
- wait 2
- chat "Da wirst du wohl noch ein paar sammeln müssen."
- wait 2
- chat "Sag bescheid, wenn du alle 12 hast."
- define queue clear
}
4_effect:
- chat "Ich muss ich mich vorerst etwas ausruhen, bis ich wieder vernünftig laufen kann."
- wait 2
- chat "Solange werden Lyla und ich erst einmal hier bleiben."
- wait 2
- chat "Du kannst ruhig ohne uns weiterziehen."
- wait 2
- chat "Nochmals vielen dank für deine Hilfe."
- wait 2
- chat "Vielleicht läuft man sich ja irgendwo noch mal über den Weg ?"
- wait 2
- chat "Bis dahin ... auf wiedersehen."
- define queue clear
- flag player "<proc[e-id]>:<-:4"