Skip to content

Commit f392751

Browse files
committed
Update pre-release and fix some changes
1 parent c6dcae2 commit f392751

4 files changed

Lines changed: 25 additions & 12 deletions

File tree

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ java.sourceCompatibility = JavaVersion.VERSION_25
99

1010
group = "com.github.SkriptDev"
1111
val projectVersion = "1.6.0"
12-
val hytaleVersion = "2026.04.17-c2d518cc9"
12+
val hytaleVersion = "2026.04.23-bcfa479a1"
1313
// You can find Hytale versions on their maven repo:
1414
// https://maven.hytale.com/release/com/hypixel/hytale/Server/maven-metadata.xml
1515
// https://maven.hytale.com/pre-release/com/hypixel/hytale/Server/maven-metadata.xml

src/main/java/com/github/skriptdev/skript/plugin/elements/events/player/EvtPlayerSwitchActiveSlot.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
import com.hypixel.hytale.component.query.Query;
1212
import com.hypixel.hytale.component.system.EntityEventSystem;
1313
import com.hypixel.hytale.server.core.entity.entities.Player;
14-
import com.hypixel.hytale.server.core.event.events.ecs.SwitchActiveSlotEvent;
14+
import com.hypixel.hytale.server.core.event.events.ecs.InventoryActiveSlotRequestEvent;
1515
import com.hypixel.hytale.server.core.inventory.container.ItemContainer;
1616
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
1717
import io.github.syst3ms.skriptparser.lang.Expression;
@@ -22,7 +22,7 @@
2222
import org.jetbrains.annotations.NotNull;
2323
import org.jetbrains.annotations.Nullable;
2424

