Core/Creatures: Allow overriding default gossip menu id

Port From (https://github.com/TrinityCore/TrinityCore/commit/09568736134372ec1a79b936a248eec30f071c8d)
This commit is contained in:
hondacrx
2023-03-14 02:22:08 -04:00
parent ccea9d09df
commit bc8dc03724
5 changed files with 17 additions and 3 deletions
@@ -28,6 +28,7 @@ namespace Game.Entities
bool _isMissingCanSwimFlagOutOfCombat; bool _isMissingCanSwimFlagOutOfCombat;
uint? _gossipMenuId;
uint? _trainerId; uint? _trainerId;
public ulong m_PlayerDamageReq; public ulong m_PlayerDamageReq;
+13
View File
@@ -1138,6 +1138,19 @@ namespace Game.Entities
public bool HasFlag(CreatureStaticFlags7 flag) { return _staticFlags.HasFlag(flag); } public bool HasFlag(CreatureStaticFlags7 flag) { return _staticFlags.HasFlag(flag); }
public bool HasFlag(CreatureStaticFlags8 flag) { return _staticFlags.HasFlag(flag); } public bool HasFlag(CreatureStaticFlags8 flag) { return _staticFlags.HasFlag(flag); }
public uint GetGossipMenuId()
{
if (_gossipMenuId.HasValue)
return _gossipMenuId.Value;
return GetCreatureTemplate().GossipMenuId;
}
public void SetGossipMenuId(uint? gossipMenuId)
{
_gossipMenuId = gossipMenuId;
}
public uint GetTrainerId() public uint GetTrainerId()
{ {
if (_trainerId.HasValue) if (_trainerId.HasValue)
+1 -1
View File
@@ -2698,7 +2698,7 @@ namespace Game.Entities
switch (source.GetTypeId()) switch (source.GetTypeId())
{ {
case TypeId.Unit: case TypeId.Unit:
return source.ToCreature().GetCreatureTemplate().GossipMenuId; return source.ToCreature().GetGossipMenuId();
case TypeId.GameObject: case TypeId.GameObject:
return source.ToGameObject().GetGoInfo().GetGossipMenuId(); return source.ToGameObject().GetGoInfo().GetGossipMenuId();
default: default:
+1 -1
View File
@@ -153,7 +153,7 @@ namespace Game
_player.PlayerTalkClass.ClearMenus(); _player.PlayerTalkClass.ClearMenus();
if (!unit.GetAI().OnGossipHello(_player)) if (!unit.GetAI().OnGossipHello(_player))
{ {
GetPlayer().PrepareGossipMenu(unit, unit.GetCreatureTemplate().GossipMenuId, true); GetPlayer().PrepareGossipMenu(unit, unit.GetGossipMenuId(), true);
GetPlayer().SendPreparedGossip(unit); GetPlayer().SendPreparedGossip(unit);
} }
} }
+1 -1
View File
@@ -68,7 +68,7 @@ namespace Game
if (creature.GetAI().OnGossipHello(_player)) if (creature.GetAI().OnGossipHello(_player))
return; return;
GetPlayer().PrepareGossipMenu(creature, creature.GetCreatureTemplate().GossipMenuId, true); GetPlayer().PrepareGossipMenu(creature, creature.GetGossipMenuId(), true);
GetPlayer().SendPreparedGossip(creature); GetPlayer().SendPreparedGossip(creature);
} }