28

» WarCraft 3 / Бойся зомбей, по коридорам идущих...

Чтобы выгнать их оттуда достаточно было бы таймера с перебором юнитов в регионах, если там есть зомби, но нет людей, то отправить зомби к потоку других зомбей)
28

» WarCraft 3 / Переменный юнит и предмет выпадающий с него

ofeerist, лел, юнита перед смертью тоже нужно запеременить и обнулить, шоб утечек не было))
28

» WarCraft 3 / Как настроить такой триггер?

Так проверь просто юнитов в радиусе срабатывания мины, мертвых и живых. Если их нет, значит тревога ложная
28

» WarCraft 3 / Переменный юнит и предмет выпадающий с него

только позицию юнита желательно запеременить и обнулить, чтобы утечек не было
28

» WarCraft 3 / Как создать способность

quq_CCCP, разве юнитов в паузе можно продамажить и вообще как-либо с ними взаимодействовать? + вроде таймеры баффов/дебаффов тоже паузятся вместе с юнитом. Если пауза на это не влияет, то зачем я морфил юнитов, станил их, отбирал абилку атаки ._.
28

» WarCraft 3 / Добавление и удаление предметов из списка

Извиняюсь за некромантию, но мне сказали тут построить зиккурат
Смотрю никто так и не ответил на вопрос, хотя решение вроде бы простое
Вариантов много, но я решил через хэш-таблицу и сохранением предметов в юнита
код
define{void = nothing; int = integer; bool = boolean}
library mylib initializer init{
    private hashtable H = InitHashtable()
    
    private void act(){
        unit u = GetSellingUnit()
        int i = GetHandleId(u), c = 0, c1, c2 = 0
        
        if !HaveSavedInteger(H,i,c){
            BJDebugMsg("закончились итемы")
        }else{
            while HaveSavedInteger(H,i,c){c++; BJDebugMsg(I2S(c))}
            c--; c1 = c; c = GetRandomInt(0,c)
            AddItemToStock(u,LoadInteger(H,i,c),1,1)
            RemoveSavedInteger(H,i,c)
            if c != c1{
                SaveInteger(H,i,c,LoadInteger(H,i,c1))
                RemoveSavedInteger(H,i,c1)
            }
        }
        
        u = null
    }
    
    private void save(){
        int i = GetHandleId(GetEnumUnit())
        SaveInteger(H,i,0,'spsh')
        SaveInteger(H,i,1,'pmna')
        SaveInteger(H,i,2,'penr')
        SaveInteger(H,i,3,'ward')
        SaveInteger(H,i,4,'ratc')
    }
    private bool cond(){return GetItemTypeId(GetSoldItem()) == 'I000'}
    private bool cond1(){return !IsUnitType(GetFilterUnit(),UNIT_TYPE_DEAD) && GetUnitTypeId(GetFilterUnit()) == 'ngme'}
    private void init(){
        trigger t = CreateTrigger(); int i = 0; group g = CreateGroup()
        
        while i < 16{
            TriggerRegisterPlayerUnitEvent(t,Player(i++),EVENT_PLAYER_UNIT_SELL_ITEM,null)
        }
        TriggerAddCondition(t,Condition(function cond))
        TriggerAddAction(t,function act)
        t = null
        
        GroupEnumUnitsInRect(g,bj_mapInitialPlayableArea,Condition(function cond1))
        ForGroup(g,function save)
        GroupClear(g); DestroyGroup(g); g = null
        
        SetPlayerState(Player(0),PLAYER_STATE_RESOURCE_GOLD,99999)
        
    }
}
В чём суть: если у юнита нет сохраннёного айди итема в первой ячейке, значит все рандомные предметы уже выпали, выскакивает надпись, что они закончились
иначе - идёт подсчёт кол-ва оставшихся предметов, среди них выбирается рандомный, он добавляется в магазин и удаляется из хэша юнита, последний из списка предмет переносится на место удалённого, последнее место так же удаляется

это можно на гуи сделать, но я никогда не юзал там хэш-таблицу, так что сорян))
Загруженные файлы
28

» WarCraft 3 / Не отображаются модели

easypeasy, я понимаю, нет, это не у всех так)
Наверное варик просто прикалывается
28

» WarCraft 3 / Не отображаются модели

Ты ж кодер вроде (?), сохранять по любому нужно
Можно попробовать переимпортировать все модели заново

Хотя ладно, не вариант, насколько я помню у тебя там миллион импорта
28

» WarCraft 3 / Автокаст прожимных навыков

Я пробовал уже сделать автокаст для канала, но вышло очень мягко говоря хреново. Надо выбирать юнитов, которые могут кастануть абилку, а потом надо сделать проверку на наличие рядом вражеских живых юнитов, а потом нужно самого раненного/ближнего юнита выбрать, и потом уже кастануть на него абилку
28

» WarCraft 3 / Извинити последний раз

Fly123, он и не закрыл большинство предыдущих на которые был дан ответ)

Бтв, случайно нашел откуда он карту скачал)

ах, да, раз уж ты начинающий, то попробуй хотя бы пару гайдов на Ютубе по редактору посмотреть, сам начинал с этого. А когда насмотришься, можешь почитать статьи на хгм
28

» WarCraft 3 / Ресурсы карт

Дмитрий Ларионов, а я и не отвечал на саму проблему)
я лишь предложил упрощение жизни
Сижу в редакторе рефоржа, поэтому всё на англ - а это всё сильно усложняет
28

» WarCraft 3 / Извинити последний раз

На какую карту? Ты одну скинул


Надеюсь это видео поможет тебе с импортом чего-либо
Загруженные файлы
28

» WarCraft 3 / Проблема с озвучкой

Anariys3333, я не проверял, но возможно через прописывание пути к стандартному звуку тоже можно его заменить
28

» WarCraft 3 / Проблема с озвучкой

А менял как? Через обычную замену в редакторе звука такого быть не должно
28

» WarCraft 3 / Проблема с озвучкой персонажа

Anariys3333, эм.. раскрой кат в моём вопросе, там настройки, которые я применял для звука