Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
BattlePetMgr Class Reference

#include <BattlePetMgr.h>

Collaboration diagram for BattlePetMgr:

Public Member Functions

void ApplyActivePetBattlePlayerState (float faceX, float faceY)
bool ApplyBattlePetAbilityExchangeInput (uint32 roundId, uint32 allyDamage, uint32 allyAbilityEffectId, uint8 allyAbilitySlot, uint32 allyAbilityId, uint16 allyAbilityCooldown, uint32 enemyDamage, uint32 enemyAbilityEffectId, uint32 allyIncomingDamageReduction, uint8 allyIncomingDamageReductionRounds, uint32 enemyIncomingDamageReduction, uint8 enemyIncomingDamageReductionRounds, Skyfire::BattlePetPackets::BattlePetRoundResult &round, Skyfire::BattlePetPackets::BattlePetFinalRound *finalRound=NULL)
bool ApplyBattlePetAbilityInput (uint32 roundId, uint32 damage, uint32 abilityEffectId, uint8 abilitySlot, uint32 abilityId, uint16 abilityCooldown, Skyfire::BattlePetPackets::BattlePetRoundResult &round, Skyfire::BattlePetPackets::BattlePetFinalRound *finalRound=NULL)
bool ApplyBattlePetForfeitInput (uint32 roundId, Skyfire::BattlePetPackets::BattlePetFinalRound &finalRound)
bool ApplyBattlePetSwapInput (uint32 roundId, uint8 newFrontPet, Skyfire::BattlePetPackets::BattlePetRoundResult &round)
bool ApplyBattlePetTrapInput (uint32 roundId, uint32 trapAbilityEffectId, uint32 enemyDamage, uint32 enemyAbilityEffectId, Skyfire::BattlePetPackets::BattlePetRoundResult &round, Skyfire::BattlePetPackets::BattlePetFinalRound &finalRound)
bool ApplyEnemyBattlePetDamage (uint32 damage, uint32 abilityEffectId, Skyfire::BattlePetPackets::BattlePetRoundResult &round)
 BattlePetMgr (Player *owner)
