1
0
mirror of https://github.com/SquidDev-CC/CC-Tweaked synced 2025-08-27 16:02:17 +00:00

god forgive me, for I have sinned 2

This commit is contained in:
Devan-Kerman 2020-09-04 17:49:41 -05:00
parent 33e65e39e3
commit 3fa6b5bc9d
26 changed files with 209 additions and 34 deletions

View File

@ -6,7 +6,8 @@
package dan200.computercraft; package dan200.computercraft;
import static dan200.computercraft.shared.ComputerCraftRegistry.*; import static dan200.computercraft.shared.ComputerCraftRegistry.ModBlocks;
import static dan200.computercraft.shared.ComputerCraftRegistry.init;
import java.nio.file.Paths; import java.nio.file.Paths;
import java.util.Collections; import java.util.Collections;
@ -22,13 +23,22 @@ import dan200.computercraft.core.apis.AddressPredicate;
import dan200.computercraft.core.apis.http.options.Action; import dan200.computercraft.core.apis.http.options.Action;
import dan200.computercraft.core.apis.http.options.AddressRule; import dan200.computercraft.core.apis.http.options.AddressRule;
import dan200.computercraft.core.apis.http.websocket.Websocket; import dan200.computercraft.core.apis.http.websocket.Websocket;
import dan200.computercraft.shared.ComputerCraftRegistry; import dan200.computercraft.shared.common.ColourableRecipe;
import dan200.computercraft.shared.computer.core.ClientComputerRegistry; import dan200.computercraft.shared.computer.core.ClientComputerRegistry;
import dan200.computercraft.shared.computer.core.ServerComputerRegistry; import dan200.computercraft.shared.computer.core.ServerComputerRegistry;
import dan200.computercraft.shared.computer.recipe.ComputerUpgradeRecipe;
import dan200.computercraft.shared.data.BlockNamedEntityLootCondition;
import dan200.computercraft.shared.data.HasComputerIdLootCondition;
import dan200.computercraft.shared.data.PlayerCreativeLootCondition;
import dan200.computercraft.shared.media.recipes.DiskRecipe;
import dan200.computercraft.shared.media.recipes.PrintoutRecipe;
import dan200.computercraft.shared.peripheral.monitor.MonitorRenderer; import dan200.computercraft.shared.peripheral.monitor.MonitorRenderer;
import dan200.computercraft.shared.pocket.peripherals.PocketModem; import dan200.computercraft.shared.pocket.peripherals.PocketModem;
import dan200.computercraft.shared.pocket.peripherals.PocketSpeaker; import dan200.computercraft.shared.pocket.peripherals.PocketSpeaker;
import dan200.computercraft.shared.pocket.recipes.PocketComputerUpgradeRecipe;
import dan200.computercraft.shared.proxy.ComputerCraftProxyCommon; import dan200.computercraft.shared.proxy.ComputerCraftProxyCommon;
import dan200.computercraft.shared.turtle.recipes.TurtleRecipe;
import dan200.computercraft.shared.turtle.recipes.TurtleUpgradeRecipe;
import dan200.computercraft.shared.turtle.upgrades.TurtleAxe; import dan200.computercraft.shared.turtle.upgrades.TurtleAxe;
import dan200.computercraft.shared.turtle.upgrades.TurtleCraftingTable; import dan200.computercraft.shared.turtle.upgrades.TurtleCraftingTable;
import dan200.computercraft.shared.turtle.upgrades.TurtleHoe; import dan200.computercraft.shared.turtle.upgrades.TurtleHoe;
@ -38,15 +48,19 @@ import dan200.computercraft.shared.turtle.upgrades.TurtleSpeaker;
import dan200.computercraft.shared.turtle.upgrades.TurtleSword; import dan200.computercraft.shared.turtle.upgrades.TurtleSword;
import dan200.computercraft.shared.turtle.upgrades.TurtleTool; import dan200.computercraft.shared.turtle.upgrades.TurtleTool;
import dan200.computercraft.shared.util.Config; import dan200.computercraft.shared.util.Config;
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; import dan200.computercraft.shared.util.ImpostorRecipe;
import net.fabricmc.loader.api.FabricLoader; import dan200.computercraft.shared.util.ImpostorShapelessRecipe;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
import net.fabricmc.api.ModInitializer; import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
import net.fabricmc.loader.api.FabricLoader;
public final class ComputerCraft implements ModInitializer { public final class ComputerCraft implements ModInitializer {
public static final String MOD_ID = "computercraft"; public static final String MOD_ID = "computercraft";
@ -61,15 +75,14 @@ public final class ComputerCraft implements ModInitializer {
"172.16.0.0/12", "172.16.0.0/12",
"192.168.0.0/16", "192.168.0.0/16",
"fd00::/8", "fd00::/8",
}; };
public static List<AddressRule> httpRules = Collections.unmodifiableList( Stream.concat( public static List<AddressRule> httpRules = Collections.unmodifiableList(Stream.concat(Stream.of(DEFAULT_HTTP_BLACKLIST)
Stream.of( DEFAULT_HTTP_BLACKLIST ) .map(x -> AddressRule.parse(x, Action.DENY.toPartial()))
.map( x -> AddressRule.parse( x, Action.DENY.toPartial() ) ) .filter(Objects::nonNull),
.filter( Objects::nonNull ), Stream.of(DEFAULT_HTTP_WHITELIST)
Stream.of( DEFAULT_HTTP_WHITELIST ) .map(x -> AddressRule.parse(x, Action.ALLOW.toPartial()))
.map( x -> AddressRule.parse( x, Action.ALLOW.toPartial() ) ) .filter(Objects::nonNull))
.filter( Objects::nonNull ) .collect(Collectors.toList()));
).collect( Collectors.toList() ) );
public static boolean commandRequireCreative = false; public static boolean commandRequireCreative = false;
public static MonitorRenderer monitorRenderer = MonitorRenderer.BEST; public static MonitorRenderer monitorRenderer = MonitorRenderer.BEST;
public static final int terminalWidth_computer = 51; public static final int terminalWidth_computer = 51;
@ -144,8 +157,26 @@ public final class ComputerCraft implements ModInitializer {
@Override @Override
public void onInitialize() { public void onInitialize() {
Config.load(Paths.get(FabricLoader.getInstance().getConfigDir().toFile().getPath(), MOD_ID + ".json5")); Config.load(Paths.get(FabricLoader.getInstance()
.getConfigDir()
.toFile()
.getPath(), MOD_ID + ".json5"));
ComputerCraftProxyCommon.init(); ComputerCraftProxyCommon.init();
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "colour"), ColourableRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "computer_upgrade"), ComputerUpgradeRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER,
new Identifier(ComputerCraft.MOD_ID, "pocket_computer_upgrade"),
PocketComputerUpgradeRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "disk"), DiskRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "printout"), PrintoutRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "turtle"), TurtleRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "turtle_upgrade"), TurtleUpgradeRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "impostor_shaped"), ImpostorRecipe.SERIALIZER);
Registry.register(Registry.RECIPE_SERIALIZER, new Identifier(ComputerCraft.MOD_ID, "impostor_shapeless"), ImpostorShapelessRecipe.SERIALIZER);
Registry.register(Registry.LOOT_CONDITION_TYPE, new Identifier( ComputerCraft.MOD_ID, "block_named" ), BlockNamedEntityLootCondition.TYPE);
Registry.register(Registry.LOOT_CONDITION_TYPE, new Identifier( ComputerCraft.MOD_ID, "player_creative" ), PlayerCreativeLootCondition.TYPE);
Registry.register(Registry.LOOT_CONDITION_TYPE, new Identifier( ComputerCraft.MOD_ID, "has_id" ), HasComputerIdLootCondition.TYPE);
init(); init();
} }
} }

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:black_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:blue_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:brown_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:cyan_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:ender_pearl"
]
}

