root/npc/guild2/schg_cas01.txt @ 1

Revision 1, 88.5 kB (checked in by jinshiro, 17 years ago)
RevLine 
[1]1//===== eAthena Script =======================================
2//= War of Emperium Second Edition
3//===== By: ==================================================
4//= L0ne_W0lf
5//===== Current Version: =====================================
6//= 1.6
7//===== Compatible With: =====================================
8//= eAthena SVN
9//===== Description: =========================================
10//= WoE SE Schwaltzvalt Castle 1
11//===== Additional Comments: =================================
12//= 1.0 First Version [L0ne_W0lf]
13//= 1.1 Swaped an end for a close in eco investing. [L0ne_W0lf]
14//= 1.2 Fixed take-over lowering schg_cas04's eco. [L0ne_W0lf]
15//= 1.3 Fixed double message in defense investing. [L0ne_W0lf]
16//=     Corrected a minor typo in the guild steward.
17//= 1.4 Fixed a guardian spawning NPCs. [L0ne_W0lf]
18//= 1.5 Fixed investment period not resetting. [L0ne_W0lf]
19//=     Made it so treasure won't spawn if castle is empty.
20//=     Treasure will now be killed before spawning.
21//= 1.6 Corrected a typo with treasure spawning. [L0ne_W0lf]
22//============================================================
23
24schg_cas01,1,1,0        script  Manager#sch01_02        111,{
25        end;
26
27OnInterIfInitOnce:
28        GetCastleData "schg_cas01",0,"::OnRecvCastleSc01";
29        end;
30
31OnRecvCastleSc01:
32        RequestGuildInfo GetCastleData("schg_cas01",1);
33        if (GetCastleData("schg_cas01",1) == 0) {
34                donpcevent "Manager#sch01_02::Onstart";
35        }
36        end;
37
38OnAgitStart:
39        if (agitcheck()) {
40                MapRespawnGuildID "schg_cas01",GetCastleData("schg_cas01",1),2;
41                GvgOn "schg_cas01";
42                donpcevent "Manager#sch01_02::Onstart";
43        }
44        else {
45                donpcevent "#sch01_RL00::OnDisable";
46                donpcevent "#sch01_RL01::OnDisable";
47                donpcevent "#sch01_RL02::OnDisable";
48                donpcevent "#sch01_RL03::OnDisable";
49        }
50        end;
51
52OnAgitEnd:
53        GvgOff "schg_cas01";
54        if (GetCastleData("schg_cas01",1)) {
55                KillMonster "schg_cas01","Steward#sch01::OnStartArena";
56                donpcevent "Manager#sch01_02::Onreset";
57                donpcevent "Steward#sch01::Onstop";
58        }
59        end;
60
61Onstart:
62        // 1st Guardian stone, 2nd Guardian stone, Barrier 1, Barrier 2, Barrier 3, Summon Guardians
63        // Settings for all but Summon Guardians
64        // 0 = Okay; 1 = Destroyed; 2 = Repairing
65        // Summon Guardians
66        // 0 = Do not Summon; 1 = Summon
67        if (GetCastleData("schg_cas01",1)) {
68                setarray $agit_sc01[0],0,0,0,0,0,0;
69                donpcevent "#sch01_df01::OnEnable";
70                donpcevent "#sch01_df02::OnEnable";
71                donpcevent "#sch01_RL00::OnEnable";
72                donpcevent "#sch01_RL01::OnEnable";
73                donpcevent "#sch01_RL02::OnEnable";
74                donpcevent "#sch01_RL03::OnEnable";
75        }
76        monster "schg_cas01",120,272,"Emperium",1288,1,"Steward#sch01::OnStartArena";
77        end;
78
79Onreset:
80        donpcevent "#sch01_df01::OnDisable";
81        donpcevent "#sch01_df02::OnDisable";
82        donpcevent "#sch01_gard01::Onreset";
83        donpcevent "#sch01_gard02::Onreset";
84        donpcevent "#sch01_RL00::OnDisable";
85        donpcevent "#sch01_RL01::OnDisable";
86        donpcevent "#sch01_RL02::OnDisable";
87        donpcevent "#sch01_RL03::OnDisable";
88        donpcevent "1st Guardian Stone#sch01::OnDisable";
89        donpcevent "2nd Guardian Stone#sch01::OnDisable";
90        donpcevent "Control Device01#sch01::OnDisable";
91        donpcevent "Control Device02#sch01::OnDisable";
92        donpcevent "Control Device03#sch01::OnDisable";
93        if (agitcheck()) {
94                setarray $agit_sc01[0],0,0,1,1,1,0;
95        }
96        end;
97
98Onchange:
99        setarray $agit_sc01[0],2,2,1,1,2,0;
100        monster "schg_cas01",120,272,"Emperium",1288,1,"Steward#sch01::OnStartArena";
101        donpcevent "Control Device03#sch01::OnEnable";
102        donpcevent "1st Guardian Stone#sch01::OnEnable";
103        donpcevent "2nd Guardian Stone#sch01::OnEnable";
104        end;
105
106OnClock0001:
107        if (!GetCastleData("schg_cas01",1)) end;
108        killmonster "schg_cas01","Manager#sch01_02::OnTreasureDied";
109
110        setcastledata "schg_cas01",4,0;
111        setcastledata "schg_cas01",5,0;
112
113        set .@Treasure,GetCastleData("schg_cas01",2)/5+4;
114        if (.@Treasure) {
115                monster "schg_cas01",388,388,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
116                monster "schg_cas01",388,389,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
117                monster "schg_cas01",388,390,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
118                monster "schg_cas01",387,390,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
119                if (.@Treasure < 5) end;
120                monster "schg_cas01",386,390,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
121                if (.@Treasure < 6) end;
122                monster "schg_cas01",385,390,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
123                if (.@Treasure < 7) end;
124                monster "schg_cas01",384,389,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
125                if (.@Treasure < 8) end;
126                monster "schg_cas01",384,388,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
127                if (.@Treasure < 9) end;
128                monster "schg_cas01",384,387,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
129                if (.@Treasure < 10) end;
130                monster "schg_cas01",384,386,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
131                if (.@Treasure < 11) end;
132                monster "schg_cas01",384,385,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
133                if (.@Treasure < 12) end;
134                monster "schg_cas01",384,384,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
135                if (.@Treasure < 13) end;
136                monster "schg_cas01",385,384,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
137                if (.@Treasure < 14) end;
138                monster "schg_cas01",386,384,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
139                if (.@Treasure < 15) end;
140                monster "schg_cas01",387,384,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
141                if (.@Treasure < 16) end;
142                monster "schg_cas01",388,384,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
143                if (.@Treasure < 17) end;
144                monster "schg_cas01",389,384,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
145                if (.@Treasure < 18) end;
146                monster "schg_cas01",390,384,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
147                if (.@Treasure < 19) end;
148                monster "schg_cas01",390,385,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
149                if (.@Treasure < 20) end;
150                monster "schg_cas01",390,386,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
151                if (.@Treasure < 21) end;
152                monster "schg_cas01",389,386,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
153                if (.@Treasure < 22) end;
154                monster "schg_cas01",388,386,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
155                if (.@Treasure < 23) end;
156                monster "schg_cas01",387,286,"Treasure Chest",1938,1,"Manager#sch01_02::OnTreasureDied";
157                if (.@Treasure < 24) end;
158                monster "schg_cas01",386,386,"Treasure Chest",1324,1,"Manager#sch01_02::OnTreasureDied";
159        }
160        end;
161
162OnTreasureDied:
163        end;
164}
165
166schg_cas01,123,306,3    script  Ef#sch01_01     868,{
167        set .@GID, GetCastleData("schg_cas01",1);
168        if (.@GID == 0) {
169                mes "[Ef]";
170                mes "Great job. Now, all you";
171                mes "need to do is destroy this";
172                mes "Emperium to gain ownership";
173                mes "over this stronghold.";
174                close;
175        }
176        if (getcharid(2) == .@GID) {
177                if (strcharinfo(0) != getguildmaster(.@GID)) {
178                        mes "[Ef]";
179                        mes "As guardian of this";
180                        mes "stronghold, I answer only";
181                        mes "to the master of the guild";
182                        mes "that controls this place.";
183                        close;
184                }
185                else {
186                        if (agitcheck() == 0) {
187                                mes "[Ef]";
188                                mes "I am Ef, guardian of";
189                                mes "this stronghold. For now,";
190                                mes "all is quiet in this place.";
191                                next;
192                                switch(select("Converse:Cancel")) {
193                                case 1:
194                                        mes "[Ef]";
195                                        mes "Do you have any questions";
196                                        mes "about this stronghold?";
197                                        next;
198                                        switch(select("Guardian Stones:Fortress Gates:Link Flags:Battle Strategy:Cancel")) {
199                                        case 1:
200                                                mes "[Ef]";
201                                                mes "There is one Emperium";
202                                                mes "and two Guardian Stones in";
203                                                mes "each fortress. These stones";
204                                                mes "are the first line of defense,";
205                                                mes "and must be destroyed before";
206                                                mes "enemies can even enter.";
207                                                next;
208                                                mes "[Ef]";
209                                                mes "The stones are located in";
210                                                mes "^4D4DFFGate Houses^000000 which must be";
211                                                mes "protected to prevent enemies";
212                                                mes "from reaching the Emperium.";
213                                                mes "Guardian Stones can ^4D4DFFrecall";
214                                                mes "your Guardians^000000 for protection.";
215                                                next;
216                                                mes "[Ef]";
217                                                mes "Fortresses with higher levels";
218                                                mes "of defense can summon more";
219                                                mes "Guardians: this is why it is";
220                                                mes "so important for guilds to";
221                                                mes "invest in Defense Growth.";
222                                                next;
223                                                mes "[Ef]";
224                                                mes "Guardian Stones that have";
225                                                mes "been destroyed can be revived";
226                                                mes "after a certain time, but one of^FFFFFF ^000000 the guild members must give";
227                                                mes "me the order. I can also report^FFFFFF ^000000 the status of the Guardian Stones.";
228                                                close;
229                                        case 2:
230                                                mes "[Ef]";
231                                                mes "^4D4DFFFortress Gates^000000 are the second ^FFFFFF ^000000 line of guild stronghold defense,";
232                                                mes "and are protected by extra barricades activated by the Guardian Stones.";
233                                                mes "These gates are located in three different parts of the fortress.";
234                                                next;
235                                                mes "[Ef]";
236                                                mes "Barricades are protected by";
237                                                mes "Guardian Stones, and are";
238                                                mes "restored when the Guardian";
239                                                mes "Stones are retrieved. However,";
240                                                mes "it is not as easy to restore";
241                                                mes "destroyed Fortress Gates.";
242                                                next;
243                                                mes "[Ef]";
244                                                mes "Fortress Gates can only be";
245                                                mes "restored when the ^4D4DFFguild";
246                                                mes "master of a stronghold";
247                                                mes "changes^000000, or if ^4D4DFFrestoration";
248                                                mes "is requested by the guild";
249                                                mes "master of the stronghold^000000.";
250                                                close;
251                                        case 3:
252                                                mes "[Ef]";
253                                                mes "Strongholds have many";
254                                                mes "Link Flags that allow you";
255                                                mes "to access vital areas within";
256                                                mes "restrictions placed by the";
257                                                mes "Barricades. Usually, ^4D4DFFFlag 1";
258                                                mes "links to the Gate House^000000.";
259                                                next;
260                                                mes "[Ef]";
261                                                mes "Many flags link directly to";
262                                                mes "the flag near the Emperium.";
263                                                mes "The final numbered flag is";
264                                                mes "linked to the Convenience";
265                                                mes "Facility of the stronghold's";
266                                                mes "owner. Keep this in mind.";
267                                                close;
268                                        case 4:
269                                                mes "[Ef]";
270                                                mes "Strategy? It would be better";
271                                                mes "to develop your battle plan to";
272                                                mes "exploit your guild's advantages";
273                                                mes "and your enemies' weaknesses.";
274                                                mes "Use the Gate Houses and Barricades, and rebuild as quickly as you can!";
275                                                close;
276                                        case 5:
277                                                mes "[Ef]";
278                                                mes "You have no questions";
279                                                mes "to ask of me? Well, I'm";
280                                                mes "here to serve your needs.";
281                                                close;
282                                        }
283                                case 2:
284                                        mes "[Ef]";
285                                        mes "I'm always here, so";
286                                        mes "feel free to request my";
287                                        mes "assistance whenever";
288                                        mes "the need arises.";
289                                        close;
290                                }
291                        }
292                        else {
293                                mes "[Ef]";
294                                mes "Greetings, "+strcharinfo(0)+".";
295                                mes "What are your orders?";
296                                next;
297                                switch(select("Increase Stronghold Defense:Situational Briefing:Cancel")) {
298                                case 1:
299                                        if ($agit_sc01[5] == 0) {
300                                                if (getgdskilllv(.@GID,10002) == 0) {
301                                                        mes "[Ef]";
302                                                        mes "I'm sorry, but the Guardian";
303                                                        mes "Stones aren't powerful enough";
304                                                        mes "to summon Guardians yet. We";
305                                                        mes "need to accumulate more";
306                                                        mes "knowledge before they can";
307                                                        mes "summon any Guardians.";
308                                                        close;
309                                                }
310                                                else {
311                                                        mes "[Ef]";
312                                                        mes "I shall endeavor to summon";
313                                                        mes "a Guardian through a Guardian";
314                                                        mes "Stone. However, keep in mind";
315                                                        mes "that this will not work if the";
316                                                        mes "Guardian Stone is destroyed.";
317                                                        setarray $agit_sc01[5],1;
318                                                        if ($agit_sc01[0] == 0) {
319                                                                donpcevent "#sch01_gard01::OnEnable";
320                                                        }
321                                                        if ($agit_sc01[1] == 0) {
322                                                                donpcevent "#sch01_gard02::OnEnable";
323                                                        }
324                                                        close;
325                                                }
326                                        }
327                                        else {
328                                                mes "[Ef]";
329                                                mes "You've already commanded";
330                                                mes "me to summon a Guardian";
331                                                mes "to defend the stronghold.";
332                                                close;
333                                        }
334                                case 2:
335                                        mes "[Ef]";
336                                        mes "Our defense status is...";
337                                        if ($agit_sc01[0] == 1) {
338                                                mes "1st Guardian Stone: ^FF0000Destroyed^000000";
339                                        }
340                                        else if ($agit_sc01[0] == 2) {
341                                                mes "1st Guardian Stone: ^008000Repairing^000000";
342                                        }
343                                        else {
344                                                mes "1st Guardian Stone: ^4D4DFFOperational^000000";
345                                        }
346                                        if ($agit_sc01[1] == 1) {
347                                                mes "2nd Guardian Stone: ^FF0000Destroyed^000000";
348                                        }
349                                        else if ($agit_sc01[1] == 2) {
350                                                mes "2nd Guardian Stone: ^008000Repairing^000000";
351                                        }
352                                        else {
353                                                mes "2nd Guardian Stone: ^4D4DFFOperational^000000";
354                                        }
355                                        if ($agit_sc01[2] == 1) {
356                                                mes "1st Fortress Gate: ^FF0000Destroyed^000000";
357                                        }
358                                        else if ($agit_sc01[2] == 2) {
359                                                mes "1st Fortress Gate: ^008000Repairing^000000";
360                                        }
361                                        else {
362                                                mes "1st Fortress Gate: ^4D4DFFOperational^000000";
363                                        }
364                                        if ($agit_sc01[3] == 1) {
365                                                mes "2nd Fortress Gate: ^FF0000Destroyed^000000";
366                                        }
367                                        else if ($agit_sc01[3] == 2) {
368                                                mes "2nd Fortress Gate: ^008000Repairing^000000";
369                                        }
370                                        else {
371                                                mes "2nd Fortress Gate: ^4D4DFFOperational^000000";
372                                        }
373                                        if ($agit_sc01[4] == 1) {
374                                                mes "3rd Fortress Gate: ^FF0000Destroyed^000000";
375                                        }
376                                        else if ($agit_sc01[4] == 2) {
377                                                mes "3rd Fortress Gate: ^008000Repairing^000000";
378                                        }
379                                        else {
380                                                mes "3rd Fortress Gate: ^4D4DFFOperational^000000";
381                                        }
382                                        close;
383                                case 3:
384                                        mes "[Ef]";
385                                        mes "I'll be standing by,";
386                                        mes "awaiting your orders.";
387                                        close;
388                                }
389                        }
390                }
391        }
392        else {
393                mes "[Ef]";
394                mes "Who are you? Scoundrel!";
395                mes "Leave this stronghold now!";
396                close;
397        }
398
399OnInit:
400        setarray $agit_sc01[0],0,0,0,0,0,0;
401        end;
402}
403
404schg_cas01,1,1,0        script  #sch01_gard01   -1,{
405OnEnable:
406        set .@defence,GetCastleData("schg_cas01",3);
407        guardian "schg_cas01",111,18,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //0;
408        if ((.@defence > 10) && (.@defence < 31)) {
409                set .MyMobCount,2;
410                guardian "schg_cas01",109,44,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //1;
411        }
412        else if ((.@defence > 30) && (.@defence < 51)) {
413                set .MyMobCount,3;
414                guardian "schg_cas01",109,44,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //1;
415                guardian "schg_cas01",65,22,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //2;
416        }
417        else if ((.@defence > 50) && (.@defence < 71)) {
418                set .MyMobCount,4;
419                guardian "schg_cas01",109,44,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //1;
420                guardian "schg_cas01",65,22,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //2;
421                guardian "schg_cas01",110,40,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //3;
422        }
423        else if (.@defence > 70) {
424                set .MyMobCount,5;
425                guardian "schg_cas01",109,44,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //1;
426                guardian "schg_cas01",65,22,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //2;
427                guardian "schg_cas01",110,40,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //3;
428                guardian "schg_cas01",88,20,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //4;
429        }
430        else {
431                set .MyMobCount,2;
432                guardian "schg_cas01",108,32,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //1;
433        }
434        initnpctimer;
435        end;
436
437OnTimer300000:
438        set .MyMobCount,.MyMobCount+1;
439        guardian "schg_cas01",64,40,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //5;
440        mapannounce "schg_cas01","The 1st Guardian has been summoned from the Gate House.",bc_map,"0xff4500";
441        end;
442
443OnTimer900000:
444        set .MyMobCount,.MyMobCount+1;
445        guardian "schg_cas01",47,43,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //6;
446        mapannounce "schg_cas01","The 2nd Guardian has been summoned from the Gate House.",bc_map,"0xff4500";
447        end;
448
449OnTimer1800000:
450        set .MyMobCount,.MyMobCount+1;
451        guardian "schg_cas01",109,48,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //7;
452        mapannounce "schg_cas01","The 3rd Guardian has been summoned from the Gate House.",bc_map,"0xff4500";
453        end;
454
455OnTimer2700000:
456        set .MyMobCount,.MyMobCount+1;
457        guardian "schg_cas01",111,18,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //8;
458        mapannounce "schg_cas01","The 4th Guardian has been summoned from the Gate House.",bc_map,"0xff4500";
459        end;
460
461OnTimer3600000:
462        set .MyMobCount,.MyMobCount+1;
463        guardian "schg_cas01",112,32,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //9;
464        mapannounce "schg_cas01","The 5th Guardian has been summoned from the Gate House.",bc_map,"0xff4500";
465        stopnpctimer;
466        end;
467
468OnGuardianDied:
469        set .MyMobCount,.MyMobCount-1;
470        if (.MyMobCount < 2) {
471                set .MyMobCount,.MyMobCount+1;
472                guardian "schg_cas01",120,37,"Guardian Soldier",1899,"#sch01_gard01::OnGuardianDied"; //10;
473        }
474        end;
475
476Onreset:
477        stopnpctimer;
478        killmonster "schg_cas01","#sch01_gard01::OnGuardianDied";
479        end;
480}
481
482schg_cas01,1,2,0        script  #sch01_gard02   -1,{
483OnEnable:
484        set .@defence,GetCastleData("schg_cas01",3);
485        guardian "schg_cas01",130,22,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //11;
486        if ((.@defence > 10) && (.@defence < 31)) {
487                set .MyMobCount,2;
488                guardian "schg_cas01",187,15,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //12;
489        }
490        else if ((.@defence > 30) && (.@defence < 51)) {
491                set .MyMobCount,3;
492                guardian "schg_cas01",129,47,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //12;
493                guardian "schg_cas01",151,18,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //13;
494        }
495        else if ((.@defence > 50) && (.@defence < 71)) {
496                set .MyMobCount,4;
497                guardian "schg_cas01",129,47,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //12;
498                guardian "schg_cas01",151,18,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //13;
499                guardian "schg_cas01",187,15,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //14;
500        }
501        else if (.@defence > 70) {
502                set .MyMobCount,5;
503                guardian "schg_cas01",129,47,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //12;
504                guardian "schg_cas01",151,18,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //13;
505                guardian "schg_cas01",187,15,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //14;
506                guardian "schg_cas01",128,42,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //15;
507        }
508        else {
509                set .MyMobCount,2;
510                guardian "schg_cas01",128,42,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //12;
511        }
512        initnpctimer;
513        end;
514
515OnTimer600000:
516        set .MyMobCount,.MyMobCount+1;
517        guardian "schg_cas01",152,43,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //16;
518        end;
519
520OnTimer1200000:
521        set .MyMobCount,.MyMobCount+1;
522        guardian "schg_cas01",187,15,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //17;
523        end;
524
525OnTimer2100000:
526        set .MyMobCount,.MyMobCount+1;
527        guardian "schg_cas01",128,42,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //18;
528        end;
529
530OnTimer3000000:
531        set .MyMobCount,.MyMobCount+1;
532        guardian "schg_cas01",130,22,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //19;
533        end;
534
535OnTimer3900000:
536        set .MyMobCount,.MyMobCount+1;
537        guardian "schg_cas01",130,28,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //20;
538        stopnpctimer;
539        end;
540
541OnGuardianDied:
542        set .MyMobCount,.MyMobCount-1;
543        if (.MyMobCount < 2) {
544                set .MyMobCount,.MyMobCount+1;
545                guardian "schg_cas01",151,18,"Guardian Soldier",1899,"#sch01_gard02::OnGuardianDied"; //21;
546        }
547        end;
548
549Onreset:
550        stopnpctimer;
551        killmonster "schg_cas01","#sch01_gard02::OnGuardianDied";
552        end;
553}
554
555schg_cas01,1,3,0        script  #sch01_df01     -1,{
556OnEnable:
557        guardian "schg_cas01",27,35,"1st Guardian Stone",1907,"#sch01_df01::OnGuardianStoneDied"; //22;
558        end;
559
560OnDisable:
561        killmonster "schg_cas01","#sch01_df01::OnGuardianStoneDied";
562        setarray $agit_sc01[0],1; //Global Variable
563        stopnpctimer;
564        end;
565
566OnGuardianStoneDied:
567        // 1st Guardian Stone is Destroyed
568        setarray $agit_sc01[0],1;
569        if (($agit_sc01[0] == 1) || ($agit_sc01[0] == 2)) {
570                set .@destroyed,.@destroyed + 1;
571        }
572        if (($agit_sc01[1] == 1) || ($agit_sc01[1] == 2)) {
573                set .@destroyed,.@destroyed + 1;
574        }
575        if (.@destroyed == 2) {
576                mapannounce "schg_cas01","All of the Guardian Stones have been destroyed!",bc_map,"0x00ff00";
577                donpcevent "#sch01_RL00::OnDisable";
578                donpcevent "#sch01_gard01::Onreset";
579        }
580        else {
581                mapannounce "schg_cas01","The 1st Guardian Stone has been destroyed!",bc_map,"0x00ff00";
582                donpcevent "#sch01_gard01::Onreset";
583        }
584        initnpctimer;
585        end;
586
587OnTimer300000:
588        donpcevent "1st Guardian Stone#sch01::OnEnable";
589        setarray $agit_sc01[0],2; //Global Variable
590        stopnpctimer;
591        end;
592}
593
594schg_cas01,27,36,0      script  1st Guardian Stone#sch01        844,{
595        set .@GID, GetCastleData("schg_cas01",1);
596        if (getcharid(2) == .@GID) {
597                mes "^3355FFYou will need the";
598                mes "following materials to";
599                mes "rebuild a destroyed";
600                mes "Guardian Stone.^000000";
601                next;
602                mes "1 Oridecon";
603                mes "1 Elunium";
604                mes "30 Stones";
605                mes "5 Blue Gemstones";
606                mes "5 Yellow Gemstones";
607                mes "5 Red Gemstones";
608                next;
609                mes "^3355FFDo you want to continue?^000000";
610                switch(select("No:Continue")) {
611                case 1:
612                        mes "^3355FFWork canceled.^000000";
613                        close;
614                case 2:
615                        if ((countitem(984) > 0) && (countitem(985) > 0) && (countitem(7049) > 29) && (countitem(717) > 4) && (countitem(715) > 4) && (countitem(716) > 4)) {
616                                mes "^3355FFArrange Stones, Elunium, and";
617                                mes "Oridecon, in that order, in the";
618                                mes "center. Then you must arrange";
619                                mes "the enchanted Gemstones to";
620                                mes "rebuild the Guardian Stone.^000000";
621                                next;
622                                switch(select("Elunium:Oridecon:Stone")) {
623                                case 1:
624                                        mes "^3355FFElunium has been";
625                                        mes "placed in the center.^000000";
626                                        next;
627                                        break;
628                                case 2:
629                                        mes "^3355FFOridecon has been";
630                                        mes "placed in the center.^000000";
631                                        next;
632                                        break;
633                                case 3:
634                                        mes "^3355FFStones have been";
635                                        mes "placed in the center.^000000";
636                                        set .@nice,.@nice+10;
637                                        next;
638                                        break;
639                                }
640                                switch(select("Elunium:Oridecon:Stone")) {
641                                case 1:
642                                        mes "^3355FFYou have lined the";
643                                        mes "outside of the center";
644                                        mes "with some Elunium.^000000";
645                                        set .@nice,.@nice+10;
646                                        next;
647                                        break;
648                                case 2:
649                                        mes "^3355FFYou have lined the";
650                                        mes "outside of the center";
651                                        mes "with some Oridecon.^000000";
652                                        next;
653                                        break;
654                                case 3:
655                                        mes "^3355FFYou have lined the";
656                                        mes "outside of the center";
657                                        mes "with some Stones.^000000";
658                                        next;
659                                        break;
660                                }
661                                switch(select("Elunium:Oridecon:Stone")) {
662                                case 1:
663                                        mes "^3355FFYou covered the";
664                                        mes "rest of the materials";
665                                        mes "with some Elunium.^000000";
666                                        next;
667                                        break;
668                                case 2:
669                                        mes "^3355FFYou covered the";
670                                        mes "rest of the materials";
671                                        mes "with some Oridecon.^000000";
672                                        set .@nice,.@nice+10;
673                                        next;
674                                        break;
675                                case 3:
676                                        mes "^3355FFYou covered the";
677                                        mes "rest of the materials";
678                                        mes "with some Stones.^000000";
679                                        next;
680                                        break;
681                                }
682                                mes "^3355FFNow you need to arrange";
683                                mes "the enchanted Gemstones";
684                                mes "accordingly. You can identify";
685                                mes "their Magic properties by";
686                                mes "their casting effect.^000000";
687                                next;
688                                while(1) {
689                                        if (.@roof0 > 7) {
690                                                break;
691                                        }
692                                        else {
693                                                switch(rand(1,3)) {
694                                                case 1:
695                                                        specialeffect 54; //"1st Guardian Stone#sch01" EF_BEGINSPELL2
696                                                        mes "^3355FFThe Gemstones must";
697                                                        mes "be arranged in the correct";
698                                                        mes "order according to their";
699                                                        mes "magic properties and power.^000000";
700                                                        next;
701                                                        switch(select("Red Gemstone:Yellow Gemstone:Blue Gemstone")) {
702                                                        case 1:
703                                                                mes "^3355FFYou placed the Red Gemstone.";
704                                                                mes "However, the Guardian Stone";
705                                                                mes "Repair System failed because";
706                                                                mes "of a magic power conflict.^000000";
707                                                                close;
708                                                        case 2:
709                                                                mes "^3355FFYou placed the Yellow Gemstone.";
710                                                                mes "However, the Guardian Stone";
711                                                                mes "Repair System failed because";
712                                                                mes "of a magic power conflict.^000000";
713                                                                close;
714                                                        case 3:
715                                                                mes "^3355FFYou placed the Blue Gemstone.^000000";
716                                                                set .@nice,.@nice+10;
717                                                                set .@roof0,.@roof0 + 1;
718                                                                specialeffect 18; //"1st Guardian Stone#sch01" EF_STEAL
719                                                                next;
720                                                                break;
721                                                        }
722                                                        break;
723                                                case 2:
724                                                        specialeffect 225; //"1st Guardian Stone#sch01" EF_VOLCANO
725                                                        mes "^3355FFThe Gemstones must";
726                                                        mes "be arranged in the correct";
727                                                        mes "order according to their";
728                                                        mes "magic properties and power.^000000";
729                                                        next;
730                                                        switch(select("Red Gemstone:Yellow Gemstone:Blue Gemstone")) {
731                                                        case 1:
732                                                                mes "^3355FFYou placed the Red Gemstone.^000000";
733                                                                set .@nice,.@nice+10;
734                                                                set .@roof0,.@roof0 + 1;
735                                                                specialeffect 18; //"1st Guardian Stone#sch01" EF_STEAL
736                                                                next;
737                                                                break;
738                                                        case 2:
739                                                                mes "^3355FFYou placed the Yellow Gemstone.";
740                                                                mes "However, the Guardian Stone";
741                                                                mes "Repair System failed because";
742                                                                mes "of a magic power conflict.^000000";
743                                                                close;
744                                                        case 3:
745                                                                mes "^3355FFYou placed the Blue Gemstone.";
746                                                                mes "However, the Guardian Stone";
747                                                                mes "Repair System failed because";
748                                                                mes "of a magic power conflict.^000000";
749                                                                close;
750                                                        }
751                                                        break;
752                                                case 3:
753                                                        specialeffect 56; //"1st Guardian Stone#sch01" EF_BEGINSPELL4
754                                                        mes "^3355FFThe Gemstones must";
755                                                        mes "be arranged in the correct";
756                                                        mes "order according to their";
757                                                        mes "magic properties and power.^000000";
758                                                        next;
759                                                        switch(select("Red Gemstone:Yellow Gemstone:Blue Gemstone")) {
760                                                        case 1:
761                                                                mes "^3355FFYou placed the Red Gemstone.";
762                                                                mes "However, the Guardian Stone";
763                                                                mes "Repair System failed because";
764                                                                mes "of a magic power conflict.^000000";
765                                                                close;
766                                                        case 2:
767                                                                mes "^3355FFYou placed the Yellow Gemstone.^000000";
768                                                                set .@nice,.@nice+10;
769                                                                set .@roof0,.@roof0 + 1;
770                                                                specialeffect 18; //"1st Guardian Stone#sch01" EF_STEAL
771                                                                next;
772                                                                break;
773                                                        case 3:
774                                                                mes "^3355FFYou placed the Blue Gemstone.";
775                                                                mes "However, the Guardian Stone";
776                                                                mes "Repair System failed because";
777                                                                mes "of a magic power conflict.^000000";
778                                                                close;
779                                                        }
780                                                }
781                                        }
782                                }
783                                if (.@nice > 90) {
784                                        if ($agit_sc01[0] == 0) {
785                                                mes "^3355FFThe Guardian Stone";
786                                                mes "Repair System has";
787                                                mes "already completed.^000000";
788                                                close;
789                                        }
790                                        else {
791                                                if (agitcheck() == 0) {
792                                                        mes "^3355FFIt is impossible to";
793                                                        mes "rebuild the Guardian";
794                                                        mes "Stone because the";
795                                                        mes "Emperium is not present.^000000";
796                                                        close;
797                                                }
798                                                else {
799                                                        mes "^3355FFThe Gemstones have been";
800                                                        mes "arranged, and the Guardian";
801                                                        mes "Stone is successfully repaired.^000000";
802                                                        delitem 984,1; //Oridecon
803                                                        delitem 985,1; //Elunium
804                                                        delitem 7049,30; //Stone
805                                                        delitem 717,5; //Blue_Gemstone
806                                                        delitem 715,5; //Yellow_Gemstone
807                                                        delitem 716,5; //Red_Gemstone
808                                                        close2;
809                                                        donpcevent "#sch01_df01::OnEnable";
810                                                        specialeffect 135; //"1st Guardian Stone#sch01" EF_ICECRASH
811                                                        disablenpc "1st Guardian Stone#sch01";
812                                                        setarray $agit_sc01[0],0;
813                                                        set .@df_all,$agit_sc01[0]+$agit_sc01[1];
814                                                        if (.@df_all == 0) {
815                                                                mapannounce "schg_cas01","Both Guardian Stones have been erected, bolstering this stronghold's defenses!",bc_map,"0x00ff00";
816                                                                donpcevent "#sch01_RL00::OnEnable";
817                                                        }
818                                                        else {
819                                                                mapannounce "schg_cas01","The 1st Guardian Stone has been repaired successfully.",bc_map,"0x00ff00";
820                                                        }
821                                                        if ($agit_sc01[5] == 1) {
822                                                                donpcevent "#sch01_gard01::OnEnable";
823                                                        }
824                                                        end;
825                                                }
826                                        }
827                                }
828                                else {
829                                        mes "^3355FFAfter all of that work...";
830                                        mes "It looks like you failed";
831                                        mes "to fix the Guardian Stone,";
832                                        mes "and lost some materials.^000000";
833                                        delitem 7049,10; //Stone
834                                        delitem 717,2; //Blue_Gemstone
835                                        delitem 715,2; //Yellow_Gemstone
836                                        delitem 716,2; //Red_Gemstone
837                                        close;
838                                }
839                        }
840                        else {
841                                mes "^3355FFYou don't have enough";
842                                mes "materials to repair";
843                                mes "the Guardian Stone.^000000";
844                                close;
845                        }
846                }
847        }
848        end;
849
850OnInit:
851        disablenpc "1st Guardian Stone#sch01";
852        end;
853
854OnEnable:
855        enablenpc "1st Guardian Stone#sch01";
856        specialeffect 247; //"1st Guardian Stone#sch01" EF_MAPPILLAR2
857        end;
858
859OnDisable:
860        disablenpc "1st Guardian Stone#sch01";
861        end;
862}
863
864schg_cas01,1,4,0        script  #sch01_df02     -1,{
865OnEnable:
866        guardian "schg_cas01",207,75,"2nd Guardian Stone",1908,"#sch01_df02::OnGuardianStoneDied"; //23;
867        end;
868
869OnDisable:
870        killmonster "schg_cas01","#sch01_df02::OnGuardianStoneDied";
871        setarray $agit_sc01[1],1; //Global Variable
872        stopnpctimer;
873        end;
874
875OnGuardianStoneDied:
876        // 2nd Guardian Stone is Destroyed
877        setarray $agit_sc01[1],1;
878        if (($agit_sc01[0] == 1) || ($agit_sc01[0] == 2)) {
879                set .@destroyed,.@destroyed + 1;
880        }
881        if (($agit_sc01[1] == 1) || ($agit_sc01[1] == 2)) {
882                set .@destroyed,.@destroyed + 1;
883        }
884        if (.@destroyed == 2) {
885                mapannounce "schg_cas01","All of the Guardian Stones have been destroyed!",bc_map,"0x00ff00";
886                donpcevent "#sch01_RL00::OnDisable";
887                donpcevent "#sch01_gard02::Onreset";
888        }
889        else {
890                mapannounce "schg_cas01","The 2nd Guardian Stone has been destroyed!",bc_map,"0x00ff00";
891                donpcevent "#sch01_gard02::Onreset";
892        }
893        initnpctimer;
894        end;
895
896OnTimer300000:
897        donpcevent "2nd Guardian Stone#sch01::OnEnable";
898        setarray $agit_sc01[1],2; //Global Variable
899        stopnpctimer;
900        end;
901}
902
903schg_cas01,208,75,0     script  2nd Guardian Stone#sch01        844,{
904        set .@GID, GetCastleData("schg_cas01",1);
905        if (getcharid(2) == .@GID) {
906                mes "^3355FFYou will need the";
907                mes "following materials to";
908                mes "rebuild a destroyed";
909                mes "Guardian Stone.^000000";
910                next;
911                mes "1 Oridecon";
912                mes "1 Elunium";
913                mes "30 Stones";
914                mes "5 Blue Gemstones";
915                mes "5 Yellow Gemstones";
916                mes "5 Red Gemstones";
917                next;
918                mes "^3355FFDo you want to continue?^000000";
919                switch(select("No:Continue")) {
920                case 1:
921                        mes "^3355FFWork canceled.^000000";
922                        close;
923                case 2:
924                        if ((countitem(984) > 0) && (countitem(985) > 0) && (countitem(7049) > 29) && (countitem(717) > 4) && (countitem(715) > 4) && (countitem(716) > 4)) {
925                                mes "^3355FFArrange Stones, Elunium, and";
926                                mes "Oridecon, in that order, in the";
927                                mes "center. Then you must arrange";
928                                mes "the enchanted Gemstones to";
929                                mes "rebuild the Guardian Stone.^000000";
930                                next;
931                                switch(select("Elunium:Oridecon:Stone")) {
932                                case 1:
933                                        mes "^3355FFElunium has been";
934                                        mes "placed in the center.^000000";
935                                        next;
936                                        break;
937                                case 2:
938                                        mes "^3355FFOridecon has been";
939                                        mes "placed in the center.^000000";
940                                        next;
941                                        break;
942                                case 3:
943                                        mes "^3355FFStones have been";
944                                        mes "placed in the center.^000000";
945                                        set .@nice,.@nice+10;
946                                        next;
947                                        break;
948                                }
949                                switch(select("Elunium:Oridecon:Stone")) {
950                                case 1:
951                                        mes "^3355FFYou have lined the";
952                                        mes "outside of the center";
953                                        mes "with some Elunium.^000000";
954                                        set .@nice,.@nice+10;
955                                        next;
956                                        break;
957                                case 2:
958                                        mes "^3355FFYou have lined the";
959                                        mes "outside of the center";
960                                        mes "with some Oridecon.^000000";
961                                        next;
962                                        break;
963                                case 3:
964                                        mes "^3355FFYou have lined the";
965                                        mes "outside of the center";
966                                        mes "with some Stones.^000000";
967                                        next;
968                                        break;
969                                }
970                                switch(select("Elunium:Oridecon:Stone")) {
971                                case 1:
972                                        mes "^3355FFYou covered the";
973                                        mes "rest of the materials";
974                                        mes "with some Elunium.^000000";
975                                        next;
976                                        break;
977                                case 2:
978                                        mes "^3355FFYou covered the";
979                                        mes "rest of the materials";
980                                        mes "with some Oridecon.^000000";
981                                        set .@nice,.@nice+10;
982                                        next;
983                                        break;
984                                case 3:
985                                        mes "^3355FFYou covered the";
986                                        mes "rest of the materials";
987                                        mes "with some Stones.^000000";
988                                        next;
989                                        break;
990                                }
991                                mes "^3355FFNow you need to arrange";
992                                mes "the enchanted Gemstones";
993                                mes "accordingly. You can identify";
994                                mes "their Magic properties by";
995                                mes "their casting effect.^000000";
996                                next;
997                                while(1) {
998                                        if (.@roof0 > 7) {
999                                                break;
1000                                        }
1001                                        else {
1002                                                switch(rand(1,3)) {
1003                                                case 1:
1004                                                        specialeffect 54; //"2nd Guardian Stone#sch01" EF_BEGINSPELL2
1005                                                        mes "^3355FFThe Gemstones must";
1006                                                        mes "be arranged in the correct";
1007                                                        mes "order according to their";
1008                                                        mes "magic properties and power.^000000";
1009                                                        next;
1010                                                        switch(select("Red Gemstone:Yellow Gemstone:Blue Gemstone")) {
1011                                                        case 1:
1012                                                                mes "^3355FFYou placed the Red Gemstone.";
1013                                                                mes "However, the Guardian Stone";
1014                                                                mes "Repair System failed because";
1015                                                                mes "of a magic power conflict.^000000";
1016                                                                close;
1017                                                        case 2:
1018                                                                mes "^3355FFYou placed the Yellow Gemstone.";
1019                                                                mes "However, the Guardian Stone";
1020                                                                mes "Repair System failed because";
1021                                                                mes "of a magic power conflict.^000000";
1022                                                                close;
1023                                                        case 3:
1024                                                                mes "^3355FFYou placed the Blue Gemstone.^000000";
1025                                                                set .@nice,.@nice+10;
1026                                                                set .@roof0,.@roof0 + 1;
1027                                                                specialeffect 18; //"2nd Guardian Stone#sch01" EF_STEAL
1028                                                                next;
1029                                                                break;
1030                                                        }
1031                                                        break;
1032                                                case 2:
1033                                                        specialeffect 225; //"2nd Guardian Stone#sch01" EF_VOLCANO
1034                                                        mes "^3355FFThe Gemstones must";
1035                                                        mes "be arranged in the correct";
1036                                                        mes "order according to their";
1037                                                        mes "magic properties and power.^000000";
1038                                                        next;
1039                                                        switch(select("Red Gemstone:Yellow Gemstone:Blue Gemstone")) {
1040                                                        case 1:
1041                                                                mes "^3355FFYou placed the Red Gemstone.^000000";
1042                                                                set .@nice,.@nice+10;
1043                                                                set .@roof0,.@roof0 + 1;
1044                                                                specialeffect 18; //"2nd Guardian Stone#sch01" EF_STEAL
1045                                                                next;
1046                                                                break;
1047                                                        case 2:
1048                                                                mes "^3355FFYou placed the Yellow Gemstone.";
1049                                                                mes "However, the Guardian Stone";
1050                                                                mes "Repair System failed because";
1051                                                                mes "of a magic power conflict.^000000";
1052                                                                close;
1053                                                        case 3:
1054                                                                mes "^3355FFYou placed the Blue Gemstone.";
1055                                                                mes "However, the Guardian Stone";
1056                                                                mes "Repair System failed because";
1057                                                                mes "of a magic power conflict.^000000";
1058                                                                close;
1059                                                        }
1060                                                        break;
1061                                                case 3:
1062                                                        specialeffect 56; //"2nd Guardian Stone#sch01" EF_BEGINSPELL4
1063                                                        mes "^3355FFThe Gemstones must";
1064                                                        mes "be arranged in the correct";
1065                                                        mes "order according to their";
1066                                                        mes "magic properties and power.^000000";
1067                                                        next;
1068                                                        switch(select("Red Gemstone:Yellow Gemstone:Blue Gemstone")) {
1069                                                        case 1:
1070                                                                mes "^3355FFYou placed the Red Gemstone.";
1071                                                                mes "However, the Guardian Stone";
1072                                                                mes "Repair System failed because";
1073                                                                mes "of a magic power conflict.^000000";
1074                                                                close;
1075                                                        case 2:
1076                                                                mes "^3355FFYou placed the Yellow Gemstone.^000000";
1077                                                                set .@nice,.@nice+10;
1078                                                                set .@roof0,.@roof0 + 1;
1079                                                                specialeffect 18; //"2nd Guardian Stone#sch01" EF_STEAL
1080                                                                next;
1081                                                                break;
1082                                                        case 3:
1083                                                                mes "^3355FFYou placed the Blue Gemstone.";
1084                                                                mes "However, the Guardian Stone";
1085                                                                mes "Repair System failed because";
1086                                                                mes "of a magic power conflict.^000000";
1087                                                                close;
1088                                                        }
1089                                                }
1090                                        }
1091                                }
1092                                if (.@nice > 90) {
1093                                        if ($agit_sc01[1] == 0) {
1094                                                mes "^3355FFThe Guardian Stone";
1095                                                mes "Repair System has";
1096                                                mes "successfully completed.^000000";
1097                                                close;
1098                                        }
1099                                        else {
1100                                                if (agitcheck() == 0) {
1101                                                        mes "^3355FFIt is impossible to";
1102                                                        mes "rebuild the Guardian";
1103                                                        mes "Stone because the";
1104                                                        mes "Emperium is not present.^000000";
1105                                                        close;
1106                                                }
1107                                                else {
1108                                                        mes "^3355FFThe Gemstones have been";
1109                                                        mes "arranged, and the Guardian";
1110                                                        mes "Stone is successfully repaired.^000000";
1111                                                        delitem 984,1; //Oridecon
1112                                                        delitem 985,1; //Elunium
1113                                                        delitem 7049,30; //Stone
1114                                                        delitem 717,5; //Blue_Gemstone
1115                                                        delitem 715,5; //Yellow_Gemstone
1116                                                        delitem 716,5; //Red_Gemstone
1117                                                        close2;
1118                                                        donpcevent "#sch01_df02::OnEnable";
1119                                                        specialeffect 135; //"2nd Guardian Stone#sch01" EF_ICECRASH
1120                                                        disablenpc "2nd Guardian Stone#sch01";
1121                                                        setarray $agit_sc01[1],0;
1122                                                        set .@df_all,$agit_sc01[0]+$agit_sc01[1];
1123                                                        if (.@df_all == 0) {
1124                                                                mapannounce "schg_cas01","Both Guardian Stones have been erected, bolstering this stronghold's defenses!",bc_map,"0x00ff00";
1125                                                                donpcevent "#sch01_RL00::OnEnable";
1126                                                        }
1127                                                        else {
1128                                                                mapannounce "schg_cas01","The 2nd Guardian Stone has been repaired successfully.",bc_map,"0x00ff00";
1129                                                        }
1130                                                        if ($agit_sc01[5] == 1) {
1131                                                                donpcevent "#sch01_gard02::OnEnable";
1132                                                        }
1133                                                        end;
1134                                                }
1135                                        }
1136                                }
1137                                else {
1138                                        mes "^3355FFAfter all of that work...";
1139                                        mes "It looks like you failed";
1140                                        mes "to fix the Guardian Stone,";
1141                                        mes "and lost some materials.^000000";
1142                                        delitem 7049,10; //Stone
1143                                        delitem 717,2; //Blue_Gemstone
1144                                        delitem 715,2; //Yellow_Gemstone
1145                                        delitem 716,2; //Red_Gemstone
1146                                        close;
1147                                }
1148                        }
1149                        else {
1150                                mes "^3355FFYou don't have enough";
1151                                mes "materials to repair";
1152                                mes "the Guardian Stone.^000000";
1153                                close;
1154                        }
1155                }
1156        }
1157        end;
1158
1159OnInit:
1160        disablenpc "2nd Guardian Stone#sch01";
1161        end;
1162
1163OnEnable:
1164        enablenpc "2nd Guardian Stone#sch01";
1165        specialeffect 247; //"2nd Guardian Stone#sch01" EF_MAPPILLAR2
1166        end;
1167
1168OnDisable:
1169        disablenpc "2nd Guardian Stone#sch01";
1170        end;
1171}
1172
1173// Barrier Summoners
1174schg_cas01,2,1,0        script  #sch01_RL00     -1,{
1175OnEnable:
1176        setcell "schg_cas01",114,48,126,48,cell_walkable,0;
1177        setcell "schg_cas01",114,48,126,48,cell_shootable,0;
1178        guardian "schg_cas01",115,49," ",1905,"#sch01_RL00::OnBarrierDestroyed"; //24;
1179        guardian "schg_cas01",117,49," ",1905,"#sch01_RL00::OnBarrierDestroyed"; //25;
1180        guardian "schg_cas01",119,49," ",1905,"#sch01_RL00::OnBarrierDestroyed"; //26;
1181        guardian "schg_cas01",121,49," ",1905,"#sch01_RL00::OnBarrierDestroyed"; //27;
1182        guardian "schg_cas01",123,49," ",1905,"#sch01_RL00::OnBarrierDestroyed"; //28;
1183        guardian "schg_cas01",125,49," ",1905,"#sch01_RL00::OnBarrierDestroyed"; //29;
1184        end;
1185
1186OnDisable:
1187        setcell "schg_cas01",114,48,126,48,cell_walkable,1;
1188        setcell "schg_cas01",114,48,126,48,cell_shootable,1;
1189        killmonster "schg_cas01","#sch01_RL00::OnBarrierDestroyed";
1190        end;
1191
1192OnBarrierDestroyed:
1193        end;
1194}
1195
1196schg_cas01,2,2,0        script  #sch01_RL01     -1,{
1197OnEnable:
1198        set .MyMobCount,6;
1199        setcell "schg_cas01",114,51,126,51,cell_walkable,0;
1200        guardian "schg_cas01",115,50," ",1905,"#sch01_RL01::OnBarrierDestroyed"; //30;
1201        guardian "schg_cas01",117,50," ",1905,"#sch01_RL01::OnBarrierDestroyed"; //31;
1202        guardian "schg_cas01",119,50," ",1905,"#sch01_RL01::OnBarrierDestroyed"; //32;
1203        guardian "schg_cas01",121,50," ",1905,"#sch01_RL01::OnBarrierDestroyed"; //33;
1204        guardian "schg_cas01",123,50," ",1905,"#sch01_RL01::OnBarrierDestroyed"; //34;
1205        guardian "schg_cas01",125,50," ",1905,"#sch01_RL01::OnBarrierDestroyed"; //35;
1206        end;
1207
1208OnBarrierDestroyed:
1209        set .MyMobCount,.MyMobCount-1;
1210        if (.MyMobCount == 0) {
1211                setarray $agit_sc01[2],1;
1212                mapannounce "schg_cas01","The 1st Fortress Gate is destroyed.",bc_map,"0x00ff00";
1213                setcell "schg_cas01",114,51,126,51,cell_walkable,1;
1214        }
1215        end;
1216
1217OnDisable:
1218        setcell "schg_cas01",114,51,126,51,cell_walkable,1;
1219        killmonster "schg_cas01","#sch01_RL01::OnBarrierDestroyed";
1220        end;
1221}
1222
1223schg_cas01,2,3,0        script  #sch01_RL02     -1,{
1224OnEnable:
1225        set .MyMobCount,6;
1226        setcell "schg_cas01",114,154,126,154,cell_walkable,0;
1227        guardian "schg_cas01",115,153," ",1905,"#sch01_RL02::OnBarrierDestroyed"; //36;
1228        guardian "schg_cas01",117,153," ",1905,"#sch01_RL02::OnBarrierDestroyed"; //37;
1229        guardian "schg_cas01",119,153," ",1905,"#sch01_RL02::OnBarrierDestroyed"; //38;
1230        guardian "schg_cas01",121,153," ",1905,"#sch01_RL02::OnBarrierDestroyed"; //39;
1231        guardian "schg_cas01",123,153," ",1905,"#sch01_RL02::OnBarrierDestroyed"; //40;
1232        guardian "schg_cas01",125,153," ",1905,"#sch01_RL02::OnBarrierDestroyed"; //41;
1233        end;
1234
1235OnBarrierDestroyed:
1236        set .MyMobCount,.MyMobCount-1;
1237        if (.MyMobCount == 0) {
1238                setarray $agit_sc01[3],1;
1239                mapannounce "schg_cas01","The 2nd Fortress Gate is destroyed.",bc_map,"0x00ff00";
1240                setcell "schg_cas01",114,154,126,154,cell_walkable,1;
1241        }
1242        end;
1243
1244OnDisable:
1245        setcell "schg_cas01",114,154,126,154,cell_walkable,1;
1246        killmonster "schg_cas01","#sch01_RL02::OnBarrierDestroyed";
1247        end;
1248}
1249
1250schg_cas01,2,4,0        script  #sch01_RL03     -1,{
1251OnEnable:
1252        set .MyMobCount,4;
1253        setcell "schg_cas01",116,241,126,241,cell_walkable,0;
1254        guardian "schg_cas01",116,240," ",1905,"#sch01_RL03::OnBarrierDestroyed"; //42;
1255        guardian "schg_cas01",118,240," ",1905,"#sch01_RL03::OnBarrierDestroyed"; //43;
1256        guardian "schg_cas01",120,240," ",1905,"#sch01_RL03::OnBarrierDestroyed"; //44;
1257        guardian "schg_cas01",122,240," ",1905,"#sch01_RL03::OnBarrierDestroyed"; //45;
1258        end;
1259
1260OnBarrierDestroyed:
1261        set .MyMobCount,.MyMobCount-1;
1262        if (.MyMobCount == 0) {
1263                setarray $agit_sc01[4],1;
1264                mapannounce "schg_cas01","The 3rd Fortress Gate is destroyed!",bc_map,"0x00ff00";
1265                setcell "schg_cas01",116,241,126,241,cell_walkable,1;
1266        }
1267        end;
1268
1269OnDisable:
1270        setcell "schg_cas01",116,241,126,241,cell_walkable,1;
1271        killmonster "schg_cas01","#sch01_RL03::OnBarrierDestroyed";
1272        end;
1273}
1274
1275schg_cas01,124,52,0     script  Control Device01#sch01  111,{
1276        set .@GID, GetCastleData("schg_cas01",1);
1277        if (getcharid(2) == .@GID) {
1278                if (strcharinfo(0) == getguildmaster(.@GID)) {
1279                        if ($agit_sc01[2] == 2) {
1280                                mes "^3355FFDemolished Fortress";
1281                                mes "Gates can be repaired,";
1282                                mes "but you will need to gather";
1283                                mes "the following materials.^000000";
1284                                next;
1285                                mes "^4D4DFF10 Steel^000000,";
1286                                mes "^4D4DFF30 Trunks^000000,";
1287                                mes "^4D4DFF5 Oridecon^000000, and";
1288                                mes "^4D4DFF10 Emveretarcon^000000.";
1289                                next;
1290                                select("Continue");
1291                                if ((countitem(1019) > 29) && (countitem(999) > 9) && (countitem(1011) > 9) && (countitem(984) > 4)) {
1292                                        mes "^3355FFYou will need Trunks to";
1293                                        mes "repair the support frame,";
1294                                        mes "Oridecon to enhance the";
1295                                        mes "gate's endurance, and";
1296                                        mes "Emveretarcon to basically";
1297                                        mes "hold everything together.^000000";
1298                                        next;
1299                                        set .@ro_of01,rand(10,15);
1300                                        while(1) {
1301                                                if (.@ro_of02 == .@ro_of01) {
1302                                                        break;
1303                                                }
1304                                                else {
1305                                                        switch(rand(1,4)) {
1306                                                        case 1:
1307                                                                mes "^3355FFThe support frame";
1308                                                                mes "is badly damaged:";
1309                                                                mes "fixing this part";
1310                                                                mes "is a top priority.^000000";
1311                                                                next;
1312                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1313                                                                case 1:
1314                                                                        mes "^3355FFThe frame has been";
1315                                                                        mes "reinforced with wood.^000000";
1316                                                                        set .@rp_temp,.@rp_temp + 1;
1317                                                                        set .@ro_of02,.@ro_of02 + 1;
1318                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1319                                                                        next;
1320                                                                        break;
1321                                                                case 2:
1322                                                                        mes "^3355FFYou tried using steel,";
1323                                                                        mes "but it's not working very";
1324                                                                        mes "well. You'll have to try";
1325                                                                        mes "something else.^000000";
1326                                                                        close;
1327                                                                case 3:
1328                                                                        mes "^3355FFYou tried using emveretarcon,";
1329                                                                        mes "but it's not working very well.^FFFFFF ^3355FF You'll have to try something else.";
1330                                                                        close;
1331                                                                case 4:
1332                                                                        mes "^3355FFYou tried using oridecon,";
1333                                                                        mes "but it's not working very";
1334                                                                        mes "well. You'll have to try";
1335                                                                        mes "something else.^000000";
1336                                                                        close;
1337                                                                }
1338                                                                break;
1339                                                        case 2:
1340                                                                mes "^3355FFIt looks like the gate's";
1341                                                                mes "overall endurance needs to";
1342                                                                mes "be reinforced with something.^000000";
1343                                                                next;
1344                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1345                                                                case 1:
1346                                                                        mes "^3355FFYou tried using wood";
1347                                                                        mes "to reinforce the gate.^000000";
1348                                                                        set .@ro_of02,.@ro_of02 + 1;
1349                                                                        next;
1350                                                                        break;
1351                                                                case 2:
1352                                                                        mes "^3355FFYou tried using steel";
1353                                                                        mes "to reinforce the gate, but";
1354                                                                        mes "it's not working well at all.";
1355                                                                        mes "You'll have to start over.^000000";
1356                                                                        close;
1357                                                                case 3:
1358                                                                        mes "^3355FFYou tried using emveretarcon";
1359                                                                        mes "to reinforce the gate, but it's";
1360                                                                        mes "not working well at all.";
1361                                                                        mes "You'll have to start over.^000000";
1362                                                                        close;
1363                                                                case 4:
1364                                                                        mes "^3355FFYou hammered the";
1365                                                                        mes "oridecon: it looks";
1366                                                                        mes "like this will work.^000000";
1367                                                                        set .@rp_temp,.@rp_temp + 1;
1368                                                                        set .@ro_of02,.@ro_of02 + 1;
1369                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1370                                                                        next;
1371                                                                        break;
1372                                                                }
1373                                                                break;
1374                                                        case 3:
1375                                                                mes "^3355FFThe damage to the gate";
1376                                                                mes "has caused all these";
1377                                                                mes "cracks. You'll have to";
1378                                                                mes "weld them solid somehow.^000000";
1379                                                                next;
1380                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1381                                                                case 1:
1382                                                                        mes "^3355FFYou tried using wood to fix";
1383                                                                        mes "this problem, but it seems";
1384                                                                        mes "to have made it worse.";
1385                                                                        mes "You'll have to start all over.^000000";
1386                                                                        close;
1387                                                                case 2:
1388                                                                        mes "^3355FFYou used steel to weld";
1389                                                                        mes "all the cracks: the gate is";
1390                                                                        mes "is starting to look more solid.^000000";
1391                                                                        set .@rp_temp,.@rp_temp + 1;
1392                                                                        set .@ro_of02,.@ro_of02 + 1;
1393                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1394                                                                        next;
1395                                                                        break;
1396                                                                case 3:
1397                                                                        mes "^3355FFYou tried using emveretarcon";
1398                                                                        mes "to reinforce the gate, but it's";
1399                                                                        mes "not working well at all.";
1400                                                                        mes "You'll have to start over.^000000";
1401                                                                        close;
1402                                                                case 4:
1403                                                                        mes "^3355FFYou tried using oridecon,";
1404                                                                        mes "but it's not working very";
1405                                                                        mes "well. You'll have to try";
1406                                                                        mes "something else.^000000";
1407                                                                        close;
1408                                                                }
1409                                                                break;
1410                                                        case 4:
1411                                                                mes "^3355FFNow you need to make";
1412                                                                mes "sure that the gate is held";
1413                                                                mes "together pretty solidly.^000000";
1414                                                                next;
1415                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1416                                                                case 1:
1417                                                                        mes "^3355FFYou tried using wood to fix";
1418                                                                        mes "this problem, but it seems";
1419                                                                        mes "to have made it worse.";
1420                                                                        mes "You'll have to start all over.^000000";
1421                                                                        close;
1422                                                                case 2:
1423                                                                        mes "^3355FFYou tried using steel,";
1424                                                                        mes "but it's not working very";
1425                                                                        mes "well. You'll have to try";
1426                                                                        mes "something else.^000000";
1427                                                                        close;
1428                                                                case 3:
1429                                                                        mes "^3355FFYou successfully used";
1430                                                                        mes "the emveretarcon to repair";
1431                                                                        mes "much of the gate's damage.^000000";
1432                                                                        set .@rp_temp,.@rp_temp + 1;
1433                                                                        set .@ro_of02,.@ro_of02 + 1;
1434                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1435                                                                        next;
1436                                                                        break;
1437                                                                case 4:
1438                                                                        mes "^3355FFYou tried using oridecon,";
1439                                                                        mes "but it's not working very";
1440                                                                        mes "well. You'll have to try";
1441                                                                        mes "something else.^000000";
1442                                                                        close;
1443                                                                }
1444                                                        }
1445                                                }
1446                                        }
1447                                        mes "^3355FFWell, it looks like";
1448                                        mes "you're just about done";
1449                                        mes "with repairing the gate.^000000";
1450                                        next;
1451                                        if (agitcheck() == 0) {
1452                                                mes "^3355FFUnfortunately, the Fortress";
1453                                                mes "Gate can't be reconstructed:";
1454                                                mes "the Emperium is no longer here.^000000";
1455                                                close;
1456                                        }
1457                                        else {
1458                                                if (.@rp_temp == .@ro_of01) {
1459                                                        mes "^3355FFThe Fortress Gate has";
1460                                                        mes "been successfully repaired!^000000";
1461                                                        delitem 1019,30; //Wooden_Block
1462                                                        delitem 999,10; //Steel
1463                                                        delitem 1011,10; //Emveretarcon
1464                                                        delitem 984,5; //Oridecon
1465                                                        close2;
1466                                                        donpcevent "#sch01_RL01::OnEnable";
1467                                                        disablenpc "Control Device01#sch01";
1468                                                        mapannounce "schg_cas01","The 1st Fortress Gate has been reconstructed!",bc_map,"0x00ff00";
1469                                                        setarray $agit_sc01[2],0;
1470                                                        end;
1471                                                }
1472                                                else {
1473                                                        mes "^3355FFThe wall has been breached,";
1474                                                        mes "and the attempt to repair the";
1475                                                        mes "Fortress Gate has failed.";
1476                                                        mes "You lost some of your";
1477                                                        mes "repair resources...^000000";
1478                                                        delitem 984,2; //Oridecon
1479                                                        delitem 999,4; //Steel
1480                                                        delitem 1019,14; //Wooden_Block
1481                                                        delitem 1011,3; //Emveretarcon
1482                                                        close;
1483                                                }
1484                                        }
1485                                }
1486                                else {
1487                                        mes "^3355FFYou can't attempt to repair";
1488                                        mes "the Fortress Gate if you don't";
1489                                        mes "have all the needed materials.^000000";
1490                                        close;
1491                                }
1492                        }
1493                }
1494        }
1495        end;
1496
1497OnInit:
1498        disablenpc "Control Device01#sch01";
1499        end;
1500
1501OnEnable:
1502        enablenpc "Control Device01#sch01";
1503        end;
1504
1505OnDisable:
1506        disablenpc "Control Device01#sch01";
1507        end;
1508}
1509
1510schg_cas01,128,157,0    script  Control Device02#sch01  111,{
1511        set .@GID, GetCastleData("schg_cas01",1);
1512        if (getcharid(2) == .@GID) {
1513                if (strcharinfo(0) == getguildmaster(.@GID)) {
1514                        if ($agit_sc01[3] == 2) {
1515                                mes "^3355FFDemolished Fortress";
1516                                mes "Gates can be repaired,";
1517                                mes "but you will need to gather";
1518                                mes "the following materials.^000000";
1519                                next;
1520                                mes "^4D4DFF10 Steel^000000,";
1521                                mes "^4D4DFF30 Trunks^000000,";
1522                                mes "^4D4DFF5 Oridecon^000000, and";
1523                                mes "^4D4DFF10 Emveretarcon^000000.";
1524                                next;
1525                                select("Continue");
1526                                if ((countitem(1019) > 29) && (countitem(999) > 9) && (countitem(1011) > 9) && (countitem(984) > 4)) {
1527                                        mes "^3355FFYou will need Trunks to";
1528                                        mes "repair the support frame,";
1529                                        mes "Oridecon to enhance the";
1530                                        mes "gate's endurance, and";
1531                                        mes "Emveretarcon to basically";
1532                                        mes "hold everything together.^000000";
1533                                        next;
1534                                        set .@ro_of01,rand(10,15);
1535                                        while(1) {
1536                                                if (.@ro_of02 == .@ro_of01) {
1537                                                        break;
1538                                                }
1539                                                else {
1540                                                        switch(rand(1,4)) {
1541                                                        case 1:
1542                                                                mes "^3355FFThe support frame";
1543                                                                mes "is badly damaged:";
1544                                                                mes "fixing this part";
1545                                                                mes "is a top priority.^000000";
1546                                                                next;
1547                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1548                                                                case 1:
1549                                                                        mes "^3355FFThe frame has been";
1550                                                                        mes "reinforced with wood.^000000";
1551                                                                        set .@rp_temp,.@rp_temp + 1;
1552                                                                        set .@ro_of02,.@ro_of02 + 1;
1553                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1554                                                                        next;
1555                                                                        break;
1556                                                                case 2:
1557                                                                        mes "^3355FFYou tried using steel,";
1558                                                                        mes "but it's not working very";
1559                                                                        mes "well. You'll have to try";
1560                                                                        mes "something else.^000000";
1561                                                                        close;
1562                                                                case 3:
1563                                                                        mes "^3355FFYou tried using emveretarcon";
1564                                                                        mes "to reinforce the gate, but it's";
1565                                                                        mes "not working well at all.";
1566                                                                        mes "You'll have to start over.^000000";
1567                                                                        close;
1568                                                                case 4:
1569                                                                        mes "^3355FFYou tried using oridecon,";
1570                                                                        mes "but it's not working very";
1571                                                                        mes "well. You'll have to try";
1572                                                                        mes "something else.^000000";
1573                                                                        close;
1574                                                                }
1575                                                                break;
1576                                                        case 2:
1577                                                                mes "^3355FFIt looks like the gate's";
1578                                                                mes "overall endurance needs to";
1579                                                                mes "be reinforced with something.^000000";
1580                                                                next;
1581                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1582                                                                case 1:
1583                                                                        mes "^3355FFYou tried using wood";
1584                                                                        mes "to reinforce the gate.^000000";
1585                                                                        set .@ro_of02,.@ro_of02 + 1;
1586                                                                        next;
1587                                                                        break;
1588                                                                case 2:
1589                                                                        mes "^3355FFYou tried using steel";
1590                                                                        mes "to reinforce the gate, but";
1591                                                                        mes "it's not working well at all.";
1592                                                                        mes "You'll have to start over.^000000";
1593                                                                        close;
1594                                                                case 3:
1595                                                                        mes "^3355FFYou tried using emveretarcon";
1596                                                                        mes "to reinforce the gate, but it's";
1597                                                                        mes "not working well at all.";
1598                                                                        mes "You'll have to start over.^000000";
1599                                                                        close;
1600                                                                case 4:
1601                                                                        mes "^3355FFYou hammered the";
1602                                                                        mes "oridecon: it looks";
1603                                                                        mes "like this will work.^000000";
1604                                                                        set .@rp_temp,.@rp_temp + 1;
1605                                                                        set .@ro_of02,.@ro_of02 + 1;
1606                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1607                                                                        next;
1608                                                                        break;
1609                                                                }
1610                                                                break;
1611                                                        case 3:
1612                                                                mes "^3355FFThe damage to the gate";
1613                                                                mes "has caused all these";
1614                                                                mes "cracks. You'll have to";
1615                                                                mes "weld them solid somehow.^000000";
1616                                                                next;
1617                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1618                                                                case 1:
1619                                                                        mes "^3355FFYou tried using wood to fix";
1620                                                                        mes "this problem, but it seems";
1621                                                                        mes "to have made it worse.";
1622                                                                        mes "You'll have to start all over.^000000";
1623                                                                        close;
1624                                                                case 2:
1625                                                                        mes "^3355FFYou used steel to weld";
1626                                                                        mes "all the cracks: the gate is";
1627                                                                        mes "is starting to look more solid.^000000";
1628                                                                        set .@rp_temp,.@rp_temp + 1;
1629                                                                        set .@ro_of02,.@ro_of02 + 1;
1630                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1631                                                                        next;
1632                                                                        break;
1633                                                                case 3:
1634                                                                        mes "^3355FFYou tried using emveretarcon";
1635                                                                        mes "to reinforce the gate, but it's";
1636                                                                        mes "not working well at all.";
1637                                                                        mes "You'll have to start over.^000000";
1638                                                                        close;
1639                                                                case 4:
1640                                                                        mes "^3355FFYou tried using oridecon,";
1641                                                                        mes "but it's not working very";
1642                                                                        mes "well. You'll have to try";
1643                                                                        mes "something else.^000000";
1644                                                                        close;
1645                                                                }
1646                                                                break;
1647                                                        case 4:
1648                                                                mes "^3355FFNow you need to make";
1649                                                                mes "sure that the gate is held";
1650                                                                mes "together pretty solidly.^000000";
1651                                                                next;
1652                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1653                                                                case 1:
1654                                                                        mes "^3355FFYou tried using wood to fix";
1655                                                                        mes "this problem, but it seems";
1656                                                                        mes "to have made it worse.";
1657                                                                        mes "You'll have to start all over.^000000";
1658                                                                        close;
1659                                                                case 2:
1660                                                                        mes "^3355FFYou tried using steel,";
1661                                                                        mes "but it's not working very";
1662                                                                        mes "well. You'll have to try";
1663                                                                        mes "something else.^000000";
1664                                                                        close;
1665                                                                case 3:
1666                                                                        mes "^3355FFYou successfully used";
1667                                                                        mes "the emveretarcon to repair";
1668                                                                        mes "much of the gate's damage.^000000";
1669                                                                        set .@rp_temp,.@rp_temp + 1;
1670                                                                        set .@ro_of02,.@ro_of02 + 1;
1671                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1672                                                                        next;
1673                                                                        break;
1674                                                                case 4:
1675                                                                        mes "^3355FFYou tried using oridecon,";
1676                                                                        mes "but it's not working very";
1677                                                                        mes "well. You'll have to try";
1678                                                                        mes "something else.^000000";
1679                                                                        close;
1680                                                                }
1681                                                        }
1682                                                }
1683                                        }
1684                                        mes "^3355FFWell, it looks like";
1685                                        mes "you're just about done";
1686                                        mes "with repairing the gate.^000000";
1687                                        next;
1688                                        if (agitcheck() == 0) {
1689                                                mes "^3355FFUnfortunately, the Fortress";
1690                                                mes "Gate can't be reconstructed:";
1691                                                mes "the Emperium is no longer here.^000000";
1692                                                close;
1693                                        }
1694                                        else {
1695                                                if (.@rp_temp == .@ro_of01) {
1696                                                        mes "^3355FFThe Fortress Gate has";
1697                                                        mes "been successfully repaired!^000000";
1698                                                        delitem 1019,30; //Wooden_Block
1699                                                        delitem 999,10; //Steel
1700                                                        delitem 1011,10; //Emveretarcon
1701                                                        delitem 984,5; //Oridecon
1702                                                        close2;
1703                                                        donpcevent "#sch01_RL02::OnEnable";
1704                                                        disablenpc "Control Device02#sch01";
1705                                                        mapannounce "schg_cas01","The 2nd Fortress Gate has been reconstructed!",bc_map,"0x00ff00";
1706                                                        setarray $agit_sc01[3],0; //Global Variable
1707                                                        setarray $agit_sc01[2],2; //Global Variable
1708                                                        donpcevent "Control Device01#sch01::OnEnable";
1709                                                        end;
1710                                                }
1711                                                else {
1712                                                        mes "^3355FFThe wall has been breached,";
1713                                                        mes "and the attempt to repair the";
1714                                                        mes "Fortress Gate has failed.";
1715                                                        mes "You lost some of your";
1716                                                        mes "repair resources...^000000";
1717                                                        delitem 984,2; //Oridecon
1718                                                        delitem 999,4; //Steel
1719                                                        delitem 1019,14; //Wooden_Block
1720                                                        delitem 1011,3; //Emveretarcon
1721                                                        close;
1722                                                }
1723                                        }
1724                                }
1725                                else {
1726                                        mes "^3355FFYou can't attempt to repair";
1727                                        mes "the Fortress Gate if you don't";
1728                                        mes "have all the needed materials.^000000";
1729                                        close;
1730                                }
1731                        }
1732                }
1733        }
1734        end;
1735
1736OnInit:
1737        disablenpc "Control Device02#sch01";
1738        end;
1739
1740OnEnable:
1741        enablenpc "Control Device02#sch01";
1742        end;
1743
1744OnDisable:
1745        disablenpc "Control Device02#sch01";
1746        end;
1747}
1748
1749schg_cas01,109,247,0    script  Control Device03#sch01  111,{
1750        set .@GID, GetCastleData("schg_cas01",1);
1751        if (getcharid(2) == .@GID) {
1752                if (strcharinfo(0) == getguildmaster(.@GID)) {
1753                        if ($agit_sc01[4] == 2) {
1754                                mes "^3355FFDemolished Fortress";
1755                                mes "Gates can be repaired,";
1756                                mes "but you will need to gather";
1757                                mes "the following materials.^000000";
1758                                next;
1759                                mes "^4D4DFF10 Steel^000000,";
1760                                mes "^4D4DFF30 Trunks^000000,";
1761                                mes "^4D4DFF5 Oridecon^000000, and";
1762                                mes "^4D4DFF10 Emveretarcon^000000.";
1763                                next;
1764                                select("Continue");
1765                                if ((countitem(1019) > 29) && (countitem(999) > 9) && (countitem(1011) > 9) && (countitem(984) > 4)) {
1766                                        mes "^3355FFYou will need Trunks to";
1767                                        mes "repair the support frame,";
1768                                        mes "Oridecon to enhance the";
1769                                        mes "gate's endurance, and";
1770                                        mes "Emveretarcon to basically";
1771                                        mes "hold everything together.^000000";
1772                                        next;
1773                                        set .@ro_of01,rand(10,15);
1774                                        while(1) {
1775                                                if (.@ro_of02 == .@ro_of01) {
1776                                                        break;
1777                                                }
1778                                                else {
1779                                                        switch(rand(1,4)) {
1780                                                        case 1:
1781                                                                mes "^3355FFThe support frame";
1782                                                                mes "is badly damaged:";
1783                                                                mes "fixing this part";
1784                                                                mes "is a top priority.^000000";
1785                                                                next;
1786                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1787                                                                case 1:
1788                                                                        mes "^3355FFThe frame has been";
1789                                                                        mes "reinforced with wood.^000000";
1790                                                                        set .@rp_temp,.@rp_temp + 1;
1791                                                                        set .@ro_of02,.@ro_of02 + 1;
1792                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1793                                                                        next;
1794                                                                        break;
1795                                                                case 2:
1796                                                                        mes "^3355FFYou tried using steel,";
1797                                                                        mes "but it's not working very";
1798                                                                        mes "well. You'll have to try";
1799                                                                        mes "something else.^000000";
1800                                                                        close;
1801                                                                case 3:
1802                                                                        mes "^3355FFYou tried using emveretarcon";
1803                                                                        mes "to reinforce the gate, but it's";
1804                                                                        mes "not working well at all.";
1805                                                                        mes "You'll have to start over.^000000";
1806                                                                        close;
1807                                                                case 4:
1808                                                                        mes "^3355FFYou tried using oridecon,";
1809                                                                        mes "but it's not working very";
1810                                                                        mes "well. You'll have to try";
1811                                                                        mes "something else.^000000";
1812                                                                        close;
1813                                                                }
1814                                                                break;
1815                                                        case 2:
1816                                                                mes "^3355FFIt looks like the gate's";
1817                                                                mes "overall endurance needs to";
1818                                                                mes "be reinforced with something.^000000";
1819                                                                next;
1820                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1821                                                                case 1:
1822                                                                        mes "^3355FFYou tried using wood";
1823                                                                        mes "to reinforce the gate.^000000";
1824                                                                        set .@ro_of02,.@ro_of02 + 1;
1825                                                                        next;
1826                                                                        break;
1827                                                                case 2:
1828                                                                        mes "^3355FFYou tried using steel";
1829                                                                        mes "to reinforce the gate, but";
1830                                                                        mes "it's not working well at all.";
1831                                                                        mes "You'll have to start over.^000000";
1832                                                                        close;
1833                                                                case 3:
1834                                                                        mes "^3355FFYou tried using emveretarcon";
1835                                                                        mes "to reinforce the gate, but it's";
1836                                                                        mes "not working well at all.";
1837                                                                        mes "You'll have to start over.^000000";
1838                                                                        close;
1839                                                                case 4:
1840                                                                        mes "^3355FFYou hammered the";
1841                                                                        mes "oridecon: it looks";
1842                                                                        mes "like this will work.^000000";
1843                                                                        set .@rp_temp,.@rp_temp + 1;
1844                                                                        set .@ro_of02,.@ro_of02 + 1;
1845                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1846                                                                        next;
1847                                                                        break;
1848                                                                }
1849                                                                break;
1850                                                        case 3:
1851                                                                mes "^3355FFThe damage to the gate";
1852                                                                mes "has caused all these";
1853                                                                mes "cracks. You'll have to";
1854                                                                mes "weld them solid somehow.^000000";
1855                                                                next;
1856                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1857                                                                case 1:
1858                                                                        mes "^3355FFYou tried using wood to fix";
1859                                                                        mes "this problem, but it seems";
1860                                                                        mes "to have made it worse.";
1861                                                                        mes "You'll have to start all over.^000000";
1862                                                                        close;
1863                                                                case 2:
1864                                                                        mes "^3355FFYou used steel to weld";
1865                                                                        mes "all the cracks: the gate is";
1866                                                                        mes "is starting to look more solid.^000000";
1867                                                                        set .@rp_temp,.@rp_temp + 1;
1868                                                                        set .@ro_of02,.@ro_of02 + 1;
1869                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1870                                                                        next;
1871                                                                        break;
1872                                                                case 3:
1873                                                                        mes "^3355FFYou tried using emveretarcon";
1874                                                                        mes "to reinforce the gate, but it's";
1875                                                                        mes "not working well at all.";
1876                                                                        mes "You'll have to start over.^000000";
1877                                                                        close;
1878                                                                case 4:
1879                                                                        mes "^3355FFYou tried using oridecon,";
1880                                                                        mes "but it's not working very";
1881                                                                        mes "well. You'll have to try";
1882                                                                        mes "something else.^000000";
1883                                                                        close;
1884                                                                }
1885                                                                break;
1886                                                        case 4:
1887                                                                mes "^3355FFNow you need to make";
1888                                                                mes "sure that the gate is held";
1889                                                                mes "together pretty solidly.^000000";
1890                                                                next;
1891                                                                switch(select("Trunk:Steel:Emveretarcon:Oridecon")) {
1892                                                                case 1:
1893                                                                        mes "^3355FFYou tried using wood to fix";
1894                                                                        mes "this problem, but it seems";
1895                                                                        mes "to have made it worse.";
1896                                                                        mes "You'll have to start all over.^000000";
1897                                                                        close;
1898                                                                case 2:
1899                                                                        mes "^3355FFYou tried using steel,";
1900                                                                        mes "but it's not working very";
1901                                                                        mes "well. You'll have to try";
1902                                                                        mes "something else.^000000";
1903                                                                        close;
1904                                                                case 3:
1905                                                                        mes "^3355FFYou successfully used";
1906                                                                        mes "the emveretarcon to repair";
1907                                                                        mes "much of the gate's damage.^000000";
1908                                                                        set .@rp_temp,.@rp_temp + 1;
1909                                                                        set .@ro_of02,.@ro_of02 + 1;
1910                                                                        specialeffect2 101; // EF_REPAIRWEAPON
1911                                                                        next;
1912                                                                        break;
1913                                                                case 4:
1914                                                                        mes "^3355FFYou tried using oridecon,";
1915                                                                        mes "but it's not working very";
1916                                                                        mes "well. You'll have to try";
1917                                                                        mes "something else.^000000";
1918                                                                        close;
1919                                                                }
1920                                                        }
1921                                                }
1922                                        }
1923                                        mes "^3355FFWell, it looks like";
1924                                        mes "you're just about done";
1925                                        mes "with repairing the gate.^000000";
1926                                        next;
1927                                        if (agitcheck() == 0) {
1928                                                mes "^3355FFUnfortunately, the Fortress";
1929                                                mes "Gate can't be reconstructed:";
1930                                                mes "the Emperium is no longer here.^000000";
1931                                                close;
1932                                        }
1933                                        else {
1934                                                if (.@rp_temp == .@ro_of01) {
1935                                                        mes "^3355FFThe Fortress Gate has";
1936                                                        mes "been successfully repaired!^000000";
1937                                                        delitem 1019,30; //Wooden_Block
1938                                                        delitem 999,10; //Steel
1939                                                        delitem 1011,10; //Emveretarcon
1940                                                        delitem 984,5; //Oridecon
1941                                                        close2;
1942                                                        donpcevent "#sch01_RL03::OnEnable";
1943                                                        disablenpc "Control Device03#sch01";
1944                                                        mapannounce "schg_cas01","The 3rd Fortress Gate has been reconstructed!",bc_map,"0x00ff00";
1945                                                        setarray $agit_sc01[4],0;
1946                                                        setarray $agit_sc01[3],2;
1947                                                        donpcevent "Control Device02#sch01::OnEnable";
1948                                                        end;
1949                                                }
1950                                                else {
1951                                                        mes "^3355FFThe wall has been breached,";
1952                                                        mes "and the attempt to repair the";
1953                                                        mes "Fortress Gate has failed.";
1954                                                        mes "You lost some of your";
1955                                                        mes "repair resources...^000000";
1956                                                        delitem 984,2; //Oridecon
1957                                                        delitem 999,4; //Steel
1958                                                        delitem 1019,14; //Wooden_Block
1959                                                        delitem 1011,3; //Emveretarcon
1960                                                        close;
1961                                                }
1962                                        }
1963                                }
1964                                else {
1965                                        mes "^3355FFYou can't attempt to repair";
1966                                        mes "the Fortress Gate if you don't";
1967                                        mes "have all the needed materials.^000000";
1968                                        close;
1969                                }
1970                        }
1971                }
1972        }
1973        end;
1974
1975OnInit:
1976        disablenpc "Control Device03#sch01";
1977        end;
1978
1979OnEnable:
1980        enablenpc "Control Device03#sch01";
1981        end;
1982
1983OnDisable:
1984        disablenpc "Control Device03#sch01";
1985        end;
1986}
1987
1988// Link Flags
1989schg_cas01,106,302,0    script  LF-01#schg_cas01        111,{
1990        set .@GID, GetCastleData("schg_cas01",1);
1991        if (getcharid(2) == .@GID) {
1992                mes "^3355FFThis is the Stronghold";
1993                mes "Teleport Service. Please";
1994                mes "choose a destination";
1995                mes "within the stronghold.^000000";
1996                switch(select("First Gate House:Second Gate House:Cancel")) {
1997                case 1:
1998                        warp "schg_cas01",19,26;
1999                        end;
2000                case 2:
2001                        warp "schg_cas01",219,90;
2002                        end;
2003                case 3:
2004                        close;
2005                }
2006        }
2007        end;
2008}
2009
2010schg_cas01,109,302,0    script  LF-02#schg_cas01        111,{
2011        set .@GID, GetCastleData("schg_cas01",1);
2012        if (getcharid(2) == .@GID) {
2013                mes "^3355FFThis is the Stronghold";
2014                mes "Teleport Service. Please";
2015                mes "choose a destination";
2016                mes "within the stronghold.^000000";
2017                switch(select("Defense Area 1-1:Defense Area 1-2:Cancel")) {
2018                case 1:
2019                        warp "schg_cas01",89,43;
2020                        end;
2021                case 2:
2022                        warp "schg_cas01",141,45;
2023                        end;
2024                case 3:
2025                        close;
2026                }
2027        }
2028        end;
2029}
2030
2031schg_cas01,112,302,0    script  LF-03#schg_cas01        111,{
2032        set .@GID, GetCastleData("schg_cas01",1);
2033        if (getcharid(2) == .@GID) {
2034                mes "^3355FFThis is the Stronghold";
2035                mes "Teleport Service. Please";
2036                mes "choose a destination";
2037                mes "within the stronghold.^000000";
2038                switch(select("Defense Area 2-1:Defense Area 2-2:Cancel")) {
2039                case 1:
2040                        warp "schg_cas01",137,54;
2041                        end;
2042                case 2:
2043                        warp "schg_cas01",102,54;
2044                        end;
2045                case 3:
2046                        close;
2047                }
2048        }
2049        end;
2050}
2051
2052schg_cas01,115,302,0    script  LF-04#schg_cas01        111,{
2053        set .@GID, GetCastleData("schg_cas01",1);
2054        if (getcharid(2) == .@GID) {
2055                mes "^3355FFThis is the Stronghold";
2056                mes "Teleport Service. Please";
2057                mes "choose a destination";
2058                mes "within the stronghold.^000000";
2059                switch(select("Defense Area 2-3:Defense Area 2-4:Cancel")) {
2060                case 1:
2061                        warp "schg_cas01",94,147;
2062                        end;
2063                case 2:
2064                        warp "schg_cas01",163,140;
2065                        end;
2066                case 3:
2067                        close;
2068                }
2069        }
2070        end;
2071}
2072
2073schg_cas01,118,302,0    script  LF-05#schg_cas01        111,{
2074        set .@GID, GetCastleData("schg_cas01",1);
2075        if (getcharid(2) == .@GID) {
2076                mes "^3355FFThis is the Stronghold";
2077                mes "Teleport Service. Please";
2078                mes "choose a destination";
2079                mes "within the stronghold.^000000";
2080                switch(select("Defense Area 2-3:Defense Area 2-4:Cancel")) {
2081                case 1:
2082                        warp "schg_cas01",87,220;
2083                        end;
2084                case 2:
2085                        warp "schg_cas01",151,220;
2086                        end;
2087                case 3:
2088                        close;
2089                }
2090        }
2091        end;
2092}
2093
2094schg_cas01,121,302,0    script  LF-06#schg_cas01        111,{
2095        set .@GID, GetCastleData("schg_cas01",1);
2096        if (getcharid(2) == .@GID) {
2097                mes "^3355FFThis is the Stronghold";
2098                mes "Teleport Service. Please";
2099                mes "choose a destination";
2100                mes "within the stronghold.^000000";
2101                switch(select("Defense Area 3-1:Defense Area 3-2:Cancel")) {
2102                case 1:
2103                        warp "schg_cas01",100,242;
2104                        end;
2105                case 2:
2106                        warp "schg_cas01",136,242;
2107                        end;
2108                case 3:
2109                        close;
2110                }
2111        }
2112        end;
2113}
2114
2115schg_cas01,124,302,0    script  LF-07#schg_cas01        111,{
2116        set .@GID, GetCastleData("schg_cas01",1);
2117        if (getcharid(2) == .@GID) {
2118                mes "^3355FFThis is the Stronghold";
2119                mes "Teleport Service. Please";
2120                mes "choose a destination";
2121                mes "within the stronghold.^000000";
2122                switch(select("Center 1 Area:Center 2 Area:Cancel")) {
2123                case 1:
2124                        warp "schg_cas01",120,168;
2125                        end;
2126                case 2:
2127                        warp "schg_cas01",119,211;
2128                        end;
2129                case 3:
2130                        close;
2131                }
2132        }
2133        end;
2134}
2135
2136schg_cas01,127,302,0    script  LF-08#schg_cas01        111,{
2137        set .@GID, GetCastleData("schg_cas01",1);
2138        if (getcharid(2) == .@GID) {
2139                mes "^3355FFThis is the Stronghold";
2140                mes "Teleport Service. Please";
2141                mes "choose a destination";
2142                mes "within the stronghold.^000000";
2143                switch(select("Area 1-1:Area 2-1:Area 3-1:Cancel")) {
2144                case 1:
2145                        warp "schg_cas01",89,43;
2146                        end;
2147                case 2:
2148                        warp "schg_cas01",94,147;
2149                        end;
2150                case 3:
2151                        warp "schg_cas01",100,242;
2152                        end;
2153                case 4:
2154                        close;
2155                }
2156        }
2157        end;
2158}
2159
2160schg_cas01,130,302,0    script  LF-09#schg_cas01        111,{
2161        set .@GID, GetCastleData("schg_cas01",1);
2162        if (getcharid(2) == .@GID) {
2163                mes "^3355FFThis is the Stronghold";
2164                mes "Teleport Service. Please";
2165                mes "choose a destination";
2166                mes "within the stronghold.^000000";
2167                switch(select("Area 1-2:Area 2-3:Area 3-2:Cancel")) {
2168                case 1:
2169                        warp "schg_cas01",141,45;
2170                        end;
2171                case 2:
2172                        warp "schg_cas01",163,140;
2173                        end;
2174                case 3:
2175                        warp "schg_cas01",136,243;
2176                        end;
2177                case 4:
2178                        close;
2179                }
2180        }
2181        end;
2182}
2183
2184schg_cas01,133,302,0    script  LF-10#schg_cas01        111,{
2185        set .@GID, GetCastleData("schg_cas01",1);
2186        if (getcharid(2) == .@GID) {
2187                mes "^3355FFThis is the Stronghold";
2188                mes "Teleport Service. Would";
2189                mes "you like to teleport to the";
2190                mes "Convenience Facility for";
2191                mes "guild members?^000000";
2192                switch(select("Go to Convenience Facility:Cancel")) {
2193                case 1:
2194                        warp "schg_cas01",275,244;
2195                        end;
2196                case 2:
2197                        close;
2198                }
2199        }
2200        end;
2201}
2202
2203schg_cas01,17,45,0      script  Himinn#LF_sc01_1::LF_sc01_1     111,{
2204        set .@GID, GetCastleData("schg_cas01",1);
2205        if (getcharid(2) == .@GID) {
2206                mes "^3355FFThis is the Stronghold";
2207                mes "Teleport Service. Would";
2208                mes "you like to teleport to";
2209                mes "the Emperium Center?^000000";
2210                switch(select("Teleport:Cancel")) {
2211                case 1:
2212                        warp "schg_cas01",120,290;
2213                        end;
2214                case 2:
2215                        close;
2216                }
2217        }
2218        end;
2219}
2220
2221schg_cas01,207,95,0     duplicate(LF_sc01_1)    Himinn#LF_sc01_2        111
2222
2223schg_cas01,111,46,4     script  Himinn#LF_sc01_3::LF_sc01_2     722,{
2224        set .@GID, GetCastleData("schg_cas01",1);
2225        if (getcharid(2) == .@GID) {
2226                mes "^3355FFThis is the Stronghold";
2227                mes "Teleport Service. Would";
2228                mes "you like to teleport to";
2229                mes "the Emperium Center?^000000";
2230                switch(select("Teleport:Cancel")) {
2231                case 1:
2232                        warp "schg_cas01",120,290;
2233                        end;
2234                case 2:
2235                        close;
2236                }
2237        }
2238        end;
2239
2240OnRecvCastleSc01:
2241        FlagEmblem GetCastleData("schg_cas01",1);
2242        end;
2243}
2244
2245schg_cas01,129,46,4     duplicate(LF_sc01_2)    Himinn#LF_sc01_4        722
2246schg_cas01,99,77,0      duplicate(LF_sc01_1)    Himinn#LF_sc01_5        111
2247schg_cas01,140,77,0     duplicate(LF_sc01_1)    Himinn#LF_sc01_6        111
2248schg_cas01,109,150,4    duplicate(LF_sc01_2)    Himinn#LF_sc01_7        722
2249schg_cas01,130,150,4    duplicate(LF_sc01_2)    Himinn#LF_sc01_8        722
2250schg_cas01,112,212,0    duplicate(LF_sc01_1)    Himinn#LF_sc01_9        111
2251schg_cas01,127,212,0    duplicate(LF_sc01_1)    Himinn#LF_sc01_10       111
2252schg_cas01,113,238,0    duplicate(LF_sc01_1)    Himinn#LF_sc01_11       111
2253schg_cas01,126,238,0    duplicate(LF_sc01_1)    Himinn#LF_sc01_12       111
2254schg_cas01,95,247,0     duplicate(LF_sc01_1)    Himinn#LF_sc01_13       111
2255schg_cas01,144,247,0    duplicate(LF_sc01_1)    Himinn#LF_sc01_14       111
2256
2257// Guild Manager
2258schg_cas01,247,305,3    script  Steward#sch01   55,{
2259        set .@GID, GetCastleData("schg_cas01",1);
2260        if (.@GID == 0) {
2261                mes "[ Steward ]";
2262                mes "I await for the master";
2263                mes "whom destiny will choose";
2264                mes "for me. Do you think you";
2265                mes "have to courage and strength";
2266                mes "to conquer this stronghold?";
2267                close;
2268        }
2269        if (getcharid(2) != .@GID || strcharinfo(0) != getguildmaster(.@GID)) {
2270                mes "[ Steward ]";
2271                mes "Hmpf. Your threats don't";
2272                mes "scare me! Guardians, drive";
2273                mes "this infidel away from here!";
2274                mes "I will always be loyal to the";
2275                mes "master of this stronghold,";
2276                mes "the one and only ^FF0000" + getguildmaster(.@GID) + "^000000.";
2277                close;
2278        }
2279        mes "[ Steward ]";
2280        mes "Ah, Master ^FF0000" + getguildmaster(.@GID) + "^000000...";
2281        mes "How shall I serve you today?";
2282        mes "Was there an aspect of this";
2283        mes "stronghold's maintenance";
2284        mes "you wanted to discuss?";
2285        next;
2286        switch(select("Stronghold Briefing:Invest in Commercial Growth:Invest in Defense growth:Hire/Fire Storage Staff:Go to Master's room")) {
2287        case 1:
2288                mes "[ Steward ]";
2289                mes "The Commercial Growth";
2290                mes "Level of the stronghold is ^0000ff" + GetCastleData("schg_cas01",2) + ".";
2291                if (GetCastleData("schg_cas01",4) > 0) {
2292                        mes "Last time, you invested in";
2293                        mes "Commercial Growth " + GetCastleData("schg_cas01",4) + ".";
2294                }
2295                next;
2296                mes "[ Steward ]";
2297                mes "Our stronghold's";
2298                mes "safeguard level is " + GetCastleData("schg_cas01",3) + ".";
2299                if (GetCastleData("schg_cas01",5) > 0) {
2300                        mes "Last time, you invested";
2301                        mes "in defense " + GetCastleData("schg_cas01",5) + " times.";
2302                }
2303                mes " ";
2304                mes "That is all, master.";
2305                close;
2306        case 2:
2307                set .@Economy,GetCastleData("schg_cas01",2);
2308                if(.@Economy < 8) set .@eco_invest,10000;
2309                if(.@Economy >= 8) set .@eco_invest,20000;
2310                if(.@Economy >= 16) set .@eco_invest,40000;
2311                if(.@Economy >= 25) set .@eco_invest,80000;
2312                if(.@Economy >= 34) set .@eco_invest,160000;
2313                if(.@Economy >= 44) set .@eco_invest,320000;
2314                if(.@Economy >= 54) set .@eco_invest,640000;
2315                if(.@Economy >= 65) set .@eco_invest,1280000;
2316                if(.@Economy >= 76) set .@eco_invest,2560000;
2317                if(.@Economy >= 88) set .@eco_invest,5120000;
2318                mes "[ Steward ]";
2319                mes "Raising the stronghold's";
2320                mes "commercial growth will";
2321                mes "increase the quantity of";
2322                mes "goods produced for the guild.";
2323                mes "Investing in commercial growth";
2324                mes "will help the guild's future.";
2325                next;
2326                mes "[ Steward ]";
2327                mes "You can make one investment";
2328                mes "each day, but if you can make";
2329                mes "two investments if you pay";
2330                mes "more zeny: this will speed";
2331                mes "up commercial development,";
2332                mes "but can be quite expensive.";
2333                next;
2334                if (.@Economy == 100) {
2335                        mes "[ Steward ]";
2336                        mes "However, our stronghold's";
2337                        mes "commerical growth level is";
2338                        mes "at 100%. It's not possible to";
2339                        mes "develop commercial growth";
2340                        mes "any further than that.";
2341                        close;
2342                }
2343                if (GetCastleData("schg_cas01",4) == 2) {
2344                        mes "[ Steward ]";
2345                        mes "You've already made two";
2346                        mes "investments today, so you'll";
2347                        mes "have to wait until tomorrow";
2348                        mes "to make another investment.";
2349                        close;
2350                }
2351                if (GetCastleData("schg_cas01",4) == 0) {
2352                        mes "[ Steward ]";
2353                        mes "You must pay ^FF0000" + .@eco_invest + "^000000 zeny";
2354                        mes "to make an investment";
2355                        mes "Will you invest in this";
2356                        mes "stronghold's commerical";
2357                        mes "development now?";
2358                }
2359                else {
2360                        mes "[ Steward ]";
2361                        mes "You must pay ^FF0000" + .@eco_invest + "^000000";
2362                        mes "more zeny to make a second";
2363                        mes "investment today. Will you";
2364                        mes "invest one more time?";
2365                }
2366                next;
2367                switch(select("Invest in Commercial Growth:Cancel")) {
2368                case 1:
2369                        if (Zeny < .@eco_invest) {
2370                                mes "[ Steward ]";
2371                                mes "I'm sorry, Master, but";
2372                                mes "you do not have enough";
2373                                mes "zeny to make an investment";
2374                                mes "for the guild today.";
2375                                close;
2376                        }
2377                        set zeny,zeny-.@eco_invest;
2378                        SetCastleData "schg_cas01",4,GetCastleData("schg_cas01",4)+1;
2379                        SetCastleData "schg_cas01",2,.@Economy + 1 + (.@Economy<99 && rand(2) && getgdskilllv(.@GID,10014));
2380                        mes "[ Steward ]";
2381                        mes "A wise use of the guild's";
2382                        mes "funds, Master. We can expect";
2383                        mes "to see the results of this";
2384                        mes "investment by tomorrow.";
2385                        close;
2386                case 2:
2387                        mes "[ Steward ]";
2388                        mes "As you command, Master.";
2389                        close;
2390                }
2391        case 3:
2392                set .@Defence,GetCastleData("schg_cas01",3);
2393                if(.@Defence < 8) set .@def_invest,20000;
2394                if(.@Defence >= 8) set .@def_invest,40000;
2395                if(.@Defence >= 16) set .@def_invest,80000;
2396                if(.@Defence >= 25) set .@def_invest,160000;
2397                if(.@Defence >= 34) set .@def_invest,320000;
2398                if(.@Defence >= 44) set .@def_invest,640000;
2399                if(.@Defence >= 54) set .@def_invest,1280000;
2400                if(.@Defence >= 65) set .@def_invest,2560000;
2401                if(.@Defence >= 76) set .@def_invest,5120000;
2402                if(.@Defence >= 88) set .@def_invest,10240000;
2403                mes "[ Steward ]";
2404                mes "Investing in our stronghold's";
2405                mes "defense will enhance the";
2406                mes "durability of our Guardians";
2407                mes "and the Emperium. We'll need";
2408                mes "every advantage to protect";
2409                mes "ourselves from our enemies.";
2410                next;
2411                mes "[ Steward ]";
2412                mes "You can invest in defense";
2413                mes "once per day, but if you pay";
2414                mes "more zeny, you can invest";
2415                mes "a maximum of two times daily.";
2416                next;
2417                mes "[ Steward ]";
2418                if (GetCastleData("schg_cas01",3) == 100) {
2419                        mes "The Defense Level of this";
2420                        mes "stronghold is 100%, and";
2421                        mes "cannot be increased further.";
2422                        close;
2423                }
2424                if (GetCastleData("schg_cas01",5) == 2) {
2425                        mes "Master, you've already";
2426                        mes "invested in Defense twice";
2427                        mes "today. You'll need to wait";
2428                        mes "until tomorrow if you really";
2429                        mes "want to increase our defenses.";
2430                        close;
2431                }
2432                if (GetCastleData("schg_cas01",5) == 0) {
2433                        mes "We need ^FF0000" + .@def_invest + "^000000";
2434                        mes "zeny to invest in our";
2435                        mes "stronghold's defenses.";
2436                        mes "Will you invest now?";
2437                }
2438                else {
2439                        mes "We need ^FF0000" + .@def_invest + "^000000";
2440                        mes "zeny to invest in our";
2441                        mes "stronghold's defenses";
2442                        mes "a second time today.";
2443                        mes "Will you invest now?";
2444                }
2445                next;
2446                switch(select("Invest in Defense:Cancel")) {
2447                case 1:
2448                        if (Zeny < .@def_invest) {
2449                                mes "[ Steward ]";
2450                                mes "I'm sorry, Master, but";
2451                                mes "you do not have enough";
2452                                mes "zeny to make an investment";
2453                                mes "for the guild today.";
2454                                close;
2455                        }
2456                        set zeny,zeny-.@def_invest;
2457                        SetCastleData "schg_cas01",5,GetCastleData("schg_cas01",5)+1;
2458                        SetCastleData "schg_cas01",3,.@Defence+1;
2459                        mes "[ Steward ]";
2460                        mes "A wise use of the guild's";
2461                        mes "funds, Master. Increasing";
2462                        mes "the frequency of treasure";
2463                        mes "procured by the guild will";
2464                        mes "definitely help us all.";
2465                        close;
2466                case 2:
2467                        mes "[ Steward ]";
2468                        mes "As you command, Master.";
2469                        close;
2470                }
2471        case 4:
2472                if (GetCastleData("schg_cas01",9) == 1) {
2473                        mes "[ Steward ]";
2474                        mes "Do you wish to dismiss";
2475                        mes "the Kafra Employee that";
2476                        mes "we've hired for the guild?";
2477                        next;
2478                        switch(select("Dismiss:Cancel")) {
2479                        case 1:
2480                                cutin "kafra_01",2;
2481                                mes "[ Hired Kafra Employee ]";
2482                                mes "Master, please reconsider!";
2483                                mes "I've been working very hard";
2484                                mes "for the success of the guild!";
2485                                mes "I'll try harder to serve the";
2486                                mes "guild members of this";
2487                                mes "stronghold, I promise!";
2488                                next;
2489                                switch(select("Dismiss:Cancel")) {
2490                                case 1:
2491                                        mes "[ Hired Kafra Employee ]";
2492                                        mes "Why?! What have I done";
2493                                        mes "to deserve this? Waaah~!";
2494                                        next;
2495                                        cutin "kafra_01",255;
2496                                        break;
2497                                case 2:
2498                                        mes "[ Hired Kafra Employee ]";
2499                                        mes "Thank you, Master!";
2500                                        mes "I'll obey your every";
2501                                        mes "command as best I can!";
2502                                        mes "You won't regret this!";
2503                                        close;
2504                                }
2505                                break;
2506                        case 2:
2507                                mes "[ Steward ]";
2508                                mes "She works very hard,";
2509                                mes "in my opinion. It was in";
2510                                mes "all of our best interests to";
2511                                mes "allow her to stay with us.";
2512                                close;
2513                        }
2514                        disablenpc "Kafra Employee#sch01";
2515                        SetCastleData "schg_cas01",9,0;
2516                        mes "[ Steward ]";
2517                        mes "That Kafra Employee";
2518                        mes "has been dismissed.";
2519                        mes "Were really dissatisfied";
2520                        mes "by the quality of her service?";
2521                        close;
2522                }
2523                else {
2524                        mes "[ Steward ]";
2525                        mes "Will you hire a";
2526                        mes "Kafra Employee to serve";
2527                        mes "our stronghold? You must";
2528                        mes "pay ^FF000010,000 zeny^000000 to hire one.";
2529                        next;
2530                        switch(select("Hire:Cancel")) {
2531                        case 1:
2532                                if (getgdskilllv(.@GID,10001) == 0) {
2533                                        mes "[ Steward ]";
2534                                        mes "Master, we cannot hire a";
2535                                        mes "Kafra Employee because";
2536                                        mes "you have not yet attained";
2537                                        mes "the ^FF0000Contract with Kafra^000000";
2538                                        mes "guild skill.";
2539                                        close;
2540                                }
2541                                if (Zeny < 10000) {
2542                                        mes "[ Steward ]";
2543                                        mes "Master, we cannot hire a";
2544                                        mes "Kafra Employee because";
2545                                        mes "we do not have enough";
2546                                        mes "funds to pay the contract fee.";
2547                                        close;
2548                                }
2549                                set zeny,zeny-10000;
2550                                enablenpc "Kafra Employee#sch01";
2551                                SetCastleData "schg_cas01",9,1;
2552                                mes "[ Steward ]";
2553                                mes "Very well. We have formed";
2554                                mes "a contract with the Kafra";
2555                                mes "Head Office, and hired a";
2556                                mes "Kafra Employee for our";
2557                                mes "stronghold. Here she is~";
2558                                next;
2559                                cutin "kafra_01",2;
2560                                mes "[ Hired Kafra Employee ]";
2561                                mes "How do you do? I've";
2562                                mes "been dispatched by the";
2563                                mes "Kafra Head Office to";
2564                                mes "serve your guild's needs.";
2565                                mes "I'll do my best to follow";
2566                                mes "your every command, Master.";
2567                                next;
2568                                cutin "kafra_01",255;
2569                                mes "[ Steward ]";
2570                                mes "Our contract will expire";
2571                                mes "after one month, so we must";
2572                                mes "pay additional fees to keep";
2573                                mes "this Kafra Employee in";
2574                                mes "the service of our guild.";
2575                                close;
2576                        case 2:
2577                                mes "[ Steward ]";
2578                                mes "As you command, Master.";
2579                                mes "However, I suggest hiring";
2580                                mes "a Kafra Employee as soon";
2581                                mes "as possible since our guild";
2582                                mes "would greatly benefit from";
2583                                mes "the convenient Kafra services.";
2584                                close;
2585                        }
2586                }
2587        case 5:
2588                mes "[ Steward ]";
2589                mes "Do you wish to enter the";
2590                mes "Guild Treasure Room?";
2591                mes "Only you, the Guild Master,";
2592                mes "are permitted to enter.";
2593                next;
2594                mes "[ Steward ]";
2595                mes "Please remember to open";
2596                mes "the Treasure Boxes at the";
2597                mes "proper time. Otherwise, the";
2598                mes "treasure may disappear if";
2599                mes "something unexpected happens.";
2600                next;
2601                switch(select("Go to Treasure Room:Cancel")) {
2602                case 1:
2603                        mes "[ Steward ]";
2604                        mes "Allow me to guide you";
2605                        mes "on the secret path to";
2606                        mes "the Treasure Room.";
2607                        mes "Press the secret switch";
2608                        mes "when you wish to return here.";
2609                        close2;
2610                        warp "schg_cas01",381,381;
2611                        end;
2612                case 2:
2613                        mes "[ Steward ]";
2614                        mes "Items in the Treasure Room";
2615                        mes "are produced once each day.";
2616                        mes "Therefore, you must obtain";
2617                        mes "the treasure items everyday.";
2618                        mes "For the sake of the guild,";
2619                        mes "prioritize treasure harvesting!";
2620                        close;
2621                }
2622        }
2623
2624Onstop:
2625        stopnpctimer;
2626        end;
2627
2628OnStartArena:
2629        set .@GID,getcharid(2);
2630        // Lower castle Economy
2631        set .@Economy,GetCastleData("schg_cas01",2) - 5;
2632        if (.@Economy < 0) set .@Economy, 0;
2633        SetCastleData "schg_cas01", 2, .@Economy;
2634        // Lower Castle Defence
2635        set .@Defence,GetCastleData("schg_cas01",3) - 5;
2636        if (.@Defence < 0) set .@Defence, 0;
2637        SetCastleData "schg_cas01", 3, .@Defence;
2638        // Set new owner
2639        SetCastleData "schg_cas01",1, .@GID;
2640        // Clear castle's data.
2641        for( set .@i, 4; .@i <= 9; set .@i, .@i+1 )
2642                SetCastleData "schg_cas01", .@i, 0;
2643        // Disable Kafra
2644        disablenpc "Kafra Employee#sch01";
2645
2646        set .msg,2;
2647        if (.msg == 1) {
2648                announce "Fortress [" + GetCastleName("schg_cas01") + "]'s 'Nithafjoll' was captured by [" + getguildname(.@gid) + "] Guild.",bc_all;
2649                donpcevent "Manager#sch01_02::Onstart";
2650        }
2651        else if (.msg == 2) {
2652                announce "The [" + getguildname(.@gid) + "] conquered the [Nithafjoll 1] stronghold of "+GetCastleName("schg_cas01"),bc_all;
2653                mapannounce "schg_cas01","The emperium has been shattered!",bc_map,"0x00FF00";
2654                if (agitcheck()) {
2655                        donpcevent "Manager#sch01_02::Onreset";
2656                        initnpctimer;
2657                }
2658                else {
2659                        donpcevent "Manager#sch01_02::Onreset";
2660                        stopnpctimer;
2661                }
2662        }
2663        else if (.msg == 0) {
2664                announce "Fortress [" + GetCastleName("schg_cas01") + "]'s 'Nithafjoll' was captured by [" + getguildname(.@gid) + "] Guild.",bc_all;
2665                donpcevent "Manager#sch01_02::Onreset";
2666                stopnpctimer;
2667                end;
2668        }
2669        MapRespawnGuildID "schg_cas01",GetCastleData("schg_cas01",1),2;
2670        GetCastleData "schg_cas01",0,"::OnRecvCastlesc01";
2671        end;
2672
2673OnTimer10000:
2674        donpcevent "Manager#sch01_02::Onchange";
2675        mapannounce "schg_cas01","Rebuild this stonghold's Guardian Stones and Fortress Gates to secure your guild's new aquisition!",bc_map,"0x00FF00";
2676        end;
2677}
2678
2679// Guild Kafra
2680schg_cas01,300,287,5    script  Kafra Employee#sch01    117,{
2681        cutin "kafra_01",2;
2682        set .@GID, GetCastleData("schg_cas01",1);
2683        if (getcharid(2) == .@GID && getgdskilllv(.@GID,10001)) {
2684                mes "[Kafra Employee]";
2685                mes "Welcome, proud member";
2686                mes "of the ^FF0000" + GetGuildName(.@GID) + "^000000 Guild!";
2687                mes "The Kafra Corporation is ready";
2688                mes "to assist you wherever you go!";
2689                next;
2690                switch(select("Use Storage:Use Warp Service:Rent Pushcart:Cancel")) {
2691                case 1:
2692                        if (basicskillcheck() && getskilllv("NV_BASIC") < 6) {
2693                                mes "[Kafra Employee]";
2694                                mes "I'm so sorry, but you must";
2695                                mes "have at least Novice Skill";
2696                                mes "Lv.6 to use the Storage.";
2697                        }
2698                        else {
2699                                openstorage;
2700                        }
2701                        break;
2702                case 2:
2703                        mes "[Kafra Employee]";
2704                        mes "Please tell me your";
2705                        mes "Warp destination.";
2706                        next;
2707                        switch(select("Juno -> 200 z:Cancel")) {
2708                        case 1:
2709                                if (Zeny < 200) {
2710                                        mes "[Kafra Employee]";
2711                                        mes "I'm sorry, but you don't";
2712                                        mes "have enough zeny to pay";
2713                                        mes "the warp fee. Would you";
2714                                        mes "please check your funds again?";
2715                                        close2;
2716                                        cutin "kafra_01",255;
2717                                        end;
2718                                }
2719                                set zeny,zeny-200;
2720                                warp "yuno",158,125;
2721                                end;
2722                        case 2:
2723                                cutin "kafra_01",255;
2724                        }
2725                        break;
2726                case 3:
2727                        if (BaseClass != Job_Merchant) {
2728                                mes "[Kafra Employee]";
2729                                mes "I'm sorry, but the Pushcart";
2730                                mes "rental service can only be";
2731                                mes "used by Merchant, Blacksmith,";
2732                                mes "and Alchemist class characters.";
2733                        }
2734                        else if (checkcart() == 1) {
2735                                mes "[Kafra Employee]";
2736                                mes "Hm? You've already";
2737                                mes "rented a Pushcart.";
2738                        }
2739                        else {
2740                                mes "[Kafra Employee]";
2741                                mes "The Pushcart rental fee";
2742                                mes "is 800 zeny. Would you";
2743                                mes "like to rent a Pushcart?";
2744                                next;
2745                                switch(select("Rent Pushcart:Cancel")) {
2746                                case 1:
2747                                        if (Zeny < 800) {
2748                                                mes "[Kafra Employee]";
2749                                                mes "I'm sorry, but you don't";
2750                                                mes "have enough zeny to rent";
2751                                                mes "one of our Pushcarts.";
2752                                                close2;
2753                                                cutin "kafra_01",255;
2754                                                end;
2755                                        }
2756                                        set zeny,zeny-800;
2757                                        setcart;
2758                                        break;
2759                                case 2:
2760                                        break;
2761                                }
2762                        }
2763                        break;
2764                case 4:
2765                        mes "[Kafra Employee]";
2766                        mes "Thank you for using the";
2767                        mes "Kafra Service. Wherever";
2768                        mes "you go, Kafra will be";
2769                        mes "there to support you!";
2770                        close2;
2771                        cutin "kafra_01",255;
2772                        end;
2773                }
2774                close2;
2775                cutin "kafra_01",255;
2776                end;
2777        }
2778        else {
2779                mes "[Kafra Employee]";
2780                mes "I'm sorry, but I've been";
2781                mes "exclusively contracted";
2782                mes "to the members of the";
2783                mes "^FF0000" + GetGuildName(.@GID) + "^000000 Guild.";
2784                mes "You'll have to ask another";
2785                mes "Kafra Employee to help you...";
2786                close2;
2787                cutin "kafra_01",255;
2788                end;
2789        }
2790
2791OnRecvCastlesc01:
2792        if (GetCastleData("schg_cas01",1) == 0) {
2793                monster "schg_cas01",0,0,"Evil Druid",1117,10;
2794                monster "schg_cas01",0,0,"Khalitzburg",1132,4;
2795                monster "schg_cas01",0,0,"Abysmal Knight",1219,3;
2796                monster "schg_cas01",0,0,"Executioner",1205,1;
2797                monster "schg_cas01",0,0,"Penomena",1216,10;
2798                monster "schg_cas01",0,0,"Alarm",1193,18;
2799                monster "schg_cas01",0,0,"Clock",1269,9;
2800                monster "schg_cas01",0,0,"Raydric Archer",1276,12;
2801                monster "schg_cas01",0,0,"Wanderer",1208,3;
2802                monster "schg_cas01",0,0,"Alice",1275,1;
2803                monster "schg_cas01",0,0,"Bloody Knight",1268,2;
2804                monster "schg_cas01",0,0,"Dark Lord",1272,2;
2805                monster "schg_cas01",0,0,"Tower Keeper",1270,4;
2806        }
2807        if (GetCastleData("schg_cas01",9) < 1) {
2808                disablenpc "Kafra Employee#sch01";
2809        }
2810        end;
2811}
2812
2813schg_cas01,391,391,0    script   #sch01_switch  111,{
2814        mes " ";
2815        mes "^3355FFWill you pull";
2816        mes "this small lever?^000000";
2817        next;
2818        switch(select("Pull Lever:Cancel")) {
2819        case 1:
2820                warp "schg_cas01",275,244;
2821                end;
2822        case 2:
2823                close;
2824        }
2825}
2826
2827sch_gld,290,90,0        script  Himinn#flag_sc01_1::Sc01_Flag   722,{
2828        set .@GID, GetCastleData("schg_cas01",1);
2829        if (.@GID == 0) {
2830                mes "[ Schwaltzvalt Royal Edict ]";
2831                mes "The Holy Kingdom of";
2832                mes "Schwaltzvalt declares that";
2833                mes "one has yet to claim lordship";
2834                mes "over this stronghold. The one";
2835                mes "that breaks the Emperium will";
2836                mes "be recognized as its new owner.";
2837                close;
2838        }
2839        else {
2840                if (getcharid(2) == .@GID) {
2841                        mes "[ Ringing Voice ]";
2842                        mes "Courageous one,";
2843                        mes "do you wish to return";
2844                        mes "to your stronghold?";
2845                        next;
2846                        switch(select("Return to the Stronghold:Cancel")) {
2847                        case 1:
2848                                set .@GID, GetCastleData("schg_cas01",1);
2849                                if (getcharid(2) == .@GID) {
2850                                        warp "schg_cas01",120,290;
2851                                        end;
2852                                }
2853                                close;
2854                        case 2:
2855                                close;
2856                        }
2857                }
2858                mes "[ Schwaltzvalt Royal Edict ]";
2859                mes "The Holy Kingdom of";
2860                mes "Schwaltzvalt decrees that";
2861                mes "this stronghold is owned";
2862                mes "by the ^FF0000" + GetGuildName(.@GID) + "^000000 Guild.";
2863                next;
2864                mes "[ Schwaltzvalt Royal Edict ]";
2865                mes "^FF0000" + GetGuildMaster(.@GID) + "^000000 is";
2866                mes "Guild Master of ^FF0000" + GetGuildName(.@GID) + "^000000.";
2867                mes "Any that object must claim this";
2868                mes "stronghold through strength of";
2869                mes "steel and magic during the";
2870                mes "appointed Guild Siege times.";
2871                close;
2872        }
2873
2874OnRecvCastlesc01:
2875        FlagEmblem GetCastleData("schg_cas01",1);
2876        end;
2877}
2878
2879sch_gld,297,90,0        duplicate(Sc01_Flag)    Himinn#flag_sc01_2      722
Note: See TracBrowser for help on using the browser.