BattlePetAchievementContext BuildActivePetBattleAchievementContext (uint16 speciesId, uint8 quality, bool won, bool captured) const
bool BuildActivePetBattleFinalRound (bool abandoned, Skyfire::BattlePetPackets::BattlePetFinalRound &finalRound, bool captured=false)
bool CanCreateBattlePet (uint16 speciesId) const
void ClearActivePetBattle ()
BattlePetCreate (uint16 speciesId)
BattlePetCreate (uint16 speciesId, uint8 level, uint8 quality, bool notification=true)
BattlePetCreate (uint16 speciesId, uint8 level, uint8 quality, uint8 breed, bool notification=true)
void Delete (BattlePet *battlePet)
std::vector< BattlePet * > FindBattlePetNameMatches (std::string const &name) const
void FinishActivePetBattle (uint8 winner)
ActivePetBattle const & GetActivePetBattle () const
uint8 GetActivePetBattleTrapStatus () const
BattlePetGetBattlePet (uint64 id) const
uint32 GetBattlePetCount () const
uint8 GetBattlePetCount (uint16 speciesId) const
std::string GetBattlePetSpeciesName (BattlePet const *battlePet) const
TempSummonGetCurrentSummon () const
uint64 GetCurrentSummonId () const
BattlePetGetFirstAliveLoadoutBattlePet () const
uint8 GetLoadoutFlags () const
uint64 GetLoadoutSlot (uint8 slot) const
uint8 GetLoadoutSlotForBattlePet (uint64 id) const
PlayerGetOwner () const
uint32 GetTrapAbility () const
bool HasActivePetBattle () const
bool HasLoadoutBattlePet () const
bool HasLoadoutFlag (uint8 flag) const
bool HasLoadoutSlot (uint8 slot) const
void HealBattlePets (uint8 percent)
void HideActivePetBattleWorldObject (Creature *creature)
bool IsPetBattlePvpQueued () const
void LoadFromDb (PreparedQueryResult result)
void LoadSlotsFromDb (PreparedQueryResult result)
void OnAchievementEarned (uint32 achievementId)
void ResummonLastBattlePet ()
void SaveSlotsToDb (SQLTransaction &trans)
void SaveToDb ()
void SaveToDb (SQLTransaction &trans)
bool SelectActivePetBattleFrontPet (uint8 frontPet)
void SendBattlePetDeleted (uint64 id)
void SendBattlePetJournal ()
void SendBattlePetJournalLock ()
void SendBattlePetSlotUpdate (uint8 slot, bool notification, uint64 id=0)
void SendBattlePetUpdate (BattlePet *battlePet, bool notification)
void SendPetBattleRequestFailed (uint8 reason)
bool SetActivePetBattleAllyPet (uint8 petIndex, uint64 petId, uint32 maxHealth, uint32 health)
void SetCurrentSummon (TempSummon *summon)
void SetCurrentSummonId (uint64 summonId)
void SetLoadoutFlag (uint8 flag)
void SetLoadoutSlot (uint8 slot, uint64 id, bool save=false)
void SetPetBattlePvpQueued (bool queued)
bool ShouldHideActivePetBattleWorldObject (uint64 guid) const
void StartPvpPetBattle (uint64 opponentGuid, uint64 allyPetId, uint32 allyMaxHealth, uint32 allyHealth, uint64 enemyPetId, uint32 enemyMaxHealth, uint32 enemyHealth, uint16 enemySpecies=0, uint8 enemyLevel=0, uint8 enemyQuality=0, uint8 allyFrontPet=0, uint8 enemyFrontPet=3, BattlePetAchievementSource source=BATTLE_PET_ACHIEVEMENT_SOURCE_PVP_DUEL)
void StartWildPetBattle (uint64 enemyGuid, uint64 allyPetId, uint32 allyMaxHealth, uint32 allyHealth, uint64 enemyPetId, uint32 enemyMaxHealth, uint32 enemyHealth, uint16 enemySpecies=0, uint8 enemyLevel=0, uint8 enemyQuality=0, uint8 enemyBreed=0, uint8 allyFrontPet=0)
void UnlockLoadoutSlot (uint8 slot)
void UnSummonCurrentBattlePet (bool temporary)
void UpdateBattlePetLevelAchievement (BattlePet const &battlePet, uint8 initialLevel, uint8 finalLevel)
 ~BattlePetMgr ()

Private Member Functions

bool ApplyAchievementLoadoutReward (uint32 achievementId)
void ApplyActivePetBattleRoundState (Skyfire::BattlePetPackets::BattlePetRoundResult &round) const
void ClearActivePetBattlePlayerState ()
void ClearActivePetBattleWorldObjectState ()
void DespawnResolvedWildPetBattleWorldObject ()
uint32 GetUniqueBattlePetSpeciesCount () const
void PersistActivePetBattleHealth ()
uint16 RewardActivePetBattlePet (BattlePet *battlePet, bool awardExperience)
void SyncAchievementLoadoutRewards ()
void UpdateBattlePetCollectionAchievements (BattlePet const *battlePet=NULL)
void UpdateCapturedBattlePetAchievements (BattlePet const &battlePet)
void UpdateFinishedPetBattleAchievements ()

Private Attributes

ActivePetBattle m_activePetBattle
bool m_activePetBattlePlayerStateApplied
uint64 m_activePetBattleWorldObjectGuid = 0
bool m_activePetBattleWorldObjectHidden = false
BattlePetSet m_battlePetSet
uint64 m_loadout [BATTLE_PET_MAX_LOADOUT_SLOTS] = { }
uint8 m_loadoutFlags
bool m_loadoutSave
Playerm_owner
bool m_petBattlePvpQueued = false
TempSummonm_summon
uint64 m_summonId
uint64 m_summonLastId

Detailed Description

Definition at line 110 of file BattlePetMgr.h.

Constructor & Destructor Documentation

◆ BattlePetMgr()

BattlePetMgr::BattlePetMgr ( Player * owner)
inline

◆ ~BattlePetMgr()

BattlePetMgr::~BattlePetMgr ( )

Definition at line 88 of file BattlePetMgr.cpp.

References m_battlePetSet.

Member Function Documentation

◆ ApplyAchievementLoadoutReward()

bool BattlePetMgr::ApplyAchievementLoadoutReward ( uint32 achievementId)
private

◆ ApplyActivePetBattlePlayerState()

void BattlePetMgr::ApplyActivePetBattlePlayerState ( float faceX,
float faceY )

◆ ApplyActivePetBattleRoundState()

◆ ApplyBattlePetAbilityExchangeInput()

◆ ApplyBattlePetAbilityInput()

◆ ApplyBattlePetForfeitInput()

◆ ApplyBattlePetSwapInput()

◆ ApplyBattlePetTrapInput()

bool BattlePetMgr::ApplyBattlePetTrapInput ( uint32 roundId,
uint32 trapAbilityEffectId,
uint32 enemyDamage,
uint32 enemyAbilityEffectId,
Skyfire::BattlePetPackets::BattlePetRoundResult & round,
Skyfire::BattlePetPackets::BattlePetFinalRound & finalRound )

◆ ApplyEnemyBattlePetDamage()

◆ BuildActivePetBattleAchievementContext()

◆ BuildActivePetBattleFinalRound()

◆ CanCreateBattlePet()

◆ ClearActivePetBattle()

◆ ClearActivePetBattlePlayerState()

void BattlePetMgr::ClearActivePetBattlePlayerState ( )
private

◆ ClearActivePetBattleWorldObjectState()

void BattlePetMgr::ClearActivePetBattleWorldObjectState ( )
private

◆ Create() [1/3]

BattlePet * BattlePetMgr::Create ( uint16 speciesId)

◆ Create() [2/3]

BattlePet * BattlePetMgr::Create ( uint16 speciesId,
uint8 level,
uint8 quality,
bool notification = true )

Definition at line 579 of file BattlePetMgr.cpp.

References Create(), and sObjectMgr.

◆ Create() [3/3]

BattlePet * BattlePetMgr::Create ( uint16 speciesId,
uint8 level,
uint8 quality,
uint8 breed,
bool notification = true )

◆ Delete()

◆ DespawnResolvedWildPetBattleWorldObject()

void BattlePetMgr::DespawnResolvedWildPetBattleWorldObject ( )
private

◆ FindBattlePetNameMatches()

std::vector< BattlePet * > BattlePetMgr::FindBattlePetNameMatches ( std::string const & name) const

◆ FinishActivePetBattle()

void BattlePetMgr::FinishActivePetBattle ( uint8 winner)

Definition at line 1021 of file BattlePetMgr.cpp.

References m_activePetBattle.

◆ GetActivePetBattle()

◆ GetActivePetBattleTrapStatus()

◆ GetBattlePet()

◆ GetBattlePetCount() [1/2]

◆ GetBattlePetCount() [2/2]

uint8 BattlePetMgr::GetBattlePetCount ( uint16 speciesId) const

◆ GetBattlePetSpeciesName()

std::string BattlePetMgr::GetBattlePetSpeciesName ( BattlePet const * battlePet) const

Definition at line 344 of file BattlePetMgr.cpp.

References CreatureTemplate::Name.

Referenced by FindBattlePetNameMatches().

◆ GetCurrentSummon()

TempSummon * BattlePetMgr::GetCurrentSummon ( ) const
inline

Definition at line 128 of file BattlePetMgr.h.

References m_summon.

Referenced by WorldSession::HandleBattlePetModifyName().

◆ GetCurrentSummonId()

◆ GetFirstAliveLoadoutBattlePet()

BattlePet * BattlePetMgr::GetFirstAliveLoadoutBattlePet ( ) const

◆ GetLoadoutFlags()

uint8 BattlePetMgr::GetLoadoutFlags ( ) const
inline

◆ GetLoadoutSlot()

◆ GetLoadoutSlotForBattlePet()

uint8 BattlePetMgr::GetLoadoutSlotForBattlePet ( uint64 id) const

◆ GetOwner()

Player * BattlePetMgr::GetOwner ( ) const
inline

Definition at line 119 of file BattlePetMgr.h.

References m_owner.

◆ GetTrapAbility()

◆ GetUniqueBattlePetSpeciesCount()

uint32 BattlePetMgr::GetUniqueBattlePetSpeciesCount ( ) const
private

◆ HasActivePetBattle()

◆ HasLoadoutBattlePet()

bool BattlePetMgr::HasLoadoutBattlePet ( ) const

◆ HasLoadoutFlag()

bool BattlePetMgr::HasLoadoutFlag ( uint8 flag) const
inline

Definition at line 148 of file BattlePetMgr.h.

References m_loadoutFlags.

Referenced by HasLoadoutSlot(), LoadSlotsFromDb(), and SetLoadoutFlag().

◆ HasLoadoutSlot()

◆ HealBattlePets()

◆ HideActivePetBattleWorldObject()

void BattlePetMgr::HideActivePetBattleWorldObject ( Creature * creature)

◆ IsPetBattlePvpQueued()

bool BattlePetMgr::IsPetBattlePvpQueued ( ) const
inline

◆ LoadFromDb()

◆ LoadSlotsFromDb()

◆ OnAchievementEarned()

void BattlePetMgr::OnAchievementEarned ( uint32 achievementId)

Definition at line 566 of file BattlePetMgr.cpp.

References ApplyAchievementLoadoutReward(), and SaveToDb().

◆ PersistActivePetBattleHealth()

◆ ResummonLastBattlePet()

◆ RewardActivePetBattlePet()

uint16 BattlePetMgr::RewardActivePetBattlePet ( BattlePet * battlePet,
bool awardExperience )
private

◆ SaveSlotsToDb()

◆ SaveToDb() [1/2]

◆ SaveToDb() [2/2]

◆ SelectActivePetBattleFrontPet()

bool BattlePetMgr::SelectActivePetBattleFrontPet ( uint8 frontPet)

◆ SendBattlePetDeleted()

void BattlePetMgr::SendBattlePetDeleted ( uint64 id)

◆ SendBattlePetJournal()

◆ SendBattlePetJournalLock()

void BattlePetMgr::SendBattlePetJournalLock ( )

◆ SendBattlePetSlotUpdate()

void BattlePetMgr::SendBattlePetSlotUpdate ( uint8 slot,
bool notification,
uint64 id = 0 )

◆ SendBattlePetUpdate()

◆ SendPetBattleRequestFailed()

void BattlePetMgr::SendPetBattleRequestFailed ( uint8 reason)

◆ SetActivePetBattleAllyPet()

bool BattlePetMgr::SetActivePetBattleAllyPet ( uint8 petIndex,
uint64 petId,
uint32 maxHealth,
uint32 health )

Definition at line 817 of file BattlePetMgr.cpp.

References m_activePetBattle.

Referenced by WorldSession::HandleBattlePetWildRequest().

◆ SetCurrentSummon()

void BattlePetMgr::SetCurrentSummon ( TempSummon * summon)
inline

Definition at line 130 of file BattlePetMgr.h.

References m_summon.

Referenced by Spell::EffectSummonType().

◆ SetCurrentSummonId()

void BattlePetMgr::SetCurrentSummonId ( uint64 summonId)
inline

Definition at line 129 of file BattlePetMgr.h.

References m_summonId.

Referenced by WorldSession::HandleBattlePetSummonCompanion().

◆ SetLoadoutFlag()

void BattlePetMgr::SetLoadoutFlag ( uint8 flag)

Definition at line 521 of file BattlePetMgr.cpp.

References HasLoadoutFlag(), m_loadoutFlags, and m_loadoutSave.

Referenced by LoadSlotsFromDb(), and UnlockLoadoutSlot().

◆ SetLoadoutSlot()

void BattlePetMgr::SetLoadoutSlot ( uint8 slot,
uint64 id,
bool save = false )

◆ SetPetBattlePvpQueued()

void BattlePetMgr::SetPetBattlePvpQueued ( bool queued)
inline

◆ ShouldHideActivePetBattleWorldObject()

bool BattlePetMgr::ShouldHideActivePetBattleWorldObject ( uint64 guid) const
inline

◆ StartPvpPetBattle()

void BattlePetMgr::StartPvpPetBattle ( uint64 opponentGuid,
uint64 allyPetId,
uint32 allyMaxHealth,
uint32 allyHealth,
uint64 enemyPetId,
uint32 enemyMaxHealth,
uint32 enemyHealth,
uint16 enemySpecies = 0,
uint8 enemyLevel = 0,
uint8 enemyQuality = 0,
uint8 allyFrontPet = 0,
uint8 enemyFrontPet = 3,
BattlePetAchievementSource source = BATTLE_PET_ACHIEVEMENT_SOURCE_PVP_DUEL )

Definition at line 687 of file BattlePetMgr.cpp.

References m_activePetBattle, and m_petBattlePvpQueued.

◆ StartWildPetBattle()

void BattlePetMgr::StartWildPetBattle ( uint64 enemyGuid,
uint64 allyPetId,
uint32 allyMaxHealth,
uint32 allyHealth,
uint64 enemyPetId,
uint32 enemyMaxHealth,
uint32 enemyHealth,
uint16 enemySpecies = 0,
uint8 enemyLevel = 0,
uint8 enemyQuality = 0,
uint8 enemyBreed = 0,
uint8 allyFrontPet = 0 )

Definition at line 678 of file BattlePetMgr.cpp.

References m_activePetBattle, and m_petBattlePvpQueued.

Referenced by WorldSession::HandleBattlePetWildRequest().

◆ SyncAchievementLoadoutRewards()

void BattlePetMgr::SyncAchievementLoadoutRewards ( )
private

◆ UnlockLoadoutSlot()

◆ UnSummonCurrentBattlePet()

void BattlePetMgr::UnSummonCurrentBattlePet ( bool temporary)

◆ UpdateBattlePetCollectionAchievements()

◆ UpdateBattlePetLevelAchievement()

void BattlePetMgr::UpdateBattlePetLevelAchievement ( BattlePet const & battlePet,
uint8 initialLevel,
uint8 finalLevel )

◆ UpdateCapturedBattlePetAchievements()

◆ UpdateFinishedPetBattleAchievements()

Member Data Documentation

◆ m_activePetBattle

◆ m_activePetBattlePlayerStateApplied

bool BattlePetMgr::m_activePetBattlePlayerStateApplied
private

◆ m_activePetBattleWorldObjectGuid

uint64 BattlePetMgr::m_activePetBattleWorldObjectGuid = 0
private

◆ m_activePetBattleWorldObjectHidden

bool BattlePetMgr::m_activePetBattleWorldObjectHidden = false
private

◆ m_battlePetSet

◆ m_loadout

uint64 BattlePetMgr::m_loadout[BATTLE_PET_MAX_LOADOUT_SLOTS] = { }
private

Definition at line 241 of file BattlePetMgr.h.

Referenced by GetLoadoutSlot(), and SetLoadoutSlot().

◆ m_loadoutFlags

uint8 BattlePetMgr::m_loadoutFlags
private

◆ m_loadoutSave

bool BattlePetMgr::m_loadoutSave
private

◆ m_owner

◆ m_petBattlePvpQueued

bool BattlePetMgr::m_petBattlePvpQueued = false
private

◆ m_summon

TempSummon* BattlePetMgr::m_summon
private

◆ m_summonId

uint64 BattlePetMgr::m_summonId
private

◆ m_summonLastId

uint64 BattlePetMgr::m_summonLastId
private

Definition at line 237 of file BattlePetMgr.h.

Referenced by BattlePetMgr(), ResummonLastBattlePet(), and UnSummonCurrentBattlePet().


The documentation for this class was generated from the following files: