summaryrefslogtreecommitdiffstats
path: root/Plugins
diff options
context:
space:
mode:
Diffstat (limited to 'Plugins')
-rw-r--r--Plugins/Core/ban.lua (renamed from Plugins/NewTest/ban.lua)0
-rw-r--r--Plugins/Core/gamemode.lua (renamed from Plugins/NewTest/gamemode.lua)0
-rw-r--r--Plugins/Core/gotoworld.lua (renamed from Plugins/NewTest/gotoworld.lua)0
-rw-r--r--Plugins/Core/help.lua (renamed from Plugins/NewTest/help.lua)0
-rw-r--r--Plugins/Core/item.lua (renamed from Plugins/NewTest/item.lua)0
-rw-r--r--Plugins/Core/kick.lua (renamed from Plugins/NewTest/kick.lua)0
-rw-r--r--Plugins/Core/main.lua (renamed from Plugins/NewTest/main.lua)8
-rw-r--r--Plugins/Core/motd.lua (renamed from Plugins/NewTest/motd.lua)0
-rw-r--r--Plugins/Core/onblockplace.lua (renamed from Plugins/NewTest/onblockplace.lua)0
-rw-r--r--Plugins/Core/onkilled.lua (renamed from Plugins/NewTest/onkilled.lua)0
-rw-r--r--Plugins/Core/onlogin.lua (renamed from Plugins/NewTest/onlogin.lua)0
-rw-r--r--Plugins/Core/onplayerjoin.lua (renamed from Plugins/NewTest/onplayerjoin.lua)0
-rw-r--r--Plugins/Core/playerlist.lua (renamed from Plugins/NewTest/playerlist.lua)0
-rw-r--r--Plugins/Core/pluginlist.lua (renamed from Plugins/NewTest/pluginlist.lua)0
-rw-r--r--Plugins/Core/reload.lua (renamed from Plugins/NewTest/reload.lua)0
-rw-r--r--Plugins/Core/spawn.lua (renamed from Plugins/NewTest/spawn.lua)0
-rw-r--r--Plugins/Core/teleport.lua (renamed from Plugins/NewTest/teleport.lua)0
-rw-r--r--Plugins/Core/time.lua (renamed from Plugins/NewTest/time.lua)0
-rw-r--r--Plugins/Core/top.lua (renamed from Plugins/NewTest/top.lua)0
-rw-r--r--Plugins/Core/unban.lua (renamed from Plugins/NewTest/unban.lua)0
-rw-r--r--Plugins/Core/web_playerlist.lua32
-rw-r--r--Plugins/Core/web_reload.lua15
-rw-r--r--Plugins/Core/web_whitelist.lua79
23 files changed, 133 insertions, 1 deletions
diff --git a/Plugins/NewTest/ban.lua b/Plugins/Core/ban.lua
index a6a662c3c..a6a662c3c 100644
--- a/Plugins/NewTest/ban.lua
+++ b/Plugins/Core/ban.lua
diff --git a/Plugins/NewTest/gamemode.lua b/Plugins/Core/gamemode.lua
index 1e73b46fd..1e73b46fd 100644
--- a/Plugins/NewTest/gamemode.lua
+++ b/Plugins/Core/gamemode.lua
diff --git a/Plugins/NewTest/gotoworld.lua b/Plugins/Core/gotoworld.lua
index d5113b667..d5113b667 100644
--- a/Plugins/NewTest/gotoworld.lua
+++ b/Plugins/Core/gotoworld.lua
diff --git a/Plugins/NewTest/help.lua b/Plugins/Core/help.lua
index 02ef25ebd..02ef25ebd 100644
--- a/Plugins/NewTest/help.lua
+++ b/Plugins/Core/help.lua
diff --git a/Plugins/NewTest/item.lua b/Plugins/Core/item.lua
index 942fa8ce6..942fa8ce6 100644
--- a/Plugins/NewTest/item.lua
+++ b/Plugins/Core/item.lua
diff --git a/Plugins/NewTest/kick.lua b/Plugins/Core/kick.lua
index ff4f8a705..ff4f8a705 100644
--- a/Plugins/NewTest/kick.lua
+++ b/Plugins/Core/kick.lua
diff --git a/Plugins/NewTest/main.lua b/Plugins/Core/main.lua
index 3dfa3f2f1..90f86938f 100644
--- a/Plugins/NewTest/main.lua
+++ b/Plugins/Core/main.lua
@@ -12,7 +12,7 @@ ItemsTable = {}
function Initialize( Plugin )
PLUGIN = Plugin
- Plugin:SetName( "NewCore" )
+ Plugin:SetName( "Core" )
Plugin:SetVersion( 8 )
PluginManager = cRoot:Get():GetPluginManager()
@@ -127,6 +127,12 @@ function Initialize( Plugin )
end
end
+ local WebPlugin = Plugin:CreateWebPlugin()
+ WebPlugin:SetName( Plugin:GetName() )
+ WebPlugin:AddTab( "Whitelist", HandleRequest_WhiteList )
+ WebPlugin:AddTab( "Reload", HandleRequest_Reload )
+ WebPlugin:AddTab( "Playerlist", HandleRequest_PlayerList )
+
LOG( "Initialized " .. Plugin:GetName() .. " v." .. Plugin:GetVersion() )
return true
end \ No newline at end of file
diff --git a/Plugins/NewTest/motd.lua b/Plugins/Core/motd.lua
index 49cdcecad..49cdcecad 100644
--- a/Plugins/NewTest/motd.lua
+++ b/Plugins/Core/motd.lua
diff --git a/Plugins/NewTest/onblockplace.lua b/Plugins/Core/onblockplace.lua
index ba75bf5c2..ba75bf5c2 100644
--- a/Plugins/NewTest/onblockplace.lua
+++ b/Plugins/Core/onblockplace.lua
diff --git a/Plugins/NewTest/onkilled.lua b/Plugins/Core/onkilled.lua
index a8a92f667..a8a92f667 100644
--- a/Plugins/NewTest/onkilled.lua
+++ b/Plugins/Core/onkilled.lua
diff --git a/Plugins/NewTest/onlogin.lua b/Plugins/Core/onlogin.lua
index a706f8024..a706f8024 100644
--- a/Plugins/NewTest/onlogin.lua
+++ b/Plugins/Core/onlogin.lua
diff --git a/Plugins/NewTest/onplayerjoin.lua b/Plugins/Core/onplayerjoin.lua
index e8263f608..e8263f608 100644
--- a/Plugins/NewTest/onplayerjoin.lua
+++ b/Plugins/Core/onplayerjoin.lua
diff --git a/Plugins/NewTest/playerlist.lua b/Plugins/Core/playerlist.lua
index c120f068f..c120f068f 100644
--- a/Plugins/NewTest/playerlist.lua
+++ b/Plugins/Core/playerlist.lua
diff --git a/Plugins/NewTest/pluginlist.lua b/Plugins/Core/pluginlist.lua
index 6cb767868..6cb767868 100644
--- a/Plugins/NewTest/pluginlist.lua
+++ b/Plugins/Core/pluginlist.lua
diff --git a/Plugins/NewTest/reload.lua b/Plugins/Core/reload.lua
index e2b338ba1..e2b338ba1 100644
--- a/Plugins/NewTest/reload.lua
+++ b/Plugins/Core/reload.lua
diff --git a/Plugins/NewTest/spawn.lua b/Plugins/Core/spawn.lua
index 73034d9cf..73034d9cf 100644
--- a/Plugins/NewTest/spawn.lua
+++ b/Plugins/Core/spawn.lua
diff --git a/Plugins/NewTest/teleport.lua b/Plugins/Core/teleport.lua
index 9fffec9a2..9fffec9a2 100644
--- a/Plugins/NewTest/teleport.lua
+++ b/Plugins/Core/teleport.lua
diff --git a/Plugins/NewTest/time.lua b/Plugins/Core/time.lua
index 425d69e6a..425d69e6a 100644
--- a/Plugins/NewTest/time.lua
+++ b/Plugins/Core/time.lua
diff --git a/Plugins/NewTest/top.lua b/Plugins/Core/top.lua
index 0f7a8f95f..0f7a8f95f 100644
--- a/Plugins/NewTest/top.lua
+++ b/Plugins/Core/top.lua
diff --git a/Plugins/NewTest/unban.lua b/Plugins/Core/unban.lua
index 9defbe323..9defbe323 100644
--- a/Plugins/NewTest/unban.lua
+++ b/Plugins/Core/unban.lua
diff --git a/Plugins/Core/web_playerlist.lua b/Plugins/Core/web_playerlist.lua
new file mode 100644
index 000000000..eeb9369c1
--- /dev/null
+++ b/Plugins/Core/web_playerlist.lua
@@ -0,0 +1,32 @@
+function HandleRequest_PlayerList( Request )
+ local World = cRoot:Get():GetWorld()
+ local Content = ""
+
+ if( Request.Params:get("playerlist-kick") ~= "" ) then
+ local KickPlayerName = Request.Params:get("playerlist-kick")
+ local Player = World:GetPlayer( KickPlayerName )
+ if( Player == nil ) then
+ Content = Content .. "<p>Could not find player " .. KickPlayerName .. " !</p>"
+ elseif( Player:GetName() == KickPlayerName ) then
+ Player:GetClientHandle():Kick("You were kicked from the game!")
+ Content = Content .. "<p>" .. KickPlayerName .. " has been kicked from the game!</p>"
+ end
+ end
+
+ Content = Content .. "<p>Connected Players: <b>" .. World:GetNumPlayers() .. "</b></p>"
+ Content = Content .. "<table>"
+
+
+ local PlayerList = World:GetAllPlayers()
+ for i, Player in ipairs( PlayerList ) do
+ Content = Content .. "<tr>"
+ Content = Content .. "<td style='width: 10px;'>" .. i .. ".</td>"
+ Content = Content .. "<td>" .. Player:GetName() .. "</td>"
+ Content = Content .. "<td><a href='?playerlist-kick=" .. Player:GetName() .. "'>Kick</a></td>"
+ Content = Content .. "</tr>"
+ end
+
+ Content = Content .. "</table>"
+ Content = Content .. "<br>"
+ return Content
+end \ No newline at end of file
diff --git a/Plugins/Core/web_reload.lua b/Plugins/Core/web_reload.lua
new file mode 100644
index 000000000..f78297fcb
--- /dev/null
+++ b/Plugins/Core/web_reload.lua
@@ -0,0 +1,15 @@
+function HandleRequest_Reload( Request )
+ local Content = ""
+
+ if( Request.Params:get("reload") ~= "" ) then
+ Content = Content .. "<head><meta http-equiv=\"refresh\" content=\"2;././\"></head>"
+ Content = Content .. "<p>Reloading plugins... This can take a while depending on the plugins you're using.</p>"
+ cRoot:Get():GetPluginManager():ReloadPlugins()
+ else
+ Content = Content .. "<form method=GET>"
+ Content = Content .. "<p>Click the reload button to reload all plugins!<br>"
+ Content = Content .. "<input type=\"submit\" name=\"reload\" value=\"Reload!\"></p>"
+ Content = Content .. "</form>"
+ end
+ return Content
+end \ No newline at end of file
diff --git a/Plugins/Core/web_whitelist.lua b/Plugins/Core/web_whitelist.lua
new file mode 100644
index 000000000..b7a220515
--- /dev/null
+++ b/Plugins/Core/web_whitelist.lua
@@ -0,0 +1,79 @@
+local function HTMLDeleteButton( name )
+ return "<form method=GET><input type=\"hidden\" name=\"whitelist-delete\" value=\"".. name .."\"><input type=\"submit\" value=\"Remove from whitelist\"></form>"
+end
+
+function HandleRequest_WhiteList( Request )
+ local UpdateMessage = ""
+ if( Request.Params:get("whitelist-add") ~= "" ) then
+ local PlayerName = Request.Params:get("whitelist-add")
+
+ if( WhiteListIni:GetValueB("WhiteList", PlayerName, false) == true ) then
+ UpdateMessage = "<b>".. PlayerName.."</b> is already on the whitelist"
+ else
+ WhiteListIni:SetValueB("WhiteList", PlayerName, true )
+ UpdateMessage = "Added <b>" .. PlayerName .. "</b> to whitelist."
+ WhiteListIni:WriteFile()
+ end
+ elseif( Request.Params:get("whitelist-delete") ~= "" ) then
+ local PlayerName = Request.Params:get("whitelist-delete")
+ WhiteListIni:DeleteValue( "WhiteList", PlayerName )
+ UpdateMessage = "Removed <b>" .. PlayerName .. "</b> from whitelist."
+ WhiteListIni:WriteFile()
+ elseif( Request.Params:get("whitelist-reload") ~= "" ) then
+ WhiteListIni:Erase() -- Empty entire loaded ini first, otherwise weird shit goes down
+ WhiteListIni:ReadFile()
+ UpdateMessage = "Loaded from disk"
+ elseif( Request.Params:get("whitelist-setenable") ~= "" ) then
+ local Enabled = Request.Params:get("whitelist-setenable");
+ local CreateNewValue = false;
+ if( WhiteListIni:FindValue( WhiteListIni:FindKey("WhiteListSettings"), "WhiteListOn" ) == cIniFile.noID ) then -- Find out whether the value is in the ini
+ CreateNewValue = true
+ end
+
+ if( Enabled == "1" ) then
+ WhiteListIni:SetValueB("WhiteListSettings", "WhiteListOn", true, CreateNewValue )
+ else
+ WhiteListIni:SetValueB("WhiteListSettings", "WhiteListOn", false, CreateNewValue )
+ end
+ WhiteListIni:WriteFile()
+ end
+
+
+ local Content = ""
+
+ local WhiteListEnabled = WhiteListIni:GetValueB("WhiteListSettings", "WhiteListOn", false)
+ if( WhiteListEnabled == false ) then
+ Content = Content .. "<p>Whitelist is currently disabled! Click <a href='?whitelist-setenable=1'>here</a> to enable.</p>"
+ end
+
+
+ Content = Content .. "<h4>Whitelisted players</h4>"
+ Content = Content .. "<table>"
+ local KeyNum = WhiteListIni:FindKey("WhiteList")
+ local NumValues = WhiteListIni:GetNumValues(KeyNum)
+ if( NumValues > 0 ) then
+ for Num = 0, NumValues-1 do
+ if( WhiteListIni:GetValue(KeyNum, Num, "0") == "1" ) then
+ local PlayerName = WhiteListIni:GetValueName(KeyNum, Num )
+ Content = Content .. "<tr><td>" .. PlayerName .. "</td><td>" .. HTMLDeleteButton( PlayerName ) .. "</td></tr>"
+ end
+ end
+ else
+ Content = Content .. "<tr><td>None</td></tr>"
+ end
+ Content = Content .. "</table>"
+ Content = Content .. "<br><h4>Add player to whitelist</h4>"
+ Content = Content .. "<form method=\"GET\">"
+ Content = Content .. "<input type=\"text\" name=\"whitelist-add\"><input type=\"submit\" value=\"Add player\">"
+ Content = Content .. "</form>"
+ Content = Content .. "<form method=\"GET\">"
+ Content = Content .. "<input type=\"submit\" name=\"whitelist-reload\" value=\"Reload from disk\">"
+ Content = Content .. "</form>"
+ Content = Content .. "<br>"..UpdateMessage
+
+ if( WhiteListEnabled == true ) then
+ Content = Content .. "<br><br><p>Whitelist is currently enabled, click <a href='?whitelist-setenable=0'>here</a> to disable.</p>"
+ end
+
+ return Content
+end \ No newline at end of file