Upgrades

Struct Upgrades 

Source
pub struct Upgrades {
    pub speed: u8,
    pub shield: bool,
    pub inferno: bool,
}
Expand description

Upgrade info that a client needs to know about to calculate movement. This also includes the shielded state of the player.

Note that since a player should never have more than 5 upgrades on the official server, protocol-v5 can only represent amounts of speed upgrades in the range 0 to 7.

Used in:

Fields§

§speed: u8

The number of speed upgrades that the player currently has equipped.

Note that only the first 3 bits of this are used in protocol-v5. Any values greater than 7 will be mangled.

§shield: bool

Whether the player has a shield.

While both this and inferno can be set at the same time, that doesn’t make sense within the framework of the game.

§inferno: bool

Whether the player has an inferno.

While both this and shield can be set at the same time, that doesn’t make sense within the framework of the game.

Trait Implementations§

Source§

impl Clone for Upgrades

Source§

fn clone(&self) -> Upgrades

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Upgrades

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Upgrades

Source§

fn default() -> Upgrades

Returns the “default value” for a type. Read more
Source§

impl<'de> DeserializeV5<'de> for Upgrades

Source§

impl Hash for Upgrades

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for Upgrades

Source§

fn eq(&self, other: &Upgrades) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl SerializeV5 for Upgrades

Source§

fn serialize(&self, ser: &mut AirmashSerializerV5<'_>) -> Result

Source§

impl Copy for Upgrades

Source§

impl Eq for Upgrades

Source§

impl StructuralPartialEq for Upgrades

Auto Trait Implementations§

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
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.