Skip to content

Commit 11f76b6

Browse files
Update to 1.21.30 (#5041)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
1 parent a5e45ad commit 11f76b6

26 files changed

+13406
-34
lines changed

core/src/main/java/org/geysermc/geyser/entity/attribute/GeyserAttributeType.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public enum GeyserAttributeType {
5454

5555
// Bedrock Attributes
5656
ABSORPTION(null, "minecraft:absorption", 0f, 1024f, 0f),
57-
EXHAUSTION(null, "minecraft:player.exhaustion", 0f, 5f, 0f),
57+
EXHAUSTION(null, "minecraft:player.exhaustion", 0f, 20f, 0f),
5858
EXPERIENCE(null, "minecraft:player.experience", 0f, 1f, 0f),
5959
EXPERIENCE_LEVEL(null, "minecraft:player.level", 0f, 24791.00f, 0f),
6060
HEALTH(null, "minecraft:health", 0f, 1024f, 20f),

core/src/main/java/org/geysermc/geyser/impl/camera/CameraDefinitions.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,13 @@ public class CameraDefinitions {
4343

4444
static {
4545
CAMERA_PRESETS = List.of(
46-
new CameraPreset(CameraPerspective.FIRST_PERSON.id(), "", null, null, null, null, null, null, OptionalBoolean.empty()),
47-
new CameraPreset(CameraPerspective.FREE.id(), "", null, null, null, null, null, null, OptionalBoolean.empty()),
48-
new CameraPreset(CameraPerspective.THIRD_PERSON.id(), "", null, null, null, null, null, null, OptionalBoolean.empty()),
49-
new CameraPreset(CameraPerspective.THIRD_PERSON_FRONT.id(), "", null, null, null, null, null, null, OptionalBoolean.empty()),
50-
new CameraPreset("geyser:free_audio", "minecraft:free", null, null, null, null, null, CameraAudioListener.PLAYER, OptionalBoolean.of(false)),
51-
new CameraPreset("geyser:free_effects", "minecraft:free", null, null, null, null, null, CameraAudioListener.CAMERA, OptionalBoolean.of(true)),
52-
new CameraPreset("geyser:free_audio_effects", "minecraft:free", null, null, null, null, null, CameraAudioListener.PLAYER, OptionalBoolean.of(true)));
46+
new CameraPreset(CameraPerspective.FIRST_PERSON.id(), "", null, null, null, null, null, null, OptionalBoolean.empty(), null, OptionalBoolean.empty(), null),
47+
new CameraPreset(CameraPerspective.FREE.id(), "", null, null, null, null, null, null, OptionalBoolean.empty(), null, OptionalBoolean.empty(), null),
48+
new CameraPreset(CameraPerspective.THIRD_PERSON.id(), "", null, null, null, null, null, null, OptionalBoolean.empty(), null, OptionalBoolean.empty(), null),
49+
new CameraPreset(CameraPerspective.THIRD_PERSON_FRONT.id(), "", null, null, null, null, null, null, OptionalBoolean.empty(), null, OptionalBoolean.empty(), null),
50+
new CameraPreset("geyser:free_audio", "minecraft:free", null, null, null, null, null, CameraAudioListener.PLAYER, OptionalBoolean.empty(), null, OptionalBoolean.of(false), null),
51+
new CameraPreset("geyser:free_effects", "minecraft:free", null, null, null, null, null, CameraAudioListener.CAMERA, OptionalBoolean.empty(), null, OptionalBoolean.of(true), null),
52+
new CameraPreset("geyser:free_audio_effects", "minecraft:free", null, null, null, null, null, CameraAudioListener.PLAYER, OptionalBoolean.empty(), null, OptionalBoolean.of(true), null));
5353

5454
SimpleDefinitionRegistry.Builder<NamedDefinition> builder = SimpleDefinitionRegistry.builder();
5555
for (int i = 0; i < CAMERA_PRESETS.size(); i++) {

core/src/main/java/org/geysermc/geyser/inventory/updater/AnvilInventoryUpdater.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@
3232
import org.cloudburstmc.nbt.NbtMap;
3333
import org.cloudburstmc.nbt.NbtMapBuilder;
3434
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerId;
35+
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerSlotType;
36+
import org.cloudburstmc.protocol.bedrock.data.inventory.FullContainerName;
3537
import org.cloudburstmc.protocol.bedrock.data.inventory.ItemData;
3638
import org.cloudburstmc.protocol.bedrock.packet.InventorySlotPacket;
3739
import org.geysermc.geyser.GeyserImpl;
@@ -78,6 +80,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
7880
slotPacket.setContainerId(ContainerId.UI);
7981
slotPacket.setSlot(bedrockSlot);
8082
slotPacket.setItem(inventory.getItem(i).getItemData(session));
83+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
8184
session.sendUpstreamPacket(slotPacket);
8285
}
8386
}
@@ -98,13 +101,15 @@ public boolean updateSlot(InventoryTranslator translator, GeyserSession session,
98101
slotPacket.setContainerId(ContainerId.UI);
99102
slotPacket.setSlot(translator.javaSlotToBedrock(javaSlot));
100103
slotPacket.setItem(inventory.getItem(javaSlot).getItemData(session));
104+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
101105
session.sendUpstreamPacket(slotPacket);
102106
} else if (lastTargetSlot != javaSlot) {
103107
// Update the previous target slot to remove repair cost changes
104108
InventorySlotPacket slotPacket = new InventorySlotPacket();
105109
slotPacket.setContainerId(ContainerId.UI);
106110
slotPacket.setSlot(translator.javaSlotToBedrock(lastTargetSlot));
107111
slotPacket.setItem(inventory.getItem(lastTargetSlot).getItemData(session));
112+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
108113
session.sendUpstreamPacket(slotPacket);
109114
}
110115

@@ -168,6 +173,7 @@ private void updateTargetSlot(InventoryTranslator translator, GeyserSession sess
168173
slotPacket.setContainerId(ContainerId.UI);
169174
slotPacket.setSlot(translator.javaSlotToBedrock(slot));
170175
slotPacket.setItem(itemData);
176+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
171177
session.sendUpstreamPacket(slotPacket);
172178
}
173179

core/src/main/java/org/geysermc/geyser/inventory/updater/ChestInventoryUpdater.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
package org.geysermc.geyser.inventory.updater;
2727

28+
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerSlotType;
29+
import org.cloudburstmc.protocol.bedrock.data.inventory.FullContainerName;
2830
import org.cloudburstmc.protocol.bedrock.data.inventory.ItemData;
2931
import org.cloudburstmc.protocol.bedrock.packet.InventoryContentPacket;
3032
import org.cloudburstmc.protocol.bedrock.packet.InventorySlotPacket;
@@ -61,6 +63,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
6163
InventoryContentPacket contentPacket = new InventoryContentPacket();
6264
contentPacket.setContainerId(inventory.getBedrockId());
6365
contentPacket.setContents(bedrockItems);
66+
contentPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
6467
session.sendUpstreamPacket(contentPacket);
6568
}
6669

@@ -73,6 +76,7 @@ public boolean updateSlot(InventoryTranslator translator, GeyserSession session,
7376
slotPacket.setContainerId(inventory.getBedrockId());
7477
slotPacket.setSlot(translator.javaSlotToBedrock(javaSlot));
7578
slotPacket.setItem(inventory.getItem(javaSlot).getItemData(session));
79+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
7680
session.sendUpstreamPacket(slotPacket);
7781
return true;
7882
}

core/src/main/java/org/geysermc/geyser/inventory/updater/ContainerInventoryUpdater.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
package org.geysermc.geyser.inventory.updater;
2727

28+
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerSlotType;
29+
import org.cloudburstmc.protocol.bedrock.data.inventory.FullContainerName;
2830
import org.cloudburstmc.protocol.bedrock.data.inventory.ItemData;
2931
import org.cloudburstmc.protocol.bedrock.packet.InventoryContentPacket;
3032
import org.cloudburstmc.protocol.bedrock.packet.InventorySlotPacket;
@@ -49,6 +51,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
4951
InventoryContentPacket contentPacket = new InventoryContentPacket();
5052
contentPacket.setContainerId(inventory.getBedrockId());
5153
contentPacket.setContents(Arrays.asList(bedrockItems));
54+
contentPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
5255
session.sendUpstreamPacket(contentPacket);
5356
}
5457

@@ -61,6 +64,7 @@ public boolean updateSlot(InventoryTranslator translator, GeyserSession session,
6164
slotPacket.setContainerId(inventory.getBedrockId());
6265
slotPacket.setSlot(translator.javaSlotToBedrock(javaSlot));
6366
slotPacket.setItem(inventory.getItem(javaSlot).getItemData(session));
67+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
6468
session.sendUpstreamPacket(slotPacket);
6569
return true;
6670
}

core/src/main/java/org/geysermc/geyser/inventory/updater/CrafterInventoryUpdater.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
package org.geysermc.geyser.inventory.updater;
2727

2828
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerId;
29+
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerSlotType;
30+
import org.cloudburstmc.protocol.bedrock.data.inventory.FullContainerName;
2931
import org.cloudburstmc.protocol.bedrock.data.inventory.ItemData;
3032
import org.cloudburstmc.protocol.bedrock.packet.InventoryContentPacket;
3133
import org.cloudburstmc.protocol.bedrock.packet.InventorySlotPacket;
@@ -56,6 +58,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
5658
contentPacket = new InventoryContentPacket();
5759
contentPacket.setContainerId(inventory.getBedrockId());
5860
contentPacket.setContents(Arrays.asList(bedrockItems));
61+
contentPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
5962
session.sendUpstreamPacket(contentPacket);
6063

6164
// inventory and hotbar
@@ -67,6 +70,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
6770
contentPacket = new InventoryContentPacket();
6871
contentPacket.setContainerId(ContainerId.INVENTORY);
6972
contentPacket.setContents(Arrays.asList(bedrockItems));
73+
contentPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
7074
session.sendUpstreamPacket(contentPacket);
7175

