Scripts/Commands: .npc info and .gobj info now show runtime AI typenames in addition to AIName/ScriptName.
Port From (https://github.com/TrinityCore/TrinityCore/commit/c4458dd08ebe442461c711d01b014c6ff268fde6)
This commit is contained in:
@@ -1094,6 +1094,7 @@ namespace Framework.Constants
|
|||||||
ListRespawnsOverdue = 5080,
|
ListRespawnsOverdue = 5080,
|
||||||
ListRespawnsCreatures = 5081,
|
ListRespawnsCreatures = 5081,
|
||||||
ListRespawnsGameobjects = 5082,
|
ListRespawnsGameobjects = 5082,
|
||||||
|
ObjectInfoAIType = 5083,
|
||||||
|
|
||||||
NpcinfoUnitFieldFlags2 = 5084,
|
NpcinfoUnitFieldFlags2 = 5084,
|
||||||
NpcinfoUnitFieldFlags3 = 5085,
|
NpcinfoUnitFieldFlags3 = 5085,
|
||||||
|
|||||||
@@ -203,16 +203,16 @@ namespace Game.Chat
|
|||||||
handler.SendSysMessage(CypherStrings.GoinfoType, type);
|
handler.SendSysMessage(CypherStrings.GoinfoType, type);
|
||||||
handler.SendSysMessage(CypherStrings.GoinfoLootid, lootId);
|
handler.SendSysMessage(CypherStrings.GoinfoLootid, lootId);
|
||||||
handler.SendSysMessage(CypherStrings.GoinfoDisplayid, displayId);
|
handler.SendSysMessage(CypherStrings.GoinfoDisplayid, displayId);
|
||||||
WorldObject obj = handler.GetSelectedObject();
|
|
||||||
if (obj != null)
|
if (thisGO != null)
|
||||||
{
|
{
|
||||||
if (obj.IsGameObject() && obj.ToGameObject().GetGameObjectData() != null && obj.ToGameObject().GetGameObjectData().spawnGroupData.groupId != 0)
|
if (thisGO.GetGameObjectData() != null && thisGO.GetGameObjectData().spawnGroupData.groupId != 0)
|
||||||
{
|
{
|
||||||
SpawnGroupTemplateData groupData = obj.ToGameObject().GetGameObjectData().spawnGroupData;
|
SpawnGroupTemplateData groupData = thisGO.ToGameObject().GetGameObjectData().spawnGroupData;
|
||||||
handler.SendSysMessage(CypherStrings.SpawninfoGroupId, groupData.name, groupData.groupId, groupData.flags, obj.GetMap().IsSpawnGroupActive(groupData.groupId));
|
handler.SendSysMessage(CypherStrings.SpawninfoGroupId, groupData.name, groupData.groupId, groupData.flags, thisGO.GetMap().IsSpawnGroupActive(groupData.groupId));
|
||||||
}
|
}
|
||||||
if (obj.IsGameObject())
|
|
||||||
handler.SendSysMessage(CypherStrings.SpawninfoCompatibilityMode, obj.ToGameObject().GetRespawnCompatibilityMode());
|
handler.SendSysMessage(CypherStrings.SpawninfoCompatibilityMode, thisGO.GetRespawnCompatibilityMode());
|
||||||
}
|
}
|
||||||
handler.SendSysMessage(CypherStrings.GoinfoName, name);
|
handler.SendSysMessage(CypherStrings.GoinfoName, name);
|
||||||
handler.SendSysMessage(CypherStrings.GoinfoSize, gameObjectInfo.size);
|
handler.SendSysMessage(CypherStrings.GoinfoSize, gameObjectInfo.size);
|
||||||
@@ -232,6 +232,9 @@ namespace Game.Chat
|
|||||||
handler.SendSysMessage(CypherStrings.GoinfoAddon, goOverride.Faction, goOverride.Flags);
|
handler.SendSysMessage(CypherStrings.GoinfoAddon, goOverride.Faction, goOverride.Flags);
|
||||||
|
|
||||||
handler.SendSysMessage(CypherStrings.ObjectInfoAIInfo, gameObjectInfo.AIName, Global.ObjectMgr.GetScriptName(gameObjectInfo.ScriptId));
|
handler.SendSysMessage(CypherStrings.ObjectInfoAIInfo, gameObjectInfo.AIName, Global.ObjectMgr.GetScriptName(gameObjectInfo.ScriptId));
|
||||||
|
var ai = thisGO != null ? thisGO.GetAI() : null;
|
||||||
|
if (ai != null)
|
||||||
|
handler.SendSysMessage(CypherStrings.ObjectInfoAIType, nameof(ai));
|
||||||
|
|
||||||
GameObjectDisplayInfoRecord modelInfo = CliDB.GameObjectDisplayInfoStorage.LookupByKey(displayId);
|
GameObjectDisplayInfoRecord modelInfo = CliDB.GameObjectDisplayInfoStorage.LookupByKey(displayId);
|
||||||
if (modelInfo != null)
|
if (modelInfo != null)
|
||||||
|
|||||||
@@ -179,6 +179,9 @@ namespace Game.Chat
|
|||||||
handler.SendSysMessage(CypherStrings.NpcinfoArmor, target.GetArmor());
|
handler.SendSysMessage(CypherStrings.NpcinfoArmor, target.GetArmor());
|
||||||
handler.SendSysMessage(CypherStrings.NpcinfoPosition, target.GetPositionX(), target.GetPositionY(), target.GetPositionZ());
|
handler.SendSysMessage(CypherStrings.NpcinfoPosition, target.GetPositionX(), target.GetPositionY(), target.GetPositionZ());
|
||||||
handler.SendSysMessage(CypherStrings.ObjectInfoAIInfo, target.GetAIName(), target.GetScriptName());
|
handler.SendSysMessage(CypherStrings.ObjectInfoAIInfo, target.GetAIName(), target.GetScriptName());
|
||||||
|
var ai = target.GetAI();
|
||||||
|
if (ai != null)
|
||||||
|
handler.SendSysMessage(CypherStrings.ObjectInfoAIType, nameof(ai));
|
||||||
handler.SendSysMessage(CypherStrings.NpcinfoFlagsExtra, cInfo.FlagsExtra);
|
handler.SendSysMessage(CypherStrings.NpcinfoFlagsExtra, cInfo.FlagsExtra);
|
||||||
foreach (uint value in Enum.GetValues(typeof(CreatureFlagsExtra)))
|
foreach (uint value in Enum.GetValues(typeof(CreatureFlagsExtra)))
|
||||||
if (cInfo.FlagsExtra.HasAnyFlag((CreatureFlagsExtra)value))
|
if (cInfo.FlagsExtra.HasAnyFlag((CreatureFlagsExtra)value))
|
||||||
|
|||||||
Reference in New Issue
Block a user