mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2025-08-28 00:12:16 +00:00
CRAB GAME IS LAUNCH CRAB
This commit is contained in:
parent
6ec7ebe439
commit
f79c67e243
@ -3,6 +3,7 @@
|
||||
* Copyright Daniel Ratcliffe, 2011-2020. Do not distribute without permission.
|
||||
* Send enquiries to dratcliffe@gmail.com
|
||||
*/
|
||||
|
||||
package dan200.computercraft.shared;
|
||||
|
||||
import static net.minecraft.util.registry.Registry.BLOCK_ENTITY_TYPE;
|
||||
@ -48,7 +49,6 @@ import dan200.computercraft.shared.turtle.inventory.ContainerTurtle;
|
||||
import dan200.computercraft.shared.turtle.items.ItemTurtle;
|
||||
import dan200.computercraft.shared.util.FixedPointTileEntityType;
|
||||
|
||||
import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Material;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
@ -61,13 +61,23 @@ import net.minecraft.item.ItemGroup;
|
||||
import net.minecraft.screen.ScreenHandler;
|
||||
import net.minecraft.screen.ScreenHandlerType;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
|
||||
import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry;
|
||||
|
||||
public final class ComputerCraftRegistry {
|
||||
public static final String MOD_ID = ComputerCraft.MOD_ID;
|
||||
|
||||
public static void init() {
|
||||
Object[] o = {ModBlocks.CABLE, ModTiles.CABLE, ModItems.CABLE, ModEntities.TURTLE_PLAYER, ModContainers.COMPUTER};
|
||||
Object[] o = {
|
||||
ModBlocks.CABLE,
|
||||
ModItems.CABLE,
|
||||
ModEntities.TURTLE_PLAYER,
|
||||
ModContainers.COMPUTER,
|
||||
ModTiles.CABLE
|
||||
};
|
||||
}
|
||||
|
||||
public static final class ModBlocks {
|
||||
private static Block.Settings properties() {
|
||||
return Block.Settings.of(Material.STONE)
|
||||
@ -84,85 +94,75 @@ public final class ComputerCraftRegistry {
|
||||
.strength(1.5f);
|
||||
}
|
||||
|
||||
public static final BlockComputer COMPUTER_NORMAL = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
new Identifier(MOD_ID, "computer_normal"),
|
||||
new BlockComputer(properties(), ComputerFamily.NORMAL, ModTiles.COMPUTER_NORMAL));
|
||||
public static final BlockComputer COMPUTER_ADVANCED = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"computer_advanced",
|
||||
new BlockComputer(properties(),
|
||||
ComputerFamily.ADVANCED,
|
||||
ModTiles.COMPUTER_ADVANCED));
|
||||
public static final BlockComputer COMPUTER_NORMAL = register("computer_normal",
|
||||
new BlockComputer(properties(), ComputerFamily.NORMAL, ModTiles.COMPUTER_NORMAL));
|
||||
public static final BlockComputer COMPUTER_ADVANCED = register("computer_advanced",
|
||||
new BlockComputer(properties(),
|
||||
ComputerFamily.ADVANCED,
|
||||
ModTiles.COMPUTER_ADVANCED));
|
||||
|
||||
public static final BlockComputer COMPUTER_COMMAND = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"computer_command",
|
||||
new BlockComputer(Block.Settings.of(Material.STONE)
|
||||
.strength(-1, 6000000.0F),
|
||||
ComputerFamily.COMMAND,
|
||||
ModTiles.COMPUTER_COMMAND));
|
||||
public static final BlockComputer COMPUTER_COMMAND = register("computer_command",
|
||||
new BlockComputer(Block.Settings.of(Material.STONE)
|
||||
.strength(-1, 6000000.0F),
|
||||
ComputerFamily.COMMAND,
|
||||
ModTiles.COMPUTER_COMMAND));
|
||||
|
||||
public static final BlockTurtle TURTLE_NORMAL = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"turtle_normal",
|
||||
new BlockTurtle(turtleProperties(), ComputerFamily.NORMAL, ModTiles.TURTLE_NORMAL));
|
||||
public static final BlockTurtle TURTLE_ADVANCED = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"turtle_advanced",
|
||||
new BlockTurtle(turtleProperties(),
|
||||
ComputerFamily.ADVANCED,
|
||||
ModTiles.TURTLE_ADVANCED));
|
||||
public static final BlockTurtle TURTLE_NORMAL = register("turtle_normal",
|
||||
new BlockTurtle(turtleProperties(), ComputerFamily.NORMAL, ModTiles.TURTLE_NORMAL));
|
||||
public static final BlockTurtle TURTLE_ADVANCED = register("turtle_advanced",
|
||||
new BlockTurtle(turtleProperties(), ComputerFamily.ADVANCED, ModTiles.TURTLE_ADVANCED));
|
||||
|
||||
public static final BlockSpeaker SPEAKER = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK, "speaker",
|
||||
new BlockSpeaker(properties()));
|
||||
public static final BlockDiskDrive DISK_DRIVE = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK, "disk_drive", new BlockDiskDrive(properties()));
|
||||
public static final BlockPrinter PRINTER = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK, "printer", new BlockPrinter(properties()));
|
||||
public static final BlockSpeaker SPEAKER = register("speaker", new BlockSpeaker(properties()));
|
||||
public static final BlockDiskDrive DISK_DRIVE = register("disk_drive", new BlockDiskDrive(properties()));
|
||||
public static final BlockPrinter PRINTER = register("printer", new BlockPrinter(properties()));
|
||||
|
||||
public static final BlockMonitor MONITOR_NORMAL = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"monitor_normal",
|
||||
new BlockMonitor(properties(), ModTiles.MONITOR_NORMAL));
|
||||
public static final BlockMonitor MONITOR_ADVANCED = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"monitor_advanced",
|
||||
new BlockMonitor(properties(), ModTiles.MONITOR_ADVANCED));
|
||||
public static final BlockMonitor MONITOR_NORMAL = register("monitor_normal", new BlockMonitor(properties(), ModTiles.MONITOR_NORMAL));
|
||||
public static final BlockMonitor MONITOR_ADVANCED = register("monitor_advanced", new BlockMonitor(properties(), ModTiles.MONITOR_ADVANCED));
|
||||
|
||||
public static final BlockWirelessModem WIRELESS_MODEM_NORMAL = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"wireless_em_normal",
|
||||
new BlockWirelessModem(properties(), ModTiles.WIRELESS_MODEM_NORMAL));
|
||||
public static final BlockWirelessModem WIRELESS_MODEM_ADVANCED = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"wireless_em_advanced",
|
||||
new BlockWirelessModem(properties(),
|
||||
ModTiles.WIRELESS_MODEM_ADVANCED));
|
||||
public static final BlockWirelessModem WIRELESS_MODEM_NORMAL = register("wireless_modem_normal",
|
||||
new BlockWirelessModem(properties(), ModTiles.WIRELESS_MODEM_NORMAL));
|
||||
public static final BlockWirelessModem WIRELESS_MODEM_ADVANCED = register("wireless_modem_advanced",
|
||||
new BlockWirelessModem(properties(), ModTiles.WIRELESS_MODEM_ADVANCED));
|
||||
|
||||
public static final BlockWiredModemFull WIRED_MODEM_FULL = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK,
|
||||
"wired_em_full",
|
||||
new BlockWiredModemFull(emProperties(), ModTiles.WIRED_MODEM_FULL));
|
||||
public static final BlockCable CABLE = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.BLOCK, "cable", new BlockCable(emProperties()));
|
||||
public static final BlockWiredModemFull WIRED_MODEM_FULL = register("wired_modem_full",
|
||||
new BlockWiredModemFull(emProperties(), ModTiles.WIRED_MODEM_FULL));
|
||||
public static final BlockCable CABLE = register("cable", new BlockCable(emProperties()));
|
||||
|
||||
public static <T extends Block> T register(String id, T value) {
|
||||
return Registry.register(Registry.BLOCK, new Identifier(MOD_ID, id), value);
|
||||
}
|
||||
}
|
||||
|
||||
public static class ModTiles {
|
||||
|
||||
private static <T extends BlockEntity> BlockEntityType<T> ofBlock(Block block, Function<BlockEntityType<T>, T> factory) {
|
||||
return net.minecraft.util.registry.Registry.register(BLOCK_ENTITY_TYPE, net.minecraft.util.registry.Registry.BLOCK.getId(block), FixedPointTileEntityType.create(block, factory));
|
||||
private static <T extends BlockEntity> BlockEntityType<T> ofBlock(Block block, String id, Function<BlockEntityType<T>, T> factory) {
|
||||
return Registry.register(BLOCK_ENTITY_TYPE, new Identifier(MOD_ID, id), FixedPointTileEntityType.create(block, factory));
|
||||
}
|
||||
|
||||
public static final BlockEntityType<TileMonitor> MONITOR_NORMAL = ofBlock(ModBlocks.MONITOR_NORMAL, f -> new TileMonitor(f, false));
|
||||
public static final BlockEntityType<TileMonitor> MONITOR_ADVANCED = ofBlock(ModBlocks.MONITOR_ADVANCED, f -> new TileMonitor(f, true));
|
||||
public static final BlockEntityType<TileMonitor> MONITOR_NORMAL = ofBlock(ModBlocks.MONITOR_NORMAL, "monitor_normal",f -> new TileMonitor(f, false));
|
||||
public static final BlockEntityType<TileMonitor> MONITOR_ADVANCED = ofBlock(ModBlocks.MONITOR_ADVANCED, "monitor_advanced",f -> new TileMonitor(f, true));
|
||||
|
||||
public static final BlockEntityType<TileComputer> COMPUTER_NORMAL = ofBlock(ModBlocks.COMPUTER_NORMAL,
|
||||
public static final BlockEntityType<TileComputer> COMPUTER_NORMAL = ofBlock(ModBlocks.COMPUTER_NORMAL,"computer_normal",
|
||||
f -> new TileComputer(ComputerFamily.NORMAL, f));
|
||||
public static final BlockEntityType<TileComputer> COMPUTER_ADVANCED = ofBlock(ModBlocks.COMPUTER_ADVANCED,
|
||||
public static final BlockEntityType<TileComputer> COMPUTER_ADVANCED = ofBlock(ModBlocks.COMPUTER_ADVANCED,"computer_advanced",
|
||||
f -> new TileComputer(ComputerFamily.ADVANCED, f));
|
||||
public static final BlockEntityType<TileCommandComputer> COMPUTER_COMMAND = ofBlock(ModBlocks.COMPUTER_COMMAND,
|
||||
public static final BlockEntityType<TileCommandComputer> COMPUTER_COMMAND = ofBlock(ModBlocks.COMPUTER_COMMAND, "computer_command",
|
||||
f -> new TileCommandComputer(ComputerFamily.COMMAND, f));
|
||||
|
||||
public static final BlockEntityType<TileTurtle> TURTLE_NORMAL = ofBlock(ModBlocks.TURTLE_NORMAL, f -> new TileTurtle(f, ComputerFamily.NORMAL));
|
||||
public static final BlockEntityType<TileTurtle> TURTLE_ADVANCED = ofBlock(ModBlocks.TURTLE_ADVANCED, f -> new TileTurtle(f, ComputerFamily.ADVANCED));
|
||||
public static final BlockEntityType<TileTurtle> TURTLE_NORMAL = ofBlock(ModBlocks.TURTLE_NORMAL, "turtle_normal",f -> new TileTurtle(f, ComputerFamily.NORMAL));
|
||||
public static final BlockEntityType<TileTurtle> TURTLE_ADVANCED = ofBlock(ModBlocks.TURTLE_ADVANCED,"turtle_advanced",
|
||||
f -> new TileTurtle(f, ComputerFamily.ADVANCED));
|
||||
|
||||
public static final BlockEntityType<TileSpeaker> SPEAKER = ofBlock(ModBlocks.SPEAKER, TileSpeaker::new);
|
||||
public static final BlockEntityType<TileDiskDrive> DISK_DRIVE = ofBlock(ModBlocks.DISK_DRIVE, TileDiskDrive::new);
|
||||
public static final BlockEntityType<TilePrinter> PRINTER = ofBlock(ModBlocks.PRINTER, TilePrinter::new);
|
||||
public static final BlockEntityType<TileWiredModemFull> WIRED_MODEM_FULL = ofBlock(ModBlocks.WIRED_MODEM_FULL, TileWiredModemFull::new);
|
||||
public static final BlockEntityType<TileCable> CABLE = ofBlock(ModBlocks.CABLE, TileCable::new);
|
||||
public static final BlockEntityType<TileSpeaker> SPEAKER = ofBlock(ModBlocks.SPEAKER, "speaker",TileSpeaker::new);
|
||||
public static final BlockEntityType<TileDiskDrive> DISK_DRIVE = ofBlock(ModBlocks.DISK_DRIVE, "disk_drive",TileDiskDrive::new);
|
||||
public static final BlockEntityType<TilePrinter> PRINTER = ofBlock(ModBlocks.PRINTER, "printer",TilePrinter::new);
|
||||
public static final BlockEntityType<TileWiredModemFull> WIRED_MODEM_FULL = ofBlock(ModBlocks.WIRED_MODEM_FULL,"wired_modem_full", TileWiredModemFull::new);
|
||||
public static final BlockEntityType<TileCable> CABLE = ofBlock(ModBlocks.CABLE, "cable",TileCable::new);
|
||||
|
||||
public static final BlockEntityType<TileWirelessModem> WIRELESS_MODEM_NORMAL = ofBlock(ModBlocks.WIRELESS_MODEM_NORMAL, f -> new TileWirelessModem(f,
|
||||
false));
|
||||
public static final BlockEntityType<TileWirelessModem> WIRELESS_MODEM_ADVANCED = ofBlock(ModBlocks.WIRELESS_MODEM_ADVANCED, f -> new TileWirelessModem(f, true));
|
||||
public static final BlockEntityType<TileWirelessModem> WIRELESS_MODEM_NORMAL = ofBlock(ModBlocks.WIRELESS_MODEM_NORMAL,"wireless_modem_normal",
|
||||
f -> new TileWirelessModem(f, false));
|
||||
public static final BlockEntityType<TileWirelessModem> WIRELESS_MODEM_ADVANCED = ofBlock(ModBlocks.WIRELESS_MODEM_ADVANCED,"wireless_modem_advanced",
|
||||
f -> new TileWirelessModem(f, true));
|
||||
}
|
||||
|
||||
public static final class ModItems {
|
||||
@ -173,19 +173,19 @@ public final class ComputerCraftRegistry {
|
||||
}
|
||||
|
||||
private static <B extends Block, I extends Item> I ofBlock(B parent, BiFunction<B, Item.Settings, I> supplier) {
|
||||
return net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.ITEM, net.minecraft.util.registry.Registry.BLOCK.getId(parent), supplier.apply(parent, properties()));
|
||||
return Registry.register(Registry.ITEM, Registry.BLOCK.getId(parent), supplier.apply(parent, properties()));
|
||||
}
|
||||
|
||||
public static final ItemComputer COMPUTER_NORMAL = ofBlock(ModBlocks.COMPUTER_NORMAL, ItemComputer::new);
|
||||
public static final ItemComputer COMPUTER_ADVANCED = ofBlock(ModBlocks.COMPUTER_ADVANCED, ItemComputer::new);
|
||||
public static final ItemComputer COMPUTER_COMMAND = ofBlock(ModBlocks.COMPUTER_COMMAND, ItemComputer::new);
|
||||
|
||||
private static <T extends Item> T register(String id, T item) {
|
||||
return net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.ITEM, new Identifier(MOD_ID, id), item);
|
||||
return Registry.register(Registry.ITEM, new Identifier(MOD_ID, id), item);
|
||||
}
|
||||
|
||||
public static final ItemPocketComputer POCKET_COMPUTER_NORMAL = register("pocket_computer_normal",
|
||||
new ItemPocketComputer(properties().maxCount(1),
|
||||
ComputerFamily.NORMAL));
|
||||
new ItemPocketComputer(properties().maxCount(1), ComputerFamily.NORMAL));
|
||||
public static final ItemPocketComputer POCKET_COMPUTER_ADVANCED = register("pocket_computer_advanced",
|
||||
new ItemPocketComputer(properties().maxCount(1),
|
||||
ComputerFamily.ADVANCED));
|
||||
@ -197,8 +197,7 @@ public final class ComputerCraftRegistry {
|
||||
public static final ItemTreasureDisk TREASURE_DISK = register("treasure_disk", new ItemTreasureDisk(properties().maxCount(1)));
|
||||
|
||||
public static final ItemPrintout PRINTED_PAGE = register("printed_page", new ItemPrintout(properties().maxCount(1), ItemPrintout.Type.PAGE));
|
||||
public static final ItemPrintout PRINTED_PAGES = register("printed_pages",
|
||||
new ItemPrintout(properties().maxCount(1), ItemPrintout.Type.PAGES));
|
||||
public static final ItemPrintout PRINTED_PAGES = register("printed_pages", new ItemPrintout(properties().maxCount(1), ItemPrintout.Type.PAGES));
|
||||
public static final ItemPrintout PRINTED_BOOK = register("printed_book", new ItemPrintout(properties().maxCount(1), ItemPrintout.Type.BOOK));
|
||||
|
||||
public static final BlockItem SPEAKER = ofBlock(ModBlocks.SPEAKER, BlockItem::new);
|
||||
@ -211,26 +210,29 @@ public final class ComputerCraftRegistry {
|
||||
public static final BlockItem WIRED_MODEM_FULL = ofBlock(ModBlocks.WIRED_MODEM_FULL, BlockItem::new);
|
||||
|
||||
public static final ItemBlockCable.Cable CABLE = register("cable", new ItemBlockCable.Cable(ModBlocks.CABLE, properties()));
|
||||
public static final ItemBlockCable.WiredModem WIRED_MODEM = register("wired_em", new ItemBlockCable.WiredModem(ModBlocks.CABLE, properties()));
|
||||
public static final ItemBlockCable.WiredModem WIRED_MODEM = register("wired_modem", new ItemBlockCable.WiredModem(ModBlocks.CABLE, properties()));
|
||||
}
|
||||
|
||||
public static class ModEntities {
|
||||
public static final EntityType<TurtlePlayer> TURTLE_PLAYER = net.minecraft.util.registry.Registry.register(net.minecraft.util.registry.Registry.ENTITY_TYPE, new Identifier(MOD_ID, "turtle_player"), EntityType.Builder.<TurtlePlayer>create(
|
||||
SpawnGroup.MISC).disableSaving()
|
||||
.disableSummon()
|
||||
.setDimensions(
|
||||
0,
|
||||
0)
|
||||
.build(
|
||||
ComputerCraft.MOD_ID + ":turtle_player"));
|
||||
public static final EntityType<TurtlePlayer> TURTLE_PLAYER = Registry.register(Registry.ENTITY_TYPE,
|
||||
new Identifier(MOD_ID, "turtle_player"),
|
||||
EntityType.Builder.<TurtlePlayer>create(SpawnGroup.MISC).disableSaving()
|
||||
.disableSummon()
|
||||
.setDimensions(
|
||||
0,
|
||||
0)
|
||||
.build(
|
||||
ComputerCraft.MOD_ID + ":turtle_player"));
|
||||
}
|
||||
|
||||
public static class ModContainers {
|
||||
private static <T extends ScreenHandler> ScreenHandlerType<T> registerSimple(String id, ScreenHandlerRegistry.SimpleClientHandlerFactory<T> function) {
|
||||
private static <T extends ScreenHandler> ScreenHandlerType<T> registerSimple(String id,
|
||||
ScreenHandlerRegistry.SimpleClientHandlerFactory<T> function) {
|
||||
return ScreenHandlerRegistry.registerSimple(new Identifier(MOD_ID, id), function);
|
||||
}
|
||||
|
||||
private static <T extends ScreenHandler> ScreenHandlerType<T> registerExtended(String id, ScreenHandlerRegistry.ExtendedClientHandlerFactory<T> function) {
|
||||
private static <T extends ScreenHandler> ScreenHandlerType<T> registerExtended(String id,
|
||||
ScreenHandlerRegistry.ExtendedClientHandlerFactory<T> function) {
|
||||
return ScreenHandlerRegistry.registerExtended(new Identifier(MOD_ID, id), function);
|
||||
}
|
||||
|
||||
@ -249,4 +251,6 @@ public final class ComputerCraftRegistry {
|
||||
|
||||
public static final ScreenHandlerType<ContainerViewComputer> VIEW_COMPUTER = registerExtended("view_computer", ContainerViewComputer::new);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -27,7 +27,6 @@
|
||||
"environment": "*",
|
||||
"entrypoints": {
|
||||
"main": [ "dan200.computercraft.ComputerCraft" ],
|
||||
"modmenu": [ "dan200.computercraft.client.ModMenuIntegration" ],
|
||||
"client": ["dan200.computercraft.client.proxy.ComputerCraftProxyClient"]
|
||||
},
|
||||
"mixins": [
|
||||
|
Loading…
x
Reference in New Issue
Block a user