pub(crate) struct HurtByTargetGoal {
target_goal: TargetGoalBase,
targeting: TargetingConditions,
timestamp: i32,
ignore_damage_types: Vec<DowncastTypeKey>,
alert_same_type: bool,
ignore_alert_types: Vec<DowncastTypeKey>,
}Fields§
§target_goal: TargetGoalBase§targeting: TargetingConditions§timestamp: i32§ignore_damage_types: Vec<DowncastTypeKey>§alert_same_type: bool§ignore_alert_types: Vec<DowncastTypeKey>Implementations§
Source§impl HurtByTargetGoal
impl HurtByTargetGoal
pub(crate) const fn new() -> Self
pub(crate) fn with_ignored_damage_types( self, types: impl IntoIterator<Item = DowncastTypeKey>, ) -> Self
pub(crate) fn set_alert_others( self, except_types: impl IntoIterator<Item = DowncastTypeKey>, ) -> Self
fn alert_others(&self, mob: &dyn PathfinderMob, hurt_by_mob: &SharedEntity)
Trait Implementations§
Source§impl Default for HurtByTargetGoal
impl Default for HurtByTargetGoal
Source§impl Goal for HurtByTargetGoal
impl Goal for HurtByTargetGoal
fn controls(&self) -> GoalControls
fn can_use(&mut self, mob: &dyn PathfinderMob) -> bool
fn can_continue_to_use(&mut self, mob: &dyn PathfinderMob) -> bool
fn start(&mut self, mob: &dyn PathfinderMob)
fn stop(&mut self, mob: &dyn PathfinderMob)
fn is_interruptable(&self) -> bool
fn is_panic_goal(&self) -> bool
fn requires_update_every_tick(&self) -> bool
fn tick(&mut self, _mob: &dyn PathfinderMob)
Auto Trait Implementations§
impl !RefUnwindSafe for HurtByTargetGoal
impl !UnwindSafe for HurtByTargetGoal
impl Freeze for HurtByTargetGoal
impl Send for HurtByTargetGoal
impl Sync for HurtByTargetGoal
impl Unpin for HurtByTargetGoal
impl UnsafeUnpin for HurtByTargetGoal
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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 moreWraps this value in an
Arc<SyncMutex<>>