From bed13c1ce2a78bd58f32bbc33fb91905f9c3b14b Mon Sep 17 00:00:00 2001
From: MaZiFAU <63099053+MaZiFAU@users.noreply.github.com>
Date: Tue, 4 Jul 2023 22:42:32 +0200
Subject: [PATCH] Performance;

Performance:
+discard out of date Dynamic Scroll Requests
---
 Assets/Scripts/InventoryStuff/ScrollDetails.cs | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/Assets/Scripts/InventoryStuff/ScrollDetails.cs b/Assets/Scripts/InventoryStuff/ScrollDetails.cs
index 7547bc98..d9ae92cb 100644
--- a/Assets/Scripts/InventoryStuff/ScrollDetails.cs
+++ b/Assets/Scripts/InventoryStuff/ScrollDetails.cs
@@ -41,6 +41,7 @@ public static ScrollDetails Instance
     public bool AutomaticHintGenerationActive = true;
 
     private bool DynamicScrollDone = true;
+    private bool DynamicScrollInQue = false;
 
     void Awake()
     {
@@ -152,7 +153,7 @@ public void MagicButtonTrigger()
 
         IEnumerator _MagicButton()
         {
-            while (!DynamicScrollDone)
+            while (!DynamicScrollDone || DynamicScrollInQue)
                 yield return null; // Wait for last assignment
 
             DynamicScrollDone = false;
@@ -190,8 +191,13 @@ public void NewAssignmentTrigger()
 
         IEnumerator _NewAssignment()
         {
+            if(DynamicScrollInQue)
+                yield break; // only need next in que to finish
+
+            DynamicScrollInQue = true;
             while (!DynamicScrollDone)
                 yield return null; // if we dont wait => server will crash
+            DynamicScrollInQue = false;
 
             DynamicScrollDone = false;
             yield return SendView("/scroll/dynamic");
-- 
GitLab