Signed-off-by: yoyosource <yoyosource@nidido.de>
Dieser Commit ist enthalten in:
Ursprung
54f220c6ed
Commit
f845ff4523
@ -58,6 +58,7 @@ public class Panzern {
|
||||
private BaseBlock blockType;
|
||||
private BaseBlock slabType;
|
||||
private static final BaseBlock jukeboxType = BlockTypes.JUKEBOX.getDefaultState().toBaseBlock();
|
||||
private static final BaseBlock hopperType = BlockTypes.HOPPER.getDefaultState().toBaseBlock();
|
||||
private static final BaseBlock airType = BlockTypes.AIR.getDefaultState().toBaseBlock();
|
||||
|
||||
@Getter
|
||||
@ -129,6 +130,10 @@ public class Panzern {
|
||||
currentBlock.setType(Material.JUKEBOX);
|
||||
editSession.getChangeSet().add(new BlockChange(BukkitAdapter.asBlockVector(currentBlock.getLocation()), airType, jukeboxType));
|
||||
break;
|
||||
case UNMOVABLE_SLAB:
|
||||
currentBlock.setType(Material.HOPPER);
|
||||
editSession.getChangeSet().add(new BlockChange(BukkitAdapter.asBlockVector(currentBlock.getLocation()), airType, hopperType));
|
||||
break;
|
||||
default:
|
||||
emptyBlocks.add(currentBlock.getLocation().toVector());
|
||||
break;
|
||||
|
@ -23,6 +23,7 @@ public enum PanzernResult {
|
||||
EMPTY,
|
||||
SLAB,
|
||||
UNMOVABLE,
|
||||
UNMOVABLE_SLAB,
|
||||
BLOCK,
|
||||
DEFAULT
|
||||
}
|
||||
|
@ -36,6 +36,13 @@ public class AdjacentHoney implements PanzernAlgorithm {
|
||||
@Override
|
||||
public PanzernResult check(Block source, Map<BlockFace, Block> adjacent, Set<Material> adjacentMaterials) {
|
||||
if (adjacentMaterials.contains(Material.HONEY_BLOCK)) {
|
||||
if (adjacent.get(BlockFace.DOWN).getType() == Material.REDSTONE_WIRE) {
|
||||
for (BlockFace face : HORIZONTAL_FACES) {
|
||||
if (adjacent.get(face).getType() == Material.REDSTONE_WIRE) {
|
||||
return PanzernResult.UNMOVABLE_SLAB;
|
||||
}
|
||||
}
|
||||
}
|
||||
return PanzernResult.UNMOVABLE;
|
||||
}
|
||||
return PanzernResult.DEFAULT;
|
||||
|
@ -36,6 +36,13 @@ public class AdjacentSlime implements PanzernAlgorithm {
|
||||
@Override
|
||||
public PanzernResult check(Block source, Map<BlockFace, Block> adjacent, Set<Material> adjacentMaterials) {
|
||||
if (adjacentMaterials.contains(Material.SLIME_BLOCK)) {
|
||||
if (adjacent.get(BlockFace.DOWN).getType() == Material.REDSTONE_WIRE) {
|
||||
for (BlockFace face : HORIZONTAL_FACES) {
|
||||
if (adjacent.get(face).getType() == Material.REDSTONE_WIRE) {
|
||||
return PanzernResult.UNMOVABLE_SLAB;
|
||||
}
|
||||
}
|
||||
}
|
||||
return PanzernResult.UNMOVABLE;
|
||||
}
|
||||
return PanzernResult.DEFAULT;
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren