Browse Source

make sure isIterating will be false again

Kajetan Johannes Hammerle 4 years ago
parent
commit
8bae97f017
1 changed files with 20 additions and 13 deletions
  1. 20 13
      src/me/hammerle/snuviscript/code/ScriptManager.java

+ 20 - 13
src/me/hammerle/snuviscript/code/ScriptManager.java

@@ -225,20 +225,27 @@ public class ScriptManager
         }
         
         isIterating = true;
-        set.stream().filter(sc -> sc.shouldReceiveEventBroadcast() && !sc.isHolded() && sc.isWaiting())
-                .forEach(sc -> 
-                {
-                    sc.setVar("event", name);
-                    if(before != null)
-                    {
-                        before.accept(sc);
-                    }
-                    sc.run();
-                    if(after != null)
+        try
+        {
+            set.stream().filter(sc -> sc.shouldReceiveEventBroadcast() && !sc.isHolded() && sc.isWaiting())
+                    .forEach(sc -> 
                     {
-                        after.accept(sc);
-                    }
-                });
+                        sc.setVar("event", name);
+                        if(before != null)
+                        {
+                            before.accept(sc);
+                        }
+                        sc.run();
+                        if(after != null)
+                        {
+                            after.accept(sc);
+                        }
+                    });
+        }
+        catch(Exception ex)
+        {
+            ex.printStackTrace();
+        }
         isIterating = false;
         handleQueues();
     }