7276
// Crafter result - it doesn't come after the grid, as explained elsewhere.
@@ -88,6 +92,7 @@ public boolean updateSlot(InventoryTranslator translator, GeyserSession session,
8892
packet.setContainerId(containerId);
8993
packet.setSlot(translator.javaSlotToBedrock(javaSlot));
9094
packet.setItem(inventory.getItem(javaSlot).getItemData(session));
95+
packet.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
9196
session.sendUpstreamPacket(packet);
9297
return true;
9398
}

core/src/main/java/org/geysermc/geyser/inventory/updater/HorseInventoryUpdater.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525

2626
package org.geysermc.geyser.inventory.updater;
2727

28+
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerSlotType;
29+
import org.cloudburstmc.protocol.bedrock.data.inventory.FullContainerName;
2830
import org.cloudburstmc.protocol.bedrock.data.inventory.ItemData;
2931
import org.cloudburstmc.protocol.bedrock.packet.InventoryContentPacket;
3032
import org.cloudburstmc.protocol.bedrock.packet.InventorySlotPacket;
@@ -49,6 +51,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
4951
InventoryContentPacket contentPacket = new InventoryContentPacket();
5052
contentPacket.setContainerId(inventory.getBedrockId());
5153
contentPacket.setContents(Arrays.asList(bedrockItems));
54+
contentPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
5255
session.sendUpstreamPacket(contentPacket);
5356
}
5457

@@ -61,6 +64,7 @@ public boolean updateSlot(InventoryTranslator translator, GeyserSession session,
6164
slotPacket.setContainerId(4); // Horse GUI?
6265
slotPacket.setSlot(translator.javaSlotToBedrock(javaSlot));
6366
slotPacket.setItem(inventory.getItem(javaSlot).getItemData(session));
67+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
6468
session.sendUpstreamPacket(slotPacket);
6569
return true;
6670
}

core/src/main/java/org/geysermc/geyser/inventory/updater/InventoryUpdater.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
package org.geysermc.geyser.inventory.updater;
2727

2828
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerId;
29+
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerSlotType;
30+
import org.cloudburstmc.protocol.bedrock.data.inventory.FullContainerName;
2931
import org.cloudburstmc.protocol.bedrock.data.inventory.ItemData;
3032
import org.cloudburstmc.protocol.bedrock.packet.InventoryContentPacket;
3133
import org.cloudburstmc.protocol.bedrock.packet.InventorySlotPacket;
@@ -45,6 +47,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
4547
InventoryContentPacket contentPacket = new InventoryContentPacket();
4648
contentPacket.setContainerId(ContainerId.INVENTORY);
4749
contentPacket.setContents(Arrays.asList(bedrockItems));
50+
contentPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
4851
session.sendUpstreamPacket(contentPacket);
4952
}
5053

@@ -54,6 +57,7 @@ public boolean updateSlot(InventoryTranslator translator, GeyserSession session,
5457
slotPacket.setContainerId(ContainerId.INVENTORY);
5558
slotPacket.setSlot(translator.javaSlotToBedrock(javaSlot));
5659
slotPacket.setItem(inventory.getItem(javaSlot).getItemData(session));
60+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
5761
session.sendUpstreamPacket(slotPacket);
5862
return true;
5963
}

core/src/main/java/org/geysermc/geyser/inventory/updater/UIInventoryUpdater.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
package org.geysermc.geyser.inventory.updater;
2727

2828
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerId;
29+
import org.cloudburstmc.protocol.bedrock.data.inventory.ContainerSlotType;
30+
import org.cloudburstmc.protocol.bedrock.data.inventory.FullContainerName;
2931
import org.cloudburstmc.protocol.bedrock.packet.InventorySlotPacket;
3032
import org.geysermc.geyser.inventory.Inventory;
3133
import org.geysermc.geyser.session.GeyserSession;
@@ -46,6 +48,7 @@ public void updateInventory(InventoryTranslator translator, GeyserSession sessio
4648
slotPacket.setContainerId(ContainerId.UI);
4749
slotPacket.setSlot(bedrockSlot);
4850
slotPacket.setItem(inventory.getItem(i).getItemData(session));
51+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
4952
session.sendUpstreamPacket(slotPacket);
5053
}
5154
}
@@ -59,6 +62,7 @@ public boolean updateSlot(InventoryTranslator translator, GeyserSession session,
5962
slotPacket.setContainerId(ContainerId.UI);
6063
slotPacket.setSlot(translator.javaSlotToBedrock(javaSlot));
6164
slotPacket.setItem(inventory.getItem(javaSlot).getItemData(session));
65+
slotPacket.setContainerNameData(new FullContainerName(ContainerSlotType.ANVIL_INPUT, null));
6266
session.sendUpstreamPacket(slotPacket);
6367
return true;
6468
}

0 commit comments

Comments
 (0)