Advertisement
Valtorei

Welcome NPC

May 9th, 2014
293
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 38.67 KB | None | 0 0
  1. /*
  2. <--------------------------------------------------------------------------->
  3.    - Developer: Valtorei
  4.    - Complete: 100%
  5.    - Scriptname: "Welcome NPC"
  6.    - Revision: 0.0.1
  7.    - Created: 05/05/2014
  8. <--------------------------------------------------------------------------->
  9.    - Credits for the spell list go to whoever typed it up and was leeched upon several times
  10.             All I did was copy your "player->CastSpell" lines and reformated them. Thank you!
  11. */
  12.  
  13. #include "ScriptPCH.h"
  14.  
  15. enum eIcons
  16. {
  17.     GOLD_DOT_ICON   = 0
  18. }
  19.    
  20. class welcome_npc : public CreatureScript
  21. {
  22.     public:
  23.         welcome_npc() : CreatureScript("welcome_npc") { }
  24.        
  25.         bool OnGossipHello(Player* player, Creature* creature)
  26.         {
  27.             player->ADD_GOSSIP_ITEM(GOLD_DOT_ICON, "Class Spells", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
  28.             player->ADD_GOSSIP_ITEM(GOLD_DOT_ICON, "Reset Talents", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2);
  29.            
  30.             player->PlayerTalkClass->SendGossipMenu(1, creature->GetGUID());
  31.             return true;
  32.         }
  33.        
  34.         bool OnGossipSelect(Player* player, Creature* creature, uint32 sender, uint32 action)
  35.         {
  36.             player->PlayerTalkClass->ClearMenus();
  37.        
  38.             switch(uiAction)
  39.             {
  40.                 case GOSSIP_ACTION_INFO_DEF+1:
  41.                
  42.                     // Gives the player their second talent specialization and the ability to switch talent specializations
  43.                     player->CastSpell(player, 63680, true, NULL, NULL, player->GetGUID());
  44.                     player->CastSpell(player, 63624, true, NULL, NULL, player->GetGUID());
  45.            
  46.                     // Gives the player all of their riding skills
  47.                     player->CastSpell(player, 33388, true, NULL, NULL, player->GetGUID());
  48.                     player->CastSpell(player, 33391, true, NULL, NULL, player->GetGUID());
  49.                     player->CastSpell(player, 34090, true, NULL, NULL, player->GetGUID());
  50.                     player->CastSpell(player, 34091, true, NULL, NULL, player->GetGUID());
  51.                     player->CastSpell(player, 54197, true, NULL, NULL, player->GetGUID());
  52.            
  53.                     // Gives players maxskills determined by their level
  54.                     player->UpdateSkillsToMaxSkillsForLevel();
  55.            
  56.                     switch(player->getClass())
  57.                     {
  58.                         // --------- Warrior --------- //
  59.                         case CLASS_WARRIOR:
  60.                             player->learnSpell(7384, false),
  61.                             player->learnSpell(47436, false),
  62.                             player->learnSpell(47450, false),
  63.                             player->learnSpell(11578, false),
  64.                             player->learnSpell(47465, false),
  65.                             player->learnSpell(47502, false),
  66.                             player->learnSpell(34428, false),
  67.                             player->learnSpell(1715, false),
  68.                             player->learnSpell(2687, false),
  69.                             player->learnSpell(71, false),
  70.                             player->learnSpell(7386, false),
  71.                             player->learnSpell(355, false),
  72.                             player->learnSpell(72, false),
  73.                             player->learnSpell(47437, false),
  74.                             player->learnSpell(57823, false),
  75.                             player->learnSpell(694, false),
  76.                             player->learnSpell(2565, false),
  77.                             player->learnSpell(676, false),
  78.                             player->learnSpell(47520, false),
  79.                             player->learnSpell(20230, false),
  80.                             player->learnSpell(12678, false),
  81.                             player->learnSpell(47471, false),
  82.                             player->learnSpell(1161, false),
  83.                             player->learnSpell(871, false),
  84.                             player->learnSpell(2458, false),
  85.                             player->learnSpell(20252, false),
  86.                             player->learnSpell(47475, false),
  87.                             player->learnSpell(18499, false),
  88.                             player->learnSpell(1680, false),
  89.                             player->learnSpell(6552, false),
  90.                             player->learnSpell(47488, false),
  91.                             player->learnSpell(1719, false),
  92.                             player->learnSpell(23920, false),
  93.                             player->learnSpell(47440, false),
  94.                             player->learnSpell(3411, false),
  95.                             player->learnSpell(64382, false),
  96.                             player->learnSpell(55694, false),
  97.                             player->learnSpell(57755, false),
  98.                             player->learnSpell(42459, false),
  99.                             player->learnSpell(750, false),
  100.                             player->learnSpell(5246, false);
  101.                             player->learnSpell(3127, false);
  102.                             player->SaveToDB();
  103.                             player->learnSpell(34093, false);
  104.                             player->learnSpell(33392, false);
  105.                             player->learnSpell(54197, false);
  106.                             player->SaveToDB();
  107.                            
  108.                             // Armor and Weapon skills
  109.                             player->learnSpell(750, false);
  110.                             player->learnSpell(196, false);
  111.                             player->learnSpell(197, false);
  112.                             player->learnSpell(198, false);
  113.                             player->learnSpell(199, false);
  114.                             player->learnSpell(200, false);
  115.                             player->learnSpell(201, false);
  116.                             player->learnSpell(202, false);
  117.                             player->learnSpell(264, false);
  118.                             player->learnSpell(5011, false);
  119.                             player->learnSpell(266, false);
  120.                             player->learnSpell(2567, false);
  121.                             player->SaveToDB();
  122.                            
  123.                             // Talent Spell Restriction
  124.                             if(player->HasSpell(12294))
  125.                             {
  126.                                 player->learnSpell(47486, false);
  127.                             }
  128.                            
  129.                             //////////////Vengeur////////////////////
  130.                             if(player->HasSpell(20243))
  131.                             {
  132.                                 player->learnSpell(47498, false);
  133.                             }
  134.                            
  135.                             player->SaveToDB();
  136.                             player->PlayerTalkClass->SendCloseGossip();
  137.                             break;
  138. // <---------------------------------------------------------------------------------------------------------------------------> //
  139.                
  140.                         // --------- Paladin --------- //
  141.                         case CLASS_PALADIN:
  142.                             player->learnSpell(3127, false);
  143.                             player->learnSpell(19746, false);
  144.                             player->learnSpell(19752, false);
  145.                             player->learnSpell(750,   false);
  146.                             player->learnSpell(48942, false);
  147.                             player->learnSpell(48782, false);
  148.                             player->learnSpell(48932, false);
  149.                             player->learnSpell(20271, false);
  150.                             player->learnSpell(498,   false);
  151.                             player->learnSpell(10308, false);
  152.                             player->learnSpell(1152,  false);
  153.                             player->learnSpell(10278, false);
  154.                             player->learnSpell(48788, false);
  155.                             player->learnSpell(53408, false);
  156.                             player->learnSpell(48950, false);
  157.                             player->learnSpell(48936, false);
  158.                             player->learnSpell(31789, false);
  159.                             player->learnSpell(62124, false);
  160.                             player->learnSpell(54043, false);
  161.                             player->learnSpell(25780, false);
  162.                             player->learnSpell(1044,  false);
  163.                             player->learnSpell(20217, false);
  164.                             player->learnSpell(48819, false);
  165.                             player->learnSpell(48801, false);
  166.                             player->learnSpell(48785, false);
  167.                             player->learnSpell(5502,  false);
  168.                             player->learnSpell(20164, false);
  169.                             player->learnSpell(10326, false);
  170.                             player->learnSpell(1038,  false);
  171.                             player->learnSpell(53407, false);
  172.                             player->learnSpell(48943, false);
  173.                             player->learnSpell(20165, false);
  174.                             player->learnSpell(48945, false);
  175.                             player->learnSpell(642,   false);
  176.                             player->learnSpell(48947, false);
  177.                             player->learnSpell(20166, false);
  178.                             player->learnSpell(4987,  false);
  179.                             player->learnSpell(48806, false);
  180.                             player->learnSpell(6940,  false);
  181.                             player->learnSpell(48817, false);
  182.                             player->learnSpell(48934, false);
  183.                             player->learnSpell(48938, false);
  184.                             player->learnSpell(25898, false);
  185.                             player->learnSpell(32223, false);
  186.                             player->learnSpell(31884, false);
  187.                             player->learnSpell(54428, false);
  188.                             player->learnSpell(61411, false);
  189.                             player->learnSpell(53601, false);
  190.                             player->learnSpell(33388, false);
  191.                             player->learnSpell(33391, false);
  192.                             player->learnSpell(34093, false);
  193.                             player->learnSpell(33392, false);
  194.                             player->learnSpell(54197, false);
  195.                             player->SaveToDB();
  196.                            
  197.                             /////////ARRMES/////////////
  198.                             player->learnSpell(750, false);
  199.                             player->learnSpell(196, false);
  200.                             player->learnSpell(197, false);
  201.                             player->learnSpell(198, false);
  202.                             player->learnSpell(199, false);
  203.                             player->learnSpell(200, false);
  204.                             player->learnSpell(201, false);
  205.                             player->learnSpell(202, false);
  206.                             player->SaveToDB();
  207.            
  208.                             //////////////Restriction/////////////////
  209.                             if(player->HasSpell(20925))
  210.                             {
  211.                                 player->learnSpell(48952, false);
  212.                             }
  213.                            
  214.                             //////////////Vengeur////////////////////
  215.                             if(player->HasSpell(12294))
  216.                             {
  217.                                 player->learnSpell(48827, false);
  218.                             }
  219.                            
  220.                             //////////////Bene/////////////////////
  221.                             if(player->HasSpell(20911))
  222.                             {
  223.                                 player->learnSpell(25899, false);
  224.                             }
  225.                            
  226.                             /////////////Horion/////////////////////
  227.                             if(player->HasSpell(20473))
  228.                             {
  229.                                 player->learnSpell(48825, false);
  230.                             }
  231.            
  232.                             ////////////////////////////////////////
  233.                             if(player->GetTeam() == ALLIANCE)
  234.                             {
  235.                                 player->learnSpell(31801, false);
  236.                                 player->learnSpell(13819, false);
  237.                                 player->learnSpell(23214, false);
  238.                             }
  239.                            
  240.                             else
  241.                             {
  242.                                 player->learnSpell(53736, false);
  243.                                 player->learnSpell(34769, false);
  244.                                 player->learnSpell(34767, false);
  245.                             }
  246.                            
  247.                             player->SaveToDB();
  248.                             player->PlayerTalkClass->SendCloseGossip();
  249.                             break;
  250. // <---------------------------------------------------------------------------------------------------------------------------> //
  251.                
  252.                         // --------- Hunter --------- //
  253.                         case CLASS_HUNTER:
  254.                             player->learnSpell(3043, false);
  255.                             player->learnSpell(3127, false);
  256.                             player->learnSpell(3045,  false);
  257.                             player->learnSpell(3034,  false);
  258.                             player->learnSpell(8737,  false);
  259.                             player->learnSpell(1494,  false);
  260.                             player->learnSpell(13163, false);
  261.                             player->learnSpell(48996, false);
  262.                             player->learnSpell(49001, false);
  263.                             player->learnSpell(49045, false);
  264.                             player->learnSpell(53338, false);
  265.                             player->learnSpell(5116,  false);
  266.                             player->learnSpell(27044, false);
  267.                             player->learnSpell(883,   false);
  268.                             player->learnSpell(2641,  false);
  269.                             player->learnSpell(6991,  false);
  270.                             player->learnSpell(982,   false);
  271.                             player->learnSpell(1515,  false);
  272.                             player->learnSpell(19883, false);
  273.                             player->learnSpell(20736, false);
  274.                             player->learnSpell(48990, false);
  275.                             player->learnSpell(2974,  false);
  276.                             player->learnSpell(6197,  false);
  277.                             player->learnSpell(1002,  false);
  278.                             player->learnSpell(14327, false);
  279.                             player->learnSpell(5118,  false);
  280.                             player->learnSpell(49056, false);
  281.                             player->learnSpell(53339, false);
  282.                             player->learnSpell(49048, false);
  283.                             player->learnSpell(19884, false);
  284.                             player->learnSpell(34074, false);
  285.                             player->learnSpell(781,   false);
  286.                             player->learnSpell(14311, false);
  287.                             player->learnSpell(1462,  false);
  288.                             player->learnSpell(19885, false);
  289.                             player->learnSpell(19880, false);
  290.                             player->learnSpell(13809, false);
  291.                             player->learnSpell(13161, false);
  292.                             player->learnSpell(5384,  false);
  293.                             player->learnSpell(1543,  false);
  294.                             player->learnSpell(19878, false);
  295.                             player->learnSpell(49067, false);
  296.                             player->learnSpell(3034,  false);
  297.                             player->learnSpell(13159, false);
  298.                             player->learnSpell(19882, false);
  299.                             player->learnSpell(58434, false);
  300.                             player->learnSpell(49071, false);
  301.                             player->learnSpell(49052, false);
  302.                             player->learnSpell(19879, false);
  303.                             player->learnSpell(19263, false);
  304.                             player->learnSpell(19801, false);
  305.                             player->learnSpell(34026, false);
  306.                             player->learnSpell(34600, false);
  307.                             player->learnSpell(34477, false);
  308.                             player->learnSpell(61006, false);
  309.                             player->learnSpell(61847, false);
  310.                             player->learnSpell(53271, false);
  311.                             player->learnSpell(60192, false);
  312.                             player->learnSpell(62757, false);
  313.                             player->learnSpell(34093, false);
  314.                             player->learnSpell(33392, false);
  315.                             player->learnSpell(54197, false);
  316.                             player->SaveToDB();
  317.                            
  318.                             /////////ARRMES/////////////
  319.                             player->learnSpell(15590, false);
  320.                             player->learnSpell(8737, false);
  321.                             player->learnSpell(196, false);
  322.                             player->learnSpell(197, false);
  323.                             player->learnSpell(200, false);
  324.                             player->learnSpell(201, false);
  325.                             player->learnSpell(202, false);
  326.                             player->learnSpell(264, false);
  327.                             player->learnSpell(266, false);
  328.                             player->learnSpell(5011, false);
  329.                             player->learnSpell(42459, false);
  330.                             player->SaveToDB();
  331.                            
  332.                             //////////////Restriction/////////////////
  333.                             if(player->HasSpell(19386))
  334.                             {
  335.                                 player->learnSpell(49012, false);
  336.                             }
  337.                            
  338.                             //////////////////////////////////
  339.                             if(player->HasSpell(53301))
  340.                             {
  341.                                 player->learnSpell(60053, false);
  342.                             }
  343.                            
  344.                             ///////////////////////////////////
  345.                             if(player->HasSpell(19306))
  346.                             {
  347.                                 player->learnSpell(48999, false);
  348.                             }
  349.                            
  350.                             //////////////////////////////////
  351.                             if(player->HasSpell(19434))
  352.                             {
  353.                                 player->learnSpell(49050, false);
  354.                             }
  355.                            
  356.                             player->SaveToDB();
  357.                             player->PlayerTalkClass->SendCloseGossip();
  358.                             break;
  359. // <---------------------------------------------------------------------------------------------------------------------------> //
  360.                
  361.                         // --------- Rogue --------- //
  362.                         case CLASS_ROGUE:
  363.                             player->learnSpell(3127, false);
  364.                             player->learnSpell(42459, false);
  365.                             player->learnSpell(48668, false);
  366.                             player->learnSpell(48638, false);
  367.                             player->learnSpell(1784, false);
  368.                             player->learnSpell(48657, false);
  369.                             player->learnSpell(921, false);
  370.                             player->learnSpell(1776, false);
  371.                             player->learnSpell(26669, false);
  372.                             player->learnSpell(51724, false);
  373.                             player->learnSpell(6774, false);
  374.                             player->learnSpell(11305, false);
  375.                             player->learnSpell(1766, false);
  376.                             player->learnSpell(48676, false);
  377.                             player->learnSpell(48659, false);
  378.                             player->learnSpell(1804, false);
  379.                             player->learnSpell(8647, false);
  380.                             player->learnSpell(48691, false);
  381.                             player->learnSpell(51722, false);
  382.                             player->learnSpell(48672, false);
  383.                             player->learnSpell(1725, false);
  384.                             player->learnSpell(26889, false);
  385.                             player->learnSpell(2836, false);
  386.                             player->learnSpell(1833, false);
  387.                             player->learnSpell(1842, false);
  388.                             player->learnSpell(8643, false);
  389.                             player->learnSpell(2094, false);
  390.                             player->learnSpell(1860, false);
  391.                             player->learnSpell(57993, false);
  392.                             player->learnSpell(48674, false);
  393.                             player->learnSpell(31224, false);
  394.                             player->learnSpell(5938, false);
  395.                             player->learnSpell(57934, false);
  396.                             player->learnSpell(51723, false);
  397.                             player->learnSpell(34093, false);
  398.                             player->learnSpell(33392, false);
  399.                             player->learnSpell(54197, false);
  400.                             player->SaveToDB();
  401.                            
  402.                             ///////////ARMES/////////////
  403.                             player->learnSpell(196, false);
  404.                             player->learnSpell(198, false);
  405.                             player->learnSpell(201, false);
  406.                             player->learnSpell(1180, false);
  407.                             player->learnSpell(2567, false);
  408.                             player->learnSpell(264, false);
  409.                             player->learnSpell(266, false);
  410.                             player->learnSpell(5011, false);
  411.                             player->learnSpell(15590, false);
  412.                             player->SaveToDB();
  413.                            
  414.                             //////////////Restriction///////////
  415.                             if(player->HasSpell(16511))
  416.                             {
  417.                                 player->learnSpell(48660, false);
  418.                             }
  419.                            
  420.                             //////////////////////////////////
  421.                             if(player->HasSpell(1329))
  422.                             {
  423.                                 player->learnSpell(48666, false);
  424.                             }
  425.                            
  426.                             player->SaveToDB();
  427.                             player->PlayerTalkClass->SendCloseGossip();
  428.                             break;
  429. // <---------------------------------------------------------------------------------------------------------------------------> //
  430.                
  431.                         // --------- Priest --------- //
  432.                         case CLASS_PRIEST:
  433.                             player->learnSpell(528, false);
  434.                             player->learnSpell(2053, false);
  435.                             player->learnSpell(48161, false);
  436.                             player->learnSpell(48123, false);
  437.                             player->learnSpell(48125, false);
  438.                             player->learnSpell(48066, false);
  439.                             player->learnSpell(586, false);
  440.                             player->learnSpell(48068, false);
  441.                             player->learnSpell(48127, false);
  442.                             player->learnSpell(48171, false);
  443.                             player->learnSpell(48168, false);
  444.                             player->learnSpell(10890, false);
  445.                             player->learnSpell(6064, false);
  446.                             player->learnSpell(988, false);
  447.                             player->learnSpell(48300, false);
  448.                             player->learnSpell(6346, false);
  449.                             player->learnSpell(48071, false);
  450.                             player->learnSpell(48135, false);
  451.                             player->learnSpell(48078, false);
  452.                             player->learnSpell(453, false);
  453.                             player->learnSpell(10955, false);
  454.                             player->learnSpell(10909, false);
  455.                             player->learnSpell(8129, false);
  456.                             player->learnSpell(48073, false);
  457.                             player->learnSpell(605, false);
  458.                             player->learnSpell(48072, false);
  459.                             player->learnSpell(48169, false);
  460.                             player->learnSpell(552, false);
  461.                             player->learnSpell(1706, false);
  462.                             player->learnSpell(48063, false);
  463.                             player->learnSpell(48162, false);
  464.                             player->learnSpell(48170, false);
  465.                             player->learnSpell(48074, false);
  466.                             player->learnSpell(48158, false);
  467.                             player->learnSpell(48120, false);
  468.                             player->learnSpell(34433, false);
  469.                             player->learnSpell(48113, false);
  470.                             player->learnSpell(32375, false);
  471.                             player->learnSpell(64843, false);
  472.                             player->learnSpell(64901, false);
  473.                             player->learnSpell(53023, false);
  474.                             player->learnSpell(34093, false);
  475.                             player->learnSpell(33392, false);
  476.                             player->learnSpell(54197, false);
  477.                             player->SaveToDB();
  478.                            
  479.                             ///////////ARMES/////////////
  480.                             player->learnSpell(196, false);
  481.                             player->learnSpell(198, false);
  482.                             player->learnSpell(227, false);
  483.                             player->learnSpell(1180, false);
  484.                             player->SaveToDB();
  485.                            
  486.                             //////////////Restriction///////////
  487.                             if(player->HasSpell(34914))
  488.                             {
  489.                                 player->learnSpell(48160, false);
  490.                             }
  491.                            
  492.                             //////////////////////////////////
  493.                             if(player->HasSpell(47540))
  494.                             {
  495.                                 player->learnSpell(53007, false);
  496.                             }
  497.                            
  498.                             //////////////////////////////////
  499.                             if(player->HasSpell(724))
  500.                             {
  501.                                 player->learnSpell(48087, false);
  502.                             }
  503.                            
  504.                             //////////////////////////////////
  505.                             if(player->HasSpell(19236))
  506.                             {
  507.                             player->learnSpell(48173, false);
  508.                             }
  509.                            
  510.                             //////////////////////////////////
  511.                             if(player->HasSpell(34861))
  512.                             {
  513.                                 player->learnSpell(48089, false);
  514.                             }
  515.                            
  516.                             //////////////////////////////////
  517.                             if(player->HasSpell(15407))
  518.                             {
  519.                                 player->learnSpell(48156, false);
  520.                             }
  521.                            
  522.                             player->SaveToDB();
  523.                             player->PlayerTalkClass->SendCloseGossip();
  524.                             break;
  525. // <---------------------------------------------------------------------------------------------------------------------------> //
  526.                
  527.                         // --------- Deathknight --------- //
  528.                         case CLASS_DEATHKNIGHT:
  529.                             player->learnSpell(3127, false);
  530.                             player->learnSpell(50842, false);
  531.                             player->learnSpell(49941, false);
  532.                             player->learnSpell(49930, false);
  533.                             player->learnSpell(47476, false);
  534.                             player->learnSpell(45529, false);
  535.                             player->learnSpell(3714, false);
  536.                             player->learnSpell(56222, false);
  537.                             player->learnSpell(48743, false);
  538.                             player->learnSpell(48263, false);
  539.                             player->learnSpell(49909, false);
  540.                             player->learnSpell(47528, false);
  541.                             player->learnSpell(45524, false);
  542.                             player->learnSpell(48792, false);
  543.                             player->learnSpell(57623, false);
  544.                             player->learnSpell(56815, false);
  545.                             player->learnSpell(47568, false);
  546.                             player->learnSpell(49895, false);
  547.                             player->learnSpell(50977, false);
  548.                             player->learnSpell(49576, false);
  549.                             player->learnSpell(49921, false);
  550.                             player->learnSpell(46584, false);
  551.                             player->learnSpell(49938, false);
  552.                             player->learnSpell(48707, false);
  553.                             player->learnSpell(48265, false);
  554.                             player->learnSpell(61999, false);
  555.                             player->learnSpell(42650, false);
  556.                             player->learnSpell(53428, false);
  557.                             player->learnSpell(53331, false);
  558.                             player->learnSpell(54447, false);
  559.                             player->learnSpell(53342, false);
  560.                             player->learnSpell(54446, false);
  561.                             player->learnSpell(53323, false);
  562.                             player->learnSpell(53344, false);
  563.                             player->learnSpell(70164, false);
  564.                             player->learnSpell(62158, false);
  565.                             player->learnSpell(33391, false);
  566.                             player->learnSpell(48778, false);
  567.                             player->learnSpell(51425, false);
  568.                             player->learnSpell(49924, false);
  569.                             player->learnSpell(34093, false);
  570.                             player->learnSpell(33392, false);
  571.                             player->learnSpell(54197, false);
  572.                             player->SaveToDB();
  573.                            
  574.                             ///////////ARMES/////////////
  575.                             player->learnSpell(750, false);
  576.                             player->learnSpell(196, false);
  577.                             player->learnSpell(197, false);
  578.                             player->learnSpell(198, false);
  579.                             player->learnSpell(199, false);
  580.                             player->learnSpell(200, false);
  581.                             player->learnSpell(201, false);
  582.                             player->learnSpell(202, false);
  583.                             player->SaveToDB();
  584.                            
  585.                             //////////////Restriction///////////
  586.                             if(player->HasSpell(55050))
  587.                             {
  588.                                 player->learnSpell(55262, false);
  589.                             }
  590.                            
  591.                             //////////////////////////////////
  592.                             if(player->HasSpell(49143))
  593.                             {
  594.                                 player->learnSpell(55268, false);
  595.                             }
  596.                            
  597.                             //////////////////////////////////
  598.                             if(player->HasSpell(49184))
  599.                             {
  600.                                 player->learnSpell(51411, false);
  601.                             }
  602.                            
  603.                             //////////////////////////////////
  604.                             if(player->HasSpell(55090))
  605.                             {
  606.                                 player->learnSpell(55271, false);
  607.                             }
  608.                            
  609.                             //////////////////////////////////
  610.                             if(player->HasSpell(49158))
  611.                             {
  612.                                 player->learnSpell(51328, false);
  613.                             }
  614.                            
  615.                             player->SaveToDB();
  616.                             player->PlayerTalkClass->SendCloseGossip();
  617.                             break;
  618. // <---------------------------------------------------------------------------------------------------------------------------> //
  619.                
  620.                         // --------- Shaman --------- //
  621.                         case CLASS_SHAMAN:
  622.                             player->learnSpell(2062, false);
  623.                             player->learnSpell(8737, false);
  624.                             player->learnSpell(49273, false);
  625.                             player->learnSpell(49238, false);
  626.                             player->learnSpell(10399, false);
  627.                             player->learnSpell(49231, false);
  628.                             player->learnSpell(58753, false);
  629.                             player->learnSpell(2484, false);
  630.                             player->learnSpell(49281, false);
  631.                             player->learnSpell(58582, false);
  632.                             player->learnSpell(49233, false);
  633.                             player->learnSpell(58790, false);
  634.                             player->learnSpell(58704, false);
  635.                             player->learnSpell(58643, false);
  636.                             player->learnSpell(49277, false);
  637.                             player->learnSpell(61657, false);
  638.                             player->learnSpell(8012, false);
  639.                             player->learnSpell(526, false);
  640.                             player->learnSpell(2645, false);
  641.                             player->learnSpell(57994, false);
  642.                             player->learnSpell(8143, false);
  643.                             player->learnSpell(49236, false);
  644.                             player->learnSpell(58796, false);
  645.                             player->learnSpell(58757, false);
  646.                             player->learnSpell(49276, false);
  647.                             player->learnSpell(57960, false);
  648.                             player->learnSpell(131, false);
  649.                             player->learnSpell(58745, false);
  650.                             player->learnSpell(6196, false);
  651.                             player->learnSpell(58734, false);
  652.                             player->learnSpell(58774, false);
  653.                             player->learnSpell(58739, false);
  654.                             player->learnSpell(58656, false);
  655.                             player->learnSpell(546, false);
  656.                             player->learnSpell(556, false);
  657.                             player->learnSpell(66842, false);
  658.                             player->learnSpell(51994, false);
  659.                             player->learnSpell(8177, false);
  660.                             player->learnSpell(58749, false);
  661.                             player->learnSpell(20608, false);
  662.                             player->learnSpell(36936, false);
  663.                             player->learnSpell(36936, false);
  664.                             player->learnSpell(58804, false);
  665.                             player->learnSpell(49271, false);
  666.                             player->learnSpell(8512, false);
  667.                             player->learnSpell(6495, false);
  668.                             player->learnSpell(8170, false);
  669.                             player->learnSpell(66843, false);
  670.                             player->learnSpell(55459, false);
  671.                             player->learnSpell(66844, false);
  672.                             player->learnSpell(3738, false);
  673.                             player->learnSpell(2894, false);
  674.                             player->learnSpell(60043, false);
  675.                             player->learnSpell(51514, false);
  676.                             player->learnSpell(34093, false);
  677.                             player->learnSpell(33392, false);
  678.                             player->learnSpell(54197, false);
  679.                             player->SaveToDB();
  680.                            
  681.                             ///////////ARMES/////////////
  682.                             player->learnSpell(8737, false);
  683.                             player->learnSpell(196, false);
  684.                             player->learnSpell(197, false);
  685.                             player->learnSpell(198, false);
  686.                             player->learnSpell(199, false);
  687.                             player->learnSpell(227, false);
  688.                             player->learnSpell(15590, false);
  689.                             player->SaveToDB();
  690.                            
  691.                             //////////////Restriction///////////
  692.                             //Faction
  693.                             if(player->GetTeam() == ALLIANCE)
  694.                             {
  695.                                 player->learnSpell(32182, false);
  696.                             }
  697.                            
  698.                             else
  699.                             {
  700.                                 player->learnSpell(2825, false);
  701.                             }
  702.                            
  703.                             //////////////////////////////////
  704.                             if(player->HasSpell(61295))
  705.                             {
  706.                                 player->learnSpell(61301, false);
  707.                             }
  708.                            
  709.                             //////////////////////////////////
  710.                             if(player->HasSpell(974))
  711.                             {
  712.                                 player->learnSpell(49284, false);
  713.                             }
  714.                            
  715.                             //////////////////////////////////
  716.                             if(player->HasSpell(30706))
  717.                             {
  718.                                 player->learnSpell(57722, false);
  719.                             }
  720.                            
  721.                             //////////////////////////////////
  722.                             if(player->HasSpell(51490))
  723.                             {
  724.                                 player->learnSpell(59159, false);
  725.                             }
  726.                            
  727.                             player->SaveToDB();
  728.                             player->PlayerTalkClass->SendCloseGossip();
  729.                             break;
  730. // <---------------------------------------------------------------------------------------------------------------------------> //
  731.                
  732.                         // --------- Mage --------- //
  733.                         case CLASS_MAGE:
  734.                             player->learnSpell(42921, false);
  735.                             player->learnSpell(42842, false);
  736.                             player->learnSpell(42995, false);
  737.                             player->learnSpell(42833, false);
  738.                             player->learnSpell(27090, false);
  739.                             player->learnSpell(33717, false);
  740.                             player->learnSpell(42873, false);
  741.                             player->learnSpell(42846, false);
  742.                             player->learnSpell(12826, false);
  743.                             player->learnSpell(28271, false);
  744.                             player->learnSpell(61780, false);
  745.                             player->learnSpell(61721, false);
  746.                             player->learnSpell(28272, false);
  747.                             player->learnSpell(42917, false);
  748.                             player->learnSpell(43015, false);
  749.                             player->learnSpell(130,   false);
  750.                             player->learnSpell(42926, false);
  751.                             player->learnSpell(43017, false);
  752.                             player->learnSpell(475,   false);
  753.                             player->learnSpell(1953,  false);
  754.                             player->learnSpell(42940, false);
  755.                             player->learnSpell(12051, false);
  756.                             player->learnSpell(43010, false);
  757.                             player->learnSpell(43020, false);
  758.                             player->learnSpell(43012, false);
  759.                             player->learnSpell(42859, false);
  760.                             player->learnSpell(2139,  false);
  761.                             player->learnSpell(42931, false);
  762.                             player->learnSpell(42985, false);
  763.                             player->learnSpell(43008, false);
  764.                             player->learnSpell(45438, false);
  765.                             player->learnSpell(43024, false);
  766.                             player->learnSpell(43002, false);
  767.                             player->learnSpell(43046, false);
  768.                             player->learnSpell(42897, false);
  769.                             player->learnSpell(42914, false);
  770.                             player->learnSpell(66,    false);
  771.                             player->learnSpell(58659, false);
  772.                             player->learnSpell(30449, false);
  773.                             player->learnSpell(42956, false);
  774.                             player->learnSpell(47610, false);
  775.                             player->learnSpell(61316, false);
  776.                             player->learnSpell(61024, false);
  777.                             player->learnSpell(55342, false);
  778.                             player->learnSpell(53142, false);
  779.                             player->learnSpell(7301,  false);
  780.                             player->learnSpell(34093, false);
  781.                             player->learnSpell(33392, false);
  782.                             player->learnSpell(54197, false);
  783.                             player->SaveToDB();
  784.                            
  785.                             /////////ARRMES/////////////
  786.                             player->learnSpell(201,  false);
  787.                             player->learnSpell(196,  false);
  788.                             player->learnSpell(227,  false);
  789.                             player->learnSpell(1180, false);
  790.                             player->SaveToDB();
  791.                            
  792.                             //////////////Restriction/////////////////
  793.                             if(player->GetTeam() == ALLIANCE)
  794.                             {
  795.                                 player->learnSpell(32271, false);
  796.                                 player->learnSpell(49359, false);
  797.                                 player->learnSpell(3565,  false);
  798.                                 player->learnSpell(33690, false);
  799.                                 player->learnSpell(3562,  false);
  800.                                 player->learnSpell(3561,  false);
  801.                                 player->learnSpell(11419, false);
  802.                                 player->learnSpell(32266, false);
  803.                                 player->learnSpell(11416, false);
  804.                                 player->learnSpell(33691, false);
  805.                                 player->learnSpell(49360, false);
  806.                             }
  807.                            
  808.                             else
  809.                             {
  810.                                 player->learnSpell(3567,  false);
  811.                                 player->learnSpell(35715, false);
  812.                                 player->learnSpell(3566,  false);
  813.                                 player->learnSpell(49358, false);
  814.                                 player->learnSpell(32272, false);
  815.                                 player->learnSpell(3563,  false);
  816.                                 player->learnSpell(11417, false);
  817.                                 player->learnSpell(35717, false);
  818.                                 player->learnSpell(32267, false);
  819.                                 player->learnSpell(49361, false);
  820.                                 player->learnSpell(11420, false);
  821.                                 player->learnSpell(11418, false);
  822.                             }
  823.                            
  824.                             if(player->HasSpell(11366))
  825.                             {
  826.                                 player->learnSpell(42891, false);
  827.                             }
  828.                            
  829.                             //////////////////////////////////
  830.                             if(player->HasSpell(11426))
  831.                             {
  832.                                 player->learnSpell(43039, false);
  833.                             }
  834.                            
  835.                             ///////////////////////////////////
  836.                             if(player->HasSpell(44457))
  837.                             {
  838.                                 player->learnSpell(55360, false);
  839.                             }
  840.                            
  841.                             //////////////////////////////////
  842.                             if(player->HasSpell(31661))
  843.                             {
  844.                                 player->learnSpell(42950, false);
  845.                             }
  846.                            
  847.                             //////////////////////////////////
  848.                             if(player->HasSpell(11113))
  849.                             {
  850.                                 player->learnSpell(42945, false);
  851.                             }
  852.                            
  853.                             //////////////////////////////////
  854.                             if(player->HasSpell(44425))
  855.                             {
  856.                                 player->learnSpell(44781, false);
  857.                             }
  858.                            
  859.                             player->SaveToDB();
  860.                             player->PlayerTalkClass->SendCloseGossip();
  861.                             break;
  862. // <---------------------------------------------------------------------------------------------------------------------------> //
  863.                
  864.                         // --------- Warlock --------- //
  865.                         case CLASS_WARLOCK:
  866.                             player->learnSpell(696, false);
  867.                             player->learnSpell(47811, false);
  868.                             player->learnSpell(47809, false);
  869.                             player->learnSpell(688, false);
  870.                             player->learnSpell(47813, false);
  871.                             player->learnSpell(50511, false);
  872.                             player->learnSpell(57946, false);
  873.                             player->learnSpell(47864, false);
  874.                             player->learnSpell(6215, false);
  875.                             player->learnSpell(47878, false);
  876.                             player->learnSpell(47855, false);
  877.                             player->learnSpell(697, false);
  878.                             player->learnSpell(47856, false);
  879.                             player->learnSpell(47857, false);
  880.                             player->learnSpell(5697, false);
  881.                             player->learnSpell(47884, false);
  882.                             player->learnSpell(47815, false);
  883.                             player->learnSpell(47889, false);
  884.                             player->learnSpell(47820, false);
  885.                             player->learnSpell(698, false);
  886.                             player->learnSpell(712, false);
  887.                             player->learnSpell(126, false);
  888.                             player->learnSpell(5138, false);
  889.                             player->learnSpell(5500, false);
  890.                             player->learnSpell(11719, false);
  891.                             player->learnSpell(132, false);
  892.                             player->learnSpell(60220, false);
  893.                             player->learnSpell(18647, false);
  894.                             player->learnSpell(61191, false);
  895.                             player->learnSpell(47823, false);
  896.                             player->learnSpell(691, false);
  897.                             player->learnSpell(47865, false);
  898.                             player->learnSpell(47891, false);
  899.                             player->learnSpell(47888, false);
  900.                             player->learnSpell(17928, false);
  901.                             player->learnSpell(47860, false);
  902.                             player->learnSpell(47825, false);
  903.                             player->learnSpell(1122, false);
  904.                             player->learnSpell(47867, false);
  905.                             player->learnSpell(18540, false);
  906.                             player->learnSpell(47893, false);
  907.                             player->learnSpell(47838, false);
  908.                             player->learnSpell(29858, false);
  909.                             player->learnSpell(58887, false);
  910.                             player->learnSpell(47836, false);
  911.                             player->learnSpell(61290, false);
  912.                             player->learnSpell(48018, false);
  913.                             player->learnSpell(48020, false);
  914.                             player->learnSpell(33388, false);
  915.                             player->learnSpell(33391, false);
  916.                             player->learnSpell(23161, false);
  917.                             player->learnSpell(34093, false);
  918.                             player->learnSpell(33392, false);
  919.                             player->learnSpell(54197, false);
  920.                             player->SaveToDB();
  921.                            
  922.                             ///////////ARMES/////////////
  923.                             player->learnSpell(196, false);
  924.                             player->learnSpell(227, false);
  925.                             player->learnSpell(1180, false);
  926.                             player->SaveToDB();
  927.                            
  928.                            
  929.                             //////////////Restriction/////////////////
  930.                             if(player->HasSpell(17877))
  931.                             {
  932.                                 player->learnSpell(47827, false);
  933.                             }
  934.                            
  935.                             //////////////////////////////////
  936.                             if(player->HasSpell(30283))
  937.                             {
  938.                                 player->learnSpell(47847, false);
  939.                             }
  940.                            
  941.                             ///////////////////////////////////
  942.                             if(player->HasSpell(30108))
  943.                             {
  944.                                 player->learnSpell(47843, false);
  945.                             }
  946.                            
  947.                             //////////////////////////////////
  948.                             if(player->HasSpell(50796))
  949.                             {
  950.                                 player->learnSpell(59172, false);
  951.                             }
  952.                            
  953.                             //////////////////////////////////
  954.                             if(player->HasSpell(48181))
  955.                             {
  956.                                 player->learnSpell(59164, false);
  957.                             }
  958.                            
  959.                             //////////////////////////////////
  960.                             if(player->HasSpell(18220))
  961.                             {
  962.                                 player->learnSpell(59092, false);
  963.                             }
  964.                            
  965.                             player->SaveToDB();
  966.                             player->PlayerTalkClass->SendCloseGossip();
  967.                             break;
  968. // <---------------------------------------------------------------------------------------------------------------------------> //
  969.                
  970.                         // --------- Druid --------- //
  971.                         case CLASS_DRUID:
  972.                             player->learnSpell(48378, false);
  973.                             player->learnSpell(48469, false);
  974.                             player->learnSpell(48461, false);
  975.                             player->learnSpell(48463, false);
  976.                             player->learnSpell(48441, false);
  977.                             player->learnSpell(53307, false);
  978.                             player->learnSpell(53308, false);
  979.                             player->learnSpell(5487, false);
  980.                             player->learnSpell(48560, false);
  981.                             player->learnSpell(6795, false);
  982.                             player->learnSpell(48480, false);
  983.                             player->learnSpell(53312, false);
  984.                             player->learnSpell(18960, false);
  985.                             player->learnSpell(5229, false);
  986.                             player->learnSpell(48443, false);
  987.                             player->learnSpell(50763, false);
  988.                             player->learnSpell(8983, false);
  989.                             player->learnSpell(8946, false);
  990.                             player->learnSpell(1066, false);
  991.                             player->learnSpell(48562, false);
  992.                             player->learnSpell(783, false);
  993.                             player->learnSpell(770, false);
  994.                             player->learnSpell(16857, false);
  995.                             player->learnSpell(18658, false);
  996.                             player->learnSpell(768, false);
  997.                             player->learnSpell(1082, false);
  998.                             player->learnSpell(5215, false);
  999.                             player->learnSpell(48477, false);
  1000.                             player->learnSpell(49800, false);
  1001.                             player->learnSpell(48465, false);
  1002.                             player->learnSpell(48572, false);
  1003.                             player->learnSpell(26995, false);
  1004.                             player->learnSpell(48574, false);
  1005.                             player->learnSpell(2782, false);
  1006.                             player->learnSpell(50213, false);
  1007.                             player->learnSpell(2893, false);
  1008.                             player->learnSpell(33357, false);
  1009.                             player->learnSpell(5209, false);
  1010.                             player->learnSpell(48575, false);
  1011.                             player->learnSpell(48447, false);
  1012.                             player->learnSpell(48577, false);
  1013.                             player->learnSpell(48579, false);
  1014.                             player->learnSpell(5225, false);
  1015.                             player->learnSpell(22842, false);
  1016.                             player->learnSpell(49803, false);
  1017.                             player->learnSpell(9634, false);
  1018.                             player->learnSpell(20719, false);
  1019.                             player->learnSpell(48467, false);
  1020.                             player->learnSpell(29166, false);
  1021.                             player->learnSpell(62600, false);
  1022.                             player->learnSpell(22812, false);
  1023.                             player->learnSpell(48470, false);
  1024.                             player->learnSpell(33943, false);
  1025.                             player->learnSpell(49802, false);
  1026.                             player->learnSpell(48451, false);
  1027.                             player->learnSpell(48568, false);
  1028.                             player->learnSpell(33786, false);
  1029.                             player->learnSpell(40120, false);
  1030.                             player->learnSpell(62078, false);
  1031.                             player->learnSpell(52610, false);
  1032.                             player->learnSpell(50464, false);
  1033.                             player->learnSpell(48570, false);
  1034.                             player->learnSpell(34093, false);
  1035.                             player->learnSpell(33392, false);
  1036.                             player->learnSpell(54197, false);
  1037.                             player->SaveToDB();
  1038.                            
  1039.                             ///////////ARMES/////////////
  1040.                             player->learnSpell(198, false);
  1041.                             player->learnSpell(199, false);
  1042.                             player->learnSpell(200, false);
  1043.                             player->learnSpell(227, false);
  1044.                             player->SaveToDB();
  1045.                            
  1046.                            
  1047.                             //// Mangle and Feral Charge Fix ////
  1048.                             if(player->HasSpell(17007))
  1049.                             {
  1050.                                 player->learnSpell(48564, false); // Mangle Bear
  1051.                             }
  1052.                            
  1053.                             if(player->HasSpell(17007))
  1054.                             {
  1055.                                 player->learnSpell(48566, false); // Mangle Cat
  1056.                             }
  1057.                            
  1058.                             ////////// FERAL CHARGE FIX /////////
  1059.                             if(player->HasSpell(49377))
  1060.                             {
  1061.                                 player->learnSpell(16979, false); // Feral Charge - Cat   need check for 49377
  1062.                                 player->learnSpell(49376, false); // Feral Charge - Bear   need check for 49377
  1063.                                 player->SaveToDB();
  1064.                             }
  1065.                            
  1066.                             //////////////Restriction///////////
  1067.                             if(player->HasSpell(50516))
  1068.                             {
  1069.                                 player->learnSpell(61384, false);
  1070.                             }
  1071.                            
  1072.                             //////////////////////////////////
  1073.                             if(player->HasSpell(48505))
  1074.                             {
  1075.                                 player->learnSpell(53201, false);
  1076.                             }
  1077.                            
  1078.                             //////////////////////////////////
  1079.                             if(player->HasSpell(48438))
  1080.                             {
  1081.                                 player->learnSpell(53251, false);
  1082.                             }
  1083.                            
  1084.                             //////////////////////////////////
  1085.                             if(player->HasSpell(5570))
  1086.                             {
  1087.                                 player->learnSpell(48468, false);
  1088.                             }
  1089.                            
  1090.                             player->SaveToDB();
  1091.                             player->PlayerTalkClass->SendCloseGossip();
  1092.                             break;
  1093. // <---------------------------------------------------------------------------------------------------------------------------> //
  1094.                     }
  1095.                    
  1096.                 case GOSSIP_ACTION_INFO_DEF+2:
  1097.                     player->resetTalents(true);
  1098.                     player->MonsterWhisper("Your talents have been reset.", player->GetGUID());
  1099.                     player->SaveToDB();
  1100.                     player->PlayerTalkClass->SendCloseGossip();
  1101.                     break;
  1102.             }  
  1103.         }
  1104. };
  1105.  
  1106. void AddSC_npc_welcome()
  1107. {
  1108.     new npc_welcome();
  1109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement