Advertisement
cgm2k7

npc_auto_equipe.cpp

Oct 15th, 2014
474
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 28.45 KB | None | 0 0
  1. #include "ScriptPCH.h"
  2. #include "npc_auto_equipe.h"
  3.  
  4. class npc_auto_equipe : public CreatureScript
  5. {
  6. public:
  7.     npc_auto_equipe() : CreatureScript("npc_auto_equipe") {}
  8.  
  9.     bool OnGossipHello(Player* player, Creature* creature)
  10.     {
  11.         player->PlayerTalkClass->ClearMenus();
  12.         if (player->IsInCombat())
  13.         {
  14.             player->CLOSE_GOSSIP_MENU();
  15.             ChatHandler(player->GetSession()).SendSysMessage("|cffFF0000Voce esta em combate!|r");
  16.             return true;
  17.         }
  18.         else{
  19.             player->ADD_GOSSIP_ITEM(0, "|TInterface\\icons\\Achievement_BG_winAV_bothmines:18:18:-18:0|t|cffFF0000Equipar Automaticamente", GOSSIP_SENDER_MAIN, MENU_VOLTAR);
  20.  
  21.             player->ADD_GOSSIP_ITEM(5, "|cff008B8B|TInterface\\icons\\INV_Fabric_Netherweave:40|tEquipar Automaticamente|r", GOSSIP_SENDER_MAIN, MENU_EQUIPAR_ITEM_AUTOMATICOS);
  22.             player->ADD_GOSSIP_ITEM(5, "|cff1C1C1C|TInterface\\icons\\INV_Fabric_Frostweave_ImbuedBolt:40|tAplicar Talentos Automatico e\n Equipar Automaticamente|r", GOSSIP_SENDER_MAIN, AUTO_TALENTOS_MENU);
  23.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de Classes", GOSSIP_SENDER_MAIN, MENUTRENADOR);
  24.             player->ADD_GOSSIP_ITEM(2, "|cffFF0000|TInterface\\icons\\Ability_Hunter_MarkedForDeath:40|t Sair", GOSSIP_SENDER_MAIN, MENU_SAIR);
  25.  
  26.             player->SEND_GOSSIP_MENU(1, creature->GetGUID());
  27.             player->PlayerTalkClass->SendGossipMenu(99999, creature->GetGUID());
  28.             return true;
  29.         }
  30.     }
  31.     void MenuAutoTalent(Player* player, Creature* creature /*uint32 acao*/) // menu de talentos
  32.     {
  33.         player->PlayerTalkClass->ClearMenus();
  34.         switch (player->getClass())
  35.         {
  36.         case CLASS_WARRIOR:
  37.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Ability_Rogue_Eviscerate:40|t Arms",
  38.                 GOSSIP_SENDER_MAIN, SKILL_ARMS, "Tem certza que quer equipar automaticamente \ne atribuir Talents Arms?\n\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  39.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Ability_Warrior_InnerRage:40|t Fury",
  40.                 GOSSIP_SENDER_MAIN, SKILL_FURY, "Tem certza que quer equipar automaticamente \ne atribuir Talents Fury?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  41.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Ability_Warrior_DefensiveStance:40|t Protection",
  42.                 GOSSIP_SENDER_MAIN, SKILL_PROTECTION, "Tem certza que quer equipar automaticamente \ne atribuir Talents Protection?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  43.  
  44.             break;
  45.         case CLASS_PRIEST: // Prieste é SKILL_HOLY e Paladin SKILL_HOLY2
  46.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Holy_WordFortitude:40|t Dicipline",
  47.                 GOSSIP_SENDER_MAIN, SKILL_DISCIPLINE, "Tem certza que quer equipar automaticamente \ne atribuir Talents Dicipline?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  48.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Holy_GuardianSpirit:40|t Hole",
  49.                 GOSSIP_SENDER_MAIN, SKILL_HOLY, "Tem certza que quer equipar automaticamente \ne atribuir Talents Hole?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  50.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Shadow_DemonicEmpathy:40|t Shadow",
  51.                 GOSSIP_SENDER_MAIN, SKILL_SHADOW, "Tem certza que quer equipar automaticamente \ne atribuir Talents Shadow?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  52.  
  53.             break;
  54.         case CLASS_DRUID:
  55.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Nature_StarFall:40|t Balance",
  56.                 GOSSIP_SENDER_MAIN, SKILL_BALANCE, "Tem certza que quer equipar automaticamente \ne atribuir Talents Balance?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  57.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Nature_GiftoftheWaterSpirit:40|t Feral",
  58.                 GOSSIP_SENDER_MAIN, SKILL_FERAL_COMBAT, "Tem certza que quer equipar automaticamente \ne atribuir Talents Feral?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  59.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\spell_nature_healingtouch:40|t Restoration",
  60.                 GOSSIP_SENDER_MAIN, SKILL_RESTORATION2, "Tem certza que quer equipar automaticamente \ne atribuir Talents Restoration?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  61.  
  62.             break;
  63.         case CLASS_DEATH_KNIGHT:
  64.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Deathknight_BloodPresence:40|t Blood",
  65.                 GOSSIP_SENDER_MAIN, SKILL_DK_BLOOD, "Tem certza que quer equipar automaticamente \ne atribuir Talents Blood?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  66.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Deathknight_FrostPresence:40|t Frost",
  67.                 GOSSIP_SENDER_MAIN, SKILL_DK_FROST, "Tem certza que quer equipar automaticamente \ne atribuir Talents Forst?\n |cffFFFFFF0Voce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  68.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Deathknight_UnholyPresence:40|t Unholy",
  69.                 GOSSIP_SENDER_MAIN, SKILL_DK_UNHOLY, "Tem certza que quer equipar automaticamente \ne atribuir Talents Unholy?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  70.  
  71.             break;
  72.         case CLASS_MAGE:
  73.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Holy_ArcaneIntellect:40|t Arcane",
  74.                 GOSSIP_SENDER_MAIN, SKILL_ARCANE, "Tem certza que quer equipar automaticamente \ne atribuir Talents Arcane?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  75.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Fire_FireBolt02:40|t Fire",
  76.                 GOSSIP_SENDER_MAIN, SKILL_FIRE, "Tem certza que quer equipar automaticamente \ne atribuir Talents Fire?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  77.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Frost_FrostBolt02:40|t Frost",
  78.                 GOSSIP_SENDER_MAIN, SKILL_FROST, "Tem certza que quer equipar automaticamente \ne atribuir Talents Frost?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  79.  
  80.             break;
  81.         case CLASS_HUNTER:
  82.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\ability_hunter_beasttaming:40|t Beast Master",
  83.                 GOSSIP_SENDER_MAIN, SKILL_BEAST_MASTERY, "Tem certza que quer equipar automaticamente \ne atribuir Talents Fury?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  84.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\ability_hunter_rapidregeneration:40|t Marksmanship",
  85.                 GOSSIP_SENDER_MAIN, SKILL_MARKSMANSHIP, "Tem certza que quer equipar automaticamente \ne atribuir Talents Marksmanship?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  86.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_DeathKnight_Butcher:40|t Survival",
  87.                 GOSSIP_SENDER_MAIN, SKILL_SURVIVAL, "Tem certza que quer equipar automaticamente \ne atribuir Talents Survival?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  88.  
  89.             break;
  90.         case CLASS_PALADIN:
  91.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\spell_holy_holybolt:40|t Holy",
  92.                 GOSSIP_SENDER_MAIN, SKILL_HOLY2, "Tem certza que quer equipar automaticamente \ne atribuir Talents Holy?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  93.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\SPELL_HOLY_DEVOTIONAURA:40|t Protection",
  94.                 GOSSIP_SENDER_MAIN, SKILL_PROTECTION2, "Tem certza que quer equipar automaticamente \ne atribuir Talents Protection?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  95.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Holy_AuraOfLight:40|t Retribution",
  96.                 GOSSIP_SENDER_MAIN, SKILL_RETRIBUTION, "Tem certza que quer equipar automaticamente \ne atribuir Talents Retribution?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  97.  
  98.             break;
  99.         case CLASS_ROGUE:
  100.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Ability_Rogue_Eviscerate:40|t Assassination",
  101.                 GOSSIP_SENDER_MAIN, SKILL_ASSASSINATION, "Tem certza que quer equipar automaticamente \ne atribuir Talents Assassination?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  102.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\ability_backstab:40|t Combat",
  103.                 GOSSIP_SENDER_MAIN, SKILL_COMBAT, "Tem certza que quer equipar automaticamente \ne atribuir Talents Combat?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  104.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Ability_Stealth:40|t Subtlety",
  105.                 GOSSIP_SENDER_MAIN, SKILL_SUBTLETY, "Tem certza que quer equipar automaticamente \ne atribuir Talents Subtlety?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  106.  
  107.             break;
  108.         case CLASS_SHAMAN:
  109.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\spell_nature_stormreach:40|t Elemental",
  110.                 GOSSIP_SENDER_MAIN, SKILL_ELEMENTAL_COMBAT, "Tem certza que quer equipar automaticamente \ne atribuir Talents Elemental?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  111.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Nature_LightningShield:40|t Enhancement",
  112.                 GOSSIP_SENDER_MAIN, SKILL_ENHANCEMENT, "Tem certza que quer equipar automaticamente \ne atribuir Talents Enhancement?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  113.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\spell_nature_healingwavelesser:40|t Restoration",
  114.                 GOSSIP_SENDER_MAIN, SKILL_RESTORATION, "Tem certza que quer equipar automaticamente \ne atribuir Talents Restoration?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  115.  
  116.             break;
  117.         case CLASS_WARLOCK:
  118.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Shadow_DeathCoil:40|t Affliction",
  119.                 GOSSIP_SENDER_MAIN, SKILL_AFFLICTION, "Tem certza que quer equipar automaticamente \ne atribuir Talents Affliction?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  120.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\Spell_Shadow_Metamorphosis:40|t Demonology",
  121.                 GOSSIP_SENDER_MAIN, SKILL_DEMONOLOGY, "Tem certza que quer equipar automaticamente \ne atribuir Talents Demonology?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  122.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\spell_shadow_rainoffire:40|t Destrution",
  123.                 GOSSIP_SENDER_MAIN, SKILL_DESTRUCTION, "Tem certza que quer equipar automaticamente \ne atribuir Talents Destrution?\n |cffFFFFFFVoce sera relogado automaticamente para atualizar seus status.!|r", 0, false);
  124.  
  125.             break;
  126.         }
  127.         player->ADD_GOSSIP_ITEM(2, "|cff0000FF|TInterface\\icons\\Achievement_bg_winbyten:30|t <<Voltar|r", GOSSIP_SENDER_MAIN, MENU_VOLTAR);
  128.         player->ADD_GOSSIP_ITEM(2, "|cffFF0000|TInterface\\icons\\Ability_Hunter_MarkedForDeath:40|t Sair", GOSSIP_SENDER_MAIN, MENU_SAIR);
  129.         player->SEND_GOSSIP_MENU(1, creature->GetGUID());
  130.         player->PlayerTalkClass->SendGossipMenu(9999, creature->GetGUID());
  131.         return;
  132.     }
  133.     void MenuAutoEquipe(Player* player, Creature* creature, uint32 menuClass, uint32 acao)
  134.     {
  135.         player->PlayerTalkClass->ClearMenus();
  136.         switch (player->getClass())
  137.         {
  138.         case CLASS_WARRIOR:
  139.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_plate_23:40|t"+Arena_Season_Name,
  140.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585"+Arena_Season_Name+"|r", 0, false);
  141.             break;
  142.         case CLASS_PRIEST: // Prieste é SKILL_HOLY e Paladin SKILL_HOLY2
  143.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_cloth_75:40|t" + Arena_Season_Name,
  144.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  145.             break;
  146.         case CLASS_DRUID:
  147.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_leather_16:40|t" + Arena_Season_Name,
  148.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  149.             break;
  150.         case CLASS_DEATH_KNIGHT:
  151.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_plate_23:40|t" + Arena_Season_Name,
  152.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  153.             break;
  154.         case CLASS_MAGE:
  155.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_cloth_75:40|t" + Arena_Season_Name,
  156.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  157.             break;
  158.         case CLASS_HUNTER:
  159.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_mail_03:40|t" + Arena_Season_Name,
  160.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  161.             break;
  162.         case CLASS_PALADIN:
  163.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_plate_23:40|t" + Arena_Season_Name,
  164.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  165.             break;
  166.         case CLASS_ROGUE:
  167.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_leather_16:40|t" + Arena_Season_Name,
  168.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  169.             break;
  170.         case CLASS_SHAMAN:
  171.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_mail_03:40|t" + Arena_Season_Name,
  172.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  173.             break;
  174.         case CLASS_WARLOCK:
  175.             player->ADD_GOSSIP_ITEM_EXTENDED(5, "|cffFF0000|TInterface\\icons\\inv_chest_cloth_75:40|t" + Arena_Season_Name,
  176.                 GOSSIP_SENDER_MAIN, EQUIPAR_ITEM_AUTOMATICOS, "Tem certza que quer equipar automaticamente \n\n|cffC71585" + Arena_Season_Name + "|r", 0, false);
  177.             break;
  178.         }
  179.         player->ADD_GOSSIP_ITEM(2, "|cff0000FF|TInterface\\icons\\Achievement_bg_winbyten:30|t <<Voltar|r", GOSSIP_SENDER_MAIN, MENU_VOLTAR);
  180.         player->ADD_GOSSIP_ITEM(2, "|cffFF0000|TInterface\\icons\\Ability_Hunter_MarkedForDeath:40|t Sair", GOSSIP_SENDER_MAIN, MENU_SAIR);
  181.         player->SEND_GOSSIP_MENU(1, creature->GetGUID());
  182.         player->PlayerTalkClass->SendGossipMenu(9999, creature->GetGUID());
  183.         return;
  184.     }
  185.     void ShoWMenuTrenador(Player* player, Creature* creature, uint32 menuClass, uint32 acao) //Menu trainer
  186.     {
  187.         player->PlayerTalkClass->ClearMenus();
  188.         switch (player->getClass())
  189.         {
  190.         case CLASS_WARRIOR:
  191.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\ability_warrior_warcry:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  192.             break;
  193.         case CLASS_DEATH_KNIGHT:
  194.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\inv_sword_62:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  195.             break;
  196.         case CLASS_DRUID:
  197.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\ability_druid_flightform:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  198.             break;
  199.         case CLASS_HUNTER:
  200.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\ability_hunter_beasttaming:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  201.             break;
  202.         case CLASS_MAGE:
  203.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\spell_arcane_portalironforge:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  204.             break;
  205.         case CLASS_PALADIN:
  206.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\spell_holy_crusaderstrike:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  207.             break;
  208.         case CLASS_PRIEST:
  209.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\spell_holy_powerwordshield:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  210.             break;
  211.         case CLASS_ROGUE:
  212.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\ability_stealth:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  213.             break;
  214.         case CLASS_SHAMAN:
  215.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\spell_nature_bloodlust:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  216.             break;
  217.         case CLASS_WARLOCK:
  218.             player->ADD_GOSSIP_ITEM(3, "|cff191970|TInterface\\icons\\Spell_Shadow_TwistedFaith:30|t Trenador de classes|r   |cff000000|TInterface\\icons\\spell_shadow_possession:30|t", GOSSIP_SENDER_MAIN, TRENADORCLASS);
  219.             break;
  220.         }
  221.         if (TIPO_DE_TRENADOR_ORIGINAL == 1)
  222.             player->ADD_GOSSIP_ITEM(3, "|cffFF0000|TInterface\\icons\\Mail_GMIcon:30|t Trenadores Originais|r", GOSSIP_SENDER_MAIN, MENU_TRENADOR_SPELLSUMMON); //não requer script multiTrainer
  223.  
  224.         if (TIPO_DE_TRENADOR_ORIGINAL == 2)
  225.             player->ADD_GOSSIP_ITEM(3, "|cffFF0000|TInterface\\icons\\Ability_Vehicle_LaunchPlayer:30|t Trenadores Originais|r", GOSSIP_SENDER_MAIN, MENU_TRENADOR_ORIGINAL); //requer script muitTrainer
  226.             player->ADD_GOSSIP_ITEM_EXTENDED(3, "|cffCD2626|TInterface\\icons\\Ability_DualWield:30|t Especializacao Talentos Duplos|r", GOSSIP_SENDER_MAIN, DUAL_TELENTS, "Voce tem certesa que quer compra\nEspecializacao Telentos Duplos\n", 3 * GOLD, false);
  227.             player->ADD_GOSSIP_ITEM(2, "|cffFF0000|TInterface\\icons\\INV_Inscription_MinorGlyph20:30|t Comprar Glyphs|r", GOSSIP_SENDER_MAIN, GLYPH_NPC_MENU);
  228.        
  229.             //      player->ADD_GOSSIP_ITEM_EXTENDED(10, "|cffFF0000|TInterface\\icons\\INV_Jewelry_FrostwolfTrinket_01:30|t Reste total Level 80", GOSSIP_SENDER_MAIN, RESTAR_LEVEL80, "ALERTA!\nSera restado ate ao level 1", 0, false);
  230.             player->ADD_GOSSIP_ITEM(32, "|cffFF0000|TInterface\\icons\\Achievement_BG_hld4bases_EOS:40|t Resetar Talentos", GOSSIP_SENDER_MAIN, RESET_TALENTOS);
  231.             player->ADD_GOSSIP_ITEM(2, "|cff0000FF|TInterface\\icons\\Achievement_bg_winbyten:30|t <<Voltar|r", GOSSIP_SENDER_MAIN, MENU_VOLTAR);
  232.             player->ADD_GOSSIP_ITEM(2, "|cffFF0000|TInterface\\icons\\Ability_Hunter_MarkedForDeath:40|t Sair", GOSSIP_SENDER_MAIN, MENU_SAIR);
  233.             player->SEND_GOSSIP_MENU(1, creature->GetGUID());
  234.             player->PlayerTalkClass->SendGossipMenu(9999, creature->GetGUID());
  235.             return;
  236.     }  
  237.     bool OnGossipSelect(Player *player, Creature *creature, uint32  sender, uint32 action)
  238.     {
  239.         player->PlayerTalkClass->ClearMenus();
  240.         switch (action)
  241.         {
  242.             //warrio arms
  243.         case SKILL_ARMS:
  244.             Tipo_de_Talentos = 26;
  245.             player->CLOSE_GOSSIP_MENU();
  246.             creature->CastSpell(player, 26410, false); // Spell só para visual
  247.             ExecutarALLTalentos(player, sender);           
  248.             break;
  249.             //warrio fury
  250.         case SKILL_FURY:
  251.             Tipo_de_Talentos = 256;
  252.             player->CLOSE_GOSSIP_MENU();
  253.             creature->CastSpell(player, 26410, false); // Spell só para visual
  254.             ExecutarALLTalentos(player, sender);
  255.             break;
  256.             //warrios protection
  257.         case SKILL_PROTECTION: // Warrior é Protection
  258.             Tipo_de_Talentos = 257;
  259.             player->CLOSE_GOSSIP_MENU();
  260.             creature->CastSpell(player, 26410, false); // Spell só para visual
  261.             ExecutarALLTalentos(player, sender);
  262.             break;
  263.             //paladin
  264.         case SKILL_HOLY2: // Paladin é SKILL_HOLY2
  265.             Tipo_de_Talentos = 594;
  266.             player->CLOSE_GOSSIP_MENU();
  267.             creature->CastSpell(player, 26410, false); // Spell só para visual
  268.             ExecutarALLTalentos(player, sender);
  269.             break;
  270.             //paladin
  271.         case SKILL_RETRIBUTION:
  272.             Tipo_de_Talentos = 184;
  273.             player->CLOSE_GOSSIP_MENU();
  274.             creature->CastSpell(player, 26410, false); // Spell só para visual
  275.             ExecutarALLTalentos(player, sender);
  276.             break;
  277.             //paladin
  278.         case SKILL_PROTECTION2: // Paladin é Protection2
  279.             Tipo_de_Talentos = 267;
  280.             player->CLOSE_GOSSIP_MENU();
  281.             creature->CastSpell(player, 26410, false); // Spell só para visual
  282.             ExecutarALLTalentos(player, sender);
  283.             break;
  284.             //priest dicipline
  285.         case SKILL_DISCIPLINE:
  286.             Tipo_de_Talentos = 613;
  287.             player->CLOSE_GOSSIP_MENU();
  288.             creature->CastSpell(player, 26410, false); // Spell só para visual
  289.             ExecutarALLTalentos(player, sender);
  290.             break;
  291.             //preiste hole
  292.         case SKILL_HOLY: // Prieste é SKILL_HOLY
  293.             Tipo_de_Talentos = 56;
  294.             player->CLOSE_GOSSIP_MENU();
  295.             creature->CastSpell(player, 26410, false); // Spell só para visual
  296.             ExecutarALLTalentos(player, sender);
  297.             break;
  298.             //prieste shadow
  299.         case SKILL_SHADOW:
  300.             Tipo_de_Talentos = 78;
  301.             player->CLOSE_GOSSIP_MENU();
  302.             creature->CastSpell(player, 26410, false); // Spell só para visual
  303.             ExecutarALLTalentos(player, sender);
  304.             break;
  305.             // druid balance
  306.         case SKILL_BALANCE:
  307.             Tipo_de_Talentos = 574;
  308.             player->CLOSE_GOSSIP_MENU();
  309.             creature->CastSpell(player, 26410, false); // Spell só para visual
  310.             ExecutarALLTalentos(player, sender);
  311.             break;
  312.             // druid feral
  313.         case SKILL_FERAL_COMBAT:
  314.             Tipo_de_Talentos = 134;
  315.             player->CLOSE_GOSSIP_MENU();
  316.             creature->CastSpell(player, 26410, false); // Spell só para visual
  317.             ExecutarALLTalentos(player, sender);
  318.             break;
  319.             // druid restoration
  320.         case SKILL_RESTORATION2: // Druid Restoration2
  321.             Tipo_de_Talentos = 573;
  322.             player->CLOSE_GOSSIP_MENU();
  323.             creature->CastSpell(player, 26410, false); // Spell só para visual
  324.             ExecutarALLTalentos(player, sender);
  325.             break;
  326.             // dk blood
  327.         case SKILL_DK_BLOOD:
  328.             Tipo_de_Talentos = 770;
  329.             player->CLOSE_GOSSIP_MENU();
  330.             creature->CastSpell(player, 26410, false); // Spell só para visual
  331.             ExecutarALLTalentos(player, sender);
  332.             break;
  333.             // dk frost
  334.         case SKILL_DK_FROST:
  335.             Tipo_de_Talentos = 771;
  336.             player->CLOSE_GOSSIP_MENU();
  337.             creature->CastSpell(player, 26410, false); // Spell só para visual
  338.             ExecutarALLTalentos(player, sender);
  339.             break;
  340.             // dk unholy
  341.         case SKILL_DK_UNHOLY:
  342.             Tipo_de_Talentos = 772;
  343.             player->CLOSE_GOSSIP_MENU();
  344.             creature->CastSpell(player, 26410, false); // Spell só para visual
  345.             ExecutarALLTalentos(player, sender);
  346.             break;
  347.             // mage acane
  348.         case SKILL_ARCANE:
  349.             Tipo_de_Talentos = 237;
  350.             player->CLOSE_GOSSIP_MENU();
  351.             creature->CastSpell(player, 26410, false); // Spell só para visual
  352.             ExecutarALLTalentos(player, sender);
  353.             break;
  354.             // mage fire
  355.         case SKILL_FIRE:
  356.             Tipo_de_Talentos = 8;
  357.             player->CLOSE_GOSSIP_MENU();
  358.             creature->CastSpell(player, 26410, false); // Spell só para visual
  359.             ExecutarALLTalentos(player, sender);
  360.             break;
  361.             // mage frost
  362.         case SKILL_FROST:
  363.             Tipo_de_Talentos = 6;
  364.             player->CLOSE_GOSSIP_MENU();
  365.             creature->CastSpell(player, 26410, false); // Spell só para visual
  366.             ExecutarALLTalentos(player, sender);
  367.             break;
  368.             // hunter master
  369.         case SKILL_BEAST_MASTERY:
  370.             Tipo_de_Talentos = 50;
  371.             player->CLOSE_GOSSIP_MENU();
  372.             creature->CastSpell(player, 26410, false); // Spell só para visual
  373.             ExecutarALLTalentos(player, sender);
  374.             break;
  375.             // hunter markshanship
  376.         case SKILL_MARKSMANSHIP:
  377.             Tipo_de_Talentos = 163;
  378.             player->CLOSE_GOSSIP_MENU();
  379.             creature->CastSpell(player, 26410, false); // Spell só para visual
  380.             ExecutarALLTalentos(player, sender);
  381.             break;
  382.             // hunter suvival
  383.         case SKILL_SURVIVAL:
  384.             Tipo_de_Talentos = 51;
  385.             player->CLOSE_GOSSIP_MENU();
  386.             creature->CastSpell(player, 26410, false); // Spell só para visual
  387.             ExecutarALLTalentos(player, sender);
  388.             break;
  389.             //shaman elemental
  390.         case SKILL_ELEMENTAL_COMBAT:
  391.             Tipo_de_Talentos = 375;
  392.             player->CLOSE_GOSSIP_MENU();
  393.             creature->CastSpell(player, 26410, false); // Spell só para visual
  394.             ExecutarALLTalentos(player, sender);
  395.             break;
  396.             // shaman / enchancement
  397.         case SKILL_ENHANCEMENT:
  398.             Tipo_de_Talentos = 373;
  399.             player->CLOSE_GOSSIP_MENU();
  400.             creature->CastSpell(player, 26410, false); // Spell só para visual
  401.             ExecutarALLTalentos(player, sender);
  402.             break;
  403.             // shaman restoration
  404.         case SKILL_RESTORATION: // Shaman é restoration
  405.             Tipo_de_Talentos = 374;
  406.             player->CLOSE_GOSSIP_MENU();
  407.             creature->CastSpell(player, 26410, false); // Spell só para visual
  408.             ExecutarALLTalentos(player, sender);
  409.             break;
  410.             //rogue
  411.         case SKILL_ASSASSINATION:
  412.             Tipo_de_Talentos = 253;
  413.             player->CLOSE_GOSSIP_MENU();
  414.             creature->CastSpell(player, 26410, false); // Spell só para visual
  415.             ExecutarALLTalentos(player, sender);
  416.             break;
  417.             //rogue
  418.         case SKILL_COMBAT:
  419.             Tipo_de_Talentos = 38;
  420.             player->CLOSE_GOSSIP_MENU();
  421.             creature->CastSpell(player, 26410, false); // Spell só para visual
  422.             ExecutarALLTalentos(player, sender);
  423.             break;
  424.             //rogue
  425.         case SKILL_SUBTLETY:
  426.             Tipo_de_Talentos = 39;
  427.             player->CLOSE_GOSSIP_MENU();
  428.             creature->CastSpell(player, 26410, false); // Spell só para visual
  429.             ExecutarALLTalentos(player, sender);
  430.             break;
  431.             //warlock
  432.         case SKILL_AFFLICTION:
  433.             Tipo_de_Talentos = 355;
  434.             player->CLOSE_GOSSIP_MENU();
  435.             creature->CastSpell(player, 26410, false); // Spell só para visual
  436.             ExecutarALLTalentos(player, sender);
  437.             break;
  438.             //warlock
  439.         case SKILL_DEMONOLOGY:
  440.             Tipo_de_Talentos = 354;
  441.             player->CLOSE_GOSSIP_MENU();
  442.             creature->CastSpell(player, 26410, false); // Spell só para visual
  443.             ExecutarALLTalentos(player, sender);
  444.             break;
  445.             //warlock
  446.         case SKILL_DESTRUCTION:
  447.             Tipo_de_Talentos = 593;
  448.             player->CLOSE_GOSSIP_MENU();
  449.             creature->CastSpell(player, 26410, false); // Spell só para visual
  450.             ExecutarALLTalentos(player, sender);
  451.             break;
  452.  
  453.             //====================================
  454.         case MENU_SAIR:
  455.             player->CLOSE_GOSSIP_MENU();
  456.             break;
  457.         case MENU_VOLTAR:
  458.             OnGossipHello(player, creature);
  459.             break;
  460.             //====================================
  461.         case AUTO_TALENTOS_MENU:
  462.             MenuAutoTalent(player, creature);
  463.             break;
  464.  
  465.         case MENUTRENADOR:
  466.             player->CLOSE_GOSSIP_MENU();
  467.             ShoWMenuTrenador(player, creature, sender, action);
  468.             break;
  469.         case TRENADORCLASS:
  470.             player->CLOSE_GOSSIP_MENU();
  471.             creature->CastSpell(player, 26410, false); // Spell só para visual
  472.             TreinadorAutoEquipeAtalho(player, sender);
  473.             break;
  474.  
  475.         case MENU_EQUIPAR_ITEM_AUTOMATICOS:
  476.             player->CLOSE_GOSSIP_MENU();
  477.             MenuAutoEquipe(player, creature, sender, action);
  478.             break;
  479.         case EQUIPAR_ITEM_AUTOMATICOS:
  480.             player->CLOSE_GOSSIP_MENU();
  481.             creature->CastSpell(player, 26410, false); // Spell só para visual
  482.             ExecutarALLItens(player, action);
  483.             break;
  484.  
  485.         case GLYPH_NPC_MENU: //Requer MultiVendor
  486. //          VendedorClyphs(player, creature);
  487.             player->CLOSE_GOSSIP_MENU();
  488.             break;
  489.         case MENU_TRENADOR_ORIGINAL: //requer script muitTrainer
  490.     //      TrenadoresOriginais(player, creature, action);
  491.             player->CLOSE_GOSSIP_MENU();
  492.             break;
  493.         case MENU_TRENADOR_SPELLSUMMON: // Não Requer multiTrainer
  494.             SumonarTrainerPorSpell(player, creature, action);
  495.             player->CLOSE_GOSSIP_MENU();
  496.             break;
  497.  
  498.         case DUAL_TELENTS:
  499.             EspecialzacaoDuelTalents(player);
  500.             break;
  501.         case RESET_TALENTOS:
  502.             RestarTalentos(player, creature);
  503.             break;
  504.         }
  505.         return true; // retornar switch (action)
  506.     }  
  507.  
  508. };
  509.  
  510.  
  511. class PlayerAutoEquipar : public PlayerScript
  512. {
  513. public:
  514.     PlayerAutoEquipar() : PlayerScript("PlayerAutoEquipar") {}
  515.    
  516.     void OnLogin(Player* player, bool)
  517.     {
  518.  
  519.     }
  520.  
  521.    
  522. };
  523.  
  524. void AddSC_npc_auto_equipe()
  525. {
  526.     new npc_auto_equipe();
  527.     new npc_auto_equipe_WorldScript();
  528.     new AutoEquipe_commands();
  529.     //new PlayerAutoEquipar();
  530. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement