mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-30 20:41:41 +09:00
Fixed Alot Of Stuff For Info Window
This commit is contained in:
@@ -34,6 +34,10 @@ Example: defines.input_action.drop_item -> 'drop_item'
|
|||||||
http://lua-api.factorio.com/latest/defines.html#defines.input_action
|
http://lua-api.factorio.com/latest/defines.html#defines.input_action
|
||||||
--]]
|
--]]
|
||||||
|
|
||||||
|
Sync.add_to_gui(function(player,frame)
|
||||||
|
return 'You have been given the rank '..Ranking.get_rank(player).name..' from our Discord'
|
||||||
|
end)
|
||||||
|
|
||||||
-- see ExpCore/ranks.lua for examples - you add your own and edit pre-made ones here.
|
-- see ExpCore/ranks.lua for examples - you add your own and edit pre-made ones here.
|
||||||
|
|
||||||
local groups = Ranking._groups(true)
|
local groups = Ranking._groups(true)
|
||||||
|
|||||||
@@ -31,6 +31,15 @@ function center.get_flow(player)
|
|||||||
return player.gui.center.exp_center or player.gui.center.add{name='exp_center',type='flow'}
|
return player.gui.center.exp_center or player.gui.center.add{name='exp_center',type='flow'}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- used to open any center gui
|
||||||
|
function center.open(player,center)
|
||||||
|
local player = Game.get_player(player)
|
||||||
|
Gui._get_data('center')[center].open{
|
||||||
|
element={name=center},
|
||||||
|
player_index=player.index
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
-- used to clear the center frame of the player, used mainly in script
|
-- used to clear the center frame of the player, used mainly in script
|
||||||
function center.clear(player)
|
function center.clear(player)
|
||||||
local player = Game.get_player(player)
|
local player = Game.get_player(player)
|
||||||
|
|||||||
@@ -18,8 +18,9 @@ Pass a table with the names of the objects you want and it will be return in tha
|
|||||||
local StdExpCoreLib = {}
|
local StdExpCoreLib = {}
|
||||||
|
|
||||||
require '/commands'
|
require '/commands'
|
||||||
StdExpCoreLib.Server = require '/server'
|
|
||||||
StdExpCoreLib.Ranking = require '/ranking'
|
StdExpCoreLib.Ranking = require '/ranking'
|
||||||
|
StdExpCoreLib.Server = require '/server'
|
||||||
|
StdExpCoreLib.Sync = require '/sync'
|
||||||
StdExpCoreLib.Gui = require '/gui'
|
StdExpCoreLib.Gui = require '/gui'
|
||||||
StdExpCoreLib.Gui:_load_parts{
|
StdExpCoreLib.Gui:_load_parts{
|
||||||
'inputs',
|
'inputs',
|
||||||
@@ -28,7 +29,6 @@ StdExpCoreLib.Gui:_load_parts{
|
|||||||
'left',
|
'left',
|
||||||
'popup'
|
'popup'
|
||||||
}
|
}
|
||||||
StdExpCoreLib.Sync = require '/sync'
|
|
||||||
|
|
||||||
return function(rtn)
|
return function(rtn)
|
||||||
local _return = {}
|
local _return = {}
|
||||||
|
|||||||
@@ -252,29 +252,42 @@ function Sync._load()
|
|||||||
caption='Server Info',
|
caption='Server Info',
|
||||||
tooltip='Basic info about the current server',
|
tooltip='Basic info about the current server',
|
||||||
draw=function(self,frame)
|
draw=function(self,frame)
|
||||||
|
frame.caption = ''
|
||||||
local info = Sync.info()
|
local info = Sync.info()
|
||||||
local frame = frame.add{type='flow',direction='vertical'}
|
local frame = frame.add{type='flow',direction='vertical'}
|
||||||
local _flow = frame.add{type='flow'}
|
local _flow = frame.add{type='flow'}
|
||||||
Gui.bar(_flow,200)
|
Gui.bar(_flow,200)
|
||||||
_flow.add{type='label',caption='Welcome To '..info.server_name,style='caption_label'}.style.width = 185
|
_flow.add{
|
||||||
|
type='label',
|
||||||
|
caption='Welcome To '..info.server_name,style='caption_label'
|
||||||
|
}.style.width = 185
|
||||||
Gui.bar(_flow,200)
|
Gui.bar(_flow,200)
|
||||||
if info.description then frame.add{type='label',caption=info.description,style='description_label'} end
|
if info.description then frame.add{
|
||||||
|
type='label',
|
||||||
|
caption=info.description,style='description_label'
|
||||||
|
} end
|
||||||
Gui.bar(frame,600)
|
Gui.bar(frame,600)
|
||||||
|
local frame = frame.add{
|
||||||
|
type='frame',
|
||||||
|
direction='vertical',
|
||||||
|
style='image_frame'
|
||||||
|
}
|
||||||
|
frame.style.width = 600
|
||||||
local text_flow = frame.add{type='flow',direction='vertical'}
|
local text_flow = frame.add{type='flow',direction='vertical'}
|
||||||
local button_flow = frame.add{type='table',column_count=3}
|
local button_flow = frame.add{type='table',column_count=3}
|
||||||
for _,element in pairs(Sync_gui_functions) do
|
for _,element in pairs(Sync_gui_functions) do
|
||||||
local type = table.remove(element,1)
|
local _type = table.remove(element,1)
|
||||||
if type == 'function' then
|
if _type == 'function' then
|
||||||
local success, err = pcall(table.remove(element,1),unpack(element))
|
local success, err = pcall(table.remove(element,1),frame.player_index,frame,unpack(element))
|
||||||
if not success then error(err) else
|
if not success then error(err) else
|
||||||
if is_type(err,'table') then
|
if is_type(err,'table') then
|
||||||
if element.draw then element:draw(button_flow)
|
if element.draw then element:draw(button_flow)
|
||||||
else text_flow.add{type='label',caption=table.to_string(element)} end
|
else text_flow.add{type='label',caption=table.to_string(err)} end
|
||||||
else text_flow.add{type='label',caption=tostring(element)} end
|
else text_flow.add{type='label',caption=tostring(err)} end
|
||||||
end
|
end
|
||||||
elseif type == 'gui' then element:draw(button_flow)
|
elseif _type == 'gui' then element:draw(button_flow)
|
||||||
elseif type == 'string' then text_flow.add{type='label',caption=tostring(element)}
|
elseif _type == 'string' then text_flow.add{type='label',caption=tostring(element)}
|
||||||
elseif type == 'table' then text_flow.add{type='label',caption=table.to_string(element)} end
|
elseif _type == 'table' then text_flow.add{type='label',caption=table.to_string(element)} end
|
||||||
end
|
end
|
||||||
end}
|
end}
|
||||||
end
|
end
|
||||||
@@ -282,16 +295,7 @@ end
|
|||||||
Event.register(defines.events.on_player_joined_game,function(event)
|
Event.register(defines.events.on_player_joined_game,function(event)
|
||||||
local player = Game.get_player(event)
|
local player = Game.get_player(event)
|
||||||
if not player.admin and player.online_time < 60 then
|
if not player.admin and player.online_time < 60 then
|
||||||
script.raise_event(defines.events.on_gui_click,{
|
Gui.center.open(player,'server-info')
|
||||||
name=defines.events.on_gui_click,
|
|
||||||
tick=event.tick,
|
|
||||||
element=mod_gui.get_button_flow(player)['server-info'],
|
|
||||||
player_index=player.index,
|
|
||||||
button=defines.mouse_button_type.left,
|
|
||||||
alt=false,
|
|
||||||
control=false,
|
|
||||||
shift=false
|
|
||||||
})
|
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user