Добавлен
эта функция как работает что она делает можете объяснить

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

Это переменная которая используется для добавления в вгруппу юнитов заданного типа.
раскрыть
function GetUnitsOfTypeIdAllFilter takes nothing returns boolean
    return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId
endfunction

function GetUnitsOfTypeIdAll takes integer unitid returns group
    local group   result = CreateGroup()
    local group   g      = CreateGroup()
    local integer index

    set index = 0
    loop
        set bj_groupEnumTypeId = unitid
        call GroupClear(g)
        call GroupEnumUnitsOfPlayer(g, Player(index), filterGetUnitsOfTypeIdAll)
        call GroupAddGroup(g, result)

        set index = index + 1
        exitwhen index == bj_MAX_PLAYER_SLOTS
    endloop
    call DestroyGroup(g)

    return result
endfunction

function GetUnitsOfPlayerAndTypeIdFilter takes nothing returns boolean
    return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId
endfunction

function GetUnitsOfPlayerAndTypeId takes player whichPlayer, integer unitid returns group
    local group g = CreateGroup()
    set bj_groupEnumTypeId = unitid
    call GroupEnumUnitsOfPlayer(g, whichPlayer, filterGetUnitsOfPlayerAndTypeId)
    return g
endfunction

function InitBlizzardGlobals takes nothing returns nothing
    // ...
    set filterGetUnitsOfTypeIdAll = Filter(function GetUnitsOfTypeIdAllFilter)
    set filterGetUnitsOfPlayerAndTypeId = Filter(function GetUnitsOfPlayerAndTypeIdFilter)
    // ...
endfunction
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
26
5 лет назад
0
MATRITSA, она нужна банально для передачи типа юнита в соседнюю функцию, так как вызовы коллбеков не поддерживают передачу аргументов. Вот и все.
0
28
5 лет назад
0
а где добавление
GroupEnumUnits.*() добавляют всех юнитов, что прошли фильтр, в указанную группу.
0
32
5 лет назад
0
Hanabishi, точнее сказать близзарды это не реализовали, на уровне виртуальной jasm машины это возможно.
0
14
5 лет назад
0
Я задал вопрос в надежде какого то озарение Уже так было я задавал вопрос об одном а получил совсем другое
0
27
5 лет назад
0
MATRITSA, Если твоих знаний недостаточно, чтобы понять ответы, значит ты ещё не готов к нему. Изучай jass.
0
32
5 лет назад
0
Я задал вопрос в надежде какого то озарение Уже так было я задавал вопрос об одном а получил совсем другое
здесь 3 правильных ответа на твой вопрос, сказанных немножко в разной интерпретации, а ты ещё не доволен
0
14
5 лет назад
Отредактирован Феникс
0
function GetUnitsOfPlayerAndTypeId takes player whichPlayer, integer unitid returns group
local group g = CreateGroup() локалка
set bj_groupEnumTypeId = unitid установка типа юнита
call GroupEnumUnitsOfPlayer(g, whichPlayer, filterGetUnitsOfPlayerAndTypeId) выбор всех юнитов у играка
    return g
endfunction
вот какой ответ я хотел увидеть 
set bj_groupEnumTypeId = unitid взоимодейсвует с filterGetUnitsOfPlayerAndTypeId 
set bj_groupEnumTypeId эта integet туда записоваеца тип юнита 
 
filterGetUnitsOfPlayerAndTypeId  эта волшебная каманда которое принимает входные пораметры от bj_groupEnumTypeId  если написать любую другую переменую с типом integet ана её не примет
0
27
5 лет назад
Отредактирован Феникс
0
MATRITSA, Настоятельное рекомендую, почитайте правила
0
28
5 лет назад
0
MATRITSA, я тебе кинул весь код, ты его точно весь глянул?
0
14
5 лет назад
Отредактирован MATRITSA
0
да веси я его и раниче видел не первый раз это сматрю
Создание вопроса, ответ на который есть в базе статей. простите но
этот пункт зависит от ума человека
0
28
5 лет назад
0
MATRITSA, filterGetUnitsOfPlayerAndTypeId не волшебная команда, а назначается при вызове карты, я указал где это происходит.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.