From 48d730cbca73feeee0a91e5d0305561d98fce68e Mon Sep 17 00:00:00 2001 From: Bl4ise <168727017+Bl4ise@users.noreply.github.com> Date: Thu, 2 May 2024 13:00:37 +0200 Subject: [PATCH 1/3] Update Serdes.luau Prevent halting of the code execution. --- src/Index/Util/Serdes.luau | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Index/Util/Serdes.luau b/src/Index/Util/Serdes.luau index 025fd68..53fc300 100644 --- a/src/Index/Util/Serdes.luau +++ b/src/Index/Util/Serdes.luau @@ -12,7 +12,6 @@ return function(Identifier: string, timeout: number?): number if not Event:GetAttribute(Identifier) then SerInt += 1 Event:SetAttribute(Identifier, SerInt) - --Event:SetAttribute(Identifier, string.pack("I1", SerInt)) -- I1 -> 255 max, I2 -> ~ 6.5e4 max. (SerInt), removed/disabled for buffer migration. end else local retreived = false @@ -21,10 +20,13 @@ return function(Identifier: string, timeout: number?): number retreived = true error(`Serdes: {Identifier} is taking too long to retrieve, seems like not replicated on server.`, 2) end) - while (not retreived) and (not Event:GetAttribute(Identifier)) do - task.wait(0.5) - end - retreived = true + task.spawn(function() + repeat + task.wait(0.5) + until retreived and Event:GetAttribute(Identifier) + + retreived = true + end) end return Event:GetAttribute(Identifier) -end \ No newline at end of file +end From ac6bd01460b92b0b1ea30ece8c06f7079f138978 Mon Sep 17 00:00:00 2001 From: Bl4ise <168727017+Bl4ise@users.noreply.github.com> Date: Thu, 2 May 2024 13:05:22 +0200 Subject: [PATCH 2/3] Update Serdes.luau --- src/Index/Util/Serdes.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Index/Util/Serdes.luau b/src/Index/Util/Serdes.luau index 53fc300..5d77e6c 100644 --- a/src/Index/Util/Serdes.luau +++ b/src/Index/Util/Serdes.luau @@ -23,7 +23,7 @@ return function(Identifier: string, timeout: number?): number task.spawn(function() repeat task.wait(0.5) - until retreived and Event:GetAttribute(Identifier) + until (retreived and Event:GetAttribute(Identifier)) retreived = true end) From 04d4fb85f1d24d7311e14e1b7f27300f24ee7967 Mon Sep 17 00:00:00 2001 From: Bl4ise <168727017+Bl4ise@users.noreply.github.com> Date: Thu, 2 May 2024 13:18:46 +0200 Subject: [PATCH 3/3] Update Serdes.luau --- src/Index/Util/Serdes.luau | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Index/Util/Serdes.luau b/src/Index/Util/Serdes.luau index 5d77e6c..2d881e5 100644 --- a/src/Index/Util/Serdes.luau +++ b/src/Index/Util/Serdes.luau @@ -20,10 +20,11 @@ return function(Identifier: string, timeout: number?): number retreived = true error(`Serdes: {Identifier} is taking too long to retrieve, seems like not replicated on server.`, 2) end) + task.spawn(function() - repeat + while (not retreived and not Event:GetAttribute(Identifier)) do task.wait(0.5) - until (retreived and Event:GetAttribute(Identifier)) + end retreived = true end)