diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitBlockManager.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitBlockManager.java index bb379b71f..2f98cd2c8 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitBlockManager.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitBlockManager.java @@ -15,6 +15,7 @@ import net.momirealms.craftengine.bukkit.plugin.user.BukkitServerPlayer; import net.momirealms.craftengine.bukkit.util.*; import net.momirealms.craftengine.core.block.*; import net.momirealms.craftengine.core.block.behavior.AbstractBlockBehavior; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviors; import net.momirealms.craftengine.core.block.behavior.EmptyBlockBehavior; import net.momirealms.craftengine.core.block.parser.BlockStateParser; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitCustomBlock.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitCustomBlock.java index 6f5161d72..9f4b7af8d 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitCustomBlock.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/BukkitCustomBlock.java @@ -7,13 +7,13 @@ import net.momirealms.craftengine.core.block.BlockStateVariantProvider; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.entity.player.Player; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.loot.LootTable; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.plugin.context.Context; import net.momirealms.craftengine.core.plugin.context.event.EventTrigger; import net.momirealms.craftengine.core.plugin.context.function.Function; import net.momirealms.craftengine.core.registry.Holder; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/AttachedStemBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/AttachedStemBlockBehavior.java index 9a3d39063..20cd4378a 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/AttachedStemBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/AttachedStemBlockBehavior.java @@ -5,9 +5,9 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; import net.momirealms.craftengine.core.block.properties.IntegerProperty; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BouncingBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BouncingBlockBehavior.java index d780ac63f..9adc53b3f 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BouncingBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BouncingBlockBehavior.java @@ -4,8 +4,8 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.BukkitCraftEngine; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.FallOnBlockBehavior; import net.momirealms.craftengine.core.plugin.CraftEngine; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BuddingBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BuddingBlockBehavior.java index b9d671890..32617dee7 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BuddingBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BuddingBlockBehavior.java @@ -6,9 +6,9 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.*; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.BooleanProperty; import net.momirealms.craftengine.core.block.properties.Property; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BushBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BushBlockBehavior.java index f05cead44..19abeb591 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BushBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/BushBlockBehavior.java @@ -4,9 +4,9 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.BlockTags; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.MiscUtils; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ButtonBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ButtonBlockBehavior.java index 0b4294900..15231cceb 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ButtonBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ButtonBlockBehavior.java @@ -8,17 +8,17 @@ import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.KeyUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.BooleanProperty; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.entity.player.InteractionResult; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.sound.SoundData; import net.momirealms.craftengine.core.util.*; +import net.momirealms.craftengine.core.world.context.UseOnContext; import javax.annotation.Nullable; import java.util.Map; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChangeOverTimeBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChangeOverTimeBlockBehavior.java index 7a30cf1a7..a1bd707a4 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChangeOverTimeBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChangeOverTimeBlockBehavior.java @@ -2,10 +2,10 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.plugin.reflection.bukkit.CraftBukkitReflections; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.BlockStateWrapper; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.util.*; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChimeBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChimeBlockBehavior.java index ce9135a60..894197c46 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChimeBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ChimeBlockBehavior.java @@ -3,8 +3,8 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections; import net.momirealms.craftengine.bukkit.util.KeyUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.sound.SoundData; import net.momirealms.craftengine.core.util.Key; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ConcretePowderBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ConcretePowderBlockBehavior.java index 69e04c0ad..77a00b6cc 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ConcretePowderBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ConcretePowderBlockBehavior.java @@ -8,18 +8,18 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.EventUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.parser.BlockStateParser; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.LazyReference; import net.momirealms.craftengine.core.util.ResourceConfigUtils; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.block.BlockState; import org.bukkit.event.block.BlockFormEvent; import org.jetbrains.annotations.Nullable; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/CropBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/CropBlockBehavior.java index 204c86b62..010c2d65e 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/CropBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/CropBlockBehavior.java @@ -6,10 +6,10 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflect import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.bukkit.util.ParticleUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.IntegerProperty; import net.momirealms.craftengine.core.block.properties.Property; @@ -17,7 +17,6 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.plugin.context.ContextHolder; import net.momirealms.craftengine.core.plugin.context.SimpleContext; import net.momirealms.craftengine.core.plugin.context.number.NumberProvider; @@ -30,6 +29,7 @@ import net.momirealms.craftengine.core.util.ResourceConfigUtils; import net.momirealms.craftengine.core.world.Vec3d; import net.momirealms.craftengine.core.world.Vec3i; import net.momirealms.craftengine.core.world.WorldPosition; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.World; import java.lang.reflect.InvocationTargetException; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DirectionalAttachedBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DirectionalAttachedBlockBehavior.java index 165b813a3..08f917e01 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DirectionalAttachedBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DirectionalAttachedBlockBehavior.java @@ -7,16 +7,16 @@ import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.BlockTags; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.NamespacedKey; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoorBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoorBlockBehavior.java index a7d008c67..22695968e 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoorBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoorBlockBehavior.java @@ -10,10 +10,10 @@ import net.momirealms.craftengine.bukkit.plugin.user.BukkitServerPlayer; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; import net.momirealms.craftengine.core.block.properties.Property; @@ -23,11 +23,11 @@ import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.Item; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.sound.SoundData; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.*; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.Bukkit; import org.bukkit.GameEvent; import org.bukkit.block.Block; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoubleHighBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoubleHighBlockBehavior.java index cd085cdf7..098d097de 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoubleHighBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DoubleHighBlockBehavior.java @@ -8,19 +8,19 @@ import net.momirealms.craftengine.bukkit.plugin.user.BukkitServerPlayer; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.block.properties.type.DoubleBlockHalf; import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.item.Item; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; import net.momirealms.craftengine.core.world.*; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.inventory.ItemStack; import java.util.Map; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DropExperienceBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DropExperienceBlockBehavior.java index 788415bd7..424921c6e 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DropExperienceBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/DropExperienceBlockBehavior.java @@ -5,10 +5,10 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.bukkit.world.BukkitWorldManager; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.BlockSettings; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.loot.LootContext; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FaceAttachedHorizontalDirectionalBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FaceAttachedHorizontalDirectionalBlockBehavior.java index fe15c7e97..9fd8a3438 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FaceAttachedHorizontalDirectionalBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FaceAttachedHorizontalDirectionalBlockBehavior.java @@ -6,14 +6,14 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MBlocks; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.block.properties.type.AnchorType; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.*; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.jetbrains.annotations.Nullable; import java.util.List; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FallingBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FallingBlockBehavior.java index 04016b15f..ed61e2d81 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FallingBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FallingBlockBehavior.java @@ -8,9 +8,9 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.sound.SoundData; import net.momirealms.craftengine.core.util.Key; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceBlockBehavior.java index 2ca5a79c4..bd80df922 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceBlockBehavior.java @@ -6,18 +6,16 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MRegistries; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MTagKeys; import net.momirealms.craftengine.bukkit.util.*; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.BlockStateWrapper; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; import net.momirealms.craftengine.core.block.properties.BooleanProperty; import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.registry.Holder; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.HorizontalDirection; @@ -25,6 +23,8 @@ import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import java.util.Locale; import java.util.Map; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceGateBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceGateBlockBehavior.java index f408cfb88..a942d9023 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceGateBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/FenceGateBlockBehavior.java @@ -10,7 +10,11 @@ import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.InteractUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.*; +import net.momirealms.craftengine.core.block.BlockStateWrapper; +import net.momirealms.craftengine.core.block.CustomBlock; +import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; import net.momirealms.craftengine.core.block.properties.Property; @@ -18,13 +22,13 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.sound.SoundData; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.Vec3d; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.Bukkit; import org.bukkit.GameEvent; import org.bukkit.block.Block; @@ -103,11 +107,10 @@ public class FenceGateBlockBehavior extends BukkitBlockBehavior implements IsPat boolean neighborStateIsWall = this.isWall(neighborState); boolean relativeStateIsWall = this.isWall(relativeState); boolean flag = neighborStateIsWall || relativeStateIsWall; + // TODO: 连接原版方块 if (neighborStateIsWall) { - // TODO: 连接原版方块 } if (relativeStateIsWall) { - // TODO: 连接原版方块 } return customState.with(this.inWallProperty, flag).customBlockState().literalObject(); } diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/GrassBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/GrassBlockBehavior.java index 392550f7b..32cef5a93 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/GrassBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/GrassBlockBehavior.java @@ -9,18 +9,18 @@ import net.momirealms.craftengine.bukkit.util.FeatureUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.bukkit.util.ParticleUtils; import net.momirealms.craftengine.bukkit.world.BukkitExistingBlock; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.World; import org.bukkit.block.Block; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangableBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangableBlockBehavior.java index 33370fadf..47df39a7b 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangableBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangableBlockBehavior.java @@ -6,17 +6,16 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MBlocks; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; import net.momirealms.craftengine.core.block.properties.BooleanProperty; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; -import org.jetbrains.annotations.Nullable; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import java.util.Map; import java.util.concurrent.Callable; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangingBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangingBlockBehavior.java index 047e4cce3..d2531dae1 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangingBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/HangingBlockBehavior.java @@ -2,8 +2,8 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LampBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LampBlockBehavior.java index a567844b6..c3326993f 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LampBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LampBlockBehavior.java @@ -3,14 +3,14 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import java.util.Map; import java.util.Optional; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LeavesBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LeavesBlockBehavior.java index 5ce0d811f..2bb1e629b 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LeavesBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LeavesBlockBehavior.java @@ -5,10 +5,10 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflect import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.BlockTags; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.util.Direction; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LiquidFlowableBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LiquidFlowableBlockBehavior.java index bf63e3957..b8520ae64 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LiquidFlowableBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/LiquidFlowableBlockBehavior.java @@ -2,9 +2,9 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.PlaceLiquidBlockBehavior; import net.momirealms.craftengine.core.util.Key; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/MultiHighBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/MultiHighBlockBehavior.java index ab9442c21..d58ea5cdd 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/MultiHighBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/MultiHighBlockBehavior.java @@ -9,19 +9,19 @@ import net.momirealms.craftengine.bukkit.plugin.user.BukkitServerPlayer; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.bukkit.world.BukkitWorld; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.IntegerProperty; import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.item.Item; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; import net.momirealms.craftengine.core.world.*; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.inventory.ItemStack; import java.util.Map; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/NearLiquidBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/NearLiquidBlockBehavior.java index 8239fd01a..8f4b6f74f 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/NearLiquidBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/NearLiquidBlockBehavior.java @@ -5,9 +5,9 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MBlocks; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.MiscUtils; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/OnLiquidBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/OnLiquidBlockBehavior.java index 5a5fdef60..3ed2d1e29 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/OnLiquidBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/OnLiquidBlockBehavior.java @@ -5,9 +5,9 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MBlocks; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.MiscUtils; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/PressurePlateBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/PressurePlateBlockBehavior.java index d012f594d..1d0fa2242 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/PressurePlateBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/PressurePlateBlockBehavior.java @@ -10,9 +10,9 @@ import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.EventUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.bukkit.world.BukkitWorldManager; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.sound.SoundData; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SaplingBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SaplingBlockBehavior.java index 8bebe7b51..4807c5e7b 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SaplingBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SaplingBlockBehavior.java @@ -8,10 +8,10 @@ import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.FeatureUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.bukkit.util.ParticleUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.IntegerProperty; import net.momirealms.craftengine.core.block.properties.Property; @@ -19,12 +19,12 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.util.ItemUtils; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.RandomUtils; import net.momirealms.craftengine.core.util.ResourceConfigUtils; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.Location; import org.bukkit.World; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SeatBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SeatBlockBehavior.java index 524726539..6873bdc27 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SeatBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SeatBlockBehavior.java @@ -3,9 +3,9 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.block.entity.BukkitBlockEntityTypes; import net.momirealms.craftengine.bukkit.block.entity.SeatBlockEntity; import net.momirealms.craftengine.bukkit.plugin.user.BukkitServerPlayer; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.EntityBlockBehavior; import net.momirealms.craftengine.core.block.entity.BlockEntity; @@ -13,11 +13,11 @@ import net.momirealms.craftengine.core.block.entity.BlockEntityType; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.seat.SeatConfig; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.util.HorizontalDirection; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.CEWorld; +import net.momirealms.craftengine.core.world.context.UseOnContext; import java.util.Map; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleParticleBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleParticleBlockBehavior.java index 960ac0239..36991eb50 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleParticleBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleParticleBlockBehavior.java @@ -2,9 +2,9 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.block.entity.BukkitBlockEntityTypes; import net.momirealms.craftengine.bukkit.block.entity.SimpleParticleBlockEntity; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.EntityBlockBehavior; import net.momirealms.craftengine.core.block.entity.BlockEntity; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleStorageBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleStorageBlockBehavior.java index 7551d203e..5d60cd182 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleStorageBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SimpleStorageBlockBehavior.java @@ -8,16 +8,15 @@ import net.momirealms.craftengine.bukkit.plugin.gui.BukkitInventory; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.bukkit.world.BukkitWorldManager; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.EntityBlockBehavior; import net.momirealms.craftengine.core.block.entity.BlockEntity; import net.momirealms.craftengine.core.block.entity.BlockEntityType; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.entity.player.InteractionResult; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.plugin.context.PlayerOptionalContext; import net.momirealms.craftengine.core.sound.SoundData; import net.momirealms.craftengine.core.util.AdventureHelper; @@ -26,6 +25,7 @@ import net.momirealms.craftengine.core.util.MiscUtils; import net.momirealms.craftengine.core.util.ResourceConfigUtils; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.CEWorld; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.Location; import org.bukkit.World; import org.bukkit.entity.Player; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SlabBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SlabBlockBehavior.java index 9c57567c8..ce90b4836 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SlabBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SlabBlockBehavior.java @@ -5,9 +5,9 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflect import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.CanBeReplacedBlockBehavior; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; @@ -17,9 +17,9 @@ import net.momirealms.craftengine.core.item.CustomItem; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.behavior.BlockBoundItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.inventory.ItemStack; import java.util.Map; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SnowyBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SnowyBlockBehavior.java index b35fc0ed7..1b244e886 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SnowyBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SnowyBlockBehavior.java @@ -5,14 +5,14 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflect import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MTagKeys; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.BooleanProperty; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import java.util.Map; import java.util.concurrent.Callable; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SofaBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SofaBlockBehavior.java index 086517df0..6208c259a 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SofaBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SofaBlockBehavior.java @@ -5,15 +5,15 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.block.properties.type.SofaShape; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import java.util.Map; import java.util.Optional; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StackableBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StackableBlockBehavior.java index 6ca8a6742..e6d764f50 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StackableBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StackableBlockBehavior.java @@ -3,20 +3,20 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.CanBeReplacedBlockBehavior; import net.momirealms.craftengine.core.block.properties.IntegerProperty; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.item.Item; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; import net.momirealms.craftengine.core.util.ItemUtils; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.MiscUtils; import net.momirealms.craftengine.core.util.ResourceConfigUtils; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import java.util.List; import java.util.Map; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StairsBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StairsBlockBehavior.java index 9f2eb8e39..6ee392f5d 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StairsBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StairsBlockBehavior.java @@ -5,16 +5,16 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.block.properties.type.SingleBlockHalf; import net.momirealms.craftengine.core.block.properties.type.StairsShape; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import java.util.Map; import java.util.Optional; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StemBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StemBlockBehavior.java index 3fc7cc5c0..564ef3718 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StemBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StemBlockBehavior.java @@ -8,10 +8,10 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MRegistries import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; import net.momirealms.craftengine.bukkit.util.KeyUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; import net.momirealms.craftengine.core.block.properties.IntegerProperty; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StrippableBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StrippableBlockBehavior.java index 91541a682..9ac576802 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StrippableBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/StrippableBlockBehavior.java @@ -1,8 +1,8 @@ package net.momirealms.craftengine.bukkit.block.behavior; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.BlockStateWrapper; import net.momirealms.craftengine.core.block.CustomBlock; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.util.Key; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SturdyBaseBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SturdyBaseBlockBehavior.java index e6a59de65..56a58778e 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SturdyBaseBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SturdyBaseBlockBehavior.java @@ -4,9 +4,9 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.DirectionUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SurfaceSpreadingBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SurfaceSpreadingBlockBehavior.java index a7020e4b7..17efd6058 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SurfaceSpreadingBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/SurfaceSpreadingBlockBehavior.java @@ -5,10 +5,10 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MBlocks; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MTagKeys; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.util.*; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ToggleableLampBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ToggleableLampBlockBehavior.java index e1ed05c52..07a4a597f 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ToggleableLampBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/ToggleableLampBlockBehavior.java @@ -4,15 +4,15 @@ import net.momirealms.craftengine.bukkit.nms.FastNMS; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.Property; import net.momirealms.craftengine.core.entity.player.InteractionResult; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.ResourceConfigUtils; +import net.momirealms.craftengine.core.world.context.UseOnContext; import java.util.Map; import java.util.Optional; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/TrapDoorBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/TrapDoorBlockBehavior.java index 42317c698..3da423d57 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/TrapDoorBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/TrapDoorBlockBehavior.java @@ -9,10 +9,10 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.InteractUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.IsPathFindableBlockBehavior; import net.momirealms.craftengine.core.block.properties.Property; @@ -21,13 +21,13 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.sound.SoundData; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.Vec3d; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.Bukkit; import org.bukkit.GameEvent; import org.bukkit.block.Block; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/UnsafeCompositeBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/UnsafeCompositeBlockBehavior.java index 30c54d2a7..6912bc5ee 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/UnsafeCompositeBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/UnsafeCompositeBlockBehavior.java @@ -4,10 +4,10 @@ import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.behavior.*; import net.momirealms.craftengine.core.entity.player.InteractionResult; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.world.BlockAccessor; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.jetbrains.annotations.Nullable; import java.util.List; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/VerticalCropBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/VerticalCropBlockBehavior.java index 60f46347d..603a87110 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/VerticalCropBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/VerticalCropBlockBehavior.java @@ -5,10 +5,10 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.bukkit.CraftBukkitRef import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MBlocks; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.UpdateOption; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.properties.IntegerProperty; import net.momirealms.craftengine.core.block.properties.Property; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/WallTorchParticleBlockBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/WallTorchParticleBlockBehavior.java index 99cd80ea5..168fca9f3 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/WallTorchParticleBlockBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/block/behavior/WallTorchParticleBlockBehavior.java @@ -2,9 +2,9 @@ package net.momirealms.craftengine.bukkit.block.behavior; import net.momirealms.craftengine.bukkit.block.entity.BukkitBlockEntityTypes; import net.momirealms.craftengine.bukkit.block.entity.WallTorchParticleBlockEntity; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.BlockBehaviorFactory; import net.momirealms.craftengine.core.block.behavior.EntityBlockBehavior; import net.momirealms.craftengine.core.block.entity.BlockEntity; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/AxeItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/AxeItemBehavior.java index 06518be06..e6afda60d 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/AxeItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/AxeItemBehavior.java @@ -16,7 +16,6 @@ import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.util.ItemUtils; @@ -24,6 +23,7 @@ import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.VersionHelper; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.Vec3d; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.GameEvent; import org.bukkit.Material; import org.bukkit.Statistic; @@ -36,7 +36,8 @@ import java.util.Map; import java.util.Optional; public class AxeItemBehavior extends ItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:axe_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); public static final AxeItemBehavior INSTANCE = new AxeItemBehavior(); private static final Key AXE_STRIP_SOUND = Key.of("minecraft:item.axe.strip"); @@ -112,7 +113,7 @@ public class AxeItemBehavior extends ItemBehavior { return InteractionResult.SUCCESS_AND_CANCEL; } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { return INSTANCE; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BlockItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BlockItemBehavior.java index 6d0e7871d..2bc4acf81 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BlockItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BlockItemBehavior.java @@ -20,8 +20,6 @@ import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.behavior.BlockBoundItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.pack.PendingConfigSection; import net.momirealms.craftengine.core.plugin.CraftEngine; @@ -34,6 +32,8 @@ import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigExce import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.WorldPosition; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.Bukkit; import org.bukkit.GameEvent; import org.bukkit.Location; @@ -54,7 +54,8 @@ import java.util.Map; import java.util.Optional; public class BlockItemBehavior extends BlockBoundItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:block_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); private final Key blockId; public BlockItemBehavior(Key blockId) { @@ -242,7 +243,7 @@ public class BlockItemBehavior extends BlockBoundItemBehavior { } } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { Object id = arguments.get("block"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BukkitItemBehaviors.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BukkitItemBehaviors.java index a8a8a1ee6..903365141 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BukkitItemBehaviors.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/BukkitItemBehaviors.java @@ -1,36 +1,24 @@ package net.momirealms.craftengine.bukkit.item.behavior; -import net.momirealms.craftengine.core.item.behavior.EmptyItemBehavior; +import net.momirealms.craftengine.core.item.behavior.ItemBehaviorType; import net.momirealms.craftengine.core.item.behavior.ItemBehaviors; -import net.momirealms.craftengine.core.util.Key; -public class BukkitItemBehaviors extends ItemBehaviors { - public static final Key BLOCK_ITEM = Key.from("craftengine:block_item"); - public static final Key ON_LIQUID_BLOCK_ITEM = Key.from("craftengine:liquid_collision_block_item"); - public static final Key FURNITURE_ITEM = Key.from("craftengine:furniture_item"); - public static final Key ON_LIQUID_FURNITURE_ITEM = Key.from("craftengine:liquid_collision_furniture_item"); - public static final Key FLINT_AND_STEEL_ITEM = Key.from("craftengine:flint_and_steel_item"); - public static final Key COMPOSTABLE_ITEM = Key.from("craftengine:compostable_item"); - public static final Key AXE_ITEM = Key.from("craftengine:axe_item"); - public static final Key DOUBLE_HIGH_BLOCK_ITEM = Key.from("craftengine:double_high_block_item"); - public static final Key WALL_BLOCK_ITEM = Key.from("craftengine:wall_block_item"); - public static final Key CEILING_BLOCK_ITEM = Key.from("craftengine:ceiling_block_item"); - public static final Key GROUND_BLOCK_ITEM = Key.from("craftengine:ground_block_item"); - public static final Key MULTI_HIGH_BLOCK_ITEM = Key.from("craftengine:multi_high_block_item"); +public final class BukkitItemBehaviors extends ItemBehaviors { + private BukkitItemBehaviors() {} + + public static final ItemBehaviorType BLOCK_ITEM = register(BlockItemBehavior.ID, BlockItemBehavior.FACTORY); + public static final ItemBehaviorType ON_LIQUID_BLOCK_ITEM = register(LiquidCollisionBlockItemBehavior.ID, LiquidCollisionBlockItemBehavior.FACTORY); + public static final ItemBehaviorType FURNITURE_ITEM = register(FurnitureItemBehavior.ID, FurnitureItemBehavior.FACTORY); + public static final ItemBehaviorType ON_LIQUID_FURNITURE_ITEM = register(LiquidCollisionFurnitureItemBehavior.ID, LiquidCollisionFurnitureItemBehavior.FACTORY); + public static final ItemBehaviorType FLINT_AND_STEEL_ITEM = register(FlintAndSteelItemBehavior.ID, FlintAndSteelItemBehavior.FACTORY); + public static final ItemBehaviorType COMPOSTABLE_ITEM = register(CompostableItemBehavior.ID, CompostableItemBehavior.FACTORY); + public static final ItemBehaviorType AXE_ITEM = register(AxeItemBehavior.ID, AxeItemBehavior.FACTORY); + public static final ItemBehaviorType DOUBLE_HIGH_BLOCK_ITEM = register(DoubleHighBlockItemBehavior.ID, DoubleHighBlockItemBehavior.FACTORY); + public static final ItemBehaviorType WALL_BLOCK_ITEM = register(WallBlockItemBehavior.ID, WallBlockItemBehavior.FACTORY); + public static final ItemBehaviorType CEILING_BLOCK_ITEM = register(CeilingBlockItemBehavior.ID, CeilingBlockItemBehavior.FACTORY); + public static final ItemBehaviorType GROUND_BLOCK_ITEM = register(GroundBlockItemBehavior.ID, GroundBlockItemBehavior.FACTORY); + public static final ItemBehaviorType MULTI_HIGH_BLOCK_ITEM = register(MultiHighBlockItemBehavior.ID, MultiHighBlockItemBehavior.FACTORY); public static void init() { - register(EMPTY, EmptyItemBehavior.FACTORY); - register(BLOCK_ITEM, BlockItemBehavior.FACTORY); - register(ON_LIQUID_BLOCK_ITEM, LiquidCollisionBlockItemBehavior.FACTORY); - register(FURNITURE_ITEM, FurnitureItemBehavior.FACTORY); - register(ON_LIQUID_FURNITURE_ITEM, LiquidCollisionFurnitureItemBehavior.FACTORY); - register(FLINT_AND_STEEL_ITEM, FlintAndSteelItemBehavior.FACTORY); - register(COMPOSTABLE_ITEM, CompostableItemBehavior.FACTORY); - register(AXE_ITEM, AxeItemBehavior.FACTORY); - register(DOUBLE_HIGH_BLOCK_ITEM, DoubleHighBlockItemBehavior.FACTORY); - register(WALL_BLOCK_ITEM, WallBlockItemBehavior.FACTORY); - register(CEILING_BLOCK_ITEM, CeilingBlockItemBehavior.FACTORY); - register(GROUND_BLOCK_ITEM, GroundBlockItemBehavior.FACTORY); - register(MULTI_HIGH_BLOCK_ITEM, MultiHighBlockItemBehavior.FACTORY); } } diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CeilingBlockItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CeilingBlockItemBehavior.java index 2a38e53a6..d4797cc95 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CeilingBlockItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CeilingBlockItemBehavior.java @@ -3,18 +3,19 @@ package net.momirealms.craftengine.bukkit.item.behavior; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import java.nio.file.Path; import java.util.Map; public class CeilingBlockItemBehavior extends BlockItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:ceiling_block_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); public CeilingBlockItemBehavior(Key ceilingBlockId) { super(ceilingBlockId); @@ -33,7 +34,7 @@ public class CeilingBlockItemBehavior extends BlockItemBehavior { return super.place(context); } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { Object id = arguments.get("block"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CompostableItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CompostableItemBehavior.java index 4b997abe1..8c88dd2e2 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CompostableItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/CompostableItemBehavior.java @@ -10,12 +10,12 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.RandomUtils; import net.momirealms.craftengine.core.util.ResourceConfigUtils; import net.momirealms.craftengine.core.world.WorldEvents; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.GameEvent; import org.bukkit.World; import org.bukkit.block.data.BlockData; @@ -28,7 +28,8 @@ import java.nio.file.Path; import java.util.Map; public class CompostableItemBehavior extends ItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:compostable_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); private final double chance; public CompostableItemBehavior(double chance) { @@ -77,7 +78,7 @@ public class CompostableItemBehavior extends ItemBehavior { return InteractionResult.SUCCESS; } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { double chance = ResourceConfigUtils.getAsDouble(arguments.getOrDefault("chance", 0.55), "chance"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/DoubleHighBlockItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/DoubleHighBlockItemBehavior.java index d33b45da1..b5cd8881e 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/DoubleHighBlockItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/DoubleHighBlockItemBehavior.java @@ -18,7 +18,8 @@ import java.util.List; import java.util.Map; public class DoubleHighBlockItemBehavior extends BlockItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:double_high_block_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); public DoubleHighBlockItemBehavior(Key blockId) { super(blockId); @@ -36,7 +37,7 @@ public class DoubleHighBlockItemBehavior extends BlockItemBehavior { return super.placeBlock(location, blockState, revertState); } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { Object id = arguments.get("block"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FlintAndSteelItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FlintAndSteelItemBehavior.java index 70ac737e6..0ed257b61 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FlintAndSteelItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FlintAndSteelItemBehavior.java @@ -12,7 +12,6 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.sound.SoundSource; @@ -20,6 +19,7 @@ import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.RandomUtils; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.block.Block; import org.bukkit.block.data.BlockData; import org.bukkit.entity.Player; @@ -30,7 +30,8 @@ import java.util.Map; public class FlintAndSteelItemBehavior extends ItemBehavior { public static final FlintAndSteelItemBehavior INSTANCE = new FlintAndSteelItemBehavior(); - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:flint_and_steel_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); private static final Key FLINT_SOUND = Key.of("item.flintandsteel.use"); @SuppressWarnings("unchecked") @@ -159,7 +160,7 @@ public class FlintAndSteelItemBehavior extends ItemBehavior { return InteractionResult.PASS; } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key id, Map arguments) { return INSTANCE; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FurnitureItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FurnitureItemBehavior.java index a40c5a34e..586fc20e1 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FurnitureItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/FurnitureItemBehavior.java @@ -15,7 +15,6 @@ import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.pack.PendingConfigSection; import net.momirealms.craftengine.core.plugin.CraftEngine; @@ -29,6 +28,7 @@ import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.Vec3d; import net.momirealms.craftengine.core.world.WorldPosition; import net.momirealms.craftengine.core.world.collision.AABB; +import net.momirealms.craftengine.core.world.context.UseOnContext; import net.momirealms.sparrow.nbt.CompoundTag; import org.bukkit.Location; import org.bukkit.World; @@ -38,7 +38,8 @@ import java.util.*; import java.util.function.Predicate; public class FurnitureItemBehavior extends ItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:furniture_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); protected static final Set ALLOWED_ANCHOR_TYPES = Set.of("wall", "ceiling", "ground"); private final Key id; private final Map rules; @@ -210,7 +211,7 @@ public class FurnitureItemBehavior extends ItemBehavior { return InteractionResult.SUCCESS; } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/GroundBlockItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/GroundBlockItemBehavior.java index 05956b049..fa012259b 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/GroundBlockItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/GroundBlockItemBehavior.java @@ -3,18 +3,19 @@ package net.momirealms.craftengine.bukkit.item.behavior; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import java.nio.file.Path; import java.util.Map; public class GroundBlockItemBehavior extends BlockItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:ground_block_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); public GroundBlockItemBehavior(Key ceilingBlockId) { super(ceilingBlockId); @@ -33,7 +34,7 @@ public class GroundBlockItemBehavior extends BlockItemBehavior { return super.place(context); } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { Object id = arguments.get("block"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionBlockItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionBlockItemBehavior.java index a603438b8..c6d46efdd 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionBlockItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionBlockItemBehavior.java @@ -10,7 +10,6 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; @@ -21,13 +20,15 @@ import net.momirealms.craftengine.core.world.BlockHitResult; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.Vec3d; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.jetbrains.annotations.Nullable; import java.nio.file.Path; import java.util.Map; public class LiquidCollisionBlockItemBehavior extends BlockItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:liquid_collision_block_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); private final int offsetY; public LiquidCollisionBlockItemBehavior(Key blockId, int offsetY) { @@ -66,7 +67,7 @@ public class LiquidCollisionBlockItemBehavior extends BlockItemBehavior { } } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { Object id = arguments.get("block"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionFurnitureItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionFurnitureItemBehavior.java index 74b31a612..83dd07c40 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionFurnitureItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/LiquidCollisionFurnitureItemBehavior.java @@ -14,7 +14,6 @@ import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.pack.PendingConfigSection; import net.momirealms.craftengine.core.plugin.CraftEngine; @@ -28,13 +27,15 @@ import net.momirealms.craftengine.core.world.BlockHitResult; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.Vec3d; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.jetbrains.annotations.Nullable; import java.nio.file.Path; import java.util.*; public class LiquidCollisionFurnitureItemBehavior extends FurnitureItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:liquid_collision_furniture_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); private final List liquidTypes; private final boolean sourceOnly; @@ -90,7 +91,7 @@ public class LiquidCollisionFurnitureItemBehavior extends FurnitureItemBehavior } } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/MultiHighBlockItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/MultiHighBlockItemBehavior.java index fad14c59c..818e45590 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/MultiHighBlockItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/MultiHighBlockItemBehavior.java @@ -13,13 +13,13 @@ import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.VersionHelper; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.World; @@ -34,7 +34,8 @@ import java.util.List; import java.util.Map; public class MultiHighBlockItemBehavior extends BlockItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:multi_high_block_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); public MultiHighBlockItemBehavior(Key blockId) { super(blockId); @@ -104,7 +105,7 @@ public class MultiHighBlockItemBehavior extends BlockItemBehavior { return super.placeBlock(location, blockState, revertState); } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { Object id = arguments.get("block"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/WallBlockItemBehavior.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/WallBlockItemBehavior.java index 58d597fa8..5d608fd62 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/WallBlockItemBehavior.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/behavior/WallBlockItemBehavior.java @@ -3,17 +3,18 @@ package net.momirealms.craftengine.bukkit.item.behavior; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.pack.Pack; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; import net.momirealms.craftengine.core.util.Key; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import java.nio.file.Path; import java.util.Map; public class WallBlockItemBehavior extends BlockItemBehavior { - public static final Factory FACTORY = new Factory(); + public static final Key ID = Key.from("craftengine:wall_block_item"); + public static final ItemBehaviorFactory FACTORY = new Factory(); public WallBlockItemBehavior(Key wallBlockId) { super(wallBlockId); @@ -32,7 +33,7 @@ public class WallBlockItemBehavior extends BlockItemBehavior { return super.place(context); } - public static class Factory implements ItemBehaviorFactory { + private static class Factory implements ItemBehaviorFactory { @Override public ItemBehavior create(Pack pack, Path path, String node, Key key, Map arguments) { Object id = arguments.get("block"); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/listener/ItemEventListener.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/listener/ItemEventListener.java index 5d3d4afa8..52ce742dd 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/listener/ItemEventListener.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/listener/ItemEventListener.java @@ -23,8 +23,6 @@ import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemBuildContext; import net.momirealms.craftengine.core.item.ItemSettings; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.item.setting.FoodData; import net.momirealms.craftengine.core.item.updater.ItemUpdateResult; import net.momirealms.craftengine.core.plugin.config.Config; @@ -38,6 +36,8 @@ import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockHitResult; import net.momirealms.craftengine.core.world.BlockPos; import net.momirealms.craftengine.core.world.Vec3d; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.bukkit.GameMode; import org.bukkit.Location; import org.bukkit.Material; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/BlockGenerator.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/BlockGenerator.java index 2951ddc1e..4b2c721ea 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/BlockGenerator.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/BlockGenerator.java @@ -20,10 +20,10 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MBlocks; import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MRegistries; import net.momirealms.craftengine.bukkit.util.KeyUtils; import net.momirealms.craftengine.bukkit.util.NoteBlockChainUpdateUtils; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.BlockKeys; import net.momirealms.craftengine.core.block.BlockShape; import net.momirealms.craftengine.core.block.DelegatingBlock; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.EmptyBlockBehavior; import net.momirealms.craftengine.core.block.behavior.FallOnBlockBehavior; import net.momirealms.craftengine.core.plugin.CraftEngine; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/network/BukkitNetworkManager.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/network/BukkitNetworkManager.java index ef1e06f75..657a69977 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/network/BukkitNetworkManager.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/network/BukkitNetworkManager.java @@ -71,7 +71,6 @@ import net.momirealms.craftengine.core.font.IllegalCharacterProcessResult; import net.momirealms.craftengine.core.item.CustomItem; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.item.recipe.network.legacy.LegacyRecipeHolder; import net.momirealms.craftengine.core.item.recipe.network.modern.RecipeBookEntry; import net.momirealms.craftengine.core.item.recipe.network.modern.SingleInputButtonDisplay; @@ -107,6 +106,7 @@ import net.momirealms.craftengine.core.world.chunk.client.PackedOcclusionStorage import net.momirealms.craftengine.core.world.chunk.client.SingularOcclusionStorage; import net.momirealms.craftengine.core.world.chunk.packet.BlockEntityData; import net.momirealms.craftengine.core.world.chunk.packet.MCSection; +import net.momirealms.craftengine.core.world.context.UseOnContext; import net.momirealms.sparrow.nbt.CompoundTag; import net.momirealms.sparrow.nbt.ListTag; import net.momirealms.sparrow.nbt.Tag; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java index 18361ad57..be1b5de2f 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java @@ -16,7 +16,6 @@ import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.item.processor.AttributeModifiersProcessor; import net.momirealms.craftengine.core.item.recipe.RecipeType; import net.momirealms.craftengine.core.item.recipe.UniqueIdItem; @@ -26,6 +25,7 @@ import net.momirealms.craftengine.core.plugin.config.Config; import net.momirealms.craftengine.core.util.*; import net.momirealms.craftengine.core.world.BlockHitResult; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.DyeColor; import org.bukkit.GameMode; import org.bukkit.Registry; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/world/BukkitExistingBlock.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/world/BukkitExistingBlock.java index 509d57607..5767886e3 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/world/BukkitExistingBlock.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/world/BukkitExistingBlock.java @@ -9,10 +9,10 @@ import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MFluids; import net.momirealms.craftengine.bukkit.util.BlockStateUtils; import net.momirealms.craftengine.bukkit.util.LocationUtils; import net.momirealms.craftengine.core.block.*; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.world.ExistingBlock; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.bukkit.Location; import org.bukkit.block.Block; import org.jetbrains.annotations.NotNull; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/AbstractBlockManager.java b/core/src/main/java/net/momirealms/craftengine/core/block/AbstractBlockManager.java index 9f620cd82..fa2b30948 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/AbstractBlockManager.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/AbstractBlockManager.java @@ -5,6 +5,7 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; import it.unimi.dsi.fastutil.ints.IntArrayList; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.EntityBlockBehavior; import net.momirealms.craftengine.core.block.entity.render.element.BlockEntityElement; import net.momirealms.craftengine.core.block.entity.render.element.BlockEntityElementConfig; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/AbstractCustomBlock.java b/core/src/main/java/net/momirealms/craftengine/core/block/AbstractCustomBlock.java index 36d7a21db..fbdef8fc8 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/AbstractCustomBlock.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/AbstractCustomBlock.java @@ -1,8 +1,8 @@ package net.momirealms.craftengine.core.block; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.EmptyBlockBehavior; import net.momirealms.craftengine.core.block.properties.Property; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.loot.LootTable; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.plugin.context.Context; @@ -10,6 +10,7 @@ import net.momirealms.craftengine.core.plugin.context.event.EventTrigger; import net.momirealms.craftengine.core.plugin.context.function.Function; import net.momirealms.craftengine.core.registry.Holder; import net.momirealms.craftengine.core.util.Key; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import net.momirealms.sparrow.nbt.CompoundTag; import net.momirealms.sparrow.nbt.Tag; import org.jetbrains.annotations.NotNull; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/CustomBlock.java b/core/src/main/java/net/momirealms/craftengine/core/block/CustomBlock.java index 267f4a9c1..41be7444a 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/CustomBlock.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/CustomBlock.java @@ -1,11 +1,11 @@ package net.momirealms.craftengine.core.block; import net.momirealms.craftengine.core.block.properties.Property; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.loot.LootTable; import net.momirealms.craftengine.core.plugin.context.Context; import net.momirealms.craftengine.core.plugin.context.event.EventTrigger; import net.momirealms.craftengine.core.util.Key; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import net.momirealms.sparrow.nbt.CompoundTag; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/DelegatingBlock.java b/core/src/main/java/net/momirealms/craftengine/core/block/DelegatingBlock.java index e3bb1ae92..8f5af379d 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/DelegatingBlock.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/DelegatingBlock.java @@ -1,5 +1,6 @@ package net.momirealms.craftengine.core.block; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.util.ObjectHolder; /** diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/ImmutableBlockState.java b/core/src/main/java/net/momirealms/craftengine/core/block/ImmutableBlockState.java index a112628f5..c1b9d3641 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/ImmutableBlockState.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/ImmutableBlockState.java @@ -1,6 +1,7 @@ package net.momirealms.craftengine.core.block; import it.unimi.dsi.fastutil.objects.Reference2ObjectArrayMap; +import net.momirealms.craftengine.core.block.behavior.BlockBehavior; import net.momirealms.craftengine.core.block.behavior.EntityBlockBehavior; import net.momirealms.craftengine.core.block.entity.BlockEntity; import net.momirealms.craftengine.core.block.entity.BlockEntityType; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/AbstractBlockBehavior.java b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/AbstractBlockBehavior.java index dfd7f3b05..7f57fc24a 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/AbstractBlockBehavior.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/AbstractBlockBehavior.java @@ -1,6 +1,5 @@ package net.momirealms.craftengine.core.block.behavior; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; public abstract class AbstractBlockBehavior extends BlockBehavior { diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/BlockBehavior.java b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehavior.java similarity index 96% rename from core/src/main/java/net/momirealms/craftengine/core/block/BlockBehavior.java rename to core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehavior.java index c9cb5a257..d575b154e 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/BlockBehavior.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehavior.java @@ -1,24 +1,24 @@ -package net.momirealms.craftengine.core.block; +package net.momirealms.craftengine.core.block.behavior; -import net.momirealms.craftengine.core.block.behavior.EntityBlockBehavior; +import net.momirealms.craftengine.core.block.CustomBlock; +import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.item.CustomItem; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.behavior.BlockBoundItemBehavior; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.world.BlockAccessor; import net.momirealms.craftengine.core.world.BlockPos; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; import java.util.Optional; import java.util.concurrent.Callable; -// todo move the package on 1.0 public abstract class BlockBehavior { @SuppressWarnings("unchecked") diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviorFactory.java b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviorFactory.java index 3e2b97bad..e2c281014 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviorFactory.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviorFactory.java @@ -1,11 +1,9 @@ package net.momirealms.craftengine.core.block.behavior; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import java.util.Map; -// todo refactor this on 1.0 public interface BlockBehaviorFactory { BlockBehavior create(CustomBlock block, Map arguments); diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviors.java b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviors.java index 8e96be052..703cb12bd 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviors.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/BlockBehaviors.java @@ -1,6 +1,5 @@ package net.momirealms.craftengine.core.block.behavior; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.plugin.locale.LocalizedResourceConfigException; import net.momirealms.craftengine.core.registry.BuiltInRegistries; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/CanBeReplacedBlockBehavior.java b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/CanBeReplacedBlockBehavior.java index 5ca734775..a16bb629c 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/CanBeReplacedBlockBehavior.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/CanBeReplacedBlockBehavior.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.block.behavior; import net.momirealms.craftengine.core.block.ImmutableBlockState; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; public interface CanBeReplacedBlockBehavior { diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/EmptyBlockBehavior.java b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/EmptyBlockBehavior.java index 006ae57cd..5cc9cc64e 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/behavior/EmptyBlockBehavior.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/behavior/EmptyBlockBehavior.java @@ -1,6 +1,5 @@ package net.momirealms.craftengine.core.block.behavior; -import net.momirealms.craftengine.core.block.BlockBehavior; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.EmptyBlock; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/ConstantBlockEntityRenderer.java b/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/ConstantBlockEntityRenderer.java index 461331e96..2c0ad0c4c 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/ConstantBlockEntityRenderer.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/ConstantBlockEntityRenderer.java @@ -1,13 +1,11 @@ package net.momirealms.craftengine.core.block.entity.render; import net.momirealms.craftengine.core.block.entity.render.element.BlockEntityElement; +import net.momirealms.craftengine.core.entity.Cullable; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.plugin.entityculling.CullingData; -import net.momirealms.craftengine.core.world.Cullable; -import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; -@ApiStatus.Experimental public class ConstantBlockEntityRenderer implements Cullable { private final BlockEntityElement[] elements; public final CullingData cullingData; diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/DynamicBlockEntityRenderer.java b/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/DynamicBlockEntityRenderer.java index bd7fa3c88..218ab3e88 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/DynamicBlockEntityRenderer.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/entity/render/DynamicBlockEntityRenderer.java @@ -1,9 +1,7 @@ package net.momirealms.craftengine.core.block.entity.render; import net.momirealms.craftengine.core.entity.player.Player; -import org.jetbrains.annotations.ApiStatus; -@ApiStatus.Experimental public interface DynamicBlockEntityRenderer { void show(Player player); diff --git a/core/src/main/java/net/momirealms/craftengine/core/block/properties/Property.java b/core/src/main/java/net/momirealms/craftengine/core/block/properties/Property.java index b0eb72d4b..f8bc08d22 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/block/properties/Property.java +++ b/core/src/main/java/net/momirealms/craftengine/core/block/properties/Property.java @@ -1,10 +1,10 @@ package net.momirealms.craftengine.core.block.properties; import net.momirealms.craftengine.core.block.ImmutableBlockState; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Direction; import net.momirealms.craftengine.core.util.HorizontalDirection; import net.momirealms.craftengine.core.util.SegmentedAngle; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import net.momirealms.sparrow.nbt.Tag; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/core/src/main/java/net/momirealms/craftengine/core/world/Cullable.java b/core/src/main/java/net/momirealms/craftengine/core/entity/Cullable.java similarity index 86% rename from core/src/main/java/net/momirealms/craftengine/core/world/Cullable.java rename to core/src/main/java/net/momirealms/craftengine/core/entity/Cullable.java index 404594503..7fd5b4453 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/world/Cullable.java +++ b/core/src/main/java/net/momirealms/craftengine/core/entity/Cullable.java @@ -1,4 +1,4 @@ -package net.momirealms.craftengine.core.world; +package net.momirealms.craftengine.core.entity; import net.momirealms.craftengine.core.entity.player.Player; import net.momirealms.craftengine.core.plugin.entityculling.CullingData; diff --git a/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/Furniture.java b/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/Furniture.java index e4127fb43..4f81b9068 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/Furniture.java +++ b/core/src/main/java/net/momirealms/craftengine/core/entity/furniture/Furniture.java @@ -6,6 +6,7 @@ import it.unimi.dsi.fastutil.ints.IntArrayList; import it.unimi.dsi.fastutil.ints.IntList; import it.unimi.dsi.fastutil.objects.ObjectArrayList; import net.momirealms.craftengine.core.entity.AbstractEntity; +import net.momirealms.craftengine.core.entity.Cullable; import net.momirealms.craftengine.core.entity.Entity; import net.momirealms.craftengine.core.entity.furniture.element.FurnitureElement; import net.momirealms.craftengine.core.entity.furniture.element.FurnitureElementConfig; @@ -19,7 +20,6 @@ import net.momirealms.craftengine.core.plugin.entityculling.CullingData; import net.momirealms.craftengine.core.util.Key; import net.momirealms.craftengine.core.util.LazyReference; import net.momirealms.craftengine.core.util.QuaternionUtils; -import net.momirealms.craftengine.core.world.Cullable; import net.momirealms.craftengine.core.world.Vec3d; import net.momirealms.craftengine.core.world.World; import net.momirealms.craftengine.core.world.WorldPosition; diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehavior.java b/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehavior.java index b89b9c8dc..af5269e41 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehavior.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehavior.java @@ -3,8 +3,8 @@ package net.momirealms.craftengine.core.item.behavior; import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.entity.player.InteractionResult; import net.momirealms.craftengine.core.entity.player.Player; -import net.momirealms.craftengine.core.item.context.UseOnContext; import net.momirealms.craftengine.core.world.World; +import net.momirealms.craftengine.core.world.context.UseOnContext; import org.jetbrains.annotations.Nullable; public abstract class ItemBehavior { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehaviorType.java b/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehaviorType.java new file mode 100644 index 000000000..11852c278 --- /dev/null +++ b/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehaviorType.java @@ -0,0 +1,6 @@ +package net.momirealms.craftengine.core.item.behavior; + +import net.momirealms.craftengine.core.util.Key; + +public record ItemBehaviorType(Key id, ItemBehaviorFactory factory) { +} diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehaviors.java b/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehaviors.java index f27f4effd..556c97b92 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehaviors.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/behavior/ItemBehaviors.java @@ -13,21 +13,23 @@ import java.nio.file.Path; import java.util.Map; public class ItemBehaviors { - public static final Key EMPTY = Key.withDefaultNamespace("empty", Key.DEFAULT_NAMESPACE); + public static final ItemBehaviorType EMPTY = register(Key.withDefaultNamespace("empty", Key.DEFAULT_NAMESPACE), EmptyItemBehavior.FACTORY); - public static void register(Key key, ItemBehaviorFactory factory) { - ((WritableRegistry) BuiltInRegistries.ITEM_BEHAVIOR_FACTORY) - .register(ResourceKey.create(Registries.ITEM_BEHAVIOR_FACTORY.location(), key), factory); + public static ItemBehaviorType register(Key key, ItemBehaviorFactory factory) { + ItemBehaviorType type = new ItemBehaviorType(key, factory); + ((WritableRegistry) BuiltInRegistries.ITEM_BEHAVIOR_TYPE) + .register(ResourceKey.create(Registries.ITEM_BEHAVIOR_TYPE.location(), key), type); + return type; } public static ItemBehavior fromMap(Pack pack, Path path, String node, Key id, Map map) { if (map == null || map.isEmpty()) return EmptyItemBehavior.INSTANCE; String type = ResourceConfigUtils.requireNonEmptyStringOrThrow(map.get("type"), "warning.config.item.behavior.missing_type"); Key key = Key.withDefaultNamespace(type, Key.DEFAULT_NAMESPACE); - ItemBehaviorFactory factory = BuiltInRegistries.ITEM_BEHAVIOR_FACTORY.getValue(key); - if (factory == null) { + ItemBehaviorType behaviorType = BuiltInRegistries.ITEM_BEHAVIOR_TYPE.getValue(key); + if (behaviorType == null) { throw new LocalizedResourceConfigException("warning.config.item.behavior.invalid_type", type); } - return factory.create(pack, path, node, id, map); + return behaviorType.factory().create(pack, path, node, id, map); } } \ No newline at end of file diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Animation.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Animation.java deleted file mode 100644 index 94cb4b0a8..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Animation.java +++ /dev/null @@ -1,162 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -import java.util.Map; -import java.util.UUID; - -public class Animation { - @SerializedName("uuid") - private UUID uuid; - @SerializedName("name") - private String name; - @SerializedName("loop") - private String loop; - @SerializedName("override") - private boolean override; - @SerializedName("length") - private int length; - @SerializedName("snapping") - private int snapping; - @SerializedName("selected") - private boolean selected; - @SerializedName("anim_time_update") - private String anim_time_update; - @SerializedName("blend_weight") - private String blend_weight; - @SerializedName("start_delay") - private String start_delay; - @SerializedName("loop_delay") - private String loop_delay; - @SerializedName("animators") - private Map animators; - - public UUID uuid() { - return uuid; - } - - public String name() { - return name; - } - - public String loop() { - return loop; - } - - public boolean override() { - return override; - } - - public int length() { - return length; - } - - public int snapping() { - return snapping; - } - - public boolean selected() { - return selected; - } - - public String animTimeUpdate() { - return anim_time_update; - } - - public String blendWeight() { - return blend_weight; - } - - public String startDelay() { - return start_delay; - } - - public String loopDelay() { - return loop_delay; - } - - public Map animators() { - return animators; - } - - public static class Animator { - @SerializedName("name") - private String name; - @SerializedName("type") - private String type; - @SerializedName("keyframes") - private KeyFrame[] keyframes; - - public String name() { - return name; - } - - public String type() { - return type; - } - - public KeyFrame[] keyframes() { - return keyframes; - } - - public static class KeyFrame { - @SerializedName("channel") - private String channel; - @SerializedName("data_points") - private DataPoint[] data_points; - @SerializedName("uuid") - private UUID uuid; - @SerializedName("time") - private double time; - @SerializedName("color") - private int color; - @SerializedName("interpolation") - private String interpolation; - - public String channel() { - return channel; - } - - public DataPoint[] dataPoints() { - return data_points; - } - - public UUID uuid() { - return uuid; - } - - public double time() { - return time; - } - - public int color() { - return color; - } - - public String interpolation() { - return interpolation; - } - - public static class DataPoint { - @SerializedName("x") - private String x; - @SerializedName("y") - private String y; - @SerializedName("z") - private String z; - - public String x() { - return x; - } - - public String y() { - return y; - } - - public String z() { - return z; - } - } - } - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/BBModel.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/BBModel.java deleted file mode 100644 index 8c4b0e176..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/BBModel.java +++ /dev/null @@ -1,48 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -public class BBModel { - @SerializedName("name") - private String name; - @SerializedName("meta") - private ModelMeta meta; - @SerializedName("model_identifier") - private String model_identifier; - @SerializedName("visible_box") - private int[] visible_box; - @SerializedName("elements") - private Element[] elements; - @SerializedName("outliner") - private OutLiner[] outliner; - @SerializedName("textures") - private Texture[] textures; - - public String name() { - return name; - } - - public ModelMeta meta() { - return meta; - } - - public String modelIdentifier() { - return model_identifier; - } - - public int[] visibleBox() { - return visible_box; - } - - public Element[] elements() { - return elements; - } - - public OutLiner[] outliner() { - return outliner; - } - - public Texture[] textures() { - return textures; - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Element.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Element.java deleted file mode 100644 index 65156e5e2..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Element.java +++ /dev/null @@ -1,93 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -import java.util.UUID; - -public class Element { - - @SerializedName("type") - private String type; - @SerializedName("uuid") - private UUID uuid; - @SerializedName("name") - private String name; - @SerializedName("box_uv") - private boolean box_uv; - @SerializedName("rescale") - private boolean rescale; - @SerializedName("locked") - private boolean locked; - @SerializedName("light_emission") - private int light_emission; - @SerializedName("render_order") - private String render_order; - @SerializedName("allow_mirror_modeling") - private boolean allow_mirror_modeling; - @SerializedName("from") - private double[] from; - @SerializedName("to") - private double[] to; - @SerializedName("autouv") - private int autouv; - @SerializedName("color") - private int color; - @SerializedName("origin") - private double[] origin; - - public String type() { - return type; - } - - public UUID uuid() { - return uuid; - } - - public String name() { - return name; - } - - public boolean box_uv() { - return box_uv; - } - - public boolean rescale() { - return rescale; - } - - public boolean locked() { - return locked; - } - - public int lightEmission() { - return light_emission; - } - - public String renderOrder() { - return render_order; - } - - public boolean allowMirrorModeling() { - return allow_mirror_modeling; - } - - public double[] from() { - return from; - } - - public double[] to() { - return to; - } - - public int autoUV() { - return autouv; - } - - public int color() { - return color; - } - - public double[] origin() { - return origin; - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Faces.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Faces.java deleted file mode 100644 index 9edbbea5d..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Faces.java +++ /dev/null @@ -1,57 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -public class Faces { - @SerializedName("north") - private Face north; - @SerializedName("east") - private Face east; - @SerializedName("south") - private Face south; - @SerializedName("west") - private Face west; - @SerializedName("up") - private Face up; - @SerializedName("down") - private Face down; - - public Face north() { - return north; - } - - public Face east() { - return east; - } - - public Face south() { - return south; - } - - public Face west() { - return west; - } - - public Face up() { - return up; - } - - public Face down() { - return down; - } - - public static class Face { - @SerializedName("uv") - private double[] uv; - @SerializedName("texture") - private int texture; - - public double[] uv() { - return uv; - } - - public int texture() { - return texture; - } - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/ModelMeta.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/ModelMeta.java deleted file mode 100644 index 6fa3ccee1..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/ModelMeta.java +++ /dev/null @@ -1,24 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -public class ModelMeta { - @SerializedName("format_version") - private String format_version; - @SerializedName("model_format") - private String model_format; - @SerializedName("box_uv") - private boolean box_uv; - - public String formatVersion() { - return format_version; - } - - public String modelFormat() { - return model_format; - } - - public boolean boxUV() { - return box_uv; - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/OutLiner.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/OutLiner.java deleted file mode 100644 index 1ced55b47..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/OutLiner.java +++ /dev/null @@ -1,74 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -import java.util.UUID; - -public class OutLiner { - @SerializedName("name") - private String name; - @SerializedName("origin") - private double[] origin; - @SerializedName("color") - private int color; - @SerializedName("uuid") - private UUID uuid; - @SerializedName("export") - private boolean export; - @SerializedName("locked") - private boolean locked; - @SerializedName("visibility") - private boolean visibility; - @SerializedName("mirror_uv") - private boolean mirror_uv; - @SerializedName("autouv") - private boolean autouv; - @SerializedName("isOpen") - private boolean is_open; - @SerializedName("children") - private OutLiner[] children; - - public String name() { - return name; - } - - public double[] origin() { - return origin; - } - - public int color() { - return color; - } - - public UUID uuid() { - return uuid; - } - - public boolean export() { - return export; - } - - public boolean locked() { - return locked; - } - - public boolean visibility() { - return visibility; - } - - public boolean mirrorUV() { - return mirror_uv; - } - - public boolean autoUV() { - return autouv; - } - - public boolean isOpen() { - return is_open; - } - - public OutLiner[] children() { - return children; - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Resolution.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Resolution.java deleted file mode 100644 index 5916860ae..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Resolution.java +++ /dev/null @@ -1,18 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -public class Resolution { - @SerializedName("width") - private int width; - @SerializedName("height") - private int height; - - public int width() { - return width; - } - - public int height() { - return height; - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Texture.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Texture.java deleted file mode 100644 index 0ccbee398..000000000 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/blockbench/Texture.java +++ /dev/null @@ -1,164 +0,0 @@ -package net.momirealms.craftengine.core.plugin.config.blockbench; - -import com.google.gson.annotations.SerializedName; - -import java.util.UUID; - -public class Texture { - @SerializedName("path") - private String path; - @SerializedName("name") - private String name; - @SerializedName("folder") - private String folder; - @SerializedName("namespace") - private String namespace; - @SerializedName("id") - private String id; - @SerializedName("group") - private String group; - @SerializedName("width") - private int width; - @SerializedName("height") - private int height; - @SerializedName("uv_width") - private int uv_width; - @SerializedName("uv_height") - private int uv_height; - @SerializedName("particle") - private boolean particle; - @SerializedName("use_as_default") - private boolean use_as_default; - @SerializedName("layers_enabled") - private boolean layers_enabled; - @SerializedName("sync_to_project") - private String sync_to_project; - @SerializedName("render_mode") - private String render_mode; - @SerializedName("render_sides") - private String render_sides; - @SerializedName("frame_time") - private int frame_time; - @SerializedName("frame_order_type") - private String frame_order_type; - @SerializedName("frame_order") - private String frame_order; - @SerializedName("frame_interpolate") - private boolean frame_interpolate; - @SerializedName("visible") - private boolean visible; - @SerializedName("internal") - private boolean internal; - @SerializedName("saved") - private boolean saved; - @SerializedName("uuid") - private UUID uuid; - @SerializedName("relative_path") - private String relative_path; - @SerializedName("source") - private String source; - - public String path() { - return path; - } - - public String name() { - return name; - } - - public String folder() { - return folder; - } - - public String namespace() { - return namespace; - } - - public String id() { - return id; - } - - public String group() { - return group; - } - - public int width() { - return width; - } - - public int height() { - return height; - } - - public int uvWidth() { - return uv_width; - } - - public int uvHeight() { - return uv_height; - } - - public boolean particle() { - return particle; - } - - public boolean useAsDefault() { - return use_as_default; - } - - public boolean layersEnabled() { - return layers_enabled; - } - - public String syncToProject() { - return sync_to_project; - } - - public String renderMode() { - return render_mode; - } - - public String renderSides() { - return render_sides; - } - - public int frameTime() { - return frame_time; - } - - public String frameOrderType() { - return frame_order_type; - } - - public String frameOrder() { - return frame_order; - } - - public boolean frameInterpolate() { - return frame_interpolate; - } - - public boolean visible() { - return visible; - } - - public boolean internal() { - return internal; - } - - public boolean saved() { - return saved; - } - - public UUID uuid() { - return uuid; - } - - public String relativePath() { - return relative_path; - } - - public String source() { - return source; - } -} diff --git a/core/src/main/java/net/momirealms/craftengine/core/registry/BuiltInRegistries.java b/core/src/main/java/net/momirealms/craftengine/core/registry/BuiltInRegistries.java index 3023163e7..5a78689fd 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/registry/BuiltInRegistries.java +++ b/core/src/main/java/net/momirealms/craftengine/core/registry/BuiltInRegistries.java @@ -8,7 +8,7 @@ import net.momirealms.craftengine.core.block.properties.PropertyFactory; import net.momirealms.craftengine.core.entity.furniture.behavior.FurnitureBehaviorType; import net.momirealms.craftengine.core.entity.furniture.element.FurnitureElementConfigFactory; import net.momirealms.craftengine.core.entity.furniture.hitbox.FurnitureHitBoxConfigFactory; -import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; +import net.momirealms.craftengine.core.item.behavior.ItemBehaviorType; import net.momirealms.craftengine.core.item.equipment.EquipmentFactory; import net.momirealms.craftengine.core.item.processor.ItemProcessorType; import net.momirealms.craftengine.core.item.recipe.CustomSmithingTransformRecipe; @@ -54,7 +54,7 @@ public class BuiltInRegistries { public static final Registry BLOCK = createDynamicBoundRegistry(Registries.BLOCK, 512); public static final Registry BLOCK_BEHAVIOR_TYPE = createConstantBoundRegistry(Registries.BLOCK_BEHAVIOR_TYPE, 64); public static final Registry> ITEM_PROCESSOR_TYPE = createConstantBoundRegistry(Registries.ITEM_PROCESSOR_TYPE, 64); - public static final Registry ITEM_BEHAVIOR_FACTORY = createConstantBoundRegistry(Registries.ITEM_BEHAVIOR_FACTORY, 64); + public static final Registry ITEM_BEHAVIOR_TYPE = createConstantBoundRegistry(Registries.ITEM_BEHAVIOR_TYPE, 64); public static final Registry PROPERTY_FACTORY = createConstantBoundRegistry(Registries.PROPERTY_FACTORY, 16); public static final Registry> LOOT_FUNCTION_FACTORY = createConstantBoundRegistry(Registries.LOOT_FUNCTION_FACTORY, 32); public static final Registry> LOOT_CONDITION_FACTORY = createConstantBoundRegistry(Registries.LOOT_CONDITION_FACTORY, 32); diff --git a/core/src/main/java/net/momirealms/craftengine/core/registry/Registries.java b/core/src/main/java/net/momirealms/craftengine/core/registry/Registries.java index dbd0e90ec..eb539c9bd 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/registry/Registries.java +++ b/core/src/main/java/net/momirealms/craftengine/core/registry/Registries.java @@ -8,7 +8,7 @@ import net.momirealms.craftengine.core.block.properties.PropertyFactory; import net.momirealms.craftengine.core.entity.furniture.behavior.FurnitureBehaviorType; import net.momirealms.craftengine.core.entity.furniture.element.FurnitureElementConfigFactory; import net.momirealms.craftengine.core.entity.furniture.hitbox.FurnitureHitBoxConfigFactory; -import net.momirealms.craftengine.core.item.behavior.ItemBehaviorFactory; +import net.momirealms.craftengine.core.item.behavior.ItemBehaviorType; import net.momirealms.craftengine.core.item.equipment.EquipmentFactory; import net.momirealms.craftengine.core.item.processor.ItemProcessorType; import net.momirealms.craftengine.core.item.recipe.CustomSmithingTransformRecipe; @@ -57,7 +57,7 @@ public class Registries { public static final ResourceKey>> ITEM_PROCESSOR_TYPE = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("item_processor_type")); public static final ResourceKey> PROPERTY_FACTORY = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("property_factory")); public static final ResourceKey> BLOCK_BEHAVIOR_TYPE = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("block_behavior_type")); - public static final ResourceKey> ITEM_BEHAVIOR_FACTORY = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("item_behavior_factory")); + public static final ResourceKey> ITEM_BEHAVIOR_TYPE = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("item_behavior_type")); public static final ResourceKey>> LOOT_FUNCTION_FACTORY = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("loot_function_factory")); public static final ResourceKey>> LOOT_ENTRY_CONTAINER_FACTORY = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("loot_entry_container_factory")); public static final ResourceKey>> LOOT_CONDITION_FACTORY = ResourceKey.create(ROOT_REGISTRY, Key.withDefaultNamespace("loot_condition_factory")); diff --git a/core/src/main/java/net/momirealms/craftengine/core/world/ExistingBlock.java b/core/src/main/java/net/momirealms/craftengine/core/world/ExistingBlock.java index f6b8fee82..a6bf1da7d 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/world/ExistingBlock.java +++ b/core/src/main/java/net/momirealms/craftengine/core/world/ExistingBlock.java @@ -4,8 +4,8 @@ import net.momirealms.craftengine.core.block.BlockStateWrapper; import net.momirealms.craftengine.core.block.CustomBlock; import net.momirealms.craftengine.core.block.ImmutableBlockState; import net.momirealms.craftengine.core.block.StatePropertyAccessor; -import net.momirealms.craftengine.core.item.context.BlockPlaceContext; import net.momirealms.craftengine.core.util.Key; +import net.momirealms.craftengine.core.world.context.BlockPlaceContext; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/core/src/main/java/net/momirealms/craftengine/core/world/chunk/client/VirtualCullableObject.java b/core/src/main/java/net/momirealms/craftengine/core/world/chunk/client/VirtualCullableObject.java index fef5e547d..19307eed5 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/world/chunk/client/VirtualCullableObject.java +++ b/core/src/main/java/net/momirealms/craftengine/core/world/chunk/client/VirtualCullableObject.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.world.chunk.client; +import net.momirealms.craftengine.core.entity.Cullable; import net.momirealms.craftengine.core.entity.player.Player; -import net.momirealms.craftengine.core.world.Cullable; public class VirtualCullableObject { public Cullable cullable; diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/context/BlockPlaceContext.java b/core/src/main/java/net/momirealms/craftengine/core/world/context/BlockPlaceContext.java similarity index 97% rename from core/src/main/java/net/momirealms/craftengine/core/item/context/BlockPlaceContext.java rename to core/src/main/java/net/momirealms/craftengine/core/world/context/BlockPlaceContext.java index e994f419e..ee9d61599 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/context/BlockPlaceContext.java +++ b/core/src/main/java/net/momirealms/craftengine/core/world/context/BlockPlaceContext.java @@ -1,4 +1,4 @@ -package net.momirealms.craftengine.core.item.context; +package net.momirealms.craftengine.core.world.context; import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.entity.player.Player; diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/context/UseOnContext.java b/core/src/main/java/net/momirealms/craftengine/core/world/context/UseOnContext.java similarity index 97% rename from core/src/main/java/net/momirealms/craftengine/core/item/context/UseOnContext.java rename to core/src/main/java/net/momirealms/craftengine/core/world/context/UseOnContext.java index 21a4ae92e..d6cf3bcc3 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/context/UseOnContext.java +++ b/core/src/main/java/net/momirealms/craftengine/core/world/context/UseOnContext.java @@ -1,4 +1,4 @@ -package net.momirealms.craftengine.core.item.context; +package net.momirealms.craftengine.core.world.context; import net.momirealms.craftengine.core.entity.player.InteractionHand; import net.momirealms.craftengine.core.entity.player.Player;