mirror of
https://github.com/GabsPuNs/Project-Zenith-Main.git
synced 2026-06-04 17:14:42 +00:00
* Remove stdafx.h and some <unordered_set> includes * Update Minecraft Server Defines and remove more unused folders/files * Unbloat stdafx.h from Minecraft.World
33 lines
864 B
C++
33 lines
864 B
C++
#pragma once
|
|
|
|
#include "Mob.h"
|
|
#include "ChunkPos.h"
|
|
|
|
class Player;
|
|
class Level;
|
|
|
|
class MobSpawner
|
|
{
|
|
private:
|
|
static const int MIN_SPAWN_DISTANCE;
|
|
|
|
protected:
|
|
static TilePos getRandomPosWithin(Level *level, int cx, int cz);
|
|
|
|
private:
|
|
#ifdef __PSVITA__
|
|
// AP - See CustomMap.h for an explanation of this
|
|
static CustomMap chunksToPoll;
|
|
#else
|
|
static unordered_map<ChunkPos,bool,ChunkPosKeyHash,ChunkPosKeyEq> chunksToPoll;
|
|
#endif
|
|
|
|
public:
|
|
static const int tick(ServerLevel *level, bool spawnEnemies, bool spawnFriendlies, bool spawnPersistent);
|
|
static bool isSpawnPositionOk(MobCategory *category, Level *level, int x, int y, int z);
|
|
|
|
public:
|
|
static bool attackSleepingPlayers(Level *level, vector<shared_ptr<Player> > *players);
|
|
|
|
static void postProcessSpawnMobs(Level *level, Biome *biome, int xo, int zo, int cellWidth, int cellHeight, Random *random);
|
|
}; |