diff options
author | miozune <miozune@gmail.com> | 2022-11-28 23:35:31 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-28 15:35:31 +0100 |
commit | 03462d73b5a614fb3cbecf3abd078b2f674f20b1 (patch) | |
tree | d92fcef20190d2028dbe3ee98fd2657ea788d197 /src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java | |
parent | 00d68a2db9010fc3e6dfaa0aa68d41467cdb1469 (diff) | |
download | GT5-Unofficial-03462d73b5a614fb3cbecf3abd078b2f674f20b1.tar.gz GT5-Unofficial-03462d73b5a614fb3cbecf3abd078b2f674f20b1.tar.bz2 GT5-Unofficial-03462d73b5a614fb3cbecf3abd078b2f674f20b1.zip |
Make Waila show all the covers attached (#1527)
* Make Waila show all the covers attached
* Make full translatable
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java')
-rw-r--r-- | src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java b/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java index 580fc136e6..2d29c7b70d 100644 --- a/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java @@ -486,21 +486,32 @@ public abstract class CoverableTileEntity extends BaseTileEntity implements ICov public void getWailaBody( ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { final NBTTagCompound tag = accessor.getNBTData(); - final byte side = (byte) accessor.getSide().ordinal(); + final byte currentFacing = (byte) accessor.getSide().ordinal(); final int[] coverSides = tag.getIntArray("mCoverSides"); // Not all data is available on the client, so get it from the NBT packet - if (coverSides != null && coverSides.length == 6 && coverSides[side] != 0) { - final int coverId = coverSides[side]; - final GT_CoverBehaviorBase<?> behavior = GregTech_API.getCoverBehaviorNew(coverId); - if (behavior != null && behavior != GregTech_API.sNoBehavior) { - if (tag.hasKey(CoverableTileEntity.COVER_DATA_NBT_KEYS[side])) { - final ISerializableObject dataObject = - behavior.createDataObject(tag.getTag(CoverableTileEntity.COVER_DATA_NBT_KEYS[side])); - final ItemStack coverStack = behavior.getDisplayStack(coverId, dataObject); - if (coverStack != null) currenttip.add(String.format("Cover: %s", coverStack.getDisplayName())); - final String behaviorDesc = behavior.getDescription(side, coverId, dataObject, null); - if (!Objects.equals(behaviorDesc, E)) currenttip.add(behaviorDesc); + if (coverSides != null && coverSides.length == 6) { + for (ForgeDirection direction : ForgeDirection.VALID_DIRECTIONS) { + final byte side = (byte) direction.ordinal(); + final int coverId = coverSides[side]; + final GT_CoverBehaviorBase<?> behavior = GregTech_API.getCoverBehaviorNew(coverId); + + if (coverId != 0 && behavior != null && behavior != GregTech_API.sNoBehavior) { + if (tag.hasKey(CoverableTileEntity.COVER_DATA_NBT_KEYS[side])) { + final ISerializableObject dataObject = + behavior.createDataObject(tag.getTag(CoverableTileEntity.COVER_DATA_NBT_KEYS[side])); + final ItemStack coverStack = behavior.getDisplayStack(coverId, dataObject); + if (coverStack != null) + currenttip.add(StatCollector.translateToLocalFormatted( + "GT5U.waila.cover", + currentFacing == side + ? StatCollector.translateToLocal("GT5U.waila.cover.current_facing") + : StatCollector.translateToLocal("GT5U.interface.coverTabs." + + direction.toString().toLowerCase()), + coverStack.getDisplayName())); + final String behaviorDesc = behavior.getDescription(side, coverId, dataObject, null); + if (!Objects.equals(behaviorDesc, E)) currenttip.add(behaviorDesc); + } } } } |