@@ -50,7 +50,6 @@ public abstract class MultiblockWithDisplayBase extends MultiblockControllerBase
5050 private static final String NBT_VOIDING_MODE = "VoidingMode" ;
5151 private static final String NBT_VOIDING_ITEMS = "VoidingItems" ;
5252 private static final String NBT_VOIDING_FLUIDS = "VoidingFluids" ;
53- private static final int UI_SYNC = GregtechDataCodes .assignId ();
5453 private MultiblockUIFactory uiFactory ;
5554
5655 private boolean voidingItems = false ;
@@ -207,8 +206,6 @@ protected void formStructure(PatternMatchContext context) {
207206 }
208207 this .variantActiveBlocks = context .getOrDefault ("VABlock" , new LinkedList <>());
209208 replaceVariantBlocksActive (false );
210- if (uiFactory != null )
211- writeCustomData (UI_SYNC , uiFactory ::writeInitialSync );;
212209 }
213210
214211 @ Override
@@ -374,6 +371,7 @@ protected TraceabilityPredicate maintenancePredicate() {
374371 * each element of list is displayed on new line
375372 * to use translation, use TextComponentTranslation
376373 */
374+ @ Deprecated
377375 protected void addDisplayText (List <ITextComponent > textList ) {
378376 MultiblockDisplayText .builder (textList , isStructureFormed ());
379377 }
@@ -522,6 +520,7 @@ protected ModularUI.Builder createUITemplate(EntityPlayer entityPlayer) {
522520 * Returns a list of text indicating any current warnings in this Multiblock.
523521 * Recommended to only display warnings if the structure is already formed.
524522 */
523+ @ Deprecated
525524 protected void addWarningText (List <ITextComponent > textList ) {
526525 MultiblockDisplayText .builder (textList , isStructureFormed (), false )
527526 .addMaintenanceProblemLines (getMaintenanceProblems ());
@@ -531,6 +530,7 @@ protected void addWarningText(List<ITextComponent> textList) {
531530 * Returns a list of translation keys indicating any current errors in this Multiblock.
532531 * Prioritized over any warnings provided by {@link MultiblockWithDisplayBase#addWarningText}.
533532 */
533+ @ Deprecated
534534 protected void addErrorText (List <ITextComponent > textList ) {
535535 MultiblockDisplayText .builder (textList , isStructureFormed ())
536536 .addMufflerObstructedLine (hasMufflerMechanics () && !isMufflerFaceFree ());
@@ -570,14 +570,22 @@ public boolean usesMui2() {
570570 return true ;
571571 }
572572
573+ protected void configureDisplayText (MultiblockUIFactory .Builder builder ) {}
574+
575+ protected void configureErrorText (MultiblockUIFactory .Builder builder ) {}
576+
577+ protected void configureWarningText (MultiblockUIFactory .Builder builder ) {}
578+
573579 protected MultiblockUIFactory createUIFactory () {
574- return new MultiblockUIFactory (this );
580+ return new MultiblockUIFactory (this )
581+ .configureDisplayText (this ::configureDisplayText )
582+ .configureWarningText (this ::configureWarningText )
583+ .configureErrorText (this ::configureErrorText );
575584 }
576585
577586 @ Override
578587 public final ModularPanel buildUI (PosGuiData guiData , PanelSyncManager panelSyncManager ) {
579- if (uiFactory == null ) return null ;
580- writeCustomData (UI_SYNC , uiFactory ::writeInitialSync ); // is this too early to sync?
588+ if (uiFactory == null ) uiFactory = createUIFactory ();
581589 return this .uiFactory .buildUI (guiData , panelSyncManager );
582590 }
583591
@@ -625,8 +633,6 @@ public void writeInitialSyncData(PacketBuffer buf) {
625633 buf .writeBoolean (voidingFluids );
626634 buf .writeBoolean (voidingItems );
627635 buf .writeInt (voidingMode .ordinal ());
628- if (uiFactory == null ) uiFactory = createUIFactory ();
629- this .uiFactory .writeInitialSync (buf );
630636 }
631637
632638 @ Override
@@ -637,8 +643,6 @@ public void receiveInitialSyncData(PacketBuffer buf) {
637643 voidingFluids = buf .readBoolean ();
638644 voidingItems = buf .readBoolean ();
639645 voidingMode = VoidingMode .values ()[buf .readInt ()];
640- if (uiFactory == null ) uiFactory = createUIFactory ();
641- this .uiFactory .readInitialSync (buf );
642646 }
643647
644648 @ Override
@@ -679,10 +683,6 @@ public void receiveCustomData(int dataId, PacketBuffer buf) {
679683 if (dataId == IS_WORKING ) {
680684 lastActive = buf .readBoolean ();
681685 }
682- if (dataId == UI_SYNC ) {
683- uiFactory .readInitialSync (buf );
684- uiFactory .markDirty ();
685- }
686686 }
687687
688688 @ Override
0 commit comments