1

» WarCraft 3 / Как проверить ... область на живых юнитов ?

Тебе необходимо узнать кол-во живых юнитов определенного игрока в области?
Нужна переменная типа int. Пусть ее название Count.
Группа - выбрать всех юнитов в области и:
ЕСЛИ (Здоровье (выбранного юнита) > 0.405) && (Владелец юнита (выбранный юнит) == *Нужный игрок*){
Count = Count + 1
}
Если я правильно понял вопрос, то делай так. В конце переменная Count будет == Кол-ву живых юнитов в нужной области.
А Jass все-таки нужно учить. Он намного проще и удобнее гуи
1

» WarCraft 3 / Ограничение действий в циклах

PhysCraft:
while (condition) { открывающая скобка, все равно, что просто "loop"
} закрывающая скобка, все равно, что "endloop"
Ты противоречишь сам себе, у тебя там
loop{
exitwhen i == 10
set tr = NewTrackable(x,y,Player(i),i2,color)
i=i+1
}
а не
while ( i <= 10 )
{
set tr = NewTrackable(x,y,Player(i),i2,color)
i=i+1
}

Если это тоже неверно, тогда извини за поднятий шум.
Простите, не описал(
Я про циклы которые внизу функции main
prog:
Существует лимит то ли на кол-во операций, то ли на время выполнения, то ли и на то и на другое. При превышении лимита поток молча рубится.
В качестве шаманства: попробуй завернуть каждый цикл в отдельную функцию. Врядли это поможет само по себе, но зато потом проще будет переходить к следующему шагу - разнесению на отдельные потоки.
То есть все-таки ограничение есть?
Может, наговнокодить и поставить несколько циклов (while i!=5, while i!=10) и т. д. ? Это намного увеличит код, но, думаю, работать будет
1

» WarCraft 3 / Ограничение действий в циклах

Я думаю, ты просто не написал endloop.
Нужно писать:
loop
exitwhen (condition)
{commands}
endloop.
Но, возможно, у тебя там CJASS и я ошибаюсь.
Это cJass, все верно:
while (condition) { открывающая скобка, все равно, что просто "loop"
} закрывающая скобка, все равно, что "endloop"