Skip to content

Commit

Permalink
Rename status field & use error method for mMachine
Browse files Browse the repository at this point in the history
  • Loading branch information
RecursivePineapple committed Feb 3, 2025
1 parent 1f88b67 commit 3c5cc24
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 23 deletions.
2 changes: 1 addition & 1 deletion src/main/java/gregtech/api/enums/StructureError.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package gregtech.api.enums;

/**
* Used as a bit set for {@link gregtech.api.metatileentity.implementations.MTEMultiBlockBase#mStructureStatus}.
* Used as a bit set for {@link gregtech.api.metatileentity.implementations.MTEMultiBlockBase#mStructureErrors}.
* You can reorder these as needed.
*/
public enum StructureError {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity
private final int randomTickOffset = (int) (Math.random() * CHECK_INTERVAL + 1);

/** A list of unparameterized structure errors. */
protected EnumSet<StructureError> mStructureStatus = EnumSet.noneOf(StructureError.class);
protected EnumSet<StructureError> mStructureErrors = EnumSet.noneOf(StructureError.class);

protected static final byte INTERRUPT_SOUND_INDEX = 8;
protected static final byte PROCESS_START_SOUND_INDEX = 1;
Expand Down Expand Up @@ -445,7 +445,7 @@ public void clearHatches() {
mMaintenanceHatches.clear();
mDualInputHatches.clear();
mSmartInputHatches.clear();
mStructureStatus = EnumSet.noneOf(StructureError.class);
mStructureErrors = EnumSet.noneOf(StructureError.class);
}

public boolean checkStructure(boolean aForceReset) {
Expand All @@ -460,7 +460,7 @@ public boolean checkStructure(boolean aForceReset, IGregTechTileEntity aBaseMeta
mMachine = checkMachine(aBaseMetaTileEntity, mInventory[1]);
// intentionally not predicated on checkMachine
validateStructure();
if (!mStructureStatus.isEmpty()) mMachine = false;
if (hasStructureErrors()) mMachine = false;
}
mStructureChanged = false;
return mMachine;
Expand All @@ -469,15 +469,15 @@ public boolean checkStructure(boolean aForceReset, IGregTechTileEntity aBaseMeta
/**
* Validates this multi's structure (hatch/casing counts mainly) for any errors.
* Runs regardless of whether the structure is complete. Check or update {@link #mMachine} as needed.
* Should update {@link #mStructureStatus} as needed.
* Should update {@link #mStructureErrors} as needed.
*/
protected void validateStructure() {

}

/**
* Scans {@link #mStructureStatus} or other fields as needed and emits localized structure error messages.
* mStructureStatus is synced already, but any newly introduced fields need to be synced manually.
* Scans {@link #mStructureErrors} or other fields as needed and emits localized structure error messages.
* mStructureErrors is synced already, but any newly introduced fields need to be synced manually.
*/
@SideOnly(Side.CLIENT)
protected void getStructureErrors(ArrayList<String> lines) {
Expand All @@ -489,7 +489,7 @@ protected void getStructureErrors(ArrayList<String> lines) {
* check them here.
*/
protected boolean hasStructureErrors() {
return !mStructureStatus.isEmpty();
return !mStructureErrors.isEmpty();
}

/**
Expand Down Expand Up @@ -2708,8 +2708,8 @@ protected void drawTexts(DynamicPositionedColumn screenElements, SlotWidget inve

screenElements.widget(
new FakeSyncWidget<EnumSet<StructureError>>(
() -> mStructureStatus,
status -> mStructureStatus = status,
() -> mStructureErrors,
status -> mStructureErrors = status,
(packetBuffer, structureErrors) -> {
BitSet bits = new BitSet();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -498,15 +498,15 @@ public void updateSlots() {
protected void getStructureErrors(ArrayList<String> lines) {
super.getStructureErrors(lines);

if (mStructureStatus.contains(StructureError.MISSING_MAINTENANCE)) {
if (mStructureErrors.contains(StructureError.MISSING_MAINTENANCE)) {
lines.add(I18n.format("GT5U.gui.text.no_maintenance"));
}

if (mStructureStatus.contains(StructureError.MISSING_MUFFLER)) {
if (mStructureErrors.contains(StructureError.MISSING_MUFFLER)) {
lines.add(I18n.format("GT5U.gui.text.no_muffler"));
}

if (mStructureStatus.contains(StructureError.UNNEEDED_MUFFLER)) {
if (mStructureErrors.contains(StructureError.UNNEEDED_MUFFLER)) {
lines.add(I18n.format("GT5U.gui.text.unneeded_muffler"));
}
}
Expand All @@ -516,15 +516,15 @@ protected void validateStructure() {
super.validateStructure();

if (mMaintenanceHatches.isEmpty()) {
mStructureStatus.add(StructureError.MISSING_MAINTENANCE);
mStructureErrors.add(StructureError.MISSING_MAINTENANCE);
}

if (this.getPollutionPerSecond(null) > 0 && mMufflerHatches.isEmpty()) {
mStructureStatus.add(StructureError.MISSING_MUFFLER);
mStructureErrors.add(StructureError.MISSING_MUFFLER);
}

if (this.getPollutionPerSecond(null) == 0 && !mMufflerHatches.isEmpty()) {
mStructureStatus.add(StructureError.UNNEEDED_MUFFLER);
mStructureErrors.add(StructureError.UNNEEDED_MUFFLER);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -172,15 +172,15 @@ public void validateStructure() {
super.validateStructure();

if (mCasing < 10) {
mStructureStatus.add(StructureError.TOO_FEW_CASINGS);
mStructureErrors.add(StructureError.TOO_FEW_CASINGS);
}

if (mCryotheumHatches.isEmpty()) {
mStructureStatus.add(StructureError.MISSING_CRYO_HATCH);
mStructureErrors.add(StructureError.MISSING_CRYO_HATCH);
}

if (mCryotheumHatches.size() > 1) {
mStructureStatus.add(StructureError.TOO_MANY_CRYO_HATCHES);
mStructureErrors.add(StructureError.TOO_MANY_CRYO_HATCHES);
}
}

Expand All @@ -196,15 +196,15 @@ protected void drawTexts(DynamicPositionedColumn screenElements, SlotWidget inve
protected void getStructureErrors(ArrayList<String> lines) {
super.getStructureErrors(lines);

if (mStructureStatus.contains(StructureError.TOO_FEW_CASINGS)) {
if (mStructureErrors.contains(StructureError.TOO_FEW_CASINGS)) {
lines.add(I18n.format("GT5U.gui.missing_casings", 10, mCasing));
}

if (mStructureStatus.contains(StructureError.MISSING_CRYO_HATCH)) {
if (mStructureErrors.contains(StructureError.MISSING_CRYO_HATCH)) {
lines.add(I18n.format("GT5U.gui.missing_hatch", HATCH_NAME));
}

if (mStructureStatus.contains(StructureError.TOO_MANY_CRYO_HATCHES)) {
if (mStructureErrors.contains(StructureError.TOO_MANY_CRYO_HATCHES)) {
lines.add(I18n.format("GT5U.gui.too_many_hatches", HATCH_NAME, 1));
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1041,7 +1041,7 @@ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
}
mMachine = checkMachine(aBaseMetaTileEntity, mInventory[1]);
validateStructure();
if (!mStructureStatus.isEmpty()) mMachine = false;
if (hasStructureErrors()) mMachine = false;

if (!mMachine) {
if (ePowerPass && getEUVar() > V[3]
Expand Down

0 comments on commit 3c5cc24

Please sign in to comment.