4jcraft/targets/minecraft/world/entity/animal/Squid.h
2026-04-01 13:27:58 -05:00

54 lines
1.1 KiB
C++

#pragma once
#include "WaterAnimal.h"
#include "java/Class.h"
class Player;
class Entity;
class Level;
class Squid : public WaterAnimal {
public:
eINSTANCEOF GetType() { return eTYPE_SQUID; }
static Entity* create(Level* level) { return new Squid(level); }
void _init();
float xBodyRot, xBodyRotO;
float zBodyRot, zBodyRotO;
float tentacleMovement, oldTentacleMovement;
float tentacleAngle, oldTentacleAngle;
private:
float speed;
float tentacleSpeed;
float rotateSpeed;
float tx, ty, tz;
public:
Squid(Level* level);
protected:
virtual void registerAttributes();
virtual int getAmbientSound();
virtual int getHurtSound();
virtual int getDeathSound();
virtual float getSoundVolume();
virtual int getDeathLoot();
virtual bool makeStepSound();
virtual void dropDeathLoot(bool wasKilledByPlayer, int playerBonusLevel);
public:
virtual bool isInWater();
virtual void aiStep();
virtual void travel(float xa, float ya);
protected:
virtual void serverAiStep();
public:
virtual bool canSpawn();
};