Add custom model loader + baked model to simplify bus cable block state.

Also added small supports at ends and bends to make cables look less floaty.
This commit is contained in:
Florian Nücke
2021-01-09 18:12:50 +01:00
parent f9df904aea
commit 25444a5382
20 changed files with 317 additions and 9573 deletions

View File

@@ -1,20 +1,32 @@
package li.cil.oc2.client;
import li.cil.oc2.api.API;
import li.cil.oc2.client.gui.ComputerContainerScreen;
import li.cil.oc2.client.model.BusCableModelLoader;
import li.cil.oc2.client.renderer.NetworkCableRenderer;
import li.cil.oc2.client.renderer.tileentity.ComputerTileEntityRenderer;
import li.cil.oc2.common.container.Containers;
import li.cil.oc2.common.tileentity.TileEntities;
import net.minecraft.client.gui.ScreenManager;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.event.ModelRegistryEvent;
import net.minecraftforge.client.model.ModelLoaderRegistry;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.client.registry.ClientRegistry;
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
public final class ClientSetup {
public static void run(final FMLClientSetupEvent event) {
@SubscribeEvent
public static void handleSetupEvent(final FMLClientSetupEvent event) {
NetworkCableRenderer.initialize();
ScreenManager.registerFactory(Containers.COMPUTER_CONTAINER.get(), ComputerContainerScreen::new);
ClientRegistry.bindTileEntityRenderer(TileEntities.COMPUTER_TILE_ENTITY.get(), ComputerTileEntityRenderer::new);
}
@SubscribeEvent
public static void handleModelRegistryEvent(final ModelRegistryEvent event) {
ModelLoaderRegistry.registerLoader(new ResourceLocation(API.MOD_ID, "bus_cable"), new BusCableModelLoader());
}
}