Advertisement
xKevinn

MC Macros - Number Guess

Nov 12th, 2014
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.47 KB | None | 0 0
  1. $${
  2. IFMATCHES(%CHATCLEAN%,^\[(.+)\] \*|me\] %PLAYER%|me\] %&prname%|me\] %&pname%|me\] %@&pplayer%|: %&prname%|: %&pname%|: %@&pplayer%|: \[)
  3. Stop()
  4. ENDIF
  5.  
  6. IF(@&pplayer = "")
  7. @&pplayer = "Noob"
  8. ENDIF
  9.  
  10. IF(&pname = "")
  11. &pname = "Noob"
  12. ENDIF
  13.  
  14. IF(&prname = "")
  15. &prname = "Noob"
  16. ENDIF
  17.  
  18. IF(&prizes = "")
  19. &prizes = "false"
  20. ENDIF
  21.  
  22. IF(&firstopen = "")
  23. Log("I see this is your first time running RN-Guesser, type &a!help &bto view commands.")
  24. Log("Made by xKevinn.")
  25. &firstopen = "false"
  26. ENDIF
  27.  
  28. IF(#prizeamt = 0)
  29. Set(#prizeamt,10)
  30. ENDIF
  31.  
  32. IFMATCHES(%CHATCLEAN%,!name$)
  33. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&debugname,1,NUL)
  34. ECHO(My name is: %PLAYER% and it reads me as %&debugname%)
  35. ENDIF
  36.  
  37. IFMATCHES(%CHATCLEAN%,!prizes$)
  38. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&tname,1,NUL)
  39. IF(%PLAYER% = %&tname%)
  40. IF(&prizes = "false")
  41. &prizes = "true"
  42. Echo("&bPrizes are now &aenabled&b.")
  43. ELSEIF(&prizes = "true")
  44. &prizes = "false"
  45. Echo("&bPrizes are now &cdisabled&b.")
  46. ENDIF
  47. ENDIF
  48. ENDIF
  49.  
  50. IFMATCHES(%CHATCLEAN%,!spr$)
  51. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&prname,1,NUL)
  52. IF(%PLAYER% = %&prname%)
  53. &prizeset = "false"
  54. Echo("&bDo you want the prize to be an &aID&b\, &aEmeralds &bor &aRandom&b?")
  55. ENDIF
  56. ENDIF
  57.  
  58. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&prname,1)
  59. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&prizetype,2)
  60. IF(&prizeset = "false")
  61. IF(%PLAYER% = %&prname%)
  62. IF(&prizetype = "Emeralds")
  63. &ptype = "Emeralds"
  64. Echo("&bHow many &aEmeralds &bdo you want the base prize to be?")
  65. ELSEIF(&prizetype = "ID")
  66. &ptype = "ID"
  67. Echo("&bWhat item ID do you want the prize to be? Only &a1 &bwill be given as a reward.")
  68. Log("&eChoosable ID's: 1-158 and 256-408. Illegal items are already blocked.")
  69. ELSEIF(&prizetype = "Random")
  70. &ptype = "Random"
  71. &prizeset = "true"
  72. Echo("&bA random prize will be given as a reward.")
  73. Log("&eDon't worry\, all legal items.")
  74. ENDIF
  75. ENDIF
  76. ENDIF
  77. ENDIF
  78.  
  79. IF(&ptype = "Random")
  80. IF(&rmodify = "false")
  81. RANDOM(#picker,1,2)
  82. IF(#picker = 1)
  83. DO
  84. RANDOM(#items,1,158)
  85. IFMATCHES(%#items%,0|7|8|9|10|11|26|27|30|34|36|51|52|55|59|60|62|63|64|66|68|71|74|75|83|90|93|94|95|97|99|100|104|105|115|117|118|119|120|121|122|124|132|137|138|141|142|144|149|150|157)
  86. &legal = "false"
  87. Else
  88. &legal = "true"
  89. GetItemInfo(%#items%,&itemname2)
  90. &prizeset = "true"
  91. ENDIF
  92. WHILE(&legal = "false")
  93. ELSEIF(#picker = 2)
  94. DO
  95. RANDOM(#items,256,408)
  96. IFMATCHES(%#items%,302|303|304|305|326|328|327|342|343|383|385|397|399|403|407|408)
  97. &legal = "false"
  98. Else
  99. &legal = "true"
  100. GetItemInfo(%#items%,&itemname2)
  101. &prizeset = "true"
  102. ENDIF
  103. WHILE(&legal = "false")
  104. ENDIF
  105. ENDIF
  106. ENDIF
  107.  
  108. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: ([0-9][0-9]?[0-9]?)$",&prname,1)
  109. IF(%PLAYER% = %&prname%)
  110. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: ([0-9][0-9]?[0-9]?)$",&itemid,2)
  111. IF(&prizeset = "false")
  112. IF(&ptype = "ID")
  113. Set(#itemid,%&itemid%)
  114. GetItemInfo(%#itemid%,&itemname)
  115. IFMATCHES(%CHATCLEAN%,"([0-9]{1,3})$",&change,1)
  116. IFMATCHES(%&change%,"^(0|[7-9]|1[0-1]|26|27|28|3[046]|5[1-259]|6[02-468]|7[14-5]|83|9[03-579]|10[045]|11[57-9]|12[0-24]|13[278]|14[1249]|15[07]|32[6-8]|30[2-5]|34[23]|38[35]|39[79]|40[378])$")
  117. Echo("&cThat item is not allowed: %&itemname%.")
  118. Else
  119. Echo("&bItem chosen: &a%&itemname%&b.")
  120. &prizeset = "true"
  121. ENDIF
  122. ENDIF
  123. ENDIF
  124. ENDIF
  125. ENDIF
  126. ENDIF
  127.  
  128. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: ([0-9][0-9]?[0-9]?)$",&prname,1)
  129. IF(&prizeset = "false")
  130. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: ([0-9][0-9]?[0-9]?)$",&prizeamt,2)
  131. IF(%PLAYER% = %&prname%)
  132. IF(&ptype = "Emeralds")
  133. &prizeset = "true"
  134. Set(#prizeamt,%&prizeamt%)
  135. Echo("&bBase prize amount set to &a%#prizeamt% Emeralds&b.")
  136. ENDIF
  137. ENDIF
  138. ENDIF
  139. ENDIF
  140.  
  141. IFMATCHES(%CHATCLEAN%,!sg$)
  142. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&startname,1,NUL)
  143. IF(%PLAYER% = %&startname%)
  144. IF(&gamestarted = "")
  145. &gamestarted = "false"
  146. ELSEIF(&gamestarted = "false")
  147. #guesses = 0
  148. &gamestarted = "true"
  149. Echo("&bGame starting! To play, type &ajoin &bto play. One player at a time.")
  150. ELSEIF(&gamestarted = "true")
  151. Echo("&cGame is already in progress!")
  152. ENDIF
  153. ENDIF
  154. ENDIF
  155.  
  156. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: join$")
  157. IF(&joined = "")
  158. &joined = "false"
  159. ENDIF
  160. IF(&joined = "false")
  161. IF(&gamestarted = "true")
  162. IF(&rmodify = "true")
  163. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&pname,1,NUL)
  164. &joined = "true"
  165. Echo("&a%&pname% &bis the contestant! Choose: &aEasy &eMedium &cHard &4Extreme&b.")
  166. ENDIF
  167. ENDIF
  168. ELSEIF(&joined = "true")
  169. IF(&chosen = "false")
  170. Echo("&c%&pname% has already joined! &bChoose: &aEasy &eMedium &cHard &4Extreme&b.")
  171. ENDIF
  172. ENDIF
  173. ENDIF
  174.  
  175. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: easy$")
  176. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&pnamecomp,1,NUL)
  177. IF(&pname = %&pnamecomp%)
  178. IF(&rmodify = "")
  179. &rmodify = "true"
  180. ENDIF
  181. IF(&rmodify = "true")
  182. IF(&joined = "true")
  183. &rmodify = "false"
  184. Echo("&aEasy &bchosen. Guess a number between &a1 &band &a50&b.")
  185. RANDOM(#rnum,1,50)
  186. Log(Number is: %#rnum%.)
  187. &difficulty = "&a[Easy]"
  188. &chosen = "true"
  189. #multiplier = 1
  190. #amount = 1
  191. ENDIF
  192. ENDIF
  193. ENDIF
  194. ENDIF
  195.  
  196. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: medium$")
  197. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&pnamecomp,1,NUL)
  198. IF(&pname = %&pnamecomp%)
  199. IF(&rmodify = "")
  200. &rmodify = "true"
  201. ENDIF
  202. IF(&rmodify = "true")
  203. IF(&joined = "true")
  204. &rmodify = "false"
  205. Echo("&eMedium &bchosen. Guess a number between &a1 &band &a250&b.")
  206. RANDOM(#rnum,1,250)
  207. Log(Number is: %#rnum%.)
  208. &difficulty = "&e[Medium]"
  209. &chosen = "true"
  210. #multiplier = 2
  211. #amount = 2
  212. ENDIF
  213. ENDIF
  214. ENDIF
  215. ENDIF
  216.  
  217. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: hard$")
  218. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&pnamecomp,1,NUL)
  219. IF(&pname = %&pnamecomp%)
  220. IF(&rmodify = "")
  221. &rmodify = "true"
  222. ENDIF
  223. IF(&rmodify = "true")
  224. IF(&joined = "true")
  225. &rmodify = "false"
  226. Echo("&cHard &bchosen. Guess a number between &a1 &band &a500&b.")
  227. RANDOM(#rnum,1,500)
  228. Log(Number is: %#rnum%.)
  229. &difficulty = "&c[Hard]"
  230. &chosen = "true"
  231. #multiplier = 4
  232. #amount = 3
  233. ENDIF
  234. ENDIF
  235. ENDIF
  236. ENDIF
  237.  
  238. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: extreme$")
  239. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&pnamecomp,1,NUL)
  240. IF(&pname = %&pnamecomp%)
  241. IF(&rmodify = "")
  242. &rmodify = "true"
  243. ENDIF
  244. IF(&rmodify = "true")
  245. IF(&joined = "true")
  246. &rmodify = "false"
  247. Echo("&4Extreme &bchosen. Guess a number between &a1 &band &a1000&b.")
  248. RANDOM(#rnum,1,1000)
  249. Log(Number is: %#rnum%.)
  250. &difficulty = "&4[Extreme]"
  251. &chosen = "true"
  252. #multiplier = 8
  253. #amount = 4
  254. ENDIF
  255. ENDIF
  256. ENDIF
  257. ENDIF
  258.  
  259. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: [0-9][0-9]?[0-9]?[0-9]?$")
  260. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&pnamecomp,1,NUL)
  261. IF(&pname = %&pnamecomp%)
  262. IF(&joined = "true")
  263. IF(&rmodify = "false")
  264. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&pguess,2)
  265. Set(#guess,%&pguess%)
  266. IF(#guess > #rnum)
  267. Inc(#guesses)
  268. IF(#guesses < 11)
  269. Echo("&cToo high! &e[%#guess%] &bGuesses: &a%#guesses%&b.")
  270. Else
  271. Echo("&cToo high! &e[%#guess%] &bGuesses: &c%#guesses%&b.")
  272. ENDIF
  273. ELSEIF(#guess < #rnum)
  274. Inc(#guesses)
  275. IF(#guesses < 11)
  276. Echo("&cToo low! &e[%#guess%] &bGuesses: &a%#guesses%&b.")
  277. Else
  278. Echo("&cToo low! &e[%#guess%] &bGuesses: &c%#guesses%&b.")
  279. ENDIF
  280. ELSEIF(#guess = #rnum)
  281. Inc(#guesses)
  282. IF(&prizes = "false")
  283. Echo("%&difficulty% &e[%#guess%] &a%&pname% &ewins! &eGuesses: &a%#guesses%&b.")
  284. &joined = "false"
  285. &gamestarted = "false"
  286. &rmodify = "true"
  287. &chosen = "false"
  288. ELSEIF(&prizes = "true")
  289. &joined = "false"
  290. &gamestarted = "false"
  291. &rmodify = "true"
  292. &chosen = "false"
  293. IF(#guesses = 1)
  294. IF(#multiplier = 8)
  295. Echo("&a%&pname% &e[%#guess%] &bwon on their very first guess! They are awarded with a special prize.")
  296. Echo(/give %&pname% 278 1 name:&3&lSuper_Pickaxe lore:&4&lRN_First-Guess_Winner unbreaking:3 eff:5)
  297. Echo(/give %&pname% 388 100)
  298. ENDIF
  299. ELSEIF(#guesses > 10)
  300. Echo("%&difficulty% &e[%#guess%] &a%&pname% &bwins but didn't get anything. Too many guesses. :c Guesses: &c%#guesses%&b")
  301. Echo(/m %&pname% Psst\, have a cookie)
  302. Echo(/give %&pname% cookie 1)
  303. ELSEIF(#guesses < 11)
  304. IF(&ptype = "Emeralds")
  305. #total = #multiplier * #prizeamt
  306. #total = #total / #guesses
  307. IF(#total > 0)
  308. Echo(/give %&pname% 388 %#total%)
  309. Echo("%&difficulty% &e[%#guess%] &a%&pname% &bwins and gets &a%#total%&bx &aEmeralds&b. Guesses: &a%#guesses%&b.")
  310. &joined = "false"
  311. &gamestarted = "false"
  312. &rmodify = "true"
  313. &chosen = "false"
  314. ELSEIF(#total = 0)
  315. Echo(/give %&pname% cookie 1)
  316. Echo("%&difficulty% &e[%#guess%] &a%&pname% &bwins and gets a &acookie&b. Guesses: &a%#guesses%&b")
  317. &joined = "false"
  318. &gamestarted = "false"
  319. &rmodify = "true"
  320. &chosen = "false"
  321. ENDIF
  322. ELSEIF(&ptype = "ID")
  323. Echo("%&difficulty% &e[%#guess%] &a%&pname% &bwins and gets &a%#amount%&bx &a%&itemname%&b. Guesses: &a%#guesses%&b.")
  324. Echo(/give %&pname% %#itemid% %#amount%)
  325. &joined = "false"
  326. &gamestarted = "false"
  327. &rmodify = "true"
  328. &chosen = "false"
  329. ELSEIF(&ptype = "Random")
  330. Echo("%&difficulty% &e[%#guess%] &a%&pname% &bwins and gets &a%#amount%&bx &a%&itemname2%&b. Guesses: &a%#guesses%&b.")
  331. Echo(/give %&pname% %#items% %#amount%)
  332. &joined = "false"
  333. &gamestarted = "false"
  334. &rmodify = "true"
  335. &chosen = "false"
  336. ENDIF
  337. ENDIF
  338. ENDIF
  339. ENDIF
  340. ENDIF
  341. ENDIF
  342. ENDIF
  343. ENDIF
  344.  
  345. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: quit$",&pnamecomp,1,NUL)
  346. IF(&pname = %&pnamecomp%)
  347. IF(&joined = "true")
  348. IF(&rmodify = "false")
  349. Echo("&cGame over. %&pname% quit.")
  350. &joined = "false"
  351. &gamestarted = "false"
  352. &rmodify = "true"
  353. &chosen = "false"
  354. ENDIF
  355. ENDIF
  356. ENDIF
  357. ENDIF
  358.  
  359. IFMATCHES(%CHATCLEAN%,!reset$)
  360. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&resetname,1,NUL)
  361. IF(%PLAYER% = %&resetname%)
  362. IF(@&ginprogress = "true")
  363. @&ginprogress = "false"
  364. Echo("/m %@&pplayer% &cOffer expired.")
  365. @&pnoreply = "true"
  366. Echo("/g &a%@&pplayer% &cwas not able to claim their %@&pitemname% prize.")
  367. Else
  368. &joined = "false"
  369. &gamestarted = "false"
  370. &rmodify = "true"
  371. &chosen = "false"
  372. Echo("&cGame reset.")
  373. ENDIF
  374. ENDIF
  375. ENDIF
  376.  
  377. IFMATCHES(%CHATCLEAN%,!rpg$)
  378. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&prname,1,NUL)
  379. IF(%PLAYER% = %&prname%)
  380. IF(@&ginprogress = "")
  381. @&ginprogress = "false"
  382. ENDIF
  383. IF(@&ginprogress = "false")
  384. @&ginprogress = "true"
  385. Exec(RandomItem.txt,"Random Player Giver")
  386. Else
  387. Echo("&cAlready in progress.")
  388. ENDIF
  389. ENDIF
  390. ENDIF
  391.  
  392. IFMATCHES(%CHATCLEAN%,!rpgm$)
  393. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&prname,1,NUL)
  394. IF(%PLAYER% = %&prname%)
  395. Echo("&bWhat is the maximum amount of items a player can get from the Random-Item giveaway?")
  396. &rpgmpicked = "false"
  397. ENDIF
  398. ENDIF
  399.  
  400. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: ([0-9][0-9]?[0-9]?)$",&prname,1)
  401. IF(%PLAYER% = %&prname%)
  402. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: ([0-9][0-9]?[0-9]?)$",&maxmulti,2)
  403. IF(&rpgmpicked = "false")
  404. Set(@#maxmulti,%&maxmulti%)
  405. Echo("&bMax amount of items set to &a%@#maxmulti%&b.")
  406. &rpgmpicked = "true"
  407. ENDIF
  408. ENDIF
  409. ENDIF
  410.  
  411. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?\-?\>? ?m?e?\]?:? yes$",&prname,1)
  412. IF(%&prname% = %@&pplayer%)
  413. IF(@&pnoreply = "false")
  414. Echo(/give %@&pplayer% %@#pitems% %@#pamnt%)
  415. Echo("/m %@&pplayer% &aEnjoy!")
  416. Echo("/g &a%@&pplayer% &bclaimed their %@&pitemname% prize.")
  417. @&pnoreply = "true"
  418. @&ginprogress = "false"
  419. ENDIF
  420. ENDIF
  421. ENDIF
  422.  
  423. IFMATCHES(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?\-?\>? ?m?e?\]?:? no$",&prname,1)
  424. IF(%&prname% = %@&pplayer%)
  425. IF(@&pnoreply = "false")
  426. Echo("/m %@&pplayer% &aTry again next time!")
  427. @&pnoreply = "true"
  428. @&ginprogress = "false"
  429. Echo("/g &a%@&pplayer% &cdid not want their %@&pitemname% prize.")
  430. ENDIF
  431. ENDIF
  432. ENDIF
  433.  
  434. IFMATCHES(%CHATCLEAN%,"!spl (.+)$",&setplayer,1)
  435. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: !spl (.+)$",&pnamecomp,1,NUL)
  436. IF(%PLAYER% = %&pnamecomp%)
  437. Set(&pname,%&setplayer%)
  438. IF(&gamestarted = "false")
  439. IF(&joined = "false")
  440. #guesses = 0
  441. &gamestarted = "true"
  442. &joined = "true"
  443. &chosen = "false"
  444. &rmodify = "true"
  445. Echo("&bGame started. &a%&pname% &bis the contestant! Choose: &aEasy &eMedium &cHard &4Extreme&b.")
  446. ENDIF
  447. ELSEIF(&gamestarted = "true")
  448. IF(&joined = "true")
  449. Echo("&cContestant switched to %&pname%. &bChoose: &aEasy &eMedium &cHard &4Extreme&c.")
  450. #guesses = 0
  451. &gamestarted = "true"
  452. &joined = "true"
  453. &chosen = "false"
  454. &rmodify = "true"
  455. ENDIF
  456. ENDIF
  457. ENDIF
  458. ENDIF
  459.  
  460. IFMATCHES(%CHATCLEAN%,!help$)
  461. MATCH(%CHATCLEAN%,"([a-z0-9\-_]{4,16}) ?: (.+)$",&hplayer,1,NUL)
  462. IF(%PLAYER% = %&hplayer%)
  463. Log("");Log("");Log("");Log("&d ---[Help]--------------------------------------")
  464. Log("&d |&d&o Made by xKevinn &d|")
  465. Log("&d | &eRandom Number Guesser:")
  466. Log("&d |&c - &3sg &a- starts the game.")
  467. Log("&d |&c - &3spr &a- sets a prize type.")
  468. Log("&d |&c - &3spl &b&oname &a- manually sets a player.")
  469. Log("&d |&c - &3prizes &a- toggles prizes on and off.")
  470. Log("&d |&c - &3reset &a- resets the game back to default settings.")
  471. Log("&d |&3 Base emerald prize: &a%#prizeamt%&3.")
  472. Log("&d |&3 ID prize: &a(%#itemid%) %&itemname%&3.")
  473. IF(&prizes = "true")
  474. Log("&d |&3 Prizes: &aon&3.")
  475. Else
  476. Log("&d |&3 Prizes: &coff&3.")
  477. ENDIF
  478. Log("&d | &eRandom Item Giveaway:")
  479. Log("&d |&c - &3rpg &a- gives a random player a random item.")
  480. Log("&d |&c - &3rpgm &a- sets max items won.")
  481. Log("&d |&c - &3reset &a- cancels current giveaway.")
  482. Log("&d |&3 Max amount of items: &a%@#maxmulti%&3.")
  483. Log("&d ----------------------------------------------");Log("")
  484. ENDIF
  485. ENDIF
  486. }$$
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement