aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--azalea-client/src/client.rs5
-rwxr-xr-xazalea-client/src/player.rs6
-rwxr-xr-xazalea-protocol/src/packets/game/serverbound_client_information_packet.rs6
3 files changed, 13 insertions, 4 deletions
diff --git a/azalea-client/src/client.rs b/azalea-client/src/client.rs
index 8e1a7938..d9214329 100644
--- a/azalea-client/src/client.rs
+++ b/azalea-client/src/client.rs
@@ -64,6 +64,9 @@ pub type ClientInformation = ServerboundClientInformationPacket;
/// To make a new client, use either [`azalea::ClientBuilder`] or
/// [`Client::join`].
///
+/// Note that `Client` is inaccessible from systems (i.e. plugins), but you can
+/// achieve everything that client can do with events.
+///
/// [`azalea::ClientBuilder`]: https://docs.rs/azalea/latest/azalea/struct.ClientBuilder.html
#[derive(Clone)]
pub struct Client {
@@ -467,6 +470,8 @@ impl Client {
}
/// Get a HashMap of all the players in the tab list.
+ ///
+ /// Internally, this fetches the `players` field in [`LocalPlayer`].
pub fn players(&mut self) -> HashMap<Uuid, PlayerInfo> {
self.local_player(&mut self.ecs.lock()).players.clone()
}
diff --git a/azalea-client/src/player.rs b/azalea-client/src/player.rs
index b8ca83bb..3680e2d0 100755
--- a/azalea-client/src/player.rs
+++ b/azalea-client/src/player.rs
@@ -13,12 +13,16 @@ use crate::{packet_handling::AddPlayerEvent, GameProfileComponent};
/// A player in the tab list.
#[derive(Debug, Clone)]
pub struct PlayerInfo {
+ /// Information about the player's Minecraft account, including their
+ /// username.
pub profile: GameProfile,
/// The player's UUID.
pub uuid: Uuid,
pub gamemode: GameType,
pub latency: i32,
- /// The player's display name in the tab list.
+ /// The player's display name in the tab list, but only if it's different
+ /// from the player's normal username. Use `player_info.profile.name` to get
+ /// the player's actual username.
pub display_name: Option<FormattedText>,
}
diff --git a/azalea-protocol/src/packets/game/serverbound_client_information_packet.rs b/azalea-protocol/src/packets/game/serverbound_client_information_packet.rs
index 95f49a23..65e13239 100755
--- a/azalea-protocol/src/packets/game/serverbound_client_information_packet.rs
+++ b/azalea-protocol/src/packets/game/serverbound_client_information_packet.rs
@@ -15,7 +15,7 @@ pub struct ServerboundClientInformationPacket {
/// Whether the messages sent from the server should have colors. Note that
/// many servers ignore this and always send colored messages.
pub chat_colors: bool,
- pub model_customisation: ModelCustomization,
+ pub model_customization: ModelCustomization,
pub main_hand: HumanoidArm,
pub text_filtering_enabled: bool,
/// Whether the client should show up as "Anonymous Player" in the server
@@ -30,7 +30,7 @@ impl Default for ServerboundClientInformationPacket {
view_distance: 8,
chat_visibility: ChatVisibility::default(),
chat_colors: true,
- model_customisation: ModelCustomization::default(),
+ model_customization: ModelCustomization::default(),
main_hand: HumanoidArm::Right,
text_filtering_enabled: false,
allows_listing: false,
@@ -149,7 +149,7 @@ mod tests {
view_distance: 24,
chat_visibility: ChatVisibility::Hidden,
chat_colors: false,
- model_customisation: ModelCustomization {
+ model_customization: ModelCustomization {
cape: false,
jacket: false,
left_sleeve: true,