diff options
Diffstat (limited to 'src/server/game/Entities')
| -rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 8 | ||||
| -rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 986eeb8e275..789f6b448da 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -16007,6 +16007,8 @@ void Player::ItemRemovedQuestCheck(uint32 entry, uint32 count) void Player::KilledMonster(CreatureTemplate const* cInfo, uint64 guid) { + ASSERT(cInfo); + if (cInfo->Entry) KilledMonsterCredit(cInfo->Entry, guid); @@ -16159,6 +16161,12 @@ void Player::CastedCreatureOrGO(uint32 entry, uint64 guid, uint32 spell_id) if (reqTarget != entry) // if entry doesn't match, check for killcredits referenced in template { CreatureTemplate const* cinfo = sObjectMgr->GetCreatureTemplate(entry); + if (!cinfo) + { + sLog->outError(LOG_FILTER_PLAYER, "Player::CastedCreatureOrGO: GetCreatureTemplate failed for entry %u. Skipping.", entry); + continue; + } + for (uint8 k = 0; k < MAX_KILL_CREDIT; ++k) if (cinfo->KillCredit[k] == reqTarget) entry = cinfo->KillCredit[k]; diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 233f88dc1d8..5d1ab9aa17a 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -12722,7 +12722,7 @@ void Unit::UpdateSpeed(UnitMoveType mtype, bool forced) // to help prevent pet from lagging behind and despawning float dist = GetDistance(pOwner); float base_rate = 1.00f; // base speed is 100% of owner speed - + if (dist < 5) dist = 5; |
