diff options
Diffstat (limited to 'Minecraft.World/FloatGoal.cpp')
| -rw-r--r-- | Minecraft.World/FloatGoal.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/Minecraft.World/FloatGoal.cpp b/Minecraft.World/FloatGoal.cpp new file mode 100644 index 00000000..a5fb9255 --- /dev/null +++ b/Minecraft.World/FloatGoal.cpp @@ -0,0 +1,22 @@ +#include "stdafx.h" +#include "net.minecraft.world.entity.h" +#include "net.minecraft.world.entity.ai.control.h" +#include "net.minecraft.world.entity.ai.navigation.h" +#include "FloatGoal.h" + +FloatGoal::FloatGoal(Mob *mob) +{ + this->mob = mob; + setRequiredControlFlags(Control::JumpControlFlag); + mob->getNavigation()->setCanFloat(true); +} + +bool FloatGoal::canUse() +{ + return (mob->isInWater() || mob->isInLava()); +} + +void FloatGoal::tick() +{ + if (mob->getRandom()->nextFloat() < 0.8f) mob->getJumpControl()->jump(); +}
\ No newline at end of file |
