hugel_bingo.txt 39 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159
  1. //===== eAthena Script =======================================
  2. //= Hugel Bingo script
  3. //===== By: ==================================================
  4. //= SinSloth
  5. //===== Current Version: =====================================
  6. //= 1.7
  7. //===== Compatible With: =====================================
  8. //= Any eAthena Version
  9. //===== Description: =========================================
  10. //= Hugel Bingo game
  11. //===== Additional Comments: =================================
  12. //= 1.0 - First version. Please report bugs you find out. [SinSloth]
  13. //= 1.1 - Fixed a minor bug. [SinSloth]
  14. //= 1.2 - Added some Bingo Staff NPCs. [SinSloth]
  15. //= 1.3 - Fixed a bug where an AFK-player wasn't warped out of the game,
  16. //= preventing players from launching another. [SinSloth]
  17. //= 1.4 - Fixed a minor bug added in the last revision. [SinSloth]
  18. //= 1.5 - Applied a fix to players locations which were not rotating properly. [SinSloth]
  19. //= 1.6 - Removed nescesity to win to proceed with quest [Yommy]
  20. //= 1.7 - Replaced effect numerics with constants. [Samuray22]
  21. //============================================================
  22. que_bingo,48,84,5 script Bingo Waiting Room 124,{
  23. end;
  24. OnInit:
  25. set $hu_bingoa,0;
  26. set $hu_bingob,0;
  27. waitingroom "Bingo Waiting Room - 5 People",50,"Bingo Waiting Room::OnWarp",5;
  28. end;
  29. OnWarp:
  30. warpwaitingpc "que_bingo",46,141;
  31. donpcevent "start#bingo::OnStart";
  32. enablenpc "plate1#bingo";
  33. enablenpc "plate2#bingo";
  34. enablenpc "plate3#bingo";
  35. enablenpc "plate4#bingo";
  36. enablenpc "plate5#bingo";
  37. disablewaitingroomevent;
  38. end;
  39. OnStart:
  40. enablewaitingroomevent;
  41. end;
  42. }
  43. que_bingo,49,125,0 script plate1#bingo 139,1,1,{
  44. OnInit:
  45. disablenpc "plate1#bingo";
  46. disablenpc "plate2#bingo";
  47. disablenpc "plate3#bingo";
  48. disablenpc "plate4#bingo";
  49. disablenpc "plate5#bingo";
  50. end;
  51. OnTouch:
  52. set Zeny,Zeny -1000;
  53. set @bingo_a1$,0;
  54. set @bingo_a2$,0;
  55. set @bingo_a3$,0;
  56. set @bingo_a4$,0;
  57. set @bingo_a5$,0;
  58. set @bingo_b1$,0;
  59. set @bingo_b2$,0;
  60. set @bingo_b3$,0;
  61. set @bingo_b4$,0;
  62. set @bingo_b5$,0;
  63. set @bingo_c1$,0;
  64. set @bingo_c2$,0;
  65. set @bingo_c3$,0;
  66. set @bingo_c4$,0;
  67. set @bingo_c5$,0;
  68. set @bingo_d1$,0;
  69. set @bingo_d2$,0;
  70. set @bingo_d3$,0;
  71. set @bingo_d4$,0;
  72. set @bingo_d5$,0;
  73. set @bingo_e1$,0;
  74. set @bingo_e2$,0;
  75. set @bingo_e3$,0;
  76. set @bingo_e4$,0;
  77. set @bingo_e5$,0;
  78. set @bingo_case,1;
  79. L_Fill:
  80. set @bingo_fill,callfunc("Func_Bingo",@bingo_case);
  81. if(!@bingo_fill)
  82. {
  83. mes "The numbers you have entered";
  84. mes "exceed the limit, or you have";
  85. mes "already entered these numbers.";
  86. mes "Please enter your numbers again.";
  87. next;
  88. }
  89. else if(@bingo_fill)
  90. {
  91. if(@bingoplate[25] < 10) set @bingo_e5$,"0"+@bingoplate[25]+""; else set @bingo_e5$,@bingoplate[25];
  92. donpcevent "start#bingo::OnEnter";
  93. mes "["+@bingo_a1$+"] ["+@bingo_a2$+"] ["+@bingo_a3$+"] ["+@bingo_a4$+"] ["+@bingo_a5$+"]";
  94. mes "["+@bingo_b1$+"] ["+@bingo_b2$+"] ["+@bingo_b3$+"] ["+@bingo_b4$+"] ["+@bingo_b5$+"]";
  95. mes "["+@bingo_c1$+"] ["+@bingo_c2$+"] ["+@bingo_c3$+"] ["+@bingo_c4$+"] ["+@bingo_c5$+"]";
  96. mes "["+@bingo_d1$+"] ["+@bingo_d2$+"] ["+@bingo_d3$+"] ["+@bingo_d4$+"] ["+@bingo_d5$+"]";
  97. mes "["+@bingo_e1$+"] ["+@bingo_e2$+"] ["+@bingo_e3$+"] ["+@bingo_e4$+"] ["+@bingo_e5$+"]";
  98. close;
  99. }
  100. goto L_Fill;
  101. }
  102. que_bingo,53,121,0 duplicate(plate1#bingo) plate2#bingo 139,1,1
  103. que_bingo,51,116,0 duplicate(plate1#bingo) plate3#bingo 139,1,1
  104. que_bingo,46,116,0 duplicate(plate1#bingo) plate4#bingo 139,1,1
  105. que_bingo,45,121,0 duplicate(plate1#bingo) plate5#bingo 139,1,1
  106. que_bingo,51,51,0 script start#bingo 139,{
  107. OnStart:
  108. initnpctimer;
  109. end;
  110. OnEnter:
  111. if($hu_bingoa == 4)
  112. {
  113. set $hu_bingoa,5;
  114. donpcevent "start2#bingo::OnStart";
  115. stopnpctimer;
  116. end;
  117. }
  118. set $hu_bingoa,$hu_bingoa +1;
  119. end;
  120. OnTimer1000:
  121. mapannounce "que_bingo","Eukran: Hello, everyone! I'm Eukran, your Bingo Guide~",1,0xFFAB54;
  122. end;
  123. OnTimer6000:
  124. mapannounce "que_bingo","Eukran: Game participants, please enter the Warp Portal at the bottom of your screen and choose a Bingo Plate by entering a number.",1,0xFFAB54;
  125. end;
  126. OnTimer11000:
  127. mapannounce "que_bingo","Eukran: All participants must choose their Bingo Plates within 3 minutes, or the game will be canceled.",1,0xFFAB54;
  128. end;
  129. OnTimer192000:
  130. mapannounce "que_bingo","Eukran: Please enter a number in 5 seconds, or the game will be canceled.",1,0xFFAB54;
  131. end;
  132. OnTimer200000:
  133. mapannounce "que_bingo","Eukran: I'm sorry, but the game has been canceled. Please come again and enjoy a game of Bingo with us!",1,0xFFAB54;
  134. end;
  135. OnTimer202000:
  136. disablenpc "plate1#bingo";
  137. disablenpc "plate2#bingo";
  138. disablenpc "plate3#bingo";
  139. disablenpc "plate4#bingo";
  140. disablenpc "plate5#bingo";
  141. end;
  142. OnTimer203000:
  143. areawarp "que_bingo",44,115,54,126,"que_bingo",40,124;
  144. enablenpc "out3#bingo";
  145. end;
  146. OnTimer204000:
  147. disablenpc "out3#bingo";
  148. set $hu_bingoa,0;
  149. set $hu_bingob,0;
  150. donpcevent "Bingo Waiting Room::OnStart";
  151. end;
  152. }
  153. que_bingo,52,52,0 script start2#bingo 139,{
  154. OnStop:
  155. stopnpctimer;
  156. end;
  157. OnStart:
  158. initnpctimer;
  159. end;
  160. OnTimer2000:
  161. mapannounce "que_bingo","Eukran: Great, everyone seems to be ready~",1,0xFFAB54;
  162. disablenpc "plate1#bingo";
  163. disablenpc "plate2#bingo";
  164. disablenpc "plate3#bingo";
  165. disablenpc "plate4#bingo";
  166. disablenpc "plate5#bingo";
  167. end;
  168. OnTimer5000:
  169. mapannounce "que_bingo","Eukran: Now, let the game begin!",1,0xFFAB54;
  170. setarray $@bingoarray[0],1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;
  171. set .@max_index, 24;
  172. for(set .@i,0; .@i < 25; set .@i,.@i +1)
  173. {
  174. set $@bingo0,rand(0,.@max_index);
  175. set $bingo[.@i],$@bingoarray[$@bingo0];
  176. set $@bingoarray[$@bingo0], $@bingoarray[.@max_index];
  177. set .@max_index, .@max_index - 1;
  178. }
  179. end;
  180. OnTimer8000:
  181. mapannounce "que_bingo","Eukran: I'll announce the Bingo Numbers. If you get 5 lines by matching 5 Bingo Numbers in a straight line on your Bingo Plate, yell out ''Bingo'' to win~",1,0xFFAB54;
  182. end;
  183. OnTimer10000:
  184. set $@bingoresult,1;
  185. callfunc "Func_BingoResult",$@bingoresult;
  186. end;
  187. OnTimer15000:
  188. donpcevent "1a#bingo::OnInit";
  189. end;
  190. OnTimer20000:
  191. callfunc "Func_BingoResult",$@bingoresult;
  192. end;
  193. OnTimer25000:
  194. donpcevent "1a#bingo::OnInit";
  195. end;
  196. OnTimer30000:
  197. callfunc "Func_BingoResult",$@bingoresult;
  198. end;
  199. OnTimer35000:
  200. donpcevent "1a#bingo::OnInit";
  201. end;
  202. OnTimer40000:
  203. callfunc "Func_BingoResult",$@bingoresult;
  204. end;
  205. OnTimer45000:
  206. donpcevent "1a#bingo::OnInit";
  207. end;
  208. OnTimer50000:
  209. callfunc "Func_BingoResult",$@bingoresult;
  210. end;
  211. OnTimer55000:
  212. donpcevent "1a#bingo::OnInit";
  213. end;
  214. OnTimer60000:
  215. callfunc "Func_BingoResult",$@bingoresult;
  216. end;
  217. OnTimer65000:
  218. donpcevent "1a#bingo::OnInit";
  219. end;
  220. OnTimer70000:
  221. callfunc "Func_BingoResult",$@bingoresult;
  222. end;
  223. OnTimer75000:
  224. donpcevent "1a#bingo::OnInit";
  225. end;
  226. OnTimer80000:
  227. callfunc "Func_BingoResult",$@bingoresult;
  228. end;
  229. OnTimer85000:
  230. donpcevent "1a#bingo::OnInit";
  231. end;
  232. OnTimer90000:
  233. callfunc "Func_BingoResult",$@bingoresult;
  234. end;
  235. OnTimer95000:
  236. donpcevent "1a#bingo::OnInit";
  237. end;
  238. OnTimer100000:
  239. callfunc "Func_BingoResult",$@bingoresult;
  240. end;
  241. OnTimer105000:
  242. donpcevent "1a#bingo::OnInit";
  243. end;
  244. OnTimer110000:
  245. callfunc "Func_BingoResult",$@bingoresult;
  246. end;
  247. OnTimer115000:
  248. donpcevent "1a#bingo::OnInit";
  249. end;
  250. OnTimer120000:
  251. callfunc "Func_BingoResult",$@bingoresult;
  252. end;
  253. OnTimer125000:
  254. donpcevent "1a#bingo::OnInit";
  255. end;
  256. OnTimer130000:
  257. callfunc "Func_BingoResult",$@bingoresult;
  258. end;
  259. OnTimer135000:
  260. donpcevent "1a#bingo::OnInit";
  261. end;
  262. OnTimer140000:
  263. callfunc "Func_BingoResult",$@bingoresult;
  264. end;
  265. OnTimer145000:
  266. donpcevent "1a#bingo::OnInit";
  267. end;
  268. OnTimer150000:
  269. callfunc "Func_BingoResult",$@bingoresult;
  270. end;
  271. OnTimer155000:
  272. donpcevent "1a#bingo::OnInit";
  273. end;
  274. OnTimer160000:
  275. callfunc "Func_BingoResult",$@bingoresult;
  276. end;
  277. OnTimer179000:
  278. donpcevent "1a#bingo::OnInit";
  279. end;
  280. OnTimer180000:
  281. callfunc "Func_BingoResult",$@bingoresult;
  282. end;
  283. OnTimer199000:
  284. donpcevent "1a#bingo::OnInit";
  285. end;
  286. OnTimer200000:
  287. callfunc "Func_BingoResult",$@bingoresult;
  288. end;
  289. OnTimer219000:
  290. donpcevent "1a#bingo::OnInit";
  291. end;
  292. OnTimer220000:
  293. callfunc "Func_BingoResult",$@bingoresult;
  294. end;
  295. OnTimer239000:
  296. donpcevent "1a#bingo::OnInit";
  297. end;
  298. OnTimer240000:
  299. callfunc "Func_BingoResult",$@bingoresult;
  300. end;
  301. OnTimer259000:
  302. donpcevent "1a#bingo::OnInit";
  303. end;
  304. OnTimer260000:
  305. callfunc "Func_BingoResult",$@bingoresult;
  306. end;
  307. OnTimer279000:
  308. donpcevent "1a#bingo::OnInit";
  309. end;
  310. OnTimer280000:
  311. callfunc "Func_BingoResult",$@bingoresult;
  312. end;
  313. OnTimer299000:
  314. donpcevent "1a#bingo::OnInit";
  315. end;
  316. OnTimer300000:
  317. callfunc "Func_BingoResult",$@bingoresult;
  318. end;
  319. OnTimer319000:
  320. donpcevent "1a#bingo::OnInit";
  321. end;
  322. OnTimer320000:
  323. callfunc "Func_BingoResult",$@bingoresult;
  324. end;
  325. OnTimer339000:
  326. donpcevent "1a#bingo::OnInit";
  327. end;
  328. OnTimer340000:
  329. callfunc "Func_BingoResult",$@bingoresult;
  330. end;
  331. OnTimer440000:
  332. mapannounce "que_bingo","Eukran: I've announced all of the selected numbers, but I haven't heard anyone yell ''Bingo.''",1,0xFFAB54;
  333. end;
  334. OnTimer445000:
  335. mapannounce "que_bingo","Eukran: I'll give you all 10 seconds to check if any of you have won. If no one can yell ''Bingo'' in 10 seconds, this game will end without a winner.",1,0xFFAB54;
  336. end;
  337. OnTimer460000:
  338. mapannounce "que_bingo","Eukran: I'm sorry, but this game has ended without a winner. Thanks for playing, everyone~",1,0xFFAB54;
  339. donpcevent "1a#bingo::OnInit";
  340. donpcevent "player1#bingo::OnOut";
  341. donpcevent "player2#bingo::OnOut";
  342. donpcevent "player3#bingo::OnOut";
  343. donpcevent "player4#bingo::OnOut";
  344. donpcevent "player5#bingo::OnOut";
  345. set $hu_bingoa,0;
  346. donpcevent "Bingo Waiting Room::OnStart";
  347. end;
  348. }
  349. que_bingo,49,125,0 script 1a#bingo 139,1,1,{
  350. end;
  351. OnInit:
  352. disablenpc "1a#bingo";
  353. disablenpc "2a#bingo";
  354. disablenpc "3a#bingo";
  355. disablenpc "4a#bingo";
  356. disablenpc "5a#bingo";
  357. disablenpc "6a#bingo";
  358. disablenpc "7a#bingo";
  359. disablenpc "8a#bingo";
  360. disablenpc "9a#bingo";
  361. disablenpc "10a#bingo";
  362. disablenpc "11a#bingo";
  363. disablenpc "12a#bingo";
  364. disablenpc "13a#bingo";
  365. disablenpc "14a#bingo";
  366. disablenpc "15a#bingo";
  367. disablenpc "16a#bingo";
  368. disablenpc "17a#bingo";
  369. disablenpc "18a#bingo";
  370. disablenpc "19a#bingo";
  371. disablenpc "20a#bingo";
  372. disablenpc "21a#bingo";
  373. disablenpc "22a#bingo";
  374. disablenpc "23a#bingo";
  375. disablenpc "24a#bingo";
  376. disablenpc "25a#bingo";
  377. disablenpc "1b#bingo";
  378. disablenpc "2b#bingo";
  379. disablenpc "3b#bingo";
  380. disablenpc "4b#bingo";
  381. disablenpc "5b#bingo";
  382. disablenpc "6b#bingo";
  383. disablenpc "7b#bingo";
  384. disablenpc "8b#bingo";
  385. disablenpc "9b#bingo";
  386. disablenpc "10b#bingo";
  387. disablenpc "11b#bingo";
  388. disablenpc "12b#bingo";
  389. disablenpc "13b#bingo";
  390. disablenpc "14b#bingo";
  391. disablenpc "15b#bingo";
  392. disablenpc "16b#bingo";
  393. disablenpc "17b#bingo";
  394. disablenpc "18b#bingo";
  395. disablenpc "19b#bingo";
  396. disablenpc "20b#bingo";
  397. disablenpc "21b#bingo";
  398. disablenpc "22b#bingo";
  399. disablenpc "23b#bingo";
  400. disablenpc "24b#bingo";
  401. disablenpc "25b#bingo";
  402. disablenpc "1c#bingo";
  403. disablenpc "2c#bingo";
  404. disablenpc "3c#bingo";
  405. disablenpc "4c#bingo";
  406. disablenpc "5c#bingo";
  407. disablenpc "6c#bingo";
  408. disablenpc "7c#bingo";
  409. disablenpc "8c#bingo";
  410. disablenpc "9c#bingo";
  411. disablenpc "10c#bingo";
  412. disablenpc "11c#bingo";
  413. disablenpc "12c#bingo";
  414. disablenpc "13c#bingo";
  415. disablenpc "14c#bingo";
  416. disablenpc "15c#bingo";
  417. disablenpc "16c#bingo";
  418. disablenpc "17c#bingo";
  419. disablenpc "18c#bingo";
  420. disablenpc "19c#bingo";
  421. disablenpc "20c#bingo";
  422. disablenpc "21c#bingo";
  423. disablenpc "22c#bingo";
  424. disablenpc "23c#bingo";
  425. disablenpc "24c#bingo";
  426. disablenpc "25c#bingo";
  427. disablenpc "1d#bingo";
  428. disablenpc "2d#bingo";
  429. disablenpc "3d#bingo";
  430. disablenpc "4d#bingo";
  431. disablenpc "5d#bingo";
  432. disablenpc "6d#bingo";
  433. disablenpc "7d#bingo";
  434. disablenpc "8d#bingo";
  435. disablenpc "9d#bingo";
  436. disablenpc "10d#bingo";
  437. disablenpc "11d#bingo";
  438. disablenpc "12d#bingo";
  439. disablenpc "13d#bingo";
  440. disablenpc "14d#bingo";
  441. disablenpc "15d#bingo";
  442. disablenpc "16d#bingo";
  443. disablenpc "17d#bingo";
  444. disablenpc "18d#bingo";
  445. disablenpc "19d#bingo";
  446. disablenpc "20d#bingo";
  447. disablenpc "21d#bingo";
  448. disablenpc "22d#bingo";
  449. disablenpc "23d#bingo";
  450. disablenpc "24d#bingo";
  451. disablenpc "25d#bingo";
  452. disablenpc "1e#bingo";
  453. disablenpc "2e#bingo";
  454. disablenpc "3e#bingo";
  455. disablenpc "4e#bingo";
  456. disablenpc "5e#bingo";
  457. disablenpc "6e#bingo";
  458. disablenpc "7e#bingo";
  459. disablenpc "8e#bingo";
  460. disablenpc "9e#bingo";
  461. disablenpc "10e#bingo";
  462. disablenpc "11e#bingo";
  463. disablenpc "12e#bingo";
  464. disablenpc "13e#bingo";
  465. disablenpc "14e#bingo";
  466. disablenpc "15e#bingo";
  467. disablenpc "16e#bingo";
  468. disablenpc "17e#bingo";
  469. disablenpc "18e#bingo";
  470. disablenpc "19e#bingo";
  471. disablenpc "20e#bingo";
  472. disablenpc "21e#bingo";
  473. disablenpc "22e#bingo";
  474. disablenpc "23e#bingo";
  475. disablenpc "24e#bingo";
  476. disablenpc "25e#bingo";
  477. end;
  478. OnTouch:
  479. if(@bingoplate[1] == $bingo[$@bingoresult -1]){ set @bingo_a1$,"^ff0000- -^000000"; setarray @bingoplate[1],99; }
  480. else if(@bingoplate[2] == $bingo[$@bingoresult -1]){ set @bingo_a2$,"^ff0000- -^000000"; setarray @bingoplate[2],99; }
  481. else if(@bingoplate[3] == $bingo[$@bingoresult -1]){ set @bingo_a3$,"^ff0000- -^000000"; setarray @bingoplate[3],99; }
  482. else if(@bingoplate[4] == $bingo[$@bingoresult -1]){ set @bingo_a4$,"^ff0000- -^000000"; setarray @bingoplate[4],99; }
  483. else if(@bingoplate[5] == $bingo[$@bingoresult -1]){ set @bingo_a5$,"^ff0000- -^000000"; setarray @bingoplate[5],99; }
  484. else if(@bingoplate[6] == $bingo[$@bingoresult -1]){ set @bingo_b1$,"^ff0000- -^000000"; setarray @bingoplate[6],99; }
  485. else if(@bingoplate[7] == $bingo[$@bingoresult -1]){ set @bingo_b2$,"^ff0000- -^000000"; setarray @bingoplate[7],99; }
  486. else if(@bingoplate[8] == $bingo[$@bingoresult -1]){ set @bingo_b3$,"^ff0000- -^000000"; setarray @bingoplate[8],99; }
  487. else if(@bingoplate[9] == $bingo[$@bingoresult -1]){ set @bingo_b4$,"^ff0000- -^000000"; setarray @bingoplate[9],99; }
  488. else if(@bingoplate[10] == $bingo[$@bingoresult -1]){ set @bingo_b5$,"^ff0000- -^000000"; setarray @bingoplate[10],99; }
  489. else if(@bingoplate[11] == $bingo[$@bingoresult -1]){ set @bingo_c1$,"^ff0000- -^000000"; setarray @bingoplate[11],99; }
  490. else if(@bingoplate[12] == $bingo[$@bingoresult -1]){ set @bingo_c2$,"^ff0000- -^000000"; setarray @bingoplate[12],99; }
  491. else if(@bingoplate[13] == $bingo[$@bingoresult -1]){ set @bingo_c3$,"^ff0000- -^000000"; setarray @bingoplate[13],99; }
  492. else if(@bingoplate[14] == $bingo[$@bingoresult -1]){ set @bingo_c4$,"^ff0000- -^000000"; setarray @bingoplate[14],99; }
  493. else if(@bingoplate[15] == $bingo[$@bingoresult -1]){ set @bingo_c5$,"^ff0000- -^000000"; setarray @bingoplate[15],99; }
  494. else if(@bingoplate[16] == $bingo[$@bingoresult -1]){ set @bingo_d1$,"^ff0000- -^000000"; setarray @bingoplate[16],99; }
  495. else if(@bingoplate[17] == $bingo[$@bingoresult -1]){ set @bingo_d2$,"^ff0000- -^000000"; setarray @bingoplate[17],99; }
  496. else if(@bingoplate[18] == $bingo[$@bingoresult -1]){ set @bingo_d3$,"^ff0000- -^000000"; setarray @bingoplate[18],99; }
  497. else if(@bingoplate[19] == $bingo[$@bingoresult -1]){ set @bingo_d4$,"^ff0000- -^000000"; setarray @bingoplate[19],99; }
  498. else if(@bingoplate[20] == $bingo[$@bingoresult -1]){ set @bingo_d5$,"^ff0000- -^000000"; setarray @bingoplate[20],99; }
  499. else if(@bingoplate[21] == $bingo[$@bingoresult -1]){ set @bingo_e1$,"^ff0000- -^000000"; setarray @bingoplate[21],99; }
  500. else if(@bingoplate[22] == $bingo[$@bingoresult -1]){ set @bingo_e2$,"^ff0000- -^000000"; setarray @bingoplate[22],99; }
  501. else if(@bingoplate[23] == $bingo[$@bingoresult -1]){ set @bingo_e3$,"^ff0000- -^000000"; setarray @bingoplate[23],99; }
  502. else if(@bingoplate[24] == $bingo[$@bingoresult -1]){ set @bingo_e4$,"^ff0000- -^000000"; setarray @bingoplate[24],99; }
  503. else if(@bingoplate[25] == $bingo[$@bingoresult -1]){ set @bingo_e5$,"^ff0000- -^000000"; setarray @bingoplate[25],99; }
  504. set @bingowin,0;
  505. if(@bingoplate[1] == @bingoplate[2] && @bingoplate[1] == @bingoplate[3] && @bingoplate[1] == @bingoplate[4] && @bingoplate[1] == @bingoplate[5]) set @bingowin,@bingowin +1;
  506. if(@bingoplate[6] == @bingoplate[7] && @bingoplate[6] == @bingoplate[8] && @bingoplate[6] == @bingoplate[9] && @bingoplate[6] == @bingoplate[10]) set @bingowin,@bingowin +1;
  507. if(@bingoplate[11] == @bingoplate[12] && @bingoplate[11] == @bingoplate[13] && @bingoplate[11] == @bingoplate[14] && @bingoplate[11] == @bingoplate[15]) set @bingowin,@bingowin +1;
  508. if(@bingoplate[16] == @bingoplate[17] && @bingoplate[16] == @bingoplate[18] && @bingoplate[16] == @bingoplate[19] && @bingoplate[16] == @bingoplate[20]) set @bingowin,@bingowin +1;
  509. if(@bingoplate[21] == @bingoplate[22] && @bingoplate[21] == @bingoplate[23] && @bingoplate[21] == @bingoplate[24] && @bingoplate[21] == @bingoplate[25]) set @bingowin,@bingowin +1;
  510. if(@bingoplate[1] == @bingoplate[6] && @bingoplate[1] == @bingoplate[11] && @bingoplate[1] == @bingoplate[16] && @bingoplate[1] == @bingoplate[21]) set @bingowin,@bingowin +1;
  511. if(@bingoplate[2] == @bingoplate[7] && @bingoplate[2] == @bingoplate[12] && @bingoplate[2] == @bingoplate[17] && @bingoplate[2] == @bingoplate[22]) set @bingowin,@bingowin +1;
  512. if(@bingoplate[3] == @bingoplate[8] && @bingoplate[3] == @bingoplate[13] && @bingoplate[3] == @bingoplate[18] && @bingoplate[3] == @bingoplate[23]) set @bingowin,@bingowin +1;
  513. if(@bingoplate[4] == @bingoplate[9] && @bingoplate[4] == @bingoplate[14] && @bingoplate[4] == @bingoplate[19] && @bingoplate[4] == @bingoplate[24]) set @bingowin,@bingowin +1;
  514. if(@bingoplate[5] == @bingoplate[10] && @bingoplate[5] == @bingoplate[15] && @bingoplate[5] == @bingoplate[20] && @bingoplate[5] == @bingoplate[25]) set @bingowin,@bingowin +1;
  515. if(@bingoplate[1] == @bingoplate[7] && @bingoplate[1] == @bingoplate[13] && @bingoplate[1] == @bingoplate[19] && @bingoplate[1] == @bingoplate[25]) set @bingowin,@bingowin +1;
  516. if(@bingoplate[5] == @bingoplate[9] && @bingoplate[5] == @bingoplate[13] && @bingoplate[5] == @bingoplate[17] && @bingoplate[5] == @bingoplate[21]) set @bingowin,@bingowin +1;
  517. if($@bingoresult == 1 || $@bingoresult == 21) mes "[ "+$@bingoresult+"st Number - "+$bingo[$@bingoresult -1]+" ]";
  518. else if($@bingoresult == 2 || $@bingoresult == 22) mes "[ "+$@bingoresult+"nd Number - "+$bingo[$@bingoresult -1]+" ]";
  519. else if($@bingoresult == 3 || $@bingoresult == 23) mes "[ "+$@bingoresult+"rd Number - "+$bingo[$@bingoresult -1]+" ]";
  520. else mes "[ "+$@bingoresult+"th Number - "+$bingo[$@bingoresult -1]+" ]";
  521. mes "["+@bingo_a1$+"] ["+@bingo_a2$+"] ["+@bingo_a3$+"] ["+@bingo_a4$+"] ["+@bingo_a5$+"]";
  522. mes "["+@bingo_b1$+"] ["+@bingo_b2$+"] ["+@bingo_b3$+"] ["+@bingo_b4$+"] ["+@bingo_b5$+"]";
  523. mes "["+@bingo_c1$+"] ["+@bingo_c2$+"] ["+@bingo_c3$+"] ["+@bingo_c4$+"] ["+@bingo_c5$+"]";
  524. mes "["+@bingo_d1$+"] ["+@bingo_d2$+"] ["+@bingo_d3$+"] ["+@bingo_d4$+"] ["+@bingo_d5$+"]";
  525. mes "["+@bingo_e1$+"] ["+@bingo_e2$+"] ["+@bingo_e3$+"] ["+@bingo_e4$+"] ["+@bingo_e5$+"]";
  526. mes "[Currently Finished Lines - "+@bingowin+" ]";
  527. if($@bingoresult > 15)
  528. {
  529. if(@bingowin > 4)
  530. {
  531. next;
  532. mes "We just have made 5 lines!";
  533. mes "Say ^ff0000Bingo^000000!";
  534. mes "W-we just matched";
  535. mes "5 numbers in a row!";
  536. mes "Quickly, say ''^FF0000Bingo^000000!''";
  537. mes "Remember, you'll only";
  538. mes "have one chance to say it!";
  539. input @bingoyell$;
  540. if(@bingoyell$ == "Bingo")
  541. {
  542. if($hu_bingoa == 5)
  543. {
  544. set $hu_bingoa,6;
  545. donpcevent "start2#bingo::OnStop";
  546. set $@bingowinner$,strcharinfo(0);
  547. donpcevent "win1a#bingo::OnWin";
  548. close;
  549. }
  550. else if($hu_bingoa == 6)
  551. {
  552. next;
  553. mes "Oh no! I'm sorry, but";
  554. mes "someone already yelled";
  555. mes "''bingo'' before you did.";
  556. mes "I'm sorry, but you missed";
  557. mes "your chance! Better luck,";
  558. mes "next time, alright?";
  559. close;
  560. }
  561. }
  562. else
  563. {
  564. next;
  565. mes "I'm sorry, but you";
  566. mes "said it wrong. Next time,";
  567. mes "make sure that you yell";
  568. mes "out the word, ''^FF0000Bingo^000000,'' okay?";
  569. close;
  570. }
  571. }
  572. close;
  573. }
  574. close;
  575. }
  576. que_bingo,49,125,0 duplicate(1a#bingo) 2a#bingo 139,1,1
  577. que_bingo,49,125,0 duplicate(1a#bingo) 3a#bingo 139,1,1
  578. que_bingo,49,125,0 duplicate(1a#bingo) 4a#bingo 139,1,1
  579. que_bingo,49,125,0 duplicate(1a#bingo) 5a#bingo 139,1,1
  580. que_bingo,49,125,0 duplicate(1a#bingo) 6a#bingo 139,1,1
  581. que_bingo,49,125,0 duplicate(1a#bingo) 7a#bingo 139,1,1
  582. que_bingo,49,125,0 duplicate(1a#bingo) 8a#bingo 139,1,1
  583. que_bingo,49,125,0 duplicate(1a#bingo) 9a#bingo 139,1,1
  584. que_bingo,49,125,0 duplicate(1a#bingo) 10a#bingo 139,1,1
  585. que_bingo,49,125,0 duplicate(1a#bingo) 11a#bingo 139,1,1
  586. que_bingo,49,125,0 duplicate(1a#bingo) 12a#bingo 139,1,1
  587. que_bingo,49,125,0 duplicate(1a#bingo) 13a#bingo 139,1,1
  588. que_bingo,49,125,0 duplicate(1a#bingo) 14a#bingo 139,1,1
  589. que_bingo,49,125,0 duplicate(1a#bingo) 15a#bingo 139,1,1
  590. que_bingo,49,125,0 duplicate(1a#bingo) 16a#bingo 139,1,1
  591. que_bingo,49,125,0 duplicate(1a#bingo) 17a#bingo 139,1,1
  592. que_bingo,49,125,0 duplicate(1a#bingo) 18a#bingo 139,1,1
  593. que_bingo,49,125,0 duplicate(1a#bingo) 19a#bingo 139,1,1
  594. que_bingo,49,125,0 duplicate(1a#bingo) 20a#bingo 139,1,1
  595. que_bingo,49,125,0 duplicate(1a#bingo) 21a#bingo 139,1,1
  596. que_bingo,49,125,0 duplicate(1a#bingo) 22a#bingo 139,1,1
  597. que_bingo,49,125,0 duplicate(1a#bingo) 23a#bingo 139,1,1
  598. que_bingo,49,125,0 duplicate(1a#bingo) 24a#bingo 139,1,1
  599. que_bingo,49,125,0 duplicate(1a#bingo) 25a#bingo 139,1,1
  600. que_bingo,53,121,0 duplicate(1a#bingo) 1b#bingo 139,1,1
  601. que_bingo,53,121,0 duplicate(1a#bingo) 2b#bingo 139,1,1
  602. que_bingo,53,121,0 duplicate(1a#bingo) 3b#bingo 139,1,1
  603. que_bingo,53,121,0 duplicate(1a#bingo) 4b#bingo 139,1,1
  604. que_bingo,53,121,0 duplicate(1a#bingo) 5b#bingo 139,1,1
  605. que_bingo,53,121,0 duplicate(1a#bingo) 6b#bingo 139,1,1
  606. que_bingo,53,121,0 duplicate(1a#bingo) 7b#bingo 139,1,1
  607. que_bingo,53,121,0 duplicate(1a#bingo) 8b#bingo 139,1,1
  608. que_bingo,53,121,0 duplicate(1a#bingo) 9b#bingo 139,1,1
  609. que_bingo,53,121,0 duplicate(1a#bingo) 10b#bingo 139,1,1
  610. que_bingo,53,121,0 duplicate(1a#bingo) 11b#bingo 139,1,1
  611. que_bingo,53,121,0 duplicate(1a#bingo) 12b#bingo 139,1,1
  612. que_bingo,53,121,0 duplicate(1a#bingo) 13b#bingo 139,1,1
  613. que_bingo,53,121,0 duplicate(1a#bingo) 14b#bingo 139,1,1
  614. que_bingo,53,121,0 duplicate(1a#bingo) 15b#bingo 139,1,1
  615. que_bingo,53,121,0 duplicate(1a#bingo) 16b#bingo 139,1,1
  616. que_bingo,53,121,0 duplicate(1a#bingo) 17b#bingo 139,1,1
  617. que_bingo,53,121,0 duplicate(1a#bingo) 18b#bingo 139,1,1
  618. que_bingo,53,121,0 duplicate(1a#bingo) 19b#bingo 139,1,1
  619. que_bingo,53,121,0 duplicate(1a#bingo) 20b#bingo 139,1,1
  620. que_bingo,53,121,0 duplicate(1a#bingo) 21b#bingo 139,1,1
  621. que_bingo,53,121,0 duplicate(1a#bingo) 22b#bingo 139,1,1
  622. que_bingo,53,121,0 duplicate(1a#bingo) 23b#bingo 139,1,1
  623. que_bingo,53,121,0 duplicate(1a#bingo) 24b#bingo 139,1,1
  624. que_bingo,53,121,0 duplicate(1a#bingo) 25b#bingo 139,1,1
  625. que_bingo,51,116,0 duplicate(1a#bingo) 1c#bingo 139,1,1
  626. que_bingo,51,116,0 duplicate(1a#bingo) 2c#bingo 139,1,1
  627. que_bingo,51,116,0 duplicate(1a#bingo) 3c#bingo 139,1,1
  628. que_bingo,51,116,0 duplicate(1a#bingo) 4c#bingo 139,1,1
  629. que_bingo,51,116,0 duplicate(1a#bingo) 5c#bingo 139,1,1
  630. que_bingo,51,116,0 duplicate(1a#bingo) 6c#bingo 139,1,1
  631. que_bingo,51,116,0 duplicate(1a#bingo) 7c#bingo 139,1,1
  632. que_bingo,51,116,0 duplicate(1a#bingo) 8c#bingo 139,1,1
  633. que_bingo,51,116,0 duplicate(1a#bingo) 9c#bingo 139,1,1
  634. que_bingo,51,116,0 duplicate(1a#bingo) 10c#bingo 139,1,1
  635. que_bingo,51,116,0 duplicate(1a#bingo) 11c#bingo 139,1,1
  636. que_bingo,51,116,0 duplicate(1a#bingo) 12c#bingo 139,1,1
  637. que_bingo,51,116,0 duplicate(1a#bingo) 13c#bingo 139,1,1
  638. que_bingo,51,116,0 duplicate(1a#bingo) 14c#bingo 139,1,1
  639. que_bingo,51,116,0 duplicate(1a#bingo) 15c#bingo 139,1,1
  640. que_bingo,51,116,0 duplicate(1a#bingo) 16c#bingo 139,1,1
  641. que_bingo,51,116,0 duplicate(1a#bingo) 17c#bingo 139,1,1
  642. que_bingo,51,116,0 duplicate(1a#bingo) 18c#bingo 139,1,1
  643. que_bingo,51,116,0 duplicate(1a#bingo) 19c#bingo 139,1,1
  644. que_bingo,51,116,0 duplicate(1a#bingo) 20c#bingo 139,1,1
  645. que_bingo,51,116,0 duplicate(1a#bingo) 21c#bingo 139,1,1
  646. que_bingo,51,116,0 duplicate(1a#bingo) 22c#bingo 139,1,1
  647. que_bingo,51,116,0 duplicate(1a#bingo) 23c#bingo 139,1,1
  648. que_bingo,51,116,0 duplicate(1a#bingo) 24c#bingo 139,1,1
  649. que_bingo,51,116,0 duplicate(1a#bingo) 25c#bingo 139,1,1
  650. que_bingo,46,116,0 duplicate(1a#bingo) 1d#bingo 139,1,1
  651. que_bingo,46,116,0 duplicate(1a#bingo) 2d#bingo 139,1,1
  652. que_bingo,46,116,0 duplicate(1a#bingo) 3d#bingo 139,1,1
  653. que_bingo,46,116,0 duplicate(1a#bingo) 4d#bingo 139,1,1
  654. que_bingo,46,116,0 duplicate(1a#bingo) 5d#bingo 139,1,1
  655. que_bingo,46,116,0 duplicate(1a#bingo) 6d#bingo 139,1,1
  656. que_bingo,46,116,0 duplicate(1a#bingo) 7d#bingo 139,1,1
  657. que_bingo,46,116,0 duplicate(1a#bingo) 8d#bingo 139,1,1
  658. que_bingo,46,116,0 duplicate(1a#bingo) 9d#bingo 139,1,1
  659. que_bingo,46,116,0 duplicate(1a#bingo) 10d#bingo 139,1,1
  660. que_bingo,46,116,0 duplicate(1a#bingo) 11d#bingo 139,1,1
  661. que_bingo,46,116,0 duplicate(1a#bingo) 12d#bingo 139,1,1
  662. que_bingo,46,116,0 duplicate(1a#bingo) 13d#bingo 139,1,1
  663. que_bingo,46,116,0 duplicate(1a#bingo) 14d#bingo 139,1,1
  664. que_bingo,46,116,0 duplicate(1a#bingo) 15d#bingo 139,1,1
  665. que_bingo,46,116,0 duplicate(1a#bingo) 16d#bingo 139,1,1
  666. que_bingo,46,116,0 duplicate(1a#bingo) 17d#bingo 139,1,1
  667. que_bingo,46,116,0 duplicate(1a#bingo) 18d#bingo 139,1,1
  668. que_bingo,46,116,0 duplicate(1a#bingo) 19d#bingo 139,1,1
  669. que_bingo,46,116,0 duplicate(1a#bingo) 20d#bingo 139,1,1
  670. que_bingo,46,116,0 duplicate(1a#bingo) 21d#bingo 139,1,1
  671. que_bingo,46,116,0 duplicate(1a#bingo) 22d#bingo 139,1,1
  672. que_bingo,46,116,0 duplicate(1a#bingo) 23d#bingo 139,1,1
  673. que_bingo,46,116,0 duplicate(1a#bingo) 24d#bingo 139,1,1
  674. que_bingo,46,116,0 duplicate(1a#bingo) 25d#bingo 139,1,1
  675. que_bingo,45,121,0 duplicate(1a#bingo) 1e#bingo 139,1,1
  676. que_bingo,45,121,0 duplicate(1a#bingo) 2e#bingo 139,1,1
  677. que_bingo,45,121,0 duplicate(1a#bingo) 3e#bingo 139,1,1
  678. que_bingo,45,121,0 duplicate(1a#bingo) 4e#bingo 139,1,1
  679. que_bingo,45,121,0 duplicate(1a#bingo) 5e#bingo 139,1,1
  680. que_bingo,45,121,0 duplicate(1a#bingo) 6e#bingo 139,1,1
  681. que_bingo,45,121,0 duplicate(1a#bingo) 7e#bingo 139,1,1
  682. que_bingo,45,121,0 duplicate(1a#bingo) 8e#bingo 139,1,1
  683. que_bingo,45,121,0 duplicate(1a#bingo) 9e#bingo 139,1,1
  684. que_bingo,45,121,0 duplicate(1a#bingo) 10e#bingo 139,1,1
  685. que_bingo,45,121,0 duplicate(1a#bingo) 11e#bingo 139,1,1
  686. que_bingo,45,121,0 duplicate(1a#bingo) 12e#bingo 139,1,1
  687. que_bingo,45,121,0 duplicate(1a#bingo) 13e#bingo 139,1,1
  688. que_bingo,45,121,0 duplicate(1a#bingo) 14e#bingo 139,1,1
  689. que_bingo,45,121,0 duplicate(1a#bingo) 15e#bingo 139,1,1
  690. que_bingo,45,121,0 duplicate(1a#bingo) 16e#bingo 139,1,1
  691. que_bingo,45,121,0 duplicate(1a#bingo) 17e#bingo 139,1,1
  692. que_bingo,45,121,0 duplicate(1a#bingo) 18e#bingo 139,1,1
  693. que_bingo,45,121,0 duplicate(1a#bingo) 19e#bingo 139,1,1
  694. que_bingo,45,121,0 duplicate(1a#bingo) 20e#bingo 139,1,1
  695. que_bingo,45,121,0 duplicate(1a#bingo) 21e#bingo 139,1,1
  696. que_bingo,45,121,0 duplicate(1a#bingo) 22e#bingo 139,1,1
  697. que_bingo,45,121,0 duplicate(1a#bingo) 23e#bingo 139,1,1
  698. que_bingo,45,121,0 duplicate(1a#bingo) 24e#bingo 139,1,1
  699. que_bingo,45,121,0 duplicate(1a#bingo) 25e#bingo 139,1,1
  700. que_bingo,79,19,0 script win1a#bingo 139,4,4,{
  701. end;
  702. OnWin:
  703. initnpctimer;
  704. end;
  705. OnTimer1000:
  706. donpcevent "1a#bingo::OnInit";
  707. enablenpc "win2a#bingo";
  708. enablenpc "win2b#bingo";
  709. enablenpc "win2c#bingo";
  710. enablenpc "win2d#bingo";
  711. enablenpc "win2e#bingo";
  712. end;
  713. }
  714. que_bingo,49,125,0 script win2a#bingo 139,1,1,{
  715. end;
  716. OnInit:
  717. disablenpc "win2a#bingo";
  718. disablenpc "win2b#bingo";
  719. disablenpc "win2c#bingo";
  720. disablenpc "win2d#bingo";
  721. disablenpc "win2e#bingo";
  722. end;
  723. OnTouch:
  724. if($@bingowinner$ != strcharinfo(0)) end;
  725. specialeffect EF_SUI_EXPLOSION;
  726. soundeffect "tming_success.wav",1;
  727. if($@bingoresult == 16) getitem 7515,50;
  728. else getitem 7515,1;
  729. initnpctimer;
  730. end;
  731. OnTimer1000:
  732. mapannounce "que_bingo","Eukran: Wow, Bingo! It's Bingo!",1,0xFFAB54;
  733. end;
  734. OnTimer5000:
  735. mapannounce "que_bingo","Eukran: "+$@bingowinner$+" has said Bingo!",1,0xFFAB54;
  736. end;
  737. OnTimer10000:
  738. if($@bingoresult == 16) mapannounce "que_bingo","Eukran: Congratulations, "+$@bingowinner$+"! You will be rewarded with 50 Marvelous Medals.",1,0xFFAB54;
  739. else mapannounce "que_bingo","Eukran: Congratulations, "+$@bingowinner$+"! You will be rewarded with 1 Marvelous Medal.",1,0xFFAB54;
  740. end;
  741. OnTimer15000:
  742. mapannounce "que_bingo","Eukran: Thank you all for participating in the game. See you next time!",1,0xFFAB54;
  743. end;
  744. OnTimer20000:
  745. donpcevent "end#bingo::OnEnd";
  746. donpcevent "win2a#bingo::OnInit";
  747. end;
  748. }
  749. que_bingo,53,121,0 duplicate(win2a#bingo) win2b#bingo 139,1,1
  750. que_bingo,51,116,0 duplicate(win2a#bingo) win2c#bingo 139,1,1
  751. que_bingo,46,116,0 duplicate(win2a#bingo) win2d#bingo 139,1,1
  752. que_bingo,45,121,0 duplicate(win2a#bingo) win2e#bingo 139,1,1
  753. que_bingo,89,59,0 script end#bingo 139,4,4,{
  754. end;
  755. OnEnd:
  756. initnpctimer;
  757. end;
  758. OnTimer1000:
  759. enablenpc "end1a#bingo";
  760. enablenpc "end1b#bingo";
  761. enablenpc "end1c#bingo";
  762. enablenpc "end1d#bingo";
  763. enablenpc "end1e#bingo";
  764. end;
  765. OnTimer5000:
  766. disablenpc "end1a#bingo";
  767. disablenpc "end1b#bingo";
  768. disablenpc "end1c#bingo";
  769. disablenpc "end1d#bingo";
  770. disablenpc "end1e#bingo";
  771. set $hu_bingoa,0;
  772. donpcevent "Bingo Waiting Room::OnStart";
  773. end;
  774. }
  775. que_bingo,49,125,0 script end1a#bingo 139,1,1,{
  776. OnInit:
  777. disablenpc "end1a#bingo";
  778. disablenpc "end1b#bingo";
  779. disablenpc "end1c#bingo";
  780. disablenpc "end1d#bingo";
  781. disablenpc "end1e#bingo";
  782. end;
  783. OnTouch:
  784. if(hg_ma1 == 6) warp "que_bingo",45,186;
  785. else warp "que_bingo",40,121;
  786. end;
  787. }
  788. que_bingo,53,121,0 duplicate(end1a#bingo) end1b#bingo 139,1,1
  789. que_bingo,51,116,0 duplicate(end1a#bingo) end1c#bingo 139,1,1
  790. que_bingo,46,116,0 duplicate(end1a#bingo) end1d#bingo 139,1,1
  791. que_bingo,45,121,0 duplicate(end1a#bingo) end1e#bingo 139,1,1
  792. que_bingo,50,138,1 script out3#bingo 139,5,8,{
  793. OnInit:
  794. disablenpc "out3#bingo";
  795. end;
  796. OnTouch:
  797. warp "que_bingo",40,121;
  798. end;
  799. }
  800. que_bingo,49,136,0 script go3#bingo 45,1,1,{
  801. OnTouch:
  802. switch($hu_bingob)
  803. {
  804. case 0: warp "que_bingo",49,125; break;
  805. case 1: warp "que_bingo",53,121; break;
  806. case 2: warp "que_bingo",51,116; break;
  807. case 3: warp "que_bingo",46,116; break;
  808. case 4: warp "que_bingo",45,121; break;
  809. }
  810. set $hu_bingob,$hu_bingob +1;
  811. if($hu_bingob == 5) set $hu_bingob,0;
  812. end;
  813. }
  814. function script Func_Bingo {
  815. for( set .@i,getarg(0); .@i < 26; set .@i,.@i +1)
  816. {
  817. if(@bingoplate[1] < 10) set @bingo_a1$,"0"+@bingoplate[1]+""; else set @bingo_a1$,@bingoplate[1];
  818. if(@bingoplate[2] < 10) set @bingo_a2$,"0"+@bingoplate[2]+""; else set @bingo_a2$,@bingoplate[2];
  819. if(@bingoplate[3] < 10) set @bingo_a3$,"0"+@bingoplate[3]+""; else set @bingo_a3$,@bingoplate[3];
  820. if(@bingoplate[4] < 10) set @bingo_a4$,"0"+@bingoplate[4]+""; else set @bingo_a4$,@bingoplate[4];
  821. if(@bingoplate[5] < 10) set @bingo_a5$,"0"+@bingoplate[5]+""; else set @bingo_a5$,@bingoplate[5];
  822. if(.@i > 5) mes "["+@bingo_a1$+"] ["+@bingo_a2$+"] ["+@bingo_a3$+"] ["+@bingo_a4$+"] ["+@bingo_a5$+"]";
  823. else
  824. {
  825. switch(.@i)
  826. {
  827. case 1: mes "^ff0000[__]^000000 [ ] [ ] [ ] [ ]"; break;
  828. case 2: mes "["+@bingo_a1$+"] ^ff0000[__]^000000 [ ] [ ] [ ]"; break;
  829. case 3: mes "["+@bingo_a1$+"] ["+@bingo_a2$+"] ^ff0000[__]^000000 [ ] [ ]"; break;
  830. case 4: mes "["+@bingo_a1$+"] ["+@bingo_a2$+"] ["+@bingo_a3$+"] ^ff0000[__]^000000 [ ]"; break;
  831. case 5: mes "["+@bingo_a1$+"] ["+@bingo_a2$+"] ["+@bingo_a3$+"] ["+@bingo_a4$+"] ^ff0000[__]^000000"; break;
  832. }
  833. }
  834. if(@bingoplate[6] < 10) set @bingo_b1$,"0"+@bingoplate[6]+""; else set @bingo_b1$,@bingoplate[6];
  835. if(@bingoplate[7] < 10) set @bingo_b2$,"0"+@bingoplate[7]+""; else set @bingo_b2$,@bingoplate[7];
  836. if(@bingoplate[8] < 10) set @bingo_b3$,"0"+@bingoplate[8]+""; else set @bingo_b3$,@bingoplate[8];
  837. if(@bingoplate[9] < 10) set @bingo_b4$,"0"+@bingoplate[9]+""; else set @bingo_b4$,@bingoplate[9];
  838. if(@bingoplate[10] < 10) set @bingo_b5$,"0"+@bingoplate[10]+""; else set @bingo_b5$,@bingoplate[10];
  839. if(.@i > 10) mes "["+@bingo_b1$+"] ["+@bingo_b2$+"] ["+@bingo_b3$+"] ["+@bingo_b4$+"] ["+@bingo_b5$+"]";
  840. else if(.@i < 6) mes "[ ] [ ] [ ] [ ] [ ]";
  841. else
  842. {
  843. switch(.@i)
  844. {
  845. case 6: mes "^ff0000[__]^000000 [ ] [ ] [ ] [ ]"; break;
  846. case 7: mes "["+@bingo_b1$+"] ^ff0000[__]^000000 [ ] [ ] [ ]"; break;
  847. case 8: mes "["+@bingo_b1$+"] ["+@bingo_b2$+"] ^ff0000[__]^000000 [ ] [ ]"; break;
  848. case 9: mes "["+@bingo_b1$+"] ["+@bingo_b2$+"] ["+@bingo_b3$+"] ^ff0000[__]^000000 [ ]"; break;
  849. case 10: mes "["+@bingo_b1$+"] ["+@bingo_b2$+"] ["+@bingo_b3$+"] ["+@bingo_b4$+"] ^ff0000[__]^000000"; break;
  850. }
  851. }
  852. if(@bingoplate[11] < 10) set @bingo_c1$,"0"+@bingoplate[11]+""; else set @bingo_c1$,@bingoplate[11];
  853. if(@bingoplate[12] < 10) set @bingo_c2$,"0"+@bingoplate[12]+""; else set @bingo_c2$,@bingoplate[12];
  854. if(@bingoplate[13] < 10) set @bingo_c3$,"0"+@bingoplate[13]+""; else set @bingo_c3$,@bingoplate[13];
  855. if(@bingoplate[14] < 10) set @bingo_c4$,"0"+@bingoplate[14]+""; else set @bingo_c4$,@bingoplate[14];
  856. if(@bingoplate[15] < 10) set @bingo_c5$,"0"+@bingoplate[15]+""; else set @bingo_c5$,@bingoplate[15];
  857. if(.@i > 15) mes "["+@bingo_c1$+"] ["+@bingo_c2$+"] ["+@bingo_c3$+"] ["+@bingo_c4$+"] ["+@bingo_c5$+"]";
  858. else if(.@i < 11) mes "[ ] [ ] [ ] [ ] [ ]";
  859. else
  860. {
  861. switch(.@i)
  862. {
  863. case 11: mes "^ff0000[__]^000000 [ ] [ ] [ ] [ ]"; break;
  864. case 12: mes "["+@bingo_c1$+"] ^ff0000[__]^000000 [ ] [ ] [ ]"; break;
  865. case 13: mes "["+@bingo_c1$+"] ["+@bingo_c2$+"] ^ff0000[__]^000000 [ ] [ ]"; break;
  866. case 14: mes "["+@bingo_c1$+"] ["+@bingo_c2$+"] ["+@bingo_c3$+"] ^ff0000[__]^000000 [ ]"; break;
  867. case 15: mes "["+@bingo_c1$+"] ["+@bingo_c2$+"] ["+@bingo_c3$+"] ["+@bingo_c4$+"] ^ff0000[__]^000000"; break;
  868. }
  869. }
  870. if(@bingoplate[16] < 10) set @bingo_d1$,"0"+@bingoplate[16]+""; else set @bingo_d1$,@bingoplate[16];
  871. if(@bingoplate[17] < 10) set @bingo_d2$,"0"+@bingoplate[17]+""; else set @bingo_d2$,@bingoplate[17];
  872. if(@bingoplate[18] < 10) set @bingo_d3$,"0"+@bingoplate[18]+""; else set @bingo_d3$,@bingoplate[18];
  873. if(@bingoplate[19] < 10) set @bingo_d4$,"0"+@bingoplate[19]+""; else set @bingo_d4$,@bingoplate[19];
  874. if(@bingoplate[20] < 10) set @bingo_d5$,"0"+@bingoplate[20]+""; else set @bingo_d5$,@bingoplate[20];
  875. if(.@i > 20) mes "["+@bingo_d1$+"] ["+@bingo_d2$+"] ["+@bingo_d3$+"] ["+@bingo_d4$+"] ["+@bingo_d5$+"]";
  876. else if(.@i < 16) mes "[ ] [ ] [ ] [ ] [ ]";
  877. else
  878. {
  879. switch(.@i)
  880. {
  881. case 16: mes "^ff0000[__]^000000 [ ] [ ] [ ] [ ]"; break;
  882. case 17: mes "["+@bingo_d1$+"] ^ff0000[__]^000000 [ ] [ ] [ ]"; break;
  883. case 18: mes "["+@bingo_d1$+"] ["+@bingo_d2$+"] ^ff0000[__]^000000 [ ] [ ]"; break;
  884. case 19: mes "["+@bingo_d1$+"] ["+@bingo_d2$+"] ["+@bingo_d3$+"] ^ff0000[__]^000000 [ ]"; break;
  885. case 20: mes "["+@bingo_d1$+"] ["+@bingo_d2$+"] ["+@bingo_d3$+"] ["+@bingo_d4$+"] ^ff0000[__]^000000"; break;
  886. }
  887. }
  888. if(@bingoplate[21] < 10) set @bingo_e1$,"0"+@bingoplate[21]+""; else set @bingo_e1$,@bingoplate[21];
  889. if(@bingoplate[22] < 10) set @bingo_e2$,"0"+@bingoplate[22]+""; else set @bingo_e2$,@bingoplate[22];
  890. if(@bingoplate[23] < 10) set @bingo_e3$,"0"+@bingoplate[23]+""; else set @bingo_e3$,@bingoplate[23];
  891. if(@bingoplate[24] < 10) set @bingo_e4$,"0"+@bingoplate[24]+""; else set @bingo_e4$,@bingoplate[24];
  892. if(.@i < 21) mes "[ ] [ ] [ ] [ ] [ ]";
  893. else
  894. {
  895. switch(.@i)
  896. {
  897. case 21: mes "^ff0000[__]^000000 [ ] [ ] [ ] [ ]"; break;
  898. case 22: mes "["+@bingo_e1$+"] ^ff0000[__]^000000 [ ] [ ] [ ]"; break;
  899. case 23: mes "["+@bingo_e1$+"] ["+@bingo_e2$+"] ^ff0000[__]^000000 [ ] [ ]"; break;
  900. case 24: mes "["+@bingo_e1$+"] ["+@bingo_e2$+"] ["+@bingo_e3$+"] ^ff0000[__]^000000 [ ]"; break;
  901. case 25: mes "["+@bingo_e1$+"] ["+@bingo_e2$+"] ["+@bingo_e3$+"] ["+@bingo_e4$+"] ^ff0000[__]^000000"; break;
  902. }
  903. }
  904. next;
  905. input .@bingoinput;
  906. if(.@bingoinput < 1 || .@bingoinput > 25) { set @bingo_case,.@i; return 0; }
  907. if(.@i > 1)
  908. {
  909. for(set .@j,.@i; .@j > 0; set .@j,.@j -1)
  910. {
  911. if(.@bingoinput == @bingoplate[.@j -1]) { set @bingo_case,.@i; return 0; }
  912. }
  913. }
  914. setarray @bingoplate[.@i],.@bingoinput;
  915. }
  916. return 1;
  917. }
  918. function script Func_BingoResult {
  919. if(getarg(0) == 1 || getarg(0) == 21) mapannounce "que_bingo","Eukran: The "+getarg(0)+"st number is "+$bingo[getarg(0) -1]+". Please check your Bingo Plate.",4,0xFFAB54;
  920. else if(getarg(0) == 2 || getarg(0) == 22) mapannounce "que_bingo","Eukran: The "+getarg(0)+"nd number is "+$bingo[getarg(0) -1]+". Please check your Bingo Plate.",4,0xFFAB54;
  921. else if(getarg(0) == 3 || getarg(0) == 23) mapannounce "que_bingo","Eukran: The "+getarg(0)+"rd number is "+$bingo[getarg(0) -1]+". Please check your Bingo Plate.",4,0xFFAB54;
  922. else mapannounce "que_bingo","Eukran: The "+getarg(0)+"th number is "+$bingo[getarg(0) -1]+". Please check your Bingo Plate.",4,0xFFAB54;
  923. enablenpc ""+getarg(0)+"a#bingo";
  924. enablenpc ""+getarg(0)+"b#bingo";
  925. enablenpc ""+getarg(0)+"c#bingo";
  926. enablenpc ""+getarg(0)+"d#bingo";
  927. enablenpc ""+getarg(0)+"e#bingo";
  928. set getarg(0),getarg(0) +1;
  929. end;
  930. }
  931. que_bingo,49,31,4 script Arcade Helper#1 47,{
  932. mes "[Helper]";
  933. mes "If you'd like to play";
  934. mes "a game of bingo, then";
  935. mes "please proceed this way.";
  936. close;
  937. }
  938. que_bingo,42,31,4 script Arcade Helper#2 66,{
  939. mes "[Helper]";
  940. mes "If you'd like to play";
  941. mes "a game of bingo, then";
  942. mes "please proceed this way.";
  943. close;
  944. }
  945. que_bingo,54,17,5 script Arcade Owner 712,{
  946. mes "[Arcade Owner]";
  947. mes "Welcome to the";
  948. mes "Bingo Game Arcade.";
  949. mes "Care to play a game of";
  950. mes "bingo? If you have any";
  951. mes "questions, feel free to ask.";
  952. next;
  953. switch( select( "Rules for Bingo:Bingo Room:Marvelous Medals" ) )
  954. {
  955. case 1:
  956. mes "[Arcade Owner]";
  957. mes "The rules for playing bingo";
  958. mes "are simple. First, take a board";
  959. mes "with 25 boxes organized so that";
  960. mes "there are five rows and five";
  961. mes "columns. Then, number the";
  962. mes "boxes in any order you like.";
  963. next;
  964. mes "[Arcade Owner]";
  965. mes "Of course, you must use";
  966. mes "the numbers 1 through 25.";
  967. mes "When everyone's bingo board";
  968. mes "is ready, the game will begin.";
  969. mes "Our game coordinator will call out a number from 1 to 25 at random.";
  970. next;
  971. mes "[Arcade Owner]";
  972. mes "Each time the coordinator";
  973. mes "calls out a number, make sure";
  974. mes "that you mark the corresponding";
  975. mes "numbered square on your bingo";
  976. mes "board. Now, these are the";
  977. mes "conditions for winning...";
  978. next;
  979. mes "[Arcade Owner]";
  980. mes "If you can make a line of";
  981. mes "5 squares in a row, horizontally, vertically, or diagonally, using";
  982. mes "the numbers called out by the";
  983. mes "coordinator, you quickly yell";
  984. mes "the word, ''Bingo.''";
  985. next;
  986. mes "[Arcade Owner]";
  987. mes "If you are the first to yell";
  988. mes "the word, ''Bingo,'' you'll";
  989. mes "win! But if someone beats you";
  990. mes "to it, then it can't be helped.";
  991. mes "Anyway, it costs 1,000 zeny";
  992. mes "to play each bingo game~";
  993. close;
  994. break;
  995. case 2:
  996. mes "[Arcade Owner]";
  997. mes "Ah, if you want to join a";
  998. mes "bingo game, enter the right";
  999. mes "door. There must be at least";
  1000. mes "5 people to play a game, so";
  1001. mes "you may need to wait until";
  1002. mes "that requirement is fulfilled.";
  1003. next;
  1004. mes "[Arcade Owner]";
  1005. mes "If you just want to";
  1006. mes "watch the bingo game,";
  1007. mes "then you may enter the";
  1008. mes "left door as a spectator";
  1009. mes "in the Bingo Room.";
  1010. close;
  1011. break;
  1012. case 3:
  1013. mes "[Arcade Owner]";
  1014. mes "When you win a bingo";
  1015. mes "game, you will be rewarded";
  1016. mes "with ''Marvelous Medals,''";
  1017. mes "which can only be used within";
  1018. mes "this arcade. You also can't^FFFFFF ^000000 trade medals with other players.";
  1019. next;
  1020. mes "[Arcade Owner]";
  1021. mes "You usually get 1 Marvelous";
  1022. mes "Medal for winning a bingo game,";
  1023. mes "but you can win 50 at one time";
  1024. mes "under special conditions. You";
  1025. mes "can also play Monster Racing";
  1026. mes "games to win more medals.";
  1027. next;
  1028. mes "[Arcade Owner]";
  1029. mes "Collect as many Marvelous";
  1030. mes "Medals as you can, and trade";
  1031. mes "them for products in the Monster^FFFFFF ^000000 Racing Arena. I hear there's also";
  1032. mes "a place in Einbroch where you can^FFFFFF ^000000 use them, but I wouldn't know.";
  1033. close;
  1034. break;
  1035. }
  1036. }