mirror of
https://github.com/luanti-org/luanti.git
synced 2025-09-30 19:22:14 +00:00
unrelated refactor
This commit is contained in:
parent
db8cd2121c
commit
c413ed298e
5 changed files with 20 additions and 23 deletions
|
@ -775,12 +775,10 @@ void MMVManip::initialEmerge(v3s16 p_min, v3s16 p_max, bool load_if_inexistent)
|
||||||
(p_min*MAP_BLOCKSIZE, (p_max+1)*MAP_BLOCKSIZE-v3s16(1,1,1));
|
(p_min*MAP_BLOCKSIZE, (p_max+1)*MAP_BLOCKSIZE-v3s16(1,1,1));
|
||||||
|
|
||||||
u32 size_MB = block_area_nodes.getVolume() * sizeof(MapNode) / 1000000U;
|
u32 size_MB = block_area_nodes.getVolume() * sizeof(MapNode) / 1000000U;
|
||||||
if(size_MB >= 1)
|
if (size_MB >= 4) {
|
||||||
{
|
infostream << "initialEmerge: area: ";
|
||||||
infostream<<"initialEmerge: area: ";
|
|
||||||
block_area_nodes.print(infostream);
|
block_area_nodes.print(infostream);
|
||||||
infostream<<" ("<<size_MB<<"MB)";
|
infostream << " (" << size_MB << "MB)" << std::endl;
|
||||||
infostream<<std::endl;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
std::map<v3s16, bool> had_blocks;
|
std::map<v3s16, bool> had_blocks;
|
||||||
|
|
|
@ -125,10 +125,20 @@ MapgenParams *MapSettingsManager::makeMapgenParams()
|
||||||
if (mapgen_params)
|
if (mapgen_params)
|
||||||
return mapgen_params;
|
return mapgen_params;
|
||||||
|
|
||||||
|
MapgenParams *params = makeMapgenParamsCopy();
|
||||||
|
if (!params)
|
||||||
|
return nullptr;
|
||||||
|
mapgen_params = params;
|
||||||
|
return params;
|
||||||
|
}
|
||||||
|
|
||||||
|
MapgenParams *MapSettingsManager::makeMapgenParamsCopy() const
|
||||||
|
{
|
||||||
|
// Note: can't return mapgen_params here, because we want a copy.
|
||||||
|
|
||||||
assert(m_map_settings);
|
assert(m_map_settings);
|
||||||
assert(m_defaults);
|
assert(m_defaults);
|
||||||
|
|
||||||
// Now, get the mapgen type so we can create the appropriate MapgenParams
|
|
||||||
std::string mg_name;
|
std::string mg_name;
|
||||||
MapgenType mgtype = getMapSetting("mg_name", &mg_name) ?
|
MapgenType mgtype = getMapSetting("mg_name", &mg_name) ?
|
||||||
Mapgen::getMapgenType(mg_name) : MAPGEN_DEFAULT;
|
Mapgen::getMapgenType(mg_name) : MAPGEN_DEFAULT;
|
||||||
|
@ -151,8 +161,5 @@ MapgenParams *MapSettingsManager::makeMapgenParams()
|
||||||
params->MapgenParams::readParams(m_map_settings.get());
|
params->MapgenParams::readParams(m_map_settings.get());
|
||||||
params->readParams(m_map_settings.get());
|
params->readParams(m_map_settings.get());
|
||||||
|
|
||||||
// Hold onto our params
|
|
||||||
mapgen_params = params;
|
|
||||||
|
|
||||||
return params;
|
return params;
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,7 +52,11 @@ public:
|
||||||
|
|
||||||
bool loadMapMeta();
|
bool loadMapMeta();
|
||||||
bool saveMapMeta();
|
bool saveMapMeta();
|
||||||
|
|
||||||
|
/// @brief Finalizes and creates the mapgen params
|
||||||
MapgenParams *makeMapgenParams();
|
MapgenParams *makeMapgenParams();
|
||||||
|
/// @brief Creates a copy of the mapgen params without making the manager immutable
|
||||||
|
MapgenParams *makeMapgenParamsCopy() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::string m_map_meta_path;
|
std::string m_map_meta_path;
|
||||||
|
|
|
@ -1101,14 +1101,8 @@ void MapgenParams::writeParams(Settings *settings) const
|
||||||
|
|
||||||
s32 MapgenParams::getSpawnRangeMax()
|
s32 MapgenParams::getSpawnRangeMax()
|
||||||
{
|
{
|
||||||
if (!m_mapgen_edges_calculated) {
|
auto [emin, emax] = get_mapgen_edges(mapgen_limit, chunksize);
|
||||||
std::pair<s16, s16> edges = get_mapgen_edges(mapgen_limit, chunksize);
|
return std::min(-emin, emax);
|
||||||
mapgen_edge_min = edges.first;
|
|
||||||
mapgen_edge_max = edges.second;
|
|
||||||
m_mapgen_edges_calculated = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return MYMIN(-mapgen_edge_min, mapgen_edge_max);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -121,18 +121,12 @@ struct MapgenParams {
|
||||||
|
|
||||||
BiomeParams *bparams = nullptr;
|
BiomeParams *bparams = nullptr;
|
||||||
|
|
||||||
s16 mapgen_edge_min = -MAX_MAP_GENERATION_LIMIT;
|
|
||||||
s16 mapgen_edge_max = MAX_MAP_GENERATION_LIMIT;
|
|
||||||
|
|
||||||
virtual void readParams(const Settings *settings);
|
virtual void readParams(const Settings *settings);
|
||||||
virtual void writeParams(Settings *settings) const;
|
virtual void writeParams(Settings *settings) const;
|
||||||
// Default settings for g_settings such as flags
|
// Default settings for g_settings such as flags
|
||||||
virtual void setDefaultSettings(Settings *settings) {};
|
virtual void setDefaultSettings(Settings *settings) {};
|
||||||
|
|
||||||
s32 getSpawnRangeMax();
|
s32 getSpawnRangeMax();
|
||||||
|
|
||||||
private:
|
|
||||||
bool m_mapgen_edges_calculated = false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue