Luanti 5.10.0-dev
 
Loading...
Searching...
No Matches
mapblock.cpp File Reference
#include "mapblock.h"
#include <sstream>
#include "map.h"
#include "light.h"
#include "nodedef.h"
#include "nodemetadata.h"
#include "gamedef.h"
#include "irrlicht_changes/printing.h"
#include "log.h"
#include "nameidmapping.h"
#include "content_mapnode.h"
#include "content_nodemeta.h"
#include "serialization.h"
#include "porting.h"
#include "util/string.h"
#include "util/serialize.h"
#include "util/basic_macros.h"
+ Include dependency graph for mapblock.cpp:

Functions

static void getBlockNodeIdMapping (NameIdMapping *nimap, MapNode *nodes, const NodeDefManager *nodedef)
 
static void correctBlockNodeIds (const NameIdMapping *nimap, MapNode *nodes, IGameDef *gamedef)
 
std::string analyze_block (MapBlock *block)
 

Variables

static const char * modified_reason_strings []
 

Function Documentation

◆ analyze_block()

std::string analyze_block ( MapBlock * block)

References CONTENT_AIR, CONTENT_IGNORE, MapNode::getContent(), MapBlock::getIsUnderground(), MapBlock::getLightingComplete(), MapBlock::getModified(), MapBlock::getNodeNoEx(), MapBlock::getPos(), MapBlock::isGenerated(), itos(), MAP_BLOCKSIZE, MOD_STATE_CLEAN, MOD_STATE_WRITE_AT_UNLOAD, MOD_STATE_WRITE_NEEDED, porting::mt_snprintf(), and p().

Referenced by EmergeThread::finishGen(), and ClientMap::renderMap().

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

◆ correctBlockNodeIds()

static void correctBlockNodeIds ( const NameIdMapping * nimap,
MapNode * nodes,
IGameDef * gamedef )
static

References IGameDef::allocateUnknownNodeId(), CONTENT_IGNORE, errorstream, MapNode::getContent(), NodeDefManager::getId(), NameIdMapping::getName(), IGameDef::ndef(), MapBlock::nodecount, and MapNode::setContent().

Referenced by MapBlock::deSerialize(), and MapBlock::deSerialize_pre22().

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

◆ getBlockNodeIdMapping()

static void getBlockNodeIdMapping ( NameIdMapping * nimap,
MapNode * nodes,
const NodeDefManager * nodedef )
static

References CONTENT_IGNORE, CONTENT_MAX, NodeDefManager::get(), MapNode::getContent(), ContentFeatures::name, MapBlock::nodecount, NameIdMapping::set(), and MapNode::setContent().

Referenced by MapBlock::serialize().

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

Variable Documentation

◆ modified_reason_strings

const char* modified_reason_strings[]
static
Initial value:
= {
"reallocate or initial",
"setIsUnderground",
"setLightingComplete",
"setGenerated",
"setNode",
"setTimestamp",
"reportMetadataChange",
"clearAllObjects",
"Timestamp expired (step)",
"addActiveObjectRaw",
"removeRemovedObjects: remove",
"removeRemovedObjects: deactivate",
"objects cleared due to overflow",
"deactivateFarObjects: static data moved in",
"deactivateFarObjects: static data moved out",
"deactivateFarObjects: static data changed",
"finishBlockMake: expireIsAir",
"MMVManip::blitBackAll",
"unknown",
}

Referenced by MapBlock::getModifiedReasonString().