public static void NewCalculatedThread(PlaygroundParticlesC playgroundParticles) { if (playgroundParticles.isDoneThread && playgroundParticles.isReadyForThreadedCalculations && !playgroundParticles.IsYieldRefreshing()) { playgroundParticles.isDoneThread = false; PlaygroundC.RunAsync(()=> { if (playgroundParticles.isDoneThread || !playgroundParticles.isReadyForThreadedCalculations) return; ThreadedCalculations(playgroundParticles); }); } }