aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/game/SpellAuras.cpp3
-rw-r--r--src/game/SpellMgr.cpp2
-rw-r--r--src/game/Unit.cpp13
3 files changed, 10 insertions, 8 deletions
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index aa6db06f4a8..5503dce1b3d 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -4259,6 +4259,9 @@ void AuraEffect::HandleAuraModDecreaseSpeed(bool /*apply*/, bool Real, bool chan
m_target->UpdateSpeed(MOVE_RUN, true);
m_target->UpdateSpeed(MOVE_SWIM, true);
m_target->UpdateSpeed(MOVE_FLIGHT, true);
+ m_target->UpdateSpeed(MOVE_RUN_BACK, true);
+ m_target->UpdateSpeed(MOVE_SWIM_BACK, true);
+ m_target->UpdateSpeed(MOVE_FLIGHT_BACK, true);
}
void AuraEffect::HandleAuraModUseNormalSpeed(bool /*apply*/, bool Real, bool changeAmount)
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 57f3d6b5ee0..c92a75e4661 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -576,7 +576,7 @@ bool IsPositiveEffect(uint32 spellId, uint32 effIndex, bool deep)
switch(spellId)
{
- case 46392: // Focused Assault
+ case 46392: // Focused Assault
case 46393: // Brutal Assault
case 28441: // not positive dummy spell
case 37675: // Chaos Blast
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 393137833bb..e1ed8cb44b1 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -60,7 +60,7 @@ float baseMoveSpeed[MAX_MOVE_TYPE] =
{
2.5f, // MOVE_WALK
7.0f, // MOVE_RUN
- 1.25f, // MOVE_RUN_BACK
+ 3.0f, // MOVE_RUN_BACK
4.722222f, // MOVE_SWIM
4.5f, // MOVE_SWIM_BACK
3.141594f, // MOVE_TURN_RATE
@@ -10860,6 +10860,11 @@ void Unit::UpdateSpeed(UnitMoveType mtype, bool forced)
switch(mtype)
{
+ // Only apply debuffs
+ case MOVE_FLIGHT_BACK:
+ case MOVE_RUN_BACK:
+ case MOVE_SWIM_BACK:
+ break;
case MOVE_WALK:
return;
case MOVE_RUN:
@@ -10878,15 +10883,11 @@ void Unit::UpdateSpeed(UnitMoveType mtype, bool forced)
}
break;
}
- case MOVE_RUN_BACK:
- return;
case MOVE_SWIM:
{
main_speed_mod = GetMaxPositiveAuraModifier(SPELL_AURA_MOD_INCREASE_SWIM_SPEED);
break;
}
- case MOVE_SWIM_BACK:
- return;
case MOVE_FLIGHT:
{
if (GetTypeId()==TYPEID_UNIT && IsControlledByPlayer()) // not sure if good for pet
@@ -10918,8 +10919,6 @@ void Unit::UpdateSpeed(UnitMoveType mtype, bool forced)
vehicle->UpdateSpeed(MOVE_FLIGHT, true);
break;
}
- case MOVE_FLIGHT_BACK:
- return;
default:
sLog.outError("Unit::UpdateSpeed: Unsupported move type (%d)", mtype);
return;