Как сделать игрока без стартовой позиции? Мне нужен игрок, у которого только несколько юнитов, без зданий и чтобы за его уничтожение засчитывались победа. Также необходимо, чтобы в союзе с этим игроком были все крипы на карте.
Как это сделать?

Принятый ответ

Как сделать игрока без стартовой позиции?
Никак, стартовая позиция - это то где будет камера игрока в начале игры
и чтобы за его уничтожение засчитывались победа
globals
    integer i = 0
endglobals

function filter takes nothing returns boolean
    if not (GetWidgetLife(GetFilterUnit()) < 0.405 or IsUnitType(GetFilterUnit(), UNIT_TYPE_DEAD)) then
        set i = i + 1
    endif
    return false
endfunction

i = 0
GroupEnumUnitsOfPlayer(g, p, function filter)
if i == 0 then
    //Поражение игроку
endif
Также необходимо, чтобы в союзе с этим игроком были все крипы на карте.
альянс игрока с нейтрально враждебным
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
23
6 лет назад
0
Выбрать в группу всех юнитов на карте этого игрока и прибавить к переменной типа i + 1 за каждого, а при смерти соответственно делать -1. Если i = 0, значит юнитов нет и он проиграл
0
18
6 лет назад
0
Как сделать игрока без стартовой позиции?
Никак, стартовая позиция - это то где будет камера игрока в начале игры
и чтобы за его уничтожение засчитывались победа
globals
    integer i = 0
endglobals

function filter takes nothing returns boolean
    if not (GetWidgetLife(GetFilterUnit()) < 0.405 or IsUnitType(GetFilterUnit(), UNIT_TYPE_DEAD)) then
        set i = i + 1
    endif
    return false
endfunction

i = 0
GroupEnumUnitsOfPlayer(g, p, function filter)
if i == 0 then
    //Поражение игроку
endif
Также необходимо, чтобы в союзе с этим игроком были все крипы на карте.
альянс игрока с нейтрально враждебным
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.