Minetest  5.4.0
Map Class Reference

#include <map.h>

+ Inheritance diagram for Map:
+ Collaboration diagram for Map:

Public Member Functions

 Map (IGameDef *gamedef)
 
virtual ~Map ()
 
 DISABLE_CLASS_COPY (Map)
 
virtual s32 mapType () const
 
virtual void drop ()
 
void addEventReceiver (MapEventReceiver *event_receiver)
 
void removeEventReceiver (MapEventReceiver *event_receiver)
 
void dispatchEvent (const MapEditEvent &event)
 
MapSectorgetSectorNoGenerateNoLock (v2s16 p2d)
 
MapSectorgetSectorNoGenerate (v2s16 p2d)
 
virtual MapSectoremergeSector (v2s16 p)
 
MapBlockgetBlockNoCreate (v3s16 p)
 
MapBlockgetBlockNoCreateNoEx (v3s16 p)
 
virtual MapBlockemergeBlock (v3s16 p, bool create_blank=true)
 
const NodeDefManagergetNodeDefManager ()
 
bool isNodeUnderground (v3s16 p)
 
bool isValidPosition (v3s16 p)
 
void setNode (v3s16 p, MapNode &n)
 
MapNode getNode (v3s16 p, bool *is_valid_position=NULL)
 
void addNodeAndUpdate (v3s16 p, MapNode n, std::map< v3s16, MapBlock * > &modified_blocks, bool remove_metadata=true)
 
void removeNodeAndUpdate (v3s16 p, std::map< v3s16, MapBlock * > &modified_blocks)
 
bool addNodeWithEvent (v3s16 p, MapNode n, bool remove_metadata=true)
 
bool removeNodeWithEvent (v3s16 p)
 
virtual void beginSave ()
 
virtual void endSave ()
 
virtual void save (ModifiedState save_level)
 
virtual bool saveBlock (MapBlock *block)
 
virtual bool deleteBlock (v3s16 blockpos)
 
void timerUpdate (float dtime, float unload_timeout, u32 max_loaded_blocks, std::vector< v3s16 > *unloaded_blocks=NULL)
 
void unloadUnreferencedBlocks (std::vector< v3s16 > *unloaded_blocks=NULL)
 
void deleteSectors (std::vector< v2s16 > &list)
 
virtual void PrintInfo (std::ostream &out)
 
void transformLiquids (std::map< v3s16, MapBlock * > &modified_blocks, ServerEnvironment *env)
 
std::vector< v3s16findNodesWithMetadata (v3s16 p1, v3s16 p2)
 
NodeMetadatagetNodeMetadata (v3s16 p)
 
bool setNodeMetadata (v3s16 p, NodeMetadata *meta)
 Sets metadata for a node. More...
 
void removeNodeMetadata (v3s16 p)
 
NodeTimer getNodeTimer (v3s16 p)
 
void setNodeTimer (const NodeTimer &t)
 
void removeNodeTimer (v3s16 p)
 
void transforming_liquid_add (v3s16 p)
 
bool isBlockOccluded (MapBlock *block, v3s16 cam_pos_nodes)
 

Protected Member Functions

bool determineAdditionalOcclusionCheck (const v3s16 &pos_camera, const core::aabbox3d< s16 > &block_bounds, v3s16 &check)
 
bool isOccluded (const v3s16 &pos_camera, const v3s16 &pos_target, float step, float stepfac, float start_offset, float end_offset, u32 needed_count)
 

Protected Attributes

IGameDefm_gamedef
 
std::set< MapEventReceiver * > m_event_receivers
 
std::map< v2s16, MapSector * > m_sectors
 
MapSectorm_sector_cache = nullptr
 
v2s16 m_sector_cache_p
 
UniqueQueue< v3s16m_transforming_liquid
 
const NodeDefManagerm_nodedef
 

Private Attributes

f32 m_transforming_liquid_loop_count_multiplier = 1.0f
 
u32 m_unprocessed_count = 0
 
u64 m_inc_trending_up_start_time = 0
 
bool m_queue_size_timer_started = false
 

Friends

class LuaVoxelManip
 

Constructor & Destructor Documentation

◆ Map()

Map::Map ( IGameDef gamedef)

◆ ~Map()

Map::~Map ( )
virtual

References m_sectors.

Member Function Documentation

◆ addEventReceiver()

void Map::addEventReceiver ( MapEventReceiver event_receiver)

References m_event_receivers.

Referenced by Server::init().

+ Here is the caller graph for this function:

◆ addNodeAndUpdate()

void Map::addNodeAndUpdate ( v3s16  p,
MapNode  n,
std::map< v3s16, MapBlock * > &  modified_blocks,
bool  remove_metadata = true 
)

References CONTENT_AIR, dir(), g_7dirs, NodeDefManager::get(), MapNode::getContent(), getNode(), ContentFeatures::isLiquid(), LIGHTBANK_DAY, LIGHTBANK_NIGHT, m_gamedef, m_nodedef, m_transforming_liquid, p(), UniqueQueue< Value >::push_back(), removeNodeMetadata(), IRollbackManager::reportAction(), IGameDef::rollback(), MapNode::setLight(), setNode(), RollbackAction::setSetNode(), and voxalgo::update_lighting_nodes().

Referenced by Client::addNode(), addNodeWithEvent(), and removeNodeAndUpdate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ addNodeWithEvent()

bool Map::addNodeWithEvent ( v3s16  p,
MapNode  n,
bool  remove_metadata = true 
)

References addNodeAndUpdate(), dispatchEvent(), MEET_ADDNODE, MEET_SWAPNODE, p(), and MapEditEvent::type.

Referenced by RollbackAction::applyRevert(), ServerEnvironment::setNode(), and ServerEnvironment::swapNode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ beginSave()

virtual void Map::beginSave ( )
inlinevirtual

Reimplemented in ServerMap.

Referenced by timerUpdate().

+ Here is the caller graph for this function:

◆ deleteBlock()

virtual bool Map::deleteBlock ( v3s16  blockpos)
inlinevirtual

Reimplemented in ServerMap.

◆ deleteSectors()

void Map::deleteSectors ( std::vector< v2s16 > &  list)

References m_sector_cache, and m_sectors.

Referenced by timerUpdate().

+ Here is the caller graph for this function:

◆ determineAdditionalOcclusionCheck()

bool Map::determineAdditionalOcclusionCheck ( const v3s16 pos_camera,
const core::aabbox3d< s16 > &  block_bounds,
v3s16 check 
)
protected

References CLOSEST_EDGE.

Referenced by isBlockOccluded().

+ Here is the caller graph for this function:

◆ DISABLE_CLASS_COPY()

Map::DISABLE_CLASS_COPY ( Map  )

◆ dispatchEvent()

void Map::dispatchEvent ( const MapEditEvent event)

◆ drop()

virtual void Map::drop ( )
inlinevirtual

Reimplemented in ClientMap.

Referenced by ServerEnvironment::~ServerEnvironment().

+ Here is the caller graph for this function:

◆ emergeBlock()

virtual MapBlock* Map::emergeBlock ( v3s16  p,
bool  create_blank = true 
)
inlinevirtual

Reimplemented in ServerMap.

References getBlockNoCreateNoEx(), and p().

Referenced by RollbackAction::applyRevert(), findNodesWithMetadata(), getNodeMetadata(), getNodeTimer(), ModApiEnvMod::l_load_area(), setNodeMetadata(), and setNodeTimer().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ emergeSector()

virtual MapSector* Map::emergeSector ( v2s16  p)
inlinevirtual

Reimplemented in ClientMap.

Referenced by Client::handleCommand_BlockData().

+ Here is the caller graph for this function:

◆ endSave()

virtual void Map::endSave ( )
inlinevirtual

Reimplemented in ServerMap.

Referenced by timerUpdate().

+ Here is the caller graph for this function:

◆ findNodesWithMetadata()

std::vector< v3s16 > Map::findNodesWithMetadata ( v3s16  p1,
v3s16  p2 
)

References VoxelArea::contains(), emergeBlock(), NodeMetadataList::getAllKeys(), getBlockNoCreateNoEx(), getNodeBlockPos(), infostream, MapBlock::m_node_metadata, MAP_BLOCKSIZE, p(), PP, sortBoxVerticies(), and verbosestream.

+ Here is the call graph for this function:

◆ getBlockNoCreate()

MapBlock * Map::getBlockNoCreate ( v3s16  p)

References getBlockNoCreateNoEx().

Referenced by setNode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getBlockNoCreateNoEx()

MapBlock * Map::getBlockNoCreateNoEx ( v3s16  p)

References MapSector::getBlockNoCreateNoEx(), and getSectorNoGenerate().

Referenced by Client::addUpdateMeshTask(), Server::AsyncRunStep(), voxalgo::blit_back_with_light(), MMVManip::blitBackAll(), MeshUpdateQueue::cacheBlock(), ServerEnvironment::clearObjects(), ABMHandler::countObjects(), ServerEnvironment::deactivateFarObjects(), ServerMap::deleteBlock(), ServerEnvironment::deleteStaticFromBlock(), emergeBlock(), ServerMap::emergeBlock(), MeshMakeData::fill(), findNodesWithMetadata(), voxalgo::finish_bulk_light_update(), ServerMap::finishBlockMake(), EmergeThread::finishGen(), getBlockNoCreate(), ServerMap::getBlockOrEmerge(), EmergeThread::getBlockOrStartGen(), RemoteClient::GetNextBlocks(), getNode(), getNodeMetadata(), getNodeTimer(), MMVManip::initialEmerge(), voxalgo::is_sunlight_above(), voxalgo::is_sunlight_above_block(), isNodeUnderground(), isValidPosition(), ServerMap::loadBlock(), ReflowScan::lookupBlock(), voxalgo::propagate_block_sunlight(), removeNodeMetadata(), removeNodeTimer(), voxalgo::repair_block_light(), Server::SendBlock(), Server::SendBlocks(), setNodeMetadata(), setNodeTimer(), ServerEnvironment::setStaticForActiveObjectsInBlock(), voxalgo::spread_light(), ServerEnvironment::step(), Client::step(), transformLiquids(), voxalgo::unspread_light(), voxalgo::update_block_border_lighting(), and voxalgo::update_lighting_nodes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getNode()

MapNode Map::getNode ( v3s16  p,
bool *  is_valid_position = NULL 
)

References CONTENT_IGNORE, getBlockNoCreateNoEx(), getNodeBlockPos(), MapBlock::getNodeNoCheck(), MAP_BLOCKSIZE, and p().

Referenced by RollbackNode::RollbackNode(), SmokePuffCSO::SmokePuffCSO(), addNodeAndUpdate(), ABMHandler::apply(), RollbackAction::applyRevert(), Pathfinder::calcCost(), collisionMoveSimple(), Environment::continueRaycast(), Client::CSMGetNode(), Server::findSpawnPos(), ServerEnvironment::findSunlight(), ClientMap::getBackgroundBrightness(), getNeighborConnectingFace(), MapBlock::getNodeParent(), Pathfinder::getPath(), LocalPlayer::getSlipFactor(), getVisibleBrightness(), LocalPlayer::handleAutojump(), Server::handleCommand_Interact(), Game::handleDigging(), Game::handlePointingAtNode(), GridNodeContainer::initNode(), voxalgo::is_light_locally_correct(), isOccluded(), ModApiEnvMod::l_find_node_near(), ModApiEnvMod::l_find_nodes_in_area(), ModApiEnvMod::l_find_nodes_in_area_under_air(), Environment::line_of_sight(), LocalPlayer::move(), ScriptApiNode::node_on_receive_fields(), ScriptApiNodemeta::nodemeta_inventory_AllowMove(), ScriptApiNodemeta::nodemeta_inventory_AllowPut(), ScriptApiNodemeta::nodemeta_inventory_AllowTake(), ScriptApiNodemeta::nodemeta_inventory_OnMove(), ScriptApiNodemeta::nodemeta_inventory_OnPut(), ScriptApiNodemeta::nodemeta_inventory_OnTake(), Game::nodePlacement(), LocalPlayer::old_move(), ServerEnvironment::removeNode(), ClientMap::renderPostFx(), ServerEnvironment::setNode(), ClientEnvironment::step(), PlayerSAO::step(), GenericCAO::step(), transformLiquids(), GameUI::update(), Camera::update(), voxalgo::update_lighting_nodes(), ClientMap::updateDrawList(), Particle::updateLight(), GenericCAO::updateLight(), Game::updatePointedThing(), LocalPlayer::updateSneakNode(), Game::updateSound(), ServerMap::updateVManip(), and Pathfinder::walkDownwards().

+ Here is the call graph for this function:

◆ getNodeDefManager()

const NodeDefManager* Map::getNodeDefManager ( )
inline

References m_nodedef.

Referenced by voxalgo::blit_back_with_light(), Environment::continueRaycast(), voxalgo::finish_bulk_light_update(), MapNode::getNeighbors(), voxalgo::repair_block_light(), voxalgo::update_block_border_lighting(), voxalgo::update_lighting_nodes(), and Game::updatePointedThing().

+ Here is the caller graph for this function:

◆ getNodeMetadata()

NodeMetadata * Map::getNodeMetadata ( v3s16  p)

References emergeBlock(), NodeMetadataList::get(), getBlockNoCreateNoEx(), getNodeBlockPos(), infostream, MapBlock::m_node_metadata, MAP_BLOCKSIZE, p(), PP, and warningstream.

Referenced by RollbackNode::RollbackNode(), RollbackAction::applyRevert(), NodeMetadataFormSource::getForm(), ServerInventoryManager::getInventory(), Client::getInventory(), NodeMetaRef::getmeta(), Game::handlePointingAtNode(), ModApiClient::l_get_meta(), NodeMetadataFormSource::resolveText(), and Server::sendMetadataChanged().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getNodeTimer()

NodeTimer Map::getNodeTimer ( v3s16  p)

References NodeTimer::elapsed, emergeBlock(), NodeTimerList::get(), getBlockNoCreateNoEx(), getNodeBlockPos(), infostream, MapBlock::m_node_timers, MAP_BLOCKSIZE, p(), PP, NodeTimer::timeout, and warningstream.

Referenced by NodeTimerRef::l_get_elapsed(), NodeTimerRef::l_get_timeout(), and NodeTimerRef::l_is_started().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSectorNoGenerate()

MapSector * Map::getSectorNoGenerate ( v2s16  p2d)

References getSectorNoGenerateNoLock(), and p().

Referenced by ServerMap::createSector(), ServerMap::deleteBlock(), ClientMap::emergeSector(), and getBlockNoCreateNoEx().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSectorNoGenerateNoLock()

MapSector * Map::getSectorNoGenerateNoLock ( v2s16  p2d)

References m_sector_cache, m_sector_cache_p, m_sectors, and p().

Referenced by getSectorNoGenerate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isBlockOccluded()

bool Map::isBlockOccluded ( MapBlock block,
v3s16  cam_pos_nodes 
)

References BS, determineAdditionalOcclusionCheck(), dir(), MapBlock::getBox(), MapBlock::getPosRelative(), isOccluded(), and MAP_BLOCKSIZE.

Referenced by RemoteClient::GetNextBlocks(), and ClientMap::updateDrawList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isNodeUnderground()

bool Map::isNodeUnderground ( v3s16  p)

References getBlockNoCreateNoEx(), MapBlock::getIsUnderground(), getNodeBlockPos(), and p().

+ Here is the call graph for this function:

◆ isOccluded()

bool Map::isOccluded ( const v3s16 pos_camera,
const v3s16 pos_target,
float  step,
float  stepfac,
float  start_offset,
float  end_offset,
u32  needed_count 
)
protected

References BS, floatToInt(), NodeDefManager::get(), getNode(), intToFloat(), ContentFeatures::light_propagates, and m_nodedef.

Referenced by isBlockOccluded().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isValidPosition()

bool Map::isValidPosition ( v3s16  p)

References getBlockNoCreateNoEx(), getNodeBlockPos(), and p().

Referenced by Client::handleCommand_NodemetaChanged(), and MapBlock::isValidPositionParent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mapType()

virtual s32 Map::mapType ( ) const
inlinevirtual

Reimplemented in ServerMap, and ClientMap.

References MAPTYPE_BASE.

Referenced by timerUpdate().

+ Here is the caller graph for this function:

◆ PrintInfo()

void Map::PrintInfo ( std::ostream &  out)
virtual

Reimplemented in ServerMap, and ClientMap.

Referenced by timerUpdate().

+ Here is the caller graph for this function:

◆ removeEventReceiver()

void Map::removeEventReceiver ( MapEventReceiver event_receiver)

References m_event_receivers.

◆ removeNodeAndUpdate()

void Map::removeNodeAndUpdate ( v3s16  p,
std::map< v3s16, MapBlock * > &  modified_blocks 
)

References addNodeAndUpdate(), CONTENT_AIR, and p().

Referenced by Client::removeNode(), and removeNodeWithEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ removeNodeMetadata()

void Map::removeNodeMetadata ( v3s16  p)

References getBlockNoCreateNoEx(), getNodeBlockPos(), MapBlock::m_node_metadata, MAP_BLOCKSIZE, p(), NodeMetadataList::remove(), and warningstream.

Referenced by addNodeAndUpdate(), RollbackAction::applyRevert(), and NodeMetaRef::clearMeta().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ removeNodeTimer()

void Map::removeNodeTimer ( v3s16  p)

References getBlockNoCreateNoEx(), getNodeBlockPos(), MapBlock::m_node_timers, MAP_BLOCKSIZE, p(), NodeTimerList::remove(), and warningstream.

Referenced by NodeTimerRef::l_stop().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ removeNodeWithEvent()

bool Map::removeNodeWithEvent ( v3s16  p)

References dispatchEvent(), MEET_REMOVENODE, p(), removeNodeAndUpdate(), and MapEditEvent::type.

Referenced by ServerEnvironment::removeNode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ save()

virtual void Map::save ( ModifiedState  save_level)
inlinevirtual

Reimplemented in ServerMap.

References FATAL_ERROR.

Referenced by Server::AsyncRunStep().

+ Here is the caller graph for this function:

◆ saveBlock()

virtual bool Map::saveBlock ( MapBlock block)
inlinevirtual

Reimplemented in ServerMap.

Referenced by timerUpdate().

+ Here is the caller graph for this function:

◆ setNode()

void Map::setNode ( v3s16  p,
MapNode n 
)

References CONTENT_IGNORE, errorstream, NodeDefManager::get(), getBlockNoCreate(), MapNode::getContent(), getNodeBlockPos(), MapBlock::getNodeNoCheck(), m_nodedef, MAP_BLOCKSIZE, ContentFeatures::name, p(), PP, and MapBlock::setNodeNoCheck().

Referenced by addNodeAndUpdate(), transformLiquids(), and voxalgo::update_lighting_nodes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setNodeMetadata()

bool Map::setNodeMetadata ( v3s16  p,
NodeMetadata meta 
)

Sets metadata for a node.

This method sets the metadata for a given node. On success, it returns true and the object pointed to by meta is then managed by the system and should not be deleted by the caller.

In case of failure, the method returns false and the caller is still responsible for deleting the object!

Parameters
pnode coordinates
metapointer to NodeMetadata object
Returns
true on success, false on failure

References emergeBlock(), getBlockNoCreateNoEx(), getNodeBlockPos(), infostream, MapBlock::m_node_metadata, MAP_BLOCKSIZE, p(), PP, NodeMetadataList::set(), and warningstream.

Referenced by RollbackAction::applyRevert(), NodeMetaRef::getmeta(), and Client::handleCommand_NodemetaChanged().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setNodeTimer()

void Map::setNodeTimer ( const NodeTimer t)

References NodeTimer::elapsed, emergeBlock(), getBlockNoCreateNoEx(), getNodeBlockPos(), infostream, MapBlock::m_node_timers, MAP_BLOCKSIZE, p(), NodeTimer::position, PP, NodeTimerList::set(), NodeTimer::timeout, and warningstream.

Referenced by NodeTimerRef::l_set(), and NodeTimerRef::l_start().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ timerUpdate()

void Map::timerUpdate ( float  dtime,
float  unload_timeout,
u32  max_loaded_blocks,
std::vector< v3s16 > *  unloaded_blocks = NULL 
)

