mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-30 20:41:41 +09:00
Bugs Fixed
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
local Buttons = require './buttons'
|
||||
local Gui = require './core'
|
||||
local Roles = require 'expre.roles'
|
||||
local Roles = require 'expcore.roles'
|
||||
local Event = require 'utils.event'
|
||||
local Game = require 'utils.game'
|
||||
|
||||
@@ -12,6 +12,7 @@ function Toolbar.new_button(name)
|
||||
name = name or #Toolbar.buttons+1
|
||||
local button = Buttons.new_button('toolbar/'..name)
|
||||
button:set_authenticator(Roles.player_allowed)
|
||||
Toolbar.add_button(button)
|
||||
return button
|
||||
end
|
||||
|
||||
@@ -28,30 +29,36 @@ function Toolbar.add_button(button)
|
||||
end
|
||||
end
|
||||
|
||||
function Toolbar.draw(player)
|
||||
function Toolbar.update(player)
|
||||
local top = Gui.get_top_element_flow(player)
|
||||
if not top then return end
|
||||
for _,button in pairs(Toolbar.buttons) do
|
||||
local self_button = button:draw_to(player.gui.top)
|
||||
local element
|
||||
if top[button.name] then element = top[button.name]
|
||||
else element = button:draw_to(top) end
|
||||
if button.authenticator(player,button.clean_name or button.name) then
|
||||
self_button.visible = true
|
||||
element.visible = true
|
||||
element.enabled = true
|
||||
else
|
||||
self_button.visible = false
|
||||
element.visible = false
|
||||
element.enabled = false
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Event.add(defines.events.on_player_created,function(event)
|
||||
local player = Game.get_player_by_index(event.player_index)
|
||||
Toolbar.draw(player)
|
||||
Toolbar.update(player)
|
||||
end)
|
||||
|
||||
Event.add(Roles.player_role_assigned,function(event)
|
||||
local player = Game.get_player_by_index(event.player_index)
|
||||
Toolbar.draw(player)
|
||||
Toolbar.update(player)
|
||||
end)
|
||||
|
||||
Event.add(Roles.player_role_unassigned,function(event)
|
||||
local player = Game.get_player_by_index(event.player_index)
|
||||
Toolbar.draw(player)
|
||||
Toolbar.update(player)
|
||||
end)
|
||||
|
||||
return Toolbar
|
||||
Reference in New Issue
Block a user