Апд. Ну и просто советы по улучшению кода принимаются, да. Если вдруг кто захочет...
Все BJ функции на нативки замени. Некоторые просто превращаются в нативки удалением постфикса BJ.
Все локалки, что наследуются от handle, нужно обнулять в конце функции.
После окончания действия таймер нужно удалить, а хеш почистить.
Вот это зря, у меня тоже так проблемы "сами" решались, а потом вновь появлялись, потому что так и не разобрался, в чём же дело.
У нейтрально-враждебного свой ИИ, он может прерывать приказы и делать прочую дичь, потому его вообще лучше не трогать.
Я вел речь про игрока, который вообще не обозначен (стоит None в настройках игроков), ему тоже нужен обзор, и я уверен, что дело в этом, потому что вряд ли у кого-то будет союз на Shared Vision с ним. Сделай ему во время инициализации модификатор видимости.
call FogModifierStart(CreateFogModifierRect(MyPlayer, FOG_OF_WAR_VISIBLE, GetWorldBounds(), false, true))
// Вместо GetWorldBounds() можно использовать bj_mapInitialPlayableArea.
Он не всегда необходим, ибо не каждый юнит, что у появляется на карте, должен быть проиндексирован, к тому же порой можно допустить повторение индексов.
Вот у меня на башни и миньоны разные структуры, то есть индексы повторяются. А некоторые юниты привязываются уже к ним (даммики, например), то есть они не индексируются.
Indexer больше подходит для новичков или не сильно продвинутых людей.
Ещё такая мистика была: у меня иногда юниты переставали кастовать способности, но иногда кастовали, что вообще сбивало с толку. Дело было опять-таки в кланах, когда я убирал Shared Vision или перемещал в другой клан, обзора у юнитов не было, потому и кастовать не могли, а иногда кастовали, только потому что при атаке область вокруг атакующего подсвечивается в определённом радиусе. PT153:
обзор ещё раз
Важный момент: обзор вокруг цели, а не вокруг даммика.
Проверь кд способности, дальность, ману, время каста и отхода у даммика, обзор ещё раз. Игрок, которым вообще не управляют (то есть его даже не обозначили) тем более должен делать дамми касты.
Ещё проверь доступность способности этим игрокам.
Есть проблема с LoadCode, потому что сохранение идёт через "code" + s, а загрузка через s. Я думаю, что нужно либо убрать вообще конкатенацию с "code", или добавить ей в LoadCode, а в RunCode её убрать.
1. Поставь отрицательный реген у маны. Если напрямую не получается, то выдели поле с регнерацией маны в Редакторе объектов и нажми Shift+Enter.
2. Нужен такой триггер.
Событие: Мана юнита ТвойЮнит становится Равно 0.
Действия: Убить юнита ТвойЮнит.
За идею даммика с аттачем спасибо. Но эта модель всё равно не воспроизводит эффекты способностей.
Сделал простую модель для даммика, можно выделять, а также все эффекты способностей будут отображаться на нём.
Есть аттач Origin Ref и анимация Stand. Больше ничего.
Переделай на это. Возможно, обёртка в //! nocjass не потребуется.
//! nocjass
key CodeParentKey
//! endnocjass
Есть проблема с LoadCode, потому что сохранение идёт через "code" + s, а загрузка через s. Я думаю, что нужно либо убрать вообще конкатенацию с "code", или добавить ей в LoadCode, а в RunCode её убрать.
Это для удаления временных групп с использованием функций как.
function IsUnitGroupDeadBJ takes group g returns boolean
function IsUnitGroupEmptyBJ takes group g returns boolean
function ForGroupBJ takes group whichGroup, code callback returns nothing
function GroupAddGroup takes group sourceGroup, group destGroup returns nothing
function GroupRemoveGroup takes group sourceGroup, group destGroup returns nothing
function GroupPickRandomUnit takes group whichGroup returns unit
function CountUnitsInGroup takes group g returns integer
Ред. PT153
» WarCraft 3 / Не могу найти не удалённый эффект
Все локалки, что наследуются от handle, нужно обнулять в конце функции.
После окончания действия таймер нужно удалить, а хеш почистить.
» WarCraft 3 / Как сделать, чтобы невидимость по ночам работала и днём
Ред. PT153
» WarCraft 3 / Не работает даммикаст от лица врага
Bergi_Bear:
Ред. PT153
» WarCraft 3 / Обратная функция к GetHandleId()
Вот у меня на башни и миньоны разные структуры, то есть индексы повторяются. А некоторые юниты привязываются уже к ним (даммики, например), то есть они не индексируются.
Indexer больше подходит для новичков или не сильно продвинутых людей.
» WarCraft 3 / Не работает даммикаст от лица врага
Ещё такая мистика была: у меня иногда юниты переставали кастовать способности, но иногда кастовали, что вообще сбивало с толку. Дело было опять-таки в кланах, когда я убирал Shared Vision или перемещал в другой клан, обзора у юнитов не было, потому и кастовать не могли, а иногда кастовали, только потому что при атаке область вокруг атакующего подсвечивается в определённом радиусе.
PT153:
Ред. PT153
» WarCraft 3 / Не работает даммикаст от лица врага
Ещё проверь доступность способности этим игрокам.
» WarCraft 3 / Работа War3MapOptimizer
» WarCraft 3 / Библиотека Code
PT153:
» WarCraft 3 / Не работает даммикаст от лица врага
» WarCraft 3 / Два вопроса. Как сделать так, чтобы мана тратилась ежесекундно и
» WarCraft 3 / Как сделать так, чтобы в карте выигрывал тот игрок, у кого
Ред. PT153
» WarCraft 3 / Два вопроса. Как сделать так, чтобы мана тратилась ежесекундно и
2. Нужен такой триггер.
» WarCraft 3 / На основе какого юнита, лучше всего делать даммика ?
Есть аттач Origin Ref и анимация Stand. Больше ничего.
» WarCraft 3 / На основе какого юнита, лучше всего делать даммика ?
» XGM Конкурсы / Warcraft III Mini-Game Contest-2018
» WarCraft 3 / Проблема с объявлением глобальных переменных
8gabriel8:
» WarCraft 3 / Вопрос по устройству мемхака
Ред. PT153
» WarCraft 3 / Библиотека Code
» WarCraft 3 / Сокрытие эффекта способности "восстановить ману и здоровье"
ArchOracle:
» WarCraft 3 / Интерфейс в 1.28+
» WarCraft 3 / Не работает даммикаст от лица врага
Ред. PT153
» WarCraft 3 / Не работает даммикаст от лица врага
» WarCraft 3 / На основе какого юнита, лучше всего делать даммика ?
» WarCraft 3 / Герои, выбранные с помощью окна
» WarCraft 3 / Герои, выбранные с помощью окна