SteamWar/BauSystem2.0
Archiviert
12
0

Update BlockBoundingBox impls
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful

Signed-off-by: yoyosource <yoyosource@nidido.de>
Dieser Commit ist enthalten in:
yoyosource 2022-09-28 18:57:52 +02:00
Ursprung c227a67635
Commit b8adf7fb08
19 geänderte Dateien mit 99 neuen und 87 gelöschten Zeilen

Datei anzeigen

@ -19,6 +19,7 @@
package de.steamwar.bausystem.features.slaves.laufbau;
import de.steamwar.bausystem.linkage.LinkageUtils;
import de.steamwar.bausystem.utils.NMSWrapper;
import de.steamwar.core.Core;
import de.steamwar.inventory.SWItem;
@ -264,7 +265,7 @@ public class BlockBoundingBox {
eastTrapDoor.setOpen(true);
addPixel(eastTrapDoor, 0, 0, 0, 3, 16, 16, createItem("LAUFBAU_BLOCK_IRON_TRAPDOOR", Material.IRON_TRAPDOOR, "LAUFBAU_FACING_EAST", "LAUFBAU_OPEN"));
LaufbauLazyInit.init();
LinkageUtils.linkBoundingBox();
}
private static void addPixel(BlockData blockData, double xPixel, double yPixel, double zPixel, double dxPixel, double dyPixel, double dzPixel, SWItem swItem) {

Datei anzeigen

@ -1,35 +0,0 @@
package de.steamwar.bausystem.features.slaves.laufbau;
import de.steamwar.bausystem.features.slaves.laufbau.boundingboxes.*;
import de.steamwar.core.Core;
import lombok.experimental.UtilityClass;
@UtilityClass
public class LaufbauLazyInit {
public static void init() {
}
static {
new BellBoundingBox().enable();
new BrewingStandBoundingBox().enable();
new ChorusPlantBoundingBox().enable();
new FencesBoundingBox().enable();
new GrindstoneBoundingBox().enable();
new HopperBoundingBox().enable();
new IronBarBoundingBox().enable();
new LanternBoundingBox().enable();
new StairBoundingBox().enable();
new WallBoundingBox().enable();
new LecternBoundingBox().enable();
if (Core.getVersion() >= 19) {
new AmethystBoundingBox().enable();
new ChainBoundingBox().enable();
new DripLeafBoundingBox().enable();
new DragonEggBoundingBox().enable();
new AzaleaBoundingBox().enable();
new CandleBoundingBox().enable();
}
}
}

Datei anzeigen

@ -20,8 +20,10 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import de.steamwar.linkage.MinVersion;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.AmethystCluster;
@ -32,10 +34,12 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class AmethystBoundingBox implements Enable {
@Linked
@MinVersion(19)
public class AmethystBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
floorSmallAmethystBud();
ceilingSmallAmethystBud();
northSmallAmethystBud();

Datei anzeigen

@ -20,8 +20,10 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import de.steamwar.linkage.MinVersion;
import org.bukkit.Material;
import org.bukkit.block.data.BlockData;
@ -31,10 +33,12 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class AzaleaBoundingBox implements Enable {
@Linked
@MinVersion(19)
public class AzaleaBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
BlockData blockData = Material.FLOWERING_AZALEA.createBlockData();
List<Cuboid> cuboidList = new ArrayList<>();
cuboidList.add(pixelCuboid(0, 8, 0, 16, 8, 16));

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Bell;
@ -32,10 +33,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class BellBoundingBox implements Enable {
@Linked
public class BellBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
ceilingBell();
floorNorthBell();

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.data.type.BrewingStand;
@ -31,10 +32,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class BrewingStandBoundingBox implements Enable {
@Linked
public class BrewingStandBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
BrewingStand brewingStand = (BrewingStand) Material.BREWING_STAND.createBlockData();
List<Cuboid> cuboids = new ArrayList<>();
cuboids.add(pixelCuboid(1, 0, 1, 14, 2, 14));

Datei anzeigen

@ -20,8 +20,10 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import de.steamwar.linkage.MinVersion;
import org.bukkit.Material;
import org.bukkit.block.data.Lightable;
import org.bukkit.block.data.type.Candle;
@ -32,10 +34,12 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class CandleBoundingBox implements Enable {
@Linked
@MinVersion(19)
public class CandleBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
caked();
single();

Datei anzeigen

@ -20,8 +20,10 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import de.steamwar.linkage.MinVersion;
import org.bukkit.Axis;
import org.bukkit.Material;
import org.bukkit.block.data.Orientable;
@ -32,10 +34,12 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class ChainBoundingBox implements Enable {
@Linked
@MinVersion(19)
public class ChainBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
bottomTopChain();
northSouthChain();
eastWestChain();

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.MultipleFacing;
@ -32,10 +33,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class ChorusPlantBoundingBox implements Enable {
@Linked
public class ChorusPlantBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
for (int nx = 0; nx < 2; nx++) {
for (int ny = 0; ny < 2; ny++) {
for (int nz = 0; nz < 2; nz++) {

Datei anzeigen

@ -20,8 +20,10 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import de.steamwar.linkage.MinVersion;
import org.bukkit.Material;
import org.bukkit.block.data.BlockData;
@ -31,10 +33,12 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class DragonEggBoundingBox implements Enable {
@Linked
@MinVersion(19)
public class DragonEggBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
BlockData blockData = Material.DRAGON_EGG.createBlockData();
List<Cuboid> cuboidList = new ArrayList<>();
cuboidList.add(pixelCuboid(1, 0, 1, 14, 16, 14));

Datei anzeigen

@ -20,8 +20,10 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import de.steamwar.linkage.MinVersion;
import org.bukkit.Material;
import org.bukkit.block.data.type.BigDripleaf;
@ -31,10 +33,12 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class DripLeafBoundingBox implements Enable {
@Linked
@MinVersion(19)
public class DripLeafBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
tiltNone();
tiltPartial();
}

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Fence;
@ -32,10 +33,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class FencesBoundingBox implements Enable {
@Linked
public class FencesBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
for (int nx = 0; nx < 2; nx++) {
for (int nz = 0; nz < 2; nz++) {
for (int px = 0; px < 2; px++) {

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.FaceAttachable;
@ -33,10 +34,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class GrindstoneBoundingBox implements Enable {
@Linked
public class GrindstoneBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
floorNorthGrindstone();
floorEastGrindstone();

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Hopper;
@ -32,10 +33,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class HopperBoundingBox implements Enable {
@Linked
public class HopperBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
downHopper();
northHopper();
southHopper();

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Fence;
@ -32,10 +33,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class IronBarBoundingBox implements Enable {
@Linked
public class IronBarBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
for (int nx = 0; nx < 2; nx++) {
for (int nz = 0; nz < 2; nz++) {
for (int px = 0; px < 2; px++) {

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.data.type.Lantern;
@ -31,10 +32,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class LanternBoundingBox implements Enable {
@Linked
public class LanternBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
lantern();
hangingLantern();
}

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.data.BlockData;
@ -31,10 +32,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class LecternBoundingBox implements Enable {
@Linked
public class LecternBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
BlockData blockData = Material.LECTERN.createBlockData();
List<Cuboid> cuboidList = new ArrayList<>();
cuboidList.add(pixelCuboid(0, 0, 0, 16, 2, 16));

Datei anzeigen

@ -20,8 +20,9 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Stairs;
@ -32,10 +33,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class StairBoundingBox implements Enable {
@Linked
public class StairBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
straightBottomNorthStair();
straightBottomSouthStair();
straightBottomEastStair();

Datei anzeigen

@ -20,9 +20,10 @@
package de.steamwar.bausystem.features.slaves.laufbau.boundingboxes;
import de.steamwar.bausystem.features.slaves.laufbau.BlockBoundingBox;
import de.steamwar.bausystem.features.slaves.laufbau.BoundingBoxLoader;
import de.steamwar.bausystem.features.slaves.laufbau.Cuboid;
import de.steamwar.bausystem.linkage.Enable;
import de.steamwar.core.Core;
import de.steamwar.linkage.Linked;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.type.Fence;
@ -34,10 +35,11 @@ import java.util.List;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.createItem;
import static de.steamwar.bausystem.features.slaves.laufbau.LaufbauUtils.pixelCuboid;
public class WallBoundingBox implements Enable {
@Linked
public class WallBoundingBox implements BoundingBoxLoader {
@Override
public void enable() {
public void load() {
if (Core.getVersion() > 15) {
v18();
} else {