feat: TU19 (Dec 2014) Features & Content (#155)
* try to resolve merge conflict * feat: TU19 (Dec 2014) Features & Content (#32) * December 2014 files * Working release build * Fix compilation issues * Add sound to Windows64Media * Add DLC content and force Tutorial DLC * Revert "Add DLC content and force Tutorial DLC" This reverts commit 97a43994725008e35fceb984d5549df9c8cea470. * Disable broken light packing * Disable breakpoint during DLC texture map load Allows DLC loading but the DLC textures are still broken * Fix post build not working * ... * fix vs2022 build * fix cmake build --------- Co-authored-by: Loki <lokirautio@gmail.com>
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
#pragma once
|
||||
|
||||
#include "WeighedRandom.h"
|
||||
|
||||
class BaseMobSpawner
|
||||
{
|
||||
public:
|
||||
class SpawnData : public WeighedRandomItem
|
||||
{
|
||||
public:
|
||||
CompoundTag *tag;
|
||||
wstring type;
|
||||
|
||||
SpawnData(CompoundTag *base);
|
||||
SpawnData(CompoundTag *tag, wstring type);
|
||||
~SpawnData();
|
||||
|
||||
virtual CompoundTag *save();
|
||||
};
|
||||
|
||||
private:
|
||||
static const int EVENT_SPAWN = 1;
|
||||
|
||||
public:
|
||||
int spawnDelay;
|
||||
|
||||
private:
|
||||
wstring entityId;
|
||||
vector<SpawnData *> *spawnPotentials;
|
||||
SpawnData *nextSpawnData;
|
||||
|
||||
public:
|
||||
double spin, oSpin;
|
||||
|
||||
private:
|
||||
int minSpawnDelay;
|
||||
int maxSpawnDelay;
|
||||
int spawnCount;
|
||||
shared_ptr<Entity> displayEntity;
|
||||
int maxNearbyEntities;
|
||||
int requiredPlayerRange;
|
||||
int spawnRange;
|
||||
|
||||
public:
|
||||
BaseMobSpawner();
|
||||
~BaseMobSpawner();
|
||||
|
||||
virtual wstring getEntityId();
|
||||
virtual void setEntityId(const wstring &entityId);
|
||||
virtual bool isNearPlayer();
|
||||
virtual void tick();
|
||||
virtual shared_ptr<Entity> loadDataAndAddEntity(shared_ptr<Entity> entity);
|
||||
|
||||
private:
|
||||
virtual void delay();
|
||||
|
||||
public:
|
||||
virtual void load(CompoundTag *tag);
|
||||
virtual void save(CompoundTag *tag);
|
||||
virtual shared_ptr<Entity> getDisplayEntity();
|
||||
virtual bool onEventTriggered(int id);
|
||||
virtual SpawnData *getNextSpawnData();
|
||||
virtual void setNextSpawnData(SpawnData *nextSpawnData);
|
||||
|
||||
virtual void broadcastEvent(int id) = 0;
|
||||
virtual Level *getLevel() = 0;
|
||||
virtual int getX() = 0;
|
||||
virtual int getY() = 0;
|
||||
virtual int getZ() = 0;
|
||||
};
|
||||
Reference in New Issue
Block a user