diff options
author | Glease <4586901+Glease@users.noreply.github.com> | 2022-08-10 13:07:08 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-10 07:07:08 +0200 |
commit | 0b53aeb032fb7fdfcf6b02d75f75cdfe84e20d89 (patch) | |
tree | 6730ed376e5a2c17bbf9a27e73741fc531294b93 /src/main/java/gregtech | |
parent | 39a672b7c4b7b9033d4577c6dae1d4ea0a414ee3 (diff) | |
download | GT5-Unofficial-0b53aeb032fb7fdfcf6b02d75f75cdfe84e20d89.tar.gz GT5-Unofficial-0b53aeb032fb7fdfcf6b02d75f75cdfe84e20d89.tar.bz2 GT5-Unofficial-0b53aeb032fb7fdfcf6b02d75f75cdfe84e20d89.zip |
do not return IAlignment if MTE is not IAlignmentProvider (#1234)
Diffstat (limited to 'src/main/java/gregtech')
-rw-r--r-- | src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java | 21 | ||||
-rw-r--r-- | src/main/java/gregtech/common/render/GT_RenderedTexture.java | 9 |
2 files changed, 8 insertions, 22 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java index 0af728ef27..b68715770c 100644 --- a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java @@ -2079,7 +2079,8 @@ public class BaseMetaTileEntity extends CommonMetaTileEntity implements IGregTec @Override public IAlignment getAlignment() { - return getMetaTileEntity() instanceof IAlignmentProvider ? ((IAlignmentProvider) getMetaTileEntity()).getAlignment() : new BasicAlignment(); + return getMetaTileEntity() instanceof IAlignmentProvider ? ((IAlignmentProvider) getMetaTileEntity()).getAlignment() : + getMetaTileEntity() instanceof IAlignment ? (IAlignment) getMetaTileEntity() : null; } @Nullable @@ -2087,22 +2088,4 @@ public class BaseMetaTileEntity extends CommonMetaTileEntity implements IGregTec public IConstructable getConstructable() { return getMetaTileEntity() instanceof IConstructable ? (IConstructable) getMetaTileEntity() : null; } - - private class BasicAlignment implements IAlignment { - - @Override - public ExtendedFacing getExtendedFacing() { - return ExtendedFacing.of(ForgeDirection.getOrientation(getFrontFacing())); - } - - @Override - public void setExtendedFacing(ExtendedFacing alignment) { - setFrontFacing((byte) Math.min(alignment.getDirection().ordinal(), ForgeDirection.UNKNOWN.ordinal() - 1)); - } - - @Override - public IAlignmentLimits getAlignmentLimits() { - return (direction, rotation, flip) -> rotation.isNotRotated() && flip.isNotFlipped(); - } - } } diff --git a/src/main/java/gregtech/common/render/GT_RenderedTexture.java b/src/main/java/gregtech/common/render/GT_RenderedTexture.java index 8cead2889b..94b0e72419 100644 --- a/src/main/java/gregtech/common/render/GT_RenderedTexture.java +++ b/src/main/java/gregtech/common/render/GT_RenderedTexture.java @@ -1,5 +1,6 @@ package gregtech.common.render; +import com.gtnewhorizon.structurelib.alignment.IAlignment; import com.gtnewhorizon.structurelib.alignment.IAlignmentProvider; import com.gtnewhorizon.structurelib.alignment.enumerable.ExtendedFacing; import com.gtnewhorizon.structurelib.alignment.enumerable.Flip; @@ -365,16 +366,18 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol final World w = player.getEntityWorld(); if (w == null) return ExtendedFacing.DEFAULT; final TileEntity te = w.getTileEntity(x, y, z); + IAlignment alignment = null; if (te instanceof IGregTechTileEntity) { final IMetaTileEntity meta = ((IGregTechTileEntity) te).getMetaTileEntity(); if (meta instanceof IAlignmentProvider) { - return ((IAlignmentProvider) meta).getAlignment().getExtendedFacing(); + alignment = ((IAlignmentProvider) meta).getAlignment(); } else if (meta != null) { return ExtendedFacing.of(ForgeDirection.getOrientation(meta.getBaseMetaTileEntity().getFrontFacing())); } } else if (te instanceof IAlignmentProvider) { - return ((IAlignmentProvider) te).getAlignment().getExtendedFacing(); + alignment = ((IAlignmentProvider) te).getAlignment(); } + if (alignment != null) return alignment.getExtendedFacing(); return ExtendedFacing.DEFAULT; } -}
\ No newline at end of file +} |