From c021bff594b3f3a6467a466e9324a77a1bcfdc38 Mon Sep 17 00:00:00 2001 From: Shauren Date: Mon, 31 Dec 2012 17:58:21 +0100 Subject: Core/Vehicles: Fixed basepoints used when ride vehicle aura is created for !IsInMap case --- src/server/game/Entities/Unit/Unit.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index d052fe1bfb8..c613bef3305 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -17067,8 +17067,12 @@ bool Unit::HandleSpellClick(Unit* clicker, int8 seatId) caster->CastCustomSpell(itr->second.spellId, SpellValueMod(SPELLVALUE_BASE_POINT0+i), seatId + 1, target, GetVehicleKit() ? TRIGGERED_IGNORE_CASTER_MOUNTED_OR_ON_VEHICLE : TRIGGERED_NONE, NULL, NULL, origCasterGUID); else // This can happen during Player::_LoadAuras { - int32 bp0 = seatId; - Aura::TryRefreshStackOrCreate(spellEntry, MAX_EFFECT_MASK, this, clicker, &bp0, NULL, origCasterGUID); + int32 bp0[MAX_SPELL_EFFECTS]; + for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i) + bp0[i] = spellEntry->Effects[i].BasePoints; + + bp0[i] = seatId; + Aura::TryRefreshStackOrCreate(spellEntry, MAX_EFFECT_MASK, this, clicker, bp0, NULL, origCasterGUID); } } else -- cgit v1.2.3