pub struct FactionState { /* private fields */ }Expand description
Faction runtime state (Mutable)
Contains operation information that changes during gameplay. This is a save/load target.
Implementations§
Source§impl FactionState
impl FactionState
Sourcepub fn launch_operation(
&mut self,
operation: Operation,
) -> Result<(), FactionError>
pub fn launch_operation( &mut self, operation: Operation, ) -> Result<(), FactionError>
Launch a new operation
§Returns
Ok(()) if operation was launched successfully,
Err(FactionError) if operation already exists.
Sourcepub fn get_operation(&self, id: &OperationId) -> Option<&Operation>
pub fn get_operation(&self, id: &OperationId) -> Option<&Operation>
Get operation by id
Sourcepub fn get_operation_mut(&mut self, id: &OperationId) -> Option<&mut Operation>
pub fn get_operation_mut(&mut self, id: &OperationId) -> Option<&mut Operation>
Get mutable operation by id
Sourcepub fn operations(&self) -> impl Iterator<Item = &Operation>
pub fn operations(&self) -> impl Iterator<Item = &Operation>
List all operations
Sourcepub fn operations_for_faction<'a>(
&'a self,
faction_id: &'a FactionId,
) -> impl Iterator<Item = &'a Operation> + 'a
pub fn operations_for_faction<'a>( &'a self, faction_id: &'a FactionId, ) -> impl Iterator<Item = &'a Operation> + 'a
List operations for a specific faction
Sourcepub fn operations_with_status(
&self,
status: OperationStatus,
) -> impl Iterator<Item = &Operation>
pub fn operations_with_status( &self, status: OperationStatus, ) -> impl Iterator<Item = &Operation>
List operations with a specific status
Sourcepub fn update_operation_status(
&mut self,
id: &OperationId,
status: OperationStatus,
) -> Result<(), FactionError>
pub fn update_operation_status( &mut self, id: &OperationId, status: OperationStatus, ) -> Result<(), FactionError>
Update operation status
§Returns
Ok(()) if status was updated successfully,
Err(FactionError) if operation not found.
Sourcepub fn complete_operation(
&mut self,
id: &OperationId,
) -> Result<(), FactionError>
pub fn complete_operation( &mut self, id: &OperationId, ) -> Result<(), FactionError>
Complete an operation
Sets operation status to Completed.
Sourcepub fn fail_operation(&mut self, id: &OperationId) -> Result<(), FactionError>
pub fn fail_operation(&mut self, id: &OperationId) -> Result<(), FactionError>
Fail an operation
Sets operation status to Failed.
Sourcepub fn remove_operation(&mut self, id: &OperationId) -> Option<Operation>
pub fn remove_operation(&mut self, id: &OperationId) -> Option<Operation>
Remove a completed or failed operation
This is useful for cleanup of old operations.
§Returns
Some(operation) if operation was removed,
None if operation not found or still in progress.
Sourcepub fn operation_count(&self) -> usize
pub fn operation_count(&self) -> usize
Count total operations
Sourcepub fn operation_count_for_faction(&self, faction_id: &FactionId) -> usize
pub fn operation_count_for_faction(&self, faction_id: &FactionId) -> usize
Count operations for a specific faction
Trait Implementations§
Source§impl Clone for FactionState
impl Clone for FactionState
Source§fn clone(&self) -> FactionState
fn clone(&self) -> FactionState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for FactionState
impl Debug for FactionState
Source§impl Default for FactionState
impl Default for FactionState
Source§impl<'de> Deserialize<'de> for FactionState
impl<'de> Deserialize<'de> for FactionState
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for FactionState
impl Serialize for FactionState
Source§impl State for FactionState
impl State for FactionState
Source§fn state_type(&self) -> &'static str
fn state_type(&self) -> &'static str
Auto Trait Implementations§
impl Freeze for FactionState
impl RefUnwindSafe for FactionState
impl Send for FactionState
impl Sync for FactionState
impl Unpin for FactionState
impl UnsafeUnpin for FactionState
impl UnwindSafe for FactionState
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> Component for T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more