pub struct Projectile {Show 14 fields
pub hit_solid: Vec<Effect>,
pub hit_entity: Vec<Effect>,
pub timeout: Vec<Effect>,
pub time_left: Duration,
pub init_time: Secs,
pub owner: Option<Uid>,
pub ignore_group: bool,
pub is_sticky: bool,
pub is_point: bool,
pub homing: Option<(Uid, f32)>,
pub pierce_entities: bool,
pub hit_entities: Vec<Uid>,
pub limit_per_ability: bool,
pub override_collider: Option<CapsulePrism>,
}Fields§
§hit_solid: Vec<Effect>§hit_entity: Vec<Effect>§timeout: Vec<Effect>§time_left: DurationTime left until the projectile will despawn
init_time: SecsMax duration of projectile (should be equal to time_left when projectile is created)
owner: Option<Uid>§ignore_group: boolWhether projectile collides with entities in the same group as its owner
is_sticky: boolWhether the projectile is sticky
is_point: boolWhether the projectile should use a point collider
homing: Option<(Uid, f32)>Whether the projectile should home towards a target entity and at what rate (in deg/s)
pierce_entities: boolWhether the projectile should hit and apply its effects to multiple entities
hit_entities: Vec<Uid>Entities that the projectile has hit (only relevant for projectiles that can pierce entities)
limit_per_ability: boolWhether to limit the number of projectiles from from an ability can damage the target in a short duration
override_collider: Option<CapsulePrism>Whether to override the collider used by the projectile for detecting hit entities
Implementations§
Source§impl Projectile
impl Projectile
pub fn is_blockable(&self) -> bool
Trait Implementations§
Source§impl Clone for Projectile
impl Clone for Projectile
Source§fn clone(&self) -> Projectile
fn clone(&self) -> Projectile
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Component for Projectile
impl Component for Projectile
Source§type Storage = DenseVecStorage<Projectile>
type Storage = DenseVecStorage<Projectile>
Associated storage type for this component.
Auto Trait Implementations§
impl Freeze for Projectile
impl !RefUnwindSafe for Projectile
impl Send for Projectile
impl Sync for Projectile
impl Unpin for Projectile
impl !UnwindSafe for Projectile
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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