remove content_* things from map.cpp
[oweals/minetest.git] / src / map.cpp
index 5e2fd558c2756704c7ba3f9c8dd45a026032d95b..32675f08d96523c5b2f640a2912ffcb0279a79ca 100644 (file)
@@ -890,7 +890,7 @@ void Map::updateLighting(core::map<v3s16, MapBlock*> & a_blocks,
 /*
 */
 void Map::addNodeAndUpdate(v3s16 p, MapNode n,
-               core::map<v3s16, MapBlock*> &modified_blocks)
+               core::map<v3s16, MapBlock*> &modified_blocks, std::string &player_name)
 {
        /*PrintInfo(m_dout);
        m_dout<<DTIME<<"Map::addNodeAndUpdate(): p=("
@@ -1014,6 +1014,7 @@ void Map::addNodeAndUpdate(v3s16 p, MapNode n,
        if(meta_proto)
        {
                NodeMetadata *meta = meta_proto->clone();
+               meta->setOwner(player_name);
                setNodeMetadata(p, meta);
        }
 
@@ -1290,7 +1291,8 @@ bool Map::addNodeWithEvent(v3s16 p, MapNode n)
        bool succeeded = true;
        try{
                core::map<v3s16, MapBlock*> modified_blocks;
-               addNodeAndUpdate(p, n, modified_blocks);
+               std::string st = std::string("");
+               addNodeAndUpdate(p, n, modified_blocks, st);
 
                // Copy modified_blocks to event
                for(core::map<v3s16, MapBlock*>::Iterator
@@ -1408,6 +1410,7 @@ void Map::timerUpdate(float dtime, float unload_timeout,
 
        core::map<v2s16, MapSector*>::Iterator si;
 
+       beginSave();
        si = m_sectors.getIterator();
        for(; si.atEnd() == false; si++)
        {
@@ -1418,7 +1421,6 @@ void Map::timerUpdate(float dtime, float unload_timeout,
                core::list<MapBlock*> blocks;
                sector->getBlocks(blocks);
                
-               beginSave();
                for(core::list<MapBlock*>::Iterator i = blocks.begin();
                                i != blocks.end(); i++)
                {
@@ -1451,13 +1453,13 @@ void Map::timerUpdate(float dtime, float unload_timeout,
                                all_blocks_deleted = false;
                        }
                }
-               endSave();
 
                if(all_blocks_deleted)
                {
                        sector_deletion_queue.push_back(si.getNode()->getKey());
                }
        }
+       endSave();
        
        // Finally delete the empty sectors
        deleteSectors(sector_deletion_queue);
@@ -3397,6 +3399,9 @@ void ServerMap::loadBlock(std::string sectordir, std::string blockfile, MapSecto
                if(version < SER_FMT_VER_HIGHEST || save_after_load)
                {
                        saveBlock(block);
+                       
+                       // Should be in database now, so delete the old file
+                       fs::RecursiveDelete(fullpath);
                }
                
                // We just loaded it from the disk, so it's up-to-date.