diff --git a/expcore/gui/_require.lua b/expcore/gui/_require.lua index 51fc0a14..78aac647 100644 --- a/expcore/gui/_require.lua +++ b/expcore/gui/_require.lua @@ -128,4 +128,17 @@ require 'expcore.gui.left_flow' require 'expcore.gui.helper_functions' require 'expcore.gui.defines' +local Roles = _C.opt_require('expcore.roles') +local Event = _C.opt_require('utils.event') + +if Roles and Event then + Event.add(Roles.events.on_role_assigned, function(e) + Gui.update_top_flow(game.get_player(e.player_index)) + end) + Event.add(Roles.events.on_role_unassigned, function(e) + Gui.update_top_flow(game.get_player(e.player_index)) + end) +end + + return Gui \ No newline at end of file diff --git a/expcore/roles.lua b/expcore/roles.lua index ad14ac09..2028cd23 100644 --- a/expcore/roles.lua +++ b/expcore/roles.lua @@ -114,7 +114,6 @@ local Event = require 'utils.event' --- @dep utils.event local Groups = require 'expcore.permission_groups' --- @dep expcore.permission_groups local Async = require 'expcore.async' --- @dep expcore.async local Colours = require 'utils.color_presets' --- @dep utils.color_presets -local Gui = require 'expcore.gui' --- @dep expcore.gui local write_json = _C.write_json --- @dep expcore.common local Roles = { @@ -379,7 +378,6 @@ function Roles.assign_player(player, roles, by_player_name, skip_checks, silent) end if valid_player then emit_player_roles_updated(valid_player, 'assign', roles, by_player_name, silent) - Gui.update_top_flow(valid_player) end end @@ -412,7 +410,6 @@ function Roles.unassign_player(player, roles, by_player_name, skip_checks, silen end if valid_player then emit_player_roles_updated(valid_player, 'unassign', roles, by_player_name, silent) - Gui.update_top_flow(valid_player) end end