mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-05-24 03:02:56 +00:00
30 lines
629 B
C++
30 lines
629 B
C++
#pragma once
|
|
|
|
#include <optional>
|
|
|
|
#include "../../Util/Vec3.h"
|
|
#include "Goal.h"
|
|
|
|
class FleeSunGoal : public Goal {
|
|
private:
|
|
PathfinderMob* mob; // Owner of this goal
|
|
double wantedX, wantedY, wantedZ;
|
|
double speedModifier;
|
|
Level* level;
|
|
|
|
public:
|
|
FleeSunGoal(PathfinderMob* mob, double speedModifier);
|
|
|
|
virtual bool canUse();
|
|
virtual bool canContinueToUse();
|
|
virtual void start();
|
|
|
|
private:
|
|
std::optional<Vec3> getHidePos();
|
|
|
|
public:
|
|
// 4J Added override to update ai elements when loading entity from
|
|
// schematics
|
|
virtual void setLevel(Level* level) { this->level = level; }
|
|
};
|