Compare commits

..
7 Commits
6 changed files with 33 additions and 1 deletions
@@ -21,8 +21,8 @@ package de.steamwar.fightsystem;
import com.comphenix.tinyprotocol.TinyProtocol;
import de.steamwar.core.Core;
import de.steamwar.core.WorldIdentifier;
import de.steamwar.core.worldedit.SteamEdit;
import de.steamwar.core.worldedit.WorldEditRendererCUIEditor;
import de.steamwar.fightsystem.fight.Fight;
import de.steamwar.fightsystem.fight.FightTeam;
import de.steamwar.fightsystem.listener.ClickAnalyzer;
@@ -79,6 +79,11 @@ public class FightSystem extends JavaPlugin {
Core.setServerName("Replay");
}
String arenaMap = System.getProperty("arenaMap");
if (arenaMap != null) {
WorldIdentifier.setArena(arenaMap);
}
message = new Message("de.steamwar.fightsystem.FightSystem", FightSystem.class.getClassLoader());
spigotLinker = new SpigotLinker(this, message) {
@@ -19,6 +19,7 @@
package de.steamwar.misslewars;
import de.steamwar.core.WorldIdentifier;
import de.steamwar.linkage.AbstractLinker;
import de.steamwar.linkage.SpigotLinker;
import de.steamwar.misslewars.items.CustomItem;
@@ -56,6 +57,11 @@ public class MissileWars extends JavaPlugin {
redTeam = new MWTeam(Config.TeamRedColor, Config.RedSpawn, Config.TeamRedName, Config.RedPortalZ);
blueTeam = new MWTeam(Config.TeamBlueColor, Config.BlueSpawn, Config.TeamBlueName, Config.BluePortalZ);
String arenaMap = System.getProperty("arenaMap");
if (arenaMap != null) {
WorldIdentifier.setArena(arenaMap);
}
SpigotLinker spigotLinker = new SpigotLinker(this, null) {
@Override
protected void linkObject(Object any) {
@@ -27,6 +27,9 @@ import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.Level;
import java.nio.charset.StandardCharsets;
import java.util.HexFormat;
@Linked
public class WorldIdentifier {
@@ -36,6 +39,10 @@ public class WorldIdentifier {
resourceKey = new ResourceKey<>(new ResourceLocation("minecraft", "dimension"), new ResourceLocation("steamwar", name));
}
public static void setArena(String map) {
set("arena/" + Core.getVersion() + "/" + HexFormat.of().formatHex(map.getBytes(StandardCharsets.UTF_8)));
}
public WorldIdentifier() {
TinyProtocol.instance.addFilter(ClientboundLoginPacket.class, (player, packet) -> {
if (resourceKey == null) return packet;
@@ -19,6 +19,7 @@
package de.steamwar.tntleague
import de.steamwar.core.WorldIdentifier
import de.steamwar.message.Message
import de.steamwar.tntleague.command.*
import de.steamwar.tntleague.events.GlobalListener
@@ -43,6 +44,11 @@ class TNTLeague : JavaPlugin() {
logger.info("TNTLeague enabled")
val arenaMap = System.getProperty("arenaMap")
if (arenaMap != null) {
WorldIdentifier.setArena(arenaMap)
}
ReadyCommand.register()
InviteCommand.register()
AcceptCommand.register()
@@ -20,6 +20,7 @@
package de.steamwar.towerrun;
import de.steamwar.command.SWCommand;
import de.steamwar.core.WorldIdentifier;
import de.steamwar.linkage.AbstractLinker;
import de.steamwar.linkage.LinkedInstance;
import de.steamwar.linkage.SpigotLinker;
@@ -56,6 +57,11 @@ public class TowerRun extends JavaPlugin {
towerGenerator = new TowerGenerator(WorldConfig.TOWER_GENERATOR_CONFIG);
}
String arenaMap = System.getProperty("arenaMap");
if (arenaMap != null) {
WorldIdentifier.setArena(arenaMap);
}
SpigotLinker spigotLinker = new SpigotLinker(this, message) {
@Override
protected void linkObject(Object any) {
@@ -64,6 +70,7 @@ public class TowerRun extends JavaPlugin {
}
}
};
try {
spigotLinker.link();
} catch (AbstractLinker.LinkException e) {
@@ -91,6 +91,7 @@ public class ServerStarter {
gameMode = mode.configFile.getName().replace(".yml", "");
directory = new File(SERVER_PATH, mode.Server.Folder);
arguments.put("config", mode.configFile.getName());
arguments.put("arenaMap", map);
tempWorld(SERVER_PATH + mode.Server.Folder + "/arenas/" + map);
startCondition = () -> {
if (playersToSend.stream().anyMatch(player -> Subserver.isArena(Subserver.getSubserver(player)))) {