Core/Spells: use enum class for mount results

This commit is contained in:
Ovahlord
2020-04-07 18:55:16 +02:00
parent cb6ce1302b
commit eb3e2f7ca5
2 changed files with 15 additions and 15 deletions

View File

@@ -4294,19 +4294,19 @@ enum UpdateCollisionHeightReason : uint8
UPDATE_COLLISION_HEIGHT_SCALE = 1
};
enum MountResult : uint8
enum class MountResult : uint32
{
MOUNT_RESULT_INVALID_MOUNTEE = 0,
MOUNT_RESULT_TOO_FAR_AWAY = 1,
MOUNT_RESULT_ALREADY_MOUNTED = 2,
MOUNT_RESULT_NOT_MOUNTABLE = 3,
MOUNT_RESULT_NOT_YOUR_PET = 4,
MOUNT_RESULT_OTHER = 5,
MOUNT_RESULT_LOOTING = 6,
MOUNT_RESULT_RACE_CANT_MOUNT = 7,
MOUNT_RESULT_SHAPESHIFTED = 8,
MOUNT_RESULT_FORCE_DISMOUNT = 9,
MOUNT_RESULT_OK = 10 // never sent
InvalidMountee = 0,
TooFarAway = 1,
AlreadyMounted = 2,
NotMountable = 3,
NotYourPet = 4,
Other = 5,
Looting = 6,
RaceCantMount = 7,
Shapeshifted = 8,
ForcedDismount = 9,
Ok = 10 // never sent
};
#define MAX_CREATURE_SPELL_DATA_SLOT 4

View File

@@ -4243,7 +4243,7 @@ void Spell::SendPetCastResult(SpellCastResult result)
void Spell::SendMountResult(MountResult result)
{
if (result == MOUNT_RESULT_OK)
if (result == MountResult::Ok)
return;
if (!m_caster->IsPlayer())
@@ -4254,7 +4254,7 @@ void Spell::SendMountResult(MountResult result)
return;
WorldPackets::Spells::MountResult packet;
packet.Result = result;
packet.Result = AsUnderlyingType(result);
caster->SendDirectMessage(packet.Write());
}
@@ -6139,7 +6139,7 @@ SpellCastResult Spell::CheckCast(bool strict, uint32* param1 /*= nullptr*/, uint
if (m_caster->IsInDisallowedMountForm())
{
SendMountResult(MOUNT_RESULT_SHAPESHIFTED); // mount result gets sent before the cast result
SendMountResult(MountResult::Shapeshifted); // mount result gets sent before the cast result
return SPELL_FAILED_DONT_REPORT;
}