Files
MinecraftConsoles/Minecraft.World/MinecartSpawner.h

45 lines
972 B
C
Raw Normal View History

#pragma once
#include "Minecart.h"
#include "BaseMobSpawner.h"
class MinecartSpawner : public Minecart
{
public:
eINSTANCEOF GetType() { return eTYPE_MINECART_SPAWNER; };
static Entity *create(Level *level) { return new MinecartSpawner(level); }
private:
BaseMobSpawner *spawner;
class MinecartMobSpawner : public BaseMobSpawner
{
private:
MinecartSpawner *m_parent;
public:
MinecartMobSpawner(MinecartSpawner *parent);
void broadcastEvent(int id);
Level *getLevel();
int getX();
int getY();
int getZ();
};
public:
MinecartSpawner(Level *level);
MinecartSpawner(Level *level, double x, double y, double z);
virtual ~MinecartSpawner();
virtual int getType();
virtual Tile *getDefaultDisplayTile();
protected:
virtual void readAdditionalSaveData(CompoundTag *tag);
virtual void addAdditonalSaveData(CompoundTag *tag);
public:
virtual void handleEntityEvent(byte eventId);
virtual void tick();
virtual BaseMobSpawner *getSpawner();
};