Begin 1.20 port (god this is horrible)

This commit is contained in:
Andrew-71 2023-07-29 21:07:20 +03:00
parent 8730ae91a0
commit 987a18c360
105 changed files with 757 additions and 2300 deletions

View file

@ -1,36 +1,32 @@
plugins {
id 'fabric-loom' version '0.12-SNAPSHOT'
id 'maven-publish'
id 'java'
id 'idea'
id 'maven-publish'
id 'fabric-loom'
}
base {
archivesName = "${mod_name}-fabric-${minecraft_version}"
}
archivesBaseName = "${mod_name}-fabric-${minecraft_version}"
dependencies {
minecraft "com.mojang:minecraft:${minecraft_version}"
mappings loom.officialMojangMappings()
modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}"
modImplementation "net.fabricmc.fabric-api:fabric-api:${fabric_version}"
implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.1'
implementation project(":Common")
implementation project(":common")
// Blame CC: Restitched for this...
modApi 'com.electronwill.night-config:core:3.6.3'
modApi 'com.electronwill.night-config:toml:3.6.3'
modApi 'org.squiddev:Cobalt:0.5.5'
modImplementation "io.netty:netty-codec-http:4.1.77.Final"
modImplementation "curse.maven:tardim-531315:4453924"
//modImplementation "curse.maven:cc-restitched-462672:3908334"
//.. maybe?
modApi "curse.maven:cc-restitched-462672:3908334"
modCompileOnly "curse.maven:cc-restitched-462672:3908334"
// Create!
modCompileOnly "curse.maven:create-fabric-624165:4597892"
// Obfuscation forced my hand, TARDIM will be here for now :/
modImplementation(files("/Users/andreynikitin/Downloads/tardim.jar"))
modCompileOnly("cc.tweaked:cc-tweaked-$minecraft_version-fabric-api:$cc_version")
}
loom {
if (project(":common").file("src/main/resources/${mod_id}.accesswidener").exists()) {
accessWidenerPath.set(project(":common").file("src/main/resources/${mod_id}.accesswidener"))
}
mixin {
defaultRefmapName.set("${mod_id}.refmap.json")
}
runs {
client {
client()
@ -47,30 +43,27 @@ loom {
}
}
processResources {
from project(":Common").sourceSets.main.resources
inputs.property "version", project.version
filesMatching("fabric.mod.json") {
expand "version": project.version
}
tasks.withType(JavaCompile).configureEach {
source(project(":common").sourceSets.main.allSource)
}
tasks.withType(Javadoc).configureEach {
source(project(":common").sourceSets.main.allJava)
}
tasks.named("sourcesJar", Jar) {
from(project(":common").sourceSets.main.allSource)
}
tasks.withType(JavaCompile) {
source(project(":Common").sourceSets.main.allSource)
processResources {
from project(":common").sourceSets.main.resources
}
publishing {
publications {
mavenJava(MavenPublication) {
groupId project.group
artifactId project.archivesBaseName
version project.version
artifactId base.archivesName.get()
from components.java
}
}
repositories {
maven {
url "file://" + System.getenv("local_maven")

View file

@ -0,0 +1,18 @@
package com.example.examplemod;
import net.fabricmc.api.ModInitializer;
public class ExampleMod implements ModInitializer {
@Override
public void onInitialize() {
// This method is invoked by the Fabric mod loader when it is ready
// to load your mod. You can access Fabric and Common code in this
// project.
// Use Fabric to bootstrap the Common mod.
Constants.LOG.info("Hello Fabric world!");
CommonClass.init();
}
}

View file

@ -0,0 +1,20 @@
package com.example.examplemod.mixin;
import com.example.examplemod.Constants;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screens.TitleScreen;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(TitleScreen.class)
public class MixinTitleScreen {
@Inject(at = @At("HEAD"), method = "init()V")
private void init(CallbackInfo info) {
Constants.LOG.info("This line is printed by an example mod mixin from Fabric!");
Constants.LOG.info("MC Version: {}", Minecraft.getInstance().getVersionType());
}
}

View file

@ -0,0 +1,24 @@
package com.example.examplemod.platform;
import com.example.examplemod.platform.services.IPlatformHelper;
import net.fabricmc.loader.api.FabricLoader;
public class FabricPlatformHelper implements IPlatformHelper {
@Override
public String getPlatformName() {
return "Fabric";
}
@Override
public boolean isModLoaded(String modId) {
return FabricLoader.getInstance().isModLoaded(modId);
}
@Override
public boolean isDevelopmentEnvironment() {
return FabricLoader.getInstance().isDevelopmentEnvironment();
}
}

View file

@ -1,9 +1,9 @@
package su.a71.tardim_ic.tardim_ic;
package su.a71.tardim_ic;
import net.fabricmc.api.ModInitializer;
public class TardimInControl implements ModInitializer {
@Override
public void onInitialize() {
Registration.register();

View file

@ -1,19 +1,13 @@
package su.a71.tardim_ic.tardim_ic.blocks.food_machine;
package su.a71.tardim_ic.blocks.food_machine;
import com.swdteam.tardim.common.init.TRDDimensions;
import com.swdteam.tardim.common.init.TRDSounds;
import com.swdteam.tardim.network.NetworkHandler;
import com.swdteam.tardim.network.PacketOpenEditGui;
import com.swdteam.tardim.tardim.TardimData;
import com.swdteam.tardim.tardim.TardimManager;
import com.swdteam.tardim.tileentity.TileEntityBaseTardimPanel;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.minecraft.ChatFormatting;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.network.chat.Component;
import net.minecraft.network.protocol.game.DebugPackets;
import net.minecraft.server.level.ServerPlayer;
import net.minecraft.sounds.SoundSource;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
@ -29,25 +23,20 @@ import net.minecraft.world.level.block.*;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
import net.minecraft.world.level.material.Material;
import net.minecraft.world.level.material.MapColor;
import net.minecraft.world.phys.BlockHitResult;
import net.minecraft.world.phys.Vec3;
import org.jetbrains.annotations.NotNull;
import su.a71.tardim_ic.tardim_ic.Registration;
import su.a71.tardim_ic.tardim_ic.blocks.redstone_input.RedstoneInputTileEntity;
import su.a71.tardim_ic.tardim_ic.utils.FakePlayer;
import su.a71.tardim_ic.Registration;
import javax.annotation.Nullable;
import static net.minecraft.world.level.block.state.properties.BlockStateProperties.HORIZONTAL_FACING;
public class FoodMachineBlock extends HorizontalDirectionalBlock implements EntityBlock {
public static final DirectionProperty FACING = HorizontalDirectionalBlock.FACING;
public FoodMachineBlock() {
super(FabricBlockSettings.of(Material.METAL).strength(2, 4).noOcclusion()); // No occlusion?
super(Properties.of().strength(2, 4).noOcclusion().mapColor(MapColor.METAL)); // No occlusion?
this.registerDefaultState(this.stateDefinition.any().setValue(FACING, Direction.NORTH));
//this.registerDefaultState(this.stateDefinition.any().setValue(HORIZONTAL_FACING, Direction.NORTH));
}

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.blocks.food_machine;
package su.a71.tardim_ic.blocks.food_machine;
import net.minecraft.core.BlockPos;
import net.minecraft.nbt.CompoundTag;
@ -7,7 +7,7 @@ import net.minecraft.world.item.Items;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState;
import su.a71.tardim_ic.tardim_ic.Registration;
import su.a71.tardim_ic.Registration;
import java.util.UUID;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.blocks.redstone_input;
package su.a71.tardim_ic.blocks.redstone_input;
import com.swdteam.tardim.common.block.BlockBaseTardimPanel;
import com.swdteam.tardim.common.init.TRDDimensions;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.blocks.redstone_input;
package su.a71.tardim_ic.blocks.redstone_input;
import com.swdteam.tardim.tileentity.TileEntityBaseTardimPanel;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.command;
package su.a71.tardim_ic.command;
import com.swdteam.tardim.common.command.tardim.CommandTardimBase;
import com.swdteam.tardim.common.command.tardim.ICommand;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.command;
package su.a71.tardim_ic.command;
import com.swdteam.tardim.common.command.tardim.CommandTardimBase;
import com.swdteam.tardim.common.command.tardim.ICommand;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.command;
package su.a71.tardim_ic.command;
import com.swdteam.tardim.common.command.tardim.CommandTardimBase;
import com.swdteam.tardim.common.command.tardim.ICommand;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.command;
package su.a71.tardim_ic.command;
// This will be added whenever I manage to convince TARDIM devs to make CommandManager.register public
// 13.04.23 ITS ALIVE

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.command;
package su.a71.tardim_ic.command;
import dan200.computercraft.api.network.IPacketSender;
import net.minecraft.core.BlockPos;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat;
package su.a71.tardim_ic.computercraft_compat;
import com.swdteam.tardim.tardim.TardimData;
import com.swdteam.tardim.tardim.TardimManager;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat;
package su.a71.tardim_ic.computercraft_compat;
import com.swdteam.tardim.tardim.TardimData;
import net.minecraft.core.BlockPos;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat;
package su.a71.tardim_ic.computercraft_compat;
import com.swdteam.tardim.common.block.BlockFuelStorage;
import com.swdteam.tardim.common.block.BlockRotor;
@ -10,11 +10,11 @@ import net.minecraft.core.Direction;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.Block;
import org.jetbrains.annotations.NotNull;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals.FuelStoragePeripheral;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals.TardimScannerPeripheral;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals.TimeRotorPeripheral;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.blocks.digital_interface.DigitalInterfaceBlock;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals.DigitalInterfacePeripheral;
import su.a71.tardim_ic.computercraft_compat.peripherals.TimeRotorPeripheral;
import su.a71.tardim_ic.computercraft_compat.peripherals.FuelStoragePeripheral;
import su.a71.tardim_ic.computercraft_compat.peripherals.TardimScannerPeripheral;
import su.a71.tardim_ic.computercraft_compat.blocks.digital_interface.DigitalInterfaceBlock;
import su.a71.tardim_ic.computercraft_compat.peripherals.DigitalInterfacePeripheral;
public class TardimPeripheralProvider implements IPeripheralProvider {
@Override

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat.blocks.digital_interface;
package su.a71.tardim_ic.computercraft_compat.blocks.digital_interface;
import net.minecraft.core.BlockPos;
import net.minecraft.world.level.block.Block;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat.blocks.digital_interface;
package su.a71.tardim_ic.computercraft_compat.blocks.digital_interface;
import net.minecraft.core.BlockPos;
import net.minecraft.world.level.block.entity.BlockEntity;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals;
package su.a71.tardim_ic.computercraft_compat.peripherals;
import com.swdteam.tardim.common.command.tardim.CommandTravel;
import com.swdteam.tardim.common.data.DimensionMapReloadListener;
@ -20,6 +20,7 @@ import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.core.Holder;
import net.minecraft.core.Registry;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerLevel;
@ -34,10 +35,10 @@ import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.levelgen.Heightmap;
import net.minecraft.world.phys.Vec3;
import su.a71.tardim_ic.tardim_ic.Registration;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import su.a71.tardim_ic.tardim_ic.utils.FakePlayer;
import static su.a71.tardim_ic.tardim_ic.Registration.PERSONAL_JAMMER;
import su.a71.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import su.a71.tardim_ic.Registration;
import su.a71.tardim_ic.utils.FakePlayer;
import static su.a71.tardim_ic.Registration.PERSONAL_JAMMER;
import javax.annotation.Nonnull;
import java.util.*;
@ -761,7 +762,7 @@ public class DigitalInterfacePeripheral extends TardimPeripheral implements IPer
@LuaFunction(mainThread = true)
public final ObjectLuaTable getBiomes() throws LuaException {
Map<Integer, String> biomes = new HashMap<>();
Registry<Biome> biomeRegistry = tileEntity.getLevel().registryAccess().registryOrThrow(Registry.BIOME_REGISTRY);
Registry<Biome> biomeRegistry = tileEntity.getLevel().registryAccess().registryOrThrow(Registries.BIOME);
Iterator<ResourceLocation> biome_it = biomeRegistry.keySet().iterator();
int i = 0;
while (biome_it.hasNext()) {

View file

@ -1,11 +1,11 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals;
package su.a71.tardim_ic.computercraft_compat.peripherals;
import com.swdteam.tardim.tardim.TardimData;
import dan200.computercraft.api.lua.LuaException;
import dan200.computercraft.api.lua.LuaFunction;
import dan200.computercraft.api.peripheral.IPeripheral;
import net.minecraft.world.phys.Vec3;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import su.a71.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import javax.annotation.Nonnull;

View file

@ -1,10 +1,10 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals;
package su.a71.tardim_ic.computercraft_compat.peripherals;
import com.swdteam.tardim.tardim.TardimData;
import dan200.computercraft.api.lua.LuaException;
import dan200.computercraft.api.peripheral.IComputerAccess;
import dan200.computercraft.api.peripheral.IPeripheral;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.ITardimPeripheralTileEntity;
import su.a71.tardim_ic.computercraft_compat.ITardimPeripheralTileEntity;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals;
package su.a71.tardim_ic.computercraft_compat.peripherals;
import com.swdteam.tardim.common.init.TardimRegistry;
import com.swdteam.tardim.tardim.TardimData;
@ -7,11 +7,12 @@ import dan200.computercraft.api.lua.LuaFunction;
import dan200.computercraft.api.lua.ObjectLuaTable;
import dan200.computercraft.api.peripheral.IPeripheral;
import net.minecraft.core.Registry;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.server.players.PlayerList;
import net.minecraft.world.level.biome.Biome;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import su.a71.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import javax.annotation.Nonnull;
import java.util.HashMap;
@ -120,7 +121,7 @@ public class TardimScannerPeripheral extends TardimPeripheral implements IPeriph
@LuaFunction(mainThread = true)
public final ObjectLuaTable getBiomes() throws LuaException {
Map<Integer, String> biomes = new HashMap<>();
Registry<Biome> biomeRegistry = tileEntity.getLevel().registryAccess().registryOrThrow(Registry.BIOME_REGISTRY);
Registry<Biome> biomeRegistry = tileEntity.getLevel().registryAccess().registryOrThrow(Registries.BIOME);
Iterator<ResourceLocation> biome_it = biomeRegistry.keySet().iterator();
int i = 0;
while (biome_it.hasNext()) {

View file

@ -1,11 +1,11 @@
package su.a71.tardim_ic.tardim_ic.computercraft_compat.peripherals;
package su.a71.tardim_ic.computercraft_compat.peripherals;
import com.swdteam.tardim.tardim.TardimData;
import dan200.computercraft.api.lua.LuaException;
import dan200.computercraft.api.lua.LuaFunction;
import dan200.computercraft.api.lua.ObjectLuaTable;
import dan200.computercraft.api.peripheral.IPeripheral;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import su.a71.tardim_ic.computercraft_compat.FakeTardimPeripheralTileEntity;
import javax.annotation.Nonnull;
import java.util.Map;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.create_compat.display_source.fuel_storage;
package su.a71.tardim_ic.display_source.fuel_storage;
import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.create_compat.display_source.fuel_storage;
package su.a71.tardim_ic.display_source.fuel_storage;
import com.simibubi.create.content.redstone.displayLink.DisplayLinkContext;
import com.simibubi.create.content.redstone.displayLink.source.NumericSingleLineDisplaySource;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.jammer;
package su.a71.tardim_ic.jammer;
import net.minecraft.sounds.SoundEvent;

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.mixin;
package su.a71.tardim_ic.mixin;
import com.swdteam.tardim.tardim.TardimManager;
import com.swdteam.tardim.tileentity.TileEntityFuelStorage;
@ -10,14 +10,22 @@ import org.spongepowered.asm.mixin.Overwrite;
import static com.swdteam.tardim.tardim.TardimManager.FUEL_MAP;
// This mixin aims to make TARDIM fuel system less awful by allowing users to put standard furance fuel into it.
@Mixin(value = TardimManager.class, remap = false)
@Mixin(value = TardimManager.class, remap = true)
public class BetterFuelMapMixin {
/**
* @author Andrew_7_1
* @reason The original function is too small to bother with insert
*/
@Overwrite
public static boolean isFuel(Item i) {
return FUEL_MAP.containsKey(i) || AbstractFurnaceBlockEntity.getFuel().containsKey(i);
}
/**
* @author Andrew_7_1
* @reason The code change is drastic enough to warrant an overwrite
*/
@Overwrite
public static double getFuel(Item i) {
if (!isFuel(i)) {
@ -30,13 +38,4 @@ public class BetterFuelMapMixin {
else
return AbstractFurnaceBlockEntity.getFuel().get(i) / 8000.0; // Adapt with coal's 1600 ticks -> 0.2 fuel
}
// //@Inject(method = "getFuel(Lnet/minecraft/world/item/Item;)V", at = @At("TAIL"))
// @Overwrite
// public static void getFuel(Item i, CallbackInfo info) {
// LOG.info("We're in #TARDIM");
// if (AbstractFurnaceBlockEntity.getFuel().containsKey(i)) {
//
// }
// }
}

View file

@ -1,11 +1,10 @@
package su.a71.tardim_ic.tardim_ic.mixin;
package su.a71.tardim_ic.mixin;
import com.swdteam.tardim.common.block.BlockFuelStorage;
import com.swdteam.tardim.common.init.TRDDimensions;
import com.swdteam.tardim.tardim.TardimData;
import com.swdteam.tardim.tardim.TardimManager;
import com.swdteam.tardim.tileentity.TileEntityFuelStorage;
import net.fabricmc.loader.impl.util.log.Log;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.world.item.BucketItem;
@ -23,7 +22,7 @@ import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import org.spongepowered.asm.mixin.injection.callback.LocalCapture;
import static su.a71.tardim_ic.tardim_ic.Constants.LOG;
import static su.a71.tardim_ic.Constants.LOG;
@Mixin(value = TileEntityFuelStorage.class, remap = false)
public class BetterFuelStorageMixin {

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.mixin;
package su.a71.tardim_ic.mixin;
import com.swdteam.tardim.common.command.tardim.CommandLocate;
import com.swdteam.tardim.common.command.tardim.CommandTardimBase;

View file

@ -0,0 +1,24 @@
package su.a71.tardim_ic.platform;
import com.example.examplemod.platform.services.IPlatformHelper;
import net.fabricmc.loader.api.FabricLoader;
public class FabricPlatformHelper implements IPlatformHelper {
@Override
public String getPlatformName() {
return "Fabric";
}
@Override
public boolean isModLoaded(String modId) {
return FabricLoader.getInstance().isModLoaded(modId);
}
@Override
public boolean isDevelopmentEnvironment() {
return FabricLoader.getInstance().isDevelopmentEnvironment();
}
}

View file

@ -1,4 +1,4 @@
package su.a71.tardim_ic.tardim_ic.soviet_chronobox;
package su.a71.tardim_ic.soviet_chronobox;
import com.swdteam.tardim.common.init.TRDTiles;
import com.swdteam.tardim.tileentity.TileEntityTardim;

View file

@ -1,78 +0,0 @@
package su.a71.tardim_ic.tardim_ic;
import net.fabricmc.loader.api.FabricLoader;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.world.entity.EquipmentSlot;
import net.minecraft.world.item.*;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.core.Registry;
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder;
import su.a71.tardim_ic.tardim_ic.blocks.food_machine.FoodMachineBlock;
import su.a71.tardim_ic.tardim_ic.blocks.food_machine.FoodMachineTileEntity;
import su.a71.tardim_ic.tardim_ic.jammer.PersonalJammerMaterial;
import su.a71.tardim_ic.tardim_ic.blocks.redstone_input.RedstoneInputBlock;
import su.a71.tardim_ic.tardim_ic.blocks.redstone_input.RedstoneInputTileEntity;
import su.a71.tardim_ic.tardim_ic.registration.CommandInit;
import su.a71.tardim_ic.tardim_ic.registration.ComputerCraftCompat;
import su.a71.tardim_ic.tardim_ic.registration.CreateCompat;
import su.a71.tardim_ic.tardim_ic.registration.Exteriors;
public class Registration {
// Blocks
public static final Block REDSTONE_TARDIM_INPUT = new RedstoneInputBlock();
public static final Block FOOD_MACHINE = new FoodMachineBlock();
// Tile Entities
public static final BlockEntityType<RedstoneInputTileEntity> REDSTONE_TARDIM_INPUT_TILEENTITY = Registry.register(
Registry.BLOCK_ENTITY_TYPE,
new ResourceLocation("tardim_ic", "redstone_tardim_input"),
FabricBlockEntityTypeBuilder.create(RedstoneInputTileEntity::new, REDSTONE_TARDIM_INPUT).build()
);
public static final BlockEntityType<FoodMachineTileEntity> FOOD_MACHINE_TILEENTITY = Registry.register(
Registry.BLOCK_ENTITY_TYPE,
new ResourceLocation("tardim_ic", "food_machine"),
FabricBlockEntityTypeBuilder.create(FoodMachineTileEntity::new, FOOD_MACHINE).build()
);
public static final CreativeModeTab TARDIM_IC_TAB = FabricItemGroupBuilder
.create(new ResourceLocation("tardim_ic"))
.icon(() -> new ItemStack(REDSTONE_TARDIM_INPUT))
.build();
// Cloister bell
public static final ResourceLocation CLOISTER_SOUND = new ResourceLocation("tardim_ic:cloister");
public static SoundEvent CLOISTER_SOUND_EVENT = new SoundEvent(CLOISTER_SOUND);
public static final ArmorMaterial PERSONAL_JAMMER_MATERIAL = new PersonalJammerMaterial();
public static final Item PERSONAL_JAMMER = new ArmorItem(PERSONAL_JAMMER_MATERIAL, EquipmentSlot.CHEST, new Item.Properties().tab(TARDIM_IC_TAB));
// Register our stuff
public static void register() {
Registry.register(Registry.ITEM, new ResourceLocation(Constants.MOD_ID, "personal_jammer"), PERSONAL_JAMMER);
if (FabricLoader.getInstance().isModLoaded("computercraft")) {
ComputerCraftCompat.register(); // Register ComputerCraft-related features
}
if (FabricLoader.getInstance().isModLoaded("create")) {
CreateCompat.register(); // Register Create-related features
}
Exteriors.register(); // Register custom TARDIM exteriors
Registry.register(Registry.BLOCK, new ResourceLocation(Constants.MOD_ID, "redstone_tardim_input"), REDSTONE_TARDIM_INPUT);
Registry.register(Registry.ITEM, new ResourceLocation(Constants.MOD_ID, "redstone_tardim_input"), new BlockItem(REDSTONE_TARDIM_INPUT, new Item.Properties().tab(TARDIM_IC_TAB)));
Registry.register(Registry.BLOCK, new ResourceLocation(Constants.MOD_ID, "food_machine"), FOOD_MACHINE);
Registry.register(Registry.ITEM, new ResourceLocation(Constants.MOD_ID, "food_machine"), new BlockItem(FOOD_MACHINE, new Item.Properties().tab(TARDIM_IC_TAB)));
Registry.register(Registry.SOUND_EVENT, CLOISTER_SOUND, CLOISTER_SOUND_EVENT);
CommandInit.init();
}
}

View file

@ -3,9 +3,9 @@ package su.a71.tardim_ic.tardim_ic.registration;
import com.swdteam.tardim.common.init.CommandManager;
import su.a71.tardim_ic.tardim_ic.command.CommandCloisterBell;
import su.a71.tardim_ic.tardim_ic.command.CommandListBiomes;
import su.a71.tardim_ic.tardim_ic.command.CommandListDimensions;
import su.a71.tardim_ic.command.CommandCloisterBell;
import su.a71.tardim_ic.command.CommandListBiomes;
import su.a71.tardim_ic.command.CommandListDimensions;
public class CommandInit {
public static void init() {

View file

@ -11,10 +11,10 @@ import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.entity.BlockEntityType;
import su.a71.tardim_ic.tardim_ic.Constants;
import su.a71.tardim_ic.tardim_ic.Registration;
import su.a71.tardim_ic.tardim_ic.command.CommandModemTransmit;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.TardimPeripheralProvider;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.blocks.digital_interface.DigitalInterfaceBlock;
import su.a71.tardim_ic.tardim_ic.computercraft_compat.blocks.digital_interface.DigitalInterfaceTileEntity;
import su.a71.tardim_ic.command.CommandModemTransmit;
import su.a71.tardim_ic.computercraft_compat.TardimPeripheralProvider;
import su.a71.tardim_ic.computercraft_compat.blocks.digital_interface.DigitalInterfaceBlock;
import su.a71.tardim_ic.computercraft_compat.blocks.digital_interface.DigitalInterfaceTileEntity;
public class ComputerCraftCompat {
public static final Block DIGITAL_TARDIM_INTERFACE = new DigitalInterfaceBlock();

View file

@ -4,8 +4,8 @@ package su.a71.tardim_ic.tardim_ic.registration;
import com.simibubi.create.content.redstone.displayLink.AllDisplayBehaviours;
import net.minecraft.resources.ResourceLocation;
import su.a71.tardim_ic.tardim_ic.Constants;
import su.a71.tardim_ic.tardim_ic.create_compat.display_source.fuel_storage.FuelLevelDisplaySource;
import su.a71.tardim_ic.tardim_ic.create_compat.display_source.fuel_storage.RequiredFuelDisplaySource;
import su.a71.tardim_ic.display_source.fuel_storage.FuelLevelDisplaySource;
import su.a71.tardim_ic.display_source.fuel_storage.RequiredFuelDisplaySource;
import static com.swdteam.tardim.common.init.TRDTiles.TILE_FUEL_STORAGE;

View file

@ -21,7 +21,7 @@ import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.material.Material;
import su.a71.tardim_ic.tardim_ic.Constants;
import su.a71.tardim_ic.tardim_ic.soviet_chronobox.SovietChronoboxTileEntity;
import su.a71.tardim_ic.soviet_chronobox.SovietChronoboxTileEntity;
public class Exteriors {
// Soviet Chronobox

View file

@ -0,0 +1 @@
com.example.examplemod.platform.FabricPlatformHelper

View file

@ -2,40 +2,35 @@
"schemaVersion": 1,
"id": "tardim_ic",
"version": "${version}",
"name": "Tardim: In Control",
"description": "All of time and space, now automated and improved. This mod aims to make TARDIM even better.",
"name": "${mod_name}",
"description": "All of time and space, now automated and improved. This mod aims to improve your TARDIM experience",
"authors": [
"Andrew_7_1"
"${mod_author}"
],
"contact": {
"sources": "https://github.com/Andrew-71/tardim-in-control"
"homepage": "https://tardim.a71.su/",
"sources": "https://github.com/Andrew-71/tardim-in-control"
},
"license": "MIT",
"icon": "icon.png",
"icon": "assets/tardim_ic/icon.png",
"environment": "*",
"entrypoints": {
"main": [
"su.a71.tardim_ic.tardim_ic.TardimInControl"
]
"main": [
"su.a71.tardim_ic.TardimInControl"
]
},
"mixins": [
"mixins.tardim_ic.json"
],
"mixins": [
"tardim_ic.mixins.json",
"tardim_ic.fabric.mixins.json"
],
"depends": {
"fabricloader": ">=0.14.10",
"fabric": "*",
"minecraft": "1.19.x",
"java": ">=17",
"tardim": ">=1.2.2"
"fabricloader": ">=0.14",
"fabric": "*",
"minecraft": "1.20",
"java": ">=17",
"tardim": ">=1.2.2"
},
"suggests": {
"computercraft": ">=1.101.0",
"create": ">=0.5.1"
}
}
"suggests": {
"computercraft": ">=${cc_version}"
}
}

View file

@ -1,17 +0,0 @@
{
"required": true,
"package": "su.a71.tardim_ic.tardim_ic.mixin",
"compatibilityLevel": "JAVA_17",
"refmap": "refmap.tardim_ic.json",
"mixins": [
"BetterFuelMapMixin",
"BetterFuelStorageMixin",
"JammerMixin"
],
"client": [
],
"injectors": {
"defaultRequire": 1
},
"minVersion": "0.8.4"
}

View file

@ -0,0 +1,18 @@
{
"required": true,
"minVersion": "0.8",
"package": "com.example.examplemod.mixin",
"refmap": "${mod_id}.refmap.json",
"compatibilityLevel": "JAVA_17",
"mixins": [
],
"client": [
"MixinTitleScreen"
],
"server": [
],
"injectors": {
"defaultRequire": 1
}
}