diff --git a/src/game/Pet.cpp b/src/game/Pet.cpp index d1ded96d8..47d30fcd8 100644 --- a/src/game/Pet.cpp +++ b/src/game/Pet.cpp @@ -2022,8 +2022,10 @@ void Pet::SynchronizeLevelWithOwner() break; // can't be greater owner level case HUNTER_PET: - if(getLevel() > owner->getLevel()) + if (getLevel() > owner->getLevel()) GivePetLevel(owner->getLevel()); + else if (getLevel() + 5 < owner->getLevel()) + GivePetLevel(owner->getLevel() - 5); break; default: break; diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index e4c8e1e1a..b3fe8696d 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -10418,7 +10418,8 @@ Pet* Unit::CreateTamedPetFrom(Creature* creatureTarget,uint32 spell_id) if(IsFFAPvP()) pet->SetFFAPvP(true); - uint32 level = (creatureTarget->getLevel() < (getLevel() - 5)) ? (getLevel() - 5) : creatureTarget->getLevel(); + // level of hunter pet can't be less owner level at 5 levels + uint32 level = creatureTarget->getLevel() + 5 < getLevel() ? (getLevel() - 5) : creatureTarget->getLevel(); if(!pet->InitStatsForLevel(level)) { diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 4f8ca6cfb..8fdfa7416 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "10884" + #define REVISION_NR "10885" #endif // __REVISION_NR_H__