X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fmapsector.h;h=dede364f6fe1f41a046210c36d336abf69ba25f2;hb=3face01a202040e4feff3b0936b4aa89c051c98d;hp=4c1ce86a3ac6077412f58ed7546e42a478539873;hpb=a8e238ed06ee8285ed4459e9deda3117419837f6;p=oweals%2Fminetest.git diff --git a/src/mapsector.h b/src/mapsector.h index 4c1ce86a3..dede364f6 100644 --- a/src/mapsector.h +++ b/src/mapsector.h @@ -17,8 +17,7 @@ with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#ifndef MAPSECTOR_HEADER -#define MAPSECTOR_HEADER +#pragma once #include "irrlichttypes.h" #include "irr_v2d.h" @@ -44,8 +43,6 @@ public: MapSector(Map *parent, v2s16 pos, IGameDef *gamedef); virtual ~MapSector(); - virtual u32 getId() const = 0; - void deleteBlocks(); v2s16 getPos() @@ -63,15 +60,12 @@ public: void getBlocks(MapBlockVect &dest); - bool empty(); - - // Always false at the moment, because sector contains no metadata. - bool differs_from_disk; + bool empty() const { return m_blocks.empty(); } protected: // The pile of MapBlocks - std::map m_blocks; + std::unordered_map m_blocks; Map *m_parent; // Position on parent (in MapBlock widths) @@ -80,8 +74,8 @@ protected: IGameDef *m_gamedef; // Last-used block is cached here for quicker access. - // Be sure to set this to NULL when the cached block is deleted - MapBlock *m_block_cache; + // Be sure to set this to nullptr when the cached block is deleted + MapBlock *m_block_cache = nullptr; s16 m_block_cache_y; /* @@ -90,51 +84,3 @@ protected: MapBlock *getBlockBuffered(s16 y); }; - -class ServerMapSector : public MapSector -{ -public: - ServerMapSector(Map *parent, v2s16 pos, IGameDef *gamedef); - ~ServerMapSector(); - - u32 getId() const - { - return MAPSECTOR_SERVER; - } - - /* - These functions handle metadata. - They do not handle blocks. - */ - - void serialize(std::ostream &os, u8 version); - - static ServerMapSector* deSerialize( - std::istream &is, - Map *parent, - v2s16 p2d, - std::map & sectors, - IGameDef *gamedef - ); - -private: -}; - -#ifndef SERVER -class ClientMapSector : public MapSector -{ -public: - ClientMapSector(Map *parent, v2s16 pos, IGameDef *gamedef); - ~ClientMapSector(); - - u32 getId() const - { - return MAPSECTOR_CLIENT; - } - -private: -}; -#endif - -#endif -