arug_cas02.txt 88 KB

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