Показать сообщение отдельно
Старый 17.11.2010, 14:04   #1
Den
Ученый
 
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
Den Скоро придёт к известностиDen Скоро придёт к известности
По умолчанию [bug+fix] Use pvp trinket in process player logout

Вообщем такой незначительный и совсем не серьёзный баг (наверное) :
Нажимаем логаут и если персонаж имеет пвп триню (и она на нём одета) 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;
}
Ну вот уже лучше - при попытке юзанья , персонаж уже не встаёт , но вот беда он всё равно пытается кастить ( визуальный эффект )

Быть может не тут надо это дело исправлять ?
Праильно ли выбран путь для исправления этого бага ?
А может всё это полный бред ?
Den вне форума   Ответить с цитированием