Struct valence_server::client::Client

source ·
pub struct Client { /* private fields */ }
Expand description

The main client component. Contains the underlying network connection and packet buffer.

The component is removed when the client is disconnected. You are allowed to remove the component yourself.

Implementations§

source§

impl Client

source

pub fn connection(&self) -> &dyn ClientConnection

source

pub fn connection_mut(&mut self) -> &mut dyn ClientConnection

source

pub fn flush_packets(&mut self) -> Result<()>

Flushes the packet queue to the underlying connection.

This is called automatically at the end of the tick and when the client is dropped. Unless you’re in a hurry, there’s usually no reason to call this method yourself.

Returns an error if flushing was unsuccessful.

source

pub fn kill<'a, M: IntoText<'a>>(&mut self, message: M)

Kills the client and shows message on the death screen. If an entity killed the player, you should supply it as killer.

source

pub fn win_game(&mut self, show_credits: bool)

Respawns client. Optionally can roll the credits before respawning.

source

pub fn play_particle<P, O>( &mut self, particle: &Particle, long_distance: bool, position: P, offset: O, max_speed: f32, count: i32, )
where P: Into<DVec3>, O: Into<Vec3>,

Puts a particle effect at the given position, only for this client.

source

pub fn play_sound<P: Into<DVec3>>( &mut self, sound: Sound, category: SoundCategory, position: P, volume: f32, pitch: f32, )

Plays a sound effect at the given position, only for this client.

source

pub fn set_velocity<V: Into<Vec3>>(&mut self, velocity: V)

velocity is in m/s.

source

pub fn trigger_status(&mut self, status: EntityStatus)

Triggers an [EntityStatus].

The status is only visible to this client.

source§

impl Client

source

pub fn send_custom_payload(&mut self, channel: Ident<&str>, data: &[u8])

source§

impl Client

source

pub fn set_resource_pack( &mut self, url: &str, hash: &str, forced: bool, prompt_message: Option<Text>, )

Requests that the client download and enable a resource pack.

§Arguments
  • url - The URL of the resource pack file.
  • hash - The SHA-1 hash of the resource pack file. The value must be a 40-character hexadecimal string.
  • forced - Whether a client should be kicked from the server upon declining the pack (this is enforced client-side)
  • prompt_message - A message to be displayed with the resource pack dialog.

Trait Implementations§

source§

impl Component for Client
where Self: Send + Sync + 'static,

source§

const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table

A constant indicating the storage type used for this component.
§

fn register_component_hooks(_hooks: &mut ComponentHooks)

Called when registering this component, allowing mutable access to its [ComponentHooks].
source§

impl Drop for Client

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl WritePacket for Client

Writes packets into this client’s packet buffer. The buffer is flushed at the end of the tick.

source§

fn write_packet_fallible<P>(&mut self, packet: &P) -> Result<()>
where P: Packet + Encode,

Writes a packet to this object. The result of encoding the packet is returned.
source§

fn write_packet_bytes(&mut self, bytes: &[u8])

Copies raw packet data directly into this object. Don’t use this unless you know what you’re doing.
§

fn write_packet<P>(&mut self, packet: &P)
where P: Packet + Encode,

Writes a packet to this object. Encoding errors are typically logged and discarded.

Auto Trait Implementations§

§

impl Freeze for Client

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<C> Bundle for C
where C: Component,

§

fn component_ids( components: &mut Components, storages: &mut Storages, ids: &mut impl FnMut(ComponentId), )

§

unsafe fn from_components<T, F>(ctx: &mut T, func: &mut F) -> C
where F: for<'a> FnMut(&'a mut T) -> OwningPtr<'a>,

§

fn get_component_ids( components: &Components, ids: &mut impl FnMut(Option<ComponentId>), )

Gets this [Bundle]’s component ids. This will be None if the component has not been registered.
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
§

impl<C> DynamicBundle for C
where C: Component,

§

fn get_components(self, func: &mut impl FnMut(StorageType, OwningPtr<'_>))

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same for T

source§

type Output = T

Should always be Self
source§

impl<T> SendMessage for T
where T: WritePacket,

source§

fn send_chat_message<'a>(&mut self, msg: impl IntoText<'a>)

Sends a system message visible in the chat.
source§

fn send_action_bar_message<'a>(&mut self, msg: impl IntoText<'a>)

Displays a message in the player’s action bar (text above the hotbar).
source§

impl<T> SetBrand for T
where T: WritePacket,

source§

fn set_brand(&mut self, brand: &str)

Sets the brand of the server. Read more
source§

impl<T> SetTitle for T
where T: WritePacket,

source§

fn set_title<'a>(&mut self, text: impl IntoText<'a>)

Displays a title to a client. Read more
source§

fn set_subtitle<'a>(&mut self, text: impl IntoText<'a>)

source§

fn set_action_bar<'a>(&mut self, text: impl IntoText<'a>)

source§

fn set_title_times(&mut self, fade_in: i32, stay: i32, fade_out: i32)

fade_in: Ticks to spend fading in.stay: Ticks to keep the title displayed.fade_out: Ticks to spend fading out. Read more
source§

fn clear_title(&mut self)

source§

fn reset_title(&mut self)

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T> ConditionalSend for T
where T: Send,