Skip to content

Commit

Permalink
Removed ICoverable::getComplexCoverDataAtSide
Browse files Browse the repository at this point in the history
The intent is to limit convoluted chained calls. If you want information about the cover, ask the CoverInfo. Usually you don't need the data, you want to call some other method on it.
  • Loading branch information
YannickMG committed Feb 1, 2025
1 parent d5d7a34 commit dfe83c6
Show file tree
Hide file tree
Showing 8 changed files with 20 additions and 25 deletions.
8 changes: 2 additions & 6 deletions src/main/java/gregtech/api/gui/modularui/GTUIInfos.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
import gregtech.api.enums.GTValues;
import gregtech.api.interfaces.tileentity.ICoverable;
import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords;
import gregtech.api.net.GTPacketSendCoverData;
import gregtech.common.covers.CoverInfo;

public class GTUIInfos {
Expand Down Expand Up @@ -105,11 +104,8 @@ public static void openCoverUI(ICoverable tileEntity, EntityPlayer player, Forge
if (tileEntity.isClientSide()) return;

GTValues.NW.sendToPlayer(
new GTPacketSendCoverData(
side,
tileEntity.getCoverIDAtSide(side),
tileEntity.getComplexCoverDataAtSide(side),
tileEntity),
tileEntity.getCoverInfoAtSide(side)
.toPacket(),
(EntityPlayerMP) player);

coverUI.get(side)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import net.minecraftforge.common.util.ForgeDirection;

import gregtech.api.interfaces.tileentity.ICoverable;
import gregtech.api.util.ISerializableObject;
import gregtech.common.covers.CoverInfo;

/**
Expand Down Expand Up @@ -40,7 +41,7 @@ public interface IRedstoneCircuitBlock {

int getCoverID(ForgeDirection side);

int getCoverVariable(ForgeDirection side);
ISerializableObject getCoverData(ForgeDirection side);

/**
* returns whatever Block-ID is adjacent to the Redstone Circuit Block
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,6 @@ default CoverInfo getCoverInfoAtSide(ForgeDirection side) {
return null;
}

default ISerializableObject getComplexCoverDataAtSide(ForgeDirection side) {
return new ISerializableObject.LegacyCoverData(getCoverDataAtSide(side));
}

int getCoverIDAtSide(ForgeDirection side);

ItemStack getCoverItemAtSide(ForgeDirection side);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -333,11 +333,6 @@ public int getCoverDataAtSide(ForgeDirection side) {
return 0;
}

@Override
public ISerializableObject getComplexCoverDataAtSide(ForgeDirection side) {
return getCoverInfoAtSide(side).getCoverData();
}

public final void setCoverInfoAtSide(ForgeDirection side, CoverInfo coverInfo) {
if (side != ForgeDirection.UNKNOWN) {
coverInfos[side.ordinal()] = coverInfo;
Expand Down
3 changes: 2 additions & 1 deletion src/main/java/gregtech/api/util/CoverBehaviorBase.java
Original file line number Diff line number Diff line change
Expand Up @@ -484,7 +484,8 @@ public T getCoverData() {
if (isCoverValid()) {
return forceCast(
getUIBuildContext().getTile()
.getComplexCoverDataAtSide(getUIBuildContext().getCoverSide()));
.getCoverInfoAtSide(getUIBuildContext().getCoverSide())
.getCoverData());
} else {
return null;
}
Expand Down
5 changes: 5 additions & 0 deletions src/main/java/gregtech/common/covers/CoverInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
import gregtech.api.gui.modularui.CoverUIBuildContext;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.ICoverable;
import gregtech.api.net.GTPacketSendCoverData;
import gregtech.api.objects.GTCoverNone;
import gregtech.api.util.CoverBehaviorBase;
import gregtech.api.util.GTUtility;
Expand Down Expand Up @@ -381,4 +382,8 @@ public ModularUIContainer createCoverContainer(EntityPlayer player) {
if (window == null) return null;
return new ModularUIContainer(new ModularUIContext(buildContext, tile::markDirty), window);
}

public GTPacketSendCoverData toPacket() {
return new GTPacketSendCoverData(this.coverSide, this.coverID, this.coverData, this.coveredTile.get());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import gregtech.api.util.GTLanguageManager;
import gregtech.api.util.GTUtility;
import gregtech.api.util.ISerializableObject;
import gregtech.common.covers.CoverInfo;

public class BehaviourCoverTool extends BehaviourNone {

Expand Down Expand Up @@ -120,12 +121,11 @@ private void doCopy(TileEntity aTileEntity, World aWorld, int aX, int aY, int aZ
? GTUtility.determineWrenchingSide(side, hitX, hitY, hitZ)
: ForgeDirection.UNKNOWN;
if (tSide != ForgeDirection.UNKNOWN) {
if (tCoverable.getCoverInfoAtSide(tSide)
.allowsCopyPasteTool()) {
mStoredData = tCoverable.getComplexCoverDataAtSide(tSide);
mCoverType = tCoverable.getCoverIDAtSide(tSide);
mTickRateAddition = tCoverable.getCoverInfoAtSide(tSide)
.getTickRateAddition();
CoverInfo coverInfo = tCoverable.getCoverInfoAtSide(tSide);
if (coverInfo.allowsCopyPasteTool()) {
mStoredData = coverInfo.getCoverData();
mCoverType = coverInfo.getCoverID();
mTickRateAddition = coverInfo.getTickRateAddition();

aList.add("Block Side: " + EnumChatFormatting.AQUA + tSide.name() + EnumChatFormatting.RESET);
aList.add(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -405,8 +405,9 @@ public int getCoverID(ForgeDirection side) {
}

@Override
public int getCoverVariable(ForgeDirection side) {
return ((ISerializableObject.LegacyCoverData) getBaseMetaTileEntity().getComplexCoverDataAtSide(side)).get();
public ISerializableObject getCoverData(ForgeDirection side) {
return getBaseMetaTileEntity().getCoverInfoAtSide(side)
.getCoverData();
}

@Override
Expand Down

0 comments on commit dfe83c6

Please sign in to comment.