mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-27 11:35:22 +09:00
49 lines
1.6 KiB
Lua
49 lines
1.6 KiB
Lua
--[[-- Gui Module - Readme
|
|
- Adds a main gui that contains lots of important information about our server
|
|
@gui Readme
|
|
@alias readme
|
|
]]
|
|
|
|
local Gui = require 'expcore.gui' --- @dep expcore.gui
|
|
local Roles = require 'expcore.roles' --- @dep expcore.roles
|
|
local Event = require 'utils.event' --- @dep utils.event
|
|
local Game = require 'utils.game' --- @dep utils.game
|
|
|
|
--- Main readme container for the center flow
|
|
-- @element readme
|
|
local readme_toggle
|
|
local readme =
|
|
Gui.element(function(event_trigger,parent)
|
|
local container = Gui.container(parent,event_trigger,200)
|
|
return container.parent
|
|
end)
|
|
:on_open(function(player)
|
|
local toggle_button = Gui.get_top_element(player, readme_toggle)
|
|
Gui.toolbar_button_style(toggle_button, true)
|
|
end)
|
|
:on_close(function(player,element)
|
|
local toggle_button = Gui.get_top_element(player, readme_toggle)
|
|
Gui.toolbar_button_style(toggle_button, false)
|
|
Gui.destroy_if_valid(element)
|
|
end)
|
|
|
|
--- Toggle button for the readme gui
|
|
-- @element readme_toggle
|
|
readme_toggle =
|
|
Gui.toolbar_button('virtual-signal/signal-info','Readme',function(player)
|
|
return Roles.player_allowed(player,'gui/readme')
|
|
end)
|
|
:on_click(function(player,element)
|
|
local center = player.gui.center
|
|
if center[readme.name] then
|
|
player.opened = nil
|
|
else
|
|
player.opened = readme(center)
|
|
end
|
|
end)
|
|
|
|
--- When a player joins the game for the first time show this gui
|
|
Event.add(defines.events.on_player_created,function(event)
|
|
local player = Game.get_player_by_index(event.player_index)
|
|
player.opened = readme(player.gui.center)
|
|
end) |