Load special models in appropriate event, fixing the banner fix (#3003)

This commit is contained in:
Anton Bulakh
2021-06-09 19:01:10 +03:00
committed by GitHub
parent e372c150b0
commit 01911e2650

View File

@@ -27,10 +27,9 @@ import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.Slot; import net.minecraft.inventory.container.Slot;
import net.minecraft.item.DyeColor; import net.minecraft.item.DyeColor;
import net.minecraft.item.ItemModelsProperties; import net.minecraft.item.ItemModelsProperties;
import net.minecraft.resources.IReloadableResourceManager;
import net.minecraft.resources.IResourceManager;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.event.ModelBakeEvent; import net.minecraftforge.client.event.ModelBakeEvent;
import net.minecraftforge.client.event.ModelRegistryEvent;
import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.AddReloadListenerEvent; import net.minecraftforge.event.AddReloadListenerEvent;
@@ -143,6 +142,7 @@ public class ClientSetup {
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::onClientSetup); FMLJavaModLoadingContext.get().getModEventBus().addListener(this::onClientSetup);
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::onModelBake); FMLJavaModLoadingContext.get().getModEventBus().addListener(this::onModelBake);
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::onModelRegistry);
MinecraftForge.EVENT_BUS.addListener(new ExperimentalLightingPipelineNagger()::onPlayerLoggedIn); MinecraftForge.EVENT_BUS.addListener(new ExperimentalLightingPipelineNagger()::onPlayerLoggedIn);
MinecraftForge.EVENT_BUS.addListener(this::addReloadListener); MinecraftForge.EVENT_BUS.addListener(this::addReloadListener);
@@ -196,24 +196,6 @@ public class ClientSetup {
public void onClientSetup(FMLClientSetupEvent e) { public void onClientSetup(FMLClientSetupEvent e) {
MinecraftForge.EVENT_BUS.register(new KeyInputListener()); MinecraftForge.EVENT_BUS.register(new KeyInputListener());
ModelLoader.addSpecialModel(DISK_RESOURCE);
ModelLoader.addSpecialModel(DISK_NEAR_CAPACITY_RESOURCE);
ModelLoader.addSpecialModel(DISK_FULL_RESOURCE);
ModelLoader.addSpecialModel(DISK_DISCONNECTED_RESOURCE);
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disk_manipulator/disconnected"));
for (DyeColor color : DyeColor.values()) {
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disk_manipulator/" + color));
}
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/portable_grid_connected"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/portable_grid_disconnected"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk_near_capacity"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk_full"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk_disconnected"));
ScreenManager.registerFactory(RSContainers.FILTER, FilterScreen::new); ScreenManager.registerFactory(RSContainers.FILTER, FilterScreen::new);
ScreenManager.registerFactory(RSContainers.CONTROLLER, ControllerScreen::new); ScreenManager.registerFactory(RSContainers.CONTROLLER, ControllerScreen::new);
ScreenManager.registerFactory(RSContainers.DISK_DRIVE, DiskDriveScreen::new); ScreenManager.registerFactory(RSContainers.DISK_DRIVE, DiskDriveScreen::new);
@@ -293,6 +275,27 @@ public class ClientSetup {
event.addListener(new ResourcePackListener()); event.addListener(new ResourcePackListener());
} }
@SubscribeEvent
public void onModelRegistry(ModelRegistryEvent e) {
ModelLoader.addSpecialModel(DISK_RESOURCE);
ModelLoader.addSpecialModel(DISK_NEAR_CAPACITY_RESOURCE);
ModelLoader.addSpecialModel(DISK_FULL_RESOURCE);
ModelLoader.addSpecialModel(DISK_DISCONNECTED_RESOURCE);
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disk_manipulator/disconnected"));
for (DyeColor color : DyeColor.values()) {
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disk_manipulator/" + color));
}
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/portable_grid_connected"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/portable_grid_disconnected"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk_near_capacity"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk_full"));
ModelLoader.addSpecialModel(new ResourceLocation(RS.ID + ":block/disks/portable_grid_disk_disconnected"));
}
@SubscribeEvent @SubscribeEvent
public void onModelBake(ModelBakeEvent e) { public void onModelBake(ModelBakeEvent e) {
FullbrightBakedModel.invalidateCache(); FullbrightBakedModel.invalidateCache();