Насколько это хорошо я сделал оптимизацию? Я читаю все комментарии и советы, но не все понимаю (тупой типа). Я все равно хочу оставить создание именно ГРУППЫ юнитов, что бы они шли как отряд в обычной стратегии (строем).
Группы обнуляю и удаляю, локейнш тоже удаляю.
Группы обнуляю и удаляю, локейнш тоже удаляю.
function Trig_CreepsCenter1_Actions takes nothing returns nothing
local group deter1
local group insp1
local group absorb1
local group destr1
local location detloc1
local location insploc1
local location absorbloc1
local location destrloc1
set detloc1 = Location(0, 5300)
set insploc1 = Location(-5300, 0)
set absorbloc1 = Location(0, -5300)
set destrloc1 = Location(5300, 0)
call CreateNUnitsAtLoc( 5, 'o000', Player(0), detloc1, 0 )
set deter1 = GetLastCreatedGroup()
call CreateNUnitsAtLoc( 2, 'o001', Player(0), detloc1, 0 )
call GroupAddGroup( GetLastCreatedGroup(), deter1 )
call GroupPointOrderLocBJ( deter1, "attack", absorbloc1 )
set deter1 = null
call DestroyGroup (deter1)
call CreateNUnitsAtLoc( 5, 'h000', Player(1), insploc1, 0 )
set insp1 = GetLastCreatedGroup()
call CreateNUnitsAtLoc( 2, 'h001', Player(1), insploc1, 0 )
call GroupAddGroup( GetLastCreatedGroup(), insp1 )
call GroupPointOrderLocBJ( insp1, "attack", destrloc1 )
set insp1 = null
call DestroyGroup (insp1)
call CreateNUnitsAtLoc( 5, 'n000', Player(3), absorbloc1, 0 )
set absorb1 = GetLastCreatedGroup()
call CreateNUnitsAtLoc( 2, 'n001', Player(3), absorbloc1, 0 )
call GroupAddGroup( GetLastCreatedGroup(), absorb1 )
call GroupPointOrderLocBJ( absorb1, "attack", detloc1 )
set absorb1 = null
call DestroyGroup (absorb1)
call CreateNUnitsAtLoc( 5, 'u000', Player(6), destrloc1, 0 )
set destr1 = GetLastCreatedGroup()
call CreateNUnitsAtLoc( 2, 'u001', Player(6), destrloc1, 0 )
call GroupAddGroup( GetLastCreatedGroup(), destr1 )
call GroupPointOrderLocBJ( destr1, "attack", insploc1 )
set destr1 = null
call DestroyGroup (destr1)
set detloc1 = null
set insploc1 = null
set absorbloc1 = null
set destrloc1 = null
call RemoveLocation(detloc1)
call RemoveLocation(insploc1)
call RemoveLocation(absorbloc1)
call RemoveLocation(destrloc1)
endfunction
//===========================================================================
function InitTrig_CreepsCenter1 takes nothing returns nothing
set gg_trg_CreepsCenter1 = CreateTrigger( )
call TriggerRegisterTimerEventPeriodic( gg_trg_CreepsCenter1, 10.00 )
call TriggerAddAction( gg_trg_CreepsCenter1, function Trig_CreepsCenter1_Actions )
endfunction
Принятый ответ
если ты обнулил переменную то в ней ничего нету
а потом пытаешься удалить содержимое переменной т.е. ничто
а объект как был в памяти так там и остался
короче полное незнание матчасти и отсутствие здравого смысла
читай статьи
а потом пытаешься удалить содержимое переменной т.е. ничто
а объект как был в памяти так там и остался
короче полное незнание матчасти и отсутствие здравого смысла
читай статьи
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
это даже на гуи без утечек делается.
берется точка назначения, берется точка спавна юнитов
при спавне юнит посылается в нужную точку, после чего все точки удаляются
и на этом всё
при входе юнита в другую локацию - алгоритм повторить
Extremator: а вот это полезно, спасибо!
ledoed: почему тебе до сих пор бан не дали детка? я вроде отправил сообщение
а потом пытаешься удалить содержимое переменной т.е. ничто
а объект как был в памяти так там и остался
короче полное незнание матчасти и отсутствие здравого смысла
читай статьи