Struct leafwing_abilities::AbilityState
source · [−]pub struct AbilityState<A: Abilitylike> {
pub action_state: &'static ActionState<A>,
pub charges: &'static mut ChargeState<A>,
pub cooldowns: &'static mut CooldownState<A>,
}Expand description
A custom WorldQuery type that fetches all ability relevant data for you.
This type is intended to make collecting the data for Abilitylike methods easier when working with a full AbilitiesBundle.
This struct can be used as the first type parameter in a Query to fetch the appropriate data.
Once you have a AbilityStateItem by calling .iter_mut() or .single_mut on your query
(or a AbilityStateReadOnlyItem by calling .iter() or .single),
you can use the methods defined there to perform common tasks quickly and reliably.
Fields
action_state: &'static ActionState<A>The ActionState of the abilities of this entity of type A
charges: &'static mut ChargeState<A>The ChargeState associated with each action of type A for this entity
cooldowns: &'static mut CooldownState<A>The CooldownState associated with each action of type A for this entity
Trait Implementations
sourceimpl<A: Abilitylike> WorldQuery for AbilityState<A>
impl<A: Abilitylike> WorldQuery for AbilityState<A>
type ReadOnly = AbilityStateReadOnly<A>
type State = AbilityStateState<A>
sourceimpl<'__w, A: Abilitylike> WorldQueryGats<'__w> for AbilityState<A>
impl<'__w, A: Abilitylike> WorldQueryGats<'__w> for AbilityState<A>
Auto Trait Implementations
impl<A> RefUnwindSafe for AbilityState<A>where
A: RefUnwindSafe,
impl<A> Send for AbilityState<A>
impl<A> Sync for AbilityState<A>
impl<A> Unpin for AbilityState<A>
impl<A> !UnwindSafe for AbilityState<A>
Blanket Implementations
impl<T, U> AsBindGroupShaderType<U> for Twhere
U: ShaderType,
&'a T: for<'a> Into<U>,
impl<T, U> AsBindGroupShaderType<U> for Twhere
U: ShaderType,
&'a T: for<'a> Into<U>,
fn as_bind_group_shader_type(
&self,
_images: &HashMap<Handle<Image>, <Image as RenderAsset>::PreparedAsset, RandomState, Global>
) -> U
fn as_bind_group_shader_type(
&self,
_images: &HashMap<Handle<Image>, <Image as RenderAsset>::PreparedAsset, RandomState, Global>
) -> U
Return the
T [ShaderType] for self. When used in [AsBindGroup]
derives, it is safe to assume that all images in self exist. Read moresourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read morefn 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. Read morefn 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. Read more