update to hytale 0.7.0

This commit is contained in:
2026-10-12 19:03:28 +02:00
parent b81224c90f
commit 220cf2cec8
6 changed files with 45 additions and 17 deletions
+2 -2
View File
@@ -20,8 +20,8 @@
<maven.compiler.source>25</maven.compiler.source>
<maven.compiler.target>25</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<hytale.version>0.5.1</hytale.version>
<revision>1.5.0</revision>
<hytale.version>0.7.0</hytale.version>
<revision>1.6.0</revision>
</properties>
<build>
@@ -16,6 +16,8 @@ import com.hypixel.hytale.server.core.plugin.JavaPlugin;
import com.hypixel.hytale.server.core.plugin.JavaPluginInit;
import com.hypixel.hytale.server.core.universe.PlayerRef;
import com.hypixel.hytale.server.core.universe.world.World;
import com.hypixel.hytale.server.core.universe.world.chunk.section.BlockSection;
import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
import com.hypixel.hytale.server.core.util.Config;
import me.youhavetrouble.quickerstacker.config.QuickerStackerConfig;
import me.youhavetrouble.quickerstacker.interaction.QuickStackInteraction;
@@ -94,9 +96,14 @@ public class QuickerStacker extends JavaPlugin {
Player player = ref.getStore().getComponent(ref, Player.getComponentType());
if (player == null) return false;
PlayerRef playerRef = ref.getStore().getComponent(ref, PlayerRef.getComponentType());
InteractionManager interactionManager = new InteractionManager(playerRef, new InteractionSimulationHandler());
BlockType blockType = world.getBlockType(x, y, z);
Ref<ChunkStore> sectionRef = world.getChunkStore().getChunkSectionReferenceAtBlock(x, y, z);
if (sectionRef == null) return false;
BlockSection blockSection = sectionRef.getStore().getComponent(sectionRef, BlockSection.getComponentType());
if (blockSection == null) return false;
int blockId = blockSection.get(x, y, z);
BlockType blockType = BlockType.getAssetMap().getAsset(blockId);
if (blockType == null) return false;
InteractionManager interactionManager = new InteractionManager(playerRef, new InteractionSimulationHandler());
var event = new UseBlockEvent.Pre(InteractionType.Use, InteractionContext.forProxyEntity(interactionManager, ref, ref, ref.getStore()), new Vector3i(x, y, z), blockType);
ref.getStore().invoke(ref, event);
return !event.isCancelled();
@@ -3,7 +3,6 @@ package me.youhavetrouble.quickerstacker.interaction;
import com.hypixel.hytale.codec.builder.BuilderCodec;
import com.hypixel.hytale.component.CommandBuffer;
import com.hypixel.hytale.component.Ref;
import com.hypixel.hytale.math.util.ChunkUtil;
import com.hypixel.hytale.protocol.BlockPosition;
import com.hypixel.hytale.protocol.InteractionType;
import com.hypixel.hytale.protocol.packets.interface_.NotificationStyle;
@@ -16,12 +15,12 @@ import com.hypixel.hytale.server.core.inventory.container.SimpleItemContainer;
import com.hypixel.hytale.server.core.inventory.transaction.ItemStackTransaction;
import com.hypixel.hytale.server.core.inventory.transaction.ListTransaction;
import com.hypixel.hytale.server.core.inventory.transaction.MoveTransaction;
import com.hypixel.hytale.server.core.modules.block.BlockModule;
import com.hypixel.hytale.server.core.modules.block.components.ItemContainerBlock;
import com.hypixel.hytale.server.core.modules.interaction.interaction.CooldownHandler;
import com.hypixel.hytale.server.core.modules.interaction.interaction.config.client.SimpleBlockInteraction;
import com.hypixel.hytale.server.core.universe.PlayerRef;
import com.hypixel.hytale.server.core.universe.world.World;
import com.hypixel.hytale.server.core.universe.world.chunk.WorldChunk;
import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.server.core.util.NotificationUtil;
@@ -52,9 +51,7 @@ public class QuickStackToChestInteraction extends SimpleBlockInteraction {
int y = targetBlockPosition.y;
int z = targetBlockPosition.z;
if (!QuickerStacker.canInteractWithBlock(ref, world, x, y, z)) return;
WorldChunk chunk = world.getChunk(ChunkUtil.indexChunkFromBlock(x, z));
if (chunk == null) return;
Ref<ChunkStore> blockRef = chunk.getBlockComponentEntity(x, y, z);
Ref<ChunkStore> blockRef = BlockModule.getBlockEntity(world, x, y, z);
if (blockRef == null) return;
ItemContainerBlock containerBlock = blockRef.getStore().getComponent(blockRef, ItemContainerBlock.getComponentType());
if (containerBlock == null) return;
@@ -4,7 +4,6 @@ import com.hypixel.hytale.codec.builder.BuilderCodec;
import com.hypixel.hytale.component.CommandBuffer;
import com.hypixel.hytale.component.Ref;
import com.hypixel.hytale.component.Store;
import com.hypixel.hytale.math.util.ChunkUtil;
import com.hypixel.hytale.protocol.BlockPosition;
import com.hypixel.hytale.protocol.InteractionType;
import com.hypixel.hytale.protocol.packets.interface_.NotificationStyle;
@@ -17,13 +16,13 @@ import com.hypixel.hytale.server.core.inventory.container.ItemContainer;
import com.hypixel.hytale.server.core.inventory.transaction.ItemStackTransaction;
import com.hypixel.hytale.server.core.inventory.transaction.ListTransaction;
import com.hypixel.hytale.server.core.inventory.transaction.MoveTransaction;
import com.hypixel.hytale.server.core.modules.block.BlockModule;
import com.hypixel.hytale.server.core.modules.block.components.ItemContainerBlock;
import com.hypixel.hytale.server.core.modules.entity.component.TransformComponent;
import com.hypixel.hytale.server.core.modules.interaction.interaction.CooldownHandler;
import com.hypixel.hytale.server.core.modules.interaction.interaction.config.client.SimpleBlockInteraction;
import com.hypixel.hytale.server.core.universe.PlayerRef;
import com.hypixel.hytale.server.core.universe.world.World;
import com.hypixel.hytale.server.core.universe.world.chunk.WorldChunk;
import com.hypixel.hytale.server.core.universe.world.storage.ChunkStore;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.server.core.util.NotificationUtil;
@@ -95,9 +94,7 @@ public class QuickStackToNearbyChestsInteraction extends SimpleBlockInteraction
(int) (position.y + y),
(int) (position.z + z))
) continue;
WorldChunk chunk = world.getChunk(ChunkUtil.indexChunkFromBlock(position.x + x, position.z + z));
if (chunk == null) continue;
Ref<ChunkStore> blockRef = chunk.getBlockComponentEntity((int) position.x + x, (int) position.y + y, (int) position.z + z);
Ref<ChunkStore> blockRef = BlockModule.getBlockEntity(world, (int) position.x + x, (int) position.y + y, (int) position.z + z);
if (blockRef == null) continue;
ItemContainerBlock containerBlock = blockRef.getStore().getComponent(blockRef, ItemContainerBlock.getComponentType());
if (containerBlock == null) continue;
@@ -1,6 +1,5 @@
{
"Interactions": {
"Wielding": "Double_Jump",
"Primary": {
"Settings": {
"Adventure": {
@@ -28,6 +27,7 @@
}
]
},
"Secondary": "Block_Secondary",
"Use": {
"Settings": {
"Adventure": {
@@ -91,6 +91,33 @@
}
]
},
"Secondary": "Block_Secondary"
"Ability3": {
"Settings": {
"Adventure": {
"Cooldown": {
"Id": "BlockInteraction",
"Cooldown": 0.35
}
},
"Creative": {
"Cooldown": {
"Id": "BlockInteraction_Creative",
"Cooldown": 0.35,
"ClickBypass": true
}
}
},
"Interactions": [
{
"Type": "Simple",
"Next": {
"Type": "UseBlock",
"Failed": {
"Type": "UseEntity"
}
}
}
]
}
}
}
+1 -1
View File
@@ -11,7 +11,7 @@
}
],
"Website": "https://www.curseforge.com/hytale/mods/quickerstacker",
"ServerVersion": "=${hytale.version}",
"ServerVersion": ">=${hytale.version}",
"Dependencies": {},
"OptionalDependencies": {},
"DisabledByDefault": false,