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

34 lines
729 B
C++

#pragma once
#include <memory>
#include "Entity.h"
#include "java/Class.h"
#include "minecraft/world/entity/Entity.h"
class DamageSource;
class Level;
class DelayedRelease : public Entity {
public:
virtual eINSTANCEOF GetType() { return eTYPE_DELAYEDRELEASE; }
private:
std::shared_ptr<Entity> toRelease;
int delay;
public:
DelayedRelease(Level* level, std::shared_ptr<Entity> toRelease, int delay);
protected:
virtual bool makeStepSound();
public:
virtual void tick();
virtual bool hurt(DamageSource* source, float damage);
protected:
virtual void defineSynchedData();
virtual void readAdditionalSaveData(CompoundTag* tag);
virtual void addAdditonalSaveData(CompoundTag* tag);
};