VinerX, вджасс на рефе работает, но лучше тогда бы на луа тебе сделали)
если сомневаешься то сделаю на джассе тогда уж
вот, я без понятия работает ли, потому что лень создавать юнитов под эти условия, да и может накосячил случайно где-то и работает не так как задумано, поможет или нет не знаю, но попробуй что-ли(?)
код
function Trig_Income_Cond takes nothing returns boolean
local integer i
set udg_lastFilterUnit = GetFilterUnit( )
set i = GetUnitFoodMade( udg_lastFilterUnit )
if IsUnitInGroup( udg_lastFilterUnit, udg_GroupEnded ) or ( i == 150 or i == 75 ) then
set udg_Inc = udg_Inc + i
endif
return false
endfunction
function Trig_Income_and_Disincome_Copy_Enum_Func takes nothing returns nothing
local integer i
set udg_TempPlayer = GetEnumPlayer( )
set udg_Inc = 0
call GroupEnumUnitsOfPlayer( udg_LocalOtrad, udg_TempPlayer, udg_IncomeCondition )
call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Доход золота (каждые 15 секунд):|r |cff00ff00" + I2S( udg_Inc ) + "|r" )
set i = GetPlayerTechCount( udg_TempPlayer, 'R004', true ) * 75
set udg_Inc = udg_Inc + i
call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Дополнительный доход (от улучшений):|r |cff00ff00" + I2S( i ) + "|r" )
set i = GetPlayerUnitCount( udg_TempPlayer, false ) * 25
set udg_Inc = udg_Inc - i
call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Потребление на войска:|r |c00FF0303" + I2S( i ) + "|r" )
if udg_Inc > 0 then
call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Итого баланс:|r |cff00ff00" + I2S( udg_Inc ) + " (Профицит)|r" )
elseif udg_Inc == 0 then
call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Итого баланс:|r |cffffff000 (Нулевой бюджет)|r" )
else
call DisplayTimedTextToPlayer( udg_TempPlayer, 0.00, 0.00, 5.00, "|cffffcc00Итого баланс:|r |cffff0000" + I2S( -udg_Inc ) + " (Дефицит)|r" )
endif
call SetPlayerState( udg_TempPlayer, PLAYER_STATE_GOLD_GATHERED, GetPlayerState( udg_TempPlayer, PLAYER_STATE_GOLD_GATHERED ) + udg_Inc )
set udg_Inc = 0
endfunction
function Trig_Income_and_Disincome_Copy_O_Actions takes nothing returns nothing
call ForForce( bj_FORCE_ALL_PLAYERS, function Trig_Income_and_Disincome_Copy_Enum_Func )
endfunction
//===========================================================================
function InitTrig_Income_and_Disincome_Copy_O takes nothing returns nothing
set gg_trg_Income_and_Disincome_Copy_O = CreateTrigger( )
call DisableTrigger( gg_trg_Income_and_Disincome_Copy_O )
call TriggerRegisterTimerExpireEvent( gg_trg_Income_and_Disincome_Copy_O, udg_Compteur1 )
call TriggerAddAction( gg_trg_Income_and_Disincome_Copy_O, function Trig_Income_and_Disincome_Copy_O_Actions )
set udg_IncomeCondition = Condition( function Trig_Income_Cond )
endfunction
Lord_Teo, единственная ситуация когда действие добавить несёт какую-то пользу, это работа со звуком с этим соглашусь, но и то, даже для этого есть отдельная функция "ждать звука"
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» WarCraft 3 / this application has encountered a critical error FATAL ERROR
Ред. rsfghd
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
замени PLAYER_STATE_GOLD_GATHERED на PLAYER_STATE_RESOURCE_GOLD
» WarCraft 3 / Как заставить юнита использовать заклинание телепортации?
Ред. rsfghd
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
если сомневаешься то сделаю на джассе тогда уж
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» WarCraft 3 / Утечки памяти от юнитов
» WarCraft 3 / волны врагов. некоторые юниты стоят на месте
» WarCraft 3 / волны врагов. некоторые юниты стоят на месте
Ред. rsfghd
» WarCraft 3 / волны врагов. некоторые юниты стоят на месте
» WarCraft 3 / Свечение юнита, как у фонаря
» WarCraft 3 / Свечение юнита, как у фонаря
» WarCraft 3 / Свечение юнита, как у фонаря
» WarCraft 3 / Sephiroth
» WarCraft 3 / Таймер и заполнение шкалы 100%
» Программирование / Фреймы перезарядки способностей [python]
» WarCraft 3 / Не работает "Редактор объектов"
» WarCraft 3 / Длительность реплики во время ролика
Ред. rsfghd
» WarCraft 3 / Длительность реплики во время ролика
» WarCraft 3 / Длительность реплики во время ролика
» WarCraft 3 / Длительность реплики во время ролика
» WarCraft 3 / Длительность реплики во время ролика
» WarCraft 3 / Усиления громкости звука в области и Преследования за Юнитом
» WarCraft 3 / Длительность реплики во время ролика