From 815a30529c49165cb34ead9c64fec2a5b00f72a8 Mon Sep 17 00:00:00 2001 From: Joshdan Date: Fri, 1 Sep 2023 22:43:21 -0700 Subject: [PATCH 1/2] Work around missing RandomFloat() --- util/AbilityAbstraction.lua | 3 ++- util/MiraDota.lua | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/util/AbilityAbstraction.lua b/util/AbilityAbstraction.lua index ff025b1..3684db1 100644 --- a/util/AbilityAbstraction.lua +++ b/util/AbilityAbstraction.lua @@ -3228,7 +3228,8 @@ function M:EveryManySeconds(second, oldFunction) local functionName = tostring(oldFunction) local callTable = {} everySecondsCallRegistry[functionName] = callTable - callTable.lastCallTime = DotaTime() + RandomFloat(0, second) + print(RandomInt(0, second*1000) / 1000) + callTable.lastCallTime = DotaTime() + RandomInt(0, second*1000) / 1000 callTable.interval = second callTable.startup = true return function(...) diff --git a/util/MiraDota.lua b/util/MiraDota.lua index 193c5e7..77e864a 100644 --- a/util/MiraDota.lua +++ b/util/MiraDota.lua @@ -930,7 +930,7 @@ local everySecondsCallRegistry = Linq.NewTable() function GameLoop.EveryManySeconds(second, registerName, oldFunction, ...) if everySecondsCallRegistry[registerName] == nil then local callTable = {} - callTable.lastCallTime = DotaTime() + RandomFloat(0, second) - second + callTable.lastCallTime = DotaTime() + RandomInt(0, second*1000)/1000 - second callTable.interval = second everySecondsCallRegistry[registerName] = callTable end From 6747bb570826140c77482b42ea711eea51274724 Mon Sep 17 00:00:00 2001 From: JoshdanG Date: Fri, 1 Sep 2023 23:14:05 -0700 Subject: [PATCH 2/2] Remove debugging code --- util/AbilityAbstraction.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/util/AbilityAbstraction.lua b/util/AbilityAbstraction.lua index 3684db1..17291a9 100644 --- a/util/AbilityAbstraction.lua +++ b/util/AbilityAbstraction.lua @@ -3228,7 +3228,6 @@ function M:EveryManySeconds(second, oldFunction) local functionName = tostring(oldFunction) local callTable = {} everySecondsCallRegistry[functionName] = callTable - print(RandomInt(0, second*1000) / 1000) callTable.lastCallTime = DotaTime() + RandomInt(0, second*1000) / 1000 callTable.interval = second callTable.startup = true