dancer.txt 37 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400
  1. //===== eAthena Script =======================================
  2. //= Dancer Job Quest
  3. //===== By: ==================================================
  4. //= Kalen - Original jAthena
  5. //= Fredzilla - Converted, Lupus
  6. //===== Current Version: =====================================
  7. //= 3.7
  8. //===== Compatible With: =====================================
  9. //= eAthena SVN
  10. //===== Description: =========================================
  11. //= [Aegis Conversion]
  12. //= Job quest for Dancer classes
  13. //===== Additional Comments: =================================
  14. //= 3.2 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
  15. //= No longer uses function "F_BlockHigh"
  16. //= 3.2a Deleted unused variables. [Samuray22]
  17. //= 3.3 Updated waiting room. (Removes global var) [L0ne_W0lf]
  18. //= 3.4 Fixed bad variables, bugreport:1685 [Brainstorm]
  19. //= 3.5 Minor corrections to script. (bugreport:1766) [L0ne_W0lf]
  20. //= 3.6 Applied Correction bug with for loop. [L0ne_W0lf]
  21. //= 3.6a Fixed a little Exploit to bug the quest with a timeout. (bugreport:2252) [Samuray22]
  22. //= 3.7 Added Quest Log commands. [Kisuka]
  23. //============================================================
  24. comodo,180,153,4 script Sonotora#1 90,{
  25. mes "[Athena Sonotora]";
  26. mes "They say the";
  27. mes "famous dance school";
  28. mes "here in Comodo is going";
  29. mes "to open soon.";
  30. next;
  31. mes "[Athena Sonotora]";
  32. mes "Aah...";
  33. mes "To be a prima donna";
  34. mes "in the spotlight!";
  35. next;
  36. mes "[Athena Sonotora]";
  37. mes "I want to sign up too,";
  38. mes "but the requirements are";
  39. mes "so specific. I wonder if";
  40. mes "I should just try anyways...";
  41. close;
  42. }
  43. comodo,193,151,4 script Bor Robin#1 86,{
  44. mes "[Bor Robin]";
  45. mes "Aah....";
  46. mes "A prima donna";
  47. mes "in the spotlight!";
  48. mes "I'll be able to watch them become Dancers right before my eyes...!";
  49. next;
  50. mes "[Bor Robin]";
  51. mes "It's great to be";
  52. mes "a man in this day and age! Hurray for the Comodo Theater!";
  53. next;
  54. mes "[Bor Robin]";
  55. mes "Mm?";
  56. mes "You want";
  57. mes "to go, too?";
  58. mes "It's a good opportunity to watch the Dancer job change test.";
  59. next;
  60. if (select("Go to the Job Change Area:Cancel") == 1) {
  61. mes "[Bor Robin]";
  62. mes "Yaay~~";
  63. mes "Let's go!";
  64. close2;
  65. warp "job_duncer",70,49;
  66. end;
  67. }
  68. mes "[Bor Robin]";
  69. mes "Huh...";
  70. mes "Well, I can't";
  71. mes "help it if you don't";
  72. mes "want to accompany me.";
  73. close;
  74. }
  75. job_duncer,43,93,4 script Aile#da 724,{
  76. if (Upper == 1) {
  77. mes "[Aile]";
  78. mes "One two three four,";
  79. mes "Two two three four,";
  80. mes "three four, three four,";
  81. mes "one two three four.";
  82. mes "Um?";
  83. next;
  84. mes "[Aile]";
  85. mes "I'm sorry, but you're interrupting my practice by looking at me funny.";
  86. next;
  87. mes "[Aile]";
  88. mes ".......";
  89. mes ".....Hey, haven't I seen you before?";
  90. next;
  91. mes "[Aile]";
  92. mes "Err...";
  93. mes "That's weird, I can't remember where I've seen you.";
  94. close2;
  95. cutin "",255;
  96. end;
  97. }
  98. if (BaseJob != Job_Archer) {
  99. if (BaseJob == Job_Bard) {
  100. cutin "job_dancer_eir01",2;
  101. mes "[Aile]";
  102. mes "Welcome~!";
  103. mes "Let me know";
  104. mes "if you have any new songs. We can always use some new music to complement our performances.";
  105. close2;
  106. cutin "",255;
  107. end;
  108. }
  109. else if (BaseJob == Job_Dancer) {
  110. cutin "",2;
  111. mes "[Aile]";
  112. mes "Welcome~!";
  113. mes "How are you";
  114. mes "these days?";
  115. mes "Do many people enjoy";
  116. mes "your performances?";
  117. close2;
  118. cutin "",255;
  119. end;
  120. }
  121. cutin "job_dancer_eir03",2;
  122. mes "[Aile]";
  123. mes "Welco--Mmm?";
  124. mes "Hey, only authorized personnel can come here. Not just anyone can enter the Dance School.";
  125. next;
  126. mes "[Aile]";
  127. mes "If you want to watch, why don't you go to the Dance Stage in town?";
  128. close2;
  129. cutin "",255;
  130. end;
  131. }
  132. if (DANC_Q == 0 && sex == 0 && BaseJob == Job_Archer) {
  133. cutin "job_dancer_eir01",2;
  134. mes "[Aile]";
  135. mes "Welcome~!";
  136. mes "This is the";
  137. mes "'Comodo Dance School,'";
  138. mes "where we teach various dances from different countries. We provide entertainement for travelers from all over the world.";
  139. next;
  140. mes "[Aile]";
  141. mes "We also provide the opportunity for aspiring Dancers to become famous throughout the Rune-Midgarts Kingdom! Doesn't dancing in the spotlight sound spectacular?";
  142. next;
  143. mes "[Aile]";
  144. mes "I think it's fair to let you know that our school is selective. So we don't accept students who don't seem to have the talent to become Dancers.";
  145. next;
  146. cutin "job_dancer_eir02",2;
  147. mes "[Aile]";
  148. mes "What do you think?";
  149. mes "Do you want to sign up? You only have to write a couple of things on the application, and you can just come to the lessons once or twice and try it out.";
  150. next;
  151. cutin "job_dancer_eir01",2;
  152. mes "[Aile]";
  153. mes "So what do";
  154. mes "you want to do~?";
  155. next;
  156. if (select("Fill out the application.:I'll pass.") == 1) {
  157. if (JobLevel > 39) {
  158. cutin "job_dancer_eir02",2;
  159. mes "[Aile]";
  160. mes "Good choice!!";
  161. mes "Just fill out the application right there.";
  162. next;
  163. mes "...";
  164. next;
  165. mes "...";
  166. mes "......";
  167. next;
  168. mes "^3355FF*Shuffle Shuffle*^000000";
  169. next;
  170. cutin "job_dancer_eir01",2;
  171. mes "[Aile]";
  172. mes "Your name is";
  173. mes "" + strcharinfo(0) + "?";
  174. mes "Wow! What a pretty name! Just a moment, I have to show this to the director, so come back in a little bit, okay?";
  175. close2;
  176. cutin "",255;
  177. set DANC_Q,1;
  178. setquest 7000;
  179. end;
  180. }
  181. else {
  182. cutin "job_dancer_eir01",2;
  183. mes "[Aile]";
  184. mes "Mmm...";
  185. mes "It seems that";
  186. mes "you aren't quite qualified to enroll in our school yet. You need to be at least Job Level 40.";
  187. next;
  188. mes "[Aile]";
  189. mes "Well, I hope";
  190. mes "that you apply";
  191. mes "again when you meet";
  192. mes "the requirements.";
  193. close2;
  194. cutin "",255;
  195. end;
  196. }
  197. }
  198. cutin "job_dancer_eir01",2;
  199. mes "[Aile]";
  200. mes "Aww~";
  201. mes "Just think about it.";
  202. mes "Don't forget to come back";
  203. mes "if you change your mind.";
  204. close2;
  205. cutin "",255;
  206. end;
  207. }
  208. else if (sex == 1) {
  209. cutin "job_dancer_eir03",2;
  210. mes "[Aile]";
  211. mes "Welco--Mmm?";
  212. mes "Hey, this place is only for authorized personnel. If you want to sing, you should go look into being a Bard.";
  213. next;
  214. mes "[Aile]";
  215. mes "Not all Archers";
  216. mes "can become Dancers.";
  217. mes "At least, not without some sort of sex change~";
  218. close2;
  219. cutin "",255;
  220. end;
  221. }
  222. else if (DANC_Q == 1) {
  223. cutin "job_dancer_eir01",2;
  224. mes "[Aile]";
  225. mes "Good.";
  226. mes "Since you signed up earlier, I'll let you know some things you'll need to bring for your lessons.";
  227. next;
  228. mes "[Aile]";
  229. mes "We're short on some supplies, but you'll be using them for yourself anyway. Just think of it as part of the tuition, so don't worry too much.";
  230. next;
  231. set .@item_nd,rand(1,10);
  232. if (.@item_nd > 0 && .@item_nd < 3) {
  233. set DANC_Q,2;
  234. changequest 7000,7001;
  235. mes "[Aile]";
  236. mes "First, there's the tuition fee of ^CD688910,000 Zeny^000000. Then, you'll about ^CD688920 Sticky Mucus^000000 for shoe polish.";
  237. next;
  238. mes "[Aile]";
  239. mes "Then, bring ^CD68893 Jellopy^000000 and ^CD68895 Red Potions^000000 to use as ointment. And of course, you'll need a pair of ^CD6889Shoes^000000.";
  240. next;
  241. mes "[Aile]";
  242. mes "Once again, that's";
  243. mes "^CD688910,000 Zeny^000000,";
  244. mes "^CD688920 Sticky Mucus^000000,";
  245. mes "^CD68893 Jellopy^000000,";
  246. mes "^CD68895 Red Potions^000000 and";
  247. mes "^CD68891 Shoes^000000.";
  248. }
  249. else if (.@item_nd == 4) {
  250. set DANC_Q,3;
  251. changequest 7000,7002;
  252. mes "[Aile]";
  253. mes "First, there's the tuition fee of ^CD688910,000 Zeny^000000. Then, bring ^CD68895 Earthworm Peelings^000000 for polishing the floor and, of course, a pair of ^CD6889Boots^000000.";
  254. next;
  255. mes "[Aile]";
  256. mes "Once again that's";
  257. mes "^CD688910,000 Zeny^000000,";
  258. mes "^CD68895 Earthworm Peelings^000000 and ";
  259. mes "^CD68891 Boots^000000.";
  260. }
  261. else {
  262. set DANC_Q,4;
  263. changequest 7000,7003;
  264. mes "[Aile]";
  265. mes "First, there's the tuition fee of ^CD688910,000 Zeny^000000. Then, bring ^CD68892 Clam Shells^000000 for your costume, ^CD68895 Yellow Potions^000000 and ^CD688920 Jellopy^000000 to treat foot injuries.";
  266. next;
  267. mes "[Aile]";
  268. mes "You'll also need to bring ^CD688910 Black Hairs^000000 to make wigs for the performances and, of course, a pair of ^CD6889Sandals^000000. Once again, that's...";
  269. next;
  270. mes "[Aile]";
  271. mes "^CD688910,000 Zeny^000000,";
  272. mes "^CD68892 Clam Shells^000000,";
  273. mes "^CD68895 Yellow Potions^000000,";
  274. mes "^CD688920 Jellopy^000000,";
  275. mes "^CD688910 Black Hairs^000000 and";
  276. mes "^CD6889Sandals^000000.";
  277. }
  278. next;
  279. mes "[Aile]";
  280. mes "Once you've gathered everything that you need, come back so that we can begin the lessons, okay?";
  281. close2;
  282. cutin "",255;
  283. end;
  284. }
  285. else if (DANC_Q >= 2 && DANC_Q <= 4) {
  286. switch(DANC_Q) {
  287. case 2:
  288. setarray .@item[0], 938,909,501,2403;
  289. setarray .@count[0], 20,3,5,1;
  290. break;
  291. case 3:
  292. setarray .@item[0], 1055,2405;
  293. setarray .@count[0], 5,1;
  294. break;
  295. case 4:
  296. setarray .@item[0], 965,503,909,1020,2401;
  297. setarray .@count[0], 2,5,20,10,1;
  298. break;
  299. }
  300. set .@size, getarraysize(.@item);
  301. for( set .@i, 0; .@i < .@size; set .@i,.@i+1 ) {
  302. if( countitem(.@item[.@i]) < .@count[.@i] ) {
  303. break;
  304. }
  305. }
  306. if( .@i == .@size && Zeny > 9999 ) {
  307. cutin "job_dancer_eir02",2;
  308. mes "[Aile]";
  309. mes "Oh...!";
  310. mes "You brought";
  311. mes "everything!";
  312. mes "Alright then,";
  313. mes "let me take your";
  314. mes "tuition fee.";
  315. next;
  316. cutin "job_dancer_eir01",2;
  317. set zeny,zeny-10000;
  318. mes "[Aile]";
  319. mes "Next, go to ^CD6889Bijou^000000, who is in charge of the interviewing process. She will have a couple of things she'll need to ask you.";
  320. set DANC_Q,5;
  321. if(checkquest(7001) != -1) {
  322. changequest 7001,7004;
  323. }
  324. else if(checkquest(7002) != -1) {
  325. changequest 7002,7004;
  326. }
  327. else {
  328. changequest 7003,7004;
  329. }
  330. close2;
  331. cutin "",255;
  332. end;
  333. }
  334. else {
  335. cutin "job_dancer_eir01",2;
  336. mes "[Aile]";
  337. mes "Mmm...?";
  338. mes "You don't have";
  339. mes "everything yet?";
  340. mes "Let me remind you";
  341. mes "so you can bring";
  342. mes "what you need next time.";
  343. next;
  344. mes "[Aile]";
  345. mes "Bring...";
  346. mes "^CD688910,000 Zeny^000000,";
  347. if (DANC_Q == 2) {
  348. mes "^CD6889"+.@count[0]+" "+getitemname(.@item[0])+"^000000,";
  349. mes "^CD6889"+.@count[1]+" "+getitemname(.@item[1])+"^000000,";
  350. mes "^CD6889"+.@count[2]+" "+getitemname(.@item[2])+"^000000 and";
  351. mes "^CD6889"+.@count[3]+" "+getitemname(.@item[3])+"^000000.";
  352. }
  353. else if (DANC_Q == 3) {
  354. mes "^CD6889"+.@count[0]+" "+getitemname(.@item[0])+"^000000 and";
  355. mes "^CD6889"+.@count[1]+" "+getitemname(.@item[1])+"^000000.";
  356. }
  357. else {
  358. mes "^CD6889"+.@count[0]+" "+getitemname(.@item[0])+"^000000,";
  359. mes "^CD6889"+.@count[1]+" "+getitemname(.@item[1])+"^000000,";
  360. mes "^CD6889"+.@count[2]+" "+getitemname(.@item[2])+"^000000,";
  361. mes "^CD6889"+.@count[3]+" "+getitemname(.@item[3])+"^000000 and";
  362. mes "^CD6889"+.@count[4]+" "+getitemname(.@item[4])+"^000000.";
  363. }
  364. close2;
  365. cutin "",255;
  366. end;
  367. }
  368. }
  369. else if (DANC_Q == 5) {
  370. cutin "job_dancer_eir01",2;
  371. mes "[Aile]";
  372. mes "Hmm...?";
  373. mes "Are you having";
  374. mes "trouble finding";
  375. mes "^CD6889Bijou^000000?";
  376. next;
  377. mes "[Aile]";
  378. mes "You need to talk to her because she's in charge of the interviewing process. Don't worry, she should be somewhere here in the Dance School.";
  379. close2;
  380. cutin "",255;
  381. end;
  382. }
  383. else if (DANC_Q > 5) {
  384. cutin "job_dancer_eir01",2;
  385. mes "[Aile]";
  386. mes "I'll be looking";
  387. mes "forward to a great";
  388. mes "performance~";
  389. close2;
  390. cutin "",255;
  391. end;
  392. }
  393. else {
  394. cutin "job_dancer_eir03",2;
  395. mes "[Aile]";
  396. mes "Welcom--Hm?";
  397. mes "Hey, only authorized";
  398. mes "personnel are allowed";
  399. mes "in here.";
  400. next;
  401. mes "[Aile]";
  402. mes "If you want to watch, be quiet and don't disturb the performers. Everyone here is busy practicing so that they can become fine Dancers.";
  403. close2;
  404. cutin "",255;
  405. end;
  406. }
  407. }
  408. job_duncer,95,93,4 script Bijou#da 101,{
  409. if (SkillPoint) {
  410. mes "[Bijou]";
  411. mes "You can't change jobs";
  412. mes "if you still have skill";
  413. mes "points left. Use the rest";
  414. mes "and come back later.";
  415. close;
  416. }
  417. if (BaseJob != Job_Archer) {
  418. if (BaseJob == Job_Bard) {
  419. mes "[Bijou]";
  420. mes "Welcome~";
  421. mes "Ooh, a Bard! Do you have any new songs to show us? We can always use some musical accompaniment for our dances.";
  422. close;
  423. }
  424. else if (BaseJob == Job_Dancer) {
  425. mes "[Bijou]";
  426. mes "Oh my...!";
  427. mes "Welcome back~";
  428. next;
  429. mes "[Bijou]";
  430. mes "How are you";
  431. mes "these days?";
  432. mes "A lot of people";
  433. mes "must love watching";
  434. mes "you dance. Are you";
  435. mes "enjoying the spotlight?";
  436. close;
  437. }
  438. mes "[Bijou]";
  439. mes "Oh dear~";
  440. mes "You seem to have traveled quite a distance to watch me perform.";
  441. next;
  442. mes "[Bijou]";
  443. mes "I'm sorry, but I've retired. Now I'm focusing on training new Dancers. If you go to the Center Stage, you can watch my students~";
  444. close;
  445. }
  446. else if (DANC_Q < 5) {
  447. mes "[Bijou]";
  448. mes "Oh my~";
  449. mes "You want to";
  450. mes "become a Dancer,";
  451. mes "don't you?";
  452. next;
  453. mes "[Bijou]";
  454. mes "I know you're excited, but the first step is the application. Go over to the left side of the stage where Aile can help you with that.";
  455. close;
  456. }
  457. else if (DANC_Q > 4 && DANC_Q < 7) {
  458. if (DANC_Q == 5) {
  459. mes "[Bijou]";
  460. mes "Oh my~";
  461. mes "You want to";
  462. mes "become a Dancer,";
  463. mes "don't you?";
  464. next;
  465. mes "[Bijou]";
  466. mes "G-goodness!";
  467. mes "Look at that stomach fat!";
  468. mes "Well, it's not much, so you'll lose it in no time. Especially since I'll be handling your training~";
  469. next;
  470. mes "[Bijou]";
  471. mes "Still...";
  472. mes "The idea of the";
  473. mes "perfect body sure";
  474. mes "has changed since";
  475. mes "I was young. Anyway...";
  476. next;
  477. mes "[Bijou]";
  478. mes "Let's start";
  479. mes "with the interview.";
  480. mes "I'm only going to ask";
  481. mes "a couple of simple things";
  482. mes "so don't worry~";
  483. next;
  484. mes "[Bijou]";
  485. mes "Okay...";
  486. mes "Let's begin.";
  487. next;
  488. }
  489. else {
  490. mes "[Bijou]";
  491. mes "Oh, you're back~";
  492. mes "Have you studied";
  493. mes "some more? Try to";
  494. mes "pass this time, okay?";
  495. next;
  496. }
  497. switch(rand(1,3)) {
  498. case 1:
  499. mes "[Bijou]";
  500. mes "1. The Dancer's dance, ^CD6889Lady Luck^000000,";
  501. mes "increases which of the following?";
  502. next;
  503. if (select("Intelligence (INT):Dexterity (DEX):Vitality (VIT):Critical Attack Rate") == 4)
  504. set .@da_score,.@da_score+10;
  505. mes "[Bijou]";
  506. mes "2. Of the following,";
  507. mes "which can you not consider";
  508. mes "to be a dance?";
  509. next;
  510. switch(select("Tango:Tap Dance:HIP-HOP:Hip Shaker:Lightning Bolt")) {
  511. default:
  512. set .@da_score,.@da_score-10;
  513. break;
  514. case 5:
  515. set .@da_score,.@da_score+10;
  516. break;
  517. }
  518. mes "[Bijou]";
  519. mes "3. Which of the following";
  520. mes "best describes a Dancer?";
  521. next;
  522. if (select("Person who yells.:A loud person.:A person who dances.:A person who sings.") == 3)
  523. set .@da_score,.@da_score+10;
  524. mes "[Bijou]";
  525. mes "4. Which of the following";
  526. mes "cannot be associated with Comodo?";
  527. next;
  528. if (select("Beach city.:Dancer Job Change.:Always dark like the night.:Dungeons in 3 directions.:A lot of Thieves.") == 5)
  529. set .@da_score,.@da_score+10;
  530. mes "[Bijou]";
  531. mes "5. Before Comodo, what is the region name of the region NorthEast of Pharoah's Lighthouse Island?";
  532. next;
  533. if (select("Elmeth Plateau:Comuko Beach:Comodo Beach:Ginai Swamp") == 3)
  534. set .@da_score,.@da_score+10;
  535. mes "[Bijou]";
  536. mes "6. Who is the most";
  537. mes "beautiful dancer?";
  538. next;
  539. switch(select("" + strcharinfo(0) + ":Bijou:Aile:Bonjour")) {
  540. case 1:
  541. mes "[Bijou]";
  542. mes "...";
  543. mes "That's...";
  544. mes "^660000completely wrong^000000.";
  545. mes "Didn't you see the";
  546. mes "other choices?!";
  547. mes "Minus points...!";
  548. set .@da_score,.@da_score-10;
  549. next;
  550. break;
  551. case 2:
  552. set .@da_score,.@da_score+10;
  553. break;
  554. default:
  555. break;
  556. }
  557. mes "[Bijou]";
  558. mes "7. Of the following,";
  559. mes "who can perform together";
  560. mes "with a Dancer?";
  561. next;
  562. if (select("Assassin:Bard:Alchemist:Sage") == 2)
  563. set .@da_score,.@da_score+10;
  564. mes "[Bijou]";
  565. mes "8. Which of the following";
  566. mes "is not a specialty of Comodo?";
  567. next;
  568. if (select("Berserk Potion:Clam Shell:Crab Shell:Shining Stone") == 4)
  569. set .@da_score,.@da_score+10;
  570. mes "[Bijou]";
  571. mes "9. Who is the manager";
  572. mes "of the Comodo Casino?";
  573. next;
  574. if (select("Yoo:Moo:Hoon:Roul") == 2)
  575. set .@da_score,.@da_score+10;
  576. mes "[Bijou]";
  577. mes "10. Who accepts the";
  578. mes "Dancer job change";
  579. mes "applications?";
  580. next;
  581. if (select("Bijou:Aile:Athena:Sonotora") == 2)
  582. set .@da_score,.@da_score+10;
  583. break;
  584. case 2:
  585. mes "[Bijou]";
  586. mes "1. What is the effect";
  587. mes "of the combined skill,";
  588. mes "^CD6889Mental Sensing^000000?";
  589. next;
  590. if (select("Instant monster death.:Doubles damage.:Increases experience.:Increases attack speed.") == 3)
  591. set .@da_score,.@da_score+10;
  592. mes "[Bijou]";
  593. mes "2. Which is considered";
  594. mes "bad etiquette on the dance";
  595. mes "floor after a dance?";
  596. next;
  597. if (select("Thank your partner.:Praise your partner's dance.:Ask to dance a different dance.:Criticize your partner.") == 4)
  598. set .@da_score,.@da_score+10;
  599. mes "[Bijou]";
  600. mes "3. Which is not an";
  601. mes "appropriate response";
  602. mes "when someone makes";
  603. mes "a mistake while you";
  604. mes "are dancing together?";
  605. next;
  606. if (select("Smile at each other and continue dancing.:Point out the mistake.:Ignore it if the dancer does not realize it.:Give them a smile.") == 2)
  607. set .@da_score,.@da_score+10;
  608. mes "[Bijou]";
  609. mes "4. In which town";
  610. mes "can you change jobs";
  611. mes "to a Dancer?";
  612. next;
  613. if (select("Cocomo:Sandarman:Comudo:Comodo") == 4)
  614. set .@da_score,.@da_score+10;
  615. mes "[Bijou]";
  616. mes "5. How many dungeons";
  617. mes "are directly connected";
  618. mes "to Comodo?";
  619. next;
  620. if (select("1:2:3:4") == 3)
  621. set .@da_score,.@da_score+10;
  622. mes "[Bijou]";
  623. mes "6. Which of the following";
  624. mes "is not a Cute Pet monster?";
  625. next;
  626. if (select("Isis:Argiope:Dokebi:Deviruchi") == 2)
  627. set .@da_score,.@da_score+10;
  628. mes "[Bijou]";
  629. mes "7. Who is the most";
  630. mes "graceful dancer?";
  631. next;
  632. switch(select("" + strcharinfo(0) + ":Bijou:Isis:Mercy Bokou")) {
  633. case 1:
  634. mes "[Bijou]";
  635. mes "...";
  636. mes "That's...";
  637. mes "^660000completely wrong^000000.";
  638. mes "Didn't you see the";
  639. mes "other choices?!";
  640. mes "Minus points...!";
  641. set .@da_score,.@da_score-10;
  642. next;
  643. break;
  644. case 2:
  645. set .@da_score,.@da_score+10;
  646. break;
  647. default:
  648. break;
  649. }
  650. mes "[Bijou]";
  651. mes "8. What is the";
  652. mes "exact name of the";
  653. mes "Kafra in Comodo?";
  654. next;
  655. if (select("Kafra Headquarters:Kafra West Headquarters:Kafra Service:Kafra Headquarters: Western Branch") == 4)
  656. set .@da_score,.@da_score+10;
  657. mes "[......]";
  658. mes "9. What is my name?";
  659. next;
  660. if (select("Borjuis:Bourgeois:Bijou:Beruberu") == 3)
  661. set .@da_score,.@da_score+10;
  662. mes "[Bijou]";
  663. mes "10. What is the";
  664. mes "effect of ^CD6889Lullaby^000000?";
  665. next;
  666. if (select("Casts the Blind effect in the area.:Casts the Sleep effect on the area.:Puts a night effect on the area.:Freezes the area.") == 2)
  667. set .@da_score,.@da_score+10;
  668. break;
  669. case 3:
  670. mes "[Bijou]";
  671. mes "1. What is the effect";
  672. mes "of the skill ^CD6889Dance Lessons^000000?";
  673. next;
  674. switch(select("Increases INT:Increases the effect of dancing skills:Increase damage of Whip weapons.:Inflict Stun on a certain area around the caster.")) {
  675. default:
  676. break;
  677. case 2:
  678. case 3:
  679. set .@da_score,.@da_score+10;
  680. break;
  681. }
  682. mes "[Bijou]";
  683. mes "2. What dance uses shoes";
  684. mes "that are designed to make";
  685. mes "sound as the dancer rolls";
  686. mes "their feet and taps the";
  687. mes "ground to create a rhythm?";
  688. next;
  689. if (select("Tap Dance:Improve Concentration:Tango:Double Strafing") == 1)
  690. set .@da_score,.@da_score+10;
  691. mes "[Bijou]";
  692. mes "3. Which of the following";
  693. mes "is not a characteristic of a Dancer?";
  694. next;
  695. if (select("Uses Dance skills. :Attacks from a distance.:Uses Whips.:Uses Two-handed swords.") == 4)
  696. set .@da_score,.@da_score+10;
  697. mes "[Bijou]";
  698. mes "4. Which town has";
  699. mes "the most Dancers?";
  700. next;
  701. if (select("Al De Baran:Juno:Morroc:Comodo") == 4)
  702. set .@da_score,.@da_score+10;
  703. mes "[Bijou]";
  704. mes "5. Of the following,";
  705. mes "who dances most beautifully?";
  706. next;
  707. switch(select("" + strcharinfo(0) + ":Bijou:Isis:Guton Tak")) {
  708. case 1:
  709. mes "[Bijou]";
  710. mes "...";
  711. mes "That's...";
  712. mes "^660000completely wrong^000000.";
  713. mes "Didn't you see the";
  714. mes "other choices?!";
  715. mes "Minus points...!";
  716. set .@da_score,.@da_score-10;
  717. next;
  718. break;
  719. case 2:
  720. set .@da_score,.@da_score+10;
  721. break;
  722. default:
  723. break;
  724. }
  725. mes "[Bijou]";
  726. mes "6. What is the Dancer";
  727. mes "better at than the other";
  728. mes "job classes?";
  729. next;
  730. if (select("Health:Acting :Dancing :Magic ") == 3)
  731. set .@da_score,.@da_score+10;
  732. mes "[Bijou]";
  733. mes "7. Who is the manager";
  734. mes "of the Comodo Casino?";
  735. next;
  736. if (select("Ryu:Moo:Roul:Hoon") == 2)
  737. set .@da_score,.@da_score+10;
  738. mes "[Bijou]";
  739. mes "8. What item cannot";
  740. mes "be equipped by a Dancer?";
  741. next;
  742. if (select("Kitty Band :Two-handed Sword:Sandals:Earring") == 2)
  743. set .@da_score,.@da_score+10;
  744. mes "[Bijou]";
  745. mes "9. Do you think you";
  746. mes "can say this quiz is";
  747. mes "frustrating and annoying?";
  748. next;
  749. select("Yes:No");
  750. set .@da_score,.@da_score+10;
  751. mes "[Bijou]";
  752. mes "10. Which of the following";
  753. mes "is not a Jazz musician?";
  754. next;
  755. if (select("Art Blakey:Billie Holiday :Louis Armstrong :Bud Powell :Elder Willow ") == 5)
  756. set .@da_score,.@da_score+10;
  757. }
  758. mes "[Bijou]";
  759. mes "Good job~";
  760. mes "It seems like you";
  761. mes "answered all the";
  762. mes "questions~";
  763. next;
  764. mes "[Bijou]";
  765. mes "Let's see...";
  766. mes "Your score is";
  767. mes "" + .@da_score + " points...";
  768. if (.@da_score == 100) {
  769. set DANC_Q,7;
  770. mes "Very well done!";
  771. mes "A perfect score!";
  772. next;
  773. mes "[Bijou]";
  774. mes "There aren't too many people who apply for the Dancer job with this kind of knowledge. I'm sorry for judging you by your looks~";
  775. next;
  776. mes "[Bijou]";
  777. mes "Whew~";
  778. mes "Now you only have the Dance Test. While we prepare the test, why don't you rest a bit? Ho ho ho~";
  779. close;
  780. }
  781. else if (.@da_score > 70) {
  782. set DANC_Q,7;
  783. mes "It wasn't perfect, but I'll let you pass.";
  784. close;
  785. }
  786. else {
  787. set DANC_Q,6;
  788. mes "You.. You failed!";
  789. next;
  790. mes "[Bijou]";
  791. mes "Was it too hard?";
  792. mes "When I was young, everyone knew at least enough to pass this test. Go and study some more before coming back, okay?";
  793. close;
  794. }
  795. }
  796. else if (DANC_Q == 7) {
  797. mes "[Bijou]";
  798. mes "Okay...";
  799. mes "Are you ready";
  800. mes "for the Dance Test?";
  801. mes "If you like, I can";
  802. mes "explain the instructions.";
  803. next;
  804. if (select("Listen to instructions.:Go to the testing area.") == 1) {
  805. mes "[Bijou]";
  806. mes "First of all, each person gets ^CD68891 minute^000000 for the test, and everyone dances ^CD6889one at a time^000000. Don't worry if you've never danced before~";
  807. next;
  808. mes "[Bijou]";
  809. mes "Once you enter the testing area, you will see the stage. First, ^CD6889change your camera angle so that it faces forward^000000. It will probably work if you ^CD6889double-click on the right mouse button^000000.";
  810. next;
  811. mes "[Bijou]";
  812. mes "If you don't reset your camera angle, you may get the ^CD6889Up, Down, Left, Right^000000 commands confused.";
  813. next;
  814. mes "[Bijou]";
  815. mes "Wait for your turn in the ^CD6889waiting room^000000. If the person in front of you fails, or if it's your turn in line, your test will begin.";
  816. next;
  817. mes "[Bijou]";
  818. mes "If there are a lot of people, not everyone might fit in the waiting room. If that's the case, just create an orderly line~";
  819. next;
  820. mes "[Bijou]";
  821. mes "When the test begins, the music will be broadcast, as well as the direction in which you should move. Just follow the instructions and move your legs.";
  822. next;
  823. mes "[Bijou]";
  824. mes "Remember, ^CD6889you will be disqualified if you don't perform the steps with the right timing^000000. Be careful, the test is very strict~";
  825. close;
  826. }
  827. mes "[Bijou]";
  828. mes "Well then~";
  829. mes "Good luck...!!";
  830. changequest 7004,7005;
  831. set DANC_Q,8;
  832. close2;
  833. warp "job_duncer",105,109;
  834. end;
  835. }
  836. else if (DANC_Q == 8) {
  837. mes "[Bijou]";
  838. mes "Oh my...";
  839. mes "Did you";
  840. mes "fail last time?";
  841. mes "Don't worry, just";
  842. mes "try to feel the rhythm~";
  843. close2;
  844. warp "job_duncer",105,109;
  845. end;
  846. }
  847. else if (DANC_Q == 9) {
  848. if (SkillPoint) {
  849. mes "[Bijou]";
  850. mes "You can't change jobs";
  851. mes "if you still have skill";
  852. mes "points left. Use the rest";
  853. mes "and come back later.";
  854. close;
  855. }
  856. mes "[Bijou]";
  857. mes "Oh my...";
  858. mes "I saw your";
  859. mes "dance earlier.";
  860. mes "You were great!";
  861. next;
  862. mes "[Bijou]";
  863. mes "Your performance shows that you are than qualified to become a Dancer. Well then, let me change your job.";
  864. next;
  865. mes "[Bijou]";
  866. mes "With the blessing of our goddess, you shall be reborn as a Dancer. From now on, no one will leave your presense without a smile~";
  867. next;
  868. set .@jlevel,JobLevel;
  869. mes "[Bijou]";
  870. completequest 7006;
  871. callfunc "Job_Change",Job_Dancer;
  872. callfunc "F_ClearJobVar";
  873. mes "Ooh...!";
  874. mes "You look great";
  875. mes "as a Dancer~";
  876. mes "Congratulations!";
  877. next;
  878. mes "[Bijou]";
  879. mes "Here's a small";
  880. mes "gift from me.";
  881. mes "Please take it.";
  882. mes "May your performances always bring joy to your audience~";
  883. if (.@jlevel == 50)
  884. getitem 1953,1; //Line_
  885. else
  886. getitem 1950,1; //Rope
  887. close;
  888. }
  889. }
  890. // Waiting Room
  891. //============================================================
  892. job_duncer,32,154,1 script Waiting Room#dance 66,{
  893. OnInit:
  894. waitingroom "Waiting Room",20,"Waiting Room#dance::OnStartArena",1;
  895. enablewaitingroomevent;
  896. end;
  897. OnStartArena:
  898. disablenpc "dance#up";
  899. disablenpc "dance#down";
  900. disablenpc "dance#left";
  901. disablenpc "dance#right";
  902. disablenpc "dance#cen";
  903. donpcevent "dance#return::OnDisable";
  904. warpwaitingpc "job_duncer",69,110,1;
  905. donpcevent "Bijou#dance_timer::OnEnable";
  906. disablewaitingroomevent;
  907. end;
  908. OnEnable:
  909. enablewaitingroomevent;
  910. end;
  911. }
  912. job_duncer,32,154,1 script Waiting Room#click 66,{
  913. mes "[Pyorgin]";
  914. mes "Please wait in";
  915. mes "the waiting room.";
  916. mes "Click the Chatroom";
  917. mes "box to enter.";
  918. next;
  919. mes "[Pyorgin]";
  920. mes "Also, those who";
  921. mes "are curious about";
  922. mes "the test can watch";
  923. mes "backstage.";
  924. close;
  925. }
  926. // Dance Timer
  927. //============================================================
  928. job_duncer,69,105,0 script Bijou#dance_timer -1,{
  929. OnEnable:
  930. initnpctimer;
  931. end;
  932. OnDisable:
  933. stopnpctimer;
  934. end;
  935. OnTimer2000:
  936. mapannounce "job_duncer","Okay, let's begin. Now relax, the test is 1 minute~",bc_map;
  937. end;
  938. OnTimer5000:
  939. mapannounce "job_duncer"," Up!",bc_map;
  940. end;
  941. OnTimer7000:
  942. disablenpc "dance#up";
  943. enablenpc "dance#down";
  944. enablenpc "dance#left";
  945. enablenpc "dance#right";
  946. enablenpc "dance#cen";
  947. end;
  948. OnTimer8000:
  949. donpcevent "Backdancer#1::OnSmile";
  950. disablenpc "dance#up";
  951. disablenpc "dance#down";
  952. disablenpc "dance#left";
  953. disablenpc "dance#right";
  954. disablenpc "dance#cen";
  955. mapannounce "job_duncer"," Down!",bc_map;
  956. end;
  957. OnTimer11000:
  958. enablenpc "dance#up";
  959. disablenpc "dance#down";
  960. enablenpc "dance#left";
  961. enablenpc "dance#right";
  962. enablenpc "dance#cen";
  963. end;
  964. OnTimer12000:
  965. donpcevent "Backdancer#1::OnSmile";
  966. disablenpc "dance#up";
  967. disablenpc "dance#down";
  968. disablenpc "dance#left";
  969. disablenpc "dance#right";
  970. disablenpc "dance#cen";
  971. mapannounce "job_duncer"," Left~!",bc_map;
  972. end;
  973. OnTimer15000:
  974. enablenpc "dance#up";
  975. enablenpc "dance#down";
  976. disablenpc "dance#left";
  977. enablenpc "dance#right";
  978. enablenpc "dance#cen";
  979. end;
  980. OnTimer16000:
  981. donpcevent "Backdancer#1::OnSmile";
  982. disablenpc "dance#up";
  983. disablenpc "dance#down";
  984. disablenpc "dance#left";
  985. disablenpc "dance#right";
  986. disablenpc "dance#cen";
  987. mapannounce "job_duncer"," Left, then Right~!",bc_map;
  988. end;
  989. OnTimer19000:
  990. enablenpc "dance#up";
  991. enablenpc "dance#down";
  992. enablenpc "dance#left";
  993. disablenpc "dance#right";
  994. enablenpc "dance#cen";
  995. end;
  996. OnTimer20000:
  997. donpcevent "Backdancer#1::OnSmile";
  998. disablenpc "dance#up";
  999. disablenpc "dance#down";
  1000. disablenpc "dance#left";
  1001. disablenpc "dance#right";
  1002. disablenpc "dance#cen";
  1003. mapannounce "job_duncer"," Back to the Center~ !",bc_map;
  1004. end;
  1005. OnTimer23000:
  1006. enablenpc "dance#up";
  1007. enablenpc "dance#down";
  1008. enablenpc "dance#left";
  1009. enablenpc "dance#right";
  1010. disablenpc "dance#cen";
  1011. end;
  1012. OnTimer23500:
  1013. donpcevent "Backdancer#1::OnSmile";
  1014. mapannounce "job_duncer"," Hold in place... ",bc_map;
  1015. end;
  1016. OnTimer27000:
  1017. donpcevent "Backdancer#1::OnSmile";
  1018. mapannounce "job_duncer"," Hold then 'Improve Concentration!'",bc_map;
  1019. end;
  1020. OnTimer28500:
  1021. mapannounce "job_duncer"," Pay attention! ",bc_map;
  1022. end;
  1023. OnTimer30000:
  1024. donpcevent "Backdancer#1::OnSmile";
  1025. disablenpc "dance#up";
  1026. disablenpc "dance#down";
  1027. disablenpc "dance#left";
  1028. disablenpc "dance#right";
  1029. disablenpc "dance#cen";
  1030. mapannounce "job_duncer"," Left!",bc_map;
  1031. end;
  1032. OnTimer34000:
  1033. enablenpc "dance#up";
  1034. enablenpc "dance#down";
  1035. disablenpc "dance#left";
  1036. enablenpc "dance#right";
  1037. enablenpc "dance#cen";
  1038. end;
  1039. OnTimer35000:
  1040. donpcevent "Backdancer#1::OnSmile";
  1041. disablenpc "dance#up";
  1042. disablenpc "dance#down";
  1043. disablenpc "dance#left";
  1044. disablenpc "dance#right";
  1045. disablenpc "dance#cen";
  1046. mapannounce "job_duncer"," Down!",bc_map;
  1047. end;
  1048. OnTimer38500:
  1049. mapannounce "job_duncer"," Down, then Right~ ",bc_map;
  1050. end;
  1051. OnTimer40000:
  1052. enablenpc "dance#up";
  1053. enablenpc "dance#down";
  1054. enablenpc "dance#left";
  1055. disablenpc "dance#right";
  1056. enablenpc "dance#cen";
  1057. mapannounce "job_duncer"," Hold it~",bc_map;
  1058. end;
  1059. OnTimer43000:
  1060. donpcevent "Backdancer#1::OnSmile";
  1061. disablenpc "dance#up";
  1062. disablenpc "dance#down";
  1063. disablenpc "dance#left";
  1064. disablenpc "dance#right";
  1065. disablenpc "dance#cen";
  1066. mapannounce "job_duncer"," Left, Center, Right, Up!",bc_map;
  1067. end;
  1068. OnTimer49000:
  1069. disablenpc "dance#up";
  1070. enablenpc "dance#down";
  1071. enablenpc "dance#left";
  1072. enablenpc "dance#right";
  1073. enablenpc "dance#cen";
  1074. end;
  1075. OnTimer50000:
  1076. donpcevent "Backdancer#1::OnSmile";
  1077. disablenpc "dance#up";
  1078. disablenpc "dance#down";
  1079. disablenpc "dance#left";
  1080. disablenpc "dance#right";
  1081. disablenpc "dance#cen";
  1082. mapannounce "job_duncer"," Right!",bc_map;
  1083. end;
  1084. OnTimer53000:
  1085. enablenpc "dance#up";
  1086. enablenpc "dance#down";
  1087. enablenpc "dance#left";
  1088. disablenpc "dance#right";
  1089. enablenpc "dance#cen";
  1090. end;
  1091. OnTimer54000:
  1092. donpcevent "Backdancer#1::OnSmile";
  1093. disablenpc "dance#up";
  1094. disablenpc "dance#down";
  1095. disablenpc "dance#left";
  1096. disablenpc "dance#right";
  1097. disablenpc "dance#cen";
  1098. mapannounce "job_duncer"," Left, Center, Down, Up~! ",bc_map;
  1099. end;
  1100. OnTimer60000:
  1101. disablenpc "dance#up";
  1102. enablenpc "dance#down";
  1103. enablenpc "dance#left";
  1104. enablenpc "dance#right";
  1105. enablenpc "dance#cen";
  1106. end;
  1107. OnTimer61000:
  1108. donpcevent "Backdancer#1::OnSmile";
  1109. disablenpc "dance#up";
  1110. disablenpc "dance#down";
  1111. disablenpc "dance#left";
  1112. disablenpc "dance#right";
  1113. disablenpc "dance#cen";
  1114. mapannounce "job_duncer"," Once again~ Left, Center, Down, Up~ ! ",bc_map;
  1115. end;
  1116. OnTimer66000:
  1117. disablenpc "dance#up";
  1118. enablenpc "dance#down";
  1119. enablenpc "dance#left";
  1120. enablenpc "dance#right";
  1121. enablenpc "dance#cen";
  1122. end;
  1123. OnTimer67000:
  1124. donpcevent "Backdancer#1::OnSmile";
  1125. disablenpc "dance#up";
  1126. disablenpc "dance#down";
  1127. disablenpc "dance#left";
  1128. disablenpc "dance#right";
  1129. disablenpc "dance#cen";
  1130. mapannounce "job_duncer"," Down~!",bc_map;
  1131. end;
  1132. OnTimer69000:
  1133. enablenpc "dance#up";
  1134. disablenpc "dance#down";
  1135. enablenpc "dance#left";
  1136. enablenpc "dance#right";
  1137. enablenpc "dance#cen";
  1138. end;
  1139. OnTimer70000:
  1140. donpcevent "Backdancer#1::OnSmile";
  1141. disablenpc "dance#up";
  1142. disablenpc "dance#down";
  1143. disablenpc "dance#left";
  1144. disablenpc "dance#right";
  1145. disablenpc "dance#cen";
  1146. mapannounce "job_duncer"," Left!",bc_map;
  1147. end;
  1148. OnTimer74000:
  1149. enablenpc "dance#up";
  1150. enablenpc "dance#down";
  1151. disablenpc "dance#left";
  1152. enablenpc "dance#right";
  1153. enablenpc "dance#cen";
  1154. end;
  1155. OnTimer75000:
  1156. donpcevent "Backdancer#1::OnSmile";
  1157. disablenpc "dance#up";
  1158. disablenpc "dance#down";
  1159. disablenpc "dance#left";
  1160. disablenpc "dance#right";
  1161. disablenpc "dance#cen";
  1162. mapannounce "job_duncer"," Center!",bc_map;
  1163. end;
  1164. OnTimer80000:
  1165. enablenpc "dance#up";
  1166. enablenpc "dance#down";
  1167. enablenpc "dance#left";
  1168. enablenpc "dance#right";
  1169. disablenpc "dance#cen";
  1170. end;
  1171. OnTimer81000:
  1172. donpcevent "Backdancer#1::OnSmile";
  1173. disablenpc "dance#up";
  1174. disablenpc "dance#down";
  1175. disablenpc "dance#left";
  1176. disablenpc "dance#right";
  1177. disablenpc "dance#cen";
  1178. mapannounce "job_duncer"," Okay, Finish~ 'Arrow Shower!'",bc_map;
  1179. end;
  1180. OnTimer82000:
  1181. donpcevent "dance#poring::OnEnable";
  1182. end;
  1183. OnTimer89000:
  1184. donpcevent "dance#poring::OnDisable";
  1185. donpcevent "dance#return::OnEnable";
  1186. end;
  1187. }
  1188. job_duncer,69,110,0 script dance#return -1,1,4,{
  1189. OnTouch:
  1190. mapannounce "job_duncer","Good! Well done! Go back to Bijou!",bc_map;
  1191. set DANC_Q,9;
  1192. changequest 7005,7006;
  1193. warp "comodo",188,162;
  1194. end;
  1195. OnDisable:
  1196. disablenpc "dance#return";
  1197. donpcevent "dance#return#2::OnDisable";
  1198. donpcevent "dance#return#3::OnDisable";
  1199. end;
  1200. OnEnable:
  1201. enablenpc "dance#return";
  1202. donpcevent "dance#return#2::OnEnable";
  1203. end;
  1204. }
  1205. job_duncer,66,110,0 script dance#return#2 -1,1,1,{
  1206. OnTouch:
  1207. set DANC_Q,9;
  1208. warp "comodo",188,162;
  1209. end;
  1210. OnDisable:
  1211. disablenpc "dance#return#2";
  1212. end;
  1213. OnEnable:
  1214. enablenpc "dance#return#2";
  1215. donpcevent "dance#return#3::OnEnable";
  1216. end;
  1217. }
  1218. job_duncer,72,110,0 script dance#return#3 -1,1,1,{
  1219. OnTouch:
  1220. set DANC_Q,9;
  1221. warp "comodo",188,162;
  1222. end;
  1223. OnDisable:
  1224. disablenpc "dance#return#3";
  1225. end;
  1226. OnEnable:
  1227. enablenpc "dance#return#3";
  1228. donpcevent "Bijou#dance_timer::OnDisable";
  1229. donpcevent "Waiting Room#dance::OnEnable";
  1230. end;
  1231. }
  1232. // Dance Move Triggers
  1233. //============================================================
  1234. - script dancestep::StepTrigger -1,1,1,{
  1235. OnTouch:
  1236. donpcevent "Backdancer#1::OnOmg";
  1237. mapannounce "job_duncer"," " + strcharinfo(0) + ", you lack rhythm... Your timing was too late!",bc_map;
  1238. set DANC_Q,8;
  1239. donpcevent "Bijou#dance_timer::OnDisable";
  1240. donpcevent "Waiting Room#dance::OnEnable";
  1241. warp "comodo",188,162;
  1242. end;
  1243. }
  1244. job_duncer,69,113,0 duplicate(StepTrigger) dance#up -1,1,1
  1245. job_duncer,69,107,0 duplicate(StepTrigger) dance#down -1,1,1
  1246. job_duncer,66,110,0 duplicate(StepTrigger) dance#left -1,1,1
  1247. job_duncer,72,110,0 duplicate(StepTrigger) dance#right -1,1,1
  1248. job_duncer,69,110,0 duplicate(StepTrigger) dance#cen -1,1,1
  1249. job_duncer,10,10,0 script dance#poring -1,{
  1250. OnEnable:
  1251. monster "job_duncer",69,106,"Poring",1002,1,"dance#poring::OnMyMobDead";
  1252. end;
  1253. OnMyMobDead:
  1254. mapannounce "job_duncer"," Good! Well done! ",bc_map;
  1255. end;
  1256. OnDisable:
  1257. killmonsterall "job_duncer";
  1258. end;
  1259. }
  1260. // Backup Dancers
  1261. //============================================================
  1262. job_duncer,63,110,4 script Backdancer#1::BackDancer 724,{
  1263. end;
  1264. OnSmile:
  1265. Emotion e_no1;
  1266. donpcevent "Backdancer#2::OnSmile";
  1267. donpcevent "Backdancer#3::OnSmile";
  1268. donpcevent "Backdancer#4::OnSmile";
  1269. end;
  1270. OnOmg:
  1271. Emotion e_omg;
  1272. donpcevent "Backdancer#2::OnOmg";
  1273. donpcevent "Backdancer#3::OnOmg";
  1274. donpcevent "Backdancer#4::OnOmg";
  1275. end;
  1276. }
  1277. job_duncer,66,113,4 script Backdancer#2 724,{
  1278. end;
  1279. OnSmile:
  1280. Emotion e_no1;
  1281. end;
  1282. OnOmg:
  1283. Emotion e_omg;
  1284. end;
  1285. }
  1286. job_duncer,72,113,4 script Backdancer#3 724,{
  1287. end;
  1288. OnSmile:
  1289. Emotion e_no1;
  1290. end;
  1291. OnOmg:
  1292. Emotion e_omg;
  1293. end;
  1294. }
  1295. job_duncer,75,110,4 script Backdancer#4 724,{
  1296. end;
  1297. OnSmile:
  1298. Emotion e_no1;
  1299. end;
  1300. OnOmg:
  1301. Emotion e_omg;
  1302. end;
  1303. }
  1304. //============================================================
  1305. // Old changelog
  1306. //============================================================
  1307. //= 1.1 Removed the warp I left here my accident, added a check for using
  1308. //= Improved Concentration and arrow shower, people could get away with it
  1309. //= [Fredzilla]
  1310. //= 1.0 I tried to keep as much the same from the Jap version as possible
  1311. //= this turned out to be quite hard, but on the whole it is the same script
  1312. //= I have added some new things, and changed some of the used commands,
  1313. //= along with some optimization. [Fredzilla]
  1314. //= 1.5 Added Baby Class Support [Fredzilla]
  1315. //= 1.6 Added a func which prevent advanced classes passing
  1316. //= 2nd Job Quests again. It also guides adv classes where
  1317. //= to go. [Lupus]
  1318. //= 2.0 Changed numbers to constants. [Vicious]
  1319. //= 2.1 Script check #1. [Lance]
  1320. //= 2.2 Fixed unpassable part, thx2 Alis [Lupus]
  1321. //= 2.3 Updated initnpctimer to attach player to jobDq script [Skotlex]
  1322. //= 2.4 Attached chrid to be able obtain player's SP on mobs death, optimized a bit [Lupus]
  1323. //= 2.5 Final fix of chrid issues, changed 'Improved
  1324. //= Concentration' to 'Attention Concentrate' [Lupus]
  1325. //= 3.0 Some optimization, typos, added missing dialogues (4Kb lighter) [Lupus]
  1326. //= 3.1 Implemented JOBLVL as in other quests [Lupus]