Minimal Particles config option & optimizations

This commit is contained in:
Sn0wStorm
2020-11-16 21:52:25 +01:00
parent 4111ceec81
commit c91e441eab
14 changed files with 139 additions and 25 deletions
+19 -1
View File
@@ -23,6 +23,9 @@ import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.event.HandlerList;
import org.bukkit.plugin.java.JavaPlugin;
import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Iterator;
@@ -517,10 +520,25 @@ public class P extends JavaPlugin {
}
private int ticks = 0;
private double times = 0;
public class CauldronParticles implements Runnable {
@Override
public void run() {
BCauldron.processNextCookEffects();
if (BConfig.minimalParticles && BCauldron.particleRandom.nextFloat() > 0.5f) {
return;
}
long t1 = System.nanoTime();
BCauldron.processCookEffects();
long t2 = System.nanoTime();
times += (t2 - t1) / 1000.0;
ticks++;
if (ticks == BCauldron.PARTICLEPAUSE) {
ticks = 0;
P.p.log("Particles: ~ " + BigDecimal.valueOf(times / BCauldron.PARTICLEPAUSE).round(new MathContext(5, RoundingMode.HALF_UP)) + "µs");
times = 0;
}
}
}