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

40 lines
1.1 KiB
C++

#pragma once
#include "Entity.h"
class FireworksRocketEntity : public Entity {
public:
eINSTANCEOF GetType() { return eTYPE_FIREWORKS_ROCKET; }
static Entity* create(Level* level) {
return new FireworksRocketEntity(level);
}
private:
static const int DATA_ID_FIREWORKS_ITEM = 8;
int life;
int lifetime;
// constructor needed for level loader
public:
FireworksRocketEntity(Level* level);
protected:
virtual void defineSynchedData();
public:
virtual bool shouldRenderAtSqrDistance(double distance);
FireworksRocketEntity(Level* level, double x, double y, double z,
std::shared_ptr<ItemInstance> sourceItem);
virtual void lerpMotion(double xd, double yd, double zd);
virtual void tick();
virtual void handleEntityEvent(uint8_t eventId);
virtual void addAdditonalSaveData(CompoundTag* tag);
virtual void readAdditionalSaveData(CompoundTag* tag);
virtual float getShadowHeightOffs();
virtual float getBrightness(float a);
virtual int getLightColor(float a);
virtual bool isAttackable();
};