@@ -26,6 +26,7 @@ public final class ConfigSpec {
2626 public static final ConfigFile .Value <CoreBlockBehaviour > CORE_BLOCK_BEHAVIOUR ;
2727 public static final ConfigFile .Value <List <? extends String >> CORE_BLOCKS ;
2828
29+ public static final ConfigFile .Value <Boolean > ENABLE_TRANSFORM_PROVIDER_PROTECTION ;
2930 public static final ConfigFile .Value <Boolean > ENABLE_PLAYER_PROTECTION ;
3031 public static final ConfigFile .Value <Integer > PLAYER_PROTECTION_RADIUS ;
3132
@@ -127,8 +128,12 @@ private ConfigSpec() {}
127128
128129 {
129130 builder
130- .comment ("Block count cleaner settings" )
131- .push ("block_count_cleaner" );
131+ .comment ("Clean protection settings" )
132+ .push ("clean_protection" );
133+
134+ ENABLE_TRANSFORM_PROVIDER_PROTECTION = builder
135+ .comment ("Prevent ships has transform providers to be cleaned (e.g. Create: Interactive contraptions)" )
136+ .define ("enable_transform_provider_protection" , Config .enableTransformProviderProtection );
132137
133138 ENABLE_PLAYER_PROTECTION = builder
134139 .comment ("Prevent ship cleanup within player's certain distance." )
@@ -152,14 +157,18 @@ public static void syncServer(Path path) {
152157 Config .asyncShipSplit = ASYNC_SHIP_SPLIT .get ();
153158 Config .enableTreeFalling = ENABLE_TREE_FALLING .get ();
154159 Config .decayMethod = DECAY_METHOD .get ();
160+
155161 Config .enableShipPeriodicCleanup = ENABLE_SHIP_PERIODIC_CLEANUP .get ();
156162 Config .shipCleanPeriod = SHIP_CLEAN_PERIOD .get ();
157163 Config .shipCleanMethod = SHIP_CLEAN_METHOD .get ();
158164 Config .cleanupMessageLevel = CLEANUP_MESSAGE_LEVEL .get ();
165+
159166 Config .enableBlockCountCleanup = ENABLE_BLOCK_COUNT_CLEANUP .get ();
160167 Config .minimumBlocksShipNeeds = MINIMUM_BLOCKS_SHIP_NEEDS .get ();
161168 Config .coreBlockBehaviour = CORE_BLOCK_BEHAVIOUR .get ();
162169 Config .coreBlocks = Set .copyOf (CORE_BLOCKS .get ().stream ().map (ResourceLocation ::new ).toList ());
170+
171+ Config .enableTransformProviderProtection = ENABLE_TRANSFORM_PROVIDER_PROTECTION .get ();
163172 Config .enablePlayerProtection = ENABLE_PLAYER_PROTECTION .get ();
164173 Config .playerProtectionRadius = PLAYER_PROTECTION_RADIUS .get ();
165174 }
0 commit comments