4jcraft/Minecraft.World/Entities/Mobs/Squid.h
2026-03-21 16:29:02 -05:00

51 lines
1 KiB
C++

#pragma once
#include "../WaterAnimal.h"
class Player;
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();
};