Добавлен
В коде с BJ функцией:
    local unit u
    call CreateNUnitsAtLoc( 1, 'hfoo', GetTriggerPlayer(), location, bj_UNIT_FACING )
    set u = bj_lastCreatedUnit
    call PolledWait ( 3 )
    call RemoveUnit( u )
В переменную записывается последний созданный юнит.
Если же юнита создать функцией Native:
    local unit u
    call CreateUnitAtLoc (GetTriggerPlayer(), 'hfoo', location, bj_UNIT_FACING)
    set u = bj_lastCreatedUnit
    call PolledWait ( 3 )
    call RemoveUnit( u )
В переменную нифига ничего не записывается, не могу понять почему. Не хочу использовать BJ функции, чтобы не засорять память варика и не давать ему повода для ошибок и вылета.

Это какие-то извращения у вас там.
Bj можно раскрыть и увидеть, что там происходит присваивание нового юнита глобалке bj_lastCreatedUnit.
Нужно сразу присваивать локалке нового юнита и не использовать эти ваши bj_lastCreatedUnit:
local unit u
u = CreateUnitAtLoc (GetTriggerPlayer(), 'hfoo', location, bj_UNIT_FACING)
`
ОЖИДАНИЕ РЕКЛАМЫ...
17
unit u = CreateUnit(Player(0),'e000',x,y,facing)
Polledwait(3.00)
RemoveUnit(u)
u=null -поидеи это можно не писать так как сам редактор обычно их обнуляет(если у тя редактор от сюда скачан)
Player(0)-для какого игрока
'e000'-ид юнита
x,y - координаты де появиться
facing - куда смотреть будет
26
Это какие-то извращения у вас там.
Bj можно раскрыть и увидеть, что там происходит присваивание нового юнита глобалке bj_lastCreatedUnit.
Нужно сразу присваивать локалке нового юнита и не использовать эти ваши bj_lastCreatedUnit:
local unit u
u = CreateUnitAtLoc (GetTriggerPlayer(), 'hfoo', location, bj_UNIT_FACING)
Принятый ответ
32
Есть мнение что ApplyUnitTimedLife( u, 'BTLF', 3.00 ) будет смотреться изящнее PolledWait.
Темболее причем тут нативки, у вас онли BJ функции, CreateNUnitAtLoc, PolledWait это все бж функции, а еще вейты зло, в них нельзя обойтись только при синках или роликах, в остальных местах лучше без них.
Да и вовсе накой черт создавать локальную переменную если собрались сделать с юнитом все действия сразу?
	set bj_lastCreatedUnit = CreateUnit( Player, 'UNIT ID', x,y, facing )
	call UnitApplyTimedLife( bj_lastCreatedUnit, 'BTLF, 3.00 )
	// далее действия вроде вручить спелл или приказать идти куда либо.
28
автор пытается заметить бж на нативки не зная при этом ни бж ни нативок
могу лишь посоветовать поставить джнгп или почитать j файлы
и да
точки лучше не юзать ибо утечка
используй координаты
11
Uber, спасибо большое. А то я искал, а так и не нашел. А сам бы не догадался)
Чтобы оставить комментарий, пожалуйста, войдите на сайт.