pub struct CycleCompletedEvent {
pub anim_entity: Entity,
pub target: AnimTargetKind,
}Expand description
Event raised when an animation completed a single cycle.
This event is raised when a Tweenable animation completed a single
cycle. In case the animation direction changes each cycle
(RepeatStrategy::MirroredRepeat), a cycle corresponds to a single
progress from one endpoint value of the lens to the other, whatever the
direction. Therefore a complete loop start -> end -> start counts as 2
cycles and raises 2 events (one when reaching the end value, one when
reaching back the start value).
§Note
The semantic is different from TweenState::Completed, which indicates
that the tweenable has finished stepping and do not need to be updated
anymore, a state which is never reached for looping animation. Here the
CycleCompletedEvent instead marks the end of a single cycle.
Fields§
§anim_entity: EntityThe entity owning the tweenable animation which completed.
This is the entity owning the TweenAnim component that the tweenable
which completed is part of.
target: AnimTargetKindThe target the tweenable which completed and the TweenAnim it’s
part of are mutating. Note that an actual AnimTarget component might
not be spawned in the ECS world, if the target is a component on the
same entity as the one owning the TweenAnim (“implicit component
targetting”). But this field is always equal to the valid value that
would otherwise exist as component.
Trait Implementations§
Source§impl Clone for CycleCompletedEvent
impl Clone for CycleCompletedEvent
Source§fn clone(&self) -> CycleCompletedEvent
fn clone(&self) -> CycleCompletedEvent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl EntityEvent for CycleCompletedEvent
impl EntityEvent for CycleCompletedEvent
Source§fn event_target(&self) -> Entity
fn event_target(&self) -> Entity
Entity “target” of this EntityEvent. When triggered, this will run observers that watch for this specific entity.Source§fn event_target_mut(&mut self) -> &mut Entity
fn event_target_mut(&mut self) -> &mut Entity
Entity “target” of this EntityEvent. When triggered, this will run observers that watch for this specific entity. Read moreSource§impl Event for CycleCompletedEvent
impl Event for CycleCompletedEvent
Source§type Trigger<'a> = EntityTrigger
type Trigger<'a> = EntityTrigger
Trigger for more info.impl Copy for CycleCompletedEvent
impl Message for CycleCompletedEvent
Auto Trait Implementations§
impl Freeze for CycleCompletedEvent
impl RefUnwindSafe for CycleCompletedEvent
impl Send for CycleCompletedEvent
impl Sync for CycleCompletedEvent
impl Unpin for CycleCompletedEvent
impl UnwindSafe for CycleCompletedEvent
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
T ShaderType for self. When used in AsBindGroup
derives, it is safe to assume that all images in self exist.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,
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>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn 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>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which 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)
&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)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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