Struct game_features::ItemTransitionDefinition [−][src]
pub struct ItemTransitionDefinition<K, I, E, S> { pub key: K, pub name: String, pub friendly_name: String, pub icon_path: Option<String>, pub input_items: Vec<(I, usize, UseMode)>, pub stat_conditions: Vec<StatCondition<S>>, pub stat_effectors: Vec<E>, pub output_items: Vec<(I, usize)>, pub on_condition_lost: ConditionLostReaction, pub time_to_complete: f64, pub consume_input_immediate: bool, pub auto_trigger: bool, }
Expand description
A transition from one or more items into one or more different items. Can be used for all sorts of crafting.
Fields
key: K
The id of this item transition.
name: String
The name of the transition.
friendly_name: String
The friendly name of the transition.
icon_path: Option<String>
The icon path.
input_items: Vec<(I, usize, UseMode)>
The different input items, quantities and UseMode
for each one.
stat_conditions: Vec<StatCondition<S>>
The required stats conditions required to process the transition.
stat_effectors: Vec<E>
The effectors applied during crafting.
output_items: Vec<(I, usize)>
The different output items.
on_condition_lost: ConditionLostReaction
What happens when you lose the condition required to continue the transition.
time_to_complete: f64
The time to complete the transition.
consume_input_immediate: bool
Consume the input items at the start of the transition, regardless of the result.
auto_trigger: bool
Automatically transition when all the required conditions are met.
Implementations
impl<K, I, E, S> ItemTransitionDefinition<K, I, E, S>
[src]
impl<K, I, E, S> ItemTransitionDefinition<K, I, E, S>
[src]pub fn new(
key: K,
name: String,
friendly_name: String,
icon_path: Option<String>,
input_items: Vec<(I, usize, UseMode)>,
stat_conditions: Vec<StatCondition<S>>,
stat_effectors: Vec<E>,
output_items: Vec<(I, usize)>,
on_condition_lost: ConditionLostReaction,
time_to_complete: f64,
consume_input_immediate: bool,
auto_trigger: bool
) -> Self
[src]
pub fn new(
key: K,
name: String,
friendly_name: String,
icon_path: Option<String>,
input_items: Vec<(I, usize, UseMode)>,
stat_conditions: Vec<StatCondition<S>>,
stat_effectors: Vec<E>,
output_items: Vec<(I, usize)>,
on_condition_lost: ConditionLostReaction,
time_to_complete: f64,
consume_input_immediate: bool,
auto_trigger: bool
) -> Self
[src]Constructs a new ItemTransitionDefinition
.
Trait Implementations
impl<K: Clone, I: Clone, E: Clone, S: Clone> Clone for ItemTransitionDefinition<K, I, E, S>
[src]
impl<K: Clone, I: Clone, E: Clone, S: Clone> Clone for ItemTransitionDefinition<K, I, E, S>
[src]fn clone(&self) -> ItemTransitionDefinition<K, I, E, S>
[src]
fn clone(&self) -> ItemTransitionDefinition<K, I, E, S>
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl<'de, K, I, E, S> Deserialize<'de> for ItemTransitionDefinition<K, I, E, S> where
K: Deserialize<'de>,
I: Deserialize<'de>,
E: Deserialize<'de>,
S: Deserialize<'de>,
[src]
impl<'de, K, I, E, S> Deserialize<'de> for ItemTransitionDefinition<K, I, E, S> where
K: Deserialize<'de>,
I: Deserialize<'de>,
E: Deserialize<'de>,
S: Deserialize<'de>,
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl<K, I, E, S> RefUnwindSafe for ItemTransitionDefinition<K, I, E, S> where
E: RefUnwindSafe,
I: RefUnwindSafe,
K: RefUnwindSafe,
S: RefUnwindSafe,
E: RefUnwindSafe,
I: RefUnwindSafe,
K: RefUnwindSafe,
S: RefUnwindSafe,
impl<K, I, E, S> Send for ItemTransitionDefinition<K, I, E, S> where
E: Send,
I: Send,
K: Send,
S: Send,
E: Send,
I: Send,
K: Send,
S: Send,
impl<K, I, E, S> Sync for ItemTransitionDefinition<K, I, E, S> where
E: Sync,
I: Sync,
K: Sync,
S: Sync,
E: Sync,
I: Sync,
K: Sync,
S: Sync,
impl<K, I, E, S> Unpin for ItemTransitionDefinition<K, I, E, S> where
E: Unpin,
I: Unpin,
K: Unpin,
S: Unpin,
E: Unpin,
I: Unpin,
K: Unpin,
S: Unpin,
impl<K, I, E, S> UnwindSafe for ItemTransitionDefinition<K, I, E, S> where
E: UnwindSafe,
I: UnwindSafe,
K: UnwindSafe,
S: UnwindSafe,
E: UnwindSafe,
I: UnwindSafe,
K: UnwindSafe,
S: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,