fix: player count overflowing

This commit is contained in:
Alexander Medvedev 2026-01-31 13:57:26 +01:00
parent 84b0a6b25a
commit 67fc80439d
7 changed files with 14 additions and 10 deletions

View File

@ -1,5 +1,7 @@
use pumpkin_data::packet::serverbound::PLAY_PLAYER_LOADED;
use pumpkin_macros::java_packet;
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize)]
#[java_packet(PLAY_PLAYER_LOADED)]
pub struct SPlayerLoaded;

View File

@ -1,8 +1,9 @@
use pumpkin_data::packet::serverbound::PLAY_MOVE_PLAYER_POS;
use pumpkin_macros::java_packet;
use pumpkin_util::math::vector3::Vector3;
use serde::{Deserialize, Serialize};
#[derive(serde::Deserialize)]
#[derive(Deserialize, Serialize)]
#[java_packet(PLAY_MOVE_PLAYER_POS)]
pub struct SPlayerPosition {
pub position: Vector3<f64>,

View File

@ -1,7 +1,8 @@
use pumpkin_data::packet::serverbound::PLAY_MOVE_PLAYER_ROT;
use pumpkin_macros::java_packet;
use serde::{Deserialize, Serialize};
#[derive(serde::Deserialize)]
#[derive(Deserialize, Serialize)]
#[java_packet(PLAY_MOVE_PLAYER_ROT)]
pub struct SPlayerRotation {
pub yaw: f32,

View File

@ -1,10 +1,10 @@
use pumpkin_data::packet::serverbound::PLAY_SWING;
use pumpkin_macros::java_packet;
use serde::Serialize;
use serde::{Deserialize, Serialize};
use crate::VarInt;
#[derive(serde::Deserialize, Serialize)]
#[derive(Deserialize, Serialize)]
#[java_packet(PLAY_SWING)]
pub struct SSwingArm {
pub hand: VarInt,

View File

@ -1,10 +1,10 @@
use pumpkin_data::packet::serverbound::PLAY_USE_ITEM;
use pumpkin_macros::java_packet;
use serde::Deserialize;
use serde::{Deserialize, Serialize};
use crate::VarInt;
#[derive(Deserialize)]
#[derive(Deserialize, Serialize)]
#[java_packet(PLAY_USE_ITEM)]
pub struct SUseItem {
// 0 for main hand, 1 for off hand

View File

@ -1,11 +1,11 @@
use pumpkin_data::packet::serverbound::PLAY_USE_ITEM_ON;
use pumpkin_macros::java_packet;
use pumpkin_util::math::{position::BlockPos, vector3::Vector3};
use serde::Deserialize;
use serde::{Deserialize, Serialize};
use crate::VarInt;
#[derive(Deserialize)]
#[derive(Deserialize, Serialize)]
#[java_packet(PLAY_USE_ITEM_ON)]
pub struct SUseItemOn {
pub hand: VarInt,

View File

@ -88,7 +88,7 @@ impl CachedStatus {
// .compare_exchange(false, true, Ordering::Acquire, Ordering::Relaxed)
// .is_ok()
// {
players.online += 1;
players.online = players.online.saturating_add(1);
// }
}
@ -106,7 +106,7 @@ impl CachedStatus {
// .compare_exchange(true, false, Ordering::Acquire, Ordering::Relaxed)
// .is_ok()
// {
players.online -= 1;
players.online = players.online.saturating_sub(1);
// }
}