GhostPalace.txt 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991
  1. //===== rAthena Script =======================================
  2. //= Ghost Palace
  3. //===== Description: =========================================
  4. //= [Walkthrough Conversion]
  5. //= Ghost Palace Instance
  6. //===== Changelogs: ==========================================
  7. //= 1.0 First version. [Capuche]
  8. //============================================================
  9. dali02,43,129,5 script Unpleasant Royal Guard# 4_M_SAKRAYROYAL,{
  10. if (BaseLevel < 120) {
  11. mes "[Unpleasant Royal Guard]";
  12. mes "Althought I need help with a task, you are not strong enough to assist me, noob~!";
  13. next;
  14. mes "[Unpleasant Royal Guard]";
  15. mes "Come back later when you have done some training and are at least level 120!";
  16. close;
  17. }
  18. .@party_id = getcharid(1);
  19. if (getcharid(0) != getpartyleader(.@party_id,2) || .@party_id < 1) {
  20. mes "[Unpleasant Royal Guard]";
  21. mes "I can only open the secret passage for party leaders. Please have your party leader talk to me.";
  22. close;
  23. }
  24. switch( checkquest(1261,PLAYTIME) ) {
  25. case -1:
  26. break;
  27. case 0:
  28. case 1:
  29. mes "[Unpleasant Royal Guard]";
  30. mes "Have you found the princess yet?! Is she safe?";
  31. close;
  32. case 2:
  33. mes "[Unpleasant Royal Guard]";
  34. mes "The monsters around the secret passage have disappeared. Now is our chance to save the princess!";
  35. erasequest 1261;// Cursed Swordman
  36. close;
  37. }
  38. mes "[Unpleasant Royal Guard]";
  39. mes "I need help, even from the likes of you.";
  40. next;
  41. mes "[Unpleasant Royal Guard]";
  42. mes "In the middle of battle the princess disappeared while I was guarding the palace.";
  43. next;
  44. mes "[Unpleasant Royal Guard]";
  45. mes "You run ahead and I will catch up. We must save her.";
  46. next;
  47. if (select( "I will help.", "This is not a good time." ) == 2) {
  48. mes "[Unpleasant Royal Guard]";
  49. mes "Even now all the royal guards are fighting and dying from the monsters.";
  50. next;
  51. mes "[Unpleasant Royal Guard]";
  52. mes "We must, no matter how much fear grips our hearts, save the princess!";
  53. close;
  54. }
  55. instance_create("Ghost Palace");
  56. mes "[Unpleasant Royal Guard]";
  57. mes "Thank you..";
  58. mes "I will open the secret passage to the ^0000ffGhost Palace^000000.";
  59. mes "Please be ready!";
  60. close;
  61. }
  62. dali02,40,134,5 script Interdimensional Device#dk PORTAL,{
  63. if (BaseLevel < 120) {
  64. mes "[Unpleasant Royal Guard]";
  65. mes "Althought I need help with a task, you are not strong enough to assist me, noob~!";
  66. next;
  67. mes "[Unpleasant Royal Guard]";
  68. mes "Come back later when you have done some training and are at least level 120!";
  69. close;
  70. }
  71. mes "[Unpleasant Royal Guard]";
  72. mes "I can see the secret passage into the palace. Are you ready to save the princess?!";
  73. next;
  74. if (select( "Enter", "Stop" ) == 2) {
  75. mes "[Unpleasant Royal Guard]";
  76. mes "Even now all the royal guards are fighting and dying from the monsters.";
  77. next;
  78. mes "[Unpleasant Royal Guard]";
  79. mes "We must, no matter how much fear grips our hearts, save the princess!";
  80. close;
  81. }
  82. switch( checkquest(1261,PLAYTIME) ) {
  83. case -1:
  84. break;
  85. case 0:
  86. case 1:
  87. mes "[Unpleasant Royal Guard]";
  88. mes "The monsters that attacked the palace are wandering around the secret entrance. It would be very bad if they spotted us... Please wait.";
  89. next;
  90. mes "When the time limit for the entrance is up";
  91. mes "let's try to re-enter.";
  92. close;
  93. case 2:
  94. mes "^0000ffThe time limit for entering to the Curse of the Swordsman is finished. Please try to talk to the Unpleasent Royal Guard again..^000000";
  95. erasequest 1261;// Cursed Swordman
  96. close;
  97. }
  98. .@party_id = getcharid(1);
  99. if (getcharid(0) != getpartyleader(.@party_id,2) || .@party_id < 1) {
  100. mes "[Unpleasant Royal Guard]";
  101. mes "I can only open the secret passage for party leaders. Please have your party leader talk to me.";
  102. close;
  103. }
  104. .@md_name$ = "Ghost Palace";
  105. switch( instance_enter(.@md_name$) ) {
  106. case IE_OTHER:
  107. mes "An unknown error occurred.";
  108. close;
  109. case IE_NOINSTANCE:
  110. mes "^ff0000Inside the devices you see a dark hole. If you wish to enter you must to talk to the Unpleasent Royal Guard first.^000000";
  111. close;
  112. case IE_NOMEMBER:
  113. mes "Only registered members can enter the " + .@md_name$ + " instance.";
  114. close;
  115. case IE_OK:
  116. mapannounce "dali", "" + strcharinfo(0) + " of the party, " + getpartyname(.@party_id) + ", is entering the Ghost Palace.", bc_map, 0x00ff99;
  117. // warp "1@spa",42,196;
  118. setquest 1261;// Cursed Swordman
  119. end;
  120. }
  121. }
  122. // 1st floor
  123. 1@spa,41,204,5 script King#dk 4_M_RUSKING,{
  124. mes "[King]";
  125. mes "You are hereby appointed as the personal guard to Princess Tiara. I trust your loyalty above all else.";
  126. npctalk "King: You are hereby appointed as the personal guard to Princess Tiara. I trust your loyalty above all else.";
  127. next;
  128. mes "[Lurid Royal Guard]";
  129. mes "I will protect the princess with my life.";
  130. npctalk "Lurid Royal Guard: I will protect the princess with my life.", instance_npcname("Lurid Royal Guard#dk");
  131. next;
  132. mes "[King]";
  133. mes "The marriage arrangements are going as planned. The prince is here to meet with the princess.";
  134. npctalk "King: The marriage arrangements are going as planned. The prince is here to meet with the princess.";
  135. next;
  136. mes "[Lurid Royal Guard]";
  137. mes "...Yes, your majesty.";
  138. npctalk "Lurid Royal Guard: ...Yes, your majesty.", instance_npcname("Lurid Royal Guard#dk");
  139. next;
  140. mes "[King]";
  141. mes "My gods, there are monsters in the castle! Get rid of them now!";
  142. npctalk "King: My gods, there are monsters in the castle! Get rid of them now!";
  143. close2;
  144. donpcevent instance_npcname("#gp_control_1") + "::OnStart";
  145. end;
  146. OnInstanceInit:
  147. // 1: enabled potential double spawn (official), 0: disabled
  148. 'bool_double_spawn = 1;
  149. 'map_spa$ = instance_mapname("1@spa");
  150. // warps
  151. disablenpc instance_npcname("The second floor of Palace");
  152. disablenpc instance_npcname("3rd floor in the palace");
  153. disablenpc instance_npcname("4th floor in the palace");
  154. disablenpc instance_npcname("5th floor of Palace");
  155. disablenpc instance_npcname("Way out of Palace");
  156. // first floor
  157. disablenpc instance_npcname("#gp_control_1");
  158. // second floor
  159. disablenpc instance_npcname("Lurid Royal Guard#dk1");
  160. disablenpc instance_npcname("Princess Tiara#dk");
  161. disablenpc instance_npcname("#gp_control_2");
  162. // 3rd floor
  163. disablenpc instance_npcname("King#dk1");
  164. disablenpc instance_npcname("Lurid Royal Guard#dk2");
  165. disablenpc instance_npcname("Captain of the Guard#dk");
  166. disablenpc instance_npcname("Soldier#dk1");
  167. disablenpc instance_npcname("Soldier#dk2");
  168. disablenpc instance_npcname("Soldier#dk3");
  169. disablenpc instance_npcname("Lurid Royal Guard#dk3");
  170. disablenpc instance_npcname("Thanatos Magic Trace#dk1");
  171. disablenpc instance_npcname("#gp_control_3");
  172. // 4th floor
  173. disablenpc instance_npcname("#gp_control_4");
  174. disablenpc instance_npcname("#gp_control_5");
  175. disablenpc instance_npcname("Thanatos Magic Trace#dk2");
  176. disablenpc instance_npcname("Visiting Prince#dk");
  177. disablenpc instance_npcname("Lurid Royal Guard#dk4");
  178. disablenpc instance_npcname("King's Corpse#dk");
  179. disablenpc instance_npcname("Captain's Corpse#dk");
  180. disablenpc instance_npcname("Soldier's Corpse#dk");
  181. disablenpc instance_npcname("Soldier's Corpse#dk1");
  182. disablenpc instance_npcname("Soldier's Corpse#dk2");
  183. disablenpc instance_npcname("Soldier's Corpse#dk3");
  184. disablenpc instance_npcname("Soldier's Corpse#dk4");
  185. // 5th floor
  186. disablenpc instance_npcname("#gp_control_6");
  187. disablenpc instance_npcname("Princess Tiara#dk1");
  188. disablenpc instance_npcname("Lurid Royal Guard#dk5");
  189. disablenpc instance_npcname("King#dk11");
  190. disablenpc instance_npcname("Sakray#dk");
  191. disablenpc instance_npcname("Thanatos Magic Trace#dk3");
  192. disablenpc instance_npcname("#tb");
  193. disablenpc instance_npcname("#sv");
  194. disablenpc instance_npcname("#tv");
  195. end;
  196. }
  197. 1@spa,42,201,1 script Lurid Royal Guard#dk 4_M_SAKRAYROYAL,{ end; }
  198. 1@spa,1,1,1 script #gp_control_1 HIDDEN_WARP_NPC,{
  199. end;
  200. OnStart:
  201. enablenpc instance_npcname("#gp_control_1");
  202. disablenpc instance_npcname("King#dk");
  203. disablenpc instance_npcname("Lurid Royal Guard#dk");
  204. initnpctimer;
  205. end;
  206. OnTimer2000:
  207. .@label$ = instance_npcname("#gp_control_1") + "::OnMyMobDead1";
  208. monster 'map_spa$,50,194,"Cursed Soldier",2948,1, .@label$; // CURSED_SOLDIER
  209. monster 'map_spa$,34,208,"Cursed Soldier",2948,1, .@label$; // CURSED_SOLDIER
  210. monster 'map_spa$,32,194,"Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  211. monster 'map_spa$,52,209,"Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  212. stopnpctimer;
  213. end;
  214. OnMyMobDead1:
  215. if (mobcount('map_spa$, instance_npcname("#gp_control_1") + "::OnMyMobDead1") < (1 + 'bool_double_spawn)) {
  216. deltimer instance_npcname("#gp_control_1") + "::OnSpawn1"; // stop double spawn if timer is running
  217. addtimer 2000, instance_npcname("#gp_control_1") + "::OnSpawn1";
  218. }
  219. end;
  220. OnSpawn1:
  221. .@label$ = instance_npcname("#gp_control_1") + "::OnMyMobDead2";
  222. monster 'map_spa$,37,182,"Cursed Soldier",2948,1, .@label$; // CURSED_SOLDIER
  223. monster 'map_spa$,46,182,"Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  224. end;
  225. OnMyMobDead2:
  226. if (mobcount('map_spa$, instance_npcname("#gp_control_1") + "::OnMyMobDead2") < 1) {
  227. deltimer instance_npcname("#gp_control_1") + "::OnSpawn1"; // stop double spawn if timer is running
  228. deltimer instance_npcname("#gp_control_1") + "::OnSpawn2";
  229. addtimer 2000, instance_npcname("#gp_control_1") + "::OnSpawn2";
  230. }
  231. end;
  232. OnSpawn2:
  233. .@label$ = instance_npcname("#gp_control_1") + "::OnMyMobDead3";
  234. monster 'map_spa$,30,200,"Cursed Soldier",2948,1, .@label$; // CURSED_SOLDIER
  235. monster 'map_spa$,51,200,"Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  236. monster 'map_spa$,53,199,"Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  237. end;
  238. OnMyMobDead3:
  239. if (mobcount('map_spa$, instance_npcname("#gp_control_1") + "::OnMyMobDead3") < 1) {
  240. mapannounce 'map_spa$, "The passage on the 2nd floor in the palace of ghost is open .", bc_map,0xFFFF00;
  241. enablenpc instance_npcname("The second floor of Palace");
  242. enablenpc instance_npcname("Lurid Royal Guard#dk1");
  243. enablenpc instance_npcname("Princess Tiara#dk");
  244. }
  245. end;
  246. }
  247. // 2nd floor
  248. 1@spa,132,122,7 script Lurid Royal Guard#dk1 4_M_SAKRAYROYAL,{
  249. .@tiara$ = instance_npcname("Princess Tiara#dk");
  250. cutin "npc-tiara.bmp",3;
  251. mes "[Lurid Royal Guard]";
  252. mes "Your highness, the King has invited a prince from a neighboring country to be your betrothed. Be ready to meet him...";
  253. npctalk "Lurid Royal Guard: Your highness, the King has invited a prince from a neighboring country to be your betrothed. Be ready to meet him...";
  254. next;
  255. mes "[Princess Tiara]";
  256. mes "If...If a marriage is arranged what should I do?";
  257. npctalk "Princess Tiara: If...If a marriage is arranged what should I do?", .@tiara$;
  258. next;
  259. mes "[Lurid Royal Guard]";
  260. mes "The only thing I can do is protect you from physical harm.";
  261. npctalk "Lurid Royal Guard: The only thing I can do is protect you from physical harm.";
  262. next;
  263. mes "[Princess Tiara]";
  264. mes "Then, what can I do?";
  265. npctalk "Princess Tiara: Then, what can I do?", .@tiara$;
  266. next;
  267. mes "[Lurid Royal Guard]";
  268. mes "You must decide that for yourself your highness...";
  269. npctalk "Lurid Royal Guard: You must decide that for yourself your highness...";
  270. next;
  271. mes "[Princess Tiara]";
  272. mes "Would it be easier for you if I were married and sent off to another country?";
  273. npctalk "Princess Tiara: Would it be easier for you if I were married and sent off to another country?", .@tiara$;
  274. next;
  275. mes "[Lurid Royal Guard]";
  276. mes "I will always stand by you and protect you forever.";
  277. npctalk "Lurid Royal Guard: I will always stand by you and protect you forever.";
  278. cutin "npc-tiara.bmp",255;
  279. next;
  280. mes "[Princess Tiara]";
  281. mes "Monsters have gotten inside the castle? Please, protect me!";
  282. npctalk "Princess Tiara: Monsters have gotten inside the castle? Please, protect me!", .@tiara$;
  283. next;
  284. mes "[Lurid Royal Guard]";
  285. mes "Stay behind me. Let's go!";
  286. npctalk "Lurid Royal Guard: Stay behind me. Let's go!";
  287. close2;
  288. donpcevent instance_npcname("#gp_control_2") + "::OnStart";
  289. end;
  290. }
  291. 1@spa,135,125,3 duplicate(Lurid Royal Guard#dk) Princess Tiara#dk 4_F_MAYSEL
  292. 1@spa,1,1,1 script #gp_control_2 HIDDEN_WARP_NPC,{
  293. end;
  294. OnStart:
  295. enablenpc instance_npcname("#gp_control_2");
  296. disablenpc instance_npcname("Lurid Royal Guard#dk1");
  297. disablenpc instance_npcname("Princess Tiara#dk");
  298. disablenpc instance_npcname("The second floor of Palace");
  299. killmonster 'map_spa$, instance_npcname("#gp_control_1") + "::OnMyMobDead1";
  300. killmonster 'map_spa$, instance_npcname("#gp_control_1") + "::OnMyMobDead2";
  301. killmonster 'map_spa$, instance_npcname("#gp_control_1") + "::OnMyMobDead3";
  302. disablenpc instance_npcname("#gp_control_1");
  303. initnpctimer;
  304. end;
  305. OnTimer2000:
  306. .@label$ = instance_npcname("#gp_control_2") + "::OnMyMobDead1";
  307. monster 'map_spa$,135,116,"Broken Promise",2950,1, .@label$; // BROKEN_MIND
  308. monster 'map_spa$,110,120,"Broken Promise",2950,1, .@label$; // BROKEN_MIND
  309. monster 'map_spa$,122,112,"Floating Sorrow",2951,1, .@label$; // FLOATING_WORD
  310. monster 'map_spa$,121,129,"Unfulfilled Love",2952,1, .@label$; // LIKE_LOVE
  311. stopnpctimer;
  312. end;
  313. OnMyMobDead1:
  314. if (mobcount('map_spa$, instance_npcname("#gp_control_2") + "::OnMyMobDead1") < 1) {
  315. sleep 2000;
  316. .@label$ = instance_npcname("#gp_control_2") + "::OnMyMobDead2";
  317. monster 'map_spa$,120,103,"Broken Promise",2950,1, .@label$; // BROKEN_MIND
  318. monster 'map_spa$,115,137,"Floating Sorrow",2951,1, .@label$; // FLOATING_WORD
  319. monster 'map_spa$,103,130,"Unfulfilled Love",2952,1, .@label$; // LIKE_LOVE
  320. }
  321. end;
  322. OnMyMobDead2:
  323. if (mobcount('map_spa$, instance_npcname("#gp_control_2") + "::OnMyMobDead2") < 1) {
  324. sleep 2000;
  325. .@label$ = instance_npcname("#gp_control_2") + "::OnMyMobDead3";
  326. monster 'map_spa$,98,119,"Floating Sorrow",2951,1, .@label$; // FLOATING_WORD
  327. monster 'map_spa$,98,120,"Floating Sorrow",2951,1, .@label$; // FLOATING_WORD
  328. monster 'map_spa$,103,109,"Unfulfilled Love",2952,1, .@label$; // LIKE_LOVE
  329. }
  330. end;
  331. OnMyMobDead3:
  332. if (mobcount('map_spa$, instance_npcname("#gp_control_2") + "::OnMyMobDead3") < 1) {
  333. mapannounce 'map_spa$, "The passage on the 3rd floor of the palace is open.", bc_map,0xFFFF00;
  334. enablenpc instance_npcname("3rd floor in the palace");
  335. enablenpc instance_npcname("King#dk1");
  336. enablenpc instance_npcname("Lurid Royal Guard#dk2");
  337. enablenpc instance_npcname("Captain of the Guard#dk");
  338. enablenpc instance_npcname("Soldier#dk1");
  339. enablenpc instance_npcname("Soldier#dk2");
  340. enablenpc instance_npcname("Soldier#dk3");
  341. disablenpc instance_npcname("#gp_control_2");
  342. }
  343. end;
  344. }
  345. // 3rd floor
  346. 1@spa,32,54,1 script King#dk1 4_M_RUSKING,{
  347. mes "[King]";
  348. mes "It was you who brought the monsters here! You want to get rid of me and have the princess for yourself?";
  349. npctalk "King: It was you who brought the monsters here! You want to get rid of me and have the princess for yourself?";
  350. next;
  351. mes "[Lurid Royal Guard]";
  352. mes "It is a trap your majesty! You must trust me!";
  353. npctalk "Lurid Royal Guard: It is a trap your majesty! You must trust me!", instance_npcname("Lurid Royal Guard#dk2");
  354. next;
  355. mes "[King]";
  356. mes "Shut up! You've betrayed me! I trusted you... you must pay for your disgrace.";
  357. npctalk "King: Shut up! You've betrayed me! I trusted you... you must pay for your disgrace.";
  358. next;
  359. mes "[King]";
  360. mes "You will suffer for the rest of your life.";
  361. npctalk "King: You will suffer for the rest of your life.";
  362. close2;
  363. disablenpc instance_npcname("3rd floor in the palace");
  364. disablenpc instance_npcname("King#dk1");
  365. disablenpc instance_npcname("Captain of the Guard#dk");
  366. disablenpc instance_npcname("Soldier#dk1");
  367. disablenpc instance_npcname("Soldier#dk2");
  368. disablenpc instance_npcname("Soldier#dk3");
  369. disablenpc instance_npcname("Lurid Royal Guard#dk2");
  370. donpcevent instance_npcname("Thanatos Magic Trace#dk1") + "::OnStart";
  371. end;
  372. }
  373. 1@spa,35,56,5 script Thanatos Magic Trace#dk1 4_TRACE,{
  374. end;
  375. OnStart:
  376. enablenpc instance_npcname("Thanatos Magic Trace#dk1");
  377. enablenpc instance_npcname("Lurid Royal Guard#dk3");
  378. initnpctimer;
  379. end;
  380. OnTimer5000:
  381. npctalk "Ominous Voice: Oh, faithful royal guard, you are trapped.";
  382. end;
  383. OnTimer8000:
  384. npctalk "Ominous Voice: The conspiracy in the palace has your princess in grave danger...";
  385. end;
  386. OnTimer12000:
  387. npctalk "Lurid Royal Guard: Who are you? Show yourself!", instance_npcname("Lurid Royal Guard#dk3");
  388. end;
  389. OnTimer15000:
  390. npctalk "Ominous Voice: Ah... so you do you hear me?";
  391. end;
  392. OnTimer20000:
  393. npctalk "Lurid Royal Guard: ...?", instance_npcname("Lurid Royal Guard#dk3");
  394. end;
  395. OnTimer23000:
  396. npctalk "Ominous Voice: I can give you unlimited power. If you make a pact with me.";
  397. end;
  398. OnTimer28000:
  399. npctalk "Lurid Royal Guard: I..I...", instance_npcname("Lurid Royal Guard#dk3");
  400. end;
  401. OnTimer33000:
  402. npctalk "Thanatos Magic Trace: Kukuku... What do you want boy?";
  403. end;
  404. OnTimer34000:
  405. stopnpctimer;
  406. disablenpc instance_npcname("Thanatos Magic Trace#dk1");
  407. disablenpc instance_npcname("Lurid Royal Guard#dk3");
  408. donpcevent instance_npcname("#gp_control_3") + "::OnStart";
  409. end;
  410. }
  411. 1@spa,28,52,7 duplicate(Lurid Royal Guard#dk) Captain of the Guard#dk 4_M_KY_KNT
  412. 1@spa,25,53,7 duplicate(Lurid Royal Guard#dk) Soldier#dk1 4_M_CRU_SOLD
  413. 1@spa,34,53,1 duplicate(Lurid Royal Guard#dk) Soldier#dk2 4_M_CRU_SOLD
  414. 1@spa,30,52,7 duplicate(Lurid Royal Guard#dk) Soldier#dk3 4_M_KY_SOLD
  415. 1@spa,30,58,5 duplicate(Lurid Royal Guard#dk) Lurid Royal Guard#dk2 4_M_SAKRAY_TIED
  416. 1@spa,31,57,5 duplicate(Lurid Royal Guard#dk) Lurid Royal Guard#dk3 4_M_SAKRAY_TIED
  417. 1@spa,1,1,1 script #gp_control_3 HIDDEN_WARP_NPC,{
  418. end;
  419. OnStart:
  420. enablenpc instance_npcname("#gp_control_3");
  421. initnpctimer;
  422. end;
  423. OnTimer2000:
  424. .@label$ = instance_npcname("#gp_control_3") + "::OnMyMobDead1";
  425. monster 'map_spa$,31,57, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  426. monster 'map_spa$,59,24, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  427. monster 'map_spa$,23,40, "Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  428. monster 'map_spa$,54,45, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  429. monster 'map_spa$,26,20, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  430. stopnpctimer;
  431. end;
  432. OnMyMobDead1:
  433. if (mobcount('map_spa$, instance_npcname("#gp_control_3") + "::OnMyMobDead1") < 1)
  434. addtimer 2000, instance_npcname("#gp_control_3") + "::OnSpawn1";
  435. end;
  436. OnSpawn1:
  437. .@label$ = instance_npcname("#gp_control_3") + "::OnMyMobDead2";
  438. monster 'map_spa$,30,52, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  439. monster 'map_spa$,58,58, "Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  440. monster 'map_spa$,54,24, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  441. end;
  442. OnMyMobDead2:
  443. if (mobcount('map_spa$, instance_npcname("#gp_control_3") + "::OnMyMobDead2") < (1 + 'bool_double_spawn)) {
  444. deltimer instance_npcname("#gp_control_3") + "::OnAnnounce";
  445. addtimer 500, instance_npcname("#gp_control_3") + "::OnAnnounce";
  446. }
  447. end;
  448. OnAnnounce:
  449. mapannounce 'map_spa$, "The passage on the 4th floor of the palace is open.", bc_map,0xFFFF00;
  450. enablenpc instance_npcname("4th floor in the palace");
  451. deltimer instance_npcname("#gp_control_3") + "::OnSpawn2"; // stop double spawn if timer is running
  452. addtimer 2000, instance_npcname("#gp_control_3") + "::OnSpawn2";
  453. end;
  454. OnSpawn2:
  455. donpcevent instance_npcname("#gp_control_4") + "::OnStart";
  456. // 35 mobs
  457. .@label$ = instance_npcname("#gp_control_3") + "::OnMyMobDead3";
  458. monster 'map_spa$,67,46, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  459. unittalk $@mobid[0], "You are trapped...";
  460. monster 'map_spa$,62,48, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  461. unittalk $@mobid[0], "Run away!";
  462. monster 'map_spa$,57,46, "Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  463. unittalk $@mobid[0], "Run away quickly!";
  464. monster 'map_spa$,51,48, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  465. unittalk $@mobid[0], "Faithful royal guard...";
  466. monster 'map_spa$,56,55, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  467. unittalk $@mobid[0], "Run away!";
  468. monster 'map_spa$,62,56, "Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  469. unittalk $@mobid[0], "You are trapped...";
  470. monster 'map_spa$,66,58, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  471. unittalk $@mobid[0], "You put your princess in grave danger...";
  472. monster 'map_spa$,66,64, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  473. unittalk $@mobid[0], "Faithful royal guard...";
  474. monster 'map_spa$,62,65, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  475. unittalk $@mobid[0], "Run away quickly!";
  476. monster 'map_spa$,57,67, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  477. unittalk $@mobid[0], "You are trapped...";
  478. monster 'map_spa$,49,66, "Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  479. unittalk $@mobid[0], "Run away!";
  480. monster 'map_spa$,44,66, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  481. unittalk $@mobid[0], "Run away quickly!";
  482. monster 'map_spa$,45,20, "Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  483. unittalk $@mobid[0], "Run away!";
  484. monster 'map_spa$,38,20, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  485. unittalk $@mobid[0], "You are trapped...";
  486. monster 'map_spa$,32,20, "Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  487. unittalk $@mobid[0], "Run away quickly!";
  488. monster 'map_spa$,51,22, "Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  489. unittalk $@mobid[0], "Run away quickly!";
  490. monster 'map_spa$,26,34,"Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  491. unittalk $@mobid[0], "Run away!";
  492. monster 'map_spa$,21,37,"Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  493. unittalk $@mobid[0], "Faithful royal guard...";
  494. monster 'map_spa$,18,39,"Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  495. unittalk $@mobid[0], "Run away quickly!";
  496. monster 'map_spa$,21,45,"Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  497. unittalk $@mobid[0], "Run away!";
  498. monster 'map_spa$,23,49,"Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  499. unittalk $@mobid[0], "You are trapped...";
  500. monster 'map_spa$,25,54,"Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  501. unittalk $@mobid[0], "Run away quickly!";
  502. monster 'map_spa$,29,54,"Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  503. unittalk $@mobid[0], "You put your princess in grave danger...";
  504. monster 'map_spa$,56,39,"Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  505. unittalk $@mobid[0], "Run away!";
  506. monster 'map_spa$,61,36,"Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  507. unittalk $@mobid[0], "Faithful royal guard...";
  508. monster 'map_spa$,66,38,"Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  509. unittalk $@mobid[0], "Run away quickly!";
  510. monster 'map_spa$,42,54,"Wasted Friendship",2955,1, .@label$; // OLD_FRIENDSHIP
  511. unittalk $@mobid[0], "Run away!";
  512. monster 'map_spa$,35,54,"Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  513. unittalk $@mobid[0], "You are trapped...";
  514. monster 'map_spa$,43,60,"Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  515. unittalk $@mobid[0], "Faithful royal guard...";
  516. monster 'map_spa$,30,25,"Tarnished Oath",2954,1, .@label$; // COLORLESS_VOW
  517. unittalk $@mobid[0], "You put your princess in grave danger...";
  518. monster 'map_spa$,30,31,"Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  519. unittalk $@mobid[0], "You are trapped...";
  520. monster 'map_spa$,65,64, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  521. monster 'map_spa$,65,67, "Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  522. monster 'map_spa$,18,43,"Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  523. monster 'map_spa$,21,43,"Regretful Memory",2953,1, .@label$; // CURSED_MEMORY
  524. end;
  525. OnMyMobDead3:
  526. end;
  527. }
  528. // 4th floor
  529. 1@spa,1,1,1 script #gp_control_4 HIDDEN_WARP_NPC,{
  530. end;
  531. OnStart:
  532. enablenpc instance_npcname("#gp_control_4");
  533. .@label$ = instance_npcname("#gp_control_4") + "::OnMyMobDead1";
  534. monster 'map_spa$,215,194, "Sweet Slaughter",2956,1, .@label$; // SWEET_SLAUGHTER
  535. monster 'map_spa$,194,178, "Sweet Slaughter",2956,1, .@label$; // SWEET_SLAUGHTER
  536. monster 'map_spa$,191,211, "Sweet Slaughter",2956,1, .@label$; // SWEET_SLAUGHTER
  537. monster 'map_spa$,185,203, "Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  538. monster 'map_spa$,209,218, "Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  539. end;
  540. OnMyMobDead1:
  541. if (mobcount('map_spa$, instance_npcname("#gp_control_4") + "::OnMyMobDead1") < (1 + 'bool_double_spawn)) {
  542. deltimer instance_npcname("#gp_control_4") + "::OnSpawn1";
  543. addtimer 2000, instance_npcname("#gp_control_4") + "::OnSpawn1";
  544. }
  545. end;
  546. OnSpawn1:
  547. .@label$ = instance_npcname("#gp_control_4") + "::OnMyMobDead2";
  548. monster 'map_spa$,189,192, "Cursed Gatekeeper",2949,1, .@label$; // CURSED_SENTINEL
  549. monster 'map_spa$,211,209, "Sweet Slaughter",2956,1, .@label$; // SWEET_SLAUGHTER
  550. end;
  551. OnMyMobDead2:
  552. if (mobcount('map_spa$, instance_npcname("#gp_control_4") + "::OnMyMobDead2") < 1) {
  553. enablenpc instance_npcname("Thanatos Magic Trace#dk2");
  554. enablenpc instance_npcname("Visiting Prince#dk");
  555. enablenpc instance_npcname("Lurid Royal Guard#dk4");
  556. enablenpc instance_npcname("King's Corpse#dk");
  557. enablenpc instance_npcname("Captain's Corpse#dk");
  558. enablenpc instance_npcname("Soldier's Corpse#dk");
  559. enablenpc instance_npcname("Soldier's Corpse#dk1");
  560. enablenpc instance_npcname("Soldier's Corpse#dk2");
  561. enablenpc instance_npcname("Soldier's Corpse#dk3");
  562. enablenpc instance_npcname("Soldier's Corpse#dk4");
  563. }
  564. end;
  565. }
  566. 1@spa,199,214,1 script Lurid Royal Guard#dk4 4_M_SAKRAYROYAL,{
  567. .@prince$ = instance_npcname("Visiting Prince#dk");
  568. mes "[Lurid Royal Guard]";
  569. mes "Where is Princess Tiara?";
  570. npctalk "Lurid Royal Guard: Where is Princess Tiara?";
  571. next;
  572. mes "[Visiting Prince]";
  573. mes "You are too late... but you brought what I was looking for. Thanks for your help.";
  574. npctalk "Visiting Prince: You are too late... but you brought what I was looking for. Thanks for your help.", .@prince$;
  575. next;
  576. mes "[Visiting Prince]";
  577. mes "Cursed Thanatos Magic Trace! Are you ready to have a new master?";
  578. npctalk "Visiting Prince: Cursed Thanatos Magic Trace! Are you ready to have a new master?", .@prince$;
  579. next;
  580. cutin "tartanos.bmp",3;
  581. mes "[Thanatos Magic Trace]";
  582. mes "How dare you!";
  583. npctalk "Thanatos Magic Trace: How dare you!", instance_npcname("Thanatos Magic Trace#dk2");
  584. next;
  585. mes "[Visiting Prince]";
  586. mes "aah, aah !!!";
  587. npctalk "Visiting Prince: Aah, aah!!!", .@prince$;
  588. donpcevent instance_npcname("#gp_control_5") + "::OnStart";
  589. close2;
  590. cutin "",255;
  591. end;
  592. }
  593. 1@spa,201,214,1 duplicate(Lurid Royal Guard#dk) Thanatos Magic Trace#dk2 CLEAR_NPC
  594. 1@spa,197,218,5 duplicate(Lurid Royal Guard#dk) Visiting Prince#dk 4_M_KNIGHT_SILVER
  595. 1@spa,194,214,5 duplicate(Lurid Royal Guard#dk) King's Corpse#dk 4_M_TRISTAN
  596. 1@spa,211,194,3 duplicate(Lurid Royal Guard#dk) Captain's Corpse#dk 4_M_LIEMAN
  597. 1@spa,201,198,1 duplicate(Lurid Royal Guard#dk) Soldier's Corpse#dk 4_M_DIEMAN
  598. 1@spa,197,190,1 duplicate(Lurid Royal Guard#dk) Soldier's Corpse#dk1 4_M_DIEMAN
  599. 1@spa,191,207,7 duplicate(Lurid Royal Guard#dk) Soldier's Corpse#dk2 4_M_DIEMAN
  600. 1@spa,206,209,7 duplicate(Lurid Royal Guard#dk) Soldier's Corpse#dk3 4_M_DIEMAN
  601. 1@spa,189,195,1 duplicate(Lurid Royal Guard#dk) Soldier's Corpse#dk4 4_M_DIEMAN
  602. 1@spa,1,1,1 script #gp_control_5 HIDDEN_WARP_NPC,{
  603. end;
  604. OnStart:
  605. enablenpc instance_npcname("#gp_control_5");
  606. disablenpc instance_npcname("Thanatos Magic Trace#dk2");
  607. disablenpc instance_npcname("Visiting Prince#dk");
  608. disablenpc instance_npcname("Lurid Royal Guard#dk4");
  609. disablenpc instance_npcname("King's Corpse#dk");
  610. disablenpc instance_npcname("Captain's Corpse#dk");
  611. disablenpc instance_npcname("Soldier's Corpse#dk");
  612. disablenpc instance_npcname("Soldier's Corpse#dk1");
  613. disablenpc instance_npcname("Soldier's Corpse#dk2");
  614. disablenpc instance_npcname("Soldier's Corpse#dk3");
  615. disablenpc instance_npcname("Soldier's Corpse#dk4");
  616. sleep 1000;
  617. .@label$ = instance_npcname("#gp_control_5") + "::OnMyMobDead";
  618. monster 'map_spa$,198,218, "Torturous Redeemer",2959,1, .@label$; // TORTUROUS_REDEEMER
  619. monster 'map_spa$,198,182, "Sweet Slaughter",2956,1, .@label$; // SWEET_SLAUGHTER
  620. end;
  621. OnMyMobDead:
  622. if (mobcount('map_spa$, instance_npcname("#gp_control_5") + "::OnMyMobDead") < 1) {
  623. deltimer instance_npcname("#gp_control_4") + "::OnSpawn1"; // stop double spawn if timer is running
  624. mapannounce 'map_spa$, "The passage on the 5th floor of the palace is open.", bc_map,0xFFFF00;
  625. disablenpc instance_npcname("4th floor in the palace");
  626. enablenpc instance_npcname("5th floor of Palace");
  627. enablenpc instance_npcname("Princess Tiara#dk1");
  628. enablenpc instance_npcname("Lurid Royal Guard#dk5");
  629. killmonster 'map_spa$, instance_npcname("#gp_control_3") + "::OnMyMobDead2";
  630. killmonster 'map_spa$, instance_npcname("#gp_control_3") + "::OnMyMobDead3";
  631. disablenpc instance_npcname("#gp_control_3");
  632. }
  633. end;
  634. }
  635. // 5th floor
  636. 1@spa,216,43,3 script Princess Tiara#dk1 4_F_MAYSEL,{
  637. .@guard$ = instance_npcname("Lurid Royal Guard#dk5");
  638. mes "[Princess Tiara]";
  639. mes "You kept your promise.";
  640. npctalk "Princess Tiara: You kept your promise.";
  641. next;
  642. mes "[Lurid Royal Guard]";
  643. mes "princess!";
  644. npctalk "Lurid Royal Guard: Princess!", .@guard$;
  645. next;
  646. cutin "npc-tiara.bmp",3;
  647. mes "[Princess Tiara]";
  648. mes "Thank you... now I can rest beside you...";
  649. npctalk "Princess Tiara: Thank you... now I can rest beside you...";
  650. next;
  651. mes "[Lurid Royal Guard]";
  652. mes "No..No!!!!!";
  653. npctalk "Lurid Royal Guard: No..No!!!!!", .@guard$;
  654. next;
  655. mes "[The voice of Princess Tiara]";
  656. mes "I want to be with you forever in peace...forever...";
  657. npctalk "Princess Tiara: I want to be with you forever in peace...forever...";
  658. next;
  659. cutin "b-tiara.BMP",3;
  660. mes "[Lurid Royal Guard]";
  661. mes "no.....Ahh ahh ahh!!!!~!";
  662. npctalk "Lurid Royal Guard: no.....Ahh ahh ahh!!!!~!", .@guard$;
  663. next;
  664. mes "[The voice of Princess Tiara]";
  665. mes "I love you...";
  666. npctalk "Princess Tiara: I love you...";
  667. cutin "",255;
  668. close2;
  669. donpcevent instance_npcname("#gp_control_6") + "::OnStart";
  670. end;
  671. }
  672. 1@spa,213,42,7 duplicate(Lurid Royal Guard#dk) Lurid Royal Guard#dk5 4_M_SAKRAYROYAL
  673. 1@spa,1,1,1 script #gp_control_6 HIDDEN_WARP_NPC,{
  674. end;
  675. OnStart:
  676. enablenpc instance_npcname("#gp_control_6");
  677. disablenpc instance_npcname("Princess Tiara#dk1");
  678. disablenpc instance_npcname("Lurid Royal Guard#dk5");
  679. killmonster 'map_spa$, instance_npcname("#gp_control_4") + "::OnMyMobDead1";
  680. killmonster 'map_spa$, instance_npcname("#gp_control_4") + "::OnMyMobDead2";
  681. killmonster 'map_spa$, instance_npcname("#gp_control_5") + "::OnMyMobDead";
  682. disablenpc instance_npcname("#gp_control_4");
  683. disablenpc instance_npcname("#gp_control_5");
  684. disablenpc instance_npcname("5th floor of Palace");
  685. sleep 2000;
  686. .@label$ = instance_npcname("#gp_control_6") + "::OnMyMobDead1";
  687. monster 'map_spa$,217,52, "Forgotten Name" ,2957,1, .@label$; // FORGOTTEN_NAME
  688. unittalk $@mobid[0], "Wake up! look at us... We are monsters?";
  689. monster 'map_spa$,190,21, "Tarnished Oath" ,2954,1, .@label$; // COLORLESS_VOW
  690. unittalk $@mobid[0], "Sakray killed the King and tried to kill us!";
  691. monster 'map_spa$,198,49, "Tarnished Oath" ,2954,1, .@label$; // COLORLESS_VOW
  692. unittalk $@mobid[0], "What is this..??";
  693. monster 'map_spa$,212,28, "Fatal Days" ,2958,1, .@label$; // FATAL_DAYS
  694. unittalk $@mobid[0], "Sakray killed a princess!";
  695. end;
  696. OnMyMobDead1:
  697. if (mobcount('map_spa$, instance_npcname("#gp_control_6") + "::OnMyMobDead1") < 1) {
  698. sleep 2000;
  699. .@label$ = instance_npcname("#gp_control_6") + "::OnMyMobDead2";
  700. monster 'map_spa$,217,43, "Forgotten Name" ,2957,1, .@label$; // FORGOTTEN_NAME
  701. unittalk $@mobid[0], "Wake up! look at us... We are monsters?";
  702. monster 'map_spa$,193,24, "Forgotten Name" ,2957,1, .@label$; // FORGOTTEN_NAME
  703. unittalk $@mobid[0], "Sakray..?? why.....Sakray!";
  704. monster 'map_spa$,216,59, "Tarnished Oath" ,2954,1, .@label$; // COLORLESS_VOW
  705. unittalk $@mobid[0], "Sakray killed the King and tried to kill us!";
  706. monster 'map_spa$,197,57, "Fatal Days" ,2958,1, .@label$; // FATAL_DAYS
  707. unittalk $@mobid[0], "Sakray killed a princess!";
  708. }
  709. end;
  710. OnMyMobDead2:
  711. if (mobcount('map_spa$, instance_npcname("#gp_control_6") + "::OnMyMobDead2") < 1) {
  712. sleep 2000;
  713. .@label$ = instance_npcname("#gp_control_6") + "::OnMyMobDead3";
  714. monster 'map_spa$,193,39, "Forgotten Name" ,2957,1, .@label$; // FORGOTTEN_NAME
  715. unittalk $@mobid[0], "Wake up! look at us... We are monsters?";
  716. monster 'map_spa$,212,34, "Forgotten Name" ,2957,1, .@label$; // FORGOTTEN_NAME
  717. unittalk $@mobid[0], "Sakray..?? why.....Sakray!";
  718. monster 'map_spa$,201,64, "Tarnished Oath" ,2954,1, .@label$; // COLORLESS_VOW
  719. unittalk $@mobid[0], "Sakray killed the King and tried to kill us!";
  720. monster 'map_spa$,175,44, "Fatal Days" ,2958,1, .@label$; // FATAL_DAYS
  721. unittalk $@mobid[0], "Sakray killed a princess!";
  722. }
  723. end;
  724. OnMyMobDead3:
  725. if (mobcount('map_spa$, instance_npcname("#gp_control_6") + "::OnMyMobDead3") < 1) {
  726. sleep 2000;
  727. monster 'map_spa$,200,45, "Torturous Redeemer" ,2961,1, instance_npcname("#gp_control_6") + "::OnMyMobDead4"; // E_TORTUROUS_REDEEMER
  728. unittalk $@mobid[0], "Thanatos Magic Trace! I will destroy you if I can't have you... Oh no! How could this be?";
  729. sleep 5000;
  730. killmonster 'map_spa$, instance_npcname("#gp_control_6") + "::OnMyMobDead4";
  731. enablenpc instance_npcname("Sakray#dk");
  732. enablenpc instance_npcname("Thanatos Magic Trace#dk3");
  733. disablenpc instance_npcname("#gp_control_6");
  734. }
  735. end;
  736. OnMyMobDead4:
  737. end;
  738. }
  739. 1@spa,196,44,5 script Sakray#dk 4_M_SAKRAY,{
  740. mes "[Lurid Royal Guard]";
  741. mes "Are you satisfied..? Thanatos Magic Trace?";
  742. npctalk "Lurid Royal Guard: Are you satisfied..? Thanatos Magic Trace?";
  743. next;
  744. mes "[Thanatos Magic Trace]";
  745. mes "I need more blood..Sakray, offer me his blood.";
  746. npctalk "Thanatos Magic Trace: I need more blood..Sakray, offer me his blood.", instance_npcname("Thanatos Magic Trace#dk3");
  747. next;
  748. mes "[Sakray]";
  749. mes "Okay, that is good. A traveller. Did you see?";
  750. npctalk "Sakray: Okay, that is good. A traveller. Did you see?";
  751. next;
  752. mes "[" + strcharinfo(0) + "]";
  753. mes "Sakray, what do you want? Sympathy? Or is it a trap?";
  754. unittalk getcharid(3), "" + strcharinfo(0) + " : Sakray, what do you want? Sympathy? Or is it a trap?";
  755. next;
  756. mes "[Sakray]";
  757. mes "No... I do not need to make any effort to catch a novice.";
  758. npctalk "Sakray: No... I do not need to make any effort to catch a novice.";
  759. next;
  760. mes "[" + strcharinfo(0) + "]";
  761. mes "If so... then why...?";
  762. unittalk getcharid(3), "" + strcharinfo(0) + " : If so... then why...?";
  763. next;
  764. cutin "cry-b.bmp",2;
  765. mes "[Sakray]";
  766. mes "I wanted to get rid of a piece of humanity inside of me through you.";
  767. npctalk "Sakray: I wanted to get rid of a piece of humanity inside of me through you.";
  768. next;
  769. mes "[Sakray]";
  770. mes "I am quite satisfied with the result.";
  771. npctalk "Sakray: I am quite satisfied with the result.";
  772. next;
  773. mes "[Thanatos Magic Trace]";
  774. mes "Sakray, offer the blood to me now!";
  775. npctalk "Thanatos Magic Trace: Sakray, offer the blood to me now!", instance_npcname("Thanatos Magic Trace#dk3");
  776. next;
  777. mes "[Sakray]";
  778. mes "If you were me, what would you do?";
  779. npctalk "Sakray: If you were me, what would you do?";
  780. next;
  781. mes "[Sakray]";
  782. mes "Can you set yourself free from this curse?";
  783. npctalk "Sakray: Can you set yourself free from this curse?";
  784. next;
  785. mes "[" + strcharinfo(0) + "]";
  786. mes "...";
  787. unittalk getcharid(3), "" + strcharinfo(0) + " : ...";
  788. next;
  789. mes "[Sakray]";
  790. mes "Heh heh... I will keep watching you until the day comes when you are old enough.";
  791. npctalk "Sakray: Heh heh... I will keep watching you until the day comes when you are old enough.";
  792. next;
  793. mes "[Sakray]";
  794. mes "I am willing to hunt you later for Thanatos.";
  795. npctalk "Sakray: I am willing to hunt you later for Thanatos.";
  796. cutin "",255;
  797. next;
  798. mes "[Sakray]";
  799. mes "Farewell then.";
  800. npctalk "Sakray: Farewell then.";
  801. close2;
  802. donpcevent instance_npcname("#tb") + "::OnStart";
  803. end;
  804. }
  805. 1@spa,196,46,1 script #tb CLEAR_NPC,{
  806. end;
  807. OnStart:
  808. disablenpc instance_npcname("Sakray#dk");
  809. disablenpc instance_npcname("Thanatos Magic Trace#dk3");
  810. enablenpc instance_npcname("#tb");
  811. enablenpc instance_npcname("#sv");
  812. enablenpc instance_npcname("#tv");
  813. initnpctimer;
  814. end;
  815. OnTimer3000:
  816. npctalk "Voice of Princess Tiara : What can I do for you?";
  817. end;
  818. OnTimer8000:
  819. npctalk "Voice of Sakray : I will always stand by you. Please rest beside me.", instance_npcname("#sv");
  820. end;
  821. OnTimer13000:
  822. npctalk "Thanatos Magic Trace: Sakray, do not forget the covenant of blood between us.", instance_npcname("#tv");
  823. end;
  824. OnTimer17000:
  825. npctalk "Thanatos Magic Trace: Your soul is mine until you find the blood that satisfies me...", instance_npcname("#tv");
  826. end;
  827. OnTimer22000:
  828. npctalk "Voice of Sakray : Rest in the shadow with me.", instance_npcname("#sv");
  829. end;
  830. OnTimer25000:
  831. npctalk "Voice of Sakray : In the dark forever...", instance_npcname("#sv");
  832. end;
  833. OnTimer28500:
  834. disablenpc instance_npcname("#tb");
  835. disablenpc instance_npcname("#sv");
  836. disablenpc instance_npcname("#tv");
  837. mapannounce 'map_spa$, "It is time to leave the Ghost Palace.", bc_map,0xFFFF00;
  838. enablenpc instance_npcname("Way out of Palace");
  839. enablenpc instance_npcname("King#dk11");
  840. end;
  841. }
  842. 1@spa,195,41,1 duplicate(Lurid Royal Guard#dk) Thanatos Magic Trace#dk3 CLEAR_NPC
  843. 1@spa,198,43,1 duplicate(Lurid Royal Guard#dk) #sv CLEAR_NPC
  844. 1@spa,196,41,1 duplicate(Lurid Royal Guard#dk) #tv CLEAR_NPC
  845. 1@spa,204,29,1 script King#dk11 4_M_RUSKING,{
  846. disable_items;
  847. mes "[King]";
  848. mes "Hey there, are you alive?";
  849. mes "I did not expect to meet someone who is still alive.";
  850. next;
  851. mes "[King]";
  852. mes "Do you possibly have the ^006400Gray Shard^000000?";
  853. mes "Can you give it to me?";
  854. mes "The memories of the faithful royal guard";
  855. mes "and the memories of everyone he loved";
  856. mes "are contained inside of these shards.";
  857. next;
  858. mes "[King]";
  859. mes "Will you give the ^006400Gray Shard^000000 to me?";
  860. mes "The guilt is eating my soul.";
  861. mes "My soul is stuck within the Ghost Palace.";
  862. next;
  863. mes "[King]";
  864. mes "I am collecting Sakray's abandoned memories from these shards.";
  865. next;
  866. mes "[King]";
  867. mes "If you give any ^006400Gray Shard^000000s to me, I can make equipment for you.";
  868. next;
  869. mes "[King]";
  870. mes "The cursed knight...";
  871. mes "Please help me save the soul of Sakray.";
  872. next;
  873. setarray .@item_name$[0],
  874. "Thanatos Sword", "Thanatos Great Sword", "Thanatos Spear", "Thanatos Long Spear", "Thanatos Staff",
  875. "Thanatos Two-handed Staff", "Thanatos Bow", "Thanatos Dagger", "Thanatos Katar", "Thanatos Knuckle",
  876. "Thanatos Hammer", "Thanatos Axe", "Thanatos Violin", "Thanatos Whip",
  877. "Gray Shield", "Gray Armor", "Gray Robe", "Gray Cloak", "Gray Shoes", "Gray Helmet";
  878. setarray .@items_list[0],13441,21009,1438,1496,1669,2023,18119,13093,28000,1836,16028,28100,1933,1988,2187,15090,15091,20721,22033,18820;
  879. for ( .@i = 0; .@i < 20; .@i++ )
  880. .@menu$ += .@item_name$[.@i] + ":";
  881. .@menu$ += "Cancel";
  882. while(true) {
  883. .@s = select(.@menu$) - 1;
  884. if (.@s == 20) {
  885. mes "[King]";
  886. mes "Someday, Sakray will";
  887. mes "get out of this curse for sure.";
  888. mes "I believe";
  889. mes "^006400Gray Shard^000000s are the only method";
  890. mes "to save him....";
  891. close;
  892. }
  893. .@cost = ( .@s > 13 ? 100 : 200 );
  894. mes "[King]";
  895. mes "To make a ^FF0000" + .@item_name$[.@s] + "^000000";
  896. mes "I need " + .@cost + " ^006400Gray Shard^000000.";
  897. next;
  898. if (select( "Cancel", "Hand over " + .@cost + " Gray Shard." ) == 1) {
  899. mes "[King]";
  900. mes "Someday, Sakray will";
  901. mes "get out of this curse for sure.";
  902. next;
  903. continue;
  904. }
  905. if (countitem(6672) < .@cost) {
  906. mes "[King]";
  907. mes "You do not have enough ^006400Gray Shard^000000";
  908. mes "to make a ^FF0000" + .@item_name$[.@s] + "^000000.";
  909. mes "I need " + .@cost + " ^006400Gray Shard^000000.";
  910. next;
  911. continue;
  912. }
  913. mes "[King]";
  914. mes "I will make a ^FF0000" + .@item_name$[.@s] + "^000000";
  915. mes "with " + .@cost + " ^006400Gray Shard^000000.";
  916. next;
  917. mes "You see a light through the folded hands of the king and it gradually takes on a shape.";
  918. next;
  919. mes "[King]";
  920. mes "All right, it is done.";
  921. mes "Take this ^FF0000" + .@item_name$[.@s] + "^000000";
  922. mes "to confront Sakray and Thanatos.";
  923. next;
  924. mes "[King]";
  925. mes "The power requires a sacrifice.";
  926. mes "Please be careful...";
  927. delitem 6672,.@cost;// Gray Shard
  928. getitem .@items_list[.@s],1;
  929. close;
  930. }
  931. }
  932. 1@spa,210,28,0 script Way out of Palace WARPNPC,2,2,{
  933. end;
  934. OnTouch_:
  935. mes "It is time to leave the Ghost Palace.";
  936. mes "Everything is now complete";
  937. mes "and will vanish..";
  938. close2;
  939. if (isbegin_quest(1263) == 2)
  940. getitem 6672,1;// Gray Shard
  941. else {
  942. setquest 1263;// Cursed Swordman
  943. completequest 1263;
  944. getexp 900000,500000;
  945. getitem 6672,2;// Gray Shard
  946. }
  947. warp "dali02",46,129;
  948. end;
  949. }
  950. 1@spa,41,217,0 warp The second floor of Palace 2,2,1@spa,114,120
  951. 1@spa,117,137,0 warp 3rd floor in the palace 2,2,1@spa,60,43
  952. 1@spa,54,28,0 warp 4th floor in the palace 2,2,1@spa,218,186
  953. 1@spa,178,186,0 warp 5th floor of Palace 2,2,1@spa,186,57