diff --git a/pumpkin/src/client/player_packet.rs b/pumpkin/src/client/player_packet.rs index b8a7853d7..2457f1a62 100644 --- a/pumpkin/src/client/player_packet.rs +++ b/pumpkin/src/client/player_packet.rs @@ -400,7 +400,12 @@ impl Client { } pub fn handle_set_creative_slot(&mut self, _server: &mut Server, packet: SSetCreativeSlot) { - let inventory = &mut self.player.as_mut().unwrap().inventory; + let player = self.player.as_mut().unwrap(); + if player.gamemode != GameMode::Creative { + self.kick("Invalid action, you can only do that if you are in creative"); + return; + } + let inventory = &mut player.inventory; inventory.set_slot(packet.slot as usize, packet.clicked_item.to_item(), false); }