Fix running Geyser commands ingame
@@ -29,6 +29,7 @@ import com.github.steveice10.mc.protocol.packet.ingame.client.ClientChatPacket;
import com.nukkitx.protocol.bedrock.packet.CommandRequestPacket;
import org.geysermc.connector.GeyserConnector;
+import org.geysermc.connector.command.GeyserCommandMap;
import org.geysermc.connector.network.session.GeyserSession;
import org.geysermc.connector.network.translators.PacketTranslator;
@@ -37,8 +38,9 @@ public class BedrockCommandRequestTranslator extends PacketTranslator<CommandReq
@Override
public void translate(CommandRequestPacket packet, GeyserSession session) {
String command = packet.getCommand().replace("/", "");
- if (GeyserConnector.getInstance().getCommandMap().getCommands().containsKey(command)) {
- GeyserConnector.getInstance().getCommandMap().runCommand(session, command);
+ GeyserCommandMap commandMap = GeyserConnector.getInstance().getCommandMap();
+ if (command.startsWith("geyser ") && commandMap.getCommands().containsKey(command.split(" ")[1])) {
+ commandMap.runCommand(session, command);
} else {
ClientChatPacket chatPacket = new ClientChatPacket(packet.getCommand());
session.getDownstream().getSession().send(chatPacket);
