16class SwimWithEntityGoal :
public ::Goal {
19 enum class EntityGoals :
int {
21 MatchEntityDirection = 1,
27 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
28 ::ll::TypedStorage<8, 40, ::TempEPtr<::Actor>> mFollowing;
29 ::ll::TypedStorage<4, 4, int> mIntervalRefreshTicks;
30 ::ll::TypedStorage<4, 4, int> mIntervalTicks;
31 ::ll::TypedStorage<4, 4, float> mChanceToStop;
32 ::ll::TypedStorage<4, 4, float> mSuccessRate;
33 ::ll::TypedStorage<4, 4, float> mCatchUpThreshold;
34 ::ll::TypedStorage<4, 4, float> mMatchDirectionThreshold;
35 ::ll::TypedStorage<4, 4, float> mCatchUpMultiplier;
36 ::ll::TypedStorage<4, 4, float> mSpeedMultiplier;
37 ::ll::TypedStorage<4, 4, float> mSearchRange;
38 ::ll::TypedStorage<4, 4, float> mStopDistance;
39 ::ll::TypedStorage<4, 4, ::SwimWithEntityGoal::EntityGoals> mCurrentGoal;
40 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mTargetTypes;
45 SwimWithEntityGoal& operator=(SwimWithEntityGoal
const&);
46 SwimWithEntityGoal(SwimWithEntityGoal
const&);
52 virtual bool canUse() ;
54 virtual bool canContinueToUse() ;
56 virtual bool canBeInterrupted() ;
58 virtual void start() ;
64 virtual void appendDebugInfo(::std::string& str)
const ;
66 virtual ~SwimWithEntityGoal() =
default;
72 MCAPI
bool _setWantedMob();
80 MCAPI
bool $canContinueToUse();
82 MCFOLD
bool $canBeInterrupted();
90 MCAPI
void $appendDebugInfo(::std::string& str)
const;