Core/Creatures: Taxi improvements

* Fixed flight master minimap icon
* Fixed crash on Argus
* Implemented teleport taxi nodes
Port From (https://github.com/TrinityCore/TrinityCore/commit/73e0b3e77c04a7821f58d79211f344b9129602f1)
This commit is contained in:
hondacrx
2024-02-02 10:20:04 -05:00
parent 80f4ece2e5
commit 871928ebb7
9 changed files with 126 additions and 67 deletions
+3 -3
View File
@@ -413,7 +413,7 @@ namespace Game.DataStorage
foreach (var node in TaxiNodesStorage.Values)
{
if (!node.Flags.HasAnyFlag(TaxiNodeFlags.Alliance | TaxiNodeFlags.Horde))
if (!node.IsPartOfTaxiNetwork())
continue;
// valid taxi network node
@@ -421,9 +421,9 @@ namespace Game.DataStorage
byte submask = (byte)(1 << (int)((node.Id - 1) % 8));
TaxiNodesMask[field] |= submask;
if (node.Flags.HasAnyFlag(TaxiNodeFlags.Horde))
if (node.GetFlags().HasFlag(TaxiNodeFlags.ShowOnHordeMap))
HordeTaxiNodesMask[field] |= submask;
if (node.Flags.HasAnyFlag(TaxiNodeFlags.Alliance))
if (node.GetFlags().HasFlag(TaxiNodeFlags.ShowOnAllianceMap))
AllianceTaxiNodesMask[field] |= submask;
int uiMapId;
+17 -1
View File
@@ -36,13 +36,29 @@ namespace Game.DataStorage
public ushort ContinentID;
public uint ConditionID;
public ushort CharacterBitNumber;
public TaxiNodeFlags Flags;
public int Flags;
public int UiTextureKitID;
public int MinimapAtlasMemberID;
public float Facing;
public uint SpecialIconConditionID;
public uint VisibilityConditionID;
public uint[] MountCreatureID = new uint[2];
public TaxiNodeFlags GetFlags() { return (TaxiNodeFlags)Flags; }
public bool IsPartOfTaxiNetwork()
{
return GetFlags().HasFlag(TaxiNodeFlags.ShowOnAllianceMap | TaxiNodeFlags.ShowOnHordeMap)
// manually whitelisted nodes
|| Id == 1985 // [Hidden] Argus Ground Points Hub (Ground TP out to here, TP to Vindicaar from here)
|| Id == 1986 // [Hidden] Argus Vindicaar Ground Hub (Vindicaar TP out to here, TP to ground from here)
|| Id == 1987 // [Hidden] Argus Vindicaar No Load Hub (Vindicaar No Load transition goes through here)
|| Id == 2627 // [Hidden] 9.0 Bastion Ground Points Hub (Ground TP out to here, TP to Sanctum from here)
|| Id == 2628 // [Hidden] 9.0 Bastion Ground Hub (Sanctum TP out to here, TP to ground from here)
|| Id == 2732 // [HIDDEN] 9.2 Resonant Peaks - Teleport Network - Hidden Hub (Connects all Nodes to each other without unique paths)
|| Id == 2835 // [Hidden] 10.0 Travel Network - Destination Input
|| Id == 2843; // [Hidden] 10.0 Travel Network - Destination Output
}
}
public sealed class TaxiPathRecord