mirror of
https://github.com/ComfyFactory/ComfyFactorio.git
synced 2025-01-22 03:38:48 +02:00
64 lines
2.2 KiB
Lua
64 lines
2.2 KiB
Lua
local Event = require 'utils.event'
|
|
local Session = require 'utils.datastore.session_data'
|
|
local Commands = require 'utils.commands'
|
|
|
|
|
|
Commands.new('trust', 'Promotes a player to trusted!')
|
|
:require_admin()
|
|
:add_parameter('player', false, 'player')
|
|
:callback(function (player, target_player)
|
|
local trusted = Session.get_trusted_table()
|
|
|
|
if target_player then
|
|
if trusted[target_player.name] then
|
|
game.print(target_player.name .. ' is already trusted!')
|
|
return false
|
|
end
|
|
trusted[target_player.name] = true
|
|
game.print(target_player.name .. ' is now a trusted player.', { r = 0.22, g = 0.99, b = 0.99 })
|
|
|
|
for _, a in pairs(game.connected_players) do
|
|
if a.admin and a.name ~= player.name then
|
|
a.print('[ADMIN]: ' .. player.name .. ' trusted ' .. target_player.name, { r = 1, g = 0.5, b = 0.1 })
|
|
end
|
|
end
|
|
end
|
|
end)
|
|
|
|
Commands.new('untrust', 'Demotes a player from trusted!')
|
|
:require_admin()
|
|
:add_parameter('player', false, 'player')
|
|
:callback(function (player, target_player)
|
|
local trusted = Session.get_trusted_table()
|
|
|
|
if target_player then
|
|
if trusted[target_player.name] == false then
|
|
game.print(target_player.name .. ' is already untrusted!')
|
|
return false
|
|
end
|
|
trusted[target_player.name] = false
|
|
game.print(target_player.name .. ' is now untrusted.', { r = 0.22, g = 0.99, b = 0.99 })
|
|
|
|
for _, a in pairs(game.connected_players) do
|
|
if a.admin and a.name ~= player.name then
|
|
a.print('[ADMIN]: ' .. player.name .. ' untrusted ' .. target_player.name, { r = 1, g = 0.5, b = 0.1 })
|
|
end
|
|
end
|
|
end
|
|
end)
|
|
|
|
Event.add(
|
|
defines.events.on_player_created,
|
|
function (event)
|
|
local player = game.get_player(event.player_index)
|
|
if not (player and player.valid) then
|
|
return
|
|
end
|
|
|
|
local is_single_player = not game.is_multiplayer()
|
|
if is_single_player then
|
|
Session.set_trusted_player(player)
|
|
end
|
|
end
|
|
)
|