Refactor of commands

This commit is contained in:
Cooldude2606
2019-03-01 20:24:23 +00:00
parent e547f76d6f
commit 62dcfe8694
288 changed files with 5364 additions and 1067 deletions

View File

@@ -0,0 +1,92 @@
--- Adds an inventory search that is preformed on a random player every 15 seconds
-- @module ExpGamingPlayer.inventorySearch@4.0.0
-- @author Cooldude2606
-- @license https://github.com/explosivegaming/scenario/blob/master/LICENSE
-- @alias ThisModule
-- Module Require
local Admin = require('ExpGamingAdmin')
local Role -- ExpGamingCore.Role@^4.0.0
-- Local Variables
-- removed from none admin ranks, no further action
local low_items = {
'loader',
'fast-loader',
'express-loader',
'small-plane',
'player-port',
'coin',
'programmable-speaker',
'logistic-chest-active-provider'
}
-- removed for admin and non-admin ranks, gives warnings to non-admins
local med_items = {
'railgun',
'railgun-dart',
'belt-immunity-equipment'
}
-- temp-ban for any rank, this is a very hard enforcement, admin ranks lose rank
local high_items = {
'electric-energy-interface',
'infinity-chest'
}
-- inventories which are searched
local inventories = {
defines.inventory.player_main,
defines.inventory.player_quickbar,
defines.inventory.player_trash
}
local _root_tree = {low_items=low_items,med_items=med_items,high_items=high_items}
-- Module Define
local module_verbose = false
local ThisModule = {
on_init=function()
if loaded_modules['ExpGamingCore.Role'] then Role = require('ExpGamingCore.Role') end
end
}
-- Function Define
local function take_action(player,item_name,category)
if category == 'low_items' then player_return({'ExpGamingPlayer-inventorySearch.low',item_name},defines.textcolor.med,player)
elseif category == 'med_items' then player_return({'ExpGamingPlayer-inventorySearch.med',item_name},defines.textcolor.high,player) Admin.give_warning(player,'<server>','Found A Banned Item',5)
elseif category == 'high_items' then player_return({'ExpGamingPlayer-inventorySearch.high',item_name},defines.textcolor.crit,player) Admin.temp_ban(player,'<server>','Found A Banned Item')
else return end
end
function ThisModule.search_player(player)
for category,items in pairs(_root_tree) do
if not Role or category ~= 'low_items' and not Role.allowed(player,'admin-items') then
for _,_inventory in pairs(inventories) do
local inventory = player.get_inventory(_inventory)
if inventory then
for _,item in pairs(items) do
local found = inventory.remove(item)
if found > 0 then take_action(player,item,category) end
end
end
end
end
end
end
-- Event Handlers Define
Event.add(defines.events.on_tick,function(event)
if (game.tick%900) == 0 then
local players = game.connected_players
if #players == 0 then return end
local player = players[math.random(#players)]
if Role and Role.allowed(player,'all-items') then return end
ThisModule.search_player(player)
end
end)
-- Module Return
return setmetatable(ThisModule,{
__call=function(self,...) self.search_player(...) end
})

View File

@@ -0,0 +1,4 @@
[ExpGamingPlayer-inventorySearch]
low=Dein Inventar wurde durchsucht und __1__ wurde entfernt.
med=Dein Inventar wurde durchsucht und __1__ wurde entfernt. Dir wird hiermit eine Warnung erteilt! Versuche es nicht erneut!
high=Dein inventar wurde durchsucht und __1__ wurde gefunden, dies ist auf GAR KEINEN Fall erlaubt, dein Inventar wurde zum Spawnpunkt transferiert.

View File

@@ -0,0 +1,4 @@
[ExpGamingPlayer-inventorySearch]
low=Your inventory was searched and __1__ was removed.
med=Your inventory was searched and __1__ was removed, you have been given a warning as a result.
high=Your inventory was searched and __1__ was removed: this is NOT allowed. You have been temp-banned as a result.

View File

@@ -0,0 +1,4 @@
[ExpGamingPlayer-inventorySearch]
low=Your Inventory Was Search And __1__ was removed.
med=Your Inventory Was Search And __1__ was removed, you have been given a warning.
high=Your Inventory Was Search And __1__ was found, this is not allowed AT ALL, your inventory has been moved to spawn.

View File

@@ -0,0 +1,4 @@
[ExpGamingPlayer-inventorySearch]
low=Je inventaris is doorzocht en __1__ is verwijderd.
med=Je inventaris is doorzocht en __1__ is verwijderd, je bent gewaarschuwd.
high=Je inventaris is doorzocht en __1__ is gevonden, dit is ten strengste verboden! Je inventaris is verwijderd.

View File

@@ -0,0 +1,4 @@
[ExpGamingPlayer-inventorySearch]
low=Ditt inventarie blev genomsökt och __1__ togs bort.
med=Ditt inventarie blev genomsökt och __1__ togs bort, du har fått en varning på grund av detta.
high=Ditt inventarie blev genomsökt och __1__ togs bort: Det här är inte tillåtet. Som ett resultat av det har du blivit tillfälligt bannlyst.

View File

@@ -0,0 +1,22 @@
{
"name": "ExpGamingPlayer.inventorySearch",
"version": "4.0.0",
"description": "Adds an inventory search that is proformed on a random player every 15 seconds.",
"location": "FSM_ARCHIVE",
"keywords": [
"Search",
"ExpGaming",
"Player",
"Inventory"
],
"dependencies": {
"ExpGamingLib": "^4.0.0",
"ExpGamingAdmin.TempBan": "^4.0.0",
"ExpGamingAdmin.Warnings": "^4.0.0",
"ExpGamingCore.Role": "?^4.0.0",
"FactorioStdLib.Game": "^0.8.0",
"ExpGamingAdmin": "^4.0.0"
},
"collection": "ExpGamingPlayer@4.0.0",
"submodules": {}
}