mirror of
https://github.com/GeyserMC/GeyserConnect.git
synced 2025-06-26 14:15:22 +02:00
Fix inventory issues and furnace minecart item visibility
This commit is contained in:
parent
ade33d54ec
commit
af401dddc8
2 changed files with 16 additions and 0 deletions
|
@ -35,6 +35,7 @@ import com.nukkitx.network.util.DisconnectReason;
|
||||||
import com.nukkitx.protocol.bedrock.BedrockPacketCodec;
|
import com.nukkitx.protocol.bedrock.BedrockPacketCodec;
|
||||||
import com.nukkitx.protocol.bedrock.BedrockServerSession;
|
import com.nukkitx.protocol.bedrock.BedrockServerSession;
|
||||||
import com.nukkitx.protocol.bedrock.data.AttributeData;
|
import com.nukkitx.protocol.bedrock.data.AttributeData;
|
||||||
|
import com.nukkitx.protocol.bedrock.data.ExperimentData;
|
||||||
import com.nukkitx.protocol.bedrock.handler.BedrockPacketHandler;
|
import com.nukkitx.protocol.bedrock.handler.BedrockPacketHandler;
|
||||||
import com.nukkitx.protocol.bedrock.packet.*;
|
import com.nukkitx.protocol.bedrock.packet.*;
|
||||||
import com.nukkitx.protocol.bedrock.util.EncryptionUtils;
|
import com.nukkitx.protocol.bedrock.util.EncryptionUtils;
|
||||||
|
@ -46,6 +47,7 @@ import org.geysermc.connector.entity.attribute.AttributeType;
|
||||||
import org.geysermc.connector.network.BedrockProtocol;
|
import org.geysermc.connector.network.BedrockProtocol;
|
||||||
import org.geysermc.connector.network.session.auth.AuthData;
|
import org.geysermc.connector.network.session.auth.AuthData;
|
||||||
import org.geysermc.connector.network.session.auth.BedrockClientData;
|
import org.geysermc.connector.network.session.auth.BedrockClientData;
|
||||||
|
import org.geysermc.connector.network.translators.item.ItemRegistry;
|
||||||
import org.geysermc.connector.utils.AttributeUtils;
|
import org.geysermc.connector.utils.AttributeUtils;
|
||||||
import org.geysermc.connector.utils.FileUtils;
|
import org.geysermc.connector.utils.FileUtils;
|
||||||
import org.geysermc.cumulus.Form;
|
import org.geysermc.cumulus.Form;
|
||||||
|
@ -202,6 +204,12 @@ public class PacketHandler implements BedrockPacketHandler {
|
||||||
stack.setExperimentsPreviouslyToggled(false);
|
stack.setExperimentsPreviouslyToggled(false);
|
||||||
stack.setForcedToAccept(false);
|
stack.setForcedToAccept(false);
|
||||||
stack.setGameVersion("*");
|
stack.setGameVersion("*");
|
||||||
|
|
||||||
|
if (ItemRegistry.FURNACE_MINECART_DATA != null) {
|
||||||
|
// Allow custom items to work
|
||||||
|
stack.getExperiments().add(new ExperimentData("data_driven_items", true));
|
||||||
|
}
|
||||||
|
|
||||||
session.sendPacket(stack);
|
session.sendPacket(stack);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -135,6 +135,8 @@ public class Player {
|
||||||
startGamePacket.setCurrentTick(0);
|
startGamePacket.setCurrentTick(0);
|
||||||
startGamePacket.setEnchantmentSeed(0);
|
startGamePacket.setEnchantmentSeed(0);
|
||||||
startGamePacket.setMultiplayerCorrelationId("");
|
startGamePacket.setMultiplayerCorrelationId("");
|
||||||
|
startGamePacket.setItemEntries(ItemRegistry.ITEMS);
|
||||||
|
startGamePacket.setInventoriesServerAuthoritative(true);
|
||||||
startGamePacket.setServerEngine("");
|
startGamePacket.setServerEngine("");
|
||||||
|
|
||||||
SyncedPlayerMovementSettings settings = new SyncedPlayerMovementSettings();
|
SyncedPlayerMovementSettings settings = new SyncedPlayerMovementSettings();
|
||||||
|
@ -146,6 +148,12 @@ public class Player {
|
||||||
startGamePacket.setVanillaVersion("*");
|
startGamePacket.setVanillaVersion("*");
|
||||||
session.sendPacket(startGamePacket);
|
session.sendPacket(startGamePacket);
|
||||||
|
|
||||||
|
if (ItemRegistry.FURNACE_MINECART_DATA != null) {
|
||||||
|
ItemComponentPacket itemComponentPacket = new ItemComponentPacket();
|
||||||
|
itemComponentPacket.getItems().add(ItemRegistry.FURNACE_MINECART_DATA);
|
||||||
|
session.sendPacket(itemComponentPacket);
|
||||||
|
}
|
||||||
|
|
||||||
// Send an empty chunk
|
// Send an empty chunk
|
||||||
LevelChunkPacket data = new LevelChunkPacket();
|
LevelChunkPacket data = new LevelChunkPacket();
|
||||||
data.setChunkX(0);
|
data.setChunkX(0);
|
||||||
|
|
Loading…
Add table
Reference in a new issue