[−][src]Trait naia_server::Actor
An Actor is a container of Properties that can be scoped, tracked, and synced, with a remote host
Required methods
fn get_state_mask_size(&self) -> u8
Gets the number of bytes of the Actor's State Mask
fn get_typed_copy(&self) -> T
Gets a copy of the Actor, wrapped in an ActorType enum (which is the common protocol between the server/host)
fn get_type_id(&self) -> TypeId
Gets the TypeId of the Actor's implementation, used to map to a registered ActorType
fn write(&self, out_bytes: &mut Vec<u8>)
Writes data into an outgoing byte stream, sufficient to completely recreate the Actor on the client
fn write_partial(&self, state_mask: &StateMask, out_bytes: &mut Vec<u8>)
Write data into an outgoing byte stream, sufficient only to update the mutated Properties of the Actor on the client
fn read_full(&mut self, reader: &mut PacketReader<'_>, packet_index: u16)
Reads data from an incoming packet, sufficient to sync the in-memory Actor with it's state on the Server
fn read_partial(
&mut self,
state_mask: &StateMask,
reader: &mut PacketReader<'_>,
packet_index: u16
)
&mut self,
state_mask: &StateMask,
reader: &mut PacketReader<'_>,
packet_index: u16
)
Reads data from an incoming packet, sufficient to sync the in-memory Actor with it's state on the Server
fn set_mutator(&mut self, mutator: &Rc<RefCell<dyn ActorMutator + 'static>>)
Set the Actor's ActorMutator, which keeps track of which Properties have been mutated, necessary to sync only the Properties that have changed with the client
fn is_interpolated(&self) -> bool
Returns whether or not the Actor has any interpolated properties
fn is_predicted(&self) -> bool
Returns whether or not the Actor has any predicted properties