pub(crate) struct NearestAttackableTargetGoal {
target_goal: TargetGoalBase,
random_interval: i32,
target: Option<SharedEntity>,
target_conditions: TargetingConditions,
search: TargetSearch,
}Fields§
§target_goal: TargetGoalBase§random_interval: i32§target: Option<SharedEntity>§target_conditions: TargetingConditions§search: TargetSearchImplementations§
Source§impl NearestAttackableTargetGoal
impl NearestAttackableTargetGoal
pub(crate) fn new( must_see: bool, selector: impl Fn(&dyn LivingEntity, &World) -> bool + Send + Sync + 'static, ) -> Self
pub(crate) fn new_with_interval( random_interval: i32, must_see: bool, must_reach: bool, selector: impl Fn(&dyn LivingEntity, &World) -> bool + Send + Sync + 'static, ) -> Self
pub(crate) fn new_for_players( must_see: bool, selector: impl Fn(&dyn LivingEntity, &World) -> bool + Send + Sync + 'static, ) -> Self
pub(crate) fn new_for_players_with_interval( random_interval: i32, must_see: bool, must_reach: bool, selector: impl Fn(&dyn LivingEntity, &World) -> bool + Send + Sync + 'static, ) -> Self
fn new_with_options( random_interval: i32, must_see: bool, must_reach: bool, selector: impl Fn(&dyn LivingEntity, &World) -> bool + Send + Sync + 'static, search: TargetSearch, ) -> Self
fn find_target(&mut self, mob: &dyn PathfinderMob)
pub(crate) fn set_target(&mut self, target: Option<SharedEntity>)
Trait Implementations§
Source§impl Goal for NearestAttackableTargetGoal
impl Goal for NearestAttackableTargetGoal
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 NearestAttackableTargetGoal
impl !UnwindSafe for NearestAttackableTargetGoal
impl Freeze for NearestAttackableTargetGoal
impl Send for NearestAttackableTargetGoal
impl Sync for NearestAttackableTargetGoal
impl Unpin for NearestAttackableTargetGoal
impl UnsafeUnpin for NearestAttackableTargetGoal
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<>>