Так, по сети обнаружилось, что доход не начисляется. Строки выводятся(доход, профицит, т.п.), но не нет начисления. А в одиночной я в итоге глядел триг до 10 минут который.
Не припомню вариантов по восстановлению, но рекомендую на будущее поставить автосохранение(в настройках) + периодически сохранять новым файлом, чтобы ты мог если что возвращаться к старым версиям.
По классике для анализа крита пиши в прелоад: В начале игры написал PreloadGenStart()
Далее при каждом действии Preload("Сообщение для дебага"), PreloadGenEnd("Файл для дебага")
В начале работы триггера пиши что триггер начал работу, в конце - кончил, после каждого действия - что сделано. Так, ты без проблем определишь точное место крита, сообщения прервутся, когда игра кританет, если крит конечно в триггере.
Закомментил чисто форгруп "попробуй отключить форгруп". Код сейчас скинутый тобой(+ починеный) call ForGroup( udg_LocalOtrad2, function Trig_Disincome_OV_Func001Func006A )
GetUnitGoldCost, GetUnitWoodCost и GetUnitBuildTime критуют, если передать равкод, содержащий буквы верхнего регистра.
Вот в этом сомневаюсь, так как ими спокойно пользовались. А вот когда я перевел триггер из 2 в 3 (вверху что прикладывал), только тогда уже наступает фатал.
rsfghd,
Так, ну по поводу ретурна понял, огромное спасибо.
А вот случалось нечто подобное из второго вопроса(резкий необъясним скачек хендлов) ? Понимаю, может его сформулировал не понятно, но вдруг. Ну и хендлкаунтер, с ним как, все нормально?
В вот по поводу newUnit, я его попытался обнулить (ставил после return), он мне ошибку выдавал (тогда подумал что значение, которое уходит в ретурн обнулять не надо). Это как нужно реализовать?
Код счетчика, который находится в шапке карты в самом верху:
function HandleCounter_Update takes nothing returns nothing
local integer i = 0
local integer id = 0
local location array P
local real result=0
loop
exitwhen i >= 50
set i = i + 1
set P[i] = Location(0,0)
set id = GetHandleId(P[i])
set result = result + (id-0x100000)
endloop
set result = result/i-i/2
loop
call RemoveLocation(P[i])
set P[i] = null
exitwhen i <= 1
set i = i - 1
endloop
call LeaderboardSetItemValue(udg_HandleBoard,0,R2I(result))
endfunction
function HandleCounter_Actions takes nothing returns nothing
set udg_HandleBoard = CreateLeaderboard()
call LeaderboardSetLabel(udg_HandleBoard, "Handle Counter")
call PlayerSetLeaderboard(GetLocalPlayer(),udg_HandleBoard)
call LeaderboardDisplay(udg_HandleBoard,true)
call LeaderboardAddItem(udg_HandleBoard,"Handles",0,Player(0))
call LeaderboardSetSizeByItemCount(udg_HandleBoard,1)
call HandleCounter_Update()
call TimerStart(GetExpiredTimer(),0.05,true,function HandleCounter_Update)
endfunction
function InitTrig_HandleCounter takes nothing returns nothing
call TimerStart(CreateTimer(),0,false,function HandleCounter_Actions)
endfunction
+запуск(хз, нужен ли он)
Обратно к функции, если добавляю set newUnit = null, ловлю такую ошибку.
set bj_lastReplacedUnit = newUnit
set oldUnit = null
set indexItem = null
return newUnit
set newUnit = null
Ред. VinerX
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» WarCraft 3 / Тотальная оптимизация - на тысячи юнитов и десяток игроков
» XGM Team / Роскомнадзор заблокировал The Hive Workshop
» WarCraft 3 / Вылетел редактор карт варкрафт 3, но я не сохранил
(Слева сверху редактора)
Но вручную тоже версии делай. 1.001, 1.002 и т.д)
Ред. VinerX
» XGM Team / Роскомнадзор заблокировал The Hive Workshop
» WarCraft 3 / Вылетел редактор карт варкрафт 3, но я не сохранил
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
Ред. VinerX
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
мне кажется not нужно убрать" Попробую
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
Ред. VinerX
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
call ForGroup( udg_LocalOtrad2, function Trig_Disincome_OV_Func001Func006A )
Да, оно не фаталит!
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
Хорошо, сейчас тестану.
Ред. VinerX
» WarCraft 3 / Оптимизация: поредактировал jass триггер, но он начал фаталить.
goodlyhero: Сейчас займусь.
» WarCraft 3 / Дорога к оптимизации: захотел заменить "Замену" юнита (Reforged)
Так, ну по поводу ретурна понял, огромное спасибо.
А вот случалось нечто подобное из второго вопроса(резкий необъясним скачек хендлов) ? Понимаю, может его сформулировал не понятно, но вдруг. Ну и хендлкаунтер, с ним как, все нормально?
Ред. VinerX
» WarCraft 3 / Дорога к оптимизации: захотел заменить "Замену" юнита (Reforged)