Вообщем такой незначительный и совсем не серьёзный баг (наверное) :
Нажимаем логаут и если персонаж имеет пвп триню (и она на нём одета)
http://www.wowhead.com/spell=42292#used-by-item:0-2+1 ( или
http://www.wowhead.com/spell=59752 ) нажимаем использовать и персонаж её использует и встаёт ,а логаут то продолжает идти , а персонаж то наш стоит. И вот решил попробывать исправить , вроде бы показалось не так уж сложно... На офе во время логаута если заюзать триню или тот рассовый спелл то пишет "Выполняется другое действие" .
Пробуем запихнуть это дело в Spell::CheckCast
Код:
if (((Player*)m_caster)->GetSession()->isLogingOut())
{
if (!(m_spellInfo->Attributes & SPELL_ATTR_EX_DISPEL_AURAS_ON_IMMUNITY))
return SPELL_FAILED_SPELL_IN_PROGRESS;
}
ухты! работает - но не совсем как надо , юзать уже нельзя - но при попытке заюзать - персонаж встаёт с места , при ещё одном нажатии он пытается кастануть (визуально).
дальше пробуем вот так:
Код:
if (((Player*)m_caster)->GetSession()->isLogingOut())
{
if (!(m_spellInfo->Attributes & SPELL_ATTR_EX_DISPEL_AURAS_ON_IMMUNITY))
m_caster->SetStandState(UNIT_STAND_STATE_SIT);
return SPELL_FAILED_SPELL_IN_PROGRESS;
}
Ну вот уже лучше - при попытке юзанья , персонаж уже не встаёт , но вот беда он всё равно пытается кастить ( визуальный эффект )
Быть может не тут надо это дело исправлять ?
Праильно ли выбран путь для исправления этого бага ?
А может всё это полный бред ?