bool OnGossipSelect(Player* player, Creature* creature, uint32 sender, uint32 action) { player->PlayerTalkClass->ClearMenus(); switch(sender) { case GOSSIP_SENDER_MAIN: ShowPage(player, 1, action); player->SEND_GOSSIP_MENU(1, creature->GetGUID()); break; default: if (sender < 100) { Enchant(player, sender, action); player->CLOSE_GOSSIP_MENU(); break; } if (sender == 100) OnGossipHello(player, creature); else { ShowPage(player, sender - 100, action); player->SEND_GOSSIP_MENU(1, creature->GetGUID()); } break; } return true; }
bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) { int slot = -1; bool check_adjacent_slot = true; switch (action) { case -1: // Back ShowMainMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 1: Show1HWeaponMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 2: Show2HWeaponMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 3: ShowShieldMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 4: ShowHeadMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 5: ShowShouldersMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 6: ShowCloakMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 7: ShowChestMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 8: ShowBracerMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 9: ShowGlovesMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 10: ShowBeltMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 11: ShowLegsMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 12: ShowBootsMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 13: ShowRangedMenu(player, creature); break; case GOSSIP_ACTION_INFO_DEF + 14: ShowRingsMenu(player, creature); break; // 1H weapons case ENCHANT_WEP_BLADE_WARD: case ENCHANT_WEP_BLOOD_DRAINING: case ENCHANT_WEP_AGILITY_1H: case ENCHANT_WEP_SPIRIT: case ENCHANT_WEP_BERSERKING: case ENCHANT_WEP_ACCURACY: case ENCHANT_WEP_BLACK_MAGIC: case ENCHANT_WEP_BATTLEMASTER: case ENCHANT_WEP_ICEBREAKER: case ENCHANT_WEP_LIFEWARD: case ENCHANT_WEP_TITANGUARD: case ENCHANT_WEP_POTENCY: case ENCHANT_WEP_MONGOOSE: case ENCHANT_WEP_MIGHTY_SPELL_POWER: case ENCHANT_WEP_EXECUTIONER: case ENCHANT_WEP_TITANIUM_CHAIN: // 2H weapons // case ENCHANT_WEP_BERSERKING: // case ENCHANT_WEP_MONGOOSE: // case ENCHANT_WEP_EXECUTIONER: // case ENCHANT_WEP_TITANIUM_CHAIN: case ENCHANT_WEP_GREATER_SPELL_POWER: case ENCHANT_WEP_AGILITY_2H: case ENCHANT_WEP_MASSACRE: // Runeforging case ENCHANT_WEP_CINDERGLACIER: case ENCHANT_WEP_LICHBANE: case ENCHANT_WEP_RAZORICE: case ENCHANT_WEP_SPELLBREAKING: case ENCHANT_WEP_SPELLSHATTERING: case ENCHANT_WEP_SWORDBREAKING: case ENCHANT_WEP_SWORDSHATTERING: case ENCHANT_WEP_FALLEN_CRUSADER: case ENCHANT_WEP_NERUBIAN_CARAPACE: case ENCHANT_WEP_STONESKIN_GARGOYLE: slot = EQUIPMENT_SLOT_MAINHAND; break; // Shields case ENCHANT_SHIELD_DEFENSE: case ENCHANT_SHIELD_INTELLECT: case ENCHANT_SHIELD_RESILIENCE: case ENCHANT_SHIELD_TITANIUM_PLATING: case ENCHANT_SHIELD_MAJOR_STAMINA: case ENCHANT_SHIELD_TITANIUM_SPIKE: slot = EQUIPMENT_SLOT_OFFHAND; break; // Head case ENCHANT_HEAD_BLISSFUL_MENDING: case ENCHANT_HEAD_BURNING_MYSTERIES: case ENCHANT_HEAD_DOMINANCE: case ENCHANT_HEAD_SAVAGE_GLADIATOR: case ENCHANT_HEAD_STALWART_PROTECTOR: case ENCHANT_HEAD_TORMENT: case ENCHANT_HEAD_TRIUMPH: slot = EQUIPMENT_SLOT_HEAD; break; // Shoulders case ENCHANT_SHOULDER_MASTERS_AXE: case ENCHANT_SHOULDER_MASTERS_CRAG: case ENCHANT_SHOULDER_MASTERS_PINNACLE: case ENCHANT_SHOULDER_MASTERS_STORM: case ENCHANT_SHOULDER_GREATER_AXE: case ENCHANT_SHOULDER_GREATER_CRAG: case ENCHANT_SHOULDER_GREATER_GLADIATOR: case ENCHANT_SHOULDER_GREATER_PINNACLE: case ENCHANT_SHOULDER_GREATER_STORM: case ENCHANT_SHOULDER_DOMINANCE: case ENCHANT_SHOULDER_TRIUMPH: slot = EQUIPMENT_SLOT_SHOULDERS; break; // Cloak case ENCHANT_CLOAK_DARKGLOW_EMBROIDERY: case ENCHANT_CLOAK_SWORDGUARD_EMBROIDERY: case ENCHANT_CLOAK_FLEXWEAVE_UNDERLAY: case ENCHANT_CLOAK_LIGHTWEAVE_EMBROIDERY: case ENCHANT_CLOAK_SPRINGY_ARACHNOWEAVE: case ENCHANT_CLOAK_WISDOM: case ENCHANT_CLOAK_TITANWEAVE: case ENCHANT_CLOAK_SPELL_PIERCING: case ENCHANT_CLOAK_SHADOW_ARMOR: case ENCHANT_CLOAK_MIGHTY_ARMOR: case ENCHANT_CLOAK_MAJOR_AGILITY: case ENCHANT_CLOAK_GREATER_SPEED: slot = EQUIPMENT_SLOT_BACK; break; // Chest case ENCHANT_CHEST_EXCEPTIONAL_MANA: case ENCHANT_CHEST_GREATER_MANA_RESTO: case ENCHANT_CHEST_EXCEPTIONAL_RESILIENCE: case ENCHANT_CHEST_SUPER_HEALTH: case ENCHANT_CHEST_ALL_STATS: slot = EQUIPMENT_SLOT_CHEST; break; // Bracers case ENCHANT_BRACER_GREATER_ASSAULT: case ENCHANT_BRACER_EXCEPTIONAL_INTELLECT: case ENCHANT_BRACER_MAJOR_SPIRIT: case ENCHANT_BRACER_EXPERTISE: case ENCHANT_BRACER_GREATER_STATS: case ENCHANT_BRACER_SUPERIOR_SPELLPOWER: case ENCHANT_BRACER_MAJOR_STAMINA: case ENCHANT_BRACER_FUR_LINING_AP: case ENCHANT_BRACER_FUR_LINING_STAMINA: case ENCHANT_BRACER_FUR_LINING_SP: case ENCHANT_BRACER_ARCANE_RESIST: case ENCHANT_BRACER_NATURE_RESIST: case ENCHANT_BRACER_SHADOW_RESIST: case ENCHANT_BRACER_FROST_RESIST: case ENCHANT_BRACER_FIRE_RESIST: case ENCHANT_BRACER_SOCKET_BRACER: slot = EQUIPMENT_SLOT_WRISTS; break; // Gloves case ENCHANT_GLOVES_EXPERTISE: case ENCHANT_GLOVES_PRECISION: case ENCHANT_GLOVES_GREATER_ASSAULT: case ENCHANT_GLOVES_MAJOR_AGILITY: case ENCHANT_GLOVES_EXCEPTIONAL_SPELLPOWER: case ENCHANT_GLOVES_ARMSMAN: case ENCHANT_GLOVES_SOCKET_GLOVES: case ENCHANT_GLOVES_PYROROCKET: case ENCHANT_GLOVES_HYPERSPEED_ACCELERATORS: slot = EQUIPMENT_SLOT_HANDS; break; // Belt case ENCHANT_BELT_ETERNAL_BELT_BUCKLE: case ENCHANT_BELT_FRAG_BELT: slot = EQUIPMENT_SLOT_WAIST; break; // Legs case ENCHANT_LEGS_FROSTHIDE_ARMOR: case ENCHANT_LEGS_ICESCALE_ARMOR: case ENCHANT_LEGS_EARTHEN_ARMOR: case ENCHANT_LEGS_SAPPHIRE_SPELLTHREAD : case ENCHANT_LEGS_BRILLIANT_SPELLTHREAD: slot = EQUIPMENT_SLOT_LEGS; break; // Boots case ENCHANT_BOOTS_TUSKARRS_VITALITY: case ENCHANT_BOOTS_ICEWALKER: case ENCHANT_BOOTS_GREATER_ASSAULT: case ENCHANT_BOOTS_GREATER_SPIRIT: case ENCHANT_BOOTS_GREATER_FORTITUDE: case ENCHANT_BOOTS_SUPERIOR_AGILITY: case ENCHANT_BOOTS_NITRO_BOOSTS: slot = EQUIPMENT_SLOT_FEET; break; // Rings case ENCHANT_RING_STAMINA: case ENCHANT_RING_GREATER_SPELLPOWER: case ENCHANT_RING_ASSAULT: slot = EQUIPMENT_SLOT_FINGER1; break; // Ranged weapon case ENCHANT_RANGED_HEARTSEEKER_SCOPE: case ENCHANT_RANGED_SUN_SCOPE: slot = EQUIPMENT_SLOT_RANGED; break; // Main hand case GOSSIP_ACTION_INFO_DEF + 20: slot = EQUIPMENT_SLOT_MAINHAND; action = selected_enchant; check_adjacent_slot = false; break; // Off hand case GOSSIP_ACTION_INFO_DEF + 21: slot = EQUIPMENT_SLOT_OFFHAND; action = selected_enchant; check_adjacent_slot = false; break; default: player->CLOSE_GOSSIP_MENU(); break; } if (slot > -1) { // allows for a maximum of 2 duplicates, and the // convenience of using enchant ids as gossip // userdata if (action < 0) action = -action; Item* item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, slot); if (!item && slot == INVTYPE_RANGEDRIGHT) item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, INVTYPE_RANGEDRIGHT); if (item && check_adjacent_slot && item->GetEnchantmentId(PERM_ENCHANTMENT_SLOT) != 0) { switch (slot) { case EQUIPMENT_SLOT_MAINHAND: { Item* offhand = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (offhand) { player->PlayerTalkClass->ClearMenus(); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, item->GetTemplate()->Name1.c_str(), GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 20); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, offhand->GetTemplate()->Name1.c_str(), GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 21); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Back", GOSSIP_SENDER_MAIN, -1); player->SEND_GOSSIP_MENU(1, creature->GetGUID()); selected_enchant = action; return true; } break; } case EQUIPMENT_SLOT_FINGER1: { Item* ring2 = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2); if (ring2) { player->PlayerTalkClass->ClearMenus(); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, item->GetTemplate()->Name1.c_str(), GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 20); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, ring2->GetTemplate()->Name1.c_str(), GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 21); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Back", GOSSIP_SENDER_MAIN, -1); player->SEND_GOSSIP_MENU(1, creature->GetGUID()); selected_enchant = action; return true; } break; } default: break; } } Enchant(player, creature, item, action); ShowMainMenu(player, creature); } return true; }
bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) { Item * item; player->PlayerTalkClass->ClearMenus(); switch (action) { case 0: //Welcome message on click player->GetSession()->SendAreaTriggerMessage("|cffFF0000Hello there, I will be enchanting your gear!"); { player->ADD_GOSSIP_ITEM(1, "[Welcome to the enchanting NPC!]", GOSSIP_SENDER_MAIN, 0); player->ADD_GOSSIP_ITEM(1, "[Enchant Weapon]", GOSSIP_SENDER_MAIN, 1); player->ADD_GOSSIP_ITEM(1, "[Enchant 2H Weapon]", GOSSIP_SENDER_MAIN, 2); player->ADD_GOSSIP_ITEM(1, "[Enchant Shield]", GOSSIP_SENDER_MAIN, 3); player->ADD_GOSSIP_ITEM(1, "[Enchant Head]", GOSSIP_SENDER_MAIN, 4); player->ADD_GOSSIP_ITEM(1, "[Enchant Shoulders]", GOSSIP_SENDER_MAIN, 5); player->ADD_GOSSIP_ITEM(1, "[Enchant Cloak-]", GOSSIP_SENDER_MAIN, 6); player->ADD_GOSSIP_ITEM(1, "[Enchant Chest]", GOSSIP_SENDER_MAIN, 7); player->ADD_GOSSIP_ITEM(1, "[Enchant Bracers]", GOSSIP_SENDER_MAIN, 8); player->ADD_GOSSIP_ITEM(1, "[Enchant Gloves]", GOSSIP_SENDER_MAIN, 9); player->ADD_GOSSIP_ITEM(1, "[Enchant Legs]", GOSSIP_SENDER_MAIN, 10); player->ADD_GOSSIP_ITEM(1, "[Enchant Feet]", GOSSIP_SENDER_MAIN, 11); if (player->HasSkill(SKILL_ENCHANTING) && player->GetSkillValue(SKILL_ENCHANTING) == 450) player->ADD_GOSSIP_ITEM(1, "[Enchant Rings]", GOSSIP_SENDER_MAIN, 12); player->PlayerTalkClass->SendGossipMenu(100001, creature->GetGUID()); return true; break; } case 1: // Enchant Weapon if (player->HasSkill(SKILL_ENCHANTING) && player->GetSkillValue(SKILL_ENCHANTING) == 450) { player->ADD_GOSSIP_ITEM(1, "Blade Ward", GOSSIP_SENDER_MAIN, 102); player->ADD_GOSSIP_ITEM(1, "Blood Draining", GOSSIP_SENDER_MAIN, 103); } player->ADD_GOSSIP_ITEM(1, "Exceptional Agility", GOSSIP_SENDER_MAIN, 100); player->ADD_GOSSIP_ITEM(1, "Exceptional Spirit", GOSSIP_SENDER_MAIN, 101); player->ADD_GOSSIP_ITEM(1, "Berserking", GOSSIP_SENDER_MAIN, 104); player->ADD_GOSSIP_ITEM(1, "Accuracy", GOSSIP_SENDER_MAIN, 105); player->ADD_GOSSIP_ITEM(1, "Black Magic", GOSSIP_SENDER_MAIN, 106); player->ADD_GOSSIP_ITEM(1, "Battlemaster", GOSSIP_SENDER_MAIN, 107); player->ADD_GOSSIP_ITEM(1, "Icebreaker", GOSSIP_SENDER_MAIN, 108); player->ADD_GOSSIP_ITEM(1, "Lifeward", GOSSIP_SENDER_MAIN, 109); player->ADD_GOSSIP_ITEM(1, "Titanguard", GOSSIP_SENDER_MAIN, 110); player->ADD_GOSSIP_ITEM(1, "Superior Potency", GOSSIP_SENDER_MAIN, 111); player->ADD_GOSSIP_ITEM(1, "Mighty Spellpower", GOSSIP_SENDER_MAIN, 112); player->ADD_GOSSIP_ITEM(1, "Mongoose", GOSSIP_SENDER_MAIN, 113); player->ADD_GOSSIP_ITEM(1, "Executioner", GOSSIP_SENDER_MAIN, 114); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100002, creature->GetGUID()); return true; break; case 2: // Enchant 2H Weapon item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { creature->MonsterWhisper("This enchant needs a 2H weapon equiped.", player->GetGUID()); player->CLOSE_GOSSIP_MENU(); return false; } if(item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON) { player->ADD_GOSSIP_ITEM(1, "Berserking", GOSSIP_SENDER_MAIN, 104); player->ADD_GOSSIP_ITEM(1, "Mongoose", GOSSIP_SENDER_MAIN, 113); player->ADD_GOSSIP_ITEM(1, "Executioner", GOSSIP_SENDER_MAIN, 114); player->ADD_GOSSIP_ITEM(1, "Greater Spellpower", GOSSIP_SENDER_MAIN, 115); player->ADD_GOSSIP_ITEM(1, "Major Agility", GOSSIP_SENDER_MAIN, 116); player->ADD_GOSSIP_ITEM(1, "Massacre", GOSSIP_SENDER_MAIN, 117); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); } else { creature->MonsterWhisper("This enchant needs a 2H weapon equiped.", player->GetGUID()); player->CLOSE_GOSSIP_MENU(); } player->PlayerTalkClass->SendGossipMenu(100003, creature->GetGUID()); return true; break; case 3: // Enchant Shield item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { creature->MonsterWhisper("This enchant needs a shield equiped.", player->GetGUID()); player->CLOSE_GOSSIP_MENU(); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { player->ADD_GOSSIP_ITEM(1, "Defense", GOSSIP_SENDER_MAIN, 118); player->ADD_GOSSIP_ITEM(1, "Greater Intellect", GOSSIP_SENDER_MAIN, 119); player->ADD_GOSSIP_ITEM(1, "Resilience", GOSSIP_SENDER_MAIN, 120); player->ADD_GOSSIP_ITEM(1, "Titanium Plating", GOSSIP_SENDER_MAIN, 121); player->ADD_GOSSIP_ITEM(1, "Major Stamina", GOSSIP_SENDER_MAIN, 122); player->ADD_GOSSIP_ITEM(1, "Tough Shield", GOSSIP_SENDER_MAIN, 123); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); } else { creature->MonsterWhisper("This enchant needs a shield equiped.", player->GetGUID()); player->CLOSE_GOSSIP_MENU(); } player->PlayerTalkClass->SendGossipMenu(100004, creature->GetGUID()); return true; break; case 4: // Enchant Head player->ADD_GOSSIP_ITEM(1, "Arcanum of Blissful Mending", GOSSIP_SENDER_MAIN, 124); player->ADD_GOSSIP_ITEM(1, "Arcanum of Burning Mysteries", GOSSIP_SENDER_MAIN, 125); player->ADD_GOSSIP_ITEM(1, "Arcanum of Dominance", GOSSIP_SENDER_MAIN, 126); player->ADD_GOSSIP_ITEM(1, "Arcanum of The Savage Gladiator", GOSSIP_SENDER_MAIN, 127); player->ADD_GOSSIP_ITEM(1, "Arcanum of The Stalwart Protector", GOSSIP_SENDER_MAIN, 128); player->ADD_GOSSIP_ITEM(1, "Arcanum of Torment", GOSSIP_SENDER_MAIN, 129); player->ADD_GOSSIP_ITEM(1, "Arcanum of Triumph", GOSSIP_SENDER_MAIN, 130); player->ADD_GOSSIP_ITEM(1, "Arcanum of Eclipsed Moon", GOSSIP_SENDER_MAIN, 131); player->ADD_GOSSIP_ITEM(1, "Arcanum of the Flame's Soul", GOSSIP_SENDER_MAIN, 132); player->ADD_GOSSIP_ITEM(1, "Arcanum of the Fleeing Shadow", GOSSIP_SENDER_MAIN, 133); player->ADD_GOSSIP_ITEM(1, "Arcanum of the Frosty Soul", GOSSIP_SENDER_MAIN, 134); player->ADD_GOSSIP_ITEM(1, "Arcanum of Toxic Warding", GOSSIP_SENDER_MAIN, 135); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100005, creature->GetGUID()); return true; break; case 5: // Enchant Shoulders if (player->HasSkill(SKILL_INSCRIPTION) && player->GetSkillValue(SKILL_INSCRIPTION) == 450) { player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Axe", GOSSIP_SENDER_MAIN, 136); player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Crag", GOSSIP_SENDER_MAIN, 137); player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Pinnacle", GOSSIP_SENDER_MAIN, 138); player->ADD_GOSSIP_ITEM(1, "Master's Inscription of the Storm", GOSSIP_SENDER_MAIN, 139); } player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Axe", GOSSIP_SENDER_MAIN, 140); player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Crag", GOSSIP_SENDER_MAIN, 141); player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Pinnacle", GOSSIP_SENDER_MAIN, 142); player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Gladiator", GOSSIP_SENDER_MAIN, 143); player->ADD_GOSSIP_ITEM(1, "Greater Inscription of the Storm", GOSSIP_SENDER_MAIN, 144); player->ADD_GOSSIP_ITEM(1, "Inscription of Dominance", GOSSIP_SENDER_MAIN, 145); player->ADD_GOSSIP_ITEM(1, "Inscription of Triumph", GOSSIP_SENDER_MAIN, 146); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100006, creature->GetGUID()); return true; break; case 6: // Enchant Cloak if (player->HasSkill(SKILL_TAILORING) && player->GetSkillValue(SKILL_TAILORING) == 450) { player->ADD_GOSSIP_ITEM(1, "Darkglow Embroidery", GOSSIP_SENDER_MAIN, 149); player->ADD_GOSSIP_ITEM(1, "Lightweave Embroidery", GOSSIP_SENDER_MAIN, 150); player->ADD_GOSSIP_ITEM(1, "Swordguard Embroidery", GOSSIP_SENDER_MAIN, 151); } if (player->HasSkill(SKILL_ENGINEERING) && player->GetSkillValue(SKILL_ENGINEERING) == 450) { player->ADD_GOSSIP_ITEM(1, "Springy Arachnoweave", GOSSIP_SENDER_MAIN, 147); } player->ADD_GOSSIP_ITEM(1, "Shadow Armor", GOSSIP_SENDER_MAIN, 148); player->ADD_GOSSIP_ITEM(1, "Wisdom", GOSSIP_SENDER_MAIN, 152); player->ADD_GOSSIP_ITEM(1, "Titanweave", GOSSIP_SENDER_MAIN, 153); player->ADD_GOSSIP_ITEM(1, "Spell Piercing", GOSSIP_SENDER_MAIN, 154); player->ADD_GOSSIP_ITEM(1, "Mighty Armor", GOSSIP_SENDER_MAIN, 155); player->ADD_GOSSIP_ITEM(1, "Major Agility", GOSSIP_SENDER_MAIN, 156); player->ADD_GOSSIP_ITEM(1, "Greater Speed", GOSSIP_SENDER_MAIN, 157); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100007, creature->GetGUID()); return true; break; case 7: //Enchant chest player->ADD_GOSSIP_ITEM(1, "Powerful Stats", GOSSIP_SENDER_MAIN, 158); player->ADD_GOSSIP_ITEM(1, "Super Health", GOSSIP_SENDER_MAIN, 159); player->ADD_GOSSIP_ITEM(1, "Greater Mana Restoration", GOSSIP_SENDER_MAIN, 160); player->ADD_GOSSIP_ITEM(1, "Exceptional Resilience", GOSSIP_SENDER_MAIN, 161); player->ADD_GOSSIP_ITEM(1, "Greater Defense", GOSSIP_SENDER_MAIN, 162); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100008, creature->GetGUID()); return true; break; case 8: //Enchant Bracers player->ADD_GOSSIP_ITEM(1, "Major Stamina", GOSSIP_SENDER_MAIN, 163); player->ADD_GOSSIP_ITEM(1, "Superior Spell Power", GOSSIP_SENDER_MAIN, 164); player->ADD_GOSSIP_ITEM(1, "Greater Assult", GOSSIP_SENDER_MAIN, 165); player->ADD_GOSSIP_ITEM(1, "Major Spirit", GOSSIP_SENDER_MAIN, 166); player->ADD_GOSSIP_ITEM(1, "Expertise", GOSSIP_SENDER_MAIN, 167); player->ADD_GOSSIP_ITEM(1, "Greater Stats", GOSSIP_SENDER_MAIN, 168); player->ADD_GOSSIP_ITEM(1, "Exceptional Intellect", GOSSIP_SENDER_MAIN, 169); if (player->HasSkill(SKILL_LEATHERWORKING) && player->GetSkillValue(SKILL_LEATHERWORKING) == 450) { player->ADD_GOSSIP_ITEM(1, "Fur Lining - Arcane Resist", GOSSIP_SENDER_MAIN, 170); player->ADD_GOSSIP_ITEM(1, "Fur Lining - Fire Resist", GOSSIP_SENDER_MAIN, 171); player->ADD_GOSSIP_ITEM(1, "Fur Lining - Frost Resist", GOSSIP_SENDER_MAIN, 172); player->ADD_GOSSIP_ITEM(1, "Fur Lining - Nature Resist", GOSSIP_SENDER_MAIN, 173); player->ADD_GOSSIP_ITEM(1, "Fur Lining - Shadow Resist", GOSSIP_SENDER_MAIN, 174); player->ADD_GOSSIP_ITEM(1, "Fur Lining - Attack power", GOSSIP_SENDER_MAIN, 175); player->ADD_GOSSIP_ITEM(1, "Fur Lining - Stamina", GOSSIP_SENDER_MAIN, 176); player->ADD_GOSSIP_ITEM(1, "Fur Lining - Spellpower", GOSSIP_SENDER_MAIN, 177); } player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100009, creature->GetGUID()); return true; break; case 9: //Enchant Gloves if (player->HasSkill(SKILL_ENGINEERING) && player->GetSkillValue(SKILL_ENGINEERING) == 450) { player->ADD_GOSSIP_ITEM(1, "Greater Blasting", GOSSIP_SENDER_MAIN, 178); } player->ADD_GOSSIP_ITEM(1, "Armsman", GOSSIP_SENDER_MAIN, 179); player->ADD_GOSSIP_ITEM(1, "Crusher", GOSSIP_SENDER_MAIN, 180); player->ADD_GOSSIP_ITEM(1, "Agility", GOSSIP_SENDER_MAIN, 181); player->ADD_GOSSIP_ITEM(1, "Precision", GOSSIP_SENDER_MAIN, 182); player->ADD_GOSSIP_ITEM(1, "Expertise", GOSSIP_SENDER_MAIN, 183); player->ADD_GOSSIP_ITEM(1, "Exceptional spell power", GOSSIP_SENDER_MAIN, 205); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100010, creature->GetGUID()); return true; break; case 10: //Enchant legs player->ADD_GOSSIP_ITEM(1, "Earthen Leg Armor", GOSSIP_SENDER_MAIN, 184); player->ADD_GOSSIP_ITEM(1, "Frosthide Leg Armor", GOSSIP_SENDER_MAIN, 185); player->ADD_GOSSIP_ITEM(1, "Icescale Leg Armor", GOSSIP_SENDER_MAIN, 186); player->ADD_GOSSIP_ITEM(1, "Brilliant Spellthread", GOSSIP_SENDER_MAIN, 187); player->ADD_GOSSIP_ITEM(1, "Sapphire Spellthread", GOSSIP_SENDER_MAIN, 188); player->ADD_GOSSIP_ITEM(1, "Dragonscale Leg Armor", GOSSIP_SENDER_MAIN, 189); player->ADD_GOSSIP_ITEM(1, "Wyrmscale Leg Armor", GOSSIP_SENDER_MAIN, 190); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100011, creature->GetGUID()); return true; break; case 11: //Enchant feet player->ADD_GOSSIP_ITEM(1, "Greater Assult", GOSSIP_SENDER_MAIN, 191); player->ADD_GOSSIP_ITEM(1, "Tuskars Vitliaty", GOSSIP_SENDER_MAIN, 192); player->ADD_GOSSIP_ITEM(1, "Superior Agility", GOSSIP_SENDER_MAIN, 193); player->ADD_GOSSIP_ITEM(1, "Greater Spirit", GOSSIP_SENDER_MAIN, 194); player->ADD_GOSSIP_ITEM(1, "Greater Vitality", GOSSIP_SENDER_MAIN, 195); player->ADD_GOSSIP_ITEM(1, "Icewalker", GOSSIP_SENDER_MAIN, 196); player->ADD_GOSSIP_ITEM(1, "Greater Fortitude", GOSSIP_SENDER_MAIN, 197); if (player->HasSkill(SKILL_ENGINEERING) && player->GetSkillValue(SKILL_ENGINEERING) == 450) { player->ADD_GOSSIP_ITEM(1, "Nitro Boots", GOSSIP_SENDER_MAIN, 198); player->ADD_GOSSIP_ITEM(1, "Hand-Mounted Pyro Rocket", GOSSIP_SENDER_MAIN, 199); player->ADD_GOSSIP_ITEM(1, "Hyperspeed Accedlerators", GOSSIP_SENDER_MAIN, 200); player->ADD_GOSSIP_ITEM(1, "Reticulated Armor Webbing", GOSSIP_SENDER_MAIN, 201); } player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100012, creature->GetGUID()); return true; break; case 12: //Enchant rings player->ADD_GOSSIP_ITEM(1, "Assult", GOSSIP_SENDER_MAIN, 202); player->ADD_GOSSIP_ITEM(1, "Greater Spell Power", GOSSIP_SENDER_MAIN, 203); player->ADD_GOSSIP_ITEM(1, "Stamina", GOSSIP_SENDER_MAIN, 204); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100013, creature->GetGUID()); return true; break; case 100: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_AGILITY_1H); player->PlayerTalkClass->SendCloseGossip(); break; case 101: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_SPIRIT); player->PlayerTalkClass->SendCloseGossip(); break; case 102: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLADE_WARD); player->PlayerTalkClass->SendCloseGossip(); break; case 103: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLOOD_DRAINING); player->PlayerTalkClass->SendCloseGossip(); break; case 104: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BERSERKING); player->PlayerTalkClass->SendCloseGossip(); break; case 105: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_ACCURACY); player->PlayerTalkClass->SendCloseGossip(); break; case 106: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLACK_MAGIC); player->PlayerTalkClass->SendCloseGossip(); break; case 107: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BATTLEMASTER); player->PlayerTalkClass->SendCloseGossip(); break; case 108: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_ICEBREAKER); player->PlayerTalkClass->SendCloseGossip(); break; case 109: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_LIFEWARD); player->PlayerTalkClass->SendCloseGossip(); break; case 110: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_TITANGUARD); player->PlayerTalkClass->SendCloseGossip(); break; case 111: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_POTENCY); player->PlayerTalkClass->SendCloseGossip(); break; case 112: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_MIGHTY_SPELL_POWER); player->PlayerTalkClass->SendCloseGossip(); break; case 113: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_MONGOOSE); player->PlayerTalkClass->SendCloseGossip(); break; case 114: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_EXECUTIONER); player->PlayerTalkClass->SendCloseGossip(); break; case 115: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_GREATER_SPELL_POWER); player->PlayerTalkClass->SendCloseGossip(); break; case 116: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_AGILITY); player->PlayerTalkClass->SendCloseGossip(); break; case 117: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_MASSACRE); player->PlayerTalkClass->SendCloseGossip(); break; case 118: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_DEFENSE); player->PlayerTalkClass->SendCloseGossip(); break; case 119: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_INTELLECT); player->PlayerTalkClass->SendCloseGossip(); break; case 120: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_RESILIENCE); player->PlayerTalkClass->SendCloseGossip(); break; case 121: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_TITANIUM_PLATING); player->PlayerTalkClass->SendCloseGossip(); break; case 122: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_STAMINA); player->PlayerTalkClass->SendCloseGossip(); break; case 123: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_TOUGHSHIELD); player->PlayerTalkClass->SendCloseGossip(); break; case 124: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_BLISSFUL_MENDING); player->PlayerTalkClass->SendCloseGossip(); break; case 125: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_BURNING_MYSTERIES); player->PlayerTalkClass->SendCloseGossip(); break; case 126: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_DOMINANCE); player->PlayerTalkClass->SendCloseGossip(); break; case 127: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_SAVAGE_GLADIATOR); player->PlayerTalkClass->SendCloseGossip(); break; case 128: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_STALWART_PROTECTOR); player->PlayerTalkClass->SendCloseGossip(); break; case 129: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_TORMENT); player->PlayerTalkClass->SendCloseGossip(); break; case 130: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_TRIUMPH); player->PlayerTalkClass->SendCloseGossip(); break; case 131: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_ECLIPSED_MOON); player->PlayerTalkClass->SendCloseGossip(); break; case 132: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_FLAME_SOUL); player->PlayerTalkClass->SendCloseGossip(); break; case 133: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_FLEEING_SHADOW); player->PlayerTalkClass->SendCloseGossip(); break; case 134: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_FROSTY_SOUL); player->PlayerTalkClass->SendCloseGossip(); break; case 135: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD), ENCHANT_HEAD_TOXIC_WARDING); player->PlayerTalkClass->SendCloseGossip(); break; case 136: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_AXE); player->PlayerTalkClass->SendCloseGossip(); break; case 137: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_CRAG); player->PlayerTalkClass->SendCloseGossip(); break; case 138: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_PINNACLE); player->PlayerTalkClass->SendCloseGossip(); break; case 139: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_MASTERS_STORM); player->PlayerTalkClass->SendCloseGossip(); break; case 140: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_AXE); player->PlayerTalkClass->SendCloseGossip(); break; case 141: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_CRAG); player->PlayerTalkClass->SendCloseGossip(); break; case 142: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_GLADIATOR); player->PlayerTalkClass->SendCloseGossip(); break; case 143: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_PINNACLE); player->PlayerTalkClass->SendCloseGossip(); break; case 144: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_GREATER_STORM); player->PlayerTalkClass->SendCloseGossip(); break; case 145: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_DOMINANCE); player->PlayerTalkClass->SendCloseGossip(); break; case 146: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS), ENCHANT_SHOULDER_TRIUMPH); player->PlayerTalkClass->SendCloseGossip(); break; case 147: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SPRINGY_ARACHNOWEAVE); player->PlayerTalkClass->SendCloseGossip(); break; case 148: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SHADOW_ARMOR); player->PlayerTalkClass->SendCloseGossip(); break; case 149: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_DARKGLOW_EMBROIDERY); player->PlayerTalkClass->SendCloseGossip(); break; case 150: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_LIGHTWEAVE_EMBROIDERY); player->PlayerTalkClass->SendCloseGossip(); break; case 151: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SWORDGUARD_EMBROIDERY); player->PlayerTalkClass->SendCloseGossip(); break; case 152: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_WISDOM); player->PlayerTalkClass->SendCloseGossip(); break; case 153: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_TITANWEAVE); player->PlayerTalkClass->SendCloseGossip(); break; case 154: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SPELL_PIERCING); player->PlayerTalkClass->SendCloseGossip(); break; case 155: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_MIGHTY_ARMOR); player->PlayerTalkClass->SendCloseGossip(); break; case 156: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_MAJOR_AGILITY); player->PlayerTalkClass->SendCloseGossip(); break; case 157: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_GREATER_SPEED); player->PlayerTalkClass->SendCloseGossip(); break; case 158: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_POWERFUL_STATS); player->PlayerTalkClass->SendCloseGossip(); break; case 159: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_SUPER_HEALTH); player->PlayerTalkClass->SendCloseGossip(); break; case 160: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_GREATER_MAINA_REST); player->PlayerTalkClass->SendCloseGossip(); break; case 161: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_EXCEPTIONAL_RESIL); player->PlayerTalkClass->SendCloseGossip(); break; case 162: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_GREATER_DEFENSE); player->PlayerTalkClass->SendCloseGossip(); break; case 163: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_MAJOR_STAMINA); player->PlayerTalkClass->SendCloseGossip(); break; case 164: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_SUPERIOR_SP); player->PlayerTalkClass->SendCloseGossip(); break; case 165: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_GREATER_ASSUALT); player->PlayerTalkClass->SendCloseGossip(); break; case 166: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_MAJOR_SPIRT); player->PlayerTalkClass->SendCloseGossip(); break; case 167: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_EXPERTISE); player->PlayerTalkClass->SendCloseGossip(); break; case 168: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_GREATER_STATS); player->PlayerTalkClass->SendCloseGossip(); break; case 169: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_INTELLECT); player->PlayerTalkClass->SendCloseGossip(); break; case 170: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_ARCANE); player->PlayerTalkClass->SendCloseGossip(); break; case 171: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_FIRE); player->PlayerTalkClass->SendCloseGossip(); break; case 172: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_FROST); player->PlayerTalkClass->SendCloseGossip(); break; case 173: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_NATURE); player->PlayerTalkClass->SendCloseGossip(); break; case 174: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_SHADOW); player->PlayerTalkClass->SendCloseGossip(); break; case 175: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_ATTACK); player->PlayerTalkClass->SendCloseGossip(); break; case 176: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_STAMINA); player->PlayerTalkClass->SendCloseGossip(); break; case 177: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_FURL_SPELLPOWER); player->PlayerTalkClass->SendCloseGossip(); break; case 178: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_GREATER_BLASTING); player->PlayerTalkClass->SendCloseGossip(); break; case 179: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_ARMSMAN); player->PlayerTalkClass->SendCloseGossip(); break; case 180: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_CRUSHER); player->PlayerTalkClass->SendCloseGossip(); break; case 181: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_AGILITY); player->PlayerTalkClass->SendCloseGossip(); break; case 182: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_PRECISION); player->PlayerTalkClass->SendCloseGossip(); break; case 183: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_EXPERTISE); player->PlayerTalkClass->SendCloseGossip(); break; case 184: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_EARTHEN); player->PlayerTalkClass->SendCloseGossip(); break; case 185: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_FROSTHIDE); player->PlayerTalkClass->SendCloseGossip(); break; case 186: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_ICESCALE); player->PlayerTalkClass->SendCloseGossip(); break; case 187: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_BRILLIANT_SPELLTHREAD); player->PlayerTalkClass->SendCloseGossip(); break; case 188: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_SAPPHIRE_SPELLTHREAD); player->PlayerTalkClass->SendCloseGossip(); break; case 189: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_DRAGONSCALE); player->PlayerTalkClass->SendCloseGossip(); break; case 190: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEG_WYRMSCALE); player->PlayerTalkClass->SendCloseGossip(); break; case 191: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_ASSULT); player->PlayerTalkClass->SendCloseGossip(); break; case 192: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_TUSKARS_VITLIATY); player->PlayerTalkClass->SendCloseGossip(); break; case 193: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_SUPERIOR_AGILITY); player->PlayerTalkClass->SendCloseGossip(); break; case 194: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_SPIRIT); player->PlayerTalkClass->SendCloseGossip(); break; case 195: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_VITALITY); player->PlayerTalkClass->SendCloseGossip(); break; case 196: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_ICEWALKER); player->PlayerTalkClass->SendCloseGossip(); break; case 197: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_GREATER_FORTITUDE); player->PlayerTalkClass->SendCloseGossip(); break; case 198: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_NITRO_BOOTS); player->PlayerTalkClass->SendCloseGossip(); break; case 199: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_PYRO_ROCKET); player->PlayerTalkClass->SendCloseGossip(); break; case 200: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_HYPERSPEED); player->PlayerTalkClass->SendCloseGossip(); break; case 201: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_ARMOR_WEBBING); player->PlayerTalkClass->SendCloseGossip(); break; case 202: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1), ENCHANT_RING_ASSULT); Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2), ENCHANT_RING_ASSULT); player->PlayerTalkClass->SendCloseGossip(); break; case 203: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1), ENCHANT_RING_GREATER_SP); Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2), ENCHANT_RING_GREATER_SP); player->PlayerTalkClass->SendCloseGossip(); break; case 204: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1), ENCHANT_RING_STAMINA); Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2), ENCHANT_RING_STAMINA); player->PlayerTalkClass->SendCloseGossip(); break; case 205: // Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_SP); // player->PlayerTalkClass->SendCloseGossip(); // break; // case 300: { player->ADD_GOSSIP_ITEM(1, "[Welcome to Enchanting NPC!]", GOSSIP_SENDER_MAIN, 0); player->ADD_GOSSIP_ITEM(1, "[Enchant Weapon]", GOSSIP_SENDER_MAIN, 1); player->ADD_GOSSIP_ITEM(1, "[Enchant 2H Weapon]", GOSSIP_SENDER_MAIN, 2); player->ADD_GOSSIP_ITEM(1, "[Enchant Shield]", GOSSIP_SENDER_MAIN, 3); player->ADD_GOSSIP_ITEM(1, "[Enchant Head]", GOSSIP_SENDER_MAIN, 4); player->ADD_GOSSIP_ITEM(1, "[Enchant Shoulders]", GOSSIP_SENDER_MAIN, 5); player->ADD_GOSSIP_ITEM(1, "[Enchant Cloak]", GOSSIP_SENDER_MAIN, 6); player->ADD_GOSSIP_ITEM(1, "[Enchant Chest]", GOSSIP_SENDER_MAIN, 7); player->ADD_GOSSIP_ITEM(1, "[Enchant Bracers]", GOSSIP_SENDER_MAIN, 8); player->ADD_GOSSIP_ITEM(1, "[Enchant Gloves]", GOSSIP_SENDER_MAIN, 9); player->ADD_GOSSIP_ITEM(1, "[Enchant Legs]", GOSSIP_SENDER_MAIN, 10); player->ADD_GOSSIP_ITEM(1, "[Enchant Feet]", GOSSIP_SENDER_MAIN, 11); if (player->HasSkill(SKILL_ENCHANTING) && player->GetSkillValue(SKILL_ENCHANTING) == 450) player->ADD_GOSSIP_ITEM(1, "[Enchant Rings]", GOSSIP_SENDER_MAIN, 12); player->PlayerTalkClass->SendGossipMenu(100001, creature->GetGUID()); return true; break; } } return true; }
bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) { player->PlayerTalkClass->ClearMenus(); Item * item; switch (action) { case 15: { player->PlayerTalkClass->SendCloseGossip(); break; } case 1: // Enchant Weapon player->ADD_GOSSIP_ITEM(5, "Bloody Dancing Steel", GOSSIP_SENDER_MAIN, 5000); player->ADD_GOSSIP_ITEM(5, "Power Torrent - 500 int Proc", GOSSIP_SENDER_MAIN, 100); player->ADD_GOSSIP_ITEM(5, "Hurricane - 450 Haste Proc", GOSSIP_SENDER_MAIN, 103); player->ADD_GOSSIP_ITEM(5, "Pyrium Weapon Chain 50% reduc on disarm/40 hit Proc", GOSSIP_SENDER_MAIN, 104); player->ADD_GOSSIP_ITEM(5, "Landslide - 1000 AP Proc", GOSSIP_SENDER_MAIN, 105); player->ADD_GOSSIP_ITEM(5, "Avalanch - 463 - 537 Nature Damage", GOSSIP_SENDER_MAIN, 106); player->ADD_GOSSIP_ITEM(5, "Heartsong 200 Spirit Proc", GOSSIP_SENDER_MAIN, 107); player->ADD_GOSSIP_ITEM(5, "Mending - Heals player upon melee", GOSSIP_SENDER_MAIN, 108); player->ADD_GOSSIP_ITEM(5, "Windwalk - 600 Dodge/15% speed Proc", GOSSIP_SENDER_MAIN, 109); player->ADD_GOSSIP_ITEM(5, "Blade Ward - +200 Parry 600-800 Dmg Parry Proc", GOSSIP_SENDER_MAIN, 914); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100002, creature->GetGUID()); break; case 2: // Enchant Off-Hand if (item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND)) { if (ItemTemplate const* iInfo = item->GetTemplate()) { if ((iInfo->SubClass == ITEM_SUBCLASS_WEAPON_AXE || iInfo->SubClass == ITEM_SUBCLASS_WEAPON_DAGGER || ITEM_SUBCLASS_WEAPON_WAND || iInfo->SubClass == ITEM_SUBCLASS_WEAPON_MACE || iInfo->SubClass == ITEM_SUBCLASS_WEAPON_SWORD) && iInfo->Class == ITEM_CLASS_WEAPON) { player->ADD_GOSSIP_ITEM(5, "Heartsong - 200 Spirit Proc", GOSSIP_SENDER_MAIN, 1341); player->ADD_GOSSIP_ITEM(5, "Mending Heals player upon melee", GOSSIP_SENDER_MAIN, 1084); player->ADD_GOSSIP_ITEM(5, "Windwalk - 600 Dodge/15% speed Proc", GOSSIP_SENDER_MAIN, 1094); player->ADD_GOSSIP_ITEM(5, "Pyrium Weapon Chain 50% reduc on disarm/40 hit Proc", GOSSIP_SENDER_MAIN, 1238); player->ADD_GOSSIP_ITEM(5, "Hurricane - 450 Haste Proc", GOSSIP_SENDER_MAIN, 1233); player->ADD_GOSSIP_ITEM(5, "Avalanch - 463 - 537 Nature Damage", GOSSIP_SENDER_MAIN, 1789); player->ADD_GOSSIP_ITEM(5, "Power Torrent - 500 int Proc", GOSSIP_SENDER_MAIN, 1743); player->ADD_GOSSIP_ITEM(5, "Landslide - 1000 AP Proc", GOSSIP_SENDER_MAIN, 1333); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->SEND_GOSSIP_MENU(100002, creature->GetGUID()); } else { ChatHandler(player->GetSession()).PSendSysMessage("Your off-hand cannot be enchanted"); OnGossipHello(player, creature); } } } else { ChatHandler(player->GetSession()).PSendSysMessage("You don't have an offhand!"); OnGossipHello(player, creature); } break; case 3: // Enchant Caster Off-Hand player->ADD_GOSSIP_ITEM(5, "Intellect - +40", GOSSIP_SENDER_MAIN, 543); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100003, creature->GetGUID()); break; case 4: // Enchant Shield player->ADD_GOSSIP_ITEM(5, "+160 Armor", GOSSIP_SENDER_MAIN, 110); player->ADD_GOSSIP_ITEM(5, "+12 PvP Resilience", GOSSIP_SENDER_MAIN, 111); player->ADD_GOSSIP_ITEM(5, "Mastery - +50", GOSSIP_SENDER_MAIN, 915); player->ADD_GOSSIP_ITEM(5, "Stamina - +18", GOSSIP_SENDER_MAIN, 916); player->ADD_GOSSIP_ITEM(5, "Intellect - +40", GOSSIP_SENDER_MAIN, 946); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100004, creature->GetGUID()); break; case 6: // Enchant Cloak player->ADD_GOSSIP_ITEM(5, "Intellect +50", GOSSIP_SENDER_MAIN, 142); player->ADD_GOSSIP_ITEM(5, "+250 Armor", GOSSIP_SENDER_MAIN, 114); player->ADD_GOSSIP_ITEM(5, "+65 Critical Strike", GOSSIP_SENDER_MAIN, 115); player->ADD_GOSSIP_ITEM(5, "Haste - +23", GOSSIP_SENDER_MAIN, 136); player->ADD_GOSSIP_ITEM(5, "Spell Penetration - +70", GOSSIP_SENDER_MAIN, 139); player->ADD_GOSSIP_ITEM(5, "Defense Rating - +16", GOSSIP_SENDER_MAIN, 137); player->ADD_GOSSIP_ITEM(5, "Spirit - +10", GOSSIP_SENDER_MAIN, 138); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100007, creature->GetGUID()); break; case 7: //Enchant chest player->ADD_GOSSIP_ITEM(5, "+75 Stamina", GOSSIP_SENDER_MAIN, 116); player->ADD_GOSSIP_ITEM(5, "Resil +40", GOSSIP_SENDER_MAIN, 117); player->ADD_GOSSIP_ITEM(5, "All stats - +20", GOSSIP_SENDER_MAIN, 118); player->ADD_GOSSIP_ITEM(5, "Spirit - +40", GOSSIP_SENDER_MAIN, 451); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100008, creature->GetGUID()); break; case 8: //Enchant Bracers player->ADD_GOSSIP_ITEM(5, "Intellect +50", GOSSIP_SENDER_MAIN, 119); player->ADD_GOSSIP_ITEM(5, "Spirit - +50", GOSSIP_SENDER_MAIN, 120); player->ADD_GOSSIP_ITEM(5, "Strength - +50", GOSSIP_SENDER_MAIN, 121); player->ADD_GOSSIP_ITEM(5, "Agility - +50", GOSSIP_SENDER_MAIN, 122); player->ADD_GOSSIP_ITEM(5, "Haste - +65", GOSSIP_SENDER_MAIN, 900); player->ADD_GOSSIP_ITEM(5, "Expertise - +50", GOSSIP_SENDER_MAIN, 901); player->ADD_GOSSIP_ITEM(5, "Hit Rating - +50", GOSSIP_SENDER_MAIN, 902); player->ADD_GOSSIP_ITEM(5, "Crit - +65", GOSSIP_SENDER_MAIN, 903); player->ADD_GOSSIP_ITEM(5, "Dodge - +50", GOSSIP_SENDER_MAIN, 904); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100009, creature->GetGUID()); break; case 9: //Enchant Gloves player->ADD_GOSSIP_ITEM(5, "Major Agility - +20", GOSSIP_SENDER_MAIN, 123); player->ADD_GOSSIP_ITEM(5, "Attack Power - +44", GOSSIP_SENDER_MAIN, 124); player->ADD_GOSSIP_ITEM(5, "Hit Rating - +20", GOSSIP_SENDER_MAIN, 125); player->ADD_GOSSIP_ITEM(5, "Haste +50", GOSSIP_SENDER_MAIN, 126); player->ADD_GOSSIP_ITEM(5, "Spellpower - +28", GOSSIP_SENDER_MAIN, 127); player->ADD_GOSSIP_ITEM(5, "Expertise Rating - +50", GOSSIP_SENDER_MAIN, 128); player->ADD_GOSSIP_ITEM(5, "Mastery +65", GOSSIP_SENDER_MAIN, 129); player->ADD_GOSSIP_ITEM(5, "Strength +50", GOSSIP_SENDER_MAIN, 141); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100010, creature->GetGUID()); break; case 11: //Enchant feet player->ADD_GOSSIP_ITEM(5, "+25 Agility and Minor Movement Speed", GOSSIP_SENDER_MAIN, 130); player->ADD_GOSSIP_ITEM(5, "+50 Hit", GOSSIP_SENDER_MAIN, 131); player->ADD_GOSSIP_ITEM(5, "+35 Mastery and Minor Movement ", GOSSIP_SENDER_MAIN, 132); player->ADD_GOSSIP_ITEM(5, "+50 Mastery", GOSSIP_SENDER_MAIN, 133); player->ADD_GOSSIP_ITEM(5, "+30 Stamina and Minor Movement Speed", GOSSIP_SENDER_MAIN, 134); player->ADD_GOSSIP_ITEM(5, "Agility +35", GOSSIP_SENDER_MAIN, 917); player->ADD_GOSSIP_ITEM(5, "Haste +50", GOSSIP_SENDER_MAIN, 918); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100012, creature->GetGUID()); break; case 100: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_POWER); player->PlayerTalkClass->SendCloseGossip(); break; case 1743: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_POWER); player->PlayerTalkClass->SendCloseGossip(); break; case 102: item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) break; if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON) { Enchant(player, item, ENCHANT_WEP_AGILITY); player->PlayerTalkClass->SendCloseGossip(); break; } ChatHandler(player->GetSession()).PSendSysMessage("You do not have a 2H weapon equipped!"); break; case 103: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_HURRICANE); player->PlayerTalkClass->SendCloseGossip(); break; case 1233: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_HURRICANE); player->PlayerTalkClass->SendCloseGossip(); break; case 104: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_PYRIUM); player->PlayerTalkClass->SendCloseGossip(); break; case 1238: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_PYRIUM); player->PlayerTalkClass->SendCloseGossip(); break; case 105: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_MAJOR_LAND); player->PlayerTalkClass->SendCloseGossip(); break; case 1333: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_MAJOR_LAND); player->PlayerTalkClass->SendCloseGossip(); break; case 106: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_AVALANCH); player->PlayerTalkClass->SendCloseGossip(); break; case 1789: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_AVALANCH); player->PlayerTalkClass->SendCloseGossip(); break; case 107: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_HEARTSON); player->PlayerTalkClass->SendCloseGossip(); break; case 1341: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_HEARTSON); player->PlayerTalkClass->SendCloseGossip(); break; case 108: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_MENDING); player->PlayerTalkClass->SendCloseGossip(); break; case 1084: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_MENDING); player->PlayerTalkClass->SendCloseGossip(); break; case 109: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_WINDWALK); player->PlayerTalkClass->SendCloseGossip(); break; case 1094: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_WINDWALK); player->PlayerTalkClass->SendCloseGossip(); break; case 914: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLADE); player->PlayerTalkClass->SendCloseGossip(); break; case 119: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_SPELL_INTELLECT); player->PlayerTalkClass->SendCloseGossip(); break; case 120: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_SPIRIT); player->PlayerTalkClass->SendCloseGossip(); break; case 121: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_STRENGTH); player->PlayerTalkClass->SendCloseGossip(); break; case 122: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_AGILITY); player->PlayerTalkClass->SendCloseGossip(); break; case 900: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_SPEED); player->PlayerTalkClass->SendCloseGossip(); break; case 901: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_EXPERTISE); player->PlayerTalkClass->SendCloseGossip(); break; case 902: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_PRECISION); player->PlayerTalkClass->SendCloseGossip(); break; case 903: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_CRIT); player->PlayerTalkClass->SendCloseGossip(); break; case 904: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_WRIST_DODGE); player->PlayerTalkClass->SendCloseGossip(); break; case 110: item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) break; if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_ARMOR); player->PlayerTalkClass->SendCloseGossip(); break; } case 946: item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) break; if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_INT); player->PlayerTalkClass->SendCloseGossip(); break; } case 111: item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) break; if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_RESILIENCE); player->PlayerTalkClass->SendCloseGossip(); break; } case 915: item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) break; if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_MASTERY); player->PlayerTalkClass->SendCloseGossip(); break; } case 543: item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) break; if (item->GetTemplate()->InventoryType == INVTYPE_HOLDABLE) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_INTELLECT); player->PlayerTalkClass->SendCloseGossip(); break; } case 916: item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) break; if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_STAM); player->PlayerTalkClass->SendCloseGossip(); break; } case 142: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_INTELLECT); player->PlayerTalkClass->SendCloseGossip(); break; case 114: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_STAMINA); player->PlayerTalkClass->SendCloseGossip(); break; case 115: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_STRIKE); player->PlayerTalkClass->SendCloseGossip(); break; case 136: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_HASTE); player->PlayerTalkClass->SendCloseGossip(); break; case 139: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SPELL_PEN); player->PlayerTalkClass->SendCloseGossip(); break; case 137: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_DEF); player->PlayerTalkClass->SendCloseGossip(); break; case 138: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SPIRIT); player->PlayerTalkClass->SendCloseGossip(); break; case 116: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_HEALTH); player->PlayerTalkClass->SendCloseGossip(); break; case 117: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_RESILIENCE); player->PlayerTalkClass->SendCloseGossip(); break; case 118: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_STATS); player->PlayerTalkClass->SendCloseGossip(); break; case 451: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_SPIRIT); player->PlayerTalkClass->SendCloseGossip(); break; case 130: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_AGISPEED); player->PlayerTalkClass->SendCloseGossip(); break; case 131: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_HIT); player->PlayerTalkClass->SendCloseGossip(); break; case 132: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_MASPEED); player->PlayerTalkClass->SendCloseGossip(); break; case 133: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_MASTERY); player->PlayerTalkClass->SendCloseGossip(); break; case 134: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_STAMSPEED); player->PlayerTalkClass->SendCloseGossip(); break; case 917: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_AGI); player->PlayerTalkClass->SendCloseGossip(); break; case 918: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_HASTE); player->PlayerTalkClass->SendCloseGossip(); break; case 123: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_AGILITY); player->PlayerTalkClass->SendCloseGossip(); break; case 124: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_ATTACK); player->PlayerTalkClass->SendCloseGossip(); break; case 125: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_HIT); player->PlayerTalkClass->SendCloseGossip(); break; case 126: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_HASTE); player->PlayerTalkClass->SendCloseGossip(); break; case 127: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_SPELLPOWER); player->PlayerTalkClass->SendCloseGossip(); break; case 128: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_EXPERTISE); player->PlayerTalkClass->SendCloseGossip(); break; case 129: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_MASTERY); player->PlayerTalkClass->SendCloseGossip(); break; case 141: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_STRENGTH); player->PlayerTalkClass->SendCloseGossip(); break; case 300: //<-Back menu { player->ADD_GOSSIP_ITEM(1, "Enchant Weapon", GOSSIP_SENDER_MAIN, 1); player->ADD_GOSSIP_ITEM(1, "Enchant Off-Hand Weapon", GOSSIP_SENDER_MAIN, 13); player->ADD_GOSSIP_ITEM(1, "Enchant 2H Weapon", GOSSIP_SENDER_MAIN, 2); player->ADD_GOSSIP_ITEM(1, "Enchant Shield", GOSSIP_SENDER_MAIN, 3); player->ADD_GOSSIP_ITEM(1, "Enchant Head", GOSSIP_SENDER_MAIN, 4); player->ADD_GOSSIP_ITEM(1, "Enchant Shoulders", GOSSIP_SENDER_MAIN, 5); player->ADD_GOSSIP_ITEM(1, "Enchant Cloak", GOSSIP_SENDER_MAIN, 6); player->ADD_GOSSIP_ITEM(1, "Enchant Chest", GOSSIP_SENDER_MAIN, 7); player->ADD_GOSSIP_ITEM(1, "Enchant Bracers", GOSSIP_SENDER_MAIN, 8); player->ADD_GOSSIP_ITEM(1, "Enchant Gloves", GOSSIP_SENDER_MAIN, 9); player->ADD_GOSSIP_ITEM(1, "Enchant Legs", GOSSIP_SENDER_MAIN, 10); player->ADD_GOSSIP_ITEM(1, "Enchant Feet", GOSSIP_SENDER_MAIN, 11); if (player->HasSkill(SKILL_ENCHANTING) && player->GetSkillValue(SKILL_ENCHANTING) == 450) { player->ADD_GOSSIP_ITEM(1, "Enchant Rings", GOSSIP_SENDER_MAIN, 12); } player->PlayerTalkClass->SendGossipMenu(100001, creature->GetGUID()); return true; } break; case 400: //Remove enchant for mainhand RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND)); player->PlayerTalkClass->SendCloseGossip(); break; case 401: //Remove enchant for offhand RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND)); player->PlayerTalkClass->SendCloseGossip(); break; case 402: //Remove enchant for head RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HEAD)); player->PlayerTalkClass->SendCloseGossip(); break; case 403: //Remove enchant for shoulders RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_SHOULDERS)); player->PlayerTalkClass->SendCloseGossip(); break; case 404: //remove enchant for cloak RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK)); player->PlayerTalkClass->SendCloseGossip(); break; case 405: //remove enchant for chest RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST)); player->PlayerTalkClass->SendCloseGossip(); break; case 406: //remove enchant for bracers RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS)); player->PlayerTalkClass->SendCloseGossip(); break; case 407: //remove enchant for gloves RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS)); player->PlayerTalkClass->SendCloseGossip(); break; case 408: //remove enchant for legs RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS)); player->PlayerTalkClass->SendCloseGossip(); break; case 409: //remove enchant for feet RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET)); player->PlayerTalkClass->SendCloseGossip(); break; case 410: RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER1)); RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FINGER2)); player->PlayerTalkClass->SendCloseGossip(); break; case 5000: // Bloody Dancing Steel Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_BLOODY_DANCING_STEEL); player->PlayerTalkClass->SendCloseGossip(); break; } return true; }
bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) { player->PlayerTalkClass->ClearMenus(); Item * item; switch (action) { case 1: // Enchant Weapon player->PlayerTalkClass->ClearMenus(); player->ADD_GOSSIP_ITEM(1, "2H: +25 Agility", GOSSIP_SENDER_MAIN, 115); player->ADD_GOSSIP_ITEM(1, "2H: +9 Damage", GOSSIP_SENDER_MAIN, 212); player->ADD_GOSSIP_ITEM(1, "2H: Iron Counterweight", GOSSIP_SENDER_MAIN, 214); player->ADD_GOSSIP_ITEM(1, "+15 Agility", GOSSIP_SENDER_MAIN, 108); player->ADD_GOSSIP_ITEM(1, "+15 Strength", GOSSIP_SENDER_MAIN, 109); player->ADD_GOSSIP_ITEM(1, "+30 Spell Power", GOSSIP_SENDER_MAIN, 106); player->ADD_GOSSIP_ITEM(1, "+22 Intellect", GOSSIP_SENDER_MAIN, 110); player->ADD_GOSSIP_ITEM(1, "+20 Spirit", GOSSIP_SENDER_MAIN, 101); player->ADD_GOSSIP_ITEM(1, "Crusader", GOSSIP_SENDER_MAIN, 105); player->ADD_GOSSIP_ITEM(1, "Icy Weapon", GOSSIP_SENDER_MAIN, 100); player->ADD_GOSSIP_ITEM(1, "Lifestealing", GOSSIP_SENDER_MAIN, 107); player->ADD_GOSSIP_ITEM(1, "Fiery Weapon", GOSSIP_SENDER_MAIN, 104); player->ADD_GOSSIP_ITEM(1, "+5 Weapon Damage", GOSSIP_SENDER_MAIN, 213); player->ADD_GOSSIP_ITEM(1, "Steel Weapon Chain", GOSSIP_SENDER_MAIN, 227); //player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100002, creature->GetGUID()); break; case 2: // Enchant 2H Weapon { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { player->GetSession()->SendNotification("You must equip a Two-Handed weapon first."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON) { player->ADD_GOSSIP_ITEM(1, "Crusader", GOSSIP_SENDER_MAIN, 105); player->ADD_GOSSIP_ITEM(1, "2H Agility (+25 Agility)", GOSSIP_SENDER_MAIN, 115); player->ADD_GOSSIP_ITEM(1, "Fiery Weapon", GOSSIP_SENDER_MAIN, 116); player->ADD_GOSSIP_ITEM(1, "Icy Weapon", GOSSIP_SENDER_MAIN, 117); player->ADD_GOSSIP_ITEM(1, "Spell power (+30 Spell Power)", GOSSIP_SENDER_MAIN, 106); player->ADD_GOSSIP_ITEM(1, "Lifestealing", GOSSIP_SENDER_MAIN, 107); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100003, creature->GetGUID()); return true; } else { player->GetSession()->SendNotification("You don't have a Two-Handed weapon equipped."); MainMenu(player, creature); } } break; case 3: // Enchant Shield { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendNotification("You must equip a shield first."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { //player->ADD_GOSSIP_ITEM(1, "+30 Armor", GOSSIP_SENDER_MAIN, 118); player->ADD_GOSSIP_ITEM(1, "+4 Mana and Health Per 5", GOSSIP_SENDER_MAIN, 119); player->ADD_GOSSIP_ITEM(1, "+10 Block Rating", GOSSIP_SENDER_MAIN, 120); player->ADD_GOSSIP_ITEM(1, "26-38 Damage on Block", GOSSIP_SENDER_MAIN, 121); player->ADD_GOSSIP_ITEM(1, "+7 Spirit", GOSSIP_SENDER_MAIN, 122); player->ADD_GOSSIP_ITEM(1, "+7 Stamina", GOSSIP_SENDER_MAIN, 123); //player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100004, creature->GetGUID()); return true; } else { player->GetSession()->SendNotification("You do not have a shield equipped."); MainMenu(player, creature); } } break; case 6: // Enchant Cloak player->ADD_GOSSIP_ITEM(1, "+10 Shadow Resistance", GOSSIP_SENDER_MAIN, 155); player->ADD_GOSSIP_ITEM(1, "+15 Fire Resistance", GOSSIP_SENDER_MAIN, 150); player->ADD_GOSSIP_ITEM(1, "+15 Nature Resistance", GOSSIP_SENDER_MAIN, 153); player->ADD_GOSSIP_ITEM(1, "+5 All Resistances", GOSSIP_SENDER_MAIN, 154); player->ADD_GOSSIP_ITEM(1, "+12 Dodge Rating", GOSSIP_SENDER_MAIN, 147); player->ADD_GOSSIP_ITEM(1, "+70 Armor", GOSSIP_SENDER_MAIN, 148); player->ADD_GOSSIP_ITEM(1, "+3 Agility", GOSSIP_SENDER_MAIN, 151); player->ADD_GOSSIP_ITEM(1, "Increased Stealth", GOSSIP_SENDER_MAIN, 152); //player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100007, creature->GetGUID()); return true; break; case 7: //Enchant chest //player->ADD_GOSSIP_ITEM(1, "Lesser Absorption", GOSSIP_SENDER_MAIN, 158); player->ADD_GOSSIP_ITEM(1, "+4 All Stats", GOSSIP_SENDER_MAIN, 161); player->ADD_GOSSIP_ITEM(1, "+100 Health", GOSSIP_SENDER_MAIN, 160); player->ADD_GOSSIP_ITEM(1, "+100 Mana", GOSSIP_SENDER_MAIN, 159); player->ADD_GOSSIP_ITEM(1, "+6 All Stats", GOSSIP_SENDER_MAIN, 211); player->ADD_GOSSIP_ITEM(1, "+150 Health", GOSSIP_SENDER_MAIN, 162); player->ADD_GOSSIP_ITEM(1, "+150 Mana", GOSSIP_SENDER_MAIN, 209); player->ADD_GOSSIP_ITEM(1, "7 Mana Per 5", GOSSIP_SENDER_MAIN, 210); //player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100008, creature->GetGUID()); return true; break; case 8: //Enchant Bracers player->ADD_GOSSIP_ITEM(1, "+9 Stamina", GOSSIP_SENDER_MAIN, 165); player->ADD_GOSSIP_ITEM(1, "+9 Strength", GOSSIP_SENDER_MAIN, 164); player->ADD_GOSSIP_ITEM(1, "+7 Intellect", GOSSIP_SENDER_MAIN, 163); player->ADD_GOSSIP_ITEM(1, "+5 Mana Per 5", GOSSIP_SENDER_MAIN, 166); //player->ADD_GOSSIP_ITEM(1, "Deflection", GOSSIP_SENDER_MAIN, 167); player->ADD_GOSSIP_ITEM(1, "+15 Spell Power", GOSSIP_SENDER_MAIN, 168); //player->ADD_GOSSIP_ITEM(1, "Minor Agility", GOSSIP_SENDER_MAIN, 169); //player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100009, creature->GetGUID()); return true; break; case 9: //Enchant Gloves player->ADD_GOSSIP_ITEM(1, "+10 Haste", GOSSIP_SENDER_MAIN, 185); player->ADD_GOSSIP_ITEM(1, "+20 Fire Power", GOSSIP_SENDER_MAIN, 183); player->ADD_GOSSIP_ITEM(1, "+20 Frost Power", GOSSIP_SENDER_MAIN, 184); player->ADD_GOSSIP_ITEM(1, "+20 Shadow Power", GOSSIP_SENDER_MAIN, 180); player->ADD_GOSSIP_ITEM(1, "+16 Spell Power", GOSSIP_SENDER_MAIN, 181); player->ADD_GOSSIP_ITEM(1, "+15 Agility", GOSSIP_SENDER_MAIN, 182); player->ADD_GOSSIP_ITEM(1, "+7 Strength", GOSSIP_SENDER_MAIN, 178); //player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100010, creature->GetGUID()); return true; break; case 11: //Enchant feet player->ADD_GOSSIP_ITEM(1, "Minor Speed", GOSSIP_SENDER_MAIN, 191); player->ADD_GOSSIP_ITEM(1, "+7 Stamina", GOSSIP_SENDER_MAIN, 195); player->ADD_GOSSIP_ITEM(1, "+7 Agility", GOSSIP_SENDER_MAIN, 193); player->ADD_GOSSIP_ITEM(1, "+5 Hit Rating", GOSSIP_SENDER_MAIN, 194); // player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100012, creature->GetGUID()); return true; break; case 13: //Enchant Off-Hand weapons { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendNotification("You must equip a weapon in your Off-hand"); MainMenu(player, creature); return false; } else if (item->GetTemplate()->InventoryType == INVTYPE_WEAPONOFFHAND || INVTYPE_WEAPONMAINHAND) { player->ADD_GOSSIP_ITEM(1, "+15 Agility", GOSSIP_SENDER_MAIN, 221); player->ADD_GOSSIP_ITEM(1, "+15 Strength", GOSSIP_SENDER_MAIN, 222); player->ADD_GOSSIP_ITEM(1, "+30 Spell Power", GOSSIP_SENDER_MAIN, 219); player->ADD_GOSSIP_ITEM(1, "+22 Intellect", GOSSIP_SENDER_MAIN, 223); player->ADD_GOSSIP_ITEM(1, "+20 Spirit", GOSSIP_SENDER_MAIN, 216); player->ADD_GOSSIP_ITEM(1, "Crusader", GOSSIP_SENDER_MAIN, 218); player->ADD_GOSSIP_ITEM(1, "Icy Weapon", GOSSIP_SENDER_MAIN, 224); player->ADD_GOSSIP_ITEM(1, "Lifestealing", GOSSIP_SENDER_MAIN, 220); player->ADD_GOSSIP_ITEM(1, "Fiery Weapon", GOSSIP_SENDER_MAIN, 217); player->ADD_GOSSIP_ITEM(1, "+5 Weapon Damage", GOSSIP_SENDER_MAIN, 225); player->ADD_GOSSIP_ITEM(1, "Steel Weapon Chain", GOSSIP_SENDER_MAIN, 228); player->PlayerTalkClass->SendGossipMenu(100002, creature->GetGUID()); return true; } else { player->GetSession()->SendNotification("Your Off-Hand is not a weapon."); MainMenu(player, creature); } } break; case 14: //Remove enchant menu player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Main-hand", GOSSIP_SENDER_MAIN, 400); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Off-hand", GOSSIP_SENDER_MAIN, 401); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Cloak", GOSSIP_SENDER_MAIN, 404); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Chest", GOSSIP_SENDER_MAIN, 405); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Bracers", GOSSIP_SENDER_MAIN, 406); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Gloves", GOSSIP_SENDER_MAIN, 407); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Feet", GOSSIP_SENDER_MAIN, 409); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Legs", GOSSIP_SENDER_MAIN, 411); player->ADD_GOSSIP_ITEM(1, "Remove the enchantment on my Helm.", GOSSIP_SENDER_MAIN, 412); player->ADD_GOSSIP_ITEM(1, "<-Back", GOSSIP_SENDER_MAIN, 300); player->PlayerTalkClass->SendGossipMenu(100014, creature->GetGUID()); return true; break; case 100: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_ICEY); MainMenu(player, creature); break; case 101: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_SPIRIT); MainMenu(player, creature); break; case 104: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_FIERY); MainMenu(player, creature); break; case 105: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_CRUSADER); MainMenu(player, creature); break; case 106: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_SPELLPOWER); MainMenu(player, creature); break; case 107: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_LIFESTEALING); MainMenu(player, creature); break; case 108: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_AGILITY1H); MainMenu(player, creature); break; case 109: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_STRENGTH); MainMenu(player, creature); break; case 110: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_INTELLECT); MainMenu(player, creature); break; case 113: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a 2H weapon equipped."); MainMenu(player, creature); return false; } if (item) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_CRUSADER); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a Two-Handed weapon equipped."); MainMenu(player, creature); } } break; case 115: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a 2H weapon equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_AGILITY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a Two-Handed weapon equipped."); MainMenu(player, creature); } } break; case 116: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a 2H weapon equipped."); MainMenu(player, creature); return false; } if (item) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_FIERY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a Two-Handed weapon equipped."); MainMenu(player, creature); } } break; case 117: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a 2H weapon equipped."); MainMenu(player, creature); return false; } if (item) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_ICEY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a Two-Handed weapon equipped."); MainMenu(player, creature); } } break; case 118: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_PROTECTION); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped."); MainMenu(player, creature); } } break; case 119: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_VITALITY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped."); MainMenu(player, creature); } } break; case 120: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_BLOCK); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped."); MainMenu(player, creature); } } break; case 121: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_SPIKE); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped."); MainMenu(player, creature); } } break; case 122: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_SPIRIT); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped."); MainMenu(player, creature); } } break; case 123: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a shield equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_SHIELD) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_SHIELD_STAM); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You don't have a shield equipped."); MainMenu(player, creature); } } break; case 147: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_DODGE); MainMenu(player, creature); break; case 148: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_ARMOR); MainMenu(player, creature); break; case 149: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SUBLETY); MainMenu(player, creature); break; case 150: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_FIRE); MainMenu(player, creature); break; case 151: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_AGILITY); MainMenu(player, creature); break; case 152: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_STEALTH); MainMenu(player, creature); break; case 153: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_NATURE); MainMenu(player, creature); break; case 154: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_RESIST); MainMenu(player, creature); break; case 155: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK), ENCHANT_CLOAK_SHADOW); MainMenu(player, creature); break; case 158: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_ABSORB); MainMenu(player, creature); break; case 159: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_MANA); MainMenu(player, creature); break; case 160: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_HEALTH); MainMenu(player, creature); break; case 161: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_STATS); MainMenu(player, creature); break; case 162: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST); if (item) { if (item->GetTemplate()->ItemLevel == 40) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_EXC_HEALTH); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You need a chest with an itemlevel for 35+!"); MainMenu(player, creature); } } else { player->GetSession()->SendAreaTriggerMessage("You need a chest with an itemlevel at 35+!"); MainMenu(player, creature); } } break; case 163: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_INTELLECT); MainMenu(player, creature); break; case 164: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_STAM); MainMenu(player, creature); break; case 165: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_STRENGTH); MainMenu(player, creature); break; case 166: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_MP); MainMenu(player, creature); break; case 167: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_DEFLECTION); MainMenu(player, creature); break; case 168: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_HEALING); MainMenu(player, creature); break; case 169: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_WRISTS), ENCHANT_BRACERS_AGILITY); MainMenu(player, creature); break; case 178: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_STRENGTH); MainMenu(player, creature); break; case 179: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_HASTE); MainMenu(player, creature); break; case 180: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_SHADOW); MainMenu(player, creature); break; case 181: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_HEALING); MainMenu(player, creature); break; case 182: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_AGILITY); MainMenu(player, creature); break; case 183: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_FIRE); MainMenu(player, creature); break; case 184: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_FROST); MainMenu(player, creature); break; case 185: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_HANDS), ENCHANT_GLOVES_HASTE); MainMenu(player, creature); break; case 191: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_SPEED); MainMenu(player, creature); break; case 192: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_SPIRIT); MainMenu(player, creature); break; case 193: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_AGILITY); MainMenu(player, creature); break; case 194: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_ACCURACY); MainMenu(player, creature); break; case 195: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_FEET), ENCHANT_BOOTS_STAM); MainMenu(player, creature); break; case 205: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); return false; } if (item) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_FIERY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); } } break; case 206: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); return false; } if (item) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_ICEY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); } } break; case 207: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); return false; } if (item) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_CRUSADER); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); } } break; case 208: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); return false; } if (item) { player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_AGILITY1H); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); } } break; case 209: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST); if (item && item->GetTemplate()->ItemLevel == 40) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_EXC_MANA); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You need a chest with an itemlevel for 35+!"); MainMenu(player, creature); } } break; case 210: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST); if (item) { if (item->GetTemplate()->ItemLevel == 40) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_MP); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You need a chest with an itemlevel for 35+!"); MainMenu(player, creature); } } else { player->GetSession()->SendAreaTriggerMessage("You need a chest with an itemlevel for 35+!"); MainMenu(player, creature); } } break; case 211: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST); if (item) { if (item->GetTemplate()->ItemLevel == 40) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_CHEST), ENCHANT_CHEST_GREATER_STATS); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("You need a chest with an itemlevel for 35+!"); MainMenu(player, creature); } } else { player->GetSession()->SendAreaTriggerMessage("You need a chest with an itemlevel for 35+!"); MainMenu(player, creature); } } break; case 212: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a Two-handed weapon equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON) { player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_DAMAGE); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a two-hander."); MainMenu(player, creature); } } break; case 213: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_WEP_DAMAGE); MainMenu(player, creature); break; case 214: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) { player->GetSession()->SendAreaTriggerMessage("This enchant needs a Two-handed weapon equipped."); MainMenu(player, creature); return false; } if (item->GetTemplate()->InventoryType == INVTYPE_2HWEAPON) { player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND), ENCHANT_2WEP_HASTE); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant needs a one-hand weapon equipped in the off-hand."); MainMenu(player, creature); } } break; case 215: Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_LEGS), ENCHANT_LEGARMOR); MainMenu(player, creature); break; case 224: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_ICEY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 216: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_SPIRIT); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 217: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_FIERY); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 218: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_CRUSADER); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 219: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_SPELLPOWER); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 220: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_LIFESTEALING); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 221: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_AGILITY1H); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 222: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_STRENGTH); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 223: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_INTELLECT); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a Weapon"); MainMenu(player, creature); } } break; case 225: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND), ENCHANT_WEP_DAMAGE); MainMenu(player, creature); } else { player->GetSession()->SendAreaTriggerMessage("This enchant requires a weapon"); MainMenu(player, creature); } } break; case 226: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_RANGED); if (item && ((item->GetTemplate()->Class == 2 && item->GetTemplate()->SubClass == 2) || (item->GetTemplate()->Class == 2 && item->GetTemplate()->SubClass == 3))) { Enchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_RANGED), ENCHANT_SCOPE); } else { player->GetSession()->SendAreaTriggerMessage("You need a ranged weapon equipped!"); } MainMenu(player, creature); } break; case 227: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (item) { Enchant(player, item, ENCHANT_WEP_CHAIN); } else { player->GetSession()->SendAreaTriggerMessage("You need a weapon equipped!"); } MainMenu(player, creature); } break; case 228: { item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (item->GetTemplate()->InventoryType == INVTYPE_WEAPON) { Enchant(player, item, ENCHANT_WEP_CHAIN); } else { player->GetSession()->SendAreaTriggerMessage("You need a weapon equipped!"); } MainMenu(player, creature); } break; case 300: //<-Back menu player->ADD_GOSSIP_ITEM(1, "Weapon", GOSSIP_SENDER_MAIN, 1); player->ADD_GOSSIP_ITEM(1, "Off-Hand Weapon", GOSSIP_SENDER_MAIN, 13); player->ADD_GOSSIP_ITEM(1, "2H Weapon", GOSSIP_SENDER_MAIN, 2); player->ADD_GOSSIP_ITEM(1, "Shield", GOSSIP_SENDER_MAIN, 3); player->ADD_GOSSIP_ITEM(1, "Cloak", GOSSIP_SENDER_MAIN, 6); player->ADD_GOSSIP_ITEM(1, "Chest", GOSSIP_SENDER_MAIN, 7); player->ADD_GOSSIP_ITEM(1, "Bracers", GOSSIP_SENDER_MAIN, 8); player->ADD_GOSSIP_ITEM(1, "Gloves", GOSSIP_SENDER_MAIN, 9); player->ADD_GOSSIP_ITEM(1, "Feet", GOSSIP_SENDER_MAIN, 11); break; case 400: //Remove enchant for mainhand MainMenu(player, creature); break; case 401: //Remove enchant for offhand MainMenu(player, creature); break; case 404: //remove enchant for cloak RemoveEnchant(player, player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_BACK)); MainMenu(player, creature); break; case 405: //remove enchant for chest MainMenu(player, creature); break; case 406: //remove enchant for bracers MainMenu(player, creature); break; case 407: //remove enchant for gloves MainMenu(player, creature); break; case 409: //remove enchant for feet MainMenu(player, creature); break; } return true; }
bool OnGossipSelect(Player* player, Creature* creature, uint32 sender, uint32 action) { player->PlayerTalkClass->ClearMenus(); if (sender != GOSSIP_SENDER_MAIN) return false; switch (action) { case GOSSIP_ACTION_INFO_DEF+1: OnGossipHello(player, creature); break; case GOSSIP_ACTION_INFO_DEF+2: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 50, крит 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+21); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 50, устойчивость 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+16); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 30, 10 маны в 5 сек", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+19); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 30, крит 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+20); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 29, устойчивость 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+17); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30, сопр. тайной 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+23); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30, сопр. огню 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+24); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30, сопр. тьме 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+25); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30, сопр. льду 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+26); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30, сопр. природе 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+27); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30, устойчивость 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+18); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 37, рейтинг защиты 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+22); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+16: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3795); break; case GOSSIP_ACTION_INFO_DEF+17: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3797); break; case GOSSIP_ACTION_INFO_DEF+18: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3842); break; case GOSSIP_ACTION_INFO_DEF+19: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3819); break; case GOSSIP_ACTION_INFO_DEF+20: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3820); break; case GOSSIP_ACTION_INFO_DEF+21: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3817); break; case GOSSIP_ACTION_INFO_DEF+22: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3818); break; case GOSSIP_ACTION_INFO_DEF+23: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3815); break; case GOSSIP_ACTION_INFO_DEF+24: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3816); break; case GOSSIP_ACTION_INFO_DEF+25: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3814); break; case GOSSIP_ACTION_INFO_DEF+26: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3812); break; case GOSSIP_ACTION_INFO_DEF+27: Enchant(player, creature, EQUIPMENT_SLOT_HEAD, 3813); break; case GOSSIP_ACTION_INFO_DEF+3: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 120, крит 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+31); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 40, устойчивость 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+29); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 70, 8 маны в 5 сек", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+32); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 70, крит 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+34); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 23, устойчивость 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+30); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30, устойчивость 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+28); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "рейтинг уклонения 60, защиты 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+33); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+28: Enchant(player, creature, EQUIPMENT_SLOT_SHOULDERS, 3852); break; case GOSSIP_ACTION_INFO_DEF+29: Enchant(player, creature, EQUIPMENT_SLOT_SHOULDERS, 3793); break; case GOSSIP_ACTION_INFO_DEF+30: Enchant(player, creature, EQUIPMENT_SLOT_SHOULDERS, 3794); break; case GOSSIP_ACTION_INFO_DEF+31: Enchant(player, creature, EQUIPMENT_SLOT_SHOULDERS, 3835); break; case GOSSIP_ACTION_INFO_DEF+32: Enchant(player, creature, EQUIPMENT_SLOT_SHOULDERS, 3836); break; case GOSSIP_ACTION_INFO_DEF+33: Enchant(player, creature, EQUIPMENT_SLOT_SHOULDERS, 3837); break; case GOSSIP_ACTION_INFO_DEF+34: Enchant(player, creature, EQUIPMENT_SLOT_SHOULDERS, 3838); break; case GOSSIP_ACTION_INFO_DEF+4: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "ловкость 10, лучше незаметность", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+35); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "ловкость 22", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+40); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "скорость 23", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+38); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "проникание заклинаний 35", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+41); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "снижение угрозы, дух 10", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+36); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "броня 225", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+39); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "рейтинг защиты 16", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+37); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* восстановить 400 маны при касте", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+42); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* сила заклинаний 295 при касте", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+43); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* сила атаки 400 при атаке", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+44); player->SEND_GOSSIP_MENU(55004, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+35: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3256); break; case GOSSIP_ACTION_INFO_DEF+36: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3296); break; case GOSSIP_ACTION_INFO_DEF+37: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 1951); break; case GOSSIP_ACTION_INFO_DEF+38: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3831); break; case GOSSIP_ACTION_INFO_DEF+39: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3294); break; case GOSSIP_ACTION_INFO_DEF+40: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 1099); break; case GOSSIP_ACTION_INFO_DEF+41: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3243); break; case GOSSIP_ACTION_INFO_DEF+42: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3728); break; case GOSSIP_ACTION_INFO_DEF+43: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3722); break; case GOSSIP_ACTION_INFO_DEF+44: Enchant(player, creature, EQUIPMENT_SLOT_BACK, 3730); break; case GOSSIP_ACTION_INFO_DEF+5: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "все характеристики 10", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+47); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "здоровье 275", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+48); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "10 маны в 5 сек.", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+49); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "устойчивость 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+50); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "рейтинг защиты 22", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+51); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+47: Enchant(player, creature, EQUIPMENT_SLOT_CHEST, 3832); break; case GOSSIP_ACTION_INFO_DEF+48: Enchant(player, creature, EQUIPMENT_SLOT_CHEST, 3297); break; case GOSSIP_ACTION_INFO_DEF+49: Enchant(player, creature, EQUIPMENT_SLOT_CHEST, 2381); break; case GOSSIP_ACTION_INFO_DEF+50: Enchant(player, creature, EQUIPMENT_SLOT_CHEST, 3245); break; case GOSSIP_ACTION_INFO_DEF+51: Enchant(player, creature, EQUIPMENT_SLOT_CHEST, 1953); break; case GOSSIP_ACTION_INFO_DEF+6: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 102", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+52); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 76", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+53); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 130", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+54); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "дух 18", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+55); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "рейтинг мастерства 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+56); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "все характеристики 6", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+57); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "интелект 16", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+58); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+52: Enchant(player, creature, EQUIPMENT_SLOT_WRISTS, 3757); break; case GOSSIP_ACTION_INFO_DEF+53: Enchant(player, creature, EQUIPMENT_SLOT_WRISTS, 3758); break; case GOSSIP_ACTION_INFO_DEF+54: Enchant(player, creature, EQUIPMENT_SLOT_WRISTS, 3756); break; case GOSSIP_ACTION_INFO_DEF+55: Enchant(player, creature, EQUIPMENT_SLOT_WRISTS, 1147); break; case GOSSIP_ACTION_INFO_DEF+56: Enchant(player, creature, EQUIPMENT_SLOT_WRISTS, 3231); break; case GOSSIP_ACTION_INFO_DEF+57: Enchant(player, creature, EQUIPMENT_SLOT_WRISTS, 2661); break; case GOSSIP_ACTION_INFO_DEF+58: Enchant(player, creature, EQUIPMENT_SLOT_WRISTS, 1119); break; case GOSSIP_ACTION_INFO_DEF+7: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "крит 16", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+59); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "угроза +2%, парирование 10", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+60); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 44", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+61); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 28", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+120); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "ловкость 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+62); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "меткость 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+63); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "мастерство 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+64); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "ракетница", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+121); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+59: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 3249); break; case GOSSIP_ACTION_INFO_DEF+60: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 3253); break; case GOSSIP_ACTION_INFO_DEF+61: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 1603); break; case GOSSIP_ACTION_INFO_DEF+62: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 3222); break; case GOSSIP_ACTION_INFO_DEF+63: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 3234); break; case GOSSIP_ACTION_INFO_DEF+64: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 3231); break; case GOSSIP_ACTION_INFO_DEF+120: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 3246); break; case GOSSIP_ACTION_INFO_DEF+121: Enchant(player, creature, EQUIPMENT_SLOT_HANDS, 3603); break; case GOSSIP_ACTION_INFO_DEF+8: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "устойчивость 40, выносливость 28", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+65); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 72, ловкость 35", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+66); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 100, крит 36", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+67); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 50, дух 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+68); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 50, выносливость 30", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+69); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+65: Enchant(player, creature, EQUIPMENT_SLOT_LEGS, 3853); break; case GOSSIP_ACTION_INFO_DEF+66: Enchant(player, creature, EQUIPMENT_SLOT_LEGS, 3331); break; case GOSSIP_ACTION_INFO_DEF+67: Enchant(player, creature, EQUIPMENT_SLOT_LEGS, 3332); break; case GOSSIP_ACTION_INFO_DEF+68: Enchant(player, creature, EQUIPMENT_SLOT_LEGS, 3719); break; case GOSSIP_ACTION_INFO_DEF+69: Enchant(player, creature, EQUIPMENT_SLOT_LEGS, 3721); break; case GOSSIP_ACTION_INFO_DEF+9: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 32", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+70); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "скорость бега, выносливость 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+71); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "ловкость 16", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+72); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "дух 18", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+73); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "7 хп и маны в 5 сек.", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+74); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "крит и меткость 12", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+75); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 22", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+76); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "нитроускорители", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+77); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+70: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 1597); break; case GOSSIP_ACTION_INFO_DEF+71: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 3232); break; case GOSSIP_ACTION_INFO_DEF+72: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 983); break; case GOSSIP_ACTION_INFO_DEF+73: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 1147); break; case GOSSIP_ACTION_INFO_DEF+74: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 3244); break; case GOSSIP_ACTION_INFO_DEF+75: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 3826); break; case GOSSIP_ACTION_INFO_DEF+76: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 1075); break; case GOSSIP_ACTION_INFO_DEF+77: Enchant(player, creature, EQUIPMENT_SLOT_FEET, 3606); break; case GOSSIP_ACTION_INFO_DEF+10: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 40", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+78); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 23", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+79); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+80); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+78: Enchant(player, creature, EQUIPMENT_SLOT_FINGER1, 3839); break; case GOSSIP_ACTION_INFO_DEF+79: Enchant(player, creature, EQUIPMENT_SLOT_FINGER1, 3840); break; case GOSSIP_ACTION_INFO_DEF+80: Enchant(player, creature, EQUIPMENT_SLOT_FINGER1, 3791); break; case GOSSIP_ACTION_INFO_DEF+11: player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 40", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+81); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 23", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+82); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 30", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+83); player->SEND_GOSSIP_MENU(55003, creature->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+81: Enchant(player, creature, EQUIPMENT_SLOT_FINGER2, 3839); break; case GOSSIP_ACTION_INFO_DEF+82: Enchant(player, creature, EQUIPMENT_SLOT_FINGER2, 3840); break; case GOSSIP_ACTION_INFO_DEF+83: Enchant(player, creature, EQUIPMENT_SLOT_FINGER2, 3791); break; case GOSSIP_ACTION_INFO_DEF+12: { player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); Item* item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_MAINHAND); if (!item) return true; if (validItem(2, item)) player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 110", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+98); if (validItem(3, item)) player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 81", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+99); if (validItem(1, item)) { if (!validItem(2, item)) player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 65", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+89); if (!validItem(3, item)) player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 63", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+88); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "меткость и крит 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+85); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "ловкость 26", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+94); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "дух 45", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+95); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 50", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+84); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* 400 силы атаки, -5% брони", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+86); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* рейтинг скорости 250", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+87); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* пробивание брони 120", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+96); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* ловкость 120, скорость атаки", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+97); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* урон от огня", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+90); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* исцеление при ударе в ближнем бою", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+91); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* 360-440 хп при менее 35% хп", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+92); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* парирование 200 и урон 600-800", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+93); } player->SEND_GOSSIP_MENU(55004, creature->GetGUID()); } break; case GOSSIP_ACTION_INFO_DEF+84: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3851, 1); break; case GOSSIP_ACTION_INFO_DEF+85: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3788, 1); break; case GOSSIP_ACTION_INFO_DEF+86: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3789, 1); break; case GOSSIP_ACTION_INFO_DEF+87: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3790, 1); break; case GOSSIP_ACTION_INFO_DEF+88: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3834, 1); break; case GOSSIP_ACTION_INFO_DEF+89: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3833, 1); break; case GOSSIP_ACTION_INFO_DEF+90: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3239, 1); break; case GOSSIP_ACTION_INFO_DEF+91: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3241, 1); break; case GOSSIP_ACTION_INFO_DEF+92: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3870, 1); break; case GOSSIP_ACTION_INFO_DEF+93: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3869, 1); break; case GOSSIP_ACTION_INFO_DEF+94: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 1103, 1); break; case GOSSIP_ACTION_INFO_DEF+95: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3844, 1); break; case GOSSIP_ACTION_INFO_DEF+96: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3225, 1); break; case GOSSIP_ACTION_INFO_DEF+97: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 2673, 1); break; case GOSSIP_ACTION_INFO_DEF+98: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3827, 2); break; case GOSSIP_ACTION_INFO_DEF+99: Enchant(player, creature, EQUIPMENT_SLOT_MAINHAND, 3854, 3); break; case GOSSIP_ACTION_INFO_DEF+13: { player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TALK, "<- Назад", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); Item* item = player->GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND); if (!item) return true; if (validItem(1, item)) { player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила атаки 65", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+111); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "сила заклинаний 63", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+110); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "меткость и крит 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+107); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "ловкость 26", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+116); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "дух 45", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+117); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 50", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+106); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* 400 силы атаки, -5% брони", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+108); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* рейтинг скорости 250", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+109); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* пробивание брони 120", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+118); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* ловкость 120, скорость атаки", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+119); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* урон от огня", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+112); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* исцеление при ударе в ближнем бою", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+113); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* 360-440 хп при менее 35% хп", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+114); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "* парирование 200 и урон 600-800", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+115); } if (validItem(4, item)) { player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "интелект 25", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+101); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "рейтинг блокирования 15", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+102); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "показатель блокирования 36", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+105); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "рейтинг защиты 20", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+100); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "выносливость 18", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+104); player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, "устойчивость 12", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+103); } player->SEND_GOSSIP_MENU(55004, creature->GetGUID()); } break; case GOSSIP_ACTION_INFO_DEF+100: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 1952, 4); break; case GOSSIP_ACTION_INFO_DEF+101: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 1128, 4); break; case GOSSIP_ACTION_INFO_DEF+102: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 2655, 4); break; case GOSSIP_ACTION_INFO_DEF+103: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3229, 4); break; case GOSSIP_ACTION_INFO_DEF+104: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 1071, 4); break; case GOSSIP_ACTION_INFO_DEF+105: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 2653, 4); break; case GOSSIP_ACTION_INFO_DEF+106: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3851, 1); break; case GOSSIP_ACTION_INFO_DEF+107: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3788, 1); break; case GOSSIP_ACTION_INFO_DEF+108: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3789, 1); break; case GOSSIP_ACTION_INFO_DEF+109: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3790, 1); break; case GOSSIP_ACTION_INFO_DEF+110: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3834, 1); break; case GOSSIP_ACTION_INFO_DEF+111: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3833, 1); break; case GOSSIP_ACTION_INFO_DEF+112: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3239, 1); break; case GOSSIP_ACTION_INFO_DEF+113: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3241, 1); break; case GOSSIP_ACTION_INFO_DEF+114: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3870, 1); break; case GOSSIP_ACTION_INFO_DEF+115: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3869, 1); break; case GOSSIP_ACTION_INFO_DEF+116: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 1103, 1); break; case GOSSIP_ACTION_INFO_DEF+117: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3844, 1); break; case GOSSIP_ACTION_INFO_DEF+118: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 3225, 1); break; case GOSSIP_ACTION_INFO_DEF+119: Enchant(player, creature, EQUIPMENT_SLOT_OFFHAND, 2673, 1); break; } return true; }