Advertisement
Guest User

Untitled

a guest
Jul 28th, 2015
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.75 KB | None | 0 0
  1. // quadral
  2.  
  3. #include "ScriptMgr.h"
  4. #include "ObjectMgr.h"
  5. #include "MapManager.h"
  6. #include "Chat.h"
  7. #include "Group.h"
  8. #include "ArenaTeam.h"
  9. #include "ArenaTeamMgr.h"
  10.  
  11. uint32 auras[] = { 15366, 16609, 48162, 48074, 48170, 43223, 36880, 467, 69994, 33081, 26035, 48469, };
  12.  
  13. //This script is made by Blex and was orginally posted on www.ac-web.org
  14. //This script was created after being inspired by Arena-Tournament's player commands. www.arena-tournament.com
  15. //updated by quadral
  16.  
  17. class utility_commandscript : public CommandScript
  18. {
  19. public:
  20.  
  21.  
  22. utility_commandscript() : CommandScript("utility_commandscript") { }
  23.  
  24. ChatCommand* GetCommands() const
  25. {
  26. static ChatCommand mmrCommandTable[] =
  27. {
  28. { "3v3solo", SEC_PLAYER, false, &HandleMmr3v3SoloCommand, "", NULL },
  29. { "2v2", SEC_PLAYER, false, &HandleMmr2v2Command, "", NULL },
  30. { "3v3", SEC_PLAYER, false, &HandleMmr3v3Command, "", NULL },
  31. { NULL, 0, false, NULL, "", NULL }
  32. };
  33. static ChatCommand morphCommandTable[] =
  34. {
  35. { "TaurenM", SEC_PLAYER, false, &HandlemorphTaurenMCommand, "", NULL },
  36. { "HumanM", SEC_PLAYER, false, &HandlemorphHumanMCommand, "", NULL },
  37. { "HumanF", SEC_PLAYER, false, &HandlemorphHumanFCommand, "", NULL },
  38. { "TaurenF", SEC_PLAYER, false, &HandlemorphTaurenFCommand, "", NULL },
  39. { "BloodM", SEC_PLAYER, false, &HandlemorphBloodMCommand, "", NULL },
  40. { "BloodF", SEC_PLAYER, false, &HandlemorphBloodFCommand, "", NULL },
  41. { "GnomeM", SEC_PLAYER, false, &HandlemorphGnomeMCommand, "", NULL },
  42. { "GnomeF", SEC_PLAYER, false, &HandlemorphGnomeFCommand, "", NULL },
  43.  
  44. { NULL, 0, false, NULL, "", NULL }
  45. };
  46. static ChatCommand demorphCommandTable[] =
  47. {
  48. { "", SEC_PLAYER, false, &HandleDemorphCommand, "", NULL },
  49.  
  50. { NULL, 0, false, NULL, "", NULL }
  51. };
  52. static ChatCommand utilityCommandTable[] =
  53. {
  54. { "changerace", SEC_VIP, false, &HandleChangeRaceCommand, "", NULL },
  55. { "changefaction", SEC_VIP, false, &HandleChangeFactionCommand, "", NULL },
  56. { "maxskills", SEC_VIP, false, &HandleMaxSkillsCommand, "", NULL },
  57. { "customize", SEC_VIP, false, &HandleCustomizeCommand, "", NULL },
  58. { "removeplayers", SEC_ADMINISTRATOR, false, &HandleRemoveFakePlayersCommand, "", NULL },
  59. { "addplayers", SEC_ADMINISTRATOR, false, &HandleAddFakePlayersCommand, "", NULL },
  60. { "buff", SEC_VIP, false, &HandleBuffCommand, "", NULL },
  61. { "mmr", SEC_PLAYER, true, NULL, "", mmrCommandTable },
  62. { "morph", SEC_VIP, true, NULL, "", morphCommandTable },
  63. { "demorph", SEC_VIP, true, NULL, "", demorphCommandTable },
  64.  
  65.  
  66. { NULL, 0, false, NULL, "", NULL }
  67. };
  68.  
  69. static ChatCommand commandTable[] =
  70. {
  71. { "utility", SEC_PLAYER, true, NULL, "", utilityCommandTable },
  72.  
  73. { "online", SEC_ADMINISTRATOR, false, &HandleOnlinePlayersCommand, "", NULL },
  74. { NULL, 0, false, NULL, "", NULL }
  75. };
  76. return commandTable;
  77. }
  78.  
  79. static bool HandleOnlinePlayersCommand(ChatHandler* handler, const char* args)
  80. {
  81. // Shows the actual online players if the fake online players script is turned on
  82. QueryResult select = CharacterDatabase.PQuery("SELECT COUNT(*) FROM characters WHERE online = '1';");
  83.  
  84. if (!select) // Just in case
  85. {
  86. handler->PSendSysMessage("Something went wrong!");
  87. return false;
  88. }
  89.  
  90. Field* fields = select->Fetch();
  91. uint32 onPlayers = fields[0].GetUInt32(); // counter
  92. handler->PSendSysMessage("Online Players: %u", onPlayers);
  93. return true;
  94. }
  95. static bool HandleBuffCommand(ChatHandler * handler, const char * args)
  96. {
  97. Player * me = handler->GetSession()->GetPlayer();
  98. if (me->InArena())
  99. {
  100. me->GetSession()->SendNotification("You cannot buff in arena match!");
  101. return false;
  102. }
  103. Player * player = handler->GetSession()->GetPlayer();
  104. if (player->IsInCombat())
  105. {
  106. player->GetSession()->SendNotification("You're in combat!");
  107. return false;
  108. }
  109.  
  110. if (!player->IsAlive())
  111. {
  112. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  113. return false;
  114. }
  115.  
  116. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  117. player->CastSpell(player, 48102, true); // Stamina
  118. player->CastSpell(player, 48073, true); // Divine Spirit
  119. player->CastSpell(player, 48169, true); // Shadow Protection
  120. player->CastSpell(player, 48161, true); // PW:F
  121. player->CastSpell(player, 20217, true); // Blessing of Kings
  122. player->CastSpell(player, 42995, true); // Arcane Intellect
  123. player->CastSpell(player, 48469, true); // Mark of the Wild
  124. player->CastSpell(player, 69994, true); // Brilliance
  125. player->CastSpell(player, 33081, true); // Stamina
  126. player->CastSpell(player, 26035, true); // Celebrate good times
  127. player->CastSpell(player, 51193, true); // Aura Flame Shield
  128.  
  129. handler->PSendSysMessage("You're buffed now!");
  130. return true;
  131. }
  132.  
  133. static bool HandlemorphTaurenFCommand(ChatHandler* handler, const char* args)
  134. {
  135. Player * me = handler->GetSession()->GetPlayer();
  136. if (me->InArena())
  137. {
  138. me->GetSession()->SendNotification("You cannot buff in arena match!");
  139. return false;
  140. }
  141. Player * player = handler->GetSession()->GetPlayer();
  142. if (player->IsInCombat())
  143. {
  144. player->GetSession()->SendNotification("You're in combat!");
  145. return false;
  146. }
  147.  
  148. if (!player->IsAlive())
  149. {
  150. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  151. return false;
  152. }
  153.  
  154. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  155. me->RemoveAura(37810); // Tauren Male
  156. me->RemoveAura(37809); // Gnome Female
  157. me->RemoveAura(37808); // Gnome Male
  158. me->RemoveAura(37806); // Blood Elf Female
  159. me->RemoveAura(37807); // Blood Elf Male
  160. me->RemoveAura(37805); // Human Female
  161. me->RemoveAura(35466); // Human Male
  162. player->CastSpell(player, 37811, false); // Turns player into tauren.
  163. handler->PSendSysMessage("You're a Tauren!");
  164. return true;
  165. }
  166.  
  167. static bool HandlemorphGnomeFCommand(ChatHandler* handler, const char* args)
  168. {
  169. Player * me = handler->GetSession()->GetPlayer();
  170. if (me->InArena())
  171. {
  172. me->GetSession()->SendNotification("You cannot buff in arena match!");
  173. return false;
  174. }
  175. Player * player = handler->GetSession()->GetPlayer();
  176. if (player->IsInCombat())
  177. {
  178. player->GetSession()->SendNotification("You're in combat!");
  179. return false;
  180. }
  181.  
  182. if (!player->IsAlive())
  183. {
  184. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  185. return false;
  186. }
  187.  
  188. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  189. me->RemoveAura(37810); // Tauren Male
  190. me->RemoveAura(37811); // Tauren Female
  191. me->RemoveAura(37808); // Gnome Male
  192. me->RemoveAura(37806); // Blood Elf Female
  193. me->RemoveAura(37807); // Blood Elf Male
  194. me->RemoveAura(37805); // Human Female
  195. me->RemoveAura(35466); // Human Male
  196. player->CastSpell(player, 37809, false); // Turns player into tauren.
  197. handler->PSendSysMessage("You're a Gnome!");
  198. return true;
  199. }
  200.  
  201. static bool HandlemorphGnomeMCommand(ChatHandler* handler, const char* args)
  202. {
  203. Player * me = handler->GetSession()->GetPlayer();
  204. if (me->InArena())
  205. {
  206. me->GetSession()->SendNotification("You cannot buff in arena match!");
  207. return false;
  208. }
  209. Player * player = handler->GetSession()->GetPlayer();
  210. if (player->IsInCombat())
  211. {
  212. player->GetSession()->SendNotification("You're in combat!");
  213. return false;
  214. }
  215.  
  216. if (!player->IsAlive())
  217. {
  218. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  219. return false;
  220. }
  221.  
  222. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  223. me->RemoveAura(37810); // Tauren Male
  224. me->RemoveAura(37811); // Tauren Female
  225. me->RemoveAura(37806); // Blood Elf Female
  226. me->RemoveAura(37807); // Blood Elf Male
  227. me->RemoveAura(37805); // Human Female
  228. me->RemoveAura(35466); // Human Male
  229. player->CastSpell(player, 37808, false); // Turns player into Gnome
  230. handler->PSendSysMessage("You're a Gnome!");
  231. return true;
  232. }
  233. static bool HandlemorphBloodFCommand(ChatHandler* handler, const char* args)
  234. {
  235. Player * me = handler->GetSession()->GetPlayer();
  236. if (me->InArena())
  237. {
  238. me->GetSession()->SendNotification("You cannot buff in arena match!");
  239. return false;
  240. }
  241. Player * player = handler->GetSession()->GetPlayer();
  242. if (player->IsInCombat())
  243. {
  244. player->GetSession()->SendNotification("You're in combat!");
  245. return false;
  246. }
  247.  
  248. if (!player->IsAlive())
  249. {
  250. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  251. return false;
  252. }
  253. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  254. me->RemoveAura(37810); // Tauren Male
  255. me->RemoveAura(37811); // Tauren Female
  256. me->RemoveAura(37808); // Gnome Male
  257. me->RemoveAura(37807); // Blood Elf Male
  258. me->RemoveAura(37805); // Human Female
  259. me->RemoveAura(35466); // Human Male
  260. player->CastSpell(player, 37806, false); // Turns player into Bloodelf
  261. handler->PSendSysMessage("You're a BloodElf!");
  262. return true;
  263. }
  264.  
  265. static bool HandlemorphBloodMCommand(ChatHandler* handler, const char* args)
  266. {
  267. Player * me = handler->GetSession()->GetPlayer();
  268. if (me->InArena())
  269. {
  270. me->GetSession()->SendNotification("You cannot buff in arena match!");
  271. return false;
  272. }
  273. Player * player = handler->GetSession()->GetPlayer();
  274. if (player->IsInCombat())
  275. {
  276. player->GetSession()->SendNotification("You're in combat!");
  277. return false;
  278. }
  279.  
  280. if (!player->IsAlive())
  281. {
  282. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  283. return false;
  284. }
  285.  
  286. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  287. me->RemoveAura(37810); // Tauren Male
  288. me->RemoveAura(37811); // Tauren Female
  289. me->RemoveAura(37808); // Gnome Male
  290. me->RemoveAura(37809); // Gnome Female
  291. me->RemoveAura(37806); // Blood Elf Female
  292. me->RemoveAura(37805); // Human Female
  293. me->RemoveAura(35466); // Human Male
  294. player->CastSpell(player, 37807, false); // Turns player into Bloodelf
  295. handler->PSendSysMessage("You're a Bloodelf!");
  296. return true;
  297. }
  298.  
  299. static bool HandlemorphHumanMCommand(ChatHandler* handler, const char* args)
  300. {
  301. Player * me = handler->GetSession()->GetPlayer();
  302. if (me->InArena())
  303. {
  304. me->GetSession()->SendNotification("You cannot buff in arena match!");
  305. return false;
  306. }
  307. Player * player = handler->GetSession()->GetPlayer();
  308. if (player->IsInCombat())
  309. {
  310. player->GetSession()->SendNotification("You're in combat!");
  311. return false;
  312. }
  313.  
  314. if (!player->IsAlive())
  315. {
  316. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  317. return false;
  318. }
  319.  
  320. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  321. me->RemoveAura(37810); // Tauren Male
  322. me->RemoveAura(37811); // Tauren Female
  323. me->RemoveAura(37808); // Gnome Male
  324. me->RemoveAura(37809); // Gnome Female
  325. me->RemoveAura(37806); // Blood Elf Female
  326. me->RemoveAura(37807); // Blood Elf Male
  327. me->RemoveAura(37805); // Human Female
  328. player->CastSpell(player, 35466, false); // Turns player into Human
  329. handler->PSendSysMessage("You're a Human!");
  330. return true;
  331. }
  332.  
  333. static bool HandlemorphHumanFCommand(ChatHandler* handler, const char* args)
  334. {
  335. Player * me = handler->GetSession()->GetPlayer();
  336. if (me->InArena())
  337. {
  338. me->GetSession()->SendNotification("You cannot buff in arena match!");
  339. return false;
  340. }
  341. Player * player = handler->GetSession()->GetPlayer();
  342. if (player->IsInCombat())
  343. {
  344. player->GetSession()->SendNotification("You're in combat!");
  345. return false;
  346. }
  347.  
  348. if (!player->IsAlive())
  349. {
  350. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  351. return false;
  352. }
  353.  
  354. me->RemoveAurasByType(SPELL_AURA_MOUNTED);
  355. me->RemoveAura(37810); // Tauren Male
  356. me->RemoveAura(37811); // Tauren Female
  357. me->RemoveAura(37808); // Gnome Male
  358. me->RemoveAura(37809); // Gnome Female
  359. me->RemoveAura(37806); // Blood Elf Female
  360. me->RemoveAura(37807); // Blood Elf Male
  361. me->RemoveAura(35466); // Human Male
  362. player->CastSpell(player, 37805, false); // Turns player into Human.
  363. handler->PSendSysMessage("You're a Human!");
  364. return true;
  365. }
  366.  
  367. static bool HandlemorphTaurenMCommand(ChatHandler* handler, const char* args)
  368. {
  369. Player * me = handler->GetSession()->GetPlayer();
  370. if (me->InArena())
  371. {
  372. me->GetSession()->SendNotification("You cannot buff in arena match!");
  373. return false;
  374. }
  375. Player * player = handler->GetSession()->GetPlayer();
  376. if (player->IsInCombat())
  377. {
  378. player->GetSession()->SendNotification("You're in combat!");
  379. return false;
  380. }
  381.  
  382. if (!player->IsAlive())
  383. {
  384. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  385. return false;
  386. }
  387. me->RemoveAura(37811); // Tauren Female
  388. me->RemoveAura(37808); // Gnome Male
  389. me->RemoveAura(37809); // Gnome Female
  390. me->RemoveAura(37806); // Blood Elf Female
  391. me->RemoveAura(37807); // Blood Elf Male
  392. me->RemoveAura(37805); // Human Female
  393. me->RemoveAura(35466); // Human Male
  394. player->CastSpell(player, 37810, false); // Turns player into tauren.
  395. handler->PSendSysMessage("You're a Tauren!");
  396. return true;
  397. }
  398. static bool HandleDemorphCommand(ChatHandler* handler, const char* args)
  399. {
  400. Player * me = handler->GetSession()->GetPlayer();
  401. if (me->InArena())
  402. {
  403. me->GetSession()->SendNotification("You cannot buff in arena match!");
  404. return false;
  405. }
  406. Player * player = handler->GetSession()->GetPlayer();
  407. if (player->IsInCombat())
  408. {
  409. player->GetSession()->SendNotification("You're in combat!");
  410. return false;
  411. }
  412.  
  413. if (!player->IsAlive())
  414. {
  415. player->GetSession()->SendAreaTriggerMessage("You are dead.");
  416. return false;
  417. }
  418. me->RemoveAura(37811); // Tauren Female
  419. me->RemoveAura(37810); // Tauren Male
  420. me->RemoveAura(37808); // Gnome Male
  421. me->RemoveAura(37809); // Gnome Female
  422. me->RemoveAura(37806); // Blood Elf Female
  423. me->RemoveAura(37807); // Blood Elf Male
  424. me->RemoveAura(37805); // Human Female
  425. me->RemoveAura(35466); // Human Male
  426. handler->PSendSysMessage("All Morphs removed.");
  427. return true;
  428. }
  429. static bool HandleRemoveFakePlayersCommand(ChatHandler* handler, const char* args)
  430. {
  431. CharacterDatabase.PExecute("UPDATE characters SET online = '0' WHERE online = '2';");
  432. handler->PSendSysMessage("Fake players removed from the realm.");
  433. return true;
  434. }
  435. static bool HandleAddFakePlayersCommand(ChatHandler* handler, const char* args)
  436. {
  437. uint8 randomizer = urand(1, 3);
  438.  
  439. switch (randomizer)
  440. {
  441. case 1:
  442. CharacterDatabase.PExecute("UPDATE characters SET online = '2' WHERE guid > '31000' and guid < '31200';");
  443. handler->PSendSysMessage("Fake players (31000 - 31200) inserted to the realm.");
  444. break;
  445. case 2:
  446. CharacterDatabase.PExecute("UPDATE characters SET online = '2' WHERE guid > '32000' and guid < '32200';");
  447. handler->PSendSysMessage("Fake players (32000 - 32200) inserted to the realm.");
  448. break;
  449. case 3:
  450. CharacterDatabase.PExecute("UPDATE characters SET online = '2' WHERE guid > '33000' and guid < '33200';");
  451. handler->PSendSysMessage("Fake players (33000 - 33200) inserted to the realm.");
  452. break;
  453. }
  454. return true;
  455. }
  456.  
  457. static bool HandleChangeRaceCommand(ChatHandler* handler, const char* args)
  458. {
  459.  
  460. Player* me = handler->GetSession()->GetPlayer();
  461. me->SetAtLoginFlag(AT_LOGIN_CHANGE_RACE);
  462. handler->PSendSysMessage("Relog to change race of your character.");
  463. return true;
  464. }
  465.  
  466. static bool HandleChangeFactionCommand(ChatHandler* handler, const char* args)
  467. {
  468.  
  469. Player* me = handler->GetSession()->GetPlayer();
  470. me->SetAtLoginFlag(AT_LOGIN_CHANGE_FACTION);
  471. handler->PSendSysMessage("Relog to change faction of your character.");
  472. return true;
  473. }
  474.  
  475. static bool HandleMaxSkillsCommand(ChatHandler* handler, const char* args)
  476. {
  477.  
  478. Player* me = handler->GetSession()->GetPlayer();
  479. me->UpdateSkillsForLevel();
  480. handler->PSendSysMessage("Your weapon skills are now maximized.");
  481. return true;
  482. }
  483.  
  484. static bool HandleCustomizeCommand(ChatHandler* handler, const char* args)
  485. {
  486.  
  487. Player* me = handler->GetSession()->GetPlayer();
  488. me->SetAtLoginFlag(AT_LOGIN_CUSTOMIZE);
  489. handler->PSendSysMessage("Relog to customize your character.");
  490. return true;
  491. }
  492. static bool HandleMmr3v3SoloCommand(ChatHandler* handler, const char* args)
  493. {
  494. Player* pPlayer = handler->GetSession()->GetPlayer();
  495. QueryResult select3v3Solommr = CharacterDatabase.PQuery("SELECT matchMakerRating FROM character_arena_stats WHERE guid = '%u' AND slot = '2'", pPlayer->GetGUID());
  496.  
  497. if (!select3v3Solommr)
  498. {
  499. handler->PSendSysMessage("Your MMR in 3vs3 Solo bracket is: 1500.");
  500. return true;
  501. }
  502.  
  503. Field* fields = select3v3Solommr->Fetch();
  504. uint32 mmr3v3Solo = fields[0].GetUInt32();
  505.  
  506. handler->PSendSysMessage("Your MMR in 3vs3 Solo bracket is: %u.", mmr3v3Solo);
  507. return true;
  508. }
  509.  
  510. static bool HandleMmr2v2Command(ChatHandler* handler, const char* args)
  511. {
  512. Player* pPlayer = handler->GetSession()->GetPlayer();
  513. QueryResult select2v2mmr = CharacterDatabase.PQuery("SELECT matchMakerRating FROM character_arena_stats WHERE guid = '%u' AND slot = '0'", pPlayer->GetGUID());
  514.  
  515. if (!select2v2mmr)
  516. {
  517. handler->PSendSysMessage("Your MMR in 2vs2 bracket is: 1500.");
  518. return true;
  519. }
  520.  
  521. Field* fields = select2v2mmr->Fetch();
  522. uint32 mmr2v2 = fields[0].GetUInt32();
  523.  
  524. handler->PSendSysMessage("Your MMR in 2vs2 bracket is: %u.", mmr2v2);
  525. return true;
  526. }
  527.  
  528. static bool HandleMmr3v3Command(ChatHandler* handler, const char* args)
  529. {
  530. Player* pPlayer = handler->GetSession()->GetPlayer();
  531. QueryResult select3v3mmr = CharacterDatabase.PQuery("SELECT matchMakerRating FROM character_arena_stats WHERE guid = '%u' AND slot = '1'", pPlayer->GetGUID());
  532.  
  533. if (!select3v3mmr)
  534. {
  535. handler->PSendSysMessage("Your MMR in 3vs3 bracket is: 1500.");
  536. return true;
  537. }
  538.  
  539. Field* fields = select3v3mmr->Fetch();
  540. uint32 mmr3v3 = fields[0].GetUInt32();
  541.  
  542. handler->PSendSysMessage("Your MMR in 3vs3 bracket is: %u.", mmr3v3);
  543. return true;
  544. }
  545.  
  546. };
  547.  
  548. void AddSC_utility_commandscript()
  549. {
  550. new utility_commandscript();
  551. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement