Core/Maps & Extractors: Move copypasted map file headers into a single shared file and replace #defines with enums

Port From (https://github.com/TrinityCore/TrinityCore/commit/6ecfe58cae6d9cfa7a3aef21a4a96aa00c513ba2)
This commit is contained in:
hondacrx
2021-06-02 22:09:53 -04:00
parent 2576fded97
commit 90508f7689
9 changed files with 81 additions and 74 deletions
+1 -1
View File
@@ -114,7 +114,7 @@ namespace Game.Entities
public void UpdatePositionData()
{
PositionFullTerrainStatus data = new();
GetMap().GetFullTerrainStatusForPosition(_phaseShift, GetPositionX(), GetPositionY(), GetPositionZ(), data);
GetMap().GetFullTerrainStatusForPosition(_phaseShift, GetPositionX(), GetPositionY(), GetPositionZ(), data, LiquidHeaderTypeFlags.AllLiquids);
ProcessPositionDataChanged(data);
}
+4 -4
View File
@@ -795,7 +795,7 @@ namespace Game.Entities
if (status != 0 && liquidData.HasValue)
{
// Breath bar state (under water in any liquid type)
if (liquidData.Value.type_flags.HasAnyFlag(MapConst.MapAllLiquidTypes))
if (liquidData.Value.type_flags.HasAnyFlag(LiquidHeaderTypeFlags.AllLiquids))
{
if (status.HasAnyFlag(ZLiquidStatus.UnderWater))
m_MirrorTimerFlags |= PlayerUnderwaterState.InWater;
@@ -804,13 +804,13 @@ namespace Game.Entities
}
// Fatigue bar state (if not on flight path or transport)
if (liquidData.Value.type_flags.HasAnyFlag(MapConst.MapLiquidTypeDarkWater) && !IsInFlight() && !GetTransport())
if (liquidData.Value.type_flags.HasAnyFlag(LiquidHeaderTypeFlags.DarkWater) && !IsInFlight() && !GetTransport())
m_MirrorTimerFlags |= PlayerUnderwaterState.InDarkWater;
else
m_MirrorTimerFlags &= ~PlayerUnderwaterState.InDarkWater;
// Lava state (any contact)
if (liquidData.Value.type_flags.HasAnyFlag(MapConst.MapLiquidTypeMagma))
if (liquidData.Value.type_flags.HasAnyFlag(LiquidHeaderTypeFlags.Magma))
{
if (status.HasAnyFlag(ZLiquidStatus.InContact))
m_MirrorTimerFlags |= PlayerUnderwaterState.InLava;
@@ -819,7 +819,7 @@ namespace Game.Entities
}
// Slime state (any contact)
if (liquidData.Value.type_flags.HasAnyFlag(MapConst.MapLiquidTypeSlime))
if (liquidData.Value.type_flags.HasAnyFlag(LiquidHeaderTypeFlags.Slime))
{
if (status.HasAnyFlag(ZLiquidStatus.InContact))
m_MirrorTimerFlags |= PlayerUnderwaterState.InSlime;
+1 -1
View File
@@ -706,7 +706,7 @@ namespace Game.Entities
}
LiquidData liquid;
ZLiquidStatus liquidStatus = GetMap().GetLiquidStatus(GetPhaseShift(), GetPositionX(), GetPositionY(), GetPositionZ(), MapConst.MapAllLiquidTypes, out liquid);
ZLiquidStatus liquidStatus = GetMap().GetLiquidStatus(GetPhaseShift(), GetPositionX(), GetPositionY(), GetPositionZ(), LiquidHeaderTypeFlags.AllLiquids, out liquid);
isSubmerged = liquidStatus.HasAnyFlag(ZLiquidStatus.UnderWater) || HasUnitMovementFlag(MovementFlag.Swimming);
isInWater = liquidStatus.HasAnyFlag(ZLiquidStatus.InWater | ZLiquidStatus.UnderWater);