mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-12-19 15:09:18 +00:00
Add effects to creating studio worlds
This commit is contained in:
@@ -8,6 +8,8 @@ import com.volmit.iris.scaffold.IrisWorldCreator;
|
|||||||
import com.volmit.iris.scaffold.engine.IrisAccess;
|
import com.volmit.iris.scaffold.engine.IrisAccess;
|
||||||
import com.volmit.iris.util.*;
|
import com.volmit.iris.util.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import net.md_5.bungee.api.ChatMessageType;
|
||||||
|
import net.md_5.bungee.api.chat.TextComponent;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.GameMode;
|
import org.bukkit.GameMode;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
||||||
@@ -125,7 +127,7 @@ public class IrisProject
|
|||||||
.create();
|
.create();
|
||||||
IrisAccess gx = ((IrisAccess)c.generator());
|
IrisAccess gx = ((IrisAccess)c.generator());
|
||||||
sender.sendMessage("Generating with " + Iris.getThreadCount() + " threads per chunk");
|
sender.sendMessage("Generating with " + Iris.getThreadCount() + " threads per chunk");
|
||||||
O<Boolean> done = new O<Boolean>();
|
O<Boolean> done = new O<>();
|
||||||
done.set(false);
|
done.set(false);
|
||||||
activeProvider = gx;
|
activeProvider = gx;
|
||||||
|
|
||||||
@@ -134,12 +136,13 @@ public class IrisProject
|
|||||||
double last = 0;
|
double last = 0;
|
||||||
int req = 300;
|
int req = 300;
|
||||||
double lpc = 0;
|
double lpc = 0;
|
||||||
boolean fc = false;
|
boolean fc;
|
||||||
|
|
||||||
while(!done.get())
|
while(!done.get())
|
||||||
{
|
{
|
||||||
boolean derp = false;
|
boolean derp = false;
|
||||||
|
|
||||||
|
assert gx != null;
|
||||||
double v = (double) gx.getGenerated() / (double) req;
|
double v = (double) gx.getGenerated() / (double) req;
|
||||||
fc = lpc != v;
|
fc = lpc != v;
|
||||||
lpc = v;
|
lpc = v;
|
||||||
@@ -160,10 +163,15 @@ public class IrisProject
|
|||||||
sender.sendMessage(C.WHITE + "Generating " + Form.pc(v) + (derp ? (C.GRAY + " (Waiting on Server...)") : (C.GRAY + " (" + (req - gx.getGenerated()) + " Left)")));
|
sender.sendMessage(C.WHITE + "Generating " + Form.pc(v) + (derp ? (C.GRAY + " (Waiting on Server...)") : (C.GRAY + " (" + (req - gx.getGenerated()) + " Left)")));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (sender.isPlayer()){
|
||||||
|
sender.player().spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText(C.BLUE + "Creating studio world. Please wait..."));
|
||||||
|
}
|
||||||
|
|
||||||
J.sleep(1500);
|
J.sleep(1500);
|
||||||
|
|
||||||
if(gx.isFailing())
|
if(gx.isFailing())
|
||||||
{
|
{
|
||||||
|
|
||||||
sender.sendMessage("Generation Failed!");
|
sender.sendMessage("Generation Failed!");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -175,10 +183,11 @@ public class IrisProject
|
|||||||
Iris.linkMultiverseCore.removeFromConfig(world);
|
Iris.linkMultiverseCore.removeFromConfig(world);
|
||||||
|
|
||||||
done.set(true);
|
done.set(true);
|
||||||
sender.sendMessage(C.WHITE + "Generating 100%");
|
sender.sendMessage(C.WHITE + "Generating Complete!");
|
||||||
|
|
||||||
if(sender.isPlayer())
|
if(sender.isPlayer())
|
||||||
{
|
{
|
||||||
|
assert world != null;
|
||||||
sender.player().teleport(world.getSpawnLocation());
|
sender.player().teleport(world.getSpawnLocation());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -305,8 +314,7 @@ public class IrisProject
|
|||||||
|
|
||||||
public File compilePackage(MortarSender sender, boolean obfuscate, boolean minify)
|
public File compilePackage(MortarSender sender, boolean obfuscate, boolean minify)
|
||||||
{
|
{
|
||||||
String dim = getName();
|
String dimm = getName();
|
||||||
String dimm = dim;
|
|
||||||
IrisDataManager dm = new IrisDataManager(path);
|
IrisDataManager dm = new IrisDataManager(path);
|
||||||
IrisDimension dimension = dm.getDimensionLoader().load(dimm);
|
IrisDimension dimension = dm.getDimensionLoader().load(dimm);
|
||||||
File folder = new File(Iris.instance.getDataFolder(), "exports/" + dimension.getLoadKey());
|
File folder = new File(Iris.instance.getDataFolder(), "exports/" + dimension.getLoadKey());
|
||||||
@@ -338,7 +346,7 @@ public class IrisProject
|
|||||||
regions.forEach((r) -> r.getEntityInitialSpawns().forEach((sp) -> entities.add(dm.getEntityLoader().load(sp.getEntity()))));
|
regions.forEach((r) -> r.getEntityInitialSpawns().forEach((sp) -> entities.add(dm.getEntityLoader().load(sp.getEntity()))));
|
||||||
dimension.getEntityInitialSpawns().forEach((sp) -> entities.add(dm.getEntityLoader().load(sp.getEntity())));
|
dimension.getEntityInitialSpawns().forEach((sp) -> entities.add(dm.getEntityLoader().load(sp.getEntity())));
|
||||||
KMap<String, String> renameObjects = new KMap<>();
|
KMap<String, String> renameObjects = new KMap<>();
|
||||||
String a = "";
|
String a;
|
||||||
StringBuilder b = new StringBuilder();
|
StringBuilder b = new StringBuilder();
|
||||||
StringBuilder c = new StringBuilder();
|
StringBuilder c = new StringBuilder();
|
||||||
sender.sendMessage("Serializing Objects");
|
sender.sendMessage("Serializing Objects");
|
||||||
@@ -396,7 +404,7 @@ public class IrisProject
|
|||||||
KMap<String, KList<String>> lookupObjects = renameObjects.flip();
|
KMap<String, KList<String>> lookupObjects = renameObjects.flip();
|
||||||
StringBuilder gb = new StringBuilder();
|
StringBuilder gb = new StringBuilder();
|
||||||
ChronoLatch cl = new ChronoLatch(1000);
|
ChronoLatch cl = new ChronoLatch(1000);
|
||||||
O<Integer> ggg = new O<Integer>();
|
O<Integer> ggg = new O<>();
|
||||||
ggg.set(0);
|
ggg.set(0);
|
||||||
biomes.forEach((i) -> i.getObjects().forEach((j) -> j.getPlace().forEach((k) ->
|
biomes.forEach((i) -> i.getObjects().forEach((j) -> j.getPlace().forEach((k) ->
|
||||||
{
|
{
|
||||||
@@ -415,7 +423,7 @@ public class IrisProject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
catch(Throwable e)
|
catch(Throwable ignored)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -438,7 +446,7 @@ public class IrisProject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
catch(Throwable e)
|
catch(Throwable ignored)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -502,7 +510,6 @@ public class IrisProject
|
|||||||
}
|
}
|
||||||
|
|
||||||
c.append(IO.hash(b.toString()));
|
c.append(IO.hash(b.toString()));
|
||||||
b = new StringBuilder();
|
|
||||||
String finalHash = IO.hash(c.toString());
|
String finalHash = IO.hash(c.toString());
|
||||||
JSONObject meta = new JSONObject();
|
JSONObject meta = new JSONObject();
|
||||||
meta.put("hash", finalHash);
|
meta.put("hash", finalHash);
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ import com.volmit.iris.object.IrisDimension;
|
|||||||
import com.volmit.iris.scaffold.cache.AtomicCache;
|
import com.volmit.iris.scaffold.cache.AtomicCache;
|
||||||
import com.volmit.iris.util.*;
|
import com.volmit.iris.util.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.bukkit.potion.PotionEffect;
|
||||||
|
import org.bukkit.potion.PotionEffectType;
|
||||||
import org.zeroturnaround.zip.ZipUtil;
|
import org.zeroturnaround.zip.ZipUtil;
|
||||||
import org.zeroturnaround.zip.commons.FileUtils;
|
import org.zeroturnaround.zip.commons.FileUtils;
|
||||||
|
|
||||||
@@ -347,6 +349,9 @@ public class ProjectManager
|
|||||||
{
|
{
|
||||||
open(sender, dimm, () ->
|
open(sender, dimm, () ->
|
||||||
{
|
{
|
||||||
|
sender.player().removePotionEffect(PotionEffectType.BLINDNESS);
|
||||||
|
sender.player().removePotionEffect(PotionEffectType.CONFUSION);
|
||||||
|
sender.player().addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, 20, 1));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,9 +2,15 @@ package com.volmit.iris.manager.command;
|
|||||||
|
|
||||||
import com.volmit.iris.Iris;
|
import com.volmit.iris.Iris;
|
||||||
import com.volmit.iris.IrisSettings;
|
import com.volmit.iris.IrisSettings;
|
||||||
|
import com.volmit.iris.util.C;
|
||||||
import com.volmit.iris.util.KList;
|
import com.volmit.iris.util.KList;
|
||||||
import com.volmit.iris.util.MortarCommand;
|
import com.volmit.iris.util.MortarCommand;
|
||||||
import com.volmit.iris.util.MortarSender;
|
import com.volmit.iris.util.MortarSender;
|
||||||
|
import net.md_5.bungee.api.ChatMessageType;
|
||||||
|
import net.md_5.bungee.api.chat.TextComponent;
|
||||||
|
import org.bukkit.GameMode;
|
||||||
|
import org.bukkit.potion.PotionEffect;
|
||||||
|
import org.bukkit.potion.PotionEffectType;
|
||||||
|
|
||||||
public class CommandIrisStudioOpen extends MortarCommand
|
public class CommandIrisStudioOpen extends MortarCommand
|
||||||
{
|
{
|
||||||
@@ -36,6 +42,14 @@ public class CommandIrisStudioOpen extends MortarCommand
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(sender.isPlayer())
|
||||||
|
{
|
||||||
|
sender.player().setGameMode(GameMode.SPECTATOR);
|
||||||
|
sender.player().addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 2000, 10));
|
||||||
|
sender.player().addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, 2000, 10));
|
||||||
|
sender.player().spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText(C.BLUE + "Creating studio world. Please wait..."));
|
||||||
|
}
|
||||||
|
|
||||||
Iris.proj.open(sender, args[0]);
|
Iris.proj.open(sender, args[0]);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user