|
Регистрация | Файлы | Правила | Альбомы | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
Патчи на рассмотрении Рассматриваемые к принятию патчи |
|
Опции темы | Поиск в этой теме | Опции просмотра |
23.04.2012, 19:47 | #1 |
Ученый
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
|
To remove from threat at height 15 yards
Если над заагренным мобом подняться на высоту примерно в 15 ярдов, то агро должно сбрасыватся.
Код:
diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp index 8384823..0cc0ee7 100644 --- a/src/game/Creature.cpp +++ b/src/game/Creature.cpp @@ -1886,11 +1886,15 @@ bool Creature::IsOutOfThreatArea(Unit* pVictim) const if(sMapStore.LookupEntry(GetMapId())->IsDungeon()) return false; + float heightOverCreature = pVictim->GetTerrain()->GetHeight(pVictim->GetPositionX(), pVictim->GetPositionY(), pVictim->GetPositionZ()); + if (pVictim->GetPositionZ() > heightOverCreature + 15.0f) + return true; + float AttackDist = GetAttackDistance(pVictim); float ThreatRadius = sWorld.getConfig(CONFIG_FLOAT_THREAT_RADIUS); //Use AttackDistance in distance check if threat radius is lower. This prevents creature bounce in and out of combat every update tick. - return !pVictim->IsWithinDist3d(m_combatStartX, m_combatStartY, m_combatStartZ, + return !pVictim->IsWithinDist2d(m_combatStartX, m_combatStartY, ThreatRadius > AttackDist ? ThreatRadius : AttackDist); } |
24.04.2012, 11:17 | #3 |
Ученый
Регистрация: 10.03.2010
Адрес: Бобруйск
Сообщений: 284
Сказал(а) спасибо: 213
Поблагодарили 98 раз(а) в 84 сообщениях
|
Проверил получше, для мобов милишников агро сбрасывается, если подняться чуть больше на высоту 5.0 , тоесть расстояние мили атаки. А вот если заагрить моба-кастера, то тот будет кастовать магией на доступное расстояние этой магии, а если у него заканчивается магия то он стоит и ждет пока не отрегенится нужное количество манны, что бы скастовать заклинание.
|
24.04.2012, 12:40 | #4 |
Почетный флудер
Старожил
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
|
ну вот мы и добрались на разделение типов AI на кастеров и милишников и расчета радиусов доступности... я это реализовал пока только в экспериментальной версии PetAI - альфа тестится второй месяц. мангостиму лучше мозги такими вещами не парить, у них даже style fix пока получаются криво
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[11023] Implement support for threat multiplier and AP based threat bonus for spells. | newsbot | CMaNGOS Commits | 0 | 17.01.2011 14:21 |
[11008] Fix wrong threat assignment in threatAssist(). | newsbot | CMaNGOS Commits | 0 | 14.01.2011 21:50 |
[10564] Not allow charmed by player creatures have threat list. | newsbot | CMaNGOS Commits | 0 | 30.09.2010 21:40 |
[10439] Increase search distance at height search if we know expected limit. | newsbot | CMaNGOS Commits | 0 | 04.09.2010 05:42 |
[10438] Fix GetHeight() to return height within actual search distance only. | newsbot | CMaNGOS Commits | 0 | 03.09.2010 14:10 |