Enforce import order
This commit is contained in:
parent
dd9915f02d
commit
39e7692127
287 changed files with 1993 additions and 1141 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -12,7 +12,8 @@ out
|
|||
*.ipr
|
||||
*.iws
|
||||
*.iml
|
||||
.idea
|
||||
.idea/*
|
||||
!.idea/codeStyles
|
||||
|
||||
# gradle
|
||||
build
|
||||
|
|
309
.idea/codeStyles/Project.xml
Normal file
309
.idea/codeStyles/Project.xml
Normal file
|
@ -0,0 +1,309 @@
|
|||
<component name="ProjectCodeStyleConfiguration">
|
||||
<code_scheme name="Project" version="173">
|
||||
<JavaCodeStyleSettings>
|
||||
<option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="50" />
|
||||
<option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="50" />
|
||||
<option name="PACKAGES_TO_USE_IMPORT_ON_DEMAND">
|
||||
<value />
|
||||
</option>
|
||||
<option name="IMPORT_LAYOUT_TABLE">
|
||||
<value>
|
||||
<package name="java" withSubpackages="true" static="false" />
|
||||
<emptyLine />
|
||||
<package name="javax" withSubpackages="true" static="false" />
|
||||
<emptyLine />
|
||||
<package name="" withSubpackages="true" static="false" />
|
||||
<emptyLine />
|
||||
<package name="net.minecraft" withSubpackages="true" static="false" />
|
||||
<emptyLine />
|
||||
<package name="net.fabricmc" withSubpackages="true" static="false" />
|
||||
<emptyLine />
|
||||
<package name="net.legacyfabric" withSubpackages="true" static="false" />
|
||||
<emptyLine />
|
||||
<package name="" withSubpackages="true" static="true" />
|
||||
</value>
|
||||
</option>
|
||||
</JavaCodeStyleSettings>
|
||||
<JetCodeStyleSettings>
|
||||
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
|
||||
</JetCodeStyleSettings>
|
||||
<ScalaCodeStyleSettings>
|
||||
<option name="MULTILINE_STRING_CLOSING_QUOTES_ON_NEW_LINE" value="true" />
|
||||
</ScalaCodeStyleSettings>
|
||||
<codeStyleSettings language="JAVA">
|
||||
<indentOptions>
|
||||
<option name="USE_TAB_CHARACTER" value="true" />
|
||||
</indentOptions>
|
||||
<arrangement>
|
||||
<rules>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PUBLIC>true</PUBLIC>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PROTECTED>true</PROTECTED>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PACKAGE_PRIVATE>true</PACKAGE_PRIVATE>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PRIVATE>true</PRIVATE>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PUBLIC>true</PUBLIC>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PROTECTED>true</PROTECTED>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PACKAGE_PRIVATE>true</PACKAGE_PRIVATE>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PRIVATE>true</PRIVATE>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PUBLIC>true</PUBLIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PROTECTED>true</PROTECTED>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PACKAGE_PRIVATE>true</PACKAGE_PRIVATE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<FINAL>true</FINAL>
|
||||
<PRIVATE>true</PRIVATE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PUBLIC>true</PUBLIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PROTECTED>true</PROTECTED>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PACKAGE_PRIVATE>true</PACKAGE_PRIVATE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<FIELD>true</FIELD>
|
||||
<PRIVATE>true</PRIVATE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<FIELD>true</FIELD>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<INITIALIZER_BLOCK>true</INITIALIZER_BLOCK>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<CONSTRUCTOR>true</CONSTRUCTOR>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<METHOD>true</METHOD>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<METHOD>true</METHOD>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<INITIALIZER_BLOCK>true</INITIALIZER_BLOCK>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<ENUM>true</ENUM>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<INTERFACE>true</INTERFACE>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<CLASS>true</CLASS>
|
||||
<STATIC>true</STATIC>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<CLASS>true</CLASS>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
</rules>
|
||||
</arrangement>
|
||||
</codeStyleSettings>
|
||||
<codeStyleSettings language="Scala">
|
||||
<indentOptions>
|
||||
<option name="INDENT_SIZE" value="4" />
|
||||
<option name="CONTINUATION_INDENT_SIZE" value="4" />
|
||||
<option name="TAB_SIZE" value="4" />
|
||||
<option name="USE_TAB_CHARACTER" value="true" />
|
||||
</indentOptions>
|
||||
</codeStyleSettings>
|
||||
<codeStyleSettings language="kotlin">
|
||||
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
|
||||
</codeStyleSettings>
|
||||
</code_scheme>
|
||||
</component>
|
5
.idea/codeStyles/codeStyleConfig.xml
Normal file
5
.idea/codeStyles/codeStyleConfig.xml
Normal file
|
@ -0,0 +1,5 @@
|
|||
<component name="ProjectCodeStyleConfiguration">
|
||||
<state>
|
||||
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
|
||||
</state>
|
||||
</component>
|
|
@ -1,5 +1,13 @@
|
|||
package org.dimdev.dimdoors.client.util;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.lang.reflect.Modifier;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import me.shedaniel.clothconfig2.api.ConfigBuilder;
|
||||
import me.shedaniel.clothconfig2.api.ConfigCategory;
|
||||
|
@ -8,20 +16,14 @@ import me.shedaniel.clothconfig2.impl.builders.BooleanToggleBuilder;
|
|||
import me.shedaniel.clothconfig2.impl.builders.DoubleFieldBuilder;
|
||||
import me.shedaniel.clothconfig2.impl.builders.IntFieldBuilder;
|
||||
import me.shedaniel.clothconfig2.impl.builders.IntListBuilder;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import net.minecraft.client.gui.screen.Screen;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.lang.reflect.Modifier;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Stream;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class ScreenGenerator {
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import net.minecraft.advancement.Advancement;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricAdvancementProvider;
|
||||
import net.minecraft.advancement.Advancement;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class AdvancementProvider extends FabricAdvancementProvider {
|
||||
public AdvancementProvider(FabricDataOutput dataGenerator) {
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import net.minecraft.advancement.Advancement;
|
||||
import net.minecraft.advancement.AdvancementDisplay;
|
||||
import net.minecraft.advancement.AdvancementFrame;
|
||||
|
@ -17,14 +19,13 @@ import net.minecraft.registry.tag.TagKey;
|
|||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.criteria.PocketSpawnPointSetCondition;
|
||||
import org.dimdev.dimdoors.criteria.RiftTrackedCriterion;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class AdvancementTab implements Consumer<Consumer<Advancement>> {
|
||||
static AdvancementDisplay makeDisplay(ItemConvertible item, String titleKey) {
|
||||
return new AdvancementDisplay(item.asItem().getDefaultStack(),
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.data.client.BlockStateModelGenerator;
|
||||
|
@ -10,6 +8,10 @@ import net.minecraft.data.client.Models;
|
|||
import net.minecraft.data.client.TextureMap;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
|
||||
|
|
|
@ -1,15 +1,17 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.registry.RegistryWrapper;
|
||||
import net.minecraft.registry.tag.BlockTags;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
|
||||
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
import org.dimdev.dimdoors.tag.ModBlockTags;
|
||||
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
public class BlockTagProvider extends FabricTagProvider.BlockTagProvider {
|
||||
public BlockTagProvider(FabricDataOutput output, CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture) {
|
||||
super(output, registriesFuture);
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import net.minecraft.advancement.criterion.InventoryChangedCriterion;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.data.server.recipe.RecipeJsonProvider;
|
||||
|
@ -8,13 +10,13 @@ import net.minecraft.data.server.recipe.ShapedRecipeJsonBuilder;
|
|||
import net.minecraft.item.DyeItem;
|
||||
import net.minecraft.recipe.book.RecipeCategory;
|
||||
import net.minecraft.util.DyeColor;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class ColoredFabricRecipeProvider extends net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider {
|
||||
|
||||
public ColoredFabricRecipeProvider(FabricDataOutput dataGenerator) {
|
||||
|
|
|
@ -2,6 +2,7 @@ package org.dimdev.dimdoors.datagen;
|
|||
|
||||
import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint;
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
|
||||
public class DatagenInitializer implements DataGeneratorEntrypoint {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import net.minecraft.advancement.criterion.InventoryChangedCriterion;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.data.server.recipe.RecipeJsonProvider;
|
||||
|
@ -13,11 +13,13 @@ import net.minecraft.recipe.book.RecipeCategory;
|
|||
import net.minecraft.registry.RegistryKeys;
|
||||
import net.minecraft.registry.tag.TagKey;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
|
||||
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import static org.dimdev.dimdoors.DimensionalDoors.id;
|
||||
|
||||
public class DimdoorsRecipeProvider extends FabricRecipeProvider {
|
||||
|
|
|
@ -1,10 +1,19 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import java.nio.file.Path;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.BiConsumer;
|
||||
|
||||
import com.google.common.collect.Sets;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.gson.JsonObject;
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.data.DataOutput;
|
||||
|
@ -14,8 +23,9 @@ import net.minecraft.nbt.NbtCompound;
|
|||
import net.minecraft.registry.tag.BlockTags;
|
||||
import net.minecraft.registry.tag.TagKey;
|
||||
import net.minecraft.util.Identifier;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.api.util.ResourceUtil;
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
|
@ -28,13 +38,6 @@ import org.dimdev.dimdoors.world.decay.processors.DoorDecayProccessor;
|
|||
import org.dimdev.dimdoors.world.decay.processors.SelfDecayProcessor;
|
||||
import org.dimdev.dimdoors.world.decay.processors.SimpleDecayProcesor;
|
||||
|
||||
import java.nio.file.Path;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.BiConsumer;
|
||||
|
||||
public class LimboDecayProvider implements DataProvider {
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
private static final Gson GSON = (new GsonBuilder()).setPrettyPrinting().disableHtmlEscaping().create();
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricBlockLootTableProvider;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.enchantment.Enchantments;
|
||||
import net.minecraft.loot.condition.TableBonusLootCondition;
|
||||
import net.minecraft.loot.entry.ItemEntry;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricBlockLootTableProvider;
|
||||
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
|
||||
|
|
|
@ -1,10 +1,17 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonObject;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.advancement.Advancement;
|
||||
import net.minecraft.advancement.AdvancementRewards;
|
||||
import net.minecraft.advancement.CriterionMerger;
|
||||
|
@ -20,13 +27,8 @@ import net.minecraft.recipe.book.RecipeCategory;
|
|||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.registry.tag.TagKey;
|
||||
import net.minecraft.util.Identifier;
|
||||
import org.dimdev.dimdoors.recipe.ModRecipeSerializers;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
import org.dimdev.dimdoors.recipe.ModRecipeSerializers;
|
||||
|
||||
public class TesselatingRecipeJsonBuilder implements CraftingRecipeJsonBuilder {
|
||||
private final RecipeCategory category;
|
||||
|
|
|
@ -1,12 +1,14 @@
|
|||
package org.dimdev.dimdoors.datagen;
|
||||
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import net.minecraft.data.server.recipe.RecipeJsonProvider;
|
||||
import net.minecraft.item.Items;
|
||||
import net.minecraft.recipe.Ingredient;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
|
||||
import static net.minecraft.advancement.criterion.InventoryChangedCriterion.Conditions.items;
|
||||
|
||||
|
|
|
@ -1,7 +1,22 @@
|
|||
package org.dimdev.dimdoors;
|
||||
|
||||
import java.nio.file.Path;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
import me.shedaniel.autoconfig.AutoConfig;
|
||||
import me.shedaniel.autoconfig.ConfigHolder;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.registry.RegistryKey;
|
||||
import net.minecraft.resource.ResourceType;
|
||||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import net.fabricmc.api.ModInitializer;
|
||||
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerChunkEvents;
|
||||
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents;
|
||||
|
@ -13,13 +28,7 @@ import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents;
|
|||
import net.fabricmc.fabric.api.resource.ResourceManagerHelper;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import net.fabricmc.loader.api.ModContainer;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.registry.RegistryKey;
|
||||
import net.minecraft.resource.ResourceType;
|
||||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.dimdev.dimdoors.api.DimensionalDoorsApi;
|
||||
import org.dimdev.dimdoors.api.event.UseItemOnBlockCallback;
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
|
@ -38,7 +47,11 @@ import org.dimdev.dimdoors.item.ModItems;
|
|||
import org.dimdev.dimdoors.listener.AttackBlockCallbackListener;
|
||||
import org.dimdev.dimdoors.listener.ChunkLoadListener;
|
||||
import org.dimdev.dimdoors.listener.UseDoorItemOnBlockCallbackListener;
|
||||
import org.dimdev.dimdoors.listener.pocket.*;
|
||||
import org.dimdev.dimdoors.listener.pocket.PlayerBlockBreakEventBeforeListener;
|
||||
import org.dimdev.dimdoors.listener.pocket.PocketAttackBlockCallbackListener;
|
||||
import org.dimdev.dimdoors.listener.pocket.UseBlockCallbackListener;
|
||||
import org.dimdev.dimdoors.listener.pocket.UseItemCallbackListener;
|
||||
import org.dimdev.dimdoors.listener.pocket.UseItemOnBlockCallbackListener;
|
||||
import org.dimdev.dimdoors.network.ExtendedServerPlayNetworkHandler;
|
||||
import org.dimdev.dimdoors.particle.ModParticleTypes;
|
||||
import org.dimdev.dimdoors.pockets.PocketLoader;
|
||||
|
@ -59,12 +72,6 @@ import org.dimdev.dimdoors.world.decay.LimboDecay;
|
|||
import org.dimdev.dimdoors.world.feature.ModFeatures;
|
||||
import org.dimdev.dimdoors.world.pocket.type.AbstractPocket;
|
||||
import org.dimdev.dimdoors.world.pocket.type.addon.PocketAddon;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.nio.file.Path;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
public class DimensionalDoors implements ModInitializer {
|
||||
public static List<DimensionalDoorsApi> apiSubscribers = Collections.emptyList();
|
||||
|
|
|
@ -2,16 +2,16 @@ package org.dimdev.dimdoors;
|
|||
|
||||
import dev.onyxstudios.cca.api.v3.chunk.ChunkComponentFactoryRegistry;
|
||||
import dev.onyxstudios.cca.api.v3.chunk.ChunkComponentInitializer;
|
||||
|
||||
import dev.onyxstudios.cca.api.v3.component.ComponentKey;
|
||||
import dev.onyxstudios.cca.api.v3.component.ComponentRegistryV3;
|
||||
import dev.onyxstudios.cca.api.v3.item.ItemComponentFactoryRegistry;
|
||||
import dev.onyxstudios.cca.api.v3.item.ItemComponentInitializer;
|
||||
import dev.onyxstudios.cca.api.v3.level.LevelComponentFactoryRegistry;
|
||||
import dev.onyxstudios.cca.api.v3.level.LevelComponentInitializer;
|
||||
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
import org.dimdev.dimdoors.world.level.component.ChunkLazilyGeneratedComponent;
|
||||
import org.dimdev.dimdoors.item.component.CounterComponent;
|
||||
import org.dimdev.dimdoors.world.level.component.ChunkLazilyGeneratedComponent;
|
||||
import org.dimdev.dimdoors.world.level.registry.DimensionalRegistry;
|
||||
|
||||
@SuppressWarnings("UnstableApiUsage")
|
||||
|
|
|
@ -1,17 +1,5 @@
|
|||
package org.dimdev.dimdoors;
|
||||
|
||||
import me.shedaniel.autoconfig.ConfigData;
|
||||
import me.shedaniel.autoconfig.annotation.Config;
|
||||
import me.shedaniel.autoconfig.serializer.ConfigSerializer;
|
||||
import me.shedaniel.autoconfig.util.Utils;
|
||||
import me.shedaniel.cloth.clothconfig.shadowed.blue.endless.jankson.Jankson;
|
||||
import me.shedaniel.clothconfig2.gui.entries.SelectionListEntry;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.EnvironmentInterface;
|
||||
import net.fabricmc.fabric.api.resource.ResourcePackActivationType;
|
||||
import net.minecraft.util.Identifier;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
|
@ -21,9 +9,27 @@ import java.util.LinkedList;
|
|||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import me.shedaniel.autoconfig.ConfigData;
|
||||
import me.shedaniel.autoconfig.annotation.Config;
|
||||
import me.shedaniel.autoconfig.serializer.ConfigSerializer;
|
||||
import me.shedaniel.autoconfig.util.Utils;
|
||||
import me.shedaniel.cloth.clothconfig.shadowed.blue.endless.jankson.Jankson;
|
||||
import me.shedaniel.clothconfig2.gui.entries.SelectionListEntry;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.EnvironmentInterface;
|
||||
import net.fabricmc.fabric.api.resource.ResourcePackActivationType;
|
||||
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Category;
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Gui.*;
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Gui.CollapsibleObject;
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Gui.EnumHandler;
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON;
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Gui.RequiresRestart;
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Gui.Tooltip;
|
||||
import static me.shedaniel.autoconfig.annotation.ConfigEntry.Gui.TransitiveObject;
|
||||
|
||||
@SuppressWarnings("FieldMayBeFinal")
|
||||
@Config(name = "dimdoors")
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package org.dimdev.dimdoors.api;
|
||||
|
||||
import net.minecraft.registry.Registry;
|
||||
|
||||
import org.dimdev.dimdoors.block.door.data.condition.Condition;
|
||||
import org.dimdev.dimdoors.pockets.generator.PocketGenerator;
|
||||
import org.dimdev.dimdoors.pockets.modifier.Modifier;
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package org.dimdev.dimdoors.api.block;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.entity.Entity;
|
||||
|
@ -9,8 +11,6 @@ import net.minecraft.util.TypedActionResult;
|
|||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
/**
|
||||
* Only works in cases where {@link net.minecraft.block.AbstractBlock#getStateForNeighborUpdate AbstractBlock#getStateForNeighborUpdate} returns an air {@link BlockState}
|
||||
*/
|
||||
|
|
|
@ -1,15 +1,17 @@
|
|||
package org.dimdev.dimdoors.api.block.entity;
|
||||
|
||||
import com.mojang.datafixers.types.Type;
|
||||
import net.fabricmc.fabric.mixin.lookup.BlockEntityTypeAccessor;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import com.mojang.datafixers.types.Type;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
|
||||
import net.fabricmc.fabric.mixin.lookup.BlockEntityTypeAccessor;
|
||||
|
||||
public class MutableBlockEntityType<T extends BlockEntity> extends BlockEntityType<T> {
|
||||
|
||||
public MutableBlockEntityType(BlockEntityFactory<? extends T> factory, Set<Block> blocks, Type<?> type) {
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
package org.dimdev.dimdoors.api.client;
|
||||
|
||||
import org.joml.Quaternionf;
|
||||
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.util.math.Direction;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import org.joml.Quaternionf;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public enum DefaultTransformation implements Transformer {
|
||||
|
|
|
@ -1,18 +1,23 @@
|
|||
package org.dimdev.dimdoors.api.client;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import java.util.Collections;
|
||||
|
||||
import net.minecraft.client.model.ModelPart;
|
||||
import net.minecraft.client.render.*;
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.client.render.RenderPhase;
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
import net.minecraft.client.render.VertexFormat;
|
||||
import net.minecraft.client.render.VertexFormats;
|
||||
import net.minecraft.client.render.block.entity.EndPortalBlockEntityRenderer;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.client.ModShaders;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public final class DimensionalPortalRenderer {
|
||||
public static final Identifier WARP_PATH;
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
package org.dimdev.dimdoors.api.client;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import org.dimdev.dimdoors.mixin.client.accessor.RenderLayerAccessor;
|
||||
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.client.render.VertexFormat;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.mixin.client.accessor.RenderLayerAccessor;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class RenderLayerFactory {
|
||||
public static RenderLayer create(String name, VertexFormat vertexFormat, VertexFormat.DrawMode drawMode, int expectedBufferSize, boolean hasCrumbling, boolean translucent, RenderLayer.MultiPhaseParameters phases) {
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
package org.dimdev.dimdoors.api.client;
|
||||
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
|
||||
/**
|
||||
* A Transformer is a matrix stack consumer.
|
||||
|
|
|
@ -1,13 +1,14 @@
|
|||
package org.dimdev.dimdoors.api.event;
|
||||
|
||||
import net.fabricmc.fabric.api.event.Event;
|
||||
import net.fabricmc.fabric.api.event.EventFactory;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.util.ActionResult;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.hit.BlockHitResult;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import net.fabricmc.fabric.api.event.Event;
|
||||
import net.fabricmc.fabric.api.event.EventFactory;
|
||||
|
||||
public interface UseItemOnBlockCallback {
|
||||
Event<UseItemOnBlockCallback> EVENT = EventFactory.createArrayBacked(UseItemOnBlockCallback.class,
|
||||
listeners -> (player, world, hand, hitresult) -> {
|
||||
|
|
|
@ -2,7 +2,6 @@ package org.dimdev.dimdoors.api.rift.target;
|
|||
|
||||
import java.util.Optional;
|
||||
|
||||
import org.dimdev.dimdoors.api.rift.target.Target;
|
||||
import org.dimdev.dimdoors.api.util.InstanceMap;
|
||||
|
||||
public final class DefaultTargets {
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.function.BiConsumer;
|
||||
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.server.ServerTask;
|
||||
import net.minecraft.util.StringIdentifiable;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.function.BiConsumer;
|
||||
|
||||
public enum BlockPlacementType implements StringIdentifiable {
|
||||
// TODO: do we need some update fluids only option?
|
||||
SECTION_NO_UPDATE_QUEUE_BLOCK_ENTITY("section_no_update_queue_block_entity", true, false, BlockPlacementType::queueBlockEntity),
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import org.apache.logging.log4j.util.TriConsumer;
|
||||
|
||||
import java.util.Set;
|
||||
import java.util.function.BiConsumer;
|
||||
import java.util.function.BinaryOperator;
|
||||
|
@ -9,6 +7,8 @@ import java.util.function.Function;
|
|||
import java.util.function.Supplier;
|
||||
import java.util.stream.Collector;
|
||||
|
||||
import org.apache.logging.log4j.util.TriConsumer;
|
||||
|
||||
public record ExceptionHandlingCollector<T, A, R>(Collector<T, A, R> collector, TriConsumer<A, T, Exception> exceptionalAccumulator) implements Collector<T, A, R> {
|
||||
@Override
|
||||
public Supplier<A> supplier() {
|
||||
|
|
|
@ -2,6 +2,7 @@ package org.dimdev.dimdoors.api.util;
|
|||
|
||||
import com.mojang.serialization.Codec;
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.fluid.FluidState;
|
||||
|
@ -12,6 +13,7 @@ import net.minecraft.server.world.ServerWorld;
|
|||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
|
||||
public class Location {
|
||||
|
|
|
@ -4,12 +4,15 @@ import java.util.Map;
|
|||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import org.dimdev.dimdoors.api.util.math.Equation;
|
||||
import net.fabricmc.fabric.api.util.NbtType;
|
||||
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.nbt.NbtElement;
|
||||
import net.minecraft.nbt.NbtList;
|
||||
|
||||
import net.fabricmc.fabric.api.util.NbtType;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.math.Equation;
|
||||
|
||||
public class NbtEquations {
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import com.mojang.serialization.Codec;
|
||||
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.nbt.NbtElement;
|
||||
import net.minecraft.nbt.NbtOps;
|
||||
|
||||
import net.fabricmc.fabric.api.util.NbtType;
|
||||
|
||||
public class NbtUtil {
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.Queue;
|
||||
import java.util.function.BiFunction;
|
||||
import java.util.function.BinaryOperator;
|
||||
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
public class Path<K> {
|
||||
private final ArrayList<K> path;
|
||||
|
||||
|
|
|
@ -3,9 +3,11 @@ package org.dimdev.dimdoors.api.util;
|
|||
import java.util.Iterator;
|
||||
import java.util.Objects;
|
||||
import java.util.function.Consumer;
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
|
||||
public final class RGBA implements Cloneable, Comparable<RGBA>, Iterable<Float> {
|
||||
public static final RGBA NONE = new RGBA(0, 0, 0, 0);
|
||||
|
||||
|
|
|
@ -1,21 +1,5 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import com.google.common.collect.HashMultimap;
|
||||
import com.google.common.collect.Multimap;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mojang.serialization.JsonOps;
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.nbt.NbtElement;
|
||||
import net.minecraft.nbt.NbtIo;
|
||||
import net.minecraft.nbt.NbtOps;
|
||||
import net.minecraft.resource.Resource;
|
||||
import net.minecraft.resource.ResourceManager;
|
||||
import net.minecraft.util.Identifier;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
|
@ -27,6 +11,23 @@ import java.util.function.BiFunction;
|
|||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.google.common.collect.HashMultimap;
|
||||
import com.google.common.collect.Multimap;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mojang.serialization.JsonOps;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.nbt.NbtElement;
|
||||
import net.minecraft.nbt.NbtIo;
|
||||
import net.minecraft.nbt.NbtOps;
|
||||
import net.minecraft.resource.Resource;
|
||||
import net.minecraft.resource.ResourceManager;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
public class ResourceUtil {
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
private static final Gson GSON = new GsonBuilder().setLenient().setPrettyPrinting().create();
|
||||
|
|
|
@ -1,12 +1,18 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import java.util.AbstractMap;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Queue;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
// TODO: someone clean this up please, this implementation seems mediocre at best
|
||||
public class SimpleTree<K, T> implements Map<Path<K>, T> {
|
||||
final TreeNode<K, T> entries = new TreeNode<>();
|
||||
|
|
|
@ -1,22 +1,28 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import net.fabricmc.fabric.api.dimension.v1.FabricDimensions;
|
||||
import java.util.concurrent.ThreadLocalRandom;
|
||||
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.server.world.ChunkTicketType;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.math.*;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.ChunkPos;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import net.minecraft.world.TeleportTarget;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import net.fabricmc.fabric.api.dimension.v1.FabricDimensions;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.entity.stat.ModStats;
|
||||
import org.dimdev.dimdoors.network.ExtendedServerPlayNetworkHandler;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
|
||||
import java.util.concurrent.ThreadLocalRandom;
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public final class TeleportUtil {
|
||||
public static <E extends Entity> E teleport(E entity, World world, BlockPos pos, float yaw) {
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
package org.dimdev.dimdoors.api.util;
|
||||
|
||||
import net.minecraft.util.math.random.Random;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
import net.minecraft.util.math.random.Random;
|
||||
|
||||
public class WeightedList<T extends Weighted<C>, C> extends ArrayList<T> {
|
||||
private final Random random = Random.create();
|
||||
private T peekedRandom;
|
||||
|
|
|
@ -11,10 +11,10 @@ import java.util.function.BiFunction;
|
|||
import java.util.function.Function;
|
||||
import java.util.function.UnaryOperator;
|
||||
|
||||
import net.minecraft.util.Pair;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import net.minecraft.util.Pair;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
|
||||
//@FunctionalInterface
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
package org.dimdev.dimdoors.api.util.math;
|
||||
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Vector;
|
||||
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
|
||||
public final class GridUtil {
|
||||
public static final class GridPos {
|
||||
public int x;
|
||||
|
|
|
@ -1,15 +1,13 @@
|
|||
package org.dimdev.dimdoors.api.util.math;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
|
||||
import java.util.Map;
|
||||
import net.minecraft.util.math.random.Random;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.math.TransformationMatrix3d;
|
||||
|
||||
public final class MathUtil {
|
||||
public static <T> T weightedRandom(Map<T, Float> weights) {
|
||||
if (weights.size() == 0) return null;
|
||||
|
|
|
@ -4,6 +4,7 @@ import net.minecraft.block.BlockState;
|
|||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.math.TransformationMatrix3d;
|
||||
|
||||
public interface CoordinateTransformerBlock {
|
||||
|
|
|
@ -1,20 +1,18 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.minecraft.block.*;
|
||||
import net.minecraft.state.StateManager;
|
||||
import net.minecraft.state.property.BooleanProperty;
|
||||
import net.minecraft.state.property.Properties;
|
||||
import net.minecraft.util.math.random.Random;
|
||||
import org.dimdev.dimdoors.block.entity.DetachedRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes;
|
||||
import org.dimdev.dimdoors.particle.client.RiftParticleEffect;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockRenderType;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.MapColor;
|
||||
import net.minecraft.block.ShapeContext;
|
||||
import net.minecraft.block.Waterloggable;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.entity.BlockEntityTicker;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.random.Random;
|
||||
import net.minecraft.util.shape.VoxelShape;
|
||||
import net.minecraft.util.shape.VoxelShapes;
|
||||
import net.minecraft.world.BlockView;
|
||||
|
@ -23,6 +21,11 @@ import net.minecraft.world.World;
|
|||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.DetachedRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes;
|
||||
import org.dimdev.dimdoors.particle.client.RiftParticleEffect;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
|
||||
public class DetachedRiftBlock extends WaterLoggableBlockWithEntity implements RiftProvider<DetachedRiftBlockEntity>, Waterloggable {
|
||||
public static final String ID = "rift";
|
||||
public DetachedRiftBlock(Block.Settings settings) {
|
||||
|
|
|
@ -1,12 +1,5 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import org.apache.logging.log4j.Level;
|
||||
import org.dimdev.dimdoors.api.util.Location;
|
||||
import org.dimdev.dimdoors.block.entity.DetachedRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes;
|
||||
import org.dimdev.dimdoors.world.level.registry.DimensionalRegistry;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
|
@ -18,6 +11,7 @@ import net.minecraft.block.entity.BlockEntity;
|
|||
import net.minecraft.block.entity.BlockEntityTicker;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.state.StateManager;
|
||||
import net.minecraft.state.property.DirectionProperty;
|
||||
import net.minecraft.util.BlockMirror;
|
||||
|
@ -32,6 +26,10 @@ import net.minecraft.world.World;
|
|||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.DetachedRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes;
|
||||
|
||||
// TODO: copy over all the necessary bits from DimensionalDoorBlock
|
||||
public class DimensionalPortalBlock extends Block implements RiftProvider<EntranceRiftBlockEntity> {
|
||||
public static DirectionProperty FACING = HorizontalFacingBlock.FACING;
|
||||
|
|
|
@ -1,20 +1,19 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
|
||||
import org.dimdev.dimdoors.entity.limbo.LimboExitReason;
|
||||
import org.dimdev.dimdoors.fluid.ModFluids;
|
||||
import org.dimdev.dimdoors.api.rift.target.EntityTarget;
|
||||
import org.dimdev.dimdoors.rift.targets.EscapeTarget;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.FluidBlock;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.dimdev.dimdoors.api.rift.target.EntityTarget;
|
||||
import org.dimdev.dimdoors.api.util.math.MathUtil;
|
||||
import org.dimdev.dimdoors.entity.limbo.LimboExitReason;
|
||||
import org.dimdev.dimdoors.fluid.ModFluids;
|
||||
import org.dimdev.dimdoors.rift.targets.EscapeTarget;
|
||||
|
||||
public class EternalFluidBlock extends FluidBlock {
|
||||
private static final EntityTarget TARGET = new EscapeTarget(true);
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockEntityProvider;
|
||||
import net.minecraft.block.BlockState;
|
||||
|
@ -9,6 +8,9 @@ import net.minecraft.item.ItemPlacementContext;
|
|||
import net.minecraft.registry.RegistryKeys;
|
||||
import net.minecraft.registry.tag.TagKey;
|
||||
import net.minecraft.util.DyeColor;
|
||||
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
|
||||
public class FabricBlock extends Block {
|
||||
|
|
|
@ -1,26 +1,49 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
import net.minecraft.block.*;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.dimdev.matrix.Matrix;
|
||||
import org.dimdev.matrix.Registrar;
|
||||
import org.dimdev.matrix.RegistryEntry;
|
||||
|
||||
import net.minecraft.block.AbstractBlock;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.ButtonBlock;
|
||||
import net.minecraft.block.DoorBlock;
|
||||
import net.minecraft.block.ExperienceDroppingBlock;
|
||||
import net.minecraft.block.FenceBlock;
|
||||
import net.minecraft.block.FenceGateBlock;
|
||||
import net.minecraft.block.LeavesBlock;
|
||||
import net.minecraft.block.MapColor;
|
||||
import net.minecraft.block.Material;
|
||||
import net.minecraft.block.PillarBlock;
|
||||
import net.minecraft.block.SlabBlock;
|
||||
import net.minecraft.block.StairsBlock;
|
||||
import net.minecraft.block.TrapdoorBlock;
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.sound.BlockSoundGroup;
|
||||
import net.minecraft.sound.SoundEvents;
|
||||
import net.minecraft.util.DyeColor;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
|
||||
import org.dimdev.dimdoors.block.door.DimensionalTrapdoorBlock;
|
||||
import org.dimdev.dimdoors.block.door.data.DoorData;
|
||||
import org.dimdev.dimdoors.block.door.data.DoorDataReader;
|
||||
import org.dimdev.matrix.Matrix;
|
||||
import org.dimdev.matrix.Registrar;
|
||||
import org.dimdev.matrix.RegistryEntry;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import static net.minecraft.block.Blocks.*;
|
||||
import static net.minecraft.block.Blocks.CLAY;
|
||||
import static net.minecraft.block.Blocks.GRAVEL;
|
||||
import static net.minecraft.block.Blocks.MUD;
|
||||
import static net.minecraft.block.Blocks.OAK_LEAVES;
|
||||
import static net.minecraft.block.Blocks.OAK_SAPLING;
|
||||
import static net.minecraft.block.Blocks.STONE;
|
||||
import static net.minecraft.block.Blocks.WATER;
|
||||
|
||||
@Registrar(element = Block.class, modid = "dimdoors")
|
||||
public final class ModBlocks {
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.RiftBlockEntity;
|
||||
|
||||
import net.minecraft.block.BlockEntityProvider;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
|
@ -10,6 +8,8 @@ import net.minecraft.world.World;
|
|||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.RiftBlockEntity;
|
||||
|
||||
public interface RiftProvider<T extends RiftBlockEntity> extends BlockEntityProvider {
|
||||
T getRift(World world, BlockPos pos, BlockState state);
|
||||
|
||||
|
|
|
@ -1,6 +1,12 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.minecraft.block.*;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockRenderType;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.BlockWithEntity;
|
||||
import net.minecraft.block.HorizontalFacingBlock;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.entity.BlockEntityTicker;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
|
@ -11,16 +17,20 @@ import net.minecraft.screen.NamedScreenHandlerFactory;
|
|||
import net.minecraft.stat.Stats;
|
||||
import net.minecraft.state.StateManager;
|
||||
import net.minecraft.state.property.DirectionProperty;
|
||||
import net.minecraft.util.*;
|
||||
import net.minecraft.util.ActionResult;
|
||||
import net.minecraft.util.BlockMirror;
|
||||
import net.minecraft.util.BlockRotation;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.ItemScatterer;
|
||||
import net.minecraft.util.collection.DefaultedList;
|
||||
import net.minecraft.util.hit.BlockHitResult;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes;
|
||||
import org.dimdev.dimdoors.block.entity.TesselatingLoomBlockEntity;
|
||||
import org.dimdev.dimdoors.screen.TesselatingScreenHandler;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public class TesselatingLoomBlock extends BlockWithEntity {
|
||||
public static final DirectionProperty FACING = HorizontalFacingBlock.FACING;
|
||||
|
@ -73,7 +83,7 @@ public class TesselatingLoomBlock extends BlockWithEntity {
|
|||
if (!worldIn.isClient()) {
|
||||
this.openContainer(worldIn, pos, player);
|
||||
}
|
||||
|
||||
|
||||
return ActionResult.SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,16 +1,17 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.item.BlockItem;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.Items;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
|
||||
public class UnravelUtil {
|
||||
public static final Set<Block> whitelistedBlocksForLimboRemoval = new HashSet<>();
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.minecraft.util.math.random.Random;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
import org.dimdev.dimdoors.world.decay.LimboDecay;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.random.Random;
|
||||
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
import org.dimdev.dimdoors.world.decay.LimboDecay;
|
||||
|
||||
public class UnravelledFabricBlock extends Block {
|
||||
public static final String ID = "unravelled_fabric";
|
||||
|
|
|
@ -1,6 +1,12 @@
|
|||
package org.dimdev.dimdoors.block;
|
||||
|
||||
import net.minecraft.block.*;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.BlockWithEntity;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.Waterloggable;
|
||||
import net.minecraft.entity.LivingEntity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.fluid.FluidState;
|
||||
|
@ -17,7 +23,6 @@ import net.minecraft.util.math.BlockPos;
|
|||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.WorldAccess;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public abstract class WaterLoggableBlockWithEntity extends BlockWithEntity implements Waterloggable {
|
||||
public static final BooleanProperty WATERLOGGED = Properties.WATERLOGGED;
|
||||
|
|
|
@ -1,14 +1,42 @@
|
|||
package org.dimdev.dimdoors.block.door;
|
||||
|
||||
import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents;
|
||||
import net.minecraft.block.*;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.DoorBlock;
|
||||
import net.minecraft.block.Material;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.enums.DoubleBlockHalf;
|
||||
import net.minecraft.block.piston.PistonBehavior;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.fluid.Fluids;
|
||||
import net.minecraft.item.ItemPlacementContext;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.sound.SoundEvent;
|
||||
import net.minecraft.util.ActionResult;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.Pair;
|
||||
import net.minecraft.util.TypedActionResult;
|
||||
import net.minecraft.util.hit.BlockHitResult;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import net.minecraft.util.shape.VoxelShape;
|
||||
import net.minecraft.util.shape.VoxelShapes;
|
||||
import net.minecraft.world.BlockView;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.event.GameEvent;
|
||||
import net.minecraft.world.explosion.Explosion;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.api.block.AfterMoveCollidableBlock;
|
||||
import org.dimdev.dimdoors.api.block.CustomBreakBlock;
|
||||
|
@ -22,29 +50,6 @@ import org.dimdev.dimdoors.block.RiftProvider;
|
|||
import org.dimdev.dimdoors.block.entity.DetachedRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.block.entity.RiftData;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.enums.DoubleBlockHalf;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.fluid.Fluids;
|
||||
import net.minecraft.item.ItemPlacementContext;
|
||||
import net.minecraft.util.ActionResult;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.hit.BlockHitResult;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import net.minecraft.util.shape.VoxelShape;
|
||||
import net.minecraft.util.shape.VoxelShapes;
|
||||
import net.minecraft.world.BlockView;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.event.GameEvent;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class DimensionalDoorBlock extends WaterLoggableDoorBlock implements RiftProvider<EntranceRiftBlockEntity>, CoordinateTransformerBlock, ExplosionConvertibleBlock, CustomBreakBlock, AfterMoveCollidableBlock {
|
||||
public DimensionalDoorBlock(Settings settings, SoundEvent closeSound, SoundEvent openSound) {
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
package org.dimdev.dimdoors.block.door;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.function.BiFunction;
|
||||
|
||||
import com.google.common.collect.BiMap;
|
||||
import com.google.common.collect.HashBiMap;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
|
||||
import net.fabricmc.fabric.api.event.registry.RegistryEntryAddedCallback;
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import net.minecraft.block.*;
|
||||
|
||||
import net.minecraft.block.AbstractBlock;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.DoorBlock;
|
||||
import net.minecraft.block.TrapdoorBlock;
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.registry.Registry;
|
||||
import net.minecraft.state.StateManager;
|
||||
|
@ -15,16 +19,19 @@ import net.minecraft.state.property.Property;
|
|||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
|
||||
import net.fabricmc.fabric.api.event.registry.RegistryEntryAddedCallback;
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.DoorSoundProvider;
|
||||
import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes;
|
||||
import org.dimdev.dimdoors.item.DimensionalDoorItemRegistrar;
|
||||
import org.dimdev.dimdoors.listener.BlockRegistryEntryAddedListener;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.function.BiFunction;
|
||||
|
||||
public class DimensionalDoorBlockRegistrar<T extends Block & DoorSoundProvider> {
|
||||
private static final String PREFIX = "block_ag_dim_";
|
||||
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package org.dimdev.dimdoors.block.door;
|
||||
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.TrapdoorBlock;
|
||||
|
@ -16,9 +18,9 @@ import net.minecraft.util.shape.VoxelShape;
|
|||
import net.minecraft.util.shape.VoxelShapes;
|
||||
import net.minecraft.world.BlockView;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.dimdev.dimdoors.block.RiftProvider;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
// TODO: Make this placeable on rifts
|
||||
public class DimensionalTrapdoorBlock extends TrapdoorBlock implements RiftProvider<EntranceRiftBlockEntity> {
|
||||
|
|
|
@ -1,6 +1,12 @@
|
|||
package org.dimdev.dimdoors.block.door;
|
||||
|
||||
import net.minecraft.block.*;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.DoorBlock;
|
||||
import net.minecraft.block.Waterloggable;
|
||||
import net.minecraft.block.enums.DoorHinge;
|
||||
import net.minecraft.block.enums.DoubleBlockHalf;
|
||||
import net.minecraft.entity.LivingEntity;
|
||||
|
@ -20,7 +26,6 @@ import net.minecraft.util.math.BlockPos;
|
|||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.WorldAccess;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public class WaterLoggableDoorBlock extends DoorBlock implements Waterloggable {
|
||||
public static final BooleanProperty WATERLOGGED = Properties.WATERLOGGED;
|
||||
|
|
|
@ -1,11 +1,21 @@
|
|||
package org.dimdev.dimdoors.block.door.data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.Optional;
|
||||
import java.util.OptionalInt;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.google.gson.JsonPrimitive;
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
import net.fabricmc.fabric.api.util.TriState;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemGroup;
|
||||
|
@ -14,15 +24,16 @@ import net.minecraft.registry.Registry;
|
|||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.Rarity;
|
||||
import net.minecraft.util.Util;
|
||||
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
import net.fabricmc.fabric.api.util.TriState;
|
||||
|
||||
import org.dimdev.dimdoors.block.DoorSoundProvider;
|
||||
import org.dimdev.dimdoors.block.door.DimensionalDoorBlock;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.item.DimensionalDoorItem;
|
||||
import org.dimdev.dimdoors.item.ItemExtensions;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
@SuppressWarnings("OptionalUsedAsFieldOrParameterType")
|
||||
public final class DoorData implements AutoCloseable {
|
||||
private static final Map<String, ItemGroup> itemGroupCache = new HashMap<>();
|
||||
|
|
|
@ -15,14 +15,6 @@ import com.google.gson.GsonBuilder;
|
|||
import com.google.gson.JsonObject;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.door.data.condition.AlwaysTrueCondition;
|
||||
import org.dimdev.dimdoors.block.door.data.condition.InverseCondition;
|
||||
import org.dimdev.dimdoors.block.door.data.condition.WorldMatchCondition;
|
||||
import org.dimdev.dimdoors.pockets.DefaultDungeonDestinations;
|
||||
import org.dimdev.dimdoors.rift.registry.LinkProperties;
|
||||
import org.dimdev.dimdoors.rift.targets.*;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
|
||||
import net.minecraft.util.Pair;
|
||||
import net.minecraft.util.Rarity;
|
||||
|
@ -30,6 +22,19 @@ import net.minecraft.util.Util;
|
|||
|
||||
import net.fabricmc.fabric.api.util.TriState;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.door.data.condition.AlwaysTrueCondition;
|
||||
import org.dimdev.dimdoors.block.door.data.condition.InverseCondition;
|
||||
import org.dimdev.dimdoors.block.door.data.condition.WorldMatchCondition;
|
||||
import org.dimdev.dimdoors.pockets.DefaultDungeonDestinations;
|
||||
import org.dimdev.dimdoors.rift.registry.LinkProperties;
|
||||
import org.dimdev.dimdoors.rift.targets.EscapeTarget;
|
||||
import org.dimdev.dimdoors.rift.targets.PrivatePocketExitTarget;
|
||||
import org.dimdev.dimdoors.rift.targets.PrivatePocketTarget;
|
||||
import org.dimdev.dimdoors.rift.targets.PublicPocketTarget;
|
||||
import org.dimdev.dimdoors.rift.targets.UnstableTarget;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
|
||||
public class DoorDataReader {
|
||||
private static final Gson GSON = new GsonBuilder().setPrettyPrinting().setLenient().create();
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
|
|
|
@ -9,13 +9,15 @@ import com.google.gson.JsonArray;
|
|||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.mojang.serialization.JsonOps;
|
||||
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.nbt.NbtOps;
|
||||
import net.minecraft.util.Pair;
|
||||
|
||||
import org.dimdev.dimdoors.block.door.data.condition.Condition;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.rift.registry.LinkProperties;
|
||||
import org.dimdev.dimdoors.rift.targets.VirtualTarget;
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.nbt.NbtOps;
|
||||
import net.minecraft.util.Pair;
|
||||
|
||||
public class RiftDataList {
|
||||
private final LinkedList<Pair<JsonObject, Condition>> riftDataConditions;
|
||||
|
|
|
@ -7,6 +7,7 @@ import java.util.stream.StreamSupport;
|
|||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
public class AllCondition extends MultipleCondition {
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package org.dimdev.dimdoors.block.door.data.condition;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
public enum AlwaysTrueCondition implements Condition {
|
||||
|
|
|
@ -7,6 +7,7 @@ import java.util.stream.StreamSupport;
|
|||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
public class AnyCondition extends MultipleCondition {
|
||||
|
|
|
@ -1,18 +1,21 @@
|
|||
package org.dimdev.dimdoors.block.door.data.condition;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.function.Function;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
import com.mojang.serialization.Lifecycle;
|
||||
import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder;
|
||||
|
||||
import net.minecraft.registry.Registry;
|
||||
import net.minecraft.registry.RegistryKey;
|
||||
import net.minecraft.registry.SimpleRegistry;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.function.Function;
|
||||
|
||||
public interface Condition {
|
||||
Registry<ConditionType<?>> REGISTRY = FabricRegistryBuilder.<ConditionType<?>, SimpleRegistry<ConditionType<?>>>from(new SimpleRegistry<>(RegistryKey.ofRegistry(DimensionalDoors.id("rift_data_condition")), Lifecycle.stable(), false)).buildAndRegister();
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package org.dimdev.dimdoors.block.door.data.condition;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
public record InverseCondition(Condition condition) implements Condition {
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
package org.dimdev.dimdoors.block.door.data.condition;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import net.minecraft.registry.RegistryKey;
|
||||
import net.minecraft.registry.RegistryKeys;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
public record WorldMatchCondition(RegistryKey<World> world) implements Condition {
|
||||
|
|
|
@ -1,13 +1,5 @@
|
|||
package org.dimdev.dimdoors.block.entity;
|
||||
|
||||
import net.minecraft.util.math.random.Random;
|
||||
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
import org.dimdev.dimdoors.api.util.TeleportUtil;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityType;
|
||||
|
@ -16,11 +8,18 @@ import net.minecraft.entity.mob.EndermanEntity;
|
|||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import net.minecraft.util.math.random.Random;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.api.util.TeleportUtil;
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
|
||||
public class DetachedRiftBlockEntity extends RiftBlockEntity {
|
||||
private static final Random random = Random.create();
|
||||
|
||||
|
|
|
@ -2,24 +2,8 @@ package org.dimdev.dimdoors.block.entity;
|
|||
|
||||
import java.util.Optional;
|
||||
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.CoordinateTransformerBlock;
|
||||
import org.dimdev.dimdoors.block.RiftProvider;
|
||||
import org.dimdev.dimdoors.api.client.DefaultTransformation;
|
||||
import org.dimdev.dimdoors.api.client.Transformer;
|
||||
import org.dimdev.dimdoors.item.RiftKeyItem;
|
||||
import org.dimdev.dimdoors.pockets.DefaultDungeonDestinations;
|
||||
import org.dimdev.dimdoors.rift.registry.Rift;
|
||||
import org.dimdev.dimdoors.rift.targets.EscapeTarget;
|
||||
import org.dimdev.dimdoors.api.util.EntityUtils;
|
||||
import org.dimdev.dimdoors.api.util.TeleportUtil;
|
||||
import org.dimdev.dimdoors.api.util.math.TransformationMatrix3d;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
|
@ -28,6 +12,9 @@ import net.minecraft.entity.Entity;
|
|||
import net.minecraft.entity.LivingEntity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
|
@ -36,6 +23,20 @@ import net.minecraft.util.math.Vec3d;
|
|||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.api.client.DefaultTransformation;
|
||||
import org.dimdev.dimdoors.api.client.Transformer;
|
||||
import org.dimdev.dimdoors.api.util.EntityUtils;
|
||||
import org.dimdev.dimdoors.api.util.TeleportUtil;
|
||||
import org.dimdev.dimdoors.api.util.math.TransformationMatrix3d;
|
||||
import org.dimdev.dimdoors.block.CoordinateTransformerBlock;
|
||||
import org.dimdev.dimdoors.block.RiftProvider;
|
||||
import org.dimdev.dimdoors.item.RiftKeyItem;
|
||||
import org.dimdev.dimdoors.pockets.DefaultDungeonDestinations;
|
||||
import org.dimdev.dimdoors.rift.registry.Rift;
|
||||
import org.dimdev.dimdoors.rift.targets.EscapeTarget;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
|
||||
public class EntranceRiftBlockEntity extends RiftBlockEntity {
|
||||
private static final EscapeTarget ESCAPE_TARGET = new EscapeTarget(true);
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
|
|
|
@ -1,12 +1,15 @@
|
|||
package org.dimdev.dimdoors.block.entity;
|
||||
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder;
|
||||
import org.apache.commons.lang3.ArrayUtils;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.registry.Registry;
|
||||
import org.apache.commons.lang3.ArrayUtils;
|
||||
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder;
|
||||
|
||||
import org.dimdev.dimdoors.api.block.entity.MutableBlockEntityType;
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
import org.dimdev.dimdoors.block.door.data.DoorData;
|
||||
|
|
|
@ -1,47 +1,48 @@
|
|||
package org.dimdev.dimdoors.block.entity;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.Objects;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.network.Packet;
|
||||
import net.minecraft.network.listener.ClientPlayPacketListener;
|
||||
import net.minecraft.network.packet.s2c.play.BlockEntityUpdateS2CPacket;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import org.dimdev.dimdoors.block.CoordinateTransformerBlock;
|
||||
import org.dimdev.dimdoors.criteria.ModCriteria;
|
||||
import org.dimdev.dimdoors.rift.registry.LinkProperties;
|
||||
import org.dimdev.dimdoors.rift.registry.Rift;
|
||||
import org.dimdev.dimdoors.api.rift.target.EntityTarget;
|
||||
import org.dimdev.dimdoors.rift.targets.MessageTarget;
|
||||
import org.dimdev.dimdoors.api.rift.target.Target;
|
||||
import org.dimdev.dimdoors.rift.targets.Targets;
|
||||
import org.dimdev.dimdoors.rift.targets.VirtualTarget;
|
||||
import org.dimdev.dimdoors.api.util.EntityUtils;
|
||||
import org.dimdev.dimdoors.api.util.Location;
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
import org.dimdev.dimdoors.api.util.math.TransformationMatrix3d;
|
||||
import org.dimdev.dimdoors.world.level.registry.DimensionalRegistry;
|
||||
import org.dimdev.dimdoors.world.pocket.VirtualLocation;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.network.Packet;
|
||||
import net.minecraft.network.listener.ClientPlayPacketListener;
|
||||
import net.minecraft.network.packet.s2c.play.BlockEntityUpdateS2CPacket;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import net.fabricmc.fabric.api.networking.v1.PlayerLookup;
|
||||
|
||||
import org.dimdev.dimdoors.api.rift.target.EntityTarget;
|
||||
import org.dimdev.dimdoors.api.rift.target.Target;
|
||||
import org.dimdev.dimdoors.api.util.EntityUtils;
|
||||
import org.dimdev.dimdoors.api.util.Location;
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
import org.dimdev.dimdoors.api.util.math.TransformationMatrix3d;
|
||||
import org.dimdev.dimdoors.block.CoordinateTransformerBlock;
|
||||
import org.dimdev.dimdoors.criteria.ModCriteria;
|
||||
import org.dimdev.dimdoors.rift.registry.LinkProperties;
|
||||
import org.dimdev.dimdoors.rift.registry.Rift;
|
||||
import org.dimdev.dimdoors.rift.targets.MessageTarget;
|
||||
import org.dimdev.dimdoors.rift.targets.Targets;
|
||||
import org.dimdev.dimdoors.rift.targets.VirtualTarget;
|
||||
import org.dimdev.dimdoors.world.level.registry.DimensionalRegistry;
|
||||
import org.dimdev.dimdoors.world.pocket.VirtualLocation;
|
||||
|
||||
public abstract class RiftBlockEntity extends BlockEntity implements Target, EntityTarget {
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
public static long showRiftCoreUntil = 0;
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
package org.dimdev.dimdoors.block.entity;
|
||||
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
import org.dimdev.dimdoors.rift.registry.LinkProperties;
|
||||
import org.dimdev.dimdoors.rift.targets.VirtualTarget;
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
|
||||
public class RiftData {
|
||||
private VirtualTarget destination = VirtualTarget.NoneTarget.INSTANCE; // How the rift acts as a source
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
package org.dimdev.dimdoors.block.entity;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.entity.ExperienceOrbEntity;
|
||||
|
@ -15,7 +22,11 @@ import net.minecraft.nbt.NbtCompound;
|
|||
import net.minecraft.network.Packet;
|
||||
import net.minecraft.network.listener.ClientPlayPacketListener;
|
||||
import net.minecraft.network.packet.s2c.play.BlockEntityUpdateS2CPacket;
|
||||
import net.minecraft.recipe.*;
|
||||
import net.minecraft.recipe.Recipe;
|
||||
import net.minecraft.recipe.RecipeInputProvider;
|
||||
import net.minecraft.recipe.RecipeManager;
|
||||
import net.minecraft.recipe.RecipeMatcher;
|
||||
import net.minecraft.recipe.RecipeUnlocker;
|
||||
import net.minecraft.screen.NamedScreenHandlerFactory;
|
||||
import net.minecraft.screen.PropertyDelegate;
|
||||
import net.minecraft.screen.ScreenHandler;
|
||||
|
@ -28,17 +39,12 @@ import net.minecraft.util.math.BlockPos;
|
|||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import org.dimdev.dimdoors.mixin.accessor.CraftingInventoryAccessor;
|
||||
import org.dimdev.dimdoors.recipe.ModRecipeTypes;
|
||||
import org.dimdev.dimdoors.recipe.TesselatingRecipe;
|
||||
import org.dimdev.dimdoors.screen.TesselatingScreenHandler;
|
||||
import org.dimdev.dimdoors.sound.ModSoundEvents;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
|
||||
import static net.minecraft.util.math.Direction.DOWN;
|
||||
|
||||
|
|
|
@ -1,9 +1,5 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
@ -11,6 +7,11 @@ import java.util.concurrent.ConcurrentHashMap;
|
|||
import java.util.concurrent.locks.ReentrantLock;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class CustomBreakBlockHandler {
|
||||
private static final Map<BlockPos, BreakBlockInfo> customBreakBlockMap = new ConcurrentHashMap<>();
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
import com.flowpowered.math.TrigMath;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.render.LightmapTextureManager;
|
||||
import net.minecraft.client.render.VertexConsumer;
|
||||
|
@ -12,6 +13,10 @@ import net.minecraft.client.util.math.MatrixStack;
|
|||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
import org.dimdev.dimdoors.block.entity.DetachedRiftBlockEntity;
|
||||
|
@ -20,8 +25,6 @@ import org.dimdev.dimdoors.client.tesseract.Tesseract;
|
|||
import org.dimdev.dimdoors.item.ModItems;
|
||||
import org.dimdev.dimdoors.rift.targets.IdMarker;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class DetachedRiftBlockEntityRenderer implements BlockEntityRenderer<DetachedRiftBlockEntity> {
|
||||
public static final Identifier TESSERACT_PATH = DimensionalDoors.id("textures/other/tesseract.png");
|
||||
|
|
|
@ -1,20 +1,27 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import net.fabricmc.fabric.api.client.rendering.v1.DimensionRenderingRegistry;
|
||||
import net.minecraft.client.render.*;
|
||||
import org.joml.Matrix4f;
|
||||
|
||||
import net.minecraft.client.render.BufferBuilder;
|
||||
import net.minecraft.client.render.GameRenderer;
|
||||
import net.minecraft.client.render.Tessellator;
|
||||
import net.minecraft.client.render.VertexFormat;
|
||||
import net.minecraft.client.render.VertexFormats;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.client.world.ClientWorld;
|
||||
import net.minecraft.registry.RegistryKey;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import net.fabricmc.fabric.api.client.rendering.v1.DimensionRenderingRegistry;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.listener.pocket.PocketListenerUtil;
|
||||
import org.dimdev.dimdoors.world.ModDimensions;
|
||||
import org.dimdev.dimdoors.world.pocket.type.addon.SkyAddon;
|
||||
import org.joml.Matrix4f;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class DimensionRenderering {
|
||||
private static final Identifier MOON_RENDER_PATH = DimensionalDoors.id("textures/other/limbo_moon.png");
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.fabricmc.fabric.api.client.model.ModelProviderContext;
|
||||
import net.fabricmc.fabric.api.client.model.ModelProviderException;
|
||||
import net.fabricmc.fabric.api.client.model.ModelVariantProvider;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.render.model.UnbakedModel;
|
||||
import net.minecraft.client.util.ModelIdentifier;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.state.property.Property;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.fabric.api.client.model.ModelProviderContext;
|
||||
import net.fabricmc.fabric.api.client.model.ModelProviderException;
|
||||
import net.fabricmc.fabric.api.client.model.ModelVariantProvider;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.block.door.DimensionalDoorBlockRegistrar;
|
||||
import org.dimdev.dimdoors.item.DimensionalDoorItemRegistrar;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class DimensionalDoorModelVariantProvider implements ModelVariantProvider {
|
||||
private static final Identifier childItem = DimensionalDoors.id("item/child_item");
|
||||
|
|
|
@ -7,6 +7,7 @@ import net.fabricmc.fabric.api.client.model.ModelLoadingRegistry;
|
|||
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents;
|
||||
import net.fabricmc.fabric.api.client.rendering.v1.BlockEntityRendererRegistry;
|
||||
import net.fabricmc.fabric.api.client.screenhandler.v1.ScreenRegistry;
|
||||
|
||||
import org.dimdev.dimdoors.block.ModBlocks;
|
||||
import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes;
|
||||
import org.dimdev.dimdoors.client.screen.TesselatingLoomScreen;
|
||||
|
|
|
@ -2,17 +2,17 @@ package org.dimdev.dimdoors.client;
|
|||
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.render.LightmapTextureManager;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Hand;
|
||||
import org.dimdev.dimdoors.api.client.DimensionalPortalRenderer;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
import net.minecraft.client.render.block.entity.BlockEntityRenderer;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Hand;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.api.client.DimensionalPortalRenderer;
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.item.ModItems;
|
||||
import org.dimdev.dimdoors.rift.targets.IdMarker;
|
||||
|
||||
|
|
|
@ -1,10 +1,5 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.minecraft.client.render.entity.EntityRendererFactory;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import org.dimdev.dimdoors.entity.MaskEntity;
|
||||
//import software.bernie.geckolib3.renderers.geo.GeoEntityRenderer;
|
||||
|
||||
//@Environment(EnvType.CLIENT)
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.fabricmc.fabric.api.client.rendering.v1.EntityModelLayerRegistry;
|
||||
import net.minecraft.client.render.entity.model.EntityModelLayer;
|
||||
|
||||
import net.fabricmc.fabric.api.client.rendering.v1.EntityModelLayerRegistry;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
|
||||
public class ModEntityModelLayers {
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.minecraft.client.gl.ShaderProgram;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.client.gl.ShaderProgram;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class ModShaders {
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.minecraft.util.math.Direction;
|
||||
import org.dimdev.dimdoors.entity.MonolithEntity;
|
||||
|
||||
import net.minecraft.client.model.ModelData;
|
||||
import net.minecraft.client.model.ModelPart;
|
||||
import net.minecraft.client.model.ModelPartBuilder;
|
||||
|
@ -17,6 +14,8 @@ import net.minecraft.client.util.math.MatrixStack;
|
|||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.entity.MonolithEntity;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class MonolithModel extends EntityModel<MonolithEntity> {
|
||||
private final ModelPart body;
|
||||
|
|
|
@ -1,20 +1,21 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
import net.minecraft.client.render.entity.EntityRendererFactory;
|
||||
import net.minecraft.client.render.entity.MobEntityRenderer;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.entity.MonolithEntity;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class MonolithRenderer extends MobEntityRenderer<MonolithEntity, MonolithModel> {
|
||||
public static final List<Identifier> MONOLITH_TEXTURES = Stream.of(
|
||||
|
|
|
@ -2,12 +2,18 @@ package org.dimdev.dimdoors.client;
|
|||
|
||||
import com.flowpowered.math.vector.VectorNi;
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.client.render.*;
|
||||
|
||||
import net.minecraft.client.render.GameRenderer;
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.client.render.RenderPhase;
|
||||
import net.minecraft.client.render.VertexFormat;
|
||||
import net.minecraft.client.render.VertexFormats;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.math.random.Random;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.api.client.RenderLayerFactory;
|
||||
|
||||
|
|
|
@ -1,11 +1,14 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import org.joml.Matrix4f;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumer;
|
||||
import net.minecraft.util.Util;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.client.render.VertexConsumer;
|
||||
import net.minecraft.util.Util;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.joml.Matrix4f;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public final class RiftCrackRenderer {
|
||||
|
|
|
@ -6,14 +6,15 @@ import java.util.HashMap;
|
|||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import org.poly2tri.Poly2Tri;
|
||||
import org.poly2tri.geometry.polygon.Polygon;
|
||||
import org.poly2tri.geometry.polygon.PolygonPoint;
|
||||
import org.poly2tri.triangulation.TriangulationPoint;
|
||||
import org.poly2tri.triangulation.delaunay.DelaunayTriangle;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
// https://en.wikipedia.org/wiki/L-system
|
||||
//
|
||||
// System: {rules, angle, start_string}
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import net.minecraft.client.resource.language.I18n;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class ToolTipHelper {
|
||||
public static void processTranslation(List<Text> list, String key, Object... args) {
|
||||
if(I18n.hasTranslation(key)) {
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
package org.dimdev.dimdoors.client;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
import net.minecraft.client.render.item.ItemRenderer;
|
||||
|
@ -10,7 +7,11 @@ import net.minecraft.client.render.model.json.ModelTransformation;
|
|||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.Items;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry;
|
||||
|
||||
import org.dimdev.dimdoors.item.DimensionalDoorItemRegistrar;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
package org.dimdev.dimdoors.client.config;
|
||||
|
||||
import me.shedaniel.autoconfig.AutoConfig;
|
||||
|
||||
import net.minecraft.client.gui.screen.Screen;
|
||||
|
||||
import org.dimdev.dimdoors.ModConfig;
|
||||
|
||||
public class ModMenu {
|
||||
|
|
|
@ -2,8 +2,6 @@ package org.dimdev.dimdoors.client.config;
|
|||
|
||||
import com.terraformersmc.modmenu.api.ConfigScreenFactory;
|
||||
import com.terraformersmc.modmenu.api.ModMenuApi;
|
||||
import me.shedaniel.autoconfig.AutoConfig;
|
||||
import org.dimdev.dimdoors.ModConfig;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package org.dimdev.dimdoors.client.screen;
|
||||
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
|
||||
import net.minecraft.client.gui.screen.ingame.HandledScreen;
|
||||
import net.minecraft.client.gui.screen.recipebook.RecipeBookProvider;
|
||||
import net.minecraft.client.gui.screen.recipebook.RecipeBookWidget;
|
||||
|
@ -12,6 +13,7 @@ import net.minecraft.screen.slot.Slot;
|
|||
import net.minecraft.screen.slot.SlotActionType;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.screen.TesselatingScreenHandler;
|
||||
|
||||
|
|
|
@ -3,12 +3,14 @@ package org.dimdev.dimdoors.client.tesseract;
|
|||
import com.flowpowered.math.matrix.Matrix4f;
|
||||
import com.flowpowered.math.vector.Vector3f;
|
||||
import com.flowpowered.math.vector.Vector4f;
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumer;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
|
||||
import static com.flowpowered.math.TrigMath.cos;
|
||||
import static com.flowpowered.math.TrigMath.sin;
|
||||
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
package org.dimdev.dimdoors.client.tesseract;
|
||||
|
||||
import com.flowpowered.math.vector.Vector4f;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumer;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.client.render.VertexConsumer;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.RGBA;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
package org.dimdev.dimdoors.client.wthit;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
import mcp.mobius.waila.api.IBlockAccessor;
|
||||
import mcp.mobius.waila.api.IBlockComponentProvider;
|
||||
import mcp.mobius.waila.api.IPluginConfig;
|
||||
import mcp.mobius.waila.api.ITooltip;
|
||||
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
|
@ -13,8 +16,6 @@ import org.dimdev.dimdoors.DimensionalDoors;
|
|||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
import org.dimdev.dimdoors.rift.targets.VirtualTarget;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
// FIXME: is not actually client sided
|
||||
public enum EntranceRiftProvider implements IBlockComponentProvider {
|
||||
INSTANCE;
|
||||
|
|
|
@ -3,9 +3,7 @@ package org.dimdev.dimdoors.client.wthit;
|
|||
import mcp.mobius.waila.api.IRegistrar;
|
||||
import mcp.mobius.waila.api.IWailaPlugin;
|
||||
import mcp.mobius.waila.api.TooltipPosition;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import org.dimdev.dimdoors.block.door.DimensionalDoorBlock;
|
||||
|
||||
import org.dimdev.dimdoors.block.entity.EntranceRiftBlockEntity;
|
||||
|
||||
// FIXME: is not actually client sided
|
||||
|
|
|
@ -3,20 +3,21 @@ package org.dimdev.dimdoors.command;
|
|||
import com.mojang.brigadier.Command;
|
||||
import com.mojang.brigadier.CommandDispatcher;
|
||||
import com.mojang.brigadier.arguments.FloatArgumentType;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import org.dimdev.dimdoors.api.util.Location;
|
||||
import org.dimdev.dimdoors.api.util.TeleportUtil;
|
||||
import org.dimdev.dimdoors.api.util.math.MathUtil;
|
||||
|
||||
import net.minecraft.command.argument.DimensionArgumentType;
|
||||
import net.minecraft.command.argument.Vec3ArgumentType;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.server.command.CommandManager;
|
||||
import net.minecraft.server.command.ServerCommandSource;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.math.EulerAngle;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.Location;
|
||||
import org.dimdev.dimdoors.api.util.TeleportUtil;
|
||||
import org.dimdev.dimdoors.api.util.math.MathUtil;
|
||||
import org.dimdev.dimdoors.world.level.registry.DimensionalRegistry;
|
||||
|
||||
public class DimTeleportCommand {
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
package org.dimdev.dimdoors.command;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
import com.mojang.brigadier.Command;
|
||||
import com.mojang.brigadier.CommandDispatcher;
|
||||
import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import net.minecraft.server.command.ServerCommandSource;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.BlockPlacementType;
|
||||
import org.dimdev.dimdoors.command.arguments.BlockPlacementTypeArgumentType;
|
||||
import org.dimdev.dimdoors.command.arguments.PocketTemplateArgumentType;
|
||||
import org.dimdev.dimdoors.pockets.PocketTemplate;
|
||||
import org.dimdev.dimdoors.util.schematic.SchematicPlacer;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
import static net.minecraft.server.command.CommandManager.argument;
|
||||
import static net.minecraft.server.command.CommandManager.literal;
|
||||
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
package org.dimdev.dimdoors.command;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import com.mojang.brigadier.Command;
|
||||
import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
||||
import com.sk89q.jnbt.NBTInputStream;
|
||||
|
@ -8,22 +14,18 @@ import com.sk89q.worldedit.extent.clipboard.Clipboard;
|
|||
import com.sk89q.worldedit.extent.clipboard.io.SpongeSchematicReader;
|
||||
import com.sk89q.worldedit.fabric.FabricAdapter;
|
||||
import com.sk89q.worldedit.session.ClipboardHolder;
|
||||
|
||||
import net.minecraft.nbt.NbtCompound;
|
||||
import net.minecraft.nbt.NbtIo;
|
||||
import net.minecraft.server.command.ServerCommandSource;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
|
||||
import org.dimdev.dimdoors.DimensionalDoors;
|
||||
import org.dimdev.dimdoors.pockets.PocketTemplate;
|
||||
import org.dimdev.dimdoors.util.schematic.Schematic;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class WorldeditHelper {
|
||||
static int load(ServerCommandSource source, PocketTemplate template) throws CommandSyntaxException {
|
||||
ServerPlayerEntity player = source.getPlayer();
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
package org.dimdev.dimdoors.command.arguments;
|
||||
|
||||
import com.mojang.brigadier.context.CommandContext;
|
||||
|
||||
import net.minecraft.command.argument.EnumArgumentType;
|
||||
import net.minecraft.server.command.ServerCommandSource;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.BlockPlacementType;
|
||||
|
||||
public class BlockPlacementTypeArgumentType extends EnumArgumentType<BlockPlacementType> {
|
||||
|
|
|
@ -1,5 +1,12 @@
|
|||
package org.dimdev.dimdoors.command.arguments;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
import com.mojang.brigadier.StringReader;
|
||||
import com.mojang.brigadier.arguments.ArgumentType;
|
||||
import com.mojang.brigadier.context.CommandContext;
|
||||
|
@ -7,13 +14,11 @@ import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
|||
import com.mojang.brigadier.exceptions.DynamicCommandExceptionType;
|
||||
import com.mojang.brigadier.suggestion.Suggestions;
|
||||
import com.mojang.brigadier.suggestion.SuggestionsBuilder;
|
||||
|
||||
import net.minecraft.command.CommandSource;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
public class EnumArgumentType<T extends Enum<T>> implements ArgumentType<T> {
|
||||
public static final DynamicCommandExceptionType UNKNOWN_VALUE = new DynamicCommandExceptionType(str -> MutableText.of(new TranslatableTextContent("commands.generic.unknownValue", str)));
|
||||
private final Map<String, T> values;
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
package org.dimdev.dimdoors.command.arguments;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Optional;
|
||||
import java.util.TreeSet;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.mojang.brigadier.StringReader;
|
||||
import com.mojang.brigadier.arguments.ArgumentType;
|
||||
import com.mojang.brigadier.context.CommandContext;
|
||||
|
@ -7,20 +13,16 @@ import com.mojang.brigadier.exceptions.CommandSyntaxException;
|
|||
import com.mojang.brigadier.exceptions.DynamicCommandExceptionType;
|
||||
import com.mojang.brigadier.suggestion.Suggestions;
|
||||
import com.mojang.brigadier.suggestion.SuggestionsBuilder;
|
||||
|
||||
import net.minecraft.command.CommandSource;
|
||||
import net.minecraft.text.MutableText;
|
||||
import net.minecraft.text.TranslatableTextContent;
|
||||
|
||||
import org.dimdev.dimdoors.api.util.Path;
|
||||
import org.dimdev.dimdoors.api.util.SimpleTree;
|
||||
import org.dimdev.dimdoors.pockets.PocketLoader;
|
||||
import org.dimdev.dimdoors.pockets.PocketTemplate;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Optional;
|
||||
import java.util.TreeSet;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class PocketTemplateArgumentType implements ArgumentType<PocketTemplate> {
|
||||
public static final DynamicCommandExceptionType UNKNOWN_POCKET_TEMPLATE = new DynamicCommandExceptionType(s -> MutableText.of(new TranslatableTextContent("commands.pocket.unknownPocketTemplate",s)));
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue