4 #include "../FunctionRef.h"
5 #include "../Mobs/MonsterTypes.h"
31 virtual void DoExplosionAt(
double a_ExplosionSize,
double a_BlockX,
double a_BlockY,
double a_BlockZ,
bool a_CanCauseFire,
eExplosionSource a_Source,
void * a_SourceData) = 0;
37 virtual void SpawnItemPickups(
const cItems & a_Pickups,
double a_BlockX,
double a_BlockY,
double a_BlockZ,
double a_FlyAwaySpeed = 1.0,
bool IsPlayerCreated =
false) = 0;
40 virtual void SpawnItemPickups(
const cItems & a_Pickups,
double a_BlockX,
double a_BlockY,
double a_BlockZ,
double a_SpeedX,
double a_SpeedY,
double a_SpeedZ,
bool IsPlayerCreated =
false) = 0;
42 virtual UInt32 SpawnItemPickup(
double a_PosX,
double a_PosY,
double a_PosZ,
const cItem & a_Item,
float a_SpeedX = 0.f,
float a_SpeedY = 0.f,
float a_SpeedZ = 0.f,
int a_LifetimeTicks = 6000,
bool a_CanCombine =
true) = 0;
57 virtual void SendBlockTo(
int a_BlockX,
int a_BlockY,
int a_BlockZ,
const cPlayer & a_Player) = 0;
95 virtual int GetHeight(
int a_BlockX,
int a_BlockZ) = 0;
eDimension
Dimension of a world.
eExplosionSource
The source of an explosion.
std::chrono::duration< signed long long int, cTickTime::period > cTickTimeLong
std::chrono::duration< signed int, std::ratio_multiply< std::chrono::milliseconds::period, std::ratio< 50 > >> cTickTime
eMonsterType
Identifies individual monster type.
virtual bool ForEachEntityInBox(const cBoundingBox &a_Box, cEntityCallback a_Callback)=0
Calls the callback for each entity that has a nonempty intersection with the specified boundingbox.
virtual void SetMaxNetherPortalWidth(int a_NewMaxWidth)=0
virtual cBroadcastInterface & GetBroadcastManager()=0
virtual int GetMaxNetherPortalWidth(void) const =0
virtual void WakeUpSimulators(Vector3i a_Block)=0
Wakes up the simulators for the specified block.
virtual void SetMaxNetherPortalHeight(int a_NewMaxHeight)=0
virtual bool IsWeatherWetAt(int a_BlockX, int a_BlockZ)=0
Returns true if it is raining or storming at the specified location.
virtual int GetMinNetherPortalWidth(void) const =0
Returns or sets the minumim or maximum netherportal width.
virtual void SetMinNetherPortalWidth(int a_NewMinWidth)=0
virtual cTickTime GetTimeOfDay(void) const =0
virtual void DoExplosionAt(double a_ExplosionSize, double a_BlockX, double a_BlockY, double a_BlockZ, bool a_CanCauseFire, eExplosionSource a_Source, void *a_SourceData)=0
virtual int GetMinNetherPortalHeight(void) const =0
Returns or sets the minumim or maximum netherportal height.
void SendBlockTo(const Vector3i a_BlockPos, const cPlayer &a_Player)
Sends the block on those coords to the player.
virtual UInt32 SpawnMob(double a_PosX, double a_PosY, double a_PosZ, eMonsterType a_MonsterType, bool a_Baby)=0
Spawns a mob of the specified type.
virtual cTickTimeLong GetWorldAge(void) const =0
virtual int GetMaxNetherPortalHeight(void) const =0
virtual void SetMinNetherPortalHeight(int a_NewMinHeight)=0
virtual UInt32 SpawnExperienceOrb(double a_X, double a_Y, double a_Z, int a_Reward)=0
Spawns an experience orb at the given location with the given reward.
virtual void SetTimeOfDay(cTickTime a_TimeOfDay)=0
virtual ~cWorldInterface()
virtual bool ForEachPlayer(cPlayerListCallback a_Callback)=0
Calls the callback for each player in the list; returns true if all players processed,...
virtual void SpawnItemPickups(const cItems &a_Pickups, double a_BlockX, double a_BlockY, double a_BlockZ, double a_FlyAwaySpeed=1.0, bool IsPlayerCreated=false)=0
Spawns item pickups for each item in the list.
virtual bool IsWeatherWetAtXYZ(Vector3i a_Pos)=0
Returns true if it is raining or storming at the specified location, and the rain reaches the specifi...
virtual void SpawnItemPickups(const cItems &a_Pickups, double a_BlockX, double a_BlockY, double a_BlockZ, double a_SpeedX, double a_SpeedY, double a_SpeedZ, bool IsPlayerCreated=false)=0
Spawns item pickups for each item in the list.
virtual bool DoWithBlockEntityAt(Vector3i a_Position, cBlockEntityCallback a_Callback)=0
Calls the callback for the block entity at the specified coords; returns false if there's no block en...
virtual std::vector< UInt32 > SpawnSplitExperienceOrbs(Vector3d a_Pos, int a_Reward)=0
Spawns experience orbs of the specified total value at the given location.
virtual void SendBlockTo(int a_BlockX, int a_BlockY, int a_BlockZ, const cPlayer &a_Player)=0
Sends the block on those coords to the player.
virtual UInt32 SpawnItemPickup(double a_PosX, double a_PosY, double a_PosZ, const cItem &a_Item, float a_SpeedX=0.f, float a_SpeedY=0.f, float a_SpeedZ=0.f, int a_LifetimeTicks=6000, bool a_CanCombine=true)=0
virtual int GetHeight(int a_BlockX, int a_BlockZ)=0
Returns the world height at the specified coords; waits for the chunk to get loaded / generated.
virtual eDimension GetDimension(void) const =0
Represents two sets of coords, minimum and maximum for each direction.
This class bridges a vector of cItem for safe access via Lua.