References Profiler::add(), beginSave(), TimeOrderedMapBlock::block, MapSector::deleteBlock(), deleteSectors(), endSave(), MapSector::getBlocks(), MapBlock::getModified(), MapBlock::getModifiedReasonString(), MapBlock::getPos(), infostream, m_sectors, mapType(), MAPTYPE_SERVER, MOD_STATE_CLEAN, p(), Profiler::print(), PrintInfo(), MapBlock::refGet(), saveBlock(), TimeOrderedMapBlock::sect, and U32_MAX.

Referenced by Server::AsyncRunStep(), Client::step(), and unloadUnreferencedBlocks().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ transforming_liquid_add()

void Map::transforming_liquid_add ( v3s16  p)

References m_transforming_liquid, p(), and UniqueQueue< Value >::push_back().

+ Here is the call graph for this function:

◆ transformLiquids()

void Map::transformLiquids ( std::map< v3s16, MapBlock * > &  modified_blocks,
ServerEnvironment env 
)

References CONTENT_AIR, CONTENT_IGNORE, ContentFeatures::floodable, UniqueQueue< Value >::front(), g_settings, NodeDefManager::get(), getBlockNoCreateNoEx(), MapNode::getContent(), getNode(), getNodeBlockPos(), Settings::getS32(), ServerEnvironment::getScriptIface(), IRollbackManager::getSuspect(), porting::getTimeMs(), Settings::getU16(), infostream, LIGHTBANK_DAY, LIGHTBANK_NIGHT, liquid_6dirs, ContentFeatures::liquid_alternative_flowing_id, ContentFeatures::liquid_alternative_source_id, LIQUID_FLOW_DOWN_MASK, LIQUID_FLOWING, LIQUID_LEVEL_MASK, LIQUID_LEVEL_MAX, LIQUID_LEVEL_SOURCE, LIQUID_NONE, ContentFeatures::liquid_range, ContentFeatures::liquid_renewable, LIQUID_SOURCE, ContentFeatures::liquid_type, ContentFeatures::liquid_viscosity, m_gamedef, m_inc_trending_up_start_time, m_nodedef, m_queue_size_timer_started, m_transforming_liquid, m_unprocessed_count, NodeNeighbor::n, NEIGHBOR_LOWER, NEIGHBOR_SAME_LEVEL, NEIGHBOR_UPPER, ScriptApiNode::node_on_flood(), NodeNeighbor::p, p(), MapNode::param2, UniqueQueue< Value >::pop_front(), UniqueQueue< Value >::push_back(), IRollbackManager::reportAction(), IGameDef::rollback(), MapNode::setContent(), MapNode::setLight(), setNode(), RollbackAction::setSetNode(), UniqueQueue< Value >::size(), NodeNeighbor::t, voxalgo::update_lighting_nodes(), and WATER_DROP_BOOST.

Referenced by Server::AsyncRunStep().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ unloadUnreferencedBlocks()

void Map::unloadUnreferencedBlocks ( std::vector< v3s16 > *  unloaded_blocks = NULL)

References timerUpdate().

Referenced by ServerEnvironment::clearObjects().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Function Documentation

◆ LuaVoxelManip

friend class LuaVoxelManip
friend

Member Data Documentation

◆ m_event_receivers

std::set<MapEventReceiver*> Map::m_event_receivers
protected

◆ m_gamedef

◆ m_inc_trending_up_start_time

u64 Map::m_inc_trending_up_start_time = 0
private

Referenced by transformLiquids().

◆ m_nodedef

◆ m_queue_size_timer_started

bool Map::m_queue_size_timer_started = false
private

Referenced by transformLiquids().

◆ m_sector_cache

MapSector* Map::m_sector_cache = nullptr
protected

◆ m_sector_cache_p

v2s16 Map::m_sector_cache_p
protected

◆ m_sectors

◆ m_transforming_liquid

◆ m_transforming_liquid_loop_count_multiplier

f32 Map::m_transforming_liquid_loop_count_multiplier = 1.0f
private

◆ m_unprocessed_count

u32 Map::m_unprocessed_count = 0
private

Referenced by transformLiquids().


The documentation for this class was generated from the following files: