]> git.lizzy.rs Git - minetest.git/blobdiff - src/server.h
Remove no virtual dtor warnings, make MapgenParams contain actual NoiseParams
[minetest.git] / src / server.h
index 813dc9828dc6fc4d67e9427dde21e9b6a8e166eb..dcd007d23f3e19a1f2993bd74dec472c28afed32 100644 (file)
@@ -28,6 +28,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include "map.h"
 #include "inventory.h"
 #include "ban.h"
+#include "hud.h"
 #include "gamedef.h"
 #include "serialization.h" // For SER_FMT_VER_INVALID
 #include "mods.h"
@@ -51,6 +52,7 @@ class EventManager;
 class PlayerSAO;
 class IRollbackManager;
 class EmergeManager;
+//struct HudElement;
 
 class ServerError : public std::exception
 {
@@ -454,7 +456,7 @@ class Server : public con::PeerHandler, public MapEventReceiver,
        }
 
        // Envlock and conlock should be locked when calling this
-       void notifyPlayer(const char *name, const std::wstring msg);
+       void notifyPlayer(const char *name, const std::wstring msg, const bool prepend);
        void notifyPlayers(const std::wstring msg);
        void spawnParticle(const char *playername,
                v3f pos, v3f velocity, v3f acceleration,
@@ -485,7 +487,6 @@ class Server : public con::PeerHandler, public MapEventReceiver,
        void deleteParticleSpawner(const char *playername, u32 id);
        void deleteParticleSpawnerAll(u32 id);
 
-
        void queueBlockEmerge(v3s16 blockpos, bool allow_generate);
 
        // Creates or resets inventory
@@ -497,11 +498,9 @@ class Server : public con::PeerHandler, public MapEventReceiver,
        // Envlock should be locked when using the rollback manager
        IRollbackManager *getRollbackManager(){ return m_rollback; }
 
-       //TODO:  determine what should be locked when accessing the emerge manager
+       //TODO: determine what (if anything) should be locked to access EmergeManager
        EmergeManager *getEmergeManager(){ return m_emerge; }
 
-       BiomeDefManager *getBiomeDef(){ return m_biomedef; }
-
        // actions: time-reversed list
        // Return value: success/failure
        bool rollbackRevertActions(const std::list<RollbackAction> &actions,
@@ -537,6 +536,12 @@ class Server : public con::PeerHandler, public MapEventReceiver,
        }
 
        bool showFormspec(const char *name, const std::string &formspec, const std::string &formname);
+       
+       u32 hudAdd(Player *player, HudElement *element);
+       bool hudRemove(Player *player, u32 id);
+       bool hudChange(Player *player, u32 id, HudElementStat stat, void *value);
+       bool hudSetFlags(Player *player, u32 flags, u32 mask);
+       
 private:
 
        // con::PeerHandler implementation.
@@ -556,7 +561,7 @@ class Server : public con::PeerHandler, public MapEventReceiver,
        static void SendDeathscreen(con::Connection &con, u16 peer_id,
                        bool set_camera_point_target, v3f camera_point_target);
        static void SendItemDef(con::Connection &con, u16 peer_id,
-                       IItemDefManager *itemdef);
+                       IItemDefManager *itemdef, u16 protocol_version);
        static void SendNodeDef(con::Connection &con, u16 peer_id,
                        INodeDefManager *nodedef, u16 protocol_version);
 
@@ -576,6 +581,11 @@ class Server : public con::PeerHandler, public MapEventReceiver,
        void SendPlayerPrivileges(u16 peer_id);
        void SendPlayerInventoryFormspec(u16 peer_id);
        void SendShowFormspecMessage(u16 peer_id, const std::string formspec, const std::string formname);
+       void SendHUDAdd(u16 peer_id, u32 id, HudElement *form);
+       void SendHUDRemove(u16 peer_id, u32 id);
+       void SendHUDChange(u16 peer_id, u32 id, HudElementStat stat, void *value);
+       void SendHUDSetFlags(u16 peer_id, u32 flags, u32 mask);
+       
        /*
                Send a node removal/addition event to all clients except ignore_id.
                Additionally, if far_players!=NULL, players further away than
@@ -734,9 +744,6 @@ class Server : public con::PeerHandler, public MapEventReceiver,
        // Emerge manager
        EmergeManager *m_emerge;
 
-       // Biome Definition Manager
-       BiomeDefManager *m_biomedef;
-
        // Scripting
        // Envlock and conlock should be locked when using Lua
        lua_State *m_lua;