11package me .kall .fluidium ;
22
3+ import com .google .common .base .Suppliers ;
34import me .kall .fluidium .common .api .IFluid ;
45import me .kall .fluidium .common .config .FluidiumConfig ;
56import net .minecraft .core .BlockPos ;
1819import net .minecraftforge .registries .ForgeRegistries ;
1920import org .jetbrains .annotations .NotNull ;
2021
22+ import java .util .HashSet ;
2123import java .util .List ;
24+ import java .util .Set ;
25+ import java .util .function .Supplier ;
26+ import java .util .stream .Collectors ;
2227
2328@ Mod (Fluidium .MOD_ID )
2429public final class Fluidium {
2530 public static final String MOD_ID = "fluidium" ;
2631
32+ private static final Supplier <Set <ResourceLocation >> BLACKLIST = Suppliers .memoize (() -> FluidiumConfig .BLACKLIST .get ().stream ().map (ResourceLocation ::parse ).collect (Collectors .toSet ()));
33+ private static final Supplier <Set <String >> MOD_ID_LIST = Suppliers .memoize (() -> new HashSet <>(FluidiumConfig .MOD_ID_LIST .get ()));
34+
2735 public Fluidium (@ NotNull FMLJavaModLoadingContext context ) {
2836 context .registerConfig (ModConfig .Type .COMMON , FluidiumConfig .INSTANCE );
2937 IEventBus modBus = context .getModEventBus ();
@@ -36,7 +44,7 @@ private static void updateFluidTickable(boolean update) {
3644 ForgeRegistries .FLUIDS .getEntries ().forEach (entry -> {
3745 ResourceLocation id = entry .getKey ().location ();
3846 Fluid fluid = entry .getValue ();
39- boolean alwaysTick = FluidiumConfig . BLACKLIST .get ().contains (id . toString ()) || FluidiumConfig . MOD_ID_LIST .get ().contains (id .getNamespace ());
47+ boolean alwaysTick = BLACKLIST .get ().contains (id ) || MOD_ID_LIST .get ().contains (id .getNamespace ());
4048 ((IFluid ) fluid ).fluidium$setShouldAlwaysTick (alwaysTick );
4149 });
4250 }
0 commit comments