mirror of
				https://github.com/SquidDev-CC/CC-Tweaked
				synced 2025-10-31 13:42:59 +00:00 
			
		
		
		
	Remap all blocks and items to underscore_case
This makes block/model names a little mode consistent and should help with porting to 1.11.2. - Prefix all tile entities with "computercraft:". - Change all "pascalCase" and "CC-*" items to use underscore_case - Listen to the missing mappings event and gracefully convert blocks/items.
This commit is contained in:
		| @@ -90,6 +90,7 @@ import java.util.Map; | |||||||
| public class ComputerCraft | public class ComputerCraft | ||||||
| { | { | ||||||
|     public static final String MOD_ID = "ComputerCraft"; |     public static final String MOD_ID = "ComputerCraft"; | ||||||
|  |     public static final String LOWER_ID = "computercraft"; | ||||||
|  |  | ||||||
|     // GUI IDs |     // GUI IDs | ||||||
|     public static final int diskDriveGUIID = 100; |     public static final int diskDriveGUIID = 100; | ||||||
| @@ -334,6 +335,14 @@ public class ComputerCraft | |||||||
|         turtleProxy.init(); |         turtleProxy.init(); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |  | ||||||
|  |     @Mod.EventHandler | ||||||
|  |     public void onMissingMappings( FMLMissingMappingsEvent event ) | ||||||
|  |     { | ||||||
|  |         proxy.remap( event ); | ||||||
|  |         turtleProxy.remap( event ); | ||||||
|  |     } | ||||||
|  |  | ||||||
|     @Mod.EventHandler |     @Mod.EventHandler | ||||||
|     public void onServerStarting( FMLServerStartingEvent event ) |     public void onServerStarting( FMLServerStartingEvent event ) | ||||||
|     { |     { | ||||||
|   | |||||||
| @@ -34,10 +34,12 @@ import net.minecraft.item.Item; | |||||||
| import net.minecraft.item.ItemStack; | import net.minecraft.item.ItemStack; | ||||||
| import net.minecraft.item.crafting.CraftingManager; | import net.minecraft.item.crafting.CraftingManager; | ||||||
| import net.minecraft.item.crafting.IRecipe; | import net.minecraft.item.crafting.IRecipe; | ||||||
|  | import net.minecraft.tileentity.TileEntity; | ||||||
| import net.minecraft.util.ResourceLocation; | import net.minecraft.util.ResourceLocation; | ||||||
| import net.minecraftforge.common.MinecraftForge; | import net.minecraftforge.common.MinecraftForge; | ||||||
| import net.minecraftforge.event.entity.living.LivingDropsEvent; | import net.minecraftforge.event.entity.living.LivingDropsEvent; | ||||||
| import net.minecraftforge.fml.common.ObfuscationReflectionHelper; | import net.minecraftforge.fml.common.ObfuscationReflectionHelper; | ||||||
|  | import net.minecraftforge.fml.common.event.FMLMissingMappingsEvent; | ||||||
| import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; | import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; | ||||||
| import net.minecraftforge.fml.common.registry.EntityRegistry; | import net.minecraftforge.fml.common.registry.EntityRegistry; | ||||||
| import net.minecraftforge.fml.common.registry.GameRegistry; | import net.minecraftforge.fml.common.registry.GameRegistry; | ||||||
| @@ -329,14 +331,14 @@ public abstract class CCTurtleProxyCommon implements ICCTurtleProxy | |||||||
|         // Blocks |         // Blocks | ||||||
|         // Turtle |         // Turtle | ||||||
|         ComputerCraft.Blocks.turtle = BlockTurtle.createTurtleBlock(); |         ComputerCraft.Blocks.turtle = BlockTurtle.createTurtleBlock(); | ||||||
|         registerBlock( ComputerCraft.Blocks.turtle, new ItemTurtleLegacy(ComputerCraft.Blocks.turtle), "CC-Turtle" ); |         registerBlock( ComputerCraft.Blocks.turtle, new ItemTurtleLegacy(ComputerCraft.Blocks.turtle), "turtle" ); | ||||||
|  |  | ||||||
|         ComputerCraft.Blocks.turtleExpanded = BlockTurtle.createTurtleBlock(); |         ComputerCraft.Blocks.turtleExpanded = BlockTurtle.createTurtleBlock(); | ||||||
|         registerBlock( ComputerCraft.Blocks.turtleExpanded, new ItemTurtleNormal( ComputerCraft.Blocks.turtleExpanded ), "CC-TurtleExpanded" ); |         registerBlock( ComputerCraft.Blocks.turtleExpanded, new ItemTurtleNormal( ComputerCraft.Blocks.turtleExpanded ), "turtle_expanded" ); | ||||||
|  |  | ||||||
|         // Advanced Turtle |         // Advanced Turtle | ||||||
|         ComputerCraft.Blocks.turtleAdvanced = BlockTurtle.createTurtleBlock(); |         ComputerCraft.Blocks.turtleAdvanced = BlockTurtle.createTurtleBlock(); | ||||||
|         registerBlock( ComputerCraft.Blocks.turtleAdvanced, new ItemTurtleAdvanced( ComputerCraft.Blocks.turtleAdvanced ), "CC-TurtleAdvanced" ); |         registerBlock( ComputerCraft.Blocks.turtleAdvanced, new ItemTurtleAdvanced( ComputerCraft.Blocks.turtleAdvanced ), "turtle_advanced" ); | ||||||
|  |  | ||||||
|         // Recipe types |         // Recipe types | ||||||
|         RecipeSorter.register( "computercraft:turtle", TurtleRecipe.class, RecipeSorter.Category.SHAPED, "after:minecraft:shapeless" ); |         RecipeSorter.register( "computercraft:turtle", TurtleRecipe.class, RecipeSorter.Category.SHAPED, "after:minecraft:shapeless" ); | ||||||
| @@ -406,17 +408,60 @@ public abstract class CCTurtleProxyCommon implements ICCTurtleProxy | |||||||
|         registerTurtleUpgradeInternal( ComputerCraft.Upgrades.advancedModem ); |         registerTurtleUpgradeInternal( ComputerCraft.Upgrades.advancedModem ); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     private void registerBlock( Block block, Item item, String name) { |     @Override | ||||||
|  |     public void remap( FMLMissingMappingsEvent mappings ) | ||||||
|  |     { | ||||||
|  |         // We have to use mappings.getAll() as the mod ID is upper case but the domain lower. | ||||||
|  |         for( FMLMissingMappingsEvent.MissingMapping mapping : mappings.getAll() ) | ||||||
|  |         { | ||||||
|  |             String domain = mapping.resourceLocation.getResourceDomain(); | ||||||
|  |             if( !domain.equalsIgnoreCase( ComputerCraft.MOD_ID ) ) continue; | ||||||
|  |  | ||||||
|  |             String key = mapping.resourceLocation.getResourcePath(); | ||||||
|  |             if( key.equals( "CC-Turtle" ) ) | ||||||
|  |             { | ||||||
|  |                 remap( mapping, ComputerCraft.Blocks.turtle ); | ||||||
|  |             } | ||||||
|  |             else if( key.equals( "CC-TurtleExpanded" ) ) | ||||||
|  |             { | ||||||
|  |                 remap( mapping, ComputerCraft.Blocks.turtleExpanded ); | ||||||
|  |             } | ||||||
|  |             else if( key.equals( "CC-TurtleAdvanced" ) ) | ||||||
|  |             { | ||||||
|  |                 remap( mapping, ComputerCraft.Blocks.turtleAdvanced ); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private static void remap( FMLMissingMappingsEvent.MissingMapping mapping, Block block ) | ||||||
|  |     { | ||||||
|  |         if( mapping.type == GameRegistry.Type.BLOCK ) | ||||||
|  |         { | ||||||
|  |             mapping.remap( block ); | ||||||
|  |         } | ||||||
|  |         else | ||||||
|  |         { | ||||||
|  |             mapping.remap( Item.getItemFromBlock( block ) ); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private void registerBlock( Block block, Item item, String name ) | ||||||
|  |     { | ||||||
|         GameRegistry.register( block.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); |         GameRegistry.register( block.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); | ||||||
|         GameRegistry.register( item.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); |         GameRegistry.register( item.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     private void registerTileEntity( Class<? extends TileEntity> klass, String name ) | ||||||
|  |     { | ||||||
|  |         GameRegistry.registerTileEntityWithAlternatives( klass, ComputerCraft.LOWER_ID + " : " + name, name ); | ||||||
|  |     } | ||||||
|  |  | ||||||
|     private void registerTileEntities() |     private void registerTileEntities() | ||||||
|     { |     { | ||||||
|         // TileEntities |         // TileEntities | ||||||
|         GameRegistry.registerTileEntity( TileTurtle.class, "turtle" ); |         registerTileEntity( TileTurtle.class, "turtle" ); | ||||||
|         GameRegistry.registerTileEntity( TileTurtleExpanded.class, "turtleex" ); |         registerTileEntity( TileTurtleExpanded.class, "turtleex" ); | ||||||
|         GameRegistry.registerTileEntity( TileTurtleAdvanced.class, "turtleadv" ); |         registerTileEntity( TileTurtleAdvanced.class, "turtleadv" ); | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     private void registerForgeHandlers() |     private void registerForgeHandlers() | ||||||
|   | |||||||
| @@ -9,7 +9,6 @@ package dan200.computercraft.shared.proxy; | |||||||
| import dan200.computercraft.ComputerCraft; | import dan200.computercraft.ComputerCraft; | ||||||
| import dan200.computercraft.api.ComputerCraftAPI; | import dan200.computercraft.api.ComputerCraftAPI; | ||||||
| import dan200.computercraft.api.pocket.IPocketUpgrade; | import dan200.computercraft.api.pocket.IPocketUpgrade; | ||||||
| import dan200.computercraft.core.computer.Computer; |  | ||||||
| import dan200.computercraft.core.computer.MainThread; | import dan200.computercraft.core.computer.MainThread; | ||||||
| import dan200.computercraft.shared.common.DefaultBundledRedstoneProvider; | import dan200.computercraft.shared.common.DefaultBundledRedstoneProvider; | ||||||
| import dan200.computercraft.shared.common.TileGeneric; | import dan200.computercraft.shared.common.TileGeneric; | ||||||
| @@ -75,6 +74,7 @@ import net.minecraftforge.common.MinecraftForge; | |||||||
| import net.minecraftforge.event.world.WorldEvent; | import net.minecraftforge.event.world.WorldEvent; | ||||||
| import net.minecraftforge.fml.client.event.ConfigChangedEvent; | import net.minecraftforge.fml.client.event.ConfigChangedEvent; | ||||||
| import net.minecraftforge.fml.common.ObfuscationReflectionHelper; | import net.minecraftforge.fml.common.ObfuscationReflectionHelper; | ||||||
|  | import net.minecraftforge.fml.common.event.FMLMissingMappingsEvent; | ||||||
| import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; | import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; | ||||||
| import net.minecraftforge.fml.common.gameevent.TickEvent; | import net.minecraftforge.fml.common.gameevent.TickEvent; | ||||||
| import net.minecraftforge.fml.common.network.FMLNetworkEvent; | import net.minecraftforge.fml.common.network.FMLNetworkEvent; | ||||||
| @@ -234,15 +234,15 @@ public abstract class ComputerCraftProxyCommon implements IComputerCraftProxy | |||||||
|         // Blocks |         // Blocks | ||||||
|         // Computer |         // Computer | ||||||
|         ComputerCraft.Blocks.computer = new BlockComputer(); |         ComputerCraft.Blocks.computer = new BlockComputer(); | ||||||
|         registerBlock( ComputerCraft.Blocks.computer, new ItemComputer( ComputerCraft.Blocks.computer ), "CC-Computer" ); |         registerBlock( ComputerCraft.Blocks.computer, new ItemComputer( ComputerCraft.Blocks.computer ), "computer" ); | ||||||
|  |  | ||||||
|         // Peripheral |         // Peripheral | ||||||
|         ComputerCraft.Blocks.peripheral = new BlockPeripheral(); |         ComputerCraft.Blocks.peripheral = new BlockPeripheral(); | ||||||
|         registerBlock( ComputerCraft.Blocks.peripheral, new ItemPeripheral( ComputerCraft.Blocks.peripheral ), "CC-Peripheral" ); |         registerBlock( ComputerCraft.Blocks.peripheral, new ItemPeripheral( ComputerCraft.Blocks.peripheral ), "peripheral" ); | ||||||
|  |  | ||||||
|         // Cable |         // Cable | ||||||
|         ComputerCraft.Blocks.cable = new BlockCable(); |         ComputerCraft.Blocks.cable = new BlockCable(); | ||||||
|         registerBlock( ComputerCraft.Blocks.cable, new ItemCable( ComputerCraft.Blocks.cable ), "CC-Cable" ); |         registerBlock( ComputerCraft.Blocks.cable, new ItemCable( ComputerCraft.Blocks.cable ), "cable" ); | ||||||
|  |  | ||||||
|         // Command Computer |         // Command Computer | ||||||
|         ComputerCraft.Blocks.commandComputer = new BlockCommandComputer(); |         ComputerCraft.Blocks.commandComputer = new BlockCommandComputer(); | ||||||
| @@ -258,11 +258,11 @@ public abstract class ComputerCraftProxyCommon implements IComputerCraftProxy | |||||||
|         GameRegistry.register( ComputerCraft.Items.disk.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "disk" ) ) ); |         GameRegistry.register( ComputerCraft.Items.disk.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "disk" ) ) ); | ||||||
|  |  | ||||||
|         ComputerCraft.Items.diskExpanded = new ItemDiskExpanded(); |         ComputerCraft.Items.diskExpanded = new ItemDiskExpanded(); | ||||||
|         GameRegistry.register( ComputerCraft.Items.diskExpanded.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "diskExpanded" ) ) ); |         GameRegistry.register( ComputerCraft.Items.diskExpanded.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "disk_expanded" ) ) ); | ||||||
|  |  | ||||||
|         // Treasure Disk |         // Treasure Disk | ||||||
|         ComputerCraft.Items.treasureDisk = new ItemTreasureDisk(); |         ComputerCraft.Items.treasureDisk = new ItemTreasureDisk(); | ||||||
|         GameRegistry.register( ComputerCraft.Items.treasureDisk.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "treasureDisk" ) ) ); |         GameRegistry.register( ComputerCraft.Items.treasureDisk.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "treasure_disk" ) ) ); | ||||||
|  |  | ||||||
|         // Printout |         // Printout | ||||||
|         ComputerCraft.Items.printout = new ItemPrintout(); |         ComputerCraft.Items.printout = new ItemPrintout(); | ||||||
| @@ -270,7 +270,7 @@ public abstract class ComputerCraftProxyCommon implements IComputerCraftProxy | |||||||
|  |  | ||||||
|         // Pocket computer |         // Pocket computer | ||||||
|         ComputerCraft.Items.pocketComputer = new ItemPocketComputer(); |         ComputerCraft.Items.pocketComputer = new ItemPocketComputer(); | ||||||
|         GameRegistry.register( ComputerCraft.Items.pocketComputer.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "pocketComputer" ) ) ); |         GameRegistry.register( ComputerCraft.Items.pocketComputer.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, "pocket_computer" ) ) ); | ||||||
|  |  | ||||||
|         // Recipe types |         // Recipe types | ||||||
|         RecipeSorter.register( "computercraft:impostor", ImpostorRecipe.class, RecipeSorter.Category.SHAPED, "after:minecraft:shapeless" ); |         RecipeSorter.register( "computercraft:impostor", ImpostorRecipe.class, RecipeSorter.Category.SHAPED, "after:minecraft:shapeless" ); | ||||||
| @@ -473,22 +473,77 @@ public abstract class ComputerCraftProxyCommon implements IComputerCraftProxy | |||||||
|         GameRegistry.addShapelessRecipe( cloudyHead, monitor, new ItemStack( Items.SKULL, 1, 1 ) ); |         GameRegistry.addShapelessRecipe( cloudyHead, monitor, new ItemStack( Items.SKULL, 1, 1 ) ); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     private void registerBlock( Block block, Item item, String name) { |     @Override | ||||||
|  |     public void remap( FMLMissingMappingsEvent mappings ) | ||||||
|  |     { | ||||||
|  |         // We have to use mappings.getAll() as the mod ID is upper case but the domain lower. | ||||||
|  |         for( FMLMissingMappingsEvent.MissingMapping mapping : mappings.getAll() ) | ||||||
|  |         { | ||||||
|  |             String domain = mapping.resourceLocation.getResourceDomain(); | ||||||
|  |             if( !domain.equalsIgnoreCase( ComputerCraft.MOD_ID ) ) continue; | ||||||
|  |  | ||||||
|  |             String key = mapping.resourceLocation.getResourcePath(); | ||||||
|  |             if( key.equals( "CC-Computer" ) ) | ||||||
|  |             { | ||||||
|  |                 remap( mapping, ComputerCraft.Blocks.computer ); | ||||||
|  |             } | ||||||
|  |             else if( key.equals( "CC-Peripheral" ) ) | ||||||
|  |             { | ||||||
|  |                 remap( mapping, ComputerCraft.Blocks.peripheral ); | ||||||
|  |             } | ||||||
|  |             else if( key.equals( "CC-Cable" ) ) | ||||||
|  |             { | ||||||
|  |                 remap( mapping, ComputerCraft.Blocks.cable ); | ||||||
|  |             } | ||||||
|  |             else if( key.equals( "diskExpanded" ) ) | ||||||
|  |             { | ||||||
|  |                 mapping.remap( ComputerCraft.Items.diskExpanded ); | ||||||
|  |             } | ||||||
|  |             else if( key.equals( "treasureDisk" ) ) | ||||||
|  |             { | ||||||
|  |                 mapping.remap( ComputerCraft.Items.treasureDisk ); | ||||||
|  |             } | ||||||
|  |             else if( key.equals( "pocketComputer" ) ) | ||||||
|  |             { | ||||||
|  |                 mapping.remap( ComputerCraft.Items.pocketComputer ); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private static void remap( FMLMissingMappingsEvent.MissingMapping mapping, Block block ) | ||||||
|  |     { | ||||||
|  |         if( mapping.type == GameRegistry.Type.BLOCK ) | ||||||
|  |         { | ||||||
|  |             mapping.remap( block ); | ||||||
|  |         } | ||||||
|  |         else | ||||||
|  |         { | ||||||
|  |             mapping.remap( Item.getItemFromBlock( block ) ); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private void registerBlock( Block block, Item item, String name ) | ||||||
|  |     { | ||||||
|         GameRegistry.register( block.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); |         GameRegistry.register( block.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); | ||||||
|         GameRegistry.register( item.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); |         GameRegistry.register( item.setRegistryName( new ResourceLocation( ComputerCraft.MOD_ID, name ) ) ); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     private void registerTileEntity( Class<? extends TileEntity> klass, String name ) | ||||||
|  |     { | ||||||
|  |         GameRegistry.registerTileEntityWithAlternatives( klass, ComputerCraft.LOWER_ID + " : " + name, name ); | ||||||
|  |     } | ||||||
|  |  | ||||||
|     private void registerTileEntities() |     private void registerTileEntities() | ||||||
|     { |     { | ||||||
|         // Tile Entities |         // Tile Entities | ||||||
|         GameRegistry.registerTileEntity( TileComputer.class, "computer" ); |         registerTileEntity( TileComputer.class, "computer" ); | ||||||
|         GameRegistry.registerTileEntity( TileDiskDrive.class, "diskdrive" ); |         registerTileEntity( TileDiskDrive.class, "diskdrive" ); | ||||||
|         GameRegistry.registerTileEntity( TileWirelessModem.class, "wirelessmodem" ); |         registerTileEntity( TileWirelessModem.class, "wirelessmodem" ); | ||||||
|         GameRegistry.registerTileEntity( TileMonitor.class, "monitor" ); |         registerTileEntity( TileMonitor.class, "monitor" ); | ||||||
|         GameRegistry.registerTileEntity( TilePrinter.class, "ccprinter" ); |         registerTileEntity( TilePrinter.class, "ccprinter" ); | ||||||
|         GameRegistry.registerTileEntity( TileCable.class, "wiredmodem" ); |         registerTileEntity( TileCable.class, "wiredmodem" ); | ||||||
|         GameRegistry.registerTileEntity( TileCommandComputer.class, "command_computer" ); |         registerTileEntity( TileCommandComputer.class, "command_computer" ); | ||||||
|         GameRegistry.registerTileEntity( TileAdvancedModem.class, "advanced_modem" ); |         registerTileEntity( TileAdvancedModem.class, "advanced_modem" ); | ||||||
|  |  | ||||||
|         // Register peripheral providers |         // Register peripheral providers | ||||||
|         ComputerCraftAPI.registerPeripheralProvider( new DefaultPeripheralProvider() ); |         ComputerCraftAPI.registerPeripheralProvider( new DefaultPeripheralProvider() ); | ||||||
|   | |||||||
| @@ -10,6 +10,7 @@ import dan200.computercraft.api.turtle.ITurtleUpgrade; | |||||||
| import dan200.computercraft.shared.util.IEntityDropConsumer; | import dan200.computercraft.shared.util.IEntityDropConsumer; | ||||||
| import net.minecraft.entity.Entity; | import net.minecraft.entity.Entity; | ||||||
| import net.minecraft.item.ItemStack; | import net.minecraft.item.ItemStack; | ||||||
|  | import net.minecraftforge.fml.common.event.FMLMissingMappingsEvent; | ||||||
|  |  | ||||||
| import java.util.List; | import java.util.List; | ||||||
|  |  | ||||||
| @@ -17,6 +18,7 @@ public interface ICCTurtleProxy | |||||||
| { | { | ||||||
|     void preInit(); |     void preInit(); | ||||||
|     void init(); |     void init(); | ||||||
|  |     void remap( FMLMissingMappingsEvent mappings); | ||||||
|  |  | ||||||
|     void registerTurtleUpgrade( ITurtleUpgrade upgrade ); |     void registerTurtleUpgrade( ITurtleUpgrade upgrade ); | ||||||
|     ITurtleUpgrade getTurtleUpgrade( String id ); |     ITurtleUpgrade getTurtleUpgrade( String id ); | ||||||
|   | |||||||
| @@ -18,6 +18,7 @@ import net.minecraft.util.EnumHand; | |||||||
| import net.minecraft.util.SoundEvent; | import net.minecraft.util.SoundEvent; | ||||||
| import net.minecraft.util.math.BlockPos; | import net.minecraft.util.math.BlockPos; | ||||||
| import net.minecraft.world.World; | import net.minecraft.world.World; | ||||||
|  | import net.minecraftforge.fml.common.event.FMLMissingMappingsEvent; | ||||||
|  |  | ||||||
| import java.io.File; | import java.io.File; | ||||||
|  |  | ||||||
| @@ -25,6 +26,7 @@ public interface IComputerCraftProxy | |||||||
| { | { | ||||||
|     void preInit(); |     void preInit(); | ||||||
|     void init(); |     void init(); | ||||||
|  |     void remap( FMLMissingMappingsEvent mappings); | ||||||
|     boolean isClient(); |     boolean isClient(); | ||||||
|  |  | ||||||
|     boolean getGlobalCursorBlink(); |     boolean getGlobalCursorBlink(); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 SquidDev
					SquidDev