aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMeji <alvaro.megias@outlook.com>2022-12-18 01:10:39 +0100
committerGitHub <noreply@github.com>2022-12-18 01:10:39 +0100
commit9653f96f9930c1c27bfec887bdbdc1a81b10babd (patch)
tree85b50811f1b78541b8f0491ca0fcca67260143f2 /src
parent263ce0cd308d508235d0201937b3b29911600722 (diff)
Core/Units: Implemented UNIT_VIS_FLAGS_INVISIBLE (#28448)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Unit/UnitDefines.h4
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp8
2 files changed, 8 insertions, 4 deletions
diff --git a/src/server/game/Entities/Unit/UnitDefines.h b/src/server/game/Entities/Unit/UnitDefines.h
index 0f9b5e35032..93adec7dd4b 100644
--- a/src/server/game/Entities/Unit/UnitDefines.h
+++ b/src/server/game/Entities/Unit/UnitDefines.h
@@ -49,8 +49,8 @@ enum UnitStandStateType : uint8
// byte flag value (UNIT_FIELD_BYTES_1, 2)
enum UnitVisFlags : uint8
{
- UNIT_VIS_FLAGS_UNK1 = 0x01,
- UNIT_VIS_FLAGS_CREEP = 0x02,
+ UNIT_VIS_FLAGS_INVISIBLE = 0x01,
+ UNIT_VIS_FLAGS_STEALTHED = 0x02,
UNIT_VIS_FLAGS_UNTRACKABLE = 0x04,
UNIT_VIS_FLAGS_UNK4 = 0x08,
UNIT_VIS_FLAGS_UNK5 = 0x10,
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 48c3e5f23da..2c0a8f11c3d 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -1474,6 +1474,8 @@ void AuraEffect::HandleModInvisibility(AuraApplication const* aurApp, uint8 mode
target->m_invisibility.AddFlag(type);
target->m_invisibility.AddValue(type, GetAmount());
+
+ target->SetVisFlag(UNIT_VIS_FLAGS_INVISIBLE);
}
else
{
@@ -1485,6 +1487,8 @@ void AuraEffect::HandleModInvisibility(AuraApplication const* aurApp, uint8 mode
playerTarget->RemoveAuraVision(PLAYER_FIELD_BYTE2_INVISIBILITY_GLOW);
target->m_invisibility.DelFlag(type);
+
+ target->RemoveVisFlag(UNIT_VIS_FLAGS_INVISIBLE);
}
else
{
@@ -1562,7 +1566,7 @@ void AuraEffect::HandleModStealth(AuraApplication const* aurApp, uint8 mode, boo
target->m_stealth.AddFlag(type);
target->m_stealth.AddValue(type, GetAmount());
- target->SetVisFlag(UNIT_VIS_FLAGS_CREEP);
+ target->SetVisFlag(UNIT_VIS_FLAGS_STEALTHED);
if (Player * playerTarget = target->ToPlayer())
playerTarget->AddAuraVision(PLAYER_FIELD_BYTE2_STEALTH);
}
@@ -1574,7 +1578,7 @@ void AuraEffect::HandleModStealth(AuraApplication const* aurApp, uint8 mode, boo
{
target->m_stealth.DelFlag(type);
- target->RemoveVisFlag(UNIT_VIS_FLAGS_CREEP);
+ target->RemoveVisFlag(UNIT_VIS_FLAGS_STEALTHED);
if (Player * playerTarget = target->ToPlayer())
playerTarget->RemoveAuraVision(PLAYER_FIELD_BYTE2_STEALTH);
}