pub struct EquipmentLoadout {
pub id: u64,
pub name: String,
pub slots: HashMap<EquipmentSlot, Option<ItemInstance>>,
pub total_weight: f32,
pub stat_totals: HashMap<StatType, f32>,
pub active_set_piece_counts: HashMap<u64, u32>,
}Fields§
§id: u64§name: String§slots: HashMap<EquipmentSlot, Option<ItemInstance>>§total_weight: f32§stat_totals: HashMap<StatType, f32>§active_set_piece_counts: HashMap<u64, u32>Implementations§
Source§impl EquipmentLoadout
impl EquipmentLoadout
pub fn new(id: u64, name: impl Into<String>) -> Self
pub fn equip( &mut self, slot: EquipmentSlot, inst: ItemInstance, def: &ItemDefinition, ) -> Option<ItemInstance>
pub fn unequip(&mut self, slot: EquipmentSlot) -> Option<ItemInstance>
pub fn recalculate_totals_simple(&mut self, last_def: &ItemDefinition)
pub fn is_slot_filled(&self, slot: EquipmentSlot) -> bool
pub fn empty_slots(&self) -> Vec<EquipmentSlot>
pub fn equipped_count(&self) -> u32
pub fn loadout_score(&self, defs: &HashMap<u64, ItemDefinition>) -> f32
Trait Implementations§
Source§impl Clone for EquipmentLoadout
impl Clone for EquipmentLoadout
Auto Trait Implementations§
impl Freeze for EquipmentLoadout
impl RefUnwindSafe for EquipmentLoadout
impl Send for EquipmentLoadout
impl Sync for EquipmentLoadout
impl Unpin for EquipmentLoadout
impl UnsafeUnpin for EquipmentLoadout
impl UnwindSafe for EquipmentLoadout
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn 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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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.Source§fn as_any(&self) -> &(dyn Any + 'static)
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.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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.