Files
MinecraftConsoles/Minecraft.World/OcelotSitOnTileGoal.h
2026-03-01 12:16:08 +08:00

37 lines
606 B
C++

#pragma once
#include "Goal.h"
class Ozelot;
class OcelotSitOnTileGoal : public Goal
{
private:
static const int GIVE_UP_TICKS;
static const int SIT_TICKS;
static const int SEARCH_RANGE;
static const double SIT_CHANCE;
private:
Ozelot *ocelot; // Owner of this goal
float speed;
int _tick;
int tryTicks;
int maxTicks;
int tileX;
int tileY;
int tileZ;
public:
OcelotSitOnTileGoal(Ozelot *ocelot, float speed);
bool canUse();
bool canContinueToUse();
void start();
void stop();
void tick();
private:
bool findNearestTile();
bool isValidTarget(Level *level, int x, int y, int z);
};