28

» WarCraft 3 / Пассивка

Через рандомное число и если тогда иначе

я не знаю о чём твоя карта но если есть возможность обойтись без рандома то лучше не юзать его, псевдо-рандом или перезарядка или каждые n колво убийств повышать это другое дело
28

» WarCraft 3 / Создание пассивки

либо морф, либо анимки, либо мемхак, возможно на рефе есть функции, с последним подсказать не могу
28

» WarCraft 3 / Как правильно триггерить channeling способности?

Принятый ответ
А прекратил каст срабатывает во всех случаях? Типа поймал стан, нажал стоп или приказ идти?
без понятия, ты можешь проверить это самостоятельно
Chosen2:
То есть можно каждые 1с проверять какой приказ выполняет юнит?
какую хочешь периодичность такую и ставь, когда юнит кастует абилку её приказ будет в соответствии с приказом из ро (кэп)
28

» WarCraft 3 / Как правильно триггерить channeling способности?

ну либо через таймер смотри приказ у героя либо через события отлавливай начал/прекратил каст
28

» WarCraft 3 / [Конкурс становления героев] Crusader

MrHug, увы, я не пытался адаптировать под версии выше 1.26, да и в любом случае настолько глобальное обновление готовим, что багов там ещё ойойой обнаружится, но примем к сведению, установлю 1.27 и посмотрю что там с фонтаном накосячено, попробуем исправить, спасибо)
и приношу извинения что испортил впечатления, кодер из меня мягко говоря ужасный

в версии, что сейчас тут лежит, оно вообще насколько я помню нормально не отображает наполнение фонтана заново водичкой
28

» WarCraft 3 / Уменьшение здания?

Принятый ответ
Roman095UA, тебе ж сказали, карту путей поменяй, открой ро хотя бы посмотри какие строчки есть у юнита
Загруженные файлы
28

» WarCraft 3 / Уменьшение здания?

текстуру пути нужно изменить

чтобы посмотреть текстуры пути нужно перейти в вид -> пути: суша
28

» Администрация XGM / Фильтр ресурсов

Ruti Ragnason, ну оно и останется открытым, просто среди ненужного хлама будет легче найти полезное для себя
28

» WarCraft 3 / Сила Страха "скилы под ключ"

call GroupAddGroup(g, gtemp )
--->
set bj_groupAddGroupDest = gtemp
call ForGroup(g, function GroupAddGroupEnum)

if IsUnitGroupEmptyBJ(g) then
--->
if FirstOfGroup( g ) == null then
а так же закидывание в переменную владельца кастера и использование этой переменной в цикле:
if IsPlayerEnemy(GetOwningPlayer(un), GetOwningPlayer(GT)) and GetUnitAbilityLevel(un, TPOFBaff) > 0 then
--->
set bj_groupEnumOwningPlayer = GetOwningPlayer(GT)
...
if IsPlayerEnemy(GetOwningPlayer(un), bj_groupEnumOwningPlayer) and GetUnitAbilityLevel(un, TPOFBaff) > 0 then
да и вообще заменить IsPlayerEnemy на
constant native IsUnitEnemy takes unit whichUnit, player whichPlayer returns boolean
чтобы не вызывать лишний раз владельца юнита
28

» WarCraft 3 / Сила Страха "скилы под ключ"

XmegatronX, ну это не отменяет факта, что юнитом всё ещё можно управлять под действием фира, исходя из того, что в скилл было добавлено снятие выделения владельца с цели, могу предположить, что оно создавалось не только для одиночных кампаний и против ии, но даже если взглянуть на код можно найти предложения по улучшению, но это только если тебе интересно ¯\_(ツ)_/¯
28

» WarCraft 3 / не могу добавить текстуры земли в Jass New Gen Pack Rebuild Comp

Принятый ответ
ну нинаю тогда, может путь к карте имеет кириллицу?

только что проверил с кириллицей, снова нельзя открыть, переименовал на латиницу и норм

если не поможет, попробуй на новой карте повторить это, может даже переустановить редактор, тоже чтоб не было кириллицы в пути
28

» WarCraft 3 / не могу добавить текстуры земли в Jass New Gen Pack Rebuild Comp

тоже только что столкнулся с этой проблемой, достаточно просто сохранить карту и снова нажать Edit Tileset
28

» WarCraft 3 / Сила Страха "скилы под ключ"

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

сама очистка выбора не очень хороший ход, могу предложить морф в стража либо мемхак
Загруженные файлы
28

» WarCraft 3 / Функция возвращает 0?

Принятый ответ
в кат убери этот код, пол страницы забрал)
ты понимаешь вообще для чего константа? ты по коду никак не сможешь её изменить, только при объявлении задать значение, и всё
повторюсь, убери нафиг константу, при выборе героя из таверны задай нужное значение этой переменной
вот такая формулировка:
globals
	unit u
	private constant integer r = GetHeroInt( u )
endglobals

function dfgdfg takes nothing returns nothing
	set u = CreateUnit( )
endfunction
вообще невозможна, переменная не возьмёт сама по себе значение героя когда он появится, ты ей задаёшь значение только при объявлении, а при объявлении этого героя нет
вот это
globals
	unit u = CreateUnit( )
	private constant integer r = GetHeroInt( u )
endglobals
тоже невозможно, потому что юнита таким образом создать нельзя, можешь сам проверить
поэтому возвращаемся к первому комменту
library mylib initializer init
globals
    unit u
    private real r
endglobals

private function init takes nothing returns nothing
    set u = CreateUnit( ... )
    set r = GetHeroInt( u, true )
endfunction
endlibrary
28

» WarCraft 3 / Локалки в циклах

Принятый ответ
Anonim2843, так понятное дело, посмотри как в коде оно выглядит, локалки находятся в одной функции, а юзаешь ты их в другой


объявляй локалки в цикле отряда либо юзай глобалки
28

» WarCraft 3 / Функция возвращает 0?

я же тебе уже отвечал по этому поводу

убираешь нафиг константу и делаешь следующее
library mylib initializer init
globals
    unit u
    private real r
endglobals

private function init takes nothing returns nothing
    set u = CreateUnit( ... )
    set r = 200.00 + GetHeroInt( u, true )
endfunction

endlibrary

сама функция вернёт 0 в нескольких случаях, если юнита нет, если юнит не герой и если у юнита стат нулевой
28

» WarCraft 3 / Локалки в циклах

подозреваю у автора что-то вроде этого:
    local integer i
    
    loop
        exitwhen i > 10
        set i = i + 1
    endloop
если что, переменной нужно задавать какое-то начальное значение, чтобы потом как-то оперировать с ним

т.е. перед циклом тыкнуть set i = 0
28

» WarCraft 3 / Jass MythBusters

PT153, ну ссылка локальной же не обнуляется, утекает значит