Core/Gossip: Drop OptionNpcFlag from gossip_menu_option

Port From (https://github.com/TrinityCore/TrinityCore/commit/ba49dbfdcbbbee4d6be39284c6924bf56d7f6586)
This commit is contained in:
hondacrx
2022-10-11 20:04:52 -04:00
parent 006d47a955
commit b611244add
4 changed files with 94 additions and 103 deletions
-1
View File
@@ -731,7 +731,6 @@ namespace Game.Misc
public GossipOptionNpc OptionNpc;
public string OptionText;
public uint OptionBroadcastTextId;
public NPCFlags OptionNpcFlag;
public uint Language;
public uint ActionMenuId;
public uint ActionPoiId;
+1 -7
View File
@@ -2308,12 +2308,9 @@ namespace Game.Entities
var menuItemBounds = Global.ObjectMgr.GetGossipMenuItemsMapBounds(menuId);
NPCFlags npcflags = 0;
if (source.IsTypeId(TypeId.Unit))
{
npcflags = (NPCFlags)(((ulong)(source.ToUnit().m_unitData.NpcFlags[1]) << 32) | source.ToUnit().m_unitData.NpcFlags[0]);
if (Convert.ToBoolean(npcflags & NPCFlags.QuestGiver) && showQuests)
if (showQuests && source.ToUnit().IsQuestGiver())
PrepareQuestMenu(source.GetGUID());
}
else if (source.IsTypeId(TypeId.GameObject))
@@ -2330,9 +2327,6 @@ namespace Game.Entities
Creature creature = source.ToCreature();
if (creature)
{
if (!gossipMenuItem.OptionNpcFlag.HasAnyFlag(npcflags))
continue;
switch (gossipMenuItem.OptionNpc)
{
case GossipOptionNpc.TaxiNode:
+9 -10
View File
@@ -579,8 +579,8 @@ namespace Game
gossipMenuItemsStorage.Clear();
// 0 1 2 3 4 5 6 7 8 9 10 11 12
SQLResult result = DB.World.Query("SELECT MenuID, OptionID, OptionNpc, OptionText, OptionBroadcastTextID, OptionNpcFlag, Language, ActionMenuID, ActionPoiID, BoxCoded, BoxMoney, BoxText, BoxBroadcastTextID " +
// 0 1 2 3 4 5 6 7 8 9 10 11
SQLResult result = DB.World.Query("SELECT MenuID, OptionID, OptionNpc, OptionText, OptionBroadcastTextID, Language, ActionMenuID, ActionPoiID, BoxCoded, BoxMoney, BoxText, BoxBroadcastTextID " +
"FROM gossip_menu_option ORDER BY MenuID, OptionID");
if (result.IsEmpty())
@@ -598,14 +598,13 @@ namespace Game
gMenuItem.OptionNpc = (GossipOptionNpc)result.Read<byte>(2);
gMenuItem.OptionText = result.Read<string>(3);
gMenuItem.OptionBroadcastTextId = result.Read<uint>(4);
gMenuItem.OptionNpcFlag = (NPCFlags)result.Read<ulong>(5);
gMenuItem.Language = result.Read<uint>(6);
gMenuItem.ActionMenuId = result.Read<uint>(7);
gMenuItem.ActionPoiId = result.Read<uint>(8);
gMenuItem.BoxCoded = result.Read<bool>(9);
gMenuItem.BoxMoney = result.Read<uint>(10);
gMenuItem.BoxText = result.Read<string>(11);
gMenuItem.BoxBroadcastTextId = result.Read<uint>(12);
gMenuItem.Language = result.Read<uint>(5);
gMenuItem.ActionMenuId = result.Read<uint>(6);
gMenuItem.ActionPoiId = result.Read<uint>(7);
gMenuItem.BoxCoded = result.Read<bool>(8);
gMenuItem.BoxMoney = result.Read<uint>(9);
gMenuItem.BoxText = result.Read<string>(10);
gMenuItem.BoxBroadcastTextId = result.Read<uint>(11);
if (gMenuItem.OptionNpc >= GossipOptionNpc.Max)
{