Saner block modification flag operation for not saving everything always

This commit is contained in:
Perttu Ahola 2011-10-12 10:53:37 +03:00
parent 3e975d8f28
commit b60b58b627
3 changed files with 11 additions and 6 deletions

View File

@ -441,7 +441,8 @@ void MapBlock::stepObjects(float dtime, bool server, u32 daynight_ratio)
*/
m_objects.step(dtime, server, daynight_ratio);
setChangedFlag();
//setChangedFlag();
raiseModified(MOD_STATE_WRITE_AT_UNLOAD);
}

View File

@ -225,8 +225,10 @@ public:
void setLightingExpired(bool expired)
{
m_lighting_expired = expired;
raiseModified(MOD_STATE_WRITE_NEEDED);
if(expired != m_lighting_expired){
m_lighting_expired = expired;
raiseModified(MOD_STATE_WRITE_NEEDED);
}
}
bool getLightingExpired()
{
@ -239,8 +241,10 @@ public:
}
void setGenerated(bool b)
{
raiseModified(MOD_STATE_WRITE_NEEDED);
m_generated = b;
if(b != m_generated){
raiseModified(MOD_STATE_WRITE_NEEDED);
m_generated = b;
}
}
bool isValid()

View File

@ -897,7 +897,7 @@ void RemoteClient::SendObjectData(
{
block->stepObjects(dtime, true, server->m_env.getDayNightRatio());
stepped_blocks.insert(p, true);
block->setChangedFlag();
//block->setChangedFlag();
}
// Skip block if there are no objects