From e65dfc6a311f6c368db209c8a26d9404ddc033e7 Mon Sep 17 00:00:00 2001 From: reno Date: Mon, 15 Mar 2010 14:38:30 -0500 Subject: [PATCH] attempt to stop mobs casting and fleeing while stunned or confused --HG-- branch : trunk --- src/game/Unit.cpp | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index a758e836845..edbeaf4c9ec 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -14789,24 +14789,37 @@ void Unit::SetControlled(bool apply, UnitState state) if (hasUnitState(state)) return; - addUnitState(state); - switch(state) { case UNIT_STAT_STUNNED: + { + addUnitState(state); SetStunned(true); + CastStop(); + } break; case UNIT_STAT_ROOT: if (!hasUnitState(UNIT_STAT_STUNNED)) - SetRooted(true); + { + addUnitState(state); + SetRooted(true); + } break; case UNIT_STAT_CONFUSED: if (!hasUnitState(UNIT_STAT_STUNNED)) + { + addUnitState(state); SetConfused(true); + CastStop(); + } break; case UNIT_STAT_FLEEING: if (!hasUnitState(UNIT_STAT_STUNNED | UNIT_STAT_CONFUSED)) + { + addUnitState(state); SetFeared(true); + CastStop(); + } break; default: break;