9
0
mirror of https://github.com/VolmitSoftware/Iris.git synced 2025-12-26 18:49:06 +00:00

Schematics

This commit is contained in:
Daniel Mills
2020-01-03 01:05:10 -05:00
parent e2c8b6ae02
commit ec43d2012e
22 changed files with 2092 additions and 227 deletions

View File

@@ -4,29 +4,25 @@ import java.util.UUID;
import java.util.function.Function;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.WorldCreator;
import org.bukkit.block.Biome;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.HandlerList;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.util.Vector;
import ninja.bytecode.iris.generator.IrisGenerator;
import ninja.bytecode.iris.util.RealBiome;
import ninja.bytecode.shuriken.bench.Profiler;
import ninja.bytecode.shuriken.collections.GMap;
import ninja.bytecode.shuriken.collections.GSet;
import ninja.bytecode.shuriken.execution.J;
import ninja.bytecode.shuriken.execution.TaskExecutor;
import ninja.bytecode.shuriken.format.F;
import ninja.bytecode.shuriken.math.M;
public class Iris extends JavaPlugin implements Listener
{
@@ -46,6 +42,7 @@ public class Iris extends JavaPlugin implements Listener
gen = new IrisGenerator();
genPool = new TaskExecutor(getTC(), settings.performance.threadPriority, "Iris Generator");
getServer().getPluginManager().registerEvents((Listener) this, this);
new WandManager();
// Debug world regens
GSet<String> ws = new GSet<>();
@@ -90,6 +87,7 @@ public class Iris extends JavaPlugin implements Listener
public void onDisable()
{
genPool.close();
HandlerList.unregisterAll((Plugin) this);
}
@Override
@@ -101,63 +99,17 @@ public class Iris extends JavaPlugin implements Listener
@EventHandler
public void on(PlayerCommandPreprocessEvent e)
{
if(e.getMessage().toLowerCase().equals("/iris"))
if(e.getMessage().toLowerCase().equals("/iris gen"))
{
e.setCancelled(true);
World wold = e.getPlayer().getWorld();
World w = createIrisWorld();
e.getPlayer().teleport(new Location(w, 0, 256, 0));
e.getPlayer().setFlying(true);
e.getPlayer().setGameMode(GameMode.CREATIVE);
e.setCancelled(true);
wold.setAutoSave(false);
Bukkit.unloadWorld(wold, false);
}
if(e.getMessage().toLowerCase().equals("/iris info"))
{
e.setCancelled(true);
sendInfo(e.getPlayer());
for(Biome i : Biome.values())
{
J.attempt(() -> System.out.print(new RealBiome(i)));
}
}
}
private void sendInfo(Player player)
{
for(int i = 0; i < 18; i++)
{
player.sendMessage("");
}
GMap<String, Function<Vector, Double>> w = values.get(player.getWorld().getName());
for(String i : w.k())
{
double value = w.get(i).apply(player.getLocation().toVector());
String p = i.substring(0, 2);
String v = value + "";
if(p.startsWith("%"))
{
v = F.pc(value, Integer.valueOf(p.substring(1)));
}
if(p.startsWith("D"))
{
v = F.f(value, Integer.valueOf(p.substring(1)));
}
else if(p.startsWith("^"))
{
double c = M.lerpInverse(-11, 37, value);
double f = 32 + (c * (1.8));
v = F.f(c, Integer.valueOf(p.substring(1))) + " \u00B0C / " + F.f(f, Integer.valueOf(p.substring(1))) + " \u00B0F";
}
player.sendMessage(ChatColor.GREEN + i.substring(2) + ": " + ChatColor.RESET + ChatColor.WHITE + ChatColor.BOLD + v);
}
}
private World createIrisWorld()