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
|
033-1.gat,66,28,0|script|Yerrnk|216,{
set @Q_Barbarians_MASK, NIBBLE_0_MASK;
set @Q_Barbarians_SHIFT, NIBBLE_0_SHIFT;
set @state, ((QUEST_Barbarians & @Q_Barbarians_MASK) >> @Q_Barbarians_SHIFT);
set @yeti_level, 70;
if (@state == 9) goto L_Done;
if (@state == 8) goto L_Yeti_Success;
if (@state == 7) goto L_Hunt_Yeti;
if (@state == 6) goto L_Warrior;
if (@state == 5) goto L_Birrod;
if (@state == 4) goto L_Sorrow;
if (@state == 3) goto L_Duty;
if (@state == 2) goto L_Kimarr;
if (@state == 1) goto L_Fluffy;
mes "[Barbarian]";
mes "\"Hello. I'm Yerrnk, first warrior of the Mangarr.\"";
next;
mes "Yerrnk looks at you in a reserved way.";
mes "[Yerrnk]";
mes "\"Please take care of your own business.\"";
goto L_Close;
L_Fluffy:
mes "[Yerrnk]";
mes "\"Kimarr talks too much sometimes.\"";
mes "He sighs.";
next;
mes "[Yerrnk]";
mes "\"Are you going to accept Kimarr's task? It's an ancient ceremony in our tribe. A young member is accepted as an adult when completing it.\"";
goto L_Close;
L_Kimarr:
mes "[Yerrnk]";
mes "\"I think Kimarr wants to give you something.\"";
goto L_Close;
L_Duty:
mes "[Yerrnk]";
mes "\"I'm not sure if you are aware about the meaning of your actions.\"";
next;
mes "\"You passed the inition ritus for hunters of our tribe. That means now you are a hunter of our tribe, with all the rights and duties that come along with that.\"";
next;
mes "\"So you'll have to obey our laws and traditiones, protect and help any member of our tribe that is in need and never show weakness nor fear in battle.\"";
next;
mes "\"Keep this in mind. If you fail you'll have to recieve the elders judgement.\"";
goto L_Close;
L_Sorrow:
mes "[Yerrnk]";
mes "\"I noticed that you're getting along with Kimarr and Birrod very well. That's good.\"";
mes "He smiles, but then an expression of worry gets back to his face.";
next;
L_Mission:
mes "[Yerrnk]";
mes "\"Our tribe is going through dire straits. We used to live in harmony with the mountain ever since.";
mes "Life is hard in the snowy mountains, but this life suits our nature.\"";
next;
mes "\"But some weeks ago the Yetis started to act very strange. Usually they are very shy, but now...";
mes "They left the secluded areas high up in the mountains they used to live on and started roaming our hunting grounds.\"";
next;
mes "\"It became very dangerous to leave the village, so it's even harder to gather enough food to survive.";
mes "But not only this, the Yetis are getting more daring every day - they might attack the village itself sooner or later.\"";
next;
mes "\"Other wild animals got more aggressive as well, though the Yetis are the most dangerous.";
mes "Something like that has never happened before. We have no idea what could cause the animals to behave like this.\"";
next;
mes "\"That's why we were sent on a mission to find and talk to Santa, one of the Sages of Kazei.";
mes "The Sages are wizards of great power and wisdom, and we hope Santa might be able to give us advice.\"";
goto L_Close;
L_Birrod:
mes "[Yerrnk]";
mes "\"" + strcharinfo(0) + ", I have to admit that I'm surprised by your skills.";
mes "You've proved your braveness and strength.\"";
next;
if (getskilllv(SKILL_POOL) == 0) goto L_Not_Ready;
mes "\"Please talk to Birrod to receive the initiation ritual to become a warrior of the Mangarr.\"";
menu
"Alright.",-,
"Can you tell me again what are you here for?",L_Mission;
goto L_Close;
L_Not_Ready:
mes "[Yerrnk]";
mes "\"But you're not yet ready to become a fully accepted warrior of our tribe.";
mes "You should travel the world to gain the ability to focus on your inner strength.\"";
menu
"Alright.",-,
"What are you doing down here?",L_Mission;
goto L_Close;
L_Warrior:
mes "[Yerrnk]";
mes "\"" + strcharinfo(0) + ", welcome back!";
mes "Do you have any question?\"";
menu
"Everything's alright, thanks.",-,
"What are you doing down here?",L_Mission,
"Can you explain the raging ability to me?",L_Skill,
"Do you have a task for me?",L_Task;
goto L_Close;
L_Skill:
mes "[Yerrnk]";
mes "\"As a warrior of our tribe it should be the most important thing to you to defend weaker members of the tribe.";
mes "To achieve this goal our warriors are training the skill to stand the pain of being hit and even use it to get into a state of rage.";
next;
mes "It only works in a melee fight, when you hear your opponent gasping, smell his sweat, feel the heat of his body, -\"";
next;
mes "Yerrnk gets excited, then he pauses a moment calming down.";
mes "\"Basically its a neglect of your own defense but therefor being able to hit the enemy with outstanding might.\"";
next;
mes "[Yerrnk]";
mes "\"You can imagine that this comprises some danger. That's why we usually fight as a group, so a weakened warrior can step back and recover while the others keep the fight.";
mes "It's also beneficial to have a healer, but very few members of our tribe are born with the capability to wield magic.\"";
goto L_Close;
L_Task:
if (BaseLevel >= @yeti_level)
goto L_Yeti;
mes "[Yerrnk]";
mes "\"Not at the moment.";
mes "Try to stop by later and use the time to practice your abilities.\"";
goto L_Close;
L_Yeti:
mes "[Yerrnk]";
mes "\"Indeed, there's something to do that needs a competent warrior.";
mes "We've got reports about a single Yeti prowling around one of the houses in the woods west of here.\"";
next;
mes "\"If you dare to take on this task, seek that Yeti and make the area secure again.";
mes "To find the house, enter the forest and then go first south and then west.\"";
set @state, 7;
callsub S_Update_Mask;
goto L_Close;
L_Hunt_Yeti:
mes "[Yerrnk]";
mes "\"That Yeti is still roaming in the forest west of here.";
mes "To find the house it's prowling around, enter the forest and then go first south and then west.\"";
menu
"I'm on it.",-,
"What are you doing down here?",L_Mission,
"Can you explain the raging ability to me?",L_Skill;
goto L_Close;
L_Yeti_Success:
mes "[Yerrnk]";
mes "\"" + strcharinfo(0) + "! You made it!";
mes "You proved that you're one of the most skilled warriors of our tribe.\"";
next;
mes "TODO: add reward here, maybe leather pants?";
set @state, 9;
callsub S_Update_Mask;
goto L_Close;
L_Done:
// TODO: maybe add background informations about barbarian village here
mes "Yerrnk smiles at you.";
mes "[Yerrnk]";
mes "\"Welcome back, great warrior.\"";
menu
"What's the reason you came here?",L_Mission,
"Can you explain the raging ability to me?",L_Skill;
goto L_Close;
L_Close:
// TODO: set all temporary variables to zero
set @yeti_level, 0;
close;
S_Update_Mask:
set QUEST_Barbarians,
(QUEST_Barbarians & ~(@Q_Barbarians_MASK))
| (@state << @Q_Barbarians_SHIFT);
return;
}
|