Advertisement
Nyax

Many commands bot

Jan 15th, 2017
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.26 KB | None | 0 0
  1. // GLOBAL VARIABLES
  2. // ******** ******** ********
  3. var vgCommandSymbol = "-";
  4. var vgBotName = "±Mah Bish: ";
  5. var vgBotEnabled = true;
  6. var vgOfficialChannelArray = ["Blackjack", "Hangman", "Mafia", "Tohjo Falls", "Tournaments", "Trivia"];
  7.  
  8. // SCRIPT UPDATE NOTIFICATION
  9. // ******** ******** ********
  10. print(vgBotName + "Client script updated!");
  11. print(vgBotName + "Use -help / -commands for list of commands!");
  12.  
  13. // PO SCRIPT
  14. // ******** ******** ********
  15. script = {
  16. beforeChannelMessage: function (message, channel, html) {
  17. // VARIABLES
  18. // ******** ******** ********
  19. var vMyName = client.ownName();
  20. var vUserSentName = message.substring(0, message.indexOf(':'));
  21. var vUserSentMessage = message.substr(message.indexOf(':') + 2);
  22. var vUserSentId = client.id(message.substring(0, message.indexOf(':')));
  23. var vChannelName = client.channelName(channel);
  24. var vChannelId = channel;
  25. var vChannelCurrentlyViewingName = client.channelName(client.currentChannel());
  26. var vChannelCurrentlyViewingId = client.currentChannel();
  27.  
  28. // COMMAND + COMMAND DATA SETUP
  29. // ******** ******** ********
  30. var vCommand = "", vCommandData = "";
  31. var vSplit = vUserSentMessage.indexOf(" ");
  32. if (vgCommandSymbol === vUserSentMessage.charAt(0)) {
  33. if (vSplit !== -1) {
  34. vCommand = vUserSentMessage.substring(1, vSplit).toLowerCase();
  35. vCommandData = vUserSentMessage.substr(vSplit + 1);
  36. } else {
  37. vCommand = vUserSentMessage.substr(1).toLowerCase();
  38. }
  39. }
  40.  
  41. // OWNER ONLY COMMANDS
  42. // ******** ******** ********
  43. if (vUserSentName === vMyName ) {
  44. // BOT SWITCH
  45. // ******** ******** ********
  46. if (vCommand === "bot") {
  47. // CHECK IF THERE WAS NO COMMAND DATA ADDED
  48. if (vCommandData === "") {
  49. // ALERT THAT BOT IS CURRENTLY ON
  50. if (vgBotEnabled === true) {
  51. client.network().sendChanMessage(channel, vgBotName + "Bots are currently enabled!");
  52. return;
  53. }
  54. // ALERT THAT BOT IS CURRENTLY OFF
  55. if (vgBotEnabled === false) {
  56. client.network().sendChanMessage(channel, vgBotName + "Bots are currently disabled!");
  57. return;
  58. }
  59. }
  60. // TURN THE BOT ON
  61. if (vCommandData === "on") {
  62. vgBotEnabled = true;
  63. client.network().sendChanMessage(channel, vgBotName + "Bots enabled!");
  64. return;
  65. }
  66. // TURN THE BOT OFF
  67. if (vCommandData === "off") {
  68. vgBotEnabled = false;
  69. client.network().sendChanMessage(channel, vgBotName + "Bots disabled!");
  70. return;
  71. }
  72. }
  73. } // END OF OWNER ONLY COMMANDS
  74.  
  75. //BOTS
  76. // ******** ******** ********
  77. if (vgBotEnabled === true) {
  78. if (vgOfficialChannelArray.indexOf(vChannelName) === -1) {
  79. // === PUT YOUR RESPOND BOTS BELOW HERE ===
  80.  
  81. // EXAMPLE 1 - HELP COMMANDS
  82. if (vCommand === "help" || vCommand === "commands") {
  83. client.network().sendChanMessage(channel, vgBotName + "//Owner: -bot [on/off] //User: -help, -commands, -test, test, [owner's alt], -attack [target], -transform, pichu, pikachu, raichu, -ship, -quote");
  84. return;
  85. }
  86.  
  87. // EXAMPLE 2 - TEST
  88. if (vCommand === "test" || vUserSentMessage.toLowerCase() === "test") {
  89. client.network().sendChanMessage(channel, vgBotName + "Connection successful, " + vUserSentName + "!");
  90. return;
  91. }
  92.  
  93. // EXAMPLE 3 - AUTO REPOND WHEN SOMEONE SAYS YOUR NAME
  94. if (vUserSentMessage.toLowerCase() === vMyName.toLowerCase()) {
  95. client.network().sendChanMessage(channel, vgBotName + "Hello, this is an auto message of when you mention me, if I do not respon shortly I am either busy, afk or just didn't get the notification, be sure to not spam the bot while I am gone, I respond to PMs much faster so if you need me do just that.");
  96. return;
  97. }
  98.  
  99. // EXAMPLE 4 - ATTACK COMMAND
  100. if (vCommand === "attack") {
  101. if (vCommandData === "") {
  102. client.network().sendChanMessage(channel, vgBotName + "HOW ABOUT TELLING ME WHO TO ATTACK, HUH?");
  103. return;
  104. }
  105. // SETUP MOVE ARRAY
  106. var vMoveNameArray = [];
  107. var vMoveNameDone = false;
  108. for (x = 0; vMoveNameDone === false; x++) {
  109. vMoveNameArray[x] = sys.move(x);
  110. if (vMoveNameArray[x] === undefined) {
  111. vMoveNameDone = true;
  112. // REMOVE FIRST ENTRY(No Move)
  113. vMoveNameArray.shift();
  114. // REMOVE LAST ENTRY undefined
  115. vMoveNameArray.pop();
  116. }
  117. }
  118. // GET RANDOM MOVE FROM THE MOVE ARRAY
  119. var vRngMove = vMoveNameArray[Math.floor((Math.random() * vMoveNameArray.length) + 0)];
  120. // GENERATE RANDOM DAMAGE
  121. var vRngDamage = Math.floor((Math.random() * 100) + 0);
  122. // SEND MESSAGE
  123. client.network().sendChanMessage(channel, "/me " + vUserSentName + " attacked " + vCommandData + " with " + vRngMove + "! Dealing " + vRngDamage + " damage!");
  124. return;
  125. }
  126.  
  127. // EXAMPLE 5 - TRANSFORM COMMAND
  128. if (vCommand === "transform") {
  129. // SETUP POKEMON NAME ARRAY
  130. var vPokeNameArray = [];
  131. var vPokeNameDone = false;
  132. for (x = 0; vPokeNameDone === false; x++) {
  133. vPokeNameArray[x] = sys.pokemon(x);
  134. // SKIP FIRST MISSINGNO AND STOP AT LAST ONES
  135. if (x > 0 && vPokeNameArray[x] === "Missingno") {
  136. vPokeNameDone = true;
  137. // REMOVE LAST ENTRY Missingno
  138. vPokeNameArray.pop();
  139. }
  140. }
  141. // GET RANDOM MOVE FROM THE GLOBAL MOVE ARRAY
  142. var vRngPoke = vPokeNameArray[Math.floor((Math.random() * vPokeNameArray.length) + 0)];
  143. // SEND MESSAGE
  144. client.network().sendChanMessage(channel, "/me " + vUserSentName + " farted and transformed into " + vRngPoke + "!");
  145. return;
  146. }
  147.  
  148. // EXAMPLE 6 - QOTD
  149. if (["qotd"].indexOf(vUserSentMessage.toLowerCase()) !== -1) {
  150. var vBotName = "Pikachu";
  151. var vMessageArray = [
  152. "None yet"
  153. ];
  154. var vRngArrayEntry = Math.floor((Math.random() * vMessageArray.length) + 0);
  155. client.network().sendChanMessage(channel, "Quote Of The Day: " + vMessageArray[vRngArrayEntry] );
  156. return;
  157. }
  158.  
  159. // EXAMPLE 6 - QUOTE
  160. if (["-quote", " -quote"].indexOf(vUserSentMessage.toLowerCase()) !== -1) {
  161. var vBotName = "Nostalgia";
  162. var vMessageArray = [
  163. "(00:29:52) Lucario_bicth32: everyone calls me emo and stuff just because i like da color black (00:30:12) The Fifth Yanko: Darius would like to hear that.",
  164. "(02:46:24) Cake: I am a tall, black man with pink curly hair (02:46:35) -Darius-: You are trey?",
  165. "(03:57:45) Cake: say /crules (03:58:00) Yellan: say cake is a hot pancake",
  166. "(00:26:08) The Fifth Yanko: I am sorry...I like touching babies",
  167. "(00:39:11) The Fifth Yanko: On my first time eating a chick shes yelled in horror too, But usually they call that cannibalism.",
  168. "(17:33:19) Ice Cream: OKAY ENOUGH MOLESTING ME"
  169. ];
  170. var vRngArrayEntry = Math.floor((Math.random() * vMessageArray.length) + 0);
  171. client.network().sendChanMessage(channel, vMessageArray[vRngArrayEntry] );
  172. return;
  173. }
  174.  
  175.  
  176. // EXAMPLE 6 - NYA
  177. if (["nya"," nya "].indexOf(vUserSentMessage.toLowerCase()) !== -1) {
  178. var vBotName = "+No";
  179. var vMessageArray = [
  180. "Saying 'nya' is extremely cringy, it is so cringy that I had created this auto-respond bot to stop people from saying it, not to mention Nya was one of my main usernames for a long time and to see people say it gives me the idea of people trying to flash me which is very annoying also.",
  181. "I AM GETTING A SPOON AND I'LL GOUGE YOUR FREAKING EYES WITH IT, AND THEN SPOON-FEED THEM TO YOU"
  182. ];
  183. var vRngArrayEntry = Math.floor((Math.random() * vMessageArray.length) + 0);
  184. client.network().sendChanMessage(channel, vBotName + ": " + vMessageArray[vRngArrayEntry] );
  185. return;
  186. }
  187.  
  188. // EXAMPLE 7 - SHIP
  189. // ******** ******** ********
  190. if (vCommand === "ship") {
  191. var vBotName = "±Da Shippah: ";
  192. // GET ALL PLAYER ID IN CHANNEL + BUILD AND COLLECT NAME ARRAY
  193. var vChannelPlayerIdArray = client.channel(channel).players();
  194. var vChannelPlayerNameArray = [];
  195. for (var x = 0; x < vChannelPlayerIdArray.length; x++) {
  196. vChannelPlayerNameArray[x] = client.name(vChannelPlayerIdArray[x]);
  197. }
  198. // NO vCommandData INPUT
  199. if (vCommandData === "") {
  200. // PICK 2 RANDOM PLAYERS IN CHANNEL
  201. if (vChannelPlayerNameArray.length >= 2) {
  202. var vRngName1 = vChannelPlayerNameArray[Math.floor((Math.random()*vChannelPlayerNameArray.length)+0)];
  203. var vRngName2 = vChannelPlayerNameArray[Math.floor((Math.random()*vChannelPlayerNameArray.length)+0)];
  204. // CHANGE vRngName2 IF RNG vRngName1 & vRngName2 ARE THE SAME
  205. while (vRngName1 == vRngName2) {
  206. var vRngName2 = vChannelPlayerName[Math.floor((Math.random()*vChannelPlayerName.length)+0)];
  207. }
  208. client.network().sendChanMessage(channel, vBotName + " I ship " + vRngName1 + " and " + vRngName2 );
  209. } else {
  210. client.network().sendChanMessage(channel, vBotName + "You are just desperate, aren't ya?");
  211. }
  212. } else { // vCommandData BEEN INPUT
  213. // PICK 1 RANDOM PLAYERS IN CHANNEL
  214. var vRngName2 = vChannelPlayerNameArray[Math.floor((Math.random()*vChannelPlayerNameArray.length)+0)];
  215. client.network().sendChanMessage(channel, vBotName + " I declare " + vCommandData + " and " + vRngName2 + " a ship now. " );
  216. }
  217. return;
  218. }
  219.  
  220. // EXAMPLE 4 - THROW COMMAND
  221. if (vCommand === "throw") {
  222. if (vCommandData === "") {
  223. client.network().sendChanMessage(channel, vgBotName + "HOW ABOUT TELLING ME WHO TO THROW, HUH?");
  224. return;
  225. }
  226. // SETUP MOVE ARRAY
  227. var vMoveNameArray = [];
  228. var vMoveNameDone = false;
  229. for (x = 0; vMoveNameDone === false; x++) {
  230. vMoveNameArray[x] = sys.move(x);
  231. if (vMoveNameArray[x] === undefined) {
  232. vMoveNameDone = true;
  233. // REMOVE FIRST ENTRY(No Move)
  234. vMoveNameArray.shift();
  235. // REMOVE LAST ENTRY undefined
  236. vMoveNameArray.pop();
  237. }
  238. }
  239. // GET RANDOM MOVE FROM THE MOVE ARRAY
  240. var vRngMove = vMoveNameArray[Math.floor((Math.random() * vMoveNameArray.length) + 0)];
  241. // GENERATE RANDOM DAMAGE
  242. var vRngDamage = Math.floor((Math.random() * 100) + 0);
  243. // SEND MESSAGE
  244. client.network().sendChanMessage(channel, "/me " + vUserSentName + " threw " + vCommandData + "!");
  245. return;
  246. }
  247.  
  248. // === PUT YOUR RESPOND BOTS ABOVE HERE ===
  249. } // END OF BOTS
  250. }
  251. } // END OF beforeChannelMessage
  252. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement