From f2191c0f49782c5e7fc3b3100b649ff570094457 Mon Sep 17 00:00:00 2001 From: Lixfel Date: Mon, 12 Apr 2021 18:05:59 +0200 Subject: [PATCH] Fix rotation issues Signed-off-by: Lixfel --- .../steamwar/fightsystem/fight/FightTeam_14.java | 6 ++---- .../de/steamwar/fightsystem/fight/FightTeam_8.java | 5 +---- .../src/de/steamwar/fightsystem/FightSystem.java | 6 +++++- .../fightsystem/listener/PrepareSchem.java | 14 +++++++++----- 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/FightSystem_14/src/de/steamwar/fightsystem/fight/FightTeam_14.java b/FightSystem_14/src/de/steamwar/fightsystem/fight/FightTeam_14.java index 17bfbbe..7a2b1ac 100644 --- a/FightSystem_14/src/de/steamwar/fightsystem/fight/FightTeam_14.java +++ b/FightSystem_14/src/de/steamwar/fightsystem/fight/FightTeam_14.java @@ -123,7 +123,7 @@ public class FightTeam_14 { return block.getType() == Material.MOVING_PISTON; } - public static void saveSchem(Schematic schem, Region region, int minY, boolean rotate) { + public static void saveSchem(Schematic schem, Region region, int minY) { World w = new BukkitWorld(Bukkit.getWorlds().get(0)); BlockVector3 min = BlockVector3.at(region.getMinX(), minY, region.getMinZ()); CuboidRegion cuboidRegion = new CuboidRegion(w, min, BlockVector3.at(region.getMaxX(), region.getMaxY(), region.getMaxZ())); @@ -132,9 +132,7 @@ public class FightTeam_14 { ForwardExtentCopy forwardExtentCopy = new ForwardExtentCopy(editSession, cuboidRegion, clipboard, min); forwardExtentCopy.setCopyingEntities(false); - if(rotate){ - forwardExtentCopy.setTransform(new AffineTransform().rotateY(180)); - } + try{ Operations.complete(forwardExtentCopy); }catch(WorldEditException e){ diff --git a/FightSystem_8/src/de/steamwar/fightsystem/fight/FightTeam_8.java b/FightSystem_8/src/de/steamwar/fightsystem/fight/FightTeam_8.java index 64f7c70..54812ff 100644 --- a/FightSystem_8/src/de/steamwar/fightsystem/fight/FightTeam_8.java +++ b/FightSystem_8/src/de/steamwar/fightsystem/fight/FightTeam_8.java @@ -125,7 +125,7 @@ public class FightTeam_8 { return block.getType() == Material.PISTON_MOVING_PIECE; } - public static void saveSchem(Schematic schem, Region region, int minY, boolean rotate) { + public static void saveSchem(Schematic schem, Region region, int minY) { World w = new BukkitWorld(Bukkit.getWorlds().get(0)); Vector min = new Vector(region.getMinX(), minY, region.getMinZ()); CuboidRegion cuboidRegion = new CuboidRegion(w, min, new Vector(region.getMaxX(), region.getMaxY(), region.getMaxZ())); @@ -133,9 +133,6 @@ public class FightTeam_8 { EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(w, -1); ForwardExtentCopy forwardExtentCopy = new ForwardExtentCopy(editSession, cuboidRegion, clipboard, min); - if(rotate){ - forwardExtentCopy.setTransform(new AffineTransform().rotateY(180)); - } try{ Operations.complete(forwardExtentCopy); }catch(WorldEditException e){ diff --git a/FightSystem_Main/src/de/steamwar/fightsystem/FightSystem.java b/FightSystem_Main/src/de/steamwar/fightsystem/FightSystem.java index bc1aed4..5458ae0 100644 --- a/FightSystem_Main/src/de/steamwar/fightsystem/FightSystem.java +++ b/FightSystem_Main/src/de/steamwar/fightsystem/FightSystem.java @@ -142,7 +142,11 @@ public class FightSystem extends JavaPlugin { }else if(Config.mode == ArenaMode.CHECK){ Fight.getBlueTeam().setSchem(Schematic.getSchemFromDB(Config.CheckSchemID)); }else if(Config.mode == ArenaMode.PREPARE) { - Fight.getBlueTeam().setSchem(Schematic.getSchemFromDB(Config.PrepareSchemID)); + if(Config.BlueRotate){ + Fight.getRedTeam().setSchem(Schematic.getSchemFromDB(Config.PrepareSchemID)); + }else{ + Fight.getBlueTeam().setSchem(Schematic.getSchemFromDB(Config.PrepareSchemID)); + } } } diff --git a/FightSystem_Main/src/de/steamwar/fightsystem/listener/PrepareSchem.java b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PrepareSchem.java index 7f2d203..a9c68e9 100644 --- a/FightSystem_Main/src/de/steamwar/fightsystem/listener/PrepareSchem.java +++ b/FightSystem_Main/src/de/steamwar/fightsystem/listener/PrepareSchem.java @@ -46,9 +46,9 @@ public class PrepareSchem implements Listener { @Override public void disable() { super.disable(); - Region region = Fight.getBlueTeam().getExtendRegion(); World world = Bukkit.getWorlds().get(0); - int minY = Fight.getBlueTeam().getSchemRegion().getMinY(); + Region region = Config.BlueRotate ? Fight.getRedTeam().getExtendRegion() : Fight.getBlueTeam().getExtendRegion(); + int minY = Config.BlueRotate ? Fight.getRedTeam().getSchemRegion().getMinY() : Fight.getBlueTeam().getSchemRegion().getMinY(); Schematic schem; try{ @@ -73,8 +73,8 @@ public class PrepareSchem implements Listener { try{ VersionedRunnable.call( - new VersionedRunnable(() -> FightTeam_8.saveSchem(schem, region, minY, Config.BlueRotate), 8), - new VersionedRunnable(() -> FightTeam_14.saveSchem(schem, region, minY, Config.BlueRotate), 14)); + new VersionedRunnable(() -> FightTeam_8.saveSchem(schem, region, minY), 8), + new VersionedRunnable(() -> FightTeam_14.saveSchem(schem, region, minY), 14)); }catch(IllegalStateException e){ FightSystem.shutdown(FightSystem.PREFIX + "§cDie Schematic konnte nicht gespeichert werden, Einsenden wird abgebrochen."); return; @@ -92,7 +92,11 @@ public class PrepareSchem implements Listener { FightTeam team = Fight.getPlayerTeam(player); if (team == null) { - Fight.getBlueTeam().addMember(player); + if(Config.BlueRotate){ + Fight.getRedTeam().addMember(player); + }else{ + Fight.getBlueTeam().addMember(player); + } } if(FightState.getFightState() == FightState.PRE_LEADER_SETUP) {