25-
public class EvtPlayerSwitchActiveSlot extends SystemEvent<EntityEventSystem<EntityStore, SwitchActiveSlotEvent>> {
25+
public class EvtPlayerSwitchActiveSlot extends SystemEvent<EntityEventSystem<EntityStore, InventoryActiveSlotRequestEvent>> {
2626

2727
public static void register(SkriptRegistration reg) {
2828
reg.newEvent(EvtPlayerSwitchActiveSlot.class,
@@ -84,7 +84,7 @@ public String toString(@NotNull TriggerContext ctx, boolean debug) {
8484
return "player switch active slot";
8585
}
8686

87-
public record SwitchSlotContext(SwitchActiveSlotEvent event, Player player)
87+
public record SwitchSlotContext(InventoryActiveSlotRequestEvent event, Player player)
8888
implements PlayerContext, CancellableContext {
8989

9090
@Override
@@ -132,16 +132,16 @@ public String getName() {
132132
}
133133
}
134134

135-
public static class SwitchSlotSystem extends EntityEventSystem<EntityStore, SwitchActiveSlotEvent> {
135+
public static class SwitchSlotSystem extends EntityEventSystem<EntityStore, InventoryActiveSlotRequestEvent> {
136136

137137
protected SwitchSlotSystem() {
138-
super(SwitchActiveSlotEvent.class);
138+
super(InventoryActiveSlotRequestEvent.class);
139139
}
140140

141141
@Override
142142
public void handle(int i, @NotNull ArchetypeChunk<EntityStore> archetypeChunk,
143143
@NotNull Store<EntityStore> store, @NotNull CommandBuffer<EntityStore> commandBuffer,
144-
@NotNull SwitchActiveSlotEvent event) {
144+
@NotNull InventoryActiveSlotRequestEvent event) {
145145

146146
Ref<EntityStore> ref = archetypeChunk.getReferenceTo(i);
147147
Player player = commandBuffer.getComponent(ref, Player.getComponentType());

src/main/java/com/github/skriptdev/skript/plugin/elements/expressions/entity/ExprActiveSlot.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22

33
import com.github.skriptdev.skript.api.hytale.utils.EntityUtils;
44
import com.github.skriptdev.skript.api.skript.registration.SkriptRegistration;
5+
import com.hypixel.hytale.component.Ref;
6+
import com.hypixel.hytale.component.Store;
57
import com.hypixel.hytale.server.core.entity.LivingEntity;
68
import com.hypixel.hytale.server.core.inventory.InventoryComponent;
79
import com.hypixel.hytale.server.core.inventory.InventoryComponent.Hotbar;
810
import com.hypixel.hytale.server.core.inventory.InventoryComponent.Tool;
911
import com.hypixel.hytale.server.core.inventory.InventoryComponent.Utility;
12+
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
1013
import io.github.syst3ms.skriptparser.lang.Expression;
1114
import io.github.syst3ms.skriptparser.lang.TriggerContext;
1215
import io.github.syst3ms.skriptparser.parsing.ParseContext;
@@ -87,26 +90,30 @@ public void change(@NotNull TriggerContext ctx, @NotNull ChangeMode changeMode,
8790

8891

8992
for (LivingEntity entity : this.entity.getArray(ctx)) {
93+
Ref<EntityStore> reference = entity.getReference();
94+
if (reference == null) continue;
95+
Store<EntityStore> store = reference.getStore();
96+
9097
if (this.slot == 0) {
9198
byte clamp = (byte) Math.clamp(slot, 0, InventoryComponent.DEFAULT_HOTBAR_CAPACITY - 1);
9299
Hotbar component = EntityUtils.getComponent(entity, Hotbar.getComponentType());
93100
if (component != null) {
94-
component.setActiveSlot(clamp);
101+
component.setActiveSlot(clamp, reference, store);
95102
component.markDirty();
96103

97104
}
98105
} else if (this.slot == 1) {
99106
byte clamp = (byte) Math.clamp(slot, -1, InventoryComponent.DEFAULT_UTILITY_CAPACITY - 1);
100107
Utility component = EntityUtils.getComponent(entity, Utility.getComponentType());
101108
if (component != null) {
102-
component.setActiveSlot(clamp);
109+
component.setActiveSlot(clamp, reference, store);
103110
component.markDirty();
104111
}
105112
} else if (this.slot == 2) {
106113
byte clamp = (byte) Math.clamp(slot, -1, InventoryComponent.DEFAULT_TOOLS_CAPACITY - 1);
107114
Tool component = EntityUtils.getComponent(entity, Tool.getComponentType());
108115
if (component != null) {
109-
component.setActiveSlot(clamp);
116+
component.setActiveSlot(clamp, reference, store);
110117
component.markDirty();
111118
}
112119
}

src/main/java/com/github/skriptdev/skript/plugin/elements/expressions/entity/ExprHeldItem.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,15 @@
22

33
import com.github.skriptdev.skript.api.hytale.utils.EntityUtils;
44
import com.github.skriptdev.skript.api.skript.registration.SkriptRegistration;
5+
import com.hypixel.hytale.component.Ref;
6+
import com.hypixel.hytale.component.Store;
57
import com.hypixel.hytale.server.core.entity.LivingEntity;
68
import com.hypixel.hytale.server.core.inventory.InventoryComponent.Hotbar;
79
import com.hypixel.hytale.server.core.inventory.InventoryComponent.Tool;
810
import com.hypixel.hytale.server.core.inventory.InventoryComponent.Utility;
911
import com.hypixel.hytale.server.core.inventory.ItemStack;
1012
import com.hypixel.hytale.server.core.inventory.container.ItemContainer;
13+
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
1114
import io.github.syst3ms.skriptparser.lang.Expression;
1215
import io.github.syst3ms.skriptparser.lang.TriggerContext;
1316
import io.github.syst3ms.skriptparser.parsing.ParseContext;
@@ -86,6 +89,9 @@ public void change(@NotNull TriggerContext ctx, @NotNull ChangeMode changeMode,
8689
}
8790

8891
for (LivingEntity livingEntity : this.entities.getArray(ctx)) {
92+
Ref<EntityStore> reference = livingEntity.getReference();
93+
if (reference == null) continue;
94+
Store<EntityStore> store = reference.getStore();
8995

9096
if (this.pattern == 0) {
9197
Hotbar hotbar = EntityUtils.getComponent(livingEntity, Hotbar.getComponentType());
@@ -102,7 +108,7 @@ public void change(@NotNull TriggerContext ctx, @NotNull ChangeMode changeMode,
102108
byte activeUtilitySlot = utility.getActiveSlot();
103109
if (activeUtilitySlot < 0) {
104110
activeUtilitySlot = 0;
105-
utility.setActiveSlot((byte) 0);
111+
utility.setActiveSlot((byte) 0, reference, store);
106112
}
107113
container.setItemStackForSlot(activeUtilitySlot, itemStack);
108114
} else if (this.pattern == 2) {
@@ -113,7 +119,7 @@ public void change(@NotNull TriggerContext ctx, @NotNull ChangeMode changeMode,
113119
byte activeToolSlot = tool.getActiveSlot();
114120
if (activeToolSlot < 0) {
115121
tool.setUsingToolsItem(true);
116-
tool.setActiveSlot((byte) 1);
122+
tool.setActiveSlot((byte) 1, reference, store);
117123
activeToolSlot = 1;
118124
}
119125
container.setItemStackForSlot(activeToolSlot, itemStack);

0 commit comments

Comments
 (0)