From 397481c41dc2180edd40a06c9053d5c3df8b417f Mon Sep 17 00:00:00 2001 From: Alexander Pickering Date: Sun, 10 Jan 2016 13:38:40 -0500 Subject: Workon getting servers to register with a master server --- gamemode/server/regtomaster.lua | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 gamemode/server/regtomaster.lua (limited to 'gamemode/server/regtomaster.lua') diff --git a/gamemode/server/regtomaster.lua b/gamemode/server/regtomaster.lua new file mode 100644 index 0000000..9909fc8 --- /dev/null +++ b/gamemode/server/regtomaster.lua @@ -0,0 +1,31 @@ + +local function GetIP() + local hostip = GetConVar( "hostip" ):GetString() + hostip = tonumber( hostip ) + + local ip = {} + ip[ 1 ] = bit.rshift( bit.band( hostip, 0xFF000000 ), 24 ) + ip[ 2 ] = bit.rshift( bit.band( hostip, 0x00FF0000 ), 16 ) + ip[ 3 ] = bit.rshift( bit.band( hostip, 0x0000FF00 ), 8 ) + ip[ 4 ] = bit.band( hostip, 0x000000FF ) + + return table.concat( ip, "." ) +end + +function GM:AddToMaster() + if(!game.IsDedicated())then + print("Listen or singleplayer, not registering with master server!") + return + end + local data = {} + data["hostname"] = GetHostName() + data["ip"] = "" + GetIP() + ":" + (GetConVar("wss_serverurlport"):GetString() or 27015) + data["online"] = "true" + http.Post(GetConVar("wss_wss_masterserverurl"):GetString(),data) +end + +function GM:RemoveFromMaster() + local data = {} + data["online"] = "false" + http.Post(GAMEMODE.masterurl,data) +end -- cgit v1.2.3-70-g09d2