Merge pull request #145 from explosivegaming/feature/gui-v5

Gui v5
This commit is contained in:
Cooldude2606
2020-03-21 13:07:12 +00:00
committed by GitHub
135 changed files with 5761 additions and 15918 deletions

View File

@@ -45,7 +45,7 @@ Please report these errors to [the issues page](issues).
## Contributing
All are welcome to make pull requests and issues for this scenario, if you are in any doubt, please ask someone in our [discord]. If you do not know lua and don't feel like learning you can always make a [feature request]. All our docs can be found [here][docs]. Please keep in mind while making code changes:
All are welcome to make pull requests and issues for this scenario, if you are in any doubt, please ask someone in our [discord]. If you do not know lua and don't feel like learning you can always make a [feature request]. To find out what we already have please read our [docs]. Please keep in mind while making code changes:
* New features should have the branch names: `feature/feature-name`
* New features are merged into `dev` after it has been completed, this can be done through a pull request.

View File

@@ -55,5 +55,4 @@ return {
'config.expcore-commands.auth_runtime_disable', -- allows commands to be enabled and disabled during runtime
'config.permission_groups', -- loads some predefined permission groups
'config.roles', -- loads some predefined roles
'expcore.gui.test' -- loads multiple gui defines to test the gui system
}

View File

@@ -22,13 +22,6 @@ local function set_store_uids(player,action)
selected_action_store = action
end
-- common style used by all action buttons
local function tool_button_style(style)
Gui.set_padding_style(style,-1,-1,-1,-1)
style.height = 28
style.width = 28
end
-- auth that will only allow when on player's of lower roles
local function auth_lower_role(player,selected_player_name)
local player_highest = Roles.get_player_highest_role(player)
@@ -56,14 +49,23 @@ local function teleport(from_player,to_player)
return true
end
local function new_button(sprite,tooltip)
return Gui.element{
type = 'sprite-button',
style = 'tool_button',
sprite = sprite,
tooltip = tooltip
}:style{
padding = -1,
height = 28,
width = 28
}
end
--- Teleports the user to the action player
-- @element goto_player
local goto_player =
Gui.new_button()
:set_sprites('utility/export')
:set_tooltip{'player-list.goto-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local goto_player = new_button('utility/export',{'player-list.goto-player'})
:on_click(function(player)
local selected_player_name = get_action_player_name(player)
local selected_player = Game.get_player_from_any(selected_player_name)
if not player.character or not selected_player.character then
@@ -75,12 +77,8 @@ end)
--- Teleports the action player to the user
-- @element bring_player
local bring_player =
Gui.new_button()
:set_sprites('utility/import')
:set_tooltip{'player-list.bring-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local bring_player = new_button('utility/import',{'player-list.bring-player'})
:on_click(function(player)
local selected_player_name = get_action_player_name(player)
local selected_player = Game.get_player_from_any(selected_player_name)
if not player.character or not selected_player.character then
@@ -92,12 +90,8 @@ end)
--- Kills the action player, if there are alive
-- @element kill_player
local kill_player =
Gui.new_button()
:set_sprites('utility/too_far')
:set_tooltip{'player-list.kill-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local kill_player = new_button('utility/too_far',{'player-list.kill-player'})
:on_click(function(player)
local selected_player_name = get_action_player_name(player)
local selected_player = Game.get_player_from_any(selected_player_name)
if selected_player.character then
@@ -109,12 +103,8 @@ end)
--- Reports the action player, requires a reason to be given
-- @element report_player
local report_player =
Gui.new_button()
:set_sprites('utility/spawn_flag')
:set_tooltip{'player-list.report-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local report_player = new_button('utility/spawn_flag',{'player-list.report-player'})
:on_click(function(player)
local selected_player_name = get_action_player_name(player)
if Reports.is_reported(selected_player_name,player.name) then
player.print({'expcom-report.already-reported'},Colors.orange_red)
@@ -133,12 +123,8 @@ end
--- Gives the action player a warning, requires a reason
-- @element warn_player
local warn_player =
Gui.new_button()
:set_sprites('utility/spawn_flag')
:set_tooltip{'player-list.warn-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local warn_player = new_button('utility/spawn_flag',{'player-list.warn-player'})
:on_click(function(player)
Store.set(selected_action_store,player,'command/give-warning')
end)
@@ -151,12 +137,8 @@ end
--- Jails the action player, requires a reason
-- @element jail_player
local jail_player =
Gui.new_button()
:set_sprites('utility/item_editor_icon')
:set_tooltip{'player-list.jail-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local jail_player = new_button('utility/multiplayer_waiting_icon',{'player-list.jail-player'})
:on_click(function(player)
local selected_player_name, selected_player_color = get_action_player_name(player)
if Jail.is_jailed(selected_player_name) then
player.print({'expcom-jail.already-jailed', selected_player_color},Colors.orange_red)
@@ -174,12 +156,8 @@ end
--- Temp bans the action player, requires a reason
-- @element temp_ban_player
local temp_ban_player =
Gui.new_button()
:set_sprites('utility/clock')
:set_tooltip{'player-list.temp-ban-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local temp_ban_player = new_button('utility/warning_white',{'player-list.temp-ban-player'})
:on_click(function(player)
local selected_player_name, selected_player_color = get_action_player_name(player)
if Jail.is_jailed(selected_player_name) then
player.print({'expcom-jail.already-banned', selected_player_color},Colors.orange_red)
@@ -197,12 +175,8 @@ end
--- Kicks the action player, requires a reason
-- @element kick_player
local kick_player =
Gui.new_button()
:set_sprites('utility/warning_icon')
:set_tooltip{'player-list.kick-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local kick_player = new_button('utility/warning_icon',{'player-list.kick-player'})
:on_click(function(player)
Store.set(selected_action_store,player,'command/kick')
end)
@@ -213,12 +187,8 @@ end
--- Bans the action player, requires a reason
-- @element ban_player
local ban_player =
Gui.new_button()
:set_sprites('utility/danger_icon')
:set_tooltip{'player-list.ban-player'}
:set_style('tool_button',tool_button_style)
:on_click(function(player,element)
local ban_player = new_button('utility/danger_icon',{'player-list.ban-player'})
:on_click(function(player)
Store.set(selected_action_store,player,'command/ban')
end)

View File

@@ -61,7 +61,8 @@ Roles.new_role('Administrator','Admin')
:set_flag('instance-respawn')
:set_parent('Moderator')
:allow{
'gui/warp-list/no-limit',
'gui/warp-list/bypass-cooldown',
'gui/warp-list/bypass-proximity',
}
Roles.new_role('Moderator','Mod')
@@ -181,7 +182,9 @@ Roles.new_role('Member','Mem')
:set_custom_color{r=24,g=172,b=188}
:set_parent('Regular')
:allow{
'gui/task-list/add',
'gui/task-list/edit',
'gui/warp-list/add',
'gui/warp-list/edit'
}
@@ -217,7 +220,7 @@ local default = Roles.new_role('Guest','')
'gui/rocket-info',
'gui/science-info',
'gui/task-list',
'gui/warp-list',
'gui/warp-list'
}
--- Jail role

View File

@@ -2,8 +2,12 @@
-- @config Tasks
return {
any_user_can_add_new_task = true, --- @setting any_user_can_add_new_task when false only people with edit permission can make new reports
user_can_edit_own_tasks = true, --- @setting user_can_edit_own_tasks when false only people with edit permission can edit reports
only_admins_can_edit = false, --- @setting only_admins_can_edit true will hide the edit and delete buttons from non (game) admins
edit_tasks_role_permission = 'gui/task-list/edit' --- @setting edit_tasks_role_permission value used with custom permission system
-- Adding tasks
allow_add_task = 'all', --- @setting allow_add_task dictates who is allowed to add new tasks; values: all, admin, expcore.roles, none
expcore_roles_allow_add_task = 'gui/task-list/add', --- @setting expcore_roles_allow_add_task if expcore.roles is used then this is the required permission
-- Editing tasks
allow_edit_task = 'expcore.roles', --- @setting allow_edit_task dictates who is allowed to edit existing tasks; values: all, admin, expcore.roles, none
expcore_roles_allow_edit_task = 'gui/task-list/edit', --- @setting expcore_roles_allow_edit_task if expcore.roles is used then this is the required permission
user_can_edit_own_tasks = true --- @settings if true then the user who made the task can edit it regardless of the allow_edit_task setting
}

View File

@@ -2,24 +2,39 @@
-- @config Warps
return {
recharge_time = 60, --- @setting recharge_time The amount of time in seconds that the player must wait between warps, acts as a balance
update_smoothing = 10, --- @setting update_smoothing Higher is better, the amount of smoothing applied to recharge timer and other gui updates, max is 60
minimum_distance = 100, --- @setting minimum_distance The minimum distance that must be between warp points, creating new ones is blocked when too close
activation_range = 4, --- @setting activation_range The distance the player must be to a warp in order to use the warp gui, gui can still be viewed but not used
spawn_activation_range = 20, --- @setting spawn_activation_range A second activation range which is used for the forces spawn point
default_icon = 'discharge-defense-equipment', --- @setting default_icon The default icon which is used by warps; must be an item name
user_can_edit_own_warps = false, --- @setting user_can_edit_own_warps When true the user can always edit warps which they created regardless of other settings
any_user_can_add_new_warp = false, --- @setting any_user_can_add_new_warp When true any user is able to create new warps, however editing may still be restricted
only_admins_can_edit = false, --- @setting only_admins_can_edit When true only admins can edit warps
edit_warps_role_permission = 'gui/warp-list/edit', --- @setting edit_warps_role_permission Role permission used by the role system to allow editing warps
bypass_warp_limits_permission = 'gui/warp-list/no-limit', --- @setting bypass_warp_limits_permission Role permission used by the role system to allow bypassing the time and distance restrictions
entities = { --- @setting entities The entities which are created for warps
-- General config
update_smoothing = 10, --- @setting update_smoothing the amount of smoothing applied to updates to the cooldown timer, higher is better, max is 60
minimum_distance = 100, --- @setting minimum_distance the minimum distance that is allowed between warps on the same force
default_icon = 'discharge-defense-equipment', --- @setting default_icon the default icon that will be used for warps
-- Warp cooldowns
bypass_warp_cooldown = 'expcore.roles', --- @setting bypass_warp_cooldown dictates who the warp cooldown is applied to; values: all, admin, expcore.roles, none
expcore_roles_bypass_warp_cooldown = 'gui/warp-list/bypass-cooldown', --- @setting expcore_roles_bypass_warp_cooldown if expcore.roles is used then this is the required permission
cooldown_duraction = 60, --- @setting cooldown_duraction the duration of the warp cooldown in seconds
-- Warp proximity
bypass_warp_proximity = 'expcore.roles', --- @setting bypass_warp_proximity dictates who the warp proximity is applied to; values: all, admin, expcore.roles, none
expcore_roles_bypass_warp_proximity = 'gui/warp-list/bypass-proximity', --- @setting expcore_roles_bypass_warp_proximity if expcore.roles is used then this is the required permission
standard_proximity_radius = 4, --- @setting standard_proximity_radius the minimum distance a player is allowed to be to a warp in order to use it
spawn_proximity_radius = 20, --- @setting spawn_proximity_radius the minimum distance a player is allowed to be from they spawn point to use warps
-- Adding warps
allow_add_warp = 'expcore.roles', --- @setting allow_add_warp dictates who is allowed to add warps; values: all, admin, expcore.roles, none
expcore_roles_allow_add_warp = 'gui/warp-list/add', --- @setting expcore_roles_allow_add_warp if expcore.roles is used then this is the required permission
-- Editing warps
allow_edit_warp = 'expcore.roles', --- @setting allow_edit_warp dictates who is allowed to edit warps; values: all, admin, expcore.roles, none
expcore_roles_allow_edit_warp = 'gui/warp-list/edit', --- @setting expcore_roles_allow_edit_warp if expcore.roles is used then this is the required permission
user_can_edit_own_warps = false, --- @settings user_can_edit_own_warps if true then the user who made the warp can edit it regardless of the allow_edit_warp setting
-- Warp area generation
entities = { --- @setting entities The entities which are created for warp areas
{'small-lamp',-3,-2},{'small-lamp',-3,2},{'small-lamp',3,-2},{'small-lamp',3,2},
{'small-lamp',-2,-3},{'small-lamp',2,-3},{'small-lamp',-2,3},{'small-lamp',2,3},
{'small-electric-pole',-3,-3},{'small-electric-pole',3,3},{'small-electric-pole',-3,3},{'small-electric-pole',3,-3}
},
base_tile = 'tutorial-grid', --- @setting base_tile The tile which is used for the warps
tiles = { --- @setting tiles The tiles which are created for warps
base_tile = 'tutorial-grid', --- @setting base_tile The tile which is used for the warp areas
tiles = { --- @setting tiles The tiles which are created for warp areas
{-3,-2},{-3,-1},{-3,0},{-3,1},{-3,2},{3,-2},{3,-1},{3,0},{3,1},{3,2},
{-2,-3},{-1,-3},{0,-3},{1,-3},{2,-3},{-2,3},{-1,3},{0,3},{1,3},{2,3}
}

View File

@@ -348,7 +348,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -349,7 +349,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -376,7 +376,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -585,7 +585,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -349,7 +349,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -460,7 +460,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -320,7 +320,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -376,7 +376,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -500,7 +500,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -361,7 +361,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -365,7 +365,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -360,7 +360,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -404,7 +404,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -458,7 +458,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -416,7 +416,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -611,7 +611,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -389,7 +389,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -360,7 +360,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -321,7 +321,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -585,7 +585,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -557,7 +557,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -389,7 +389,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -443,7 +443,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -484,7 +484,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -569,7 +569,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -506,7 +506,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -237,7 +237,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -485,7 +485,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -294,7 +294,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -320,7 +320,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -442,7 +442,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -354,7 +354,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -338,7 +338,7 @@ see ./expcore/commands.lua for more details</p>
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -354,7 +354,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -416,7 +416,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -237,7 +237,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -240,7 +240,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -295,7 +295,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -812,7 +812,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -384,7 +384,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -414,7 +414,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -324,7 +324,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -414,7 +414,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -834,7 +834,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -292,7 +292,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -354,7 +354,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -388,7 +388,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -744,7 +744,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -241,16 +241,16 @@
</thead>
<tbody>
<tr>
<td class="name"><a href="#any_user_can_add_new_task">any_user_can_add_new_task</a></td>
<td class="name"><a href="#allow_add_task">allow_add_task</a></td>
</tr>
<tr>
<td class="name"><a href="#user_can_edit_own_tasks">user_can_edit_own_tasks</a></td>
<td class="name"><a href="#expcore_roles_allow_add_task">expcore_roles_allow_add_task</a></td>
</tr>
<tr>
<td class="name"><a href="#only_admins_can_edit">only_admins_can_edit</a></td>
<td class="name"><a href="#allow_edit_task">allow_edit_task</a></td>
</tr>
<tr>
<td class="name"><a href="#edit_tasks_role_permission">edit_tasks_role_permission</a></td>
<td class="name"><a href="#expcore_roles_allow_edit_task">expcore_roles_allow_edit_task</a></td>
</tr>
</tbody>
</table>
@@ -264,15 +264,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#any_user_can_add_new_task" class="fragment-hashtag">#</a>
<span class="section-item-title" id="any_user_can_add_new_task">any_user_can_add_new_task</span>
<a href="#allow_add_task" class="fragment-hashtag">#</a>
<span class="section-item-title" id="allow_add_task">allow_add_task</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> when false only people with edit permission can make new reports</p>
<p class="section-item-description"> dictates who is allowed to add new tasks; values: all, admin, expcore.roles, none</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -291,15 +291,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#user_can_edit_own_tasks" class="fragment-hashtag">#</a>
<span class="section-item-title" id="user_can_edit_own_tasks">user_can_edit_own_tasks</span>
<a href="#expcore_roles_allow_add_task" class="fragment-hashtag">#</a>
<span class="section-item-title" id="expcore_roles_allow_add_task">expcore_roles_allow_add_task</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> when false only people with edit permission can edit reports</p>
<p class="section-item-description"> if expcore.roles is used then this is the required permission</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -318,15 +318,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#only_admins_can_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="only_admins_can_edit">only_admins_can_edit</span>
<a href="#allow_edit_task" class="fragment-hashtag">#</a>
<span class="section-item-title" id="allow_edit_task">allow_edit_task</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> true will hide the edit and delete buttons from non (game) admins</p>
<p class="section-item-description"> dictates who is allowed to edit existing tasks; values: all, admin, expcore.roles, none</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -345,15 +345,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#edit_tasks_role_permission" class="fragment-hashtag">#</a>
<span class="section-item-title" id="edit_tasks_role_permission">edit_tasks_role_permission</span>
<a href="#expcore_roles_allow_edit_task" class="fragment-hashtag">#</a>
<span class="section-item-title" id="expcore_roles_allow_edit_task">expcore_roles_allow_edit_task</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> value used with custom permission system</p>
<p class="section-item-description"> if expcore.roles is used then this is the required permission</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -384,7 +384,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -355,7 +355,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -241,37 +241,46 @@
</thead>
<tbody>
<tr>
<td class="name"><a href="#recharge_time">recharge_time</a></td>
</tr>
<tr>
<td class="name"><a href="#update_smoothing">update_smoothing</a></td>
</tr>
<tr>
<td class="name"><a href="#minimum_distance">minimum_distance</a></td>
</tr>
<tr>
<td class="name"><a href="#activation_range">activation_range</a></td>
</tr>
<tr>
<td class="name"><a href="#spawn_activation_range">spawn_activation_range</a></td>
</tr>
<tr>
<td class="name"><a href="#default_icon">default_icon</a></td>
</tr>
<tr>
<td class="name"><a href="#user_can_edit_own_warps">user_can_edit_own_warps</a></td>
<td class="name"><a href="#bypass_warp_cooldown">bypass_warp_cooldown</a></td>
</tr>
<tr>
<td class="name"><a href="#any_user_can_add_new_warp">any_user_can_add_new_warp</a></td>
<td class="name"><a href="#expcore_roles_bypass_warp_cooldown">expcore_roles_bypass_warp_cooldown</a></td>
</tr>
<tr>
<td class="name"><a href="#only_admins_can_edit">only_admins_can_edit</a></td>
<td class="name"><a href="#cooldown_duraction">cooldown_duraction</a></td>
</tr>
<tr>
<td class="name"><a href="#edit_warps_role_permission">edit_warps_role_permission</a></td>
<td class="name"><a href="#bypass_warp_proximity">bypass_warp_proximity</a></td>
</tr>
<tr>
<td class="name"><a href="#bypass_warp_limits_permission">bypass_warp_limits_permission</a></td>
<td class="name"><a href="#expcore_roles_bypass_warp_proximity">expcore_roles_bypass_warp_proximity</a></td>
</tr>
<tr>
<td class="name"><a href="#standard_proximity_radius">standard_proximity_radius</a></td>
</tr>
<tr>
<td class="name"><a href="#spawn_proximity_radius">spawn_proximity_radius</a></td>
</tr>
<tr>
<td class="name"><a href="#allow_add_warp">allow_add_warp</a></td>
</tr>
<tr>
<td class="name"><a href="#expcore_roles_allow_add_warp">expcore_roles_allow_add_warp</a></td>
</tr>
<tr>
<td class="name"><a href="#allow_edit_warp">allow_edit_warp</a></td>
</tr>
<tr>
<td class="name"><a href="#expcore_roles_allow_edit_warp">expcore_roles_allow_edit_warp</a></td>
</tr>
<tr>
<td class="name"><a href="#entities">entities</a></td>
@@ -294,33 +303,6 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#recharge_time" class="fragment-hashtag">#</a>
<span class="section-item-title" id="recharge_time">recharge_time</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> The amount of time in seconds that the player must wait between warps, acts as a balance</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#update_smoothing" class="fragment-hashtag">#</a>
<span class="section-item-title" id="update_smoothing">update_smoothing</span>
</div>
@@ -329,7 +311,7 @@
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> Higher is better, the amount of smoothing applied to recharge timer and other gui updates, max is 60</p>
<p class="section-item-description"> the amount of smoothing applied to updates to the cooldown timer, higher is better, max is 60</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -356,61 +338,7 @@
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> The minimum distance that must be between warp points, creating new ones is blocked when too close</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#activation_range" class="fragment-hashtag">#</a>
<span class="section-item-title" id="activation_range">activation_range</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> The distance the player must be to a warp in order to use the warp gui, gui can still be viewed but not used</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#spawn_activation_range" class="fragment-hashtag">#</a>
<span class="section-item-title" id="spawn_activation_range">spawn_activation_range</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> A second activation range which is used for the forces spawn point</p>
<p class="section-item-description"> the minimum distance that is allowed between warps on the same force</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -437,7 +365,7 @@
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> The default icon which is used by warps; must be an item name</p>
<p class="section-item-description"> the default icon that will be used for warps</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -456,15 +384,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#user_can_edit_own_warps" class="fragment-hashtag">#</a>
<span class="section-item-title" id="user_can_edit_own_warps">user_can_edit_own_warps</span>
<a href="#bypass_warp_cooldown" class="fragment-hashtag">#</a>
<span class="section-item-title" id="bypass_warp_cooldown">bypass_warp_cooldown</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> When true the user can always edit warps which they created regardless of other settings</p>
<p class="section-item-description"> dictates who the warp cooldown is applied to; values: all, admin, expcore.roles, none</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -483,15 +411,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#any_user_can_add_new_warp" class="fragment-hashtag">#</a>
<span class="section-item-title" id="any_user_can_add_new_warp">any_user_can_add_new_warp</span>
<a href="#expcore_roles_bypass_warp_cooldown" class="fragment-hashtag">#</a>
<span class="section-item-title" id="expcore_roles_bypass_warp_cooldown">expcore_roles_bypass_warp_cooldown</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> When true any user is able to create new warps, however editing may still be restricted</p>
<p class="section-item-description"> if expcore.roles is used then this is the required permission</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -510,15 +438,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#only_admins_can_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="only_admins_can_edit">only_admins_can_edit</span>
<a href="#cooldown_duraction" class="fragment-hashtag">#</a>
<span class="section-item-title" id="cooldown_duraction">cooldown_duraction</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> When true only admins can edit warps</p>
<p class="section-item-description"> the duration of the warp cooldown in seconds</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -537,15 +465,15 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#edit_warps_role_permission" class="fragment-hashtag">#</a>
<span class="section-item-title" id="edit_warps_role_permission">edit_warps_role_permission</span>
<a href="#bypass_warp_proximity" class="fragment-hashtag">#</a>
<span class="section-item-title" id="bypass_warp_proximity">bypass_warp_proximity</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> Role permission used by the role system to allow editing warps</p>
<p class="section-item-description"> dictates who the warp proximity is applied to; values: all, admin, expcore.roles, none</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -564,15 +492,177 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#bypass_warp_limits_permission" class="fragment-hashtag">#</a>
<span class="section-item-title" id="bypass_warp_limits_permission">bypass_warp_limits_permission</span>
<a href="#expcore_roles_bypass_warp_proximity" class="fragment-hashtag">#</a>
<span class="section-item-title" id="expcore_roles_bypass_warp_proximity">expcore_roles_bypass_warp_proximity</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> Role permission used by the role system to allow bypassing the time and distance restrictions</p>
<p class="section-item-description"> if expcore.roles is used then this is the required permission</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#standard_proximity_radius" class="fragment-hashtag">#</a>
<span class="section-item-title" id="standard_proximity_radius">standard_proximity_radius</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> the minimum distance a player is allowed to be to a warp in order to use it</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#spawn_proximity_radius" class="fragment-hashtag">#</a>
<span class="section-item-title" id="spawn_proximity_radius">spawn_proximity_radius</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> the minimum distance a player is allowed to be from they spawn point to use warps</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#allow_add_warp" class="fragment-hashtag">#</a>
<span class="section-item-title" id="allow_add_warp">allow_add_warp</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> dictates who is allowed to add warps; values: all, admin, expcore.roles, none</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#expcore_roles_allow_add_warp" class="fragment-hashtag">#</a>
<span class="section-item-title" id="expcore_roles_allow_add_warp">expcore_roles_allow_add_warp</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> if expcore.roles is used then this is the required permission</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#allow_edit_warp" class="fragment-hashtag">#</a>
<span class="section-item-title" id="allow_edit_warp">allow_edit_warp</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> dictates who is allowed to edit warps; values: all, admin, expcore.roles, none</p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#expcore_roles_allow_edit_warp" class="fragment-hashtag">#</a>
<span class="section-item-title" id="expcore_roles_allow_edit_warp">expcore_roles_allow_edit_warp</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> if expcore.roles is used then this is the required permission</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -599,7 +689,7 @@
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> The entities which are created for warps</p>
<p class="section-item-description"> The entities which are created for warp areas</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -626,7 +716,7 @@
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> The tile which is used for the warps</p>
<p class="section-item-description"> The tile which is used for the warp areas</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -653,7 +743,7 @@
<div class="section-item-body">
<p class="section-item-summary"></p>
<p class="section-item-description"> The tiles which are created for warps</p>
<p class="section-item-description"> The tiles which are created for warp areas</p>
<!-- parameters start -->
<!-- parameters end -->
@@ -684,7 +774,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1208,7 +1208,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1329,7 +1329,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1110,7 +1110,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -984,7 +984,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -998,7 +998,7 @@ Tasks.update_task(task_id,<span class="string">'We need more iron!'</span>,game.
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1465,7 +1465,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1563,7 +1563,7 @@ Warps.make_warp_tag(warp_id)</code></pre>
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1972,7 +1972,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -2746,7 +2746,7 @@ Common.table_insert(tbl,<span class="number">50</span>,tbl2)</code></pre>
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

File diff suppressed because it is too large Load Diff

View File

@@ -1432,7 +1432,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -3152,7 +3152,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -262,7 +262,7 @@ Store.set(scenario_diffculty,<span class="string">'hard'</span>) <span class="co
<span class="keyword">end</span>)
<span class="comment">-- When any key in the store is changed this function will trigger
</span>Store.watch(player_scores,<span class="keyword">function</span>(value,key)
</span>Store.watch(player_scores,<span class="keyword">function</span>(value,key,old_value)
game.<span class="global">print</span>(key..<span class="string">' now has a score of '</span>..value)
<span class="keyword">end</span>)
@@ -370,7 +370,7 @@ Store.set(player_scores,game.player,<span class="number">10</span>) <span class=
<td class="summary">Used to trigger watcher functions, this may be used to trigger them if you did not use Store.update or Store.set</td>
</tr>
<tr>
<td class="name"><a href="#raw_trigger">raw_trigger(store[, key][, value])</a></td>
<td class="name"><a href="#raw_trigger">raw_trigger(store[, key][, value][, old_value])</a></td>
<td class="summary">Used to trigger watcher functions, the value and key are passed directly to the watchers regardless if the value is correct</td>
</tr>
</tbody>
@@ -791,7 +791,7 @@ Store.set(player_scores,game.player,<span class="number">10</span>) <span class=
<span class="keyword">end</span>)
<span class="comment">-- Register the watcher so that when we change the value the message is printed
</span>Store.watch(player_scores,<span class="keyword">function</span>(value,key)
</span>Store.watch(player_scores,<span class="keyword">function</span>(value,key,old_value)
game.<span class="global">print</span>(key..<span class="string">' now has a score of '</span>..value)
<span class="keyword">end</span>)
@@ -1361,7 +1361,7 @@ Store.set(player_scores,game.player,<span class="number">10</span>) <span class=
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#raw_trigger" class="fragment-hashtag">#</a>
<span class="section-item-title" id="raw_trigger">raw_trigger(store[, key][, value])</span>
<span class="section-item-title" id="raw_trigger">raw_trigger(store[, key][, value][, old_value])</span>
</div>
</dt>
<dd>
@@ -1426,6 +1426,23 @@ Store.set(player_scores,game.player,<span class="number">10</span>) <span class=
</li>
<li class="section-subitem-li">
<strong><em>old_value</em></strong>
<strong> : </strong>
(<span class="types"><span class="type">any</span></span>)
the old value that was at this key or store often the same if value is a table, passed directly to the watcher
(<em>optional</em>)
</li>
</ul>
<!-- parameters end -->
@@ -1445,7 +1462,7 @@ Store.set(player_scores,game.player,<span class="number">10</span>) <span class=
<span class="comment">-- Trigger the watchers with a fake change of diffculty
</span><span class="comment">-- This is mostly used internally but it can be useful in other cases
</span>Store.raw_trigger(scenario_diffculty,<span class="keyword">nil</span>,<span class="string">'normal'</span>)</code></pre>
</span>Store.raw_trigger(scenario_diffculty,<span class="keyword">nil</span>,<span class="string">'normal'</span>,<span class="string">'normal'</span>)</code></pre>
<!-- usage end -->
</dd>
@@ -1464,7 +1481,7 @@ Store.set(player_scores,game.player,<span class="number">10</span>) <span class=
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -544,7 +544,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -626,7 +626,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -629,7 +629,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -247,6 +247,9 @@
<td class="name"><a href="#expcore.gui">expcore.gui</a></td>
</tr>
<tr>
<td class="name"><a href="#expcore.gui">expcore.gui</a></td>
</tr>
<tr>
<td class="name"><a href="#utils.event">utils.event</a></td>
</tr>
<tr>
@@ -267,8 +270,20 @@
</thead>
<tbody>
<tr>
<td class="name"><a href="#science_info">science_info</a></td>
<td class="summary">Registers the science info</td>
<td class="name"><a href="#production_label">production_label</a></td>
<td class="summary">Data label that contains the value and the surfix</td>
</tr>
<tr>
<td class="name"><a href="#science_pack_base">science_pack_base</a></td>
<td class="summary">Adds 4 elements that show the data for a science pack</td>
</tr>
<tr>
<td class="name"><a href="#task_list_container">task_list_container</a></td>
<td class="summary">Main task list container for the left flow</td>
</tr>
<tr>
<td class="name"><a href="#task_list_toggle">task_list_toggle</a></td>
<td class="summary">Button on the top flow used to toggle the task list container</td>
</tr>
</tbody>
</table>
@@ -297,6 +312,31 @@
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#expcore.gui" class="fragment-hashtag">#</a>
<span class="section-item-title" id="expcore.gui">expcore.gui</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
@@ -410,14 +450,95 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#science_info" class="fragment-hashtag">#</a>
<span class="section-item-title" id="science_info">science_info</span>
<a href="#production_label" class="fragment-hashtag">#</a>
<span class="section-item-title" id="production_label">production_label</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Registers the science info</p>
<p class="section-item-summary">Data label that contains the value and the surfix</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#science_pack_base" class="fragment-hashtag">#</a>
<span class="section-item-title" id="science_pack_base">science_pack_base</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Adds 4 elements that show the data for a science pack</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#task_list_container" class="fragment-hashtag">#</a>
<span class="section-item-title" id="task_list_container">task_list_container</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Main task list container for the left flow</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#task_list_toggle" class="fragment-hashtag">#</a>
<span class="section-item-title" id="task_list_toggle">task_list_toggle</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Button on the top flow used to toggle the task list container</p>
<p class="section-item-description"></p>
<!-- parameters start -->
@@ -449,7 +570,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -271,27 +271,43 @@
<tbody>
<tr>
<td class="name"><a href="#add_new_task">add_new_task</a></td>
<td class="summary">Button in the header to add a new task</td>
</tr>
<tr>
<td class="name"><a href="#confirm_edit">confirm_edit</a></td>
<td class="summary">Used to save changes to a task</td>
</tr>
<tr>
<td class="name"><a href="#cancel_edit">cancel_edit</a></td>
<td class="summary">Used to cancel any changes you made to a task</td>
</tr>
<tr>
<td class="name"><a href="#discard_task">discard_task</a></td>
<td class="summary">Removes the task from the list</td>
<td class="summary">Button displayed in the ehader bar, used to add a new task</td>
</tr>
<tr>
<td class="name"><a href="#edit_task">edit_task</a></td>
<td class="summary">Opens edit mode for the task</td>
<td class="summary">Button displayed next to tasks which the user is can edit, used to start editing a task</td>
</tr>
<tr>
<td class="name"><a href="#task_list">task_list</a></td>
<td class="summary">Registers the task list</td>
<td class="name"><a href="#discard_task">discard_task</a></td>
<td class="summary">Button displayed next to tasks which the user is can edit, used to delete a task from the list</td>
</tr>
<tr>
<td class="name"><a href="#add_task_base">add_task_base</a></td>
<td class="summary">Set of three elements which make up each row of the task table</td>
</tr>
<tr>
<td class="name"><a href="#confirm_edit">confirm_edit</a></td>
<td class="summary">Button displayed next to tasks which the user is currently editing, used to save changes</td>
</tr>
<tr>
<td class="name"><a href="#cancel_edit">cancel_edit</a></td>
<td class="summary">Button displayed next to tasks which the user is currently editing, used to discard changes</td>
</tr>
<tr>
<td class="name"><a href="#task_editing">task_editing</a></td>
<td class="summary">Editing state for a task, contrins a text field and the two edit buttons</td>
</tr>
<tr>
<td class="name"><a href="#task_label">task_label</a></td>
<td class="summary">Default state for a task, contains only a label with the task message</td>
</tr>
<tr>
<td class="name"><a href="#task_list_container">task_list_container</a></td>
<td class="summary">Main task list container for the left flow</td>
</tr>
<tr>
<td class="name"><a href="#task_list_toggle">task_list_toggle</a></td>
<td class="summary">Button on the top flow used to toggle the task list container</td>
</tr>
</tbody>
</table>
@@ -465,88 +481,7 @@
<dd>
<div class="section-item-body">
<p class="section-item-summary">Button in the header to add a new task</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#confirm_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="confirm_edit">confirm_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Used to save changes to a task</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#cancel_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="cancel_edit">cancel_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Used to cancel any changes you made to a task</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#discard_task" class="fragment-hashtag">#</a>
<span class="section-item-title" id="discard_task">discard_task</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Removes the task from the list</p>
<p class="section-item-summary">Button displayed in the ehader bar, used to add a new task</p>
<p class="section-item-description"></p>
<!-- parameters start -->
@@ -573,7 +508,7 @@
<dd>
<div class="section-item-body">
<p class="section-item-summary">Opens edit mode for the task</p>
<p class="section-item-summary">Button displayed next to tasks which the user is can edit, used to start editing a task</p>
<p class="section-item-description"></p>
<!-- parameters start -->
@@ -593,14 +528,203 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#task_list" class="fragment-hashtag">#</a>
<span class="section-item-title" id="task_list">task_list</span>
<a href="#discard_task" class="fragment-hashtag">#</a>
<span class="section-item-title" id="discard_task">discard_task</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Registers the task list</p>
<p class="section-item-summary">Button displayed next to tasks which the user is can edit, used to delete a task from the list</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#add_task_base" class="fragment-hashtag">#</a>
<span class="section-item-title" id="add_task_base">add_task_base</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Set of three elements which make up each row of the task table</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#confirm_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="confirm_edit">confirm_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Button displayed next to tasks which the user is currently editing, used to save changes</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#cancel_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="cancel_edit">cancel_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Button displayed next to tasks which the user is currently editing, used to discard changes</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#task_editing" class="fragment-hashtag">#</a>
<span class="section-item-title" id="task_editing">task_editing</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Editing state for a task, contrins a text field and the two edit buttons</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#task_label" class="fragment-hashtag">#</a>
<span class="section-item-title" id="task_label">task_label</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Default state for a task, contains only a label with the task message</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#task_list_container" class="fragment-hashtag">#</a>
<span class="section-item-title" id="task_list_container">task_list_container</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Main task list container for the left flow</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#task_list_toggle" class="fragment-hashtag">#</a>
<span class="section-item-title" id="task_list_toggle">task_list_toggle</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Button on the top flow used to toggle the task list container</p>
<p class="section-item-description"></p>
<!-- parameters start -->
@@ -632,7 +756,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -282,30 +282,10 @@
</thead>
<tbody>
<tr>
<td class="name"><a href="#zoom_to_map">zoom_to_map</a></td>
<td class="summary">Used on the name label to allow zoom to map</td>
</tr>
<tr>
<td class="name"><a href="#warp_timer">warp_timer</a></td>
<td class="summary">This timer controls when a player is able to warp, eg every 60 seconds</td>
</tr>
<tr>
<td class="name"><a href="#goto_warp">goto_warp</a></td>
<td class="summary">When the button is clicked it will teleport the player</td>
</tr>
<tr>
<td class="name"><a href="#add_new_warp">add_new_warp</a></td>
<td class="summary">Will add a new warp to the list, checks if the player is too close to an existing one</td>
</tr>
<tr>
<td class="name"><a href="#confirm_edit">confirm_edit</a></td>
<td class="summary">Confirms the edit to name or icon of the warp</td>
</tr>
<tr>
<td class="name"><a href="#cancel_edit">cancel_edit</a></td>
<td class="summary">Cancels the editing changes of the selected warp name or icon</td>
</tr>
<tr>
<td class="name"><a href="#discard_warp">discard_warp</a></td>
<td class="summary">Removes a warp from the list, including the physical area and map tag</td>
</tr>
@@ -314,8 +294,44 @@
<td class="summary">Opens edit mode for the warp</td>
</tr>
<tr>
<td class="name"><a href="#warp_list">warp_list</a></td>
<td class="summary">Registers the warp list</td>
<td class="name"><a href="#add_warp_base">add_warp_base</a></td>
<td class="summary">Set of three elements which make up each row of the warp table</td>
</tr>
<tr>
<td class="name"><a href="#confirm_edit">confirm_edit</a></td>
<td class="summary">Confirms the edit to name or icon of the warp</td>
</tr>
<tr>
<td class="name"><a href="#cancel_edit">cancel_edit</a></td>
<td class="summary">Cancels the editing changes of the selected warp name or icon</td>
</tr>
<tr>
<td class="name"><a href="#warp_editing">warp_editing</a></td>
<td class="summary">Editing state for a warp, contrins a text field and the two edit buttons</td>
</tr>
<tr>
<td class="name"><a href="#warp_label">warp_label</a></td>
<td class="summary">Default state for a warp, contains only a label with the warp name</td>
</tr>
<tr>
<td class="name"><a href="#warp_icon_button">warp_icon_button</a></td>
<td class="summary">Default state for the warp icon, when pressed teleports the player</td>
</tr>
<tr>
<td class="name"><a href="#warp_icon_editing">warp_icon_editing</a></td>
<td class="summary">Editing state for the warp icon, chose elem used to chosse icon</td>
</tr>
<tr>
<td class="name"><a href="#warp_timer">warp_timer</a></td>
<td class="summary">This timer controls when a player is able to warp, eg every 60 seconds</td>
</tr>
<tr>
<td class="name"><a href="#warp_list_container">warp_list_container</a></td>
<td class="summary">Main warp list container for the left flow</td>
</tr>
<tr>
<td class="name"><a href="#warp_list_toggle">warp_list_toggle</a></td>
<td class="summary">Button on the top flow used to toggle the warp list container</td>
</tr>
</tbody>
</table>
@@ -582,87 +598,6 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#zoom_to_map" class="fragment-hashtag">#</a>
<span class="section-item-title" id="zoom_to_map">zoom_to_map</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Used on the name label to allow zoom to map</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_timer" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_timer">warp_timer</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">This timer controls when a player is able to warp, eg every 60 seconds</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#goto_warp" class="fragment-hashtag">#</a>
<span class="section-item-title" id="goto_warp">goto_warp</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">When the button is clicked it will teleport the player</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#add_new_warp" class="fragment-hashtag">#</a>
<span class="section-item-title" id="add_new_warp">add_new_warp</span>
</div>
@@ -680,60 +615,6 @@
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#confirm_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="confirm_edit">confirm_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Confirms the edit to name or icon of the warp</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#cancel_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="cancel_edit">cancel_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Cancels the editing changes of the selected warp name or icon</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
@@ -798,14 +679,257 @@
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_list" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_list">warp_list</span>
<a href="#add_warp_base" class="fragment-hashtag">#</a>
<span class="section-item-title" id="add_warp_base">add_warp_base</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Registers the warp list</p>
<p class="section-item-summary">Set of three elements which make up each row of the warp table</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#confirm_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="confirm_edit">confirm_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Confirms the edit to name or icon of the warp</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#cancel_edit" class="fragment-hashtag">#</a>
<span class="section-item-title" id="cancel_edit">cancel_edit</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Cancels the editing changes of the selected warp name or icon</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_editing" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_editing">warp_editing</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Editing state for a warp, contrins a text field and the two edit buttons</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_label" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_label">warp_label</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Default state for a warp, contains only a label with the warp name</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_icon_button" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_icon_button">warp_icon_button</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Default state for the warp icon, when pressed teleports the player</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_icon_editing" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_icon_editing">warp_icon_editing</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Editing state for the warp icon, chose elem used to chosse icon</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_timer" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_timer">warp_timer</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">This timer controls when a player is able to warp, eg every 60 seconds</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_list_container" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_list_container">warp_list_container</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Main warp list container for the left flow</p>
<p class="section-item-description"></p>
<!-- parameters start -->
<!-- parameters end -->
<!-- returns start -->
<!-- returns end -->
<!-- see also start -->
<!-- see also end -->
<!-- usage start -->
<!-- usage end -->
</dd>
<dt>
<div class="divider divider-custom"></div>
<div class="block section-item-header">
<a href="#warp_list_toggle" class="fragment-hashtag">#</a>
<span class="section-item-title" id="warp_list_toggle">warp_list_toggle</span>
</div>
</dt>
<dd>
<div class="section-item-body">
<p class="section-item-summary">Button on the top flow used to toggle the warp list container</p>
<p class="section-item-description"></p>
<!-- parameters start -->
@@ -837,7 +961,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -57,10 +57,7 @@
<tr>
<td class="name"><a href="core/Gui.html">Gui</a></td>
<td class="summary"><span>Core Module - Gui
- This file is used to require all the different elements of the gui module
- each module has an outline here but for more details see their separate files in ./gui
- please read the files for more documentation that cant be shown here
- please note there is a rework planned but not started</span></td>
- Used to define new gui elements and gui event handlers</span></td>
</tr>
<tr>
<td class="name"><a href="core/Permissions-Groups.html">Permissions-Groups</a></td>
@@ -514,7 +511,7 @@ see ./expcore/commands.lua for more details</span></td>
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -351,7 +351,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -419,7 +419,7 @@ fraction will decide a chance to spawn. 1 alien for 2 spawner's will have 50% on
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1164,7 +1164,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -654,7 +654,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -323,7 +323,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1292,7 +1292,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -434,7 +434,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -353,7 +353,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -441,7 +441,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -752,7 +752,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1418,7 +1418,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -651,7 +651,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -442,7 +442,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -789,7 +789,7 @@ Public License instead of this License. But first, please read
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -228,26 +228,29 @@
</p>
<h1 align="center">ExpGaming Scenario Repository</h2>
<p>## Explosive Gaming
<p>Explosive Gaming (often ExpGaming) is a server hosting community with a strong focus on Factorio and games that follow similar ideas. Our factorio server are known for hosting large maps with the main goal of being a "mega base" which can produce as much as possible with in our reset schedule. Although these server tend to the more experienced players our server are open to everyone. You can find us through our [website], [discord], [wiki], or in the public games tab in factorio (ExpGaming S1).
<p>Explosive Gaming (often ExpGaming) is a server hosting community with a strong focus on Factorio and games that follow similar ideas. Our Factorio server are known for hosting large maps with the main goal of being a "mega base" which can produce as much as possible within our reset schedule. Although these servers tend to attract the more experienced players, our servers are open to everyone. You can find us through our [website], [discord], [wiki], or in the public games tab in Factorio (ExpGaming S1, ExpGaming S2, etc.).
<p>## Use and Installation
<p>1) Download this [git repository](https://github.com/explosivegaming/scenario/archive/master.zip) for the stable release. The dev branch can be found [here](https://github.com/explosivegaming/scenario/archive/dev.zip) for those who want the latest features. See [releases](#releases) for other release branches.
<p>2) Extract the downloaded zip file from the branch you downloaded into factorio's scenario directory:
<p>2) Extract the downloaded zip file from the branch you downloaded into Factorio's scenario directory:
* Windows: `%appdata%\Factorio\scenarios`
* Linux: `~/.factorio/scenarios`
<p>3) Within the scenario you can find `./config/_file_loader.lua` which contains a list of all the modules that will be loaded by the scenario; simply comment out (or remove) features you do not want but note that some modules may load other modules as dependencies even when removed from the list.
<p>4) More advanced users may want to play with the other configs files within `./config` but please be aware that some of the config files will require a basic understanding of lua while others may just be a list of values.
<p>5) Once you have made any config changes that you wish to make open factorio, select play, then start scenario (or host scenario from within multiplayer tab), and select the scenario which will be called `scenario-master` if you have downloaded the latest stable release and have not changed the folder name.
<p>6) The scenario will now load all the selected modules and start the map, any errors or exceptions raised in the scenario should not cause a game/server crash so if any features don't work as expected then it may be returning an error in the log, please report these errors to [the issues page](issues).
<p>5) Once you have made any config changes that you wish to make open Factorio, select play, then start scenario (or host scenario from within multiplayer tab), and select the scenario which will be called `scenario-master` if you have downloaded the latest stable release and have not changed the folder name.
<p>6) The scenario will now load all the selected modules and start the map, any errors or exceptions raised in the scenario should not cause a game/server crash, so if any features do not work as expected then it may be returning an error in the log.
Please report these errors to [the issues page](issues).
<p>## Contributing
<p>All are welcome to make pull requests and issues for this scenario, if you are in any doubt please ask someone in our [discord]. If you do not know lua and don't feel like learning you can always make a [feature request]. All our docs can be found [here][docs]. Please keep in mind while making code changes:
<p>All are welcome to make pull requests and issues for this scenario, if you are in any doubt, please ask someone in our [discord]. If you do not know lua and don't feel like learning you can always make a [feature request]. All our docs can be found [here][docs]. Please keep in mind while making code changes:
<p>* New features should have the branch names: `feature/feature-name`
* New features are merged into `dev` after it has been completed.
* After a number of features have been added a release branch is made: `release/X.Y.0`; this branch should have no new features and only bug fixes or localization.
* A release is merged into `master` on the following friday in time for the the weekly reset.
* Patches may be named `patch/X.Y.Z` and fill be merged into `master` and `dev` when appropriate.
* New features are merged into `dev` after it has been completed, this can be done through a pull request.
* After a number of features have been added a release branch is made: `release/X.Y.0`
* Bug fixes and localization can be made to the release branch with a pull request rather than into dev.
* A release is merged into `master` on the following friday after it is considered stable.
* Patches may be named `patch/X.Y.Z` and will be merged into `dev` and then `master` when appropriate.
<p>## Releases
<p>| Scenario Version* | Version Name | Factorio Version** |
|---|---|---|
| [v5.10][s5.10] | Data Store Rewrite | [v0.17.71][f0.17.71] |
| [v5.9][s5.9] | Control Modules and Documentation | [v0.17.63][f0.17.63] |
| [v5.8][s5.8] | Home and Chat Bot | [v0.17.47][f0.17.49] |
| [v5.7][s5.7] | Warp System | [v0.17.47][f0.17.47] |
@@ -265,7 +268,8 @@
| [v0.1][s0.1] | First Tracked Version | [v0.14][f0.14] |
<p>\* Scenario patch versions have been omitted.
<p>\*\* Factorio versions show the version they were made for, often the minimum requirement.
<p>[s5.9]: https://github.com/explosivegaming/scenario/releases/tag/5.9.0
<p>[s5.10]: https://github.com/explosivegaming/scenario/releases/tag/5.10.0
[s5.9]: https://github.com/explosivegaming/scenario/releases/tag/5.9.0
[s5.8]: https://github.com/explosivegaming/scenario/releases/tag/5.8.0
[s5.7]: https://github.com/explosivegaming/scenario/releases/tag/5.7.0
[s5.6]: https://github.com/explosivegaming/scenario/releases/tag/5.6.0
@@ -280,7 +284,8 @@
[s2.0]: https://github.com/explosivegaming/scenario/releases/tag/v2.0
[s1.0]: https://github.com/explosivegaming/scenario/releases/tag/v1.0
[s0.1]: https://github.com/explosivegaming/scenario/releases/tag/v0.1
<p>[f0.17.63]: https://wiki.factorio.com/Version_history/0.17.0#0.17.63
<p>[f0.17.71]: https://wiki.factorio.com/Version_history/0.17.0#0.17.71
[f0.17.63]: https://wiki.factorio.com/Version_history/0.17.0#0.17.63
[f0.17.49]: https://wiki.factorio.com/Version_history/0.17.0#0.17.49
[f0.17.47]: https://wiki.factorio.com/Version_history/0.17.0#0.17.47
[f0.17.44]: https://wiki.factorio.com/Version_history/0.17.0#0.17.44
@@ -333,7 +338,7 @@
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc </a></i>
</div>
<div class="content-footer column col-9 col-sm-12">
<i>Last updated 2019-10-15 22:37:40 UTC</i>
<i>Last updated 2019-10-25 23:42:24 UTC</i>
</div>
</div>
</div>

View File

@@ -1,284 +1 @@
--[[-- Core Module - Gui
- This file is used to require all the different elements of the gui module
- each module has an outline here but for more details see their separate files in ./gui
- please read the files for more documentation that cant be shown here
- please note there is a rework planned but not started
@core Gui
@alias Gui
]]
local Gui = require 'expcore.gui.core' --- @dep expcore.gui.core
--[[
Core
Gui.new_define(prototype) --- Used internally to create new element defines from a class prototype
Gui.draw(name,element) --- Draws a copy of the element define to the parent element, see draw_to
Gui.categorize_by_player(element) --- A categorize function to be used with add_store, each player has their own value
Gui.categorize_by_force(element) --- A categorize function to be used with add_store, each force has its own value
Gui.categorize_by_surface(element) --- A categorize function to be used with add_store, each surface has its own value
Gui.toggle_enabled(element) --- Will toggle the enabled state of an element
Gui.toggle_visible(element) --- Will toggle the visibility of an element
Gui.set_padding(element,up,down,left,right) --- Sets the padding for a gui element
Gui.set_padding_style(style,up,down,left,right) --- Sets the padding for a gui style
Gui.create_alignment(element,flow_name) --- Allows the creation of a right align flow to place elements into
Gui.destroy_if_valid(element) --- Destroys an element but tests for it being present and valid first
Gui.create_scroll_table(element,table_size,maximal_height,name) --- Creates a scroll area with a table inside, table can be any size
Gui.create_header(element,caption,tooltip,right_align,name) --- Creates a header section with a label and button area
Prototype Constructor
Constructor.event(event_name) --- Creates a new function to add functions to an event handler
Constructor.extend(new_prototype) --- Extents a prototype with the base functions of all gui prototypes, no metatables
Constructor.store(sync,callback) --- Creates a new function which adds a store to a gui define
Constructor.setter(value_type,key,second_key) --- Creates a setter function that checks the type when a value is set
Base Prototype
Prototype:uid() --- Gets the uid for the element define
Prototype:debug_name(value) --- Sets a debug alias for the define
Prototype:set_caption(value) --- Sets the caption for the element define
Prototype:set_tooltip(value) --- Sets the tooltip for the element define
Prototype:set_style(style,callback) --- Sets the style for the element define
Prototype:set_embedded_flow(state) --- Sets the element to be drawn inside a nameless flow, can be given a name using a function
Prototype:set_pre_authenticator --- Sets an authenticator that blocks the draw function if check fails
Prototype:set_post_authenticator --- Sets an authenticator that disables the element if check fails
Prototype:raise_event(event_name,...) --- Raises a custom event for this define, any number of params can be given
Prototype:draw_to(element,...) --- The main function for defines, when called will draw an instance of this define to the given element
Prototype:get_store(category) --- Gets the value in this elements store, category needed if categorize function used
Prototype:set_store(category,value) --- Sets the value in this elements store, category needed if categorize function used
Prototype:clear_store(category) --- Sets the value in this elements store to nil, category needed if categorize function used
]]
local Instances = require 'expcore.gui.instances' --- @dep expcore.gui.instances
Gui.new_instance_group = Instances.registers
Gui.get_instances = Instances.get_elements
Gui.add_instance = Instances.get_elements
Gui.update_instances = Instances.apply_to_elements
Gui.classes.instances = Instances
--[[
Instances.has_categories(name) --- Returns if a instance group has a categorise function; must be registered
Instances.is_registered(name) --- Returns if the given name is a registered instance group
Instances.register(name,categorise) --- Registers the name of an instance group to allow for storing element instances
Instances.add_element(name,element) --- Adds an element to the instance group under the correct category; must be registered
Instances.get_elements_raw(name,category) --- Gets all element instances without first removing any invalid ones; used internally and must be registered
Instances.get_valid_elements(name,category,callback) --- Gets all valid element instances and has the option of running a callback on those that are valid
Instances.unregistered_add_element(name,category,element) --- A version of add_element that does not require the group to be registered
Instances.unregistered_get_elements(name,category,callback) --- A version of get_elements that does not require the group to be registered
]]
local Button = require 'expcore.gui.elements.buttons' --- @dep expcore.gui.elements.buttons
Gui.new_button = Button.new_button
Gui.classes.button = Button
--[[
Button.new_button(name) --- Creates a new button element define
Button._prototype:on_click(player,element) --- Registers a handler for when the button is clicked
Button._prototype:on_left_click(player,element) --- Registers a handler for when the button is clicked with the left mouse button
Button._prototype:on_right_click(player,element) --- Registers a handler for when the button is clicked with the right mouse button
Button._prototype:set_sprites(sprite,hovered_sprite,clicked_sprite) --- Adds sprites to a button making it a sprite button
Button._prototype:set_click_filter(filter,...) --- Adds a click / mouse button filter to the button
Button._prototype:set_key_filter(filter,...) --- Adds a control key filter to the button
]]
local Checkbox = require 'expcore.gui.elements.checkbox' --- @dep expcore.gui.elements.checkbox
Gui.new_checkbox = Checkbox.new_checkbox
Gui.new_radiobutton = Checkbox.new_radiobutton
Gui.new_radiobutton_option_set = Checkbox.new_option_set
Gui.draw_option_set = Checkbox.draw_option_set
Gui.classes.checkbox = Checkbox
--[[
Checkbox.new_checkbox(name) --- Creates a new checkbox element define
Checkbox._prototype_checkbox:on_element_update(callback) --- Registers a handler for when an element instance updates
Checkbox._prototype_checkbox:on_store_update(callback) --- Registers a handler for when the stored value updates
Checkbox.new_radiobutton(name) --- Creates a new radiobutton element define
Checkbox._prototype_radiobutton:on_element_update(callback) --- Registers a handler for when an element instance updates
Checkbox._prototype_radiobutton:on_store_update(callback) --- Registers a handler for when the stored value updates
Checkbox._prototype_radiobutton:add_as_option(option_set,option_name) --- Adds this radiobutton to be an option in the given option set (only one can be true at a time)
Checkbox.new_option_set(callback,categorize) --- Registers a new option set that can be linked to radiobuttons (only one can be true at a time)
Checkbox.draw_option_set(name,element) --- Draws all radiobuttons that are part of an option set at once (Gui.draw will not work)
Checkbox.reset_radiobutton(element,exclude,recursive) --- Sets all radiobuttons in a element to false (unless excluded) and can act recursively
]]
local Dropdown = require 'expcore.gui.elements.dropdown' --- @dep expcore.gui.elements.dropdown
Gui.new_dropdown = Dropdown.new_dropdown
Gui.new_list_box = Dropdown.new_list_box
Gui.classes.dropdown = Dropdown
--[[
Dropdown.new_dropdown(name) --- Creates a new dropdown element define
Dropdown.new_list_box(name) --- Creates a new list box element define
Dropdown._prototype:on_element_update(callback) --- Registers a handler for when an element instance updates
Dropdown._prototype:on_store_update(callback) --- Registers a handler for when the stored value updates
Dropdown._prototype:new_static_options(options,...) --- Adds new static options to the dropdown which will trigger the general callback
Dropdown._prototype:new_dynamic_options(callback) --- Adds a callback which should return a table of values to be added as options for the dropdown (appended after static options)
Dropdown._prototype:add_option_callback(option,callback) --- Adds a case specific callback which will only run when that option is selected (general case still triggered)
Dropdown.select_value(element,value) --- Selects the option from a dropdown or list box given the value rather than key
Dropdown.get_selected_value(element) --- Returns the currently selected value rather than index
]]
local Slider = require 'expcore.gui.elements.slider' --- @dep expcore.gui.elements.slider
Gui.new_slider = Slider.new_slider
Gui.classes.slider = Slider
--[[
Slider.new_slider(name) --- Creates a new slider element define
Slider._prototype:on_element_update(callback) --- Registers a handler for when an element instance updates
Slider._prototype:on_store_update(callback) --- Registers a handler for when the stored value updates
Slider._prototype:set_range(min,max) --- Sets the range of a slider, if not used will use default values for a slider
Slider._prototype:draw_label(element) --- Draws a new label and links its value to the value of this slider, if no store then it will only show one value per player
Slider._prototype:enable_auto_draw_label(state) --- Enables auto draw of the label, the label will share the same parent element as the slider
]]
local Text = require 'expcore.gui.elements.text' --- @dep expcore.gui.elements.text
Gui.new_text_filed = Text.new_text_field
Gui.new_text_box = Text.new_text_box
Gui.classes.text = Text
--[[
Text.new_text_field(name) --- Creates a new text field element define
Text._prototype_field:on_element_update(callback) --- Registers a handler for when an element instance updates
Text._prototype_field:on_store_update(callback) --- Registers a handler for when the stored value updates
Text.new_text_box(name) --- Creates a new text box element define
Text._prototype_field:on_element_update(callback) --- Registers a handler for when an element instance updates
Text._prototype_field:on_store_update(callback) --- Registers a handler for when the stored value updates
Text._prototype_box:set_selectable(state) --- Sets the text box to be selectable
Text._prototype_box:set_word_wrap(state) --- Sets the text box to have word wrap
Text._prototype_box:set_read_only(state) --- Sets the text box to be read only
]]
local ElemButton = require 'expcore.gui.elements.elem-button' --- @dep expcore.gui.elements.elem-button
Gui.new_elem_button = ElemButton.new_elem_button
Gui.classes.elem_button = ElemButton
--[[
ElemButton.new_elem_button(name) --- Creates a new elem button element define
ElemButton._prototype:on_element_update(callback) --- Registers a handler for when an element instance updates
ElemButton._prototype:on_store_update(callback) --- Registers a handler for when the stored value updates
ElemButton._prototype:set_type(type) --- Sets the type of the elem button, the type is required so this must be called at least once
ElemButton._prototype:set_default(value) --- Sets the default value for the elem button, this may be a function or a string
]]
local ProgressBar = require 'expcore.gui.elements.progress-bar' --- @dep expcore.gui.elements.progress-bar
Gui.new_progressbar = ProgressBar.new_progressbar
Gui.set_progressbar_maximum = ProgressBar.set_maximum
Gui.increment_progressbar = ProgressBar.increment
Gui.decrement_progressbar = ProgressBar.decrement
Gui.classes.progressbar = ProgressBar
--[[
ProgressBar.set_maximum(element,amount,count_down) --- Sets the maximum value that represents the end value of the progress bar
ProgressBar.increment(element,amount) --- Increases the value of the progressbar, if a define is given all of its instances are incremented
ProgressBar.decrement(element,amount) --- Decreases the value of the progressbar, if a define is given all of its instances are decreased
ProgressBar.new_progressbar(name) --- Creates a new progressbar element define
ProgressBar._prototype:set_maximum(amount,count_down) --- Sets the maximum value that represents the end value of the progress bar
ProgressBar._prototype:use_count_down(state) --- Will set the progress bar to start at 1 and trigger when it hits 0
ProgressBar._prototype:increment(amount,category) --- Increases the value of the progressbar
ProgressBar._prototype:increment_filtered(amount,filter) --- Increases the value of the progressbar, if the filter condition is met, does not work with store
ProgressBar._prototype:decrement(amount,category) --- Decreases the value of the progressbar
ProgressBar._prototype:decrement_filtered(amount,filter) --- Decreases the value of the progressbar, if the filter condition is met, does not work with store
ProgressBar._prototype:add_element(element,maximum) --- Adds an element into the list of instances that will are waiting to complete, does not work with store
ProgressBar._prototype:reset_element(element) --- Resets an element, or its store, to be back at the start, either 1 or 0
ProgressBar._prototype:on_complete(callback) --- Triggers when a progress bar element completes (hits 0 or 1)
ProgressBar._prototype:on_complete(callback) --- Triggers when a store value completes (hits 0 or 1)
ProgressBar._prototype:event_counter(filter) --- Event handler factory that counts up by 1 every time the event triggers, can filter which elements are incremented
ProgressBar._prototype:event_countdown(filter) --- Event handler factory that counts down by 1 every time the event triggers, can filter which elements are decremented
]]
local Toolbar = require 'expcore.gui.concepts.toolbar' --- @dep expcore.gui.concepts.toolbar
Gui.new_toolbar_button = Toolbar.new_button
Gui.add_button_to_toolbar = Toolbar.add_button
Gui.update_toolbar = Toolbar.update
Gui.classes.toolbar = Toolbar
--[[
Toolbar.new_button(name) --- Adds a new button to the toolbar
Toolbar.add_button(button) --- Adds an existing buttton to the toolbar
Toolbar.update(player) --- Updates the player's toolbar with an new buttons or expected change in auth return
]]
local LeftFrames = require 'expcore.gui.concepts.left' --- @dep expcore.gui.concepts.left
Gui.get_left_frame_flow = LeftFrames.get_flow
Gui.toggle_left_frame = LeftFrames.toggle_frame
Gui.new_left_frame = LeftFrames.new_frame
Gui.classes.left_frames = LeftFrames
--[[
LeftFrames.get_flow(player) --- Gets the left frame flow for a player
LeftFrames.get_frame(name,player) --- Gets one frame from the left flow by its name
LeftFrames.get_open(player) --- Gets all open frames for a player, if non are open it will remove the close all button
LeftFrames.toggle_frame(name,player,state) --- Toggles the visibility of a left frame, or sets its visibility state
LeftFrames.new_frame(permission_name) --- Creates a new left frame define
LeftFrames._prototype:set_open_by_default(state) --- Sets if the frame is visible when a player joins, can also be a function to return a boolean
LeftFrames._prototype:set_direction(direction) --- Sets the direction of the frame, either vertical or horizontal
LeftFrames._prototype:get_frame(player) --- Gets the frame for this define from the left frame flow
LeftFrames._prototype:is_open(player) --- Returns if the player currently has this define visible
LeftFrames._prototype:toggle(player) --- Toggles the visibility of the left frame
LeftFrames._prototype:update(player) --- Updates the contents of the left frame, first tries update callback, other wise will clear and redraw
LeftFrames._prototype:update_all(update_offline) --- Updates the frame for all players, see update
LeftFrames._prototype:redraw(player) --- Redraws the frame by calling on_draw, will always clear the frame
LeftFrames._prototype:redraw_all(update_offline) --- Redraws the frame for all players, see redraw
LeftFrames._prototype:on_draw(player,frame) --- Use to draw your elements to the new frame
LeftFrames._prototype:on_update(player,frame) --- Use to edit your frame when there is no need to redraw it
LeftFrames._prototype:on_player_toggle(player,frame) --- Triggered when the player toggle the left frame
LeftFrames._prototype:event_handler(action) --- Creates an event handler that will trigger one of its functions, use with Event.add
]]
local CenterFrames = require 'expcore.gui.concepts.center' --- @dep expcore.gui.concepts.center
Gui.get_center_flow = CenterFrames.get_flow
Gui.toggle_center_frame = CenterFrames.toggle_frame
Gui.draw_center_frame = CenterFrames.draw_frame
Gui.redraw_center_frame = CenterFrames.redraw_frames
Gui.new_center_frame = CenterFrames.new_frame
Gui.classes.center_frames = CenterFrames
--[[
CenterFrames.get_flow(player) --- Gets the center flow for a player
CenterFrames.clear_flow(player) --- Clears the center flow for a player
CenterFrames.draw_frame(player,name) --- Draws the center frame for a player, if already open then will do nothing
CenterFrames.redraw_frame(player,name) --- Draws the center frame for a player, if already open then will destroy it and redraw
CenterFrames.toggle_frame(player,name,state) --- Toggles if the frame is currently open or not, will open if closed and close if open
CenterFrames.new_frame(permission_name) --- Sets the frame to be the current active gui when opened and closes all other frames
CenterFrames._prototype:on_draw(player,frame) --- Use to draw your elements onto the new frame
CenterFrames._prototype:set_auto_focus(state) --- Sets the frame to be the current active gui when opened and closes all other frames
CenterFrames._prototype:draw_frame(player) --- Draws this frame to the player, if already open does nothing (will call on_draw to draw to the frame)
CenterFrames._prototype:redraw_frame(player) --- Draws this frame to the player, if already open it will remove it and redraw it (will call on_draw to draw to the frame)
CenterFrames._prototype:toggle_frame(player) --- Toggles if the frame is open, if open it will close it and if closed it will open it
CenterFrames._prototype:event_handler(action) --- Creates an event handler that will trigger one of its functions, use with Event.add
]]
local PopupFrames = require 'expcore.gui.concepts.popups' --- @dep expcore.gui.concepts.popups
Gui.get_popup_flow = PopupFrames.get_flow
Gui.open_popup = PopupFrames.open
Gui.new_popup = PopupFrames.new_popup
Gui.classes.popup_frames = PopupFrames
--[[
PopupFrames.get_flow(player) --- Gets the left flow that contains the popup frames
PopupFrames.open(define_name,player,open_time,...) --- Opens a popup for the player, can give the amount of time it is open as well as params for the draw function
PopupFrames.close_progress --- Progress bar which when depleted will close the popup frame
PopupFrames.close_button --- A button which can be used to close the gui before the timer runs out
PopupFrames.new_popup(name) --- Creates a new popup frame define
PopupFrames._prototype:set_default_open_time(amount) --- Sets the default open time for the popup, will be used if non is provided with open
PopupFrames._prototype:open(player,open_time,...) --- Opens this define for a player, can be given open time and any other params for the draw function
]]
return Gui
return require 'expcore.gui.require'

View File

@@ -1,198 +0,0 @@
--[[-- Core Module - Gui
@module Gui
@alias Prototype
]]
--- Center Guis.
-- Gui structure define for center gui frames
-- @section center
--[[
>>>> Functions
CenterFrames.get_flow(player) --- Gets the center flow for a player
CenterFrames.clear_flow(player) --- Clears the center flow for a player
CenterFrames.draw_frame(player,name) --- Draws the center frame for a player, if already open then will do nothing
CenterFrames.redraw_frame(player,name) --- Draws the center frame for a player, if already open then will destroy it and redraw
CenterFrames.toggle_frame(player,name,state) --- Toggles if the frame is currently open or not, will open if closed and close if open
CenterFrames.new_frame(permission_name) --- Sets the frame to be the current active gui when opened and closes all other frames
CenterFrames._prototype:on_draw(player,frame) --- Use to draw your elements onto the new frame
CenterFrames._prototype:set_auto_focus(state) --- Sets the frame to be the current active gui when opened and closes all other frames
CenterFrames._prototype:draw_frame(player) --- Draws this frame to the player, if already open does nothing (will call on_draw to draw to the frame)
CenterFrames._prototype:redraw_frame(player) --- Draws this frame to the player, if already open it will remove it and redraw it (will call on_draw to draw to the frame)
CenterFrames._prototype:toggle_frame(player) --- Toggles if the frame is open, if open it will close it and if closed it will open it
CenterFrames._prototype:event_handler(action) --- Creates an event handler that will trigger one of its functions, use with Event.add
]]
local Gui = require 'expcore.gui.core' --- @dep expcore.gui.core
local Prototype = require 'expcore.gui.prototype' --- @dep expcore.gui.prototype
local Toolbar = require 'expcore.gui.concepts.toolbar' --- @dep expcore.gui.concepts.toolbar
local Game = require 'utils.game' --- @dep utils.game
local CenterFrames = {
_prototype = Prototype.extend{
on_creation = Prototype.event
}
}
--- Gets the center flow for a player
-- @tparam LuaPlayer player the player to get the flow for
-- @treturn LuaGuiElement the center flow
function CenterFrames.get_flow(player)
player = Game.get_player_from_any(player)
return player.gui.center
end
--- Clears the center flow for a player
-- @tparam LuaPlayer player the player to clear the flow for
function CenterFrames.clear_flow(player)
local flow = CenterFrames.get_flow(player)
flow.clear()
end
--- Draws the center frame for a player, if already open then will do nothing
-- @tparam LuaPlayer player the player that will have the frame drawn
-- @tparam string name the name of the hui that will drawn
-- @treturn LuaGuiElement the new frame that was made
function CenterFrames.draw_frame(player,name)
local define = Gui.get_define(name,true)
if define then
return define:draw_frame(player)
end
end
--- Draws the center frame for a player, if already open then will destroy it and redraw
-- @tparam LuaPlayer player the player that will have the frame drawn
-- @tparam string name the name of the hui that will drawn
-- @treturn LuaGuiElement the new frame that was made
function CenterFrames.redraw_frame(player,name)
local define = Gui.get_define(name,true)
if define then
return define:draw_frame(player)
end
end
--- Toggles if the frame is currently open or not, will open if closed and close if open
-- @tparam LuaPlayer player the player that will have the frame toggled
-- @tparam string name the name of the hui that will be toggled
-- @tparam[opt] boolean state when set will force a state for the frame
-- @treturn boolean if the frame if no open or closed
function CenterFrames.toggle_frame(player,name,state)
local define = Gui.get_define(name,true)
if define then
if state == true then
define:draw_frame(player)
return true
elseif state == false then
local flow = CenterFrames.get_flow(player)
if flow[define.name..'-frame'] then
flow[define.name..'-frame'].destroy()
end
return false
else
return define:toggle_frame(player)
end
end
end
--- Creates a new center frame define
-- @tparam string permission_name the name that can be used with the permission system
-- @treturn table the new center frame define
function CenterFrames.new_frame(permission_name)
local self = Toolbar.new_button(permission_name)
self:on_click(function(player,element)
self:toggle_frame(player)
end)
local mt = getmetatable(self)
mt.__index = CenterFrames._prototype
mt.__call = self.event_handler
Gui.on_custom_close(self.name..'-frame',function(event)
local element = event.element
if element and element.valid then element.destroy() end
end)
return self
end
--- Sets the frame to be the current active gui when opened and closes all other frames
-- @tparam[opt=true] boolean state when true will auto close other frames and set this frame as player.opened
function CenterFrames._prototype:set_auto_focus(state)
if state == false then
self.auto_focus = false
else
self.auto_focus = true
end
end
--- Draws this frame to the player, if already open does nothing (will call on_draw to draw to the frame)
-- @tparam LuaPlayer player the player to draw the frame for
-- @treturn LuaGuiElement the new frame that was drawn
function CenterFrames._prototype:draw_frame(player)
player = Game.get_player_from_any(player)
local flow = CenterFrames.get_flow(player)
if flow[self.name..'-frame'] then
return flow[self.name..'-frame']
end
if self.auto_focus then
flow.clear()
end
local frame = flow.add{
type='frame',
name=self.name..'-frame'
}
if self.auto_focus then
player.opened = frame
end
self:raise_event('on_creation',player,frame)
return frame
end
--- Draws this frame to the player, if already open it will remove it and redraw it (will call on_draw to draw to the frame)
-- @tparam LuaPlayer player the player to draw the frame for
-- @treturn LuaGuiElement the new frame that was drawn
function CenterFrames._prototype:redraw_frame(player)
player = Game.get_player_from_any(player)
local flow = CenterFrames.get_flow(player)
if flow[self.name..'-frame'] then
flow[self.name..'-frame'].destroy()
end
return self:draw_frame(player)
end
--- Toggles if the frame is open, if open it will close it and if closed it will open it
-- @tparam LuaPlayer player the player to draw the frame for
-- @treturn boolean with the gui frame is now open
function CenterFrames._prototype:toggle_frame(player)
player = Game.get_player_from_any(player)
local flow = CenterFrames.get_flow(player)
if flow[self.name..'-frame'] then
flow[self.name..'-frame'].destroy()
return false
else
self:draw_frame(player)
return true
end
end
--- Creates an event handler that will trigger one of its functions, use with Event.add
-- @tparam[opt=update] string action the action to take on this event
function CenterFrames._prototype:event_handler(action)
action = action or 'update'
return function(event)
local player = Game.get_player_by_index(event.player_index)
self[action](self,player)
end
end
return CenterFrames

Some files were not shown because too many files have changed in this diff Show More