30

» WarCraft 3 / UjAPI + lua: Настройка

Кау использовать конвертор xgm.guru/p/wc3/237543
Спс, добавил в статью.
А тфу, это тулза. Она без изъянов работает?
Одиночные либы норм конвертит, с зависимостями могут быть проблемы. Гуи конверт вообще идеально.
30

» WarCraft 3 / Проблема в триггерах

Заводишь группу игроков. После поражения игрока добавляешь его в группу. Потом считаешь игроков в группе. Если их три, то отображаешь победу.
30

» WarCraft 3 / Проблема в триггерах

Предупреждение автору публикации

замечание: 10.4 Создание ресурса, название которого не отражает суть вопроса.
30

» WarCraft 3 / [lua]Не получается запустить редактор и игру,Lua+VScode|cheapack

Остался один вопросик, у меня почему то карта сразу не запускается с пустым кодом?
Потому что, в том же репозитории это описано.
Проблема в том, что сложно отличить пользовательский код от сгенерированного редактором и удалить его, а так же поместить его в то же место, куда помещает его редактор. Поэтому было найдено простое решение - пометить место вставки Custom code, чтоб не заниматься семантическим анализом. Что позволило значительно ускорить запуск и работу сборщика, но потребовало один раз сохранить карту в редакторе после сборки. Это маленькое неудобство позволило сэкономить огромное количество времени.
Загруженные файлы
30

» WarCraft 3 / Warcraft III: Reforged PTR – Версия 1.35

Запрещена загрузка пользовательских кампаний, названных так же, как официальные кампании, чтобы предотвратить блокировку сохранения.
Тоесть пользовательские сохранения можно перетирать?
30

» WarCraft 3 / [lua]Не получается запустить редактор и игру,Lua+VScode|cheapack

Папка src должна быть не в карте, а в той же папке. Зачем импортировать в карту скрипты, которые нужны только для сборки?
Загруженные файлы
30

» WarCraft 3 / Где в Warcraft 3 Reforged запустить доп. кампании?

Предупреждение автору публикации

замечание: 10.4 Создание ресурса, название которого не отражает суть вопроса.
30

» WarCraft 3 / Как запретить юниту/герою брать определённый предмет?

Или подменять предмет в инвентаре на пустышку с надписью Не даёт эффекта или просто выбрасывать на землю.
30

» WarCraft 3 / Как сменить вид прицела на скилле?

Наверное любой скилл с радиусом, как огненный столб
Как уже писалось выше, круг прицела зависит от поля Раса у юнита.
Стандартным заклинаниям добавить/убрать круг прицеливания невозможно штатными средствами.
При использовании Канал для триггерных заклинаний, круг прицелвания можно настроить соответствующей галкой.
30

» WarCraft 3 / Культисты 3.5 | Многопользовательская детектив-игра в Warcraft 3

Ибо, мне тестить её не с кем, а в одиночку нельзя нормально проверить её. Ибо игра - кооперативная.
MultiWindow в помощь.
30

» В гостях у Эльрата / Новогодние карикатуры

Новогодняя карикатура точно поможет сделать сайт лучше ;)
Карикатура врятли, а новогодняя аватарка может придать праздничного настроения.
30

» WarCraft 3 / Связанные юниты

native UnitAlive takes unit u returns boolean

//! zinc
    library DeathTie {
        hashtable HT = InitHashtable();
        key K;
        
        function onInit() {
            integer i;
            trigger ts = CreateTrigger();
            trigger td = CreateTrigger();
            player p;
    
            for (0 <= i < bj_MAX_PLAYER_SLOTS) {
                p = Player(i);
                TriggerRegisterPlayerUnitEvent(ts, p, EVENT_PLAYER_UNIT_SPELL_EFFECT, null);
                TriggerRegisterPlayerUnitEvent(td, p, EVENT_PLAYER_UNIT_DEATH, null);
            }

            // spell
            TriggerAddCondition(ts, Filter(function() -> boolean {
                return GetSpellAbilityId() == 'Ainf';
            }));

            TriggerAddAction(ts, function() {
                unit caster = GetTriggerUnit();
                unit target = GetSpellTargetUnit();
                integer cid = GetHandleId(caster);
                integer tid = GetHandleId(target);
                SaveUnitHandle(HT, cid, K, tid);
                SaveUnitHandle(HT, tid, K, cid);
                caster = null;
                target = null;
            });

            // die
            TriggerAddAction(td, function() {
                unit u = GetTriggerUnit();
                integer uid = GetHandleId(u);
                unit t;
                
                if (HaveSavedHandle(HT, uid, K)) {
                    t = LoadUnitHandle(HT, uid, K);
                    if (UnitAlive(t)) {
                        KillUnit(t);
                    }
                }

                u = null;
                t = null;

            });

            // leaks
            ts = null;
            td = null;
        }

    }

//! endzinc
30

» Diablo / Анонс даты релиза Diablo IV

Выглядит круто, надеюсь там хоть не будет конченной монетизации😂
Do you guys not have phones?
30

» Diablo / Анонс даты релиза Diablo IV

Новый ролик обнородовал таки дату релизу.
Нород будет доволен.
30

» WarCraft 3 / Загрузочный экран FullHD (Ремейк by PAMEXI)

Автор потрудился над статьей, все прекрасно понятно и работает, единственное что стоит упомянуть - есть сайты которые автоматически обрезают изображение на N частей =)
Его самому несложно соорудить с нужной разметкой под разные версии. Можно бонусом туда всяких рамок накидать, чтоб выглядел как дефолтный экран близзард.
30

» WarCraft 3 / Как сменить вид прицела на скилле?

Предупреждение автору публикации

замечание: 10.4 Создание ресурса, название которого не отражает суть вопроса.
30

» WarCraft 3 / Связанные юниты

Если больше юнитов допустим, трое связанных, то работать с параметром *set custom value*)
CustomValue лучше не использовать. Уж очень многие системы пытаются в него писать. Коль уже используется ХТ, то лучше на хэндл юнита дополнительно integer сохранить. Разница в одну строчку, зато точно ничего не сломается.
set bj_forLoopAIndex=1
Зачем юзать глобалку? integer i = 1 ничем не хуже.