pub(crate) struct MeleeAttackGoal {
speed_modifier: f64,
following_target_even_if_not_seen: bool,
path: Option<Path>,
pathed_target: DVec3,
ticks_until_next_path_recalculation: i32,
ticks_until_next_attack: i32,
last_can_use_check: i64,
}Fields§
§speed_modifier: f64§following_target_even_if_not_seen: bool§path: Option<Path>§pathed_target: DVec3§ticks_until_next_path_recalculation: i32§ticks_until_next_attack: i32§last_can_use_check: i64Implementations§
Source§impl MeleeAttackGoal
impl MeleeAttackGoal
pub(crate) const fn new( speed_modifier: f64, following_target_even_if_not_seen: bool, ) -> Self
fn check_and_perform_attack( &mut self, mob: &dyn PathfinderMob, target: &SharedEntity, )
const fn reset_attack_cooldown(&mut self)
const fn is_time_to_attack(&self) -> bool
fn can_perform_attack( &self, mob: &dyn PathfinderMob, target: &dyn LivingEntity, ) -> bool
pub(crate) const fn get_ticks_until_next_attack(&self) -> i32
const fn attack_interval() -> i32
fn has_no_pathed_target(&self) -> bool
fn should_recalculate_path( &mut self, mob: &dyn PathfinderMob, target: &SharedEntity, ) -> bool
fn recalculate_path(&mut self, mob: &dyn PathfinderMob, target: &SharedEntity)
Trait Implementations§
Source§impl Goal for MeleeAttackGoal
impl Goal for MeleeAttackGoal
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 requires_update_every_tick(&self) -> bool
fn tick(&mut self, mob: &dyn PathfinderMob)
fn is_interruptable(&self) -> bool
fn is_panic_goal(&self) -> bool
Auto Trait Implementations§
impl Freeze for MeleeAttackGoal
impl RefUnwindSafe for MeleeAttackGoal
impl Send for MeleeAttackGoal
impl Sync for MeleeAttackGoal
impl Unpin for MeleeAttackGoal
impl UnsafeUnpin for MeleeAttackGoal
impl UnwindSafe for MeleeAttackGoal
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<>>