pub struct Item {Show 13 fields
pub id: String,
pub max_stack: i32,
pub name: String,
pub tooltip: String,
pub max_damage: i32,
pub fire_resistant: bool,
pub fuel_ticks: i32,
pub food: Option<FoodDef>,
pub book: bool,
pub tool: Option<Tool>,
pub armor: Option<Armor>,
pub wearable: Option<ArmorSlot>,
pub hangs: Option<Hangs>,
}Expand description
An item: its stack, durability, fuel, food, tool or armor (materials whole), what it’s worn as or hangs, and whether it opens a book.
Fields§
§id: String§max_stack: i32§name: StringEmpty: the game’s name of its id.
tooltip: StringEmpty: none.
max_damage: i32§fire_resistant: bool§fuel_ticks: i32§food: Option<FoodDef>§book: boolA book registered under the item’s id: the item opens it.
tool: Option<Tool>§armor: Option<Armor>§wearable: Option<ArmorSlot>The slot it’s worn in without being armor.
hangs: Option<Hangs>Trait Implementations§
Source§impl Schema for Item
impl Schema for Item
Source§fn encode(&self, __yog_w: &mut Writer)
fn encode(&self, __yog_w: &mut Writer)
Writes itself in the binary form, straight —
Schema::write’s
value encoded, unless the type knows better (derived ones do).Source§fn decode(__yog_d: &mut Decoder<'_>) -> Option<Item>
fn decode(__yog_d: &mut Decoder<'_>) -> Option<Item>
Reads itself from the binary form, straight;
None when it isn’t
what Schema::encode writes — then read_bytes reads the slow
way, which says what’s wrong. Through a value unless the type knows
better (derived ones do).Source§fn pack(&self, __yog_p: &mut Packer)
fn pack(&self, __yog_p: &mut Packer)
Packs itself into a frame (
crate::frame): its binary form as
bytes, unless the type packs itself (derived ones and plain types do).Source§fn unpack(__yog_u: &mut Unpacker<'_>) -> Option<Item>
fn unpack(__yog_u: &mut Unpacker<'_>) -> Option<Item>
Reads itself out of a frame;
None if the bytes aren’t what
Schema::pack writes.Source§fn read(v: &ValueRef<'_>, cx: &mut Reader<'_>) -> Option<Item>
fn read(v: &ValueRef<'_>, cx: &mut Reader<'_>) -> Option<Item>
Reads
v. Problems go to cx at its current path; None when the
value couldn’t be read (the problem is in cx).Source§fn absent() -> Option<Self>
fn absent() -> Option<Self>
The value of a field that isn’t there —
None: the field is required.Source§fn pack_list(items: &[Self], p: &mut Packer)
fn pack_list(items: &[Self], p: &mut Packer)
A list of these packed: a count, then each one (floats raw).
Source§fn encode_list(items: &[Self], w: &mut Writer)
fn encode_list(items: &[Self], w: &mut Writer)
A list of these written straight (numbers pack theirs).
Auto Trait Implementations§
impl Freeze for Item
impl RefUnwindSafe for Item
impl Send for Item
impl Sync for Item
impl Unpin for Item
impl UnsafeUnpin for Item
impl UnwindSafe for Item
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Message for Twhere
T: Schema,
impl<T> Message for Twhere
T: Schema,
Source§fn from_bytes(bytes: &[u8]) -> Option<Self>
fn from_bytes(bytes: &[u8]) -> Option<Self>
The message read from a payload;
None if it isn’t one.Source§fn with_bytes<R>(&self, f: impl FnOnce(&[u8]) -> R) -> R
fn with_bytes<R>(&self, f: impl FnOnce(&[u8]) -> R) -> R
f on the payload, packed in this thread’s reused buffers: nothing
allocated once they’ve grown to the thread’s messages.