Advertisement
Guest User

[Trinity] Enchant won't take action

a guest
Dec 8th, 2013
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 70.71 KB | None | 0 0
  1. enum Enchants
  2. {
  3.     ENCHANT_WEP_BERSERKING              = 3789,
  4.     ENCHANT_WEP_BLADE_WARD              = 3869,
  5.     ENCHANT_WEP_BLOOD_DRAINING          = 3870,
  6.     ENCHANT_WEP_ACCURACY                = 3788,
  7.     ENCHANT_WEP_AGILITY_1H              = 1103,
  8.     ENCHANT_WEP_SPIRIT                  = 3844,
  9.     ENCHANT_WEP_BATTLEMASTER            = 2675,
  10.     ENCHANT_WEP_BLACK_MAGIC             = 3790,
  11.     ENCHANT_WEP_ICEBREAKER              = 3239,
  12.     ENCHANT_WEP_LIFEWARD                = 3241,
  13.     ENCHANT_WEP_MIGHTY_SPELL_POWER      = 3834, // One-hand
  14.     ENCHANT_WEP_EXECUTIONER             = 3225,
  15.     ENCHANT_WEP_POTENCY                 = 3833,
  16.     ENCHANT_WEP_TITANGUARD              = 3851,
  17.     ENCHANT_2WEP_MASSACRE               = 3827,
  18.     ENCHANT_2WEP_SCOURGEBANE            = 3247,
  19.     ENCHANT_2WEP_GIANT_SLAYER           = 3251,
  20.     ENCHANT_2WEP_GREATER_SPELL_POWER    = 3854,
  21.     ENCHANT_2WEP_AGILITY                = 2670,
  22.     ENCHANT_2WEP_MONGOOSE               = 2673,
  23.  
  24.     ENCHANT_SHIELD_DEFENSE              = 1952,
  25.     ENCHANT_SHIELD_INTELLECT            = 1128,
  26.     ENCHANT_SHIELD_RESILIENCE           = 3229,
  27.     ENCHANT_SHIELD_BLOCK                = 2655,
  28.     ENCHANT_SHIELD_STAMINA              = 1071,
  29.     ENCHANT_SHIELD_TOUGHSHIELD          = 2653,
  30.     ENCHANT_SHIELD_TITANIUM_PLATING     = 3849,
  31.  
  32.     ENCHANT_HEAD_BLISSFUL_MENDING       = 3819,
  33.     ENCHANT_HEAD_BURNING_MYSTERIES      = 3820,
  34.     ENCHANT_HEAD_DOMINANCE              = 3796,
  35.     ENCHANT_HEAD_SAVAGE_GLADIATOR       = 3842,
  36.     ENCHANT_HEAD_STALWART_PROTECTOR     = 3818,
  37.     ENCHANT_HEAD_TORMENT                = 3817,
  38.     ENCHANT_HEAD_TRIUMPH                = 3795,
  39.     ENCHANT_HEAD_ECLIPSED_MOON          = 3815,
  40.     ENCHANT_HEAD_FLAME_SOUL             = 3816,
  41.     ENCHANT_HEAD_FLEEING_SHADOW         = 3814,
  42.     ENCHANT_HEAD_FROSTY_SOUL            = 3812,
  43.     ENCHANT_HEAD_TOXIC_WARDING          = 3813,
  44.    
  45.     ENCHANT_SHOULDER_MASTERS_AXE        = 3835,
  46.     ENCHANT_SHOULDER_MASTERS_CRAG       = 3836,
  47.     ENCHANT_SHOULDER_MASTERS_PINNACLE   = 3837,
  48.     ENCHANT_SHOULDER_MASTERS_STORM      = 3838,
  49.     ENCHANT_SHOULDER_GREATER_AXE        = 3808,
  50.     ENCHANT_SHOULDER_GREATER_CRAG       = 3809,
  51.     ENCHANT_SHOULDER_GREATER_GLADIATOR  = 3852,
  52.     ENCHANT_SHOULDER_GREATER_PINNACLE   = 3811,
  53.     ENCHANT_SHOULDER_GREATER_STORM      = 3810,
  54.     ENCHANT_SHOULDER_DOMINANCE          = 3794,
  55.     ENCHANT_SHOULDER_TRIUMPH            = 3793,
  56.  
  57.     ENCHANT_CLOAK_DARKGLOW_EMBROIDERY   = 3728,
  58.     ENCHANT_CLOAK_SWORDGUARD_EMBROIDERY = 3730,
  59.     ENCHANT_CLOAK_LIGHTWEAVE_EMBROIDERY = 3722,
  60.     ENCHANT_CLOAK_SPRINGY_ARACHNOWEAVE  = 3859,
  61.     ENCHANT_CLOAK_WISDOM                = 3296,
  62.     ENCHANT_CLOAK_TITANWEAVE            = 1951,
  63.     ENCHANT_CLOAK_SPELL_PIERCING        = 3243,
  64.     ENCHANT_CLOAK_SHADOW_ARMOR          = 3256,
  65.     ENCHANT_CLOAK_MIGHTY_ARMOR          = 3294,
  66.     ENCHANT_CLOAK_MAJOR_AGILITY         = 1099,
  67.     ENCHANT_CLOAK_GREATER_SPEED         = 3831,
  68.  
  69.     ENCHANT_LEG_EARTHEN                 = 3853,
  70.     ENCHANT_LEG_FROSTHIDE               = 3822,
  71.     ENCHANT_LEG_ICESCALE                = 3823,
  72.     ENCHANT_LEG_BRILLIANT_SPELLTHREAD   = 3719,
  73.     ENCHANT_LEG_SAPPHIRE_SPELLTHREAD    = 3721,
  74.     ENCHANT_LEG_DRAGONSCALE             = 3331,
  75.     ENCHANT_LEG_WYRMSCALE               = 3332,
  76.  
  77.     ENCHANT_GLOVES_GREATER_BLASTING     = 3249,
  78.     ENCHANT_GLOVES_ARMSMAN              = 3253,
  79.     ENCHANT_GLOVES_CRUSHER              = 1603,
  80.     ENCHANT_GLOVES_AGILITY              = 3222,
  81.     ENCHANT_GLOVES_PRECISION            = 3234,
  82.     ENCHANT_GLOVES_EXPERTISE            = 3231,
  83.  
  84.     ENCHANT_BRACERS_MAJOR_STAMINA       = 3850,
  85.     ENCHANT_BRACERS_SUPERIOR_SP         = 2332,
  86.     ENCHANT_BRACERS_GREATER_ASSUALT     = 3845,
  87.     ENCHANT_BRACERS_MAJOR_SPIRT         = 1147,
  88.     ENCHANT_BRACERS_EXPERTISE           = 3231,
  89.     ENCHANT_BRACERS_GREATER_STATS       = 2661,
  90.     ENCHANT_BRACERS_INTELLECT           = 1119,
  91.     ENCHANT_BRACERS_FURL_ARCANE         = 3763,
  92.     ENCHANT_BRACERS_FURL_FIRE           = 3759,
  93.     ENCHANT_BRACERS_FURL_FROST          = 3760,
  94.     ENCHANT_BRACERS_FURL_NATURE         = 3762,
  95.     ENCHANT_BRACERS_FURL_SHADOW         = 3761,
  96.     ENCHANT_BRACERS_FURL_ATTACK         = 3756,
  97.     ENCHANT_BRACERS_FURL_STAMINA        = 3757,
  98.     ENCHANT_BRACERS_FURL_SPELLPOWER     = 3758,
  99.  
  100.     ENCHANT_CHEST_POWERFUL_STATS        = 3832,
  101.     ENCHANT_CHEST_SUPER_HEALTH          = 3297,
  102.     ENCHANT_CHEST_GREATER_MAINA_REST        = 2381,
  103.     ENCHANT_CHEST_EXCEPTIONAL_RESIL     = 3245,
  104.     ENCHANT_CHEST_GREATER_DEFENSE       = 1953,
  105.  
  106.     ENCHANT_BOOTS_GREATER_ASSULT        = 1597,
  107.     ENCHANT_BOOTS_TUSKARS_VITLIATY      = 3232,
  108.     ENCHANT_BOOTS_SUPERIOR_AGILITY      = 983,
  109.     ENCHANT_BOOTS_GREATER_SPIRIT        = 1147,
  110.     ENCHANT_BOOTS_GREATER_VITALITY      = 3244,
  111.     ENCHANT_BOOTS_ICEWALKER             = 3826,
  112.     ENCHANT_BOOTS_GREATER_FORTITUDE     = 1075,
  113.     ENCHANT_BOOTS_NITRO_BOOTS           = 3606,
  114.     ENCHANT_BOOTS_PYRO_ROCKET           = 3603,
  115.     ENCHANT_BOOTS_HYPERSPEED            = 3604,
  116.     ENCHANT_BOOTS_ARMOR_WEBBING         = 3860,
  117.  
  118.     ENCHANT_RING_ASSULT                 = 3839,
  119.     ENCHANT_RING_GREATER_SP             = 3840,
  120.     ENCHANT_RING_STAMINA                = 3791,
  121.     ENCHANT_EXPETIONAL_SPELL_POWER      = 44592,
  122. };
  123.  
  124. #include "ScriptPCH.h"
  125.  
  126. void Enchant(Player* player, Item* item, uint32 enchantid)
  127. {
  128.     if (!item)
  129.     {
  130.         player->GetSession()->SendNotification("You must first equip the item you are trying to enchant in order to enchant it!");
  131.         return;
  132.     }
  133.  
  134.     if (!enchantid)
  135.     {
  136.         player->GetSession()->SendNotification("Something went wrong in the code. It has been logged for developers and will be looked into, sorry for the inconvenience.");
  137.        TC_LOG_INFO("NPC.game","enchant_vendor::Enchant: Enchant NPC 'enchantid' is NULL, something went wrong here!");
  138.         return;
  139.     }
  140.        
  141.     player->ApplyEnchantment(item, PERM_ENCHANTMENT_SLOT, false);
  142.        item->SetEnchantment(PERM_ENCHANTMENT_SLOT, enchantid, 0, 0);
  143.        player->ApplyEnchantment(item, PERM_ENCHANTMENT_SLOT, true);
  144.     player->GetSession()->SendNotification("|cff800080%s |cffFF0000succesfully enchanted!", item->GetTemplate()->Name1.c_str());
  145. }
  146.  
  147. void RemoveEnchant(Player* player, Item* item)
  148. {
  149.     if (!item)
  150.     {
  151.         player->GetSession()->SendNotification("You don't have the item equipped?");
  152.         return;
  153.     }
  154.  
  155.     item->ClearEnchantment(PERM_ENCHANTMENT_SLOT);
  156.     player->GetSession()->SendNotification("|cff800080%s's |cffFF0000enchant has successfully been removed!", item->GetTemplate()->Name1.c_str());
  157. }
  158.  
  159. class npc_enchantment : public CreatureScript
  160. {
  161. public:
  162.     npc_enchantment() : CreatureScript("npc_enchantment") { }
  163.  
  164.         bool OnGossipHello(Player* player, Creature* creature)
  165.         {
  166.             player->ADD_GOSSIP_ITEM(0, "|TInterface/ICONS/INV_Misc_QuestionMark:24|t--Importand information click me--", GOSSIP_SENDER_MAIN, 0);
  167.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Axe_09:24|tEnchant Weapon", GOSSIP_SENDER_MAIN, 1);
  168.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Axe_03:24|tEnchant Off-Hand Weapon", GOSSIP_SENDER_MAIN, 13);
  169.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/Ability_Parry:24|tEnchant 2H Weapon", GOSSIP_SENDER_MAIN, 2);
  170.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Shield_06:24|tEnchant Shield", GOSSIP_SENDER_MAIN, 3);
  171.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothHelm:24|tEnchant Head", GOSSIP_SENDER_MAIN, 4);
  172.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothShoulder:24|tEnchant Shoulders", GOSSIP_SENDER_MAIN, 5);
  173.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Cape_19:24|tEnchant Cloak", GOSSIP_SENDER_MAIN, 6);
  174.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothChest:24|tEnchant Chest", GOSSIP_SENDER_MAIN, 7);
  175.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Jewelry_Ring_54:24|tEnchant Bracers", GOSSIP_SENDER_MAIN, 8);
  176.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothGlove:24|tEnchant Gloves", GOSSIP_SENDER_MAIN, 9);
  177.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothPants:24|tEnchant Legs", GOSSIP_SENDER_MAIN, 10);
  178.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothBoots:24|tEnchant Feet", GOSSIP_SENDER_MAIN, 11);
  179.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Jewelry_Ring_30:24|tEnchant Rings", GOSSIP_SENDER_MAIN, 12);
  180.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/Trade_Engineering:24|tI wish to remove my enchant", GOSSIP_SENDER_MAIN, 14);
  181.             player->ADD_GOSSIP_ITEM(4, "|TInterface/ICONS/Ability_Spy:24|tNevermind", GOSSIP_SENDER_MAIN, 15);
  182.  
  183.             player->PlayerTalkClass->SendGossipMenu(100001, creature->GetGUID());
  184.             return true;
  185.         }
  186.  
  187.         bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action)
  188.         {
  189.             player->PlayerTalkClass->ClearMenus();
  190.             Item * item;
  191.  
  192.             switch (action)
  193.             {
  194.                 case 0:
  195.             {
  196.                 ChatHandler(player->GetSession()).PSendSysMessage("|cffff6060[Information]:|r If you find any Enchant item is missing report it on forum (Bug Report Section), thank you.");
  197.                 break;
  198.             }
  199.  
  200.                 case 15:
  201.             {
  202.                 player->PlayerTalkClass->SendCloseGossip();
  203.                 break;
  204.             }
  205.  
  206.                
  207.                 case 1: // Enchant Weapon
  208.                     if (player->HasSkill(SKILL_ENCHANTING) && player->GetSkillValue(SKILL_ENCHANTING) == 450)
  209.                     {
  210.                         player->ADD_GOSSIP_ITEM(1, "Blade Ward", GOSSIP_SENDER_MAIN, 102);
  211.                         player->ADD_GOSSIP_ITEM(1, "Blood Draining", GOSSIP_SENDER_MAIN, 103);
  212.                     }
  213.                     player->ADD_GOSSIP_ITEM(1, "Exceptional Agility", GOSSIP_SENDER_MAIN, 100);
  214.                     player->ADD_GOSSIP_ITEM(1, "Exceptional Spirit", GOSSIP_SENDER_MAIN, 101);
  215.                     player->ADD_GOSSIP_ITEM(1, "Berserking", GOSSIP_SENDER_MAIN, 104);
  216.                     player->ADD_GOSSIP_ITEM(1, "Accuracy", GOSSIP_SENDER_MAIN, 105);
  217.                     player->ADD_GOSSIP_ITEM(1, "Black Magic", GOSSIP_SENDER_MAIN, 106);
  218.                     player->ADD_GOSSIP_ITEM(1, "Battlemaster", GOSSIP_SENDER_MAIN, 107);
  219.                     player->ADD_GOSSIP_ITEM(1, "Icebreaker", GOSSIP_SENDER_MAIN, 108);
  220.                     player->ADD_GOSSIP_ITEM(1, "Lifeward", GOSSIP_SENDER_MAIN, 109);
  221.                     player->ADD_GOSSIP_ITEM(1, "Titanguard", GOSSIP_SENDER_MAIN, 110);
  222.                     player->ADD_GOSSIP_ITEM(1, "Superior Potency", GOSSIP_SENDER_MAIN, 111);
  223.                     player->ADD_GOSSIP_ITEM(1, "Mighty Spellpower", GOSSIP_SENDER_MAIN, 112);
  224.                     player->ADD_GOSSIP_ITEM(1, "Mongoose", GOSSIP_SENDER_MAIN, 113);
  225.                     player->ADD_GOSSIP_ITEM(1, "Executioner", GOSSIP_SENDER_MAIN, 114);
  226.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  227.                     player->PlayerTalkClass->SendGossipMenu(100002, creature->GetGUID());
  228.                     return true;
  229.                     break;
  230.  
  231.                 case 2: // Enchant 2H Weapon
  232.                     {
  233.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND);
  234.  
  235.                         if (!item)
  236.                         {
  237.                             player->GetSession()->SendNotification("You must equip a Two-Handed weapon first.");
  238.                             player->PlayerTalkClass->SendCloseGossip();
  239.                             return false;
  240.                         }
  241.  
  242.                         if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON)
  243.                         {
  244.                             player->ADD_GOSSIP_ITEM(1, "Berserking", GOSSIP_SENDER_MAIN, 104);
  245.                             player->ADD_GOSSIP_ITEM(1, "Greater Spellpower", GOSSIP_SENDER_MAIN, 115);
  246.                             player->ADD_GOSSIP_ITEM(1, "Major Agility", GOSSIP_SENDER_MAIN, 116);
  247.                             player->ADD_GOSSIP_ITEM(1, "Massacre", GOSSIP_SENDER_MAIN, 117);
  248.                             player->ADD_GOSSIP_ITEM(1, "Mongoose", GOSSIP_SENDER_MAIN, 113);
  249.                             player->ADD_GOSSIP_ITEM(1, "Executioner", GOSSIP_SENDER_MAIN, 114);
  250.                             player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  251.                             player->PlayerTalkClass->SendGossipMenu(100003, creature->GetGUID());
  252.                             return true;
  253.                         }
  254.                         else
  255.                         {
  256.                             player->GetSession()->SendNotification("You don't have a Two-Handed weapon equipped.");
  257.                             player->PlayerTalkClass->SendCloseGossip();
  258.                         }
  259.                     }
  260.                     break;
  261.  
  262.                 case 3: // Enchant Shield
  263.                     {
  264.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  265.  
  266.                         if (!item)
  267.                         {
  268.                             player->GetSession()->SendNotification("You must equip a shield first.");
  269.                             player->PlayerTalkClass->SendCloseGossip();
  270.                             return false;
  271.                         }
  272.  
  273.                         if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD)
  274.                         {
  275.                             player->ADD_GOSSIP_ITEM(1, "Defense", GOSSIP_SENDER_MAIN, 118);
  276.                             player->ADD_GOSSIP_ITEM(1, "Greater Intellect", GOSSIP_SENDER_MAIN, 119);
  277.                             player->ADD_GOSSIP_ITEM(1, "Resilience", GOSSIP_SENDER_MAIN, 120);
  278.                             player->ADD_GOSSIP_ITEM(1, "Titanium Plating", GOSSIP_SENDER_MAIN, 121);
  279.                             player->ADD_GOSSIP_ITEM(1, "Major Stamina", GOSSIP_SENDER_MAIN, 122);
  280.                             player->ADD_GOSSIP_ITEM(1, "Tough Shield", GOSSIP_SENDER_MAIN, 123);
  281.                             player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  282.                             player->PlayerTalkClass->SendGossipMenu(100004, creature->GetGUID());
  283.                             return true;
  284.                         }
  285.                         else
  286.                         {
  287.                             player->GetSession()->SendNotification("You don't have a shield equipped.");
  288.                             player->PlayerTalkClass->SendCloseGossip();
  289.                         }
  290.                     }
  291.                     break;
  292.  
  293.                 case 4: // Enchant Head
  294.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of Blissful Mending", GOSSIP_SENDER_MAIN, 124);
  295.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of Burning Mysteries", GOSSIP_SENDER_MAIN, 125);
  296.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of Dominance", GOSSIP_SENDER_MAIN, 126);
  297.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of The Savage Gladiator", GOSSIP_SENDER_MAIN, 127);
  298.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of The Stalwart Protector", GOSSIP_SENDER_MAIN, 128);
  299.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of Torment", GOSSIP_SENDER_MAIN, 129);
  300.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of Triumph", GOSSIP_SENDER_MAIN, 130);
  301.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of Eclipsed Moon", GOSSIP_SENDER_MAIN, 131);
  302.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of the Flame's Soul", GOSSIP_SENDER_MAIN, 132);
  303.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of the Fleeing Shadow", GOSSIP_SENDER_MAIN, 133);
  304.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of the Frosty Soul", GOSSIP_SENDER_MAIN, 134);
  305.                     player->ADD_GOSSIP_ITEM(1, "Arcanum of Toxic Warding", GOSSIP_SENDER_MAIN, 135);
  306.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  307.                     player->PlayerTalkClass->SendGossipMenu(100005, creature->GetGUID());
  308.                     return true;
  309.                     break;
  310.  
  311.                 case 5: // Enchant Shoulders
  312.                     if (player->HasSkill(SKILL_INSCRIPTION) && player->GetSkillValue(SKILL_INSCRIPTION) == 450)
  313.                     {
  314.                         player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Axe", GOSSIP_SENDER_MAIN, 136);
  315.                         player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Crag", GOSSIP_SENDER_MAIN, 137);
  316.                         player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Pinnacle", GOSSIP_SENDER_MAIN, 138);
  317.                         player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Storm", GOSSIP_SENDER_MAIN, 139);
  318.                     }
  319.                     player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Axe", GOSSIP_SENDER_MAIN, 140);
  320.                     player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Crag", GOSSIP_SENDER_MAIN, 141);
  321.                     player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Pinnacle", GOSSIP_SENDER_MAIN, 142);
  322.                     player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Gladiator", GOSSIP_SENDER_MAIN, 143);
  323.                     player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Storm", GOSSIP_SENDER_MAIN, 144);
  324.                     player->ADD_GOSSIP_ITEM(1, "Inscription of Dominance", GOSSIP_SENDER_MAIN, 145);
  325.                     player->ADD_GOSSIP_ITEM(1, "Inscription of Triumph", GOSSIP_SENDER_MAIN, 146);
  326.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  327.                     player->PlayerTalkClass->SendGossipMenu(100006, creature->GetGUID());
  328.                     return true;
  329.                     break;
  330.  
  331.                 case 6: // Enchant Cloak
  332.                     player->ADD_GOSSIP_ITEM(1, "Springy Arachnoweave", GOSSIP_SENDER_MAIN, 147);
  333.                     player->ADD_GOSSIP_ITEM(1, "Shadow Armor", GOSSIP_SENDER_MAIN, 148);                    
  334.                     player->ADD_GOSSIP_ITEM(1, "Darkglow Embroidery", GOSSIP_SENDER_MAIN, 149);
  335.                     player->ADD_GOSSIP_ITEM(1, "Lightweave Embroidery", GOSSIP_SENDER_MAIN, 150);
  336.                     player->ADD_GOSSIP_ITEM(1, "Swordguard Embroidery", GOSSIP_SENDER_MAIN, 151);                    
  337.                     player->ADD_GOSSIP_ITEM(1, "Wisdom", GOSSIP_SENDER_MAIN, 152);
  338.                     player->ADD_GOSSIP_ITEM(1, "Titanweave", GOSSIP_SENDER_MAIN, 153);
  339.                     player->ADD_GOSSIP_ITEM(1, "Spell Piercing", GOSSIP_SENDER_MAIN, 154);
  340.                     player->ADD_GOSSIP_ITEM(1, "Mighty Armor", GOSSIP_SENDER_MAIN, 155);
  341.                     player->ADD_GOSSIP_ITEM(1, "Major Agility", GOSSIP_SENDER_MAIN, 156);
  342.                     player->ADD_GOSSIP_ITEM(1, "Greater Speed", GOSSIP_SENDER_MAIN, 157);
  343.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  344.                     player->PlayerTalkClass->SendGossipMenu(100007, creature->GetGUID());
  345.                     return true;
  346.                     break;
  347.  
  348.                 case 7: //Enchant chest
  349.                     player->ADD_GOSSIP_ITEM(1, "Powerful Stats", GOSSIP_SENDER_MAIN, 158);
  350.                     player->ADD_GOSSIP_ITEM(1, "Super Health", GOSSIP_SENDER_MAIN, 159);
  351.                     player->ADD_GOSSIP_ITEM(1, "Greater Mana Restoration", GOSSIP_SENDER_MAIN, 160);
  352.                     player->ADD_GOSSIP_ITEM(1, "Exceptional Resilience", GOSSIP_SENDER_MAIN, 161);
  353.                     player->ADD_GOSSIP_ITEM(1, "Greater Defense", GOSSIP_SENDER_MAIN, 162);
  354.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  355.                     player->PlayerTalkClass->SendGossipMenu(100008, creature->GetGUID());
  356.                     return true;
  357.                     break;
  358.  
  359.                 case 8: //Enchant Bracers
  360.                     player->ADD_GOSSIP_ITEM(1, "Major Stamina", GOSSIP_SENDER_MAIN, 163);
  361.                     player->ADD_GOSSIP_ITEM(1, "Superior Spell Power", GOSSIP_SENDER_MAIN, 164);
  362.                     player->ADD_GOSSIP_ITEM(1, "Greater Assult", GOSSIP_SENDER_MAIN, 165);
  363.                     player->ADD_GOSSIP_ITEM(1, "Major Spirit", GOSSIP_SENDER_MAIN, 166);
  364.                     player->ADD_GOSSIP_ITEM(1, "Expertise", GOSSIP_SENDER_MAIN, 167);
  365.                     player->ADD_GOSSIP_ITEM(1, "Greater Stats", GOSSIP_SENDER_MAIN, 168);
  366.                     player->ADD_GOSSIP_ITEM(1, "Exceptional Intellect", GOSSIP_SENDER_MAIN, 169);
  367.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Arcane Resist", GOSSIP_SENDER_MAIN, 170);
  368.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Fire Resist", GOSSIP_SENDER_MAIN, 171);
  369.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Frost Resist", GOSSIP_SENDER_MAIN, 172);
  370.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Nature Resist", GOSSIP_SENDER_MAIN, 173);
  371.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Shadow Resist", GOSSIP_SENDER_MAIN, 174);
  372.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Attack power", GOSSIP_SENDER_MAIN, 175);
  373.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Stamina", GOSSIP_SENDER_MAIN, 176);
  374.                     player->ADD_GOSSIP_ITEM(1, "Fur Lining - Spellpower", GOSSIP_SENDER_MAIN, 177);
  375.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  376.                     player->PlayerTalkClass->SendGossipMenu(100009, creature->GetGUID());
  377.                     return true;
  378.                     break;
  379.  
  380.                 case 9: //Enchant Gloves
  381.                     player->ADD_GOSSIP_ITEM(1, "Greater Blasting", GOSSIP_SENDER_MAIN, 178);
  382.                     player->ADD_GOSSIP_ITEM(1, "Armsman", GOSSIP_SENDER_MAIN, 179);
  383.                     player->ADD_GOSSIP_ITEM(1, "Crusher", GOSSIP_SENDER_MAIN, 180);
  384.                     player->ADD_GOSSIP_ITEM(1, "Agility", GOSSIP_SENDER_MAIN, 181);
  385.                     player->ADD_GOSSIP_ITEM(1, "Precision", GOSSIP_SENDER_MAIN, 182);
  386.                     player->ADD_GOSSIP_ITEM(1, "Expertise", GOSSIP_SENDER_MAIN, 183);
  387.                     player->ADD_GOSSIP_ITEM(1, "Spellpower", GOSSIP_SENDER_MAIN, 411);
  388.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  389.                     player->PlayerTalkClass->SendGossipMenu(100010, creature->GetGUID());
  390.                     return true;
  391.                     break;
  392.  
  393.                 case 10: //Enchant legs
  394.                     player->ADD_GOSSIP_ITEM(1, "Earthen Leg Armor", GOSSIP_SENDER_MAIN, 184);
  395.                     player->ADD_GOSSIP_ITEM(1, "Frosthide Leg Armor", GOSSIP_SENDER_MAIN, 185);
  396.                     player->ADD_GOSSIP_ITEM(1, "Icescale Leg Armor", GOSSIP_SENDER_MAIN, 186);
  397.                     player->ADD_GOSSIP_ITEM(1, "Brilliant Spellthread", GOSSIP_SENDER_MAIN, 187);
  398.                     player->ADD_GOSSIP_ITEM(1, "Sapphire Spellthread", GOSSIP_SENDER_MAIN, 188);
  399.                     player->ADD_GOSSIP_ITEM(1, "Dragonscale Leg Armor", GOSSIP_SENDER_MAIN, 189);
  400.                     player->ADD_GOSSIP_ITEM(1, "Wyrmscale Leg Armor", GOSSIP_SENDER_MAIN, 190);
  401.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  402.                     player->PlayerTalkClass->SendGossipMenu(100011, creature->GetGUID());
  403.                     return true;
  404.                     break;
  405.  
  406.                 case 11: //Enchant feet
  407.                     player->ADD_GOSSIP_ITEM(1, "Greater Assult", GOSSIP_SENDER_MAIN, 191);
  408.                     player->ADD_GOSSIP_ITEM(1, "Tuskars Vitliaty", GOSSIP_SENDER_MAIN, 192);
  409.                     player->ADD_GOSSIP_ITEM(1, "Superior Agility", GOSSIP_SENDER_MAIN, 193);
  410.                     player->ADD_GOSSIP_ITEM(1, "Greater Spirit", GOSSIP_SENDER_MAIN, 194);
  411.                     player->ADD_GOSSIP_ITEM(1, "Greater Vitality", GOSSIP_SENDER_MAIN, 195);
  412.                     player->ADD_GOSSIP_ITEM(1, "Icewalker", GOSSIP_SENDER_MAIN, 196);
  413.                     player->ADD_GOSSIP_ITEM(1, "Greater Fortitude", GOSSIP_SENDER_MAIN, 197);
  414.                     player->ADD_GOSSIP_ITEM(1, "Nitro Boots", GOSSIP_SENDER_MAIN, 198);
  415.                     player->ADD_GOSSIP_ITEM(1, "Hand-Mounted Pyro Rocket", GOSSIP_SENDER_MAIN, 199);
  416.                     player->ADD_GOSSIP_ITEM(1, "Hyperspeed Accedlerators", GOSSIP_SENDER_MAIN, 200);
  417.                     player->ADD_GOSSIP_ITEM(1, "Reticulated Armor Webbing", GOSSIP_SENDER_MAIN, 201);
  418.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  419.                     player->PlayerTalkClass->SendGossipMenu(100012, creature->GetGUID());
  420.                     return true;
  421.                     break;
  422.  
  423.                 case 12: //Enchant rings
  424.                     player->ADD_GOSSIP_ITEM(1, "Assult", GOSSIP_SENDER_MAIN, 202);
  425.                     player->ADD_GOSSIP_ITEM(1, "Greater Spell Power", GOSSIP_SENDER_MAIN, 203);
  426.                     player->ADD_GOSSIP_ITEM(1, "Stamina", GOSSIP_SENDER_MAIN, 204);
  427.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  428.                     player->PlayerTalkClass->SendGossipMenu(100013, creature->GetGUID());
  429.                     return true;
  430.                     break;
  431.  
  432.                 case 13: //Enchant Off-Hand weapons
  433.                     {
  434.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  435.  
  436.                         if(!item)
  437.                         {
  438.                             player->GetSession()->SendNotification("This enchant needs a one-hand weapon equipped in the off-hand.");
  439.                             player->PlayerTalkClass->SendCloseGossip();
  440.                             return false;
  441.                         }
  442.  
  443.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  444.                         {
  445.                             player->ADD_GOSSIP_ITEM(1, "Blade Ward", GOSSIP_SENDER_MAIN, 205);
  446.                             player->ADD_GOSSIP_ITEM(1, "Blood Draining", GOSSIP_SENDER_MAIN, 219);
  447.                             player->ADD_GOSSIP_ITEM(1, "Exceptional Agility", GOSSIP_SENDER_MAIN, 206);
  448.                             player->ADD_GOSSIP_ITEM(1, "Exceptional Spirit", GOSSIP_SENDER_MAIN, 207);
  449.                             player->ADD_GOSSIP_ITEM(1, "Berserking", GOSSIP_SENDER_MAIN, 208);
  450.                             player->ADD_GOSSIP_ITEM(1, "Accuracy", GOSSIP_SENDER_MAIN, 209);
  451.                             player->ADD_GOSSIP_ITEM(1, "Black Magic", GOSSIP_SENDER_MAIN, 210);
  452.                             player->ADD_GOSSIP_ITEM(1, "Battlemaster", GOSSIP_SENDER_MAIN, 211);
  453.                             player->ADD_GOSSIP_ITEM(1, "Icebreaker", GOSSIP_SENDER_MAIN, 212);
  454.                             player->ADD_GOSSIP_ITEM(1, "Lifeward", GOSSIP_SENDER_MAIN, 213);
  455.                             player->ADD_GOSSIP_ITEM(1, "Titanguard", GOSSIP_SENDER_MAIN, 214);
  456.                             player->ADD_GOSSIP_ITEM(1, "Superior Potency", GOSSIP_SENDER_MAIN, 215);
  457.                             player->ADD_GOSSIP_ITEM(1, "Mighty Spellpower", GOSSIP_SENDER_MAIN, 216);
  458.                             player->ADD_GOSSIP_ITEM(1, "Mongoose", GOSSIP_SENDER_MAIN, 217);
  459.                             player->ADD_GOSSIP_ITEM(1, "Executioner", GOSSIP_SENDER_MAIN, 218);
  460.                             player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  461.                             player->PlayerTalkClass->SendGossipMenu(100002, creature->GetGUID());
  462.                             return true;
  463.                         }
  464.                         else
  465.                         {
  466.                             player->GetSession()->SendNotification("Your Off-Hand is not a weapon.");
  467.                             player->PlayerTalkClass->SendCloseGossip();
  468.                         }
  469.                     }
  470.                     break;
  471.  
  472.                 case 14: //Remove enchant menu
  473.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Main-hand", GOSSIP_SENDER_MAIN, 400);
  474.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Off-hand", GOSSIP_SENDER_MAIN, 401);
  475.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Head", GOSSIP_SENDER_MAIN, 402);
  476.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Shoulders", GOSSIP_SENDER_MAIN, 403);
  477.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Cloak", GOSSIP_SENDER_MAIN, 404);
  478.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Chest", GOSSIP_SENDER_MAIN, 405);
  479.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Bracers", GOSSIP_SENDER_MAIN, 406);
  480.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Gloves", GOSSIP_SENDER_MAIN, 407);
  481.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Legs", GOSSIP_SENDER_MAIN, 408);
  482.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Feet", GOSSIP_SENDER_MAIN, 409);
  483.                     player->ADD_GOSSIP_ITEM(1, "Remove enchant on Rings", GOSSIP_SENDER_MAIN, 409);
  484.                     player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300);
  485.                     player->PlayerTalkClass->SendGossipMenu(100014, creature->GetGUID());
  486.                     return true;
  487.                     break;
  488.  
  489.                 case 100:
  490.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_AGILITY_1H);
  491.                     player->PlayerTalkClass->SendCloseGossip();
  492.                     break;
  493.  
  494.                 case 101:
  495.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_SPIRIT);
  496.                     player->PlayerTalkClass->SendCloseGossip();
  497.                     break;
  498.  
  499.                 case 102:
  500.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLADE_WARD);
  501.                     player->PlayerTalkClass->SendCloseGossip();
  502.                     break;
  503.  
  504.                 case 103:
  505.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLOOD_DRAINING);
  506.                     player->PlayerTalkClass->SendCloseGossip();
  507.                     break;
  508.  
  509.                 case 104:
  510.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BERSERKING);
  511.                     player->PlayerTalkClass->SendCloseGossip();
  512.                     break;
  513.  
  514.                 case 105:
  515.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_ACCURACY);
  516.                     player->PlayerTalkClass->SendCloseGossip();
  517.                     break;
  518.  
  519.                 case 106:
  520.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLACK_MAGIC);
  521.                     player->PlayerTalkClass->SendCloseGossip();
  522.                     break;
  523.  
  524.                 case 107:
  525.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BATTLEMASTER);
  526.                     player->PlayerTalkClass->SendCloseGossip();
  527.                     break;
  528.  
  529.                 case 108:
  530.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_ICEBREAKER);
  531.                     player->PlayerTalkClass->SendCloseGossip();
  532.                     break;
  533.  
  534.                 case 109:
  535.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_LIFEWARD);
  536.                     player->PlayerTalkClass->SendCloseGossip();
  537.                     break;
  538.  
  539.                 case 110:
  540.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_TITANGUARD);
  541.                     player->PlayerTalkClass->SendCloseGossip();
  542.                     break;
  543.  
  544.                 case 111:
  545.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_POTENCY);
  546.                     player->PlayerTalkClass->SendCloseGossip();
  547.                     break;
  548.  
  549.                 case 112:
  550.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_MIGHTY_SPELL_POWER);
  551.                     player->PlayerTalkClass->SendCloseGossip();
  552.                     break;
  553.  
  554.                 case 113:
  555.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_MONGOOSE);
  556.                     player->PlayerTalkClass->SendCloseGossip();
  557.                     break;
  558.  
  559.                 case 114:
  560.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_EXECUTIONER);
  561.                     player->PlayerTalkClass->SendCloseGossip();
  562.                     break;
  563.  
  564.                 case 115:
  565.                     {
  566.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND);
  567.  
  568.                         if (!item)
  569.                         {
  570.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a 2H weapon equipped.");
  571.                             player->PlayerTalkClass->SendCloseGossip();
  572.                             return false;
  573.                         }
  574.  
  575.                         if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON)
  576.                         {
  577.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_GREATER_SPELL_POWER);
  578.                             player->PlayerTalkClass->SendCloseGossip();
  579.                         }
  580.                         else
  581.                         {
  582.                             player->GetSession()->SendAreaTriggerMessage("You don't have a Two-Handed weapon equipped.");
  583.                             player->PlayerTalkClass->SendCloseGossip();
  584.                         }
  585.                     }
  586.                     break;
  587.  
  588.                 case 116:
  589.                     {
  590.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND);
  591.  
  592.                         if (!item)
  593.                         {
  594.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a 2H weapon equipped.");
  595.                             player->PlayerTalkClass->SendCloseGossip();
  596.                             return false;
  597.                         }
  598.  
  599.                         if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON)
  600.                         {
  601.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_AGILITY);
  602.                             player->PlayerTalkClass->SendCloseGossip();
  603.                         }
  604.                         else
  605.                         {
  606.                             player->GetSession()->SendAreaTriggerMessage("You don't have a Two-Handed weapon equipped.");
  607.                             player->PlayerTalkClass->SendCloseGossip();
  608.                         }
  609.                     }
  610.                     break;
  611.  
  612.                 case 117:
  613.                     {
  614.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND);
  615.  
  616.                         if (!item)
  617.                         {
  618.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a 2H weapon equipped.");
  619.                             player->PlayerTalkClass->SendCloseGossip();
  620.                             return false;
  621.                         }
  622.  
  623.                         if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON)
  624.                         {
  625.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_MASSACRE);
  626.                             player->PlayerTalkClass->SendCloseGossip();
  627.                         }
  628.                         else
  629.                         {
  630.                             player->GetSession()->SendAreaTriggerMessage("You don't have a Two-Handed weapon equipped.");
  631.                             player->PlayerTalkClass->SendCloseGossip();
  632.                         }
  633.                     }
  634.                     break;
  635.  
  636.                 case 118:
  637.                     {
  638.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  639.  
  640.                         if(!item)
  641.                         {
  642.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped.");
  643.                             player->PlayerTalkClass->SendCloseGossip();
  644.                             return false;
  645.                         }
  646.  
  647.                         if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD)
  648.                         {
  649.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_DEFENSE);
  650.                             player->PlayerTalkClass->SendCloseGossip();
  651.                         }
  652.                         else
  653.                         {
  654.                             player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped.");
  655.                             player->PlayerTalkClass->SendCloseGossip();
  656.                         }                      
  657.                     }
  658.                     break;
  659.  
  660.                 case 119:
  661.                     {
  662.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  663.  
  664.                         if(!item)
  665.                         {
  666.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped.");
  667.                             player->PlayerTalkClass->SendCloseGossip();
  668.                             return false;
  669.                         }
  670.  
  671.                         if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD)
  672.                         {
  673.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_INTELLECT);
  674.                             player->PlayerTalkClass->SendCloseGossip();
  675.                         }
  676.                         else
  677.                         {
  678.                             player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped.");
  679.                             player->PlayerTalkClass->SendCloseGossip();
  680.                         }
  681.                     }
  682.                     break;
  683.  
  684.                 case 120:
  685.                     {
  686.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  687.  
  688.                         if(!item)
  689.                         {
  690.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped.");
  691.                             player->PlayerTalkClass->SendCloseGossip();
  692.                             return false;
  693.                         }
  694.  
  695.                         if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD)
  696.                         {
  697.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_RESILIENCE);
  698.                             player->PlayerTalkClass->SendCloseGossip();
  699.                         }
  700.                         else
  701.                         {
  702.                             player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped.");
  703.                             player->PlayerTalkClass->SendCloseGossip();
  704.                         }
  705.                     }
  706.                     break;
  707.  
  708.                 case 121:
  709.                     {
  710.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  711.  
  712.                         if(!item)
  713.                         {
  714.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped.");
  715.                             player->PlayerTalkClass->SendCloseGossip();
  716.                             return false;
  717.                         }
  718.  
  719.                         if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD)
  720.                         {
  721.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_TITANIUM_PLATING);
  722.                             player->PlayerTalkClass->SendCloseGossip();
  723.                         }
  724.                         else
  725.                         {
  726.                             player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped.");
  727.                             player->PlayerTalkClass->SendCloseGossip();
  728.                         }
  729.                     }
  730.                     break;
  731.  
  732.                 case 122:
  733.                     {
  734.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  735.  
  736.                         if(!item)
  737.                         {
  738.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped.");
  739.                             player->PlayerTalkClass->SendCloseGossip();
  740.                             return false;
  741.                         }
  742.  
  743.                         if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD)
  744.                         {
  745.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_STAMINA);
  746.                             player->PlayerTalkClass->SendCloseGossip();
  747.                         }
  748.                         else
  749.                         {
  750.                             player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped.");
  751.                             player->PlayerTalkClass->SendCloseGossip();
  752.                         }
  753.                     }
  754.                     break;
  755.  
  756.                 case 123:
  757.                     {
  758.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  759.  
  760.                         if(!item)
  761.                         {
  762.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped.");
  763.                             player->PlayerTalkClass->SendCloseGossip();
  764.                             return false;
  765.                         }
  766.  
  767.                         if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD)
  768.                         {
  769.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_TOUGHSHIELD);
  770.                             player->PlayerTalkClass->SendCloseGossip();
  771.                         }
  772.                         else
  773.                         {
  774.                             player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped.");
  775.                             player->PlayerTalkClass->SendCloseGossip();
  776.                         }
  777.                     }
  778.                     break;
  779.  
  780.                 case 124:
  781.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_BLISSFUL_MENDING);
  782.                     player->PlayerTalkClass->SendCloseGossip();
  783.                     break;
  784.  
  785.                 case 125:
  786.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_BURNING_MYSTERIES);
  787.                     player->PlayerTalkClass->SendCloseGossip();
  788.                     break;
  789.  
  790.                 case 126:
  791.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_DOMINANCE);
  792.                     player->PlayerTalkClass->SendCloseGossip();
  793.                     break;
  794.  
  795.                 case 127:
  796.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_SAVAGE_GLADIATOR);
  797.                     player->PlayerTalkClass->SendCloseGossip();
  798.                     break;
  799.  
  800.                 case 128:
  801.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_STALWART_PROTECTOR);
  802.                     player->PlayerTalkClass->SendCloseGossip();
  803.                     break;
  804.  
  805.                 case 129:
  806.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_TORMENT);
  807.                     player->PlayerTalkClass->SendCloseGossip();
  808.                     break;
  809.  
  810.                 case 130:
  811.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_TRIUMPH);
  812.                     player->PlayerTalkClass->SendCloseGossip();
  813.                     break;
  814.  
  815.                 case 131:
  816.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_ECLIPSED_MOON);
  817.                     player->PlayerTalkClass->SendCloseGossip();
  818.                     break;
  819.  
  820.                 case 132:
  821.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_FLAME_SOUL);
  822.                     player->PlayerTalkClass->SendCloseGossip();
  823.                     break;
  824.  
  825.                 case 133:
  826.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_FLEEING_SHADOW);
  827.                     player->PlayerTalkClass->SendCloseGossip();
  828.                     break;
  829.  
  830.                 case 134:
  831.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_FROSTY_SOUL);
  832.                     player->PlayerTalkClass->SendCloseGossip();
  833.                     break;
  834.  
  835.                 case 135:
  836.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_TOXIC_WARDING);
  837.                     player->PlayerTalkClass->SendCloseGossip();
  838.                     break;
  839.  
  840.                 case 136:
  841.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_AXE);
  842.                     player->PlayerTalkClass->SendCloseGossip();
  843.                     break;
  844.  
  845.                 case 137:
  846.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_CRAG);
  847.                     player->PlayerTalkClass->SendCloseGossip();
  848.                     break;
  849.  
  850.                 case 138:
  851.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_PINNACLE);
  852.                     player->PlayerTalkClass->SendCloseGossip();
  853.                     break;
  854.  
  855.                 case 139:
  856.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_STORM);
  857.                     player->PlayerTalkClass->SendCloseGossip();
  858.                     break;
  859.  
  860.                 case 140:
  861.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_AXE);
  862.                     player->PlayerTalkClass->SendCloseGossip();
  863.                     break;
  864.  
  865.                 case 141:
  866.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_CRAG);
  867.                     player->PlayerTalkClass->SendCloseGossip();
  868.                     break;
  869.  
  870.                 case 142:
  871.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_GLADIATOR);
  872.                     player->PlayerTalkClass->SendCloseGossip();
  873.                     break;
  874.  
  875.                 case 143:
  876.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_PINNACLE);
  877.                     player->PlayerTalkClass->SendCloseGossip();
  878.                     break;
  879.  
  880.                 case 144:
  881.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_STORM);
  882.                     player->PlayerTalkClass->SendCloseGossip();
  883.                     break;
  884.  
  885.                 case 145:
  886.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_DOMINANCE);
  887.                     player->PlayerTalkClass->SendCloseGossip();
  888.                     break;
  889.  
  890.                 case 146:
  891.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_TRIUMPH);
  892.                     player->PlayerTalkClass->SendCloseGossip();
  893.                     break;
  894.  
  895.                 case 147:
  896.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SPRINGY_ARACHNOWEAVE);
  897.                     player->PlayerTalkClass->SendCloseGossip();
  898.                     break;
  899.  
  900.                 case 148:
  901.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SHADOW_ARMOR);
  902.                     player->PlayerTalkClass->SendCloseGossip();
  903.                     break;
  904.  
  905.                 case 149:
  906.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_DARKGLOW_EMBROIDERY);
  907.                     player->PlayerTalkClass->SendCloseGossip();
  908.                     break;
  909.  
  910.                 case 150:
  911.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_LIGHTWEAVE_EMBROIDERY);
  912.                     player->PlayerTalkClass->SendCloseGossip();
  913.                     break;
  914.  
  915.                 case 151:
  916.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SWORDGUARD_EMBROIDERY);
  917.                     player->PlayerTalkClass->SendCloseGossip();
  918.                     break;
  919.  
  920.                 case 152:
  921.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_WISDOM);
  922.                     player->PlayerTalkClass->SendCloseGossip();
  923.                     break;
  924.  
  925.                 case 153:
  926.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_TITANWEAVE);
  927.                     player->PlayerTalkClass->SendCloseGossip();
  928.                     break;
  929.  
  930.                 case 154:
  931.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SPELL_PIERCING);
  932.                     player->PlayerTalkClass->SendCloseGossip();
  933.                     break;
  934.  
  935.                 case 155:
  936.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_MIGHTY_ARMOR);
  937.                     player->PlayerTalkClass->SendCloseGossip();
  938.                     break;
  939.  
  940.                 case 156:
  941.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_MAJOR_AGILITY);
  942.                     player->PlayerTalkClass->SendCloseGossip();
  943.                     break;
  944.  
  945.                 case 157:
  946.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_GREATER_SPEED);
  947.                     player->PlayerTalkClass->SendCloseGossip();
  948.                     break;
  949.  
  950.                 case 158:
  951.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_POWERFUL_STATS);
  952.                     player->PlayerTalkClass->SendCloseGossip();
  953.                     break;
  954.  
  955.                 case 159:
  956.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_SUPER_HEALTH);
  957.                     player->PlayerTalkClass->SendCloseGossip();
  958.                     break;
  959.  
  960.                 case 160:
  961.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_GREATER_MAINA_REST);
  962.                     player->PlayerTalkClass->SendCloseGossip();
  963.                     break;
  964.  
  965.                 case 161:
  966.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_EXCEPTIONAL_RESIL);
  967.                     player->PlayerTalkClass->SendCloseGossip();
  968.                     break;
  969.  
  970.                 case 162:
  971.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_GREATER_DEFENSE);
  972.                     player->PlayerTalkClass->SendCloseGossip();
  973.                     break;
  974.  
  975.                 case 163:
  976.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_MAJOR_STAMINA);
  977.                     player->PlayerTalkClass->SendCloseGossip();
  978.                     break;
  979.  
  980.                 case 164:
  981.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_SUPERIOR_SP);
  982.                     player->PlayerTalkClass->SendCloseGossip();
  983.                     break;
  984.  
  985.                 case 165:
  986.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_GREATER_ASSUALT);
  987.                     player->PlayerTalkClass->SendCloseGossip();
  988.                     break;
  989.  
  990.                 case 166:
  991.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_MAJOR_SPIRT);
  992.                     player->PlayerTalkClass->SendCloseGossip();
  993.                     break;
  994.  
  995.                 case 167:
  996.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_EXPERTISE);
  997.                     player->PlayerTalkClass->SendCloseGossip();
  998.                     break;
  999.  
  1000.                 case 168:
  1001.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_GREATER_STATS);
  1002.                     player->PlayerTalkClass->SendCloseGossip();
  1003.                     break;
  1004.  
  1005.                 case 169:
  1006.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_INTELLECT);
  1007.                     player->PlayerTalkClass->SendCloseGossip();
  1008.                     break;
  1009.  
  1010.                 case 170:
  1011.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_ARCANE);
  1012.                     player->PlayerTalkClass->SendCloseGossip();
  1013.                     break;
  1014.  
  1015.                 case 171:
  1016.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_FIRE);
  1017.                     player->PlayerTalkClass->SendCloseGossip();
  1018.                     break;
  1019.  
  1020.                 case 172:
  1021.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_FROST);
  1022.                     player->PlayerTalkClass->SendCloseGossip();
  1023.                     break;
  1024.  
  1025.                 case 173:
  1026.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_NATURE);
  1027.                     player->PlayerTalkClass->SendCloseGossip();
  1028.                     break;
  1029.  
  1030.                 case 174:
  1031.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_SHADOW);
  1032.                     player->PlayerTalkClass->SendCloseGossip();
  1033.                     break;
  1034.  
  1035.                 case 175:
  1036.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_ATTACK);
  1037.                     player->PlayerTalkClass->SendCloseGossip();
  1038.                     break;
  1039.  
  1040.                 case 176:
  1041.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_STAMINA);
  1042.                     player->PlayerTalkClass->SendCloseGossip();
  1043.                     break;
  1044.  
  1045.                 case 177:
  1046.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_SPELLPOWER);
  1047.                     player->PlayerTalkClass->SendCloseGossip();
  1048.                     break;
  1049.  
  1050.                 case 178:
  1051.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_GREATER_BLASTING);
  1052.                     player->PlayerTalkClass->SendCloseGossip();
  1053.                     break;
  1054.  
  1055.                 case 179:
  1056.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_ARMSMAN);
  1057.                     player->PlayerTalkClass->SendCloseGossip();
  1058.                     break;
  1059.  
  1060.                 case 180:
  1061.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_CRUSHER);
  1062.                     player->PlayerTalkClass->SendCloseGossip();
  1063.                     break;
  1064.  
  1065.                 case 181:
  1066.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_AGILITY);
  1067.                     player->PlayerTalkClass->SendCloseGossip();
  1068.                     break;
  1069.  
  1070.                 case 182:
  1071.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_PRECISION);
  1072.                     player->PlayerTalkClass->SendCloseGossip();
  1073.                     break;
  1074.  
  1075.                 case 183:
  1076.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_EXPERTISE);
  1077.                     player->PlayerTalkClass->SendCloseGossip();
  1078.                     break;
  1079.  
  1080.                 case 184:
  1081.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_EARTHEN);
  1082.                     player->PlayerTalkClass->SendCloseGossip();
  1083.                     break;
  1084.  
  1085.                 case 185:
  1086.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_FROSTHIDE);
  1087.                     player->PlayerTalkClass->SendCloseGossip();
  1088.                     break;
  1089.  
  1090.                 case 186:
  1091.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_ICESCALE);
  1092.                     player->PlayerTalkClass->SendCloseGossip();
  1093.                     break;
  1094.  
  1095.                 case 187:
  1096.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_BRILLIANT_SPELLTHREAD);
  1097.                     player->PlayerTalkClass->SendCloseGossip();
  1098.                     break;
  1099.  
  1100.                 case 188:
  1101.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_SAPPHIRE_SPELLTHREAD);
  1102.                     player->PlayerTalkClass->SendCloseGossip();
  1103.                     break;
  1104.  
  1105.                 case 189:
  1106.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_DRAGONSCALE);
  1107.                     player->PlayerTalkClass->SendCloseGossip();
  1108.                     break;
  1109.  
  1110.                 case 190:
  1111.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_WYRMSCALE);
  1112.                     player->PlayerTalkClass->SendCloseGossip();
  1113.                     break;
  1114.  
  1115.                 case 191:
  1116.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_ASSULT);
  1117.                     player->PlayerTalkClass->SendCloseGossip();
  1118.                     break;
  1119.  
  1120.                 case 192:
  1121.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_TUSKARS_VITLIATY);
  1122.                     player->PlayerTalkClass->SendCloseGossip();
  1123.                     break;
  1124.  
  1125.                 case 193:
  1126.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_SUPERIOR_AGILITY);
  1127.                     player->PlayerTalkClass->SendCloseGossip();
  1128.                     break;
  1129.  
  1130.                 case 194:
  1131.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_SPIRIT);
  1132.                     player->PlayerTalkClass->SendCloseGossip();
  1133.                     break;
  1134.  
  1135.                 case 195:
  1136.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_VITALITY);
  1137.                     player->PlayerTalkClass->SendCloseGossip();
  1138.                     break;
  1139.  
  1140.                 case 196:
  1141.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_ICEWALKER);
  1142.                     player->PlayerTalkClass->SendCloseGossip();
  1143.                     break;
  1144.  
  1145.                 case 197:
  1146.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_FORTITUDE);
  1147.                     player->PlayerTalkClass->SendCloseGossip();
  1148.                     break;
  1149.  
  1150.                 case 198:
  1151.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_NITRO_BOOTS);
  1152.                     player->PlayerTalkClass->SendCloseGossip();
  1153.                     break;
  1154.  
  1155.                 case 199:
  1156.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_PYRO_ROCKET);
  1157.                     player->PlayerTalkClass->SendCloseGossip();
  1158.                     break;
  1159.  
  1160.                 case 200:
  1161.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_HYPERSPEED);
  1162.                     player->PlayerTalkClass->SendCloseGossip();
  1163.                     break;
  1164.  
  1165.                 case 201:
  1166.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_ARMOR_WEBBING);
  1167.                     player->PlayerTalkClass->SendCloseGossip();
  1168.                     break;
  1169.  
  1170.                 case 202:
  1171.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1), ENCHANT_RING_ASSULT);
  1172.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2), ENCHANT_RING_ASSULT);
  1173.                     player->PlayerTalkClass->SendCloseGossip();
  1174.                     break;
  1175.  
  1176.                 case 203:
  1177.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1), ENCHANT_RING_GREATER_SP);
  1178.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2), ENCHANT_RING_GREATER_SP);
  1179.                     player->PlayerTalkClass->SendCloseGossip();
  1180.                     break;
  1181.  
  1182.                 case 204:
  1183.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1), ENCHANT_RING_STAMINA);
  1184.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2), ENCHANT_RING_STAMINA);
  1185.                     player->PlayerTalkClass->SendCloseGossip();
  1186.                     break;
  1187.  
  1188.                 case 205:
  1189.                     {
  1190.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1191.  
  1192.                         if(!item)
  1193.                         {
  1194.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1195.                             player->PlayerTalkClass->SendCloseGossip();
  1196.                             return false;
  1197.                         }
  1198.  
  1199.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1200.                         {
  1201.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_BLADE_WARD);
  1202.                             player->PlayerTalkClass->SendCloseGossip();
  1203.                         }
  1204.                         else
  1205.                         {
  1206.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1207.                             player->PlayerTalkClass->SendCloseGossip();
  1208.                         }
  1209.                     }
  1210.                     break;
  1211.  
  1212.                 case 206:
  1213.                     {
  1214.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1215.  
  1216.                         if(!item)
  1217.                         {
  1218.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1219.                             player->PlayerTalkClass->SendCloseGossip();
  1220.                             return false;
  1221.                         }
  1222.  
  1223.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1224.                         {
  1225.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_AGILITY_1H);
  1226.                             player->PlayerTalkClass->SendCloseGossip();
  1227.                         }
  1228.                         else
  1229.                         {
  1230.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1231.                             player->PlayerTalkClass->SendCloseGossip();
  1232.                         }
  1233.                     }
  1234.                     break;
  1235.  
  1236.                 case 207:
  1237.                     {
  1238.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1239.  
  1240.                         if(!item)
  1241.                         {
  1242.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1243.                             player->PlayerTalkClass->SendCloseGossip();
  1244.                             return false;
  1245.                         }
  1246.                        
  1247.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1248.                         {
  1249.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_SPIRIT);
  1250.                             player->PlayerTalkClass->SendCloseGossip();
  1251.                         }
  1252.                         else
  1253.                         {
  1254.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1255.                             player->PlayerTalkClass->SendCloseGossip();
  1256.                         }
  1257.                     }
  1258.                     break;
  1259.  
  1260.                 case 208:
  1261.                     {
  1262.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1263.  
  1264.                         if(!item)
  1265.                         {
  1266.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1267.                             player->PlayerTalkClass->SendCloseGossip();
  1268.                             return false;
  1269.                         }
  1270.  
  1271.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1272.                         {
  1273.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_BERSERKING);
  1274.                             player->PlayerTalkClass->SendCloseGossip();
  1275.                         }
  1276.                         else
  1277.                         {
  1278.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1279.                             player->PlayerTalkClass->SendCloseGossip();
  1280.                         }
  1281.                     }
  1282.                     break;
  1283.  
  1284.                 case 209:
  1285.                     {
  1286.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1287.  
  1288.                         if(!item)
  1289.                         {
  1290.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1291.                             player->PlayerTalkClass->SendCloseGossip();
  1292.                             return false;
  1293.                         }
  1294.                        
  1295.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1296.                         {
  1297.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_ACCURACY);
  1298.                             player->PlayerTalkClass->SendCloseGossip();
  1299.                         }
  1300.                         else
  1301.                         {
  1302.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1303.                             player->PlayerTalkClass->SendCloseGossip();
  1304.                         }
  1305.                     }
  1306.                     break;
  1307.  
  1308.                 case 210:
  1309.                     {
  1310.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1311.  
  1312.                         if(!item)
  1313.                         {
  1314.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1315.                             player->PlayerTalkClass->SendCloseGossip();
  1316.                             return false;
  1317.                         }
  1318.                        
  1319.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1320.                         {
  1321.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_BLACK_MAGIC);
  1322.                             player->PlayerTalkClass->SendCloseGossip();
  1323.                         }
  1324.                         else
  1325.                         {
  1326.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1327.                             player->PlayerTalkClass->SendCloseGossip();
  1328.                         }
  1329.                     }
  1330.                     break;
  1331.  
  1332.                 case 211:
  1333.                     {
  1334.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1335.  
  1336.                         if(!item)
  1337.                         {
  1338.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1339.                             player->PlayerTalkClass->SendCloseGossip();
  1340.                             return false;
  1341.                         }
  1342.                        
  1343.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1344.                         {
  1345.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_BATTLEMASTER);
  1346.                             player->PlayerTalkClass->SendCloseGossip();
  1347.                         }
  1348.                         else
  1349.                         {
  1350.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1351.                             player->PlayerTalkClass->SendCloseGossip();
  1352.                         }
  1353.                     }
  1354.                     break;
  1355.  
  1356.                 case 212:
  1357.                     {
  1358.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1359.  
  1360.                         if(!item)
  1361.                         {
  1362.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1363.                             player->PlayerTalkClass->SendCloseGossip();
  1364.                             return false;
  1365.                         }
  1366.                        
  1367.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1368.                         {
  1369.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_ICEBREAKER);
  1370.                             player->PlayerTalkClass->SendCloseGossip();
  1371.                         }
  1372.                         else
  1373.                         {
  1374.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1375.                             player->PlayerTalkClass->SendCloseGossip();
  1376.                         }
  1377.                     }
  1378.                     break;
  1379.  
  1380.                 case 213:
  1381.                     {
  1382.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1383.  
  1384.                         if(!item)
  1385.                         {
  1386.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1387.                             player->PlayerTalkClass->SendCloseGossip();
  1388.                             return false;
  1389.                         }
  1390.                        
  1391.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1392.                         {
  1393.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_LIFEWARD);
  1394.                             player->PlayerTalkClass->SendCloseGossip();
  1395.                         }
  1396.                         else
  1397.                         {
  1398.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1399.                             player->PlayerTalkClass->SendCloseGossip();
  1400.                         }
  1401.                     }
  1402.                     break;
  1403.  
  1404.                 case 214:
  1405.                     {
  1406.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1407.  
  1408.                         if(!item)
  1409.                         {
  1410.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1411.                             player->PlayerTalkClass->SendCloseGossip();
  1412.                             return false;
  1413.                         }
  1414.                        
  1415.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1416.                         {
  1417.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_TITANGUARD);
  1418.                             player->PlayerTalkClass->SendCloseGossip();
  1419.                         }
  1420.                         else
  1421.                         {
  1422.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1423.                             player->PlayerTalkClass->SendCloseGossip();
  1424.                         }
  1425.                     }
  1426.                     break;
  1427.  
  1428.                 case 215:
  1429.                     {
  1430.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1431.  
  1432.                         if(!item)
  1433.                         {
  1434.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1435.                             player->PlayerTalkClass->SendCloseGossip();
  1436.                             return false;
  1437.                         }
  1438.                        
  1439.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1440.                         {
  1441.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_POTENCY);
  1442.                             player->PlayerTalkClass->SendCloseGossip();
  1443.                         }
  1444.                         else
  1445.                         {
  1446.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1447.                             player->PlayerTalkClass->SendCloseGossip();
  1448.                         }
  1449.                     }
  1450.                     break;
  1451.  
  1452.                 case 216:
  1453.                     {
  1454.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1455.  
  1456.                         if(!item)
  1457.                         {
  1458.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1459.                             player->PlayerTalkClass->SendCloseGossip();
  1460.                             return false;
  1461.                         }
  1462.                        
  1463.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1464.                         {
  1465.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_MIGHTY_SPELL_POWER);
  1466.                             player->PlayerTalkClass->SendCloseGossip();
  1467.                         }
  1468.                         else
  1469.                         {
  1470.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1471.                             player->PlayerTalkClass->SendCloseGossip();
  1472.                         }
  1473.                     }
  1474.                     break;
  1475.  
  1476.                 case 217:
  1477.                     {
  1478.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1479.  
  1480.                         if(!item)
  1481.                         {
  1482.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1483.                             player->PlayerTalkClass->SendCloseGossip();
  1484.                             return false;
  1485.                         }
  1486.                        
  1487.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1488.                         {
  1489.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_2WEP_MONGOOSE);
  1490.                             player->PlayerTalkClass->SendCloseGossip();
  1491.                         }
  1492.                         else
  1493.                         {
  1494.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1495.                             player->PlayerTalkClass->SendCloseGossip();
  1496.                         }
  1497.                     }
  1498.                     break;
  1499.  
  1500.                 case 218:
  1501.                     {
  1502.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1503.  
  1504.                         if(!item)
  1505.                         {
  1506.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1507.                             player->PlayerTalkClass->SendCloseGossip();
  1508.                             return false;
  1509.                         }
  1510.                        
  1511.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1512.                         {
  1513.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_EXECUTIONER);
  1514.                             player->PlayerTalkClass->SendCloseGossip();
  1515.                         }
  1516.                         else
  1517.                         {
  1518.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1519.                             player->PlayerTalkClass->SendCloseGossip();
  1520.                         }
  1521.                     }
  1522.                     break;
  1523.  
  1524.                 case 219:
  1525.                     {
  1526.                         item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
  1527.  
  1528.                         if(!item)
  1529.                         {
  1530.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1531.                             player->PlayerTalkClass->SendCloseGossip();
  1532.                             return false;
  1533.                         }
  1534.                        
  1535.                         if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON)
  1536.                         {
  1537.                             Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_BLOOD_DRAINING);
  1538.                             player->PlayerTalkClass->SendCloseGossip();
  1539.                         }
  1540.                         else
  1541.                         {
  1542.                             player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand.");
  1543.                             player->PlayerTalkClass->SendCloseGossip();
  1544.                         }
  1545.                     }
  1546.                     break;
  1547.  
  1548.                 case 300: //<-Back menu
  1549.                     {
  1550.             player->ADD_GOSSIP_ITEM(0, "|TInterface/ICONS/INV_Misc_QuestionMark:24|t--Importand information click me--", GOSSIP_SENDER_MAIN, 0);
  1551.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Axe_09:24|tEnchant Weapon", GOSSIP_SENDER_MAIN, 1);
  1552.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Axe_03:24|tEnchant Off-Hand Weapon", GOSSIP_SENDER_MAIN, 13);
  1553.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/Ability_Parry:24|tEnchant 2H Weapon", GOSSIP_SENDER_MAIN, 2);
  1554.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Shield_06:24|tEnchant Shield", GOSSIP_SENDER_MAIN, 3);
  1555.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothHelm:24|tEnchant Head", GOSSIP_SENDER_MAIN, 4);
  1556.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothShoulder:24|tEnchant Shoulders", GOSSIP_SENDER_MAIN, 5);
  1557.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Cape_19:24|tEnchant Cloak", GOSSIP_SENDER_MAIN, 6);
  1558.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothChest:24|tEnchant Chest", GOSSIP_SENDER_MAIN, 7);
  1559.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Jewelry_Ring_54:24|tEnchant Bracers", GOSSIP_SENDER_MAIN, 8);
  1560.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothGlove:24|tEnchant Gloves", GOSSIP_SENDER_MAIN, 9);
  1561.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothPants:24|tEnchant Legs", GOSSIP_SENDER_MAIN, 10);
  1562.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Misc_Desecrated_ClothBoots:24|tEnchant Feet", GOSSIP_SENDER_MAIN, 11);
  1563.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/INV_Jewelry_Ring_30:24|tEnchant Rings", GOSSIP_SENDER_MAIN, 12);
  1564.             player->ADD_GOSSIP_ITEM(1, "|TInterface/ICONS/Trade_Engineering:24|tI wish to remove my enchant", GOSSIP_SENDER_MAIN, 14);
  1565.             player->ADD_GOSSIP_ITEM(4, "|TInterface/ICONS/Ability_Spy:24|tNevermind", GOSSIP_SENDER_MAIN, 15);
  1566.  
  1567.             player->PlayerTalkClass->SendGossipMenu(100001, creature->GetGUID());
  1568.                         return true;
  1569.                     }
  1570.                         break;
  1571.  
  1572.                 case 400: //Remove enchant for mainhand
  1573.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND));
  1574.                     player->PlayerTalkClass->SendCloseGossip();
  1575.                     break;
  1576.  
  1577.                 case 401: //Remove enchant for offhand
  1578.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND));
  1579.                     player->PlayerTalkClass->SendCloseGossip();
  1580.                     break;
  1581.  
  1582.                 case 402: //Remove enchant for head
  1583.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD));
  1584.                     player->PlayerTalkClass->SendCloseGossip();
  1585.                     break;
  1586.  
  1587.                 case 403: //Remove enchant for shoulders
  1588.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS));
  1589.                     player->PlayerTalkClass->SendCloseGossip();
  1590.                     break;
  1591.  
  1592.                 case 404: //remove enchant for cloak
  1593.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK));
  1594.                     player->PlayerTalkClass->SendCloseGossip();
  1595.                     break;
  1596.  
  1597.                 case 405: //remove enchant for chest
  1598.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST));
  1599.                     player->PlayerTalkClass->SendCloseGossip();
  1600.                     break;
  1601.  
  1602.                 case 406: //remove enchant for bracers
  1603.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS));
  1604.                     player->PlayerTalkClass->SendCloseGossip();
  1605.                     break;
  1606.  
  1607.                 case 407: //remove enchant for gloves
  1608.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS));
  1609.                     player->PlayerTalkClass->SendCloseGossip();
  1610.                     break;
  1611.  
  1612.                 case 408: //remove enchant for legs
  1613.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS));
  1614.                     player->PlayerTalkClass->SendCloseGossip();
  1615.                     break;
  1616.  
  1617.                 case 409: //remove enchant for feet
  1618.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET));
  1619.                     player->PlayerTalkClass->SendCloseGossip();
  1620.                     break;
  1621.  
  1622.                 case 410:
  1623.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1));
  1624.                     RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2));
  1625.                     player->PlayerTalkClass->SendCloseGossip();
  1626.                     break;
  1627.  
  1628.                                     case 411:
  1629.                     Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_EXPETIONAL_SPELL_POWER);
  1630.                     player->PlayerTalkClass->SendCloseGossip();
  1631.                     break;
  1632.  
  1633.             }
  1634.            
  1635.             return true;
  1636.         }
  1637.    
  1638.  
  1639. };
  1640.  
  1641. void AddSC_npc_enchantment()
  1642. {
  1643.   new npc_enchantment();
  1644. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement