diff --git a/pumpkin/src/net/bedrock/play.rs b/pumpkin/src/net/bedrock/play.rs index a22bb00f9..9e932cb07 100644 --- a/pumpkin/src/net/bedrock/play.rs +++ b/pumpkin/src/net/bedrock/play.rs @@ -544,6 +544,11 @@ impl BedrockClient { let block = world.get_block(&data.block_position); let server = world.server.upgrade().expect("Server is gone"); + if player.gamemode.load() == GameMode::Spectator { + // TODO: openMenu ? + return; + } + if data.action_type.0 == 0 { // Click block let held_item = player.inventory.held_item(); diff --git a/pumpkin/src/net/java/play.rs b/pumpkin/src/net/java/play.rs index 3a6eacc41..d81abca97 100644 --- a/pumpkin/src/net/java/play.rs +++ b/pumpkin/src/net/java/play.rs @@ -2159,8 +2159,10 @@ impl JavaClient { return Err(BlockPlacingError::InvalidHand); }; - //TODO this.player.resetLastActionTime(); - //TODO this.gameModeForPlayer == GameType.SPECTATOR + if player.gamemode.load() == GameMode::Spectator { + // TODO: openMenu + return Ok(()); + } let inventory = player.inventory(); let held_item = inventory.held_item();