mirror of
https://github.com/etlegacy/wolfadmin.git
synced 2024-11-21 20:01:18 +00:00
Added !spec999 and !cointoss command (refs #62)
This commit is contained in:
parent
e3345faa90
commit
e473bae2f1
5 changed files with 94 additions and 2 deletions
|
@ -81,6 +81,7 @@ auth.PERM_ENABLEVOTE = "enablevote"
|
|||
auth.PERM_CANCELVOTE = "cancelvote"
|
||||
auth.PERM_PASSVOTE = "passvote"
|
||||
|
||||
auth.PERM_COINTOSS = "cointoss"
|
||||
auth.PERM_NEWS = "news"
|
||||
|
||||
auth.PERM_UPTIME = "uptime"
|
||||
|
|
|
@ -22,7 +22,7 @@ local auth = require (wolfa_getLuaPath()..".auth.auth")
|
|||
|
||||
local shrubbot = {}
|
||||
|
||||
-- available shrubflags: lqyFHY
|
||||
-- available shrubflags: lyFHY
|
||||
local flags = {
|
||||
[auth.PERM_ADMINTEST] = "a",
|
||||
[auth.PERM_HELP] = "h",
|
||||
|
@ -72,6 +72,7 @@ local flags = {
|
|||
[auth.PERM_SHUFFLE] = "S",
|
||||
[auth.PERM_SWAP] = "w",
|
||||
|
||||
[auth.PERM_COINTOSS] = "q",
|
||||
[auth.PERM_PAUSE] = "Z",
|
||||
[auth.PERM_NEXTMAP] = "n",
|
||||
[auth.PERM_RESTART] = "r",
|
||||
|
|
44
luamods/wolfadmin/commands/admin/cointoss.lua
Normal file
44
luamods/wolfadmin/commands/admin/cointoss.lua
Normal file
|
@ -0,0 +1,44 @@
|
|||
|
||||
-- WolfAdmin module for Wolfenstein: Enemy Territory servers.
|
||||
-- Copyright (C) 2015-2017 Timo 'Timothy' Smit
|
||||
|
||||
-- This program is free software: you can redistribute it and/or modify
|
||||
-- it under the terms of the GNU General Public License as published by
|
||||
-- the Free Software Foundation, either version 3 of the License, or
|
||||
-- at your option any later version.
|
||||
|
||||
-- This program is distributed in the hope that it will be useful,
|
||||
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
-- GNU General Public License for more details.
|
||||
|
||||
-- You should have received a copy of the GNU General Public License
|
||||
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
local auth = require (wolfa_getLuaPath()..".auth.auth")
|
||||
|
||||
local commands = require (wolfa_getLuaPath()..".commands.commands")
|
||||
|
||||
local players = require (wolfa_getLuaPath()..".players.players")
|
||||
|
||||
function commandCoinToss(clientId, command)
|
||||
math.randomseed(os.time())
|
||||
|
||||
local number = math.random(0, 99)
|
||||
local result
|
||||
|
||||
if number < 49 then
|
||||
result = "heads."
|
||||
elseif number > 50 then
|
||||
result = "tails."
|
||||
elseif number == 49 then
|
||||
result = "the coin falls on its side!"
|
||||
elseif number == 50 then
|
||||
result = "the coin got lost."
|
||||
end
|
||||
|
||||
et.trap_SendConsoleCommand(et.EXEC_APPEND, "cchat -1 \"^dcointoss: ^7"..players.getName(clientId).." ^9tossed a coin..."..result.."\";")
|
||||
|
||||
return true
|
||||
end
|
||||
commands.addadmin("cointoss", commandCoinToss, auth.PERM_COINTOSS, "flips a coin")
|
46
luamods/wolfadmin/commands/admin/spec999.lua
Normal file
46
luamods/wolfadmin/commands/admin/spec999.lua
Normal file
|
@ -0,0 +1,46 @@
|
|||
|
||||
-- WolfAdmin module for Wolfenstein: Enemy Territory servers.
|
||||
-- Copyright (C) 2015-2017 Timo 'Timothy' Smit
|
||||
|
||||
-- This program is free software: you can redistribute it and/or modify
|
||||
-- it under the terms of the GNU General Public License as published by
|
||||
-- the Free Software Foundation, either version 3 of the License, or
|
||||
-- at your option any later version.
|
||||
|
||||
-- This program is distributed in the hope that it will be useful,
|
||||
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
-- GNU General Public License for more details.
|
||||
|
||||
-- You should have received a copy of the GNU General Public License
|
||||
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
local admin = require (wolfa_getLuaPath()..".admin.admin")
|
||||
|
||||
local auth = require (wolfa_getLuaPath()..".auth.auth")
|
||||
|
||||
local commands = require (wolfa_getLuaPath()..".commands.commands")
|
||||
|
||||
local players = require (wolfa_getLuaPath()..".players.players")
|
||||
|
||||
local constants = require (wolfa_getLuaPath()..".util.constants")
|
||||
local settings = require (wolfa_getLuaPath()..".util.settings")
|
||||
|
||||
function commandSpec999(clientId, command)
|
||||
local count = 0
|
||||
|
||||
for playerId = 0, et.trap_Cvar_Get("sv_maxclients") - 1 do
|
||||
if players.isConnected(playerId) then
|
||||
if et.gentity_get(playerId, "ps.ping") > 500 and et.gentity_get(playerId, "ps.ping") <= 999 then
|
||||
admin.putPlayer(playerId, constants.TEAM_SPECTATORS)
|
||||
|
||||
count = count + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
et.trap_SendConsoleCommand(et.EXEC_APPEND, "csay "..clientId.." \"^dspec999: ^9"..count.." players were put to spectators.\";")
|
||||
|
||||
return true
|
||||
end
|
||||
commands.addadmin("spec999", commandSpec999, auth.PERM_SPEC999, "moves 999 pingers to the spectator team", nil, nil, (settings.get("g_standalone") == 0))
|
|
@ -95,7 +95,7 @@ function commands.loadFiles(dir)
|
|||
local files = files.ls("commands/"..dir.."/")
|
||||
|
||||
for _, file in pairs(files) do
|
||||
if string.match(string.lower(file), "^[a-z]+%.lua$") then
|
||||
if string.match(string.lower(file), "^[a-z0-9]+%.lua$") then
|
||||
require (wolfa_getLuaPath()..".commands."..dir.."."..string.sub(file, 1, string.len(file) - 4))
|
||||
|
||||
amount = amount + 1
|
||||
|
|
Loading…
Reference in a new issue