View File

@ -0,0 +1,22 @@
{
"replace": false,
"values": [
"minecraft:green_stained_glass_pane",
"minecraft:light_blue_stained_glass_pane",
"minecraft:gray_stained_glass_pane",
"minecraft:red_stained_glass_pane",
"minecraft:lime_stained_glass_pane",
"minecraft:yellow_stained_glass_pane",
"minecraft:blue_stained_glass_pane",
"minecraft:pink_stained_glass_pane",
"minecraft:light_gray_stained_glass_pane",
"minecraft:orange_stained_glass_pane",
"minecraft:glass_pane",
"minecraft:purple_stained_glass_pane",
"minecraft:white_stained_glass_pane",
"minecraft:magenta_stained_glass_pane",
"minecraft:brown_stained_glass_pane",
"minecraft:black_stained_glass_pane",
"minecraft:cyan_stained_glass_pane"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:gold_block"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:gold_ingot"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:gray_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:green_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:light_blue_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:light_gray_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:lime_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:magenta_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:orange_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:pink_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:purple_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:red_dye"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:redstone"
]
}

View File

@ -0,0 +1,9 @@
{
"replace": false,
"values": [
"minecraft:diorite",
"minecraft:granite",
"minecraft:cobblestone",
"minecraft:andesite"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:white_dye"
]
}

View File

@ -0,0 +1,7 @@
{
"replace": false,
"values": [
"minecraft:trapped_chest",
"minecraft:chest"
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"minecraft:yellow_dye"
]
}

View File

@ -6,7 +6,7 @@
"#I#" "#I#"
], ],
"key": { "key": {
"#": { "tag": "c:iron_ingotsiron" }, "#": { "tag": "c:iron_ingots" },
"C": { "item": "computercraft:computer_normal" }, "C": { "item": "computercraft:computer_normal" },
"I": { "tag": "c:wooden_chests" } "I": { "tag": "c:wooden_chests" }
}, },

View File

@ -32,22 +32,8 @@ public class BadHtmlParser {
System.out.println(IDS); System.out.println(IDS);
print("white_dyes"); print("wooden_chests");
print("orange_dyes"); print("gold_blocks");
print("magenta_dyes");
print("light_blue_dyes");
print("yellow_dyes");
print("lime_dyes");
print("pink_dyes");
print("gray_dyes");
print("light_gray_dyes");
print("cyan_dyes");
print("purple_dyes");
print("blue_dyes");
print("brown_dyes");
print("green_dyes");
print("red_dyes");
print("black_dyes");
// todo replace dyes by hand // todo replace dyes by hand
} }