Go to most recent revision | Compare with Previous | Blame | View Log
--[[ Addon: Taos Group Ultimate Author: TProg Taonnor Created by @Taonnor ]]-- --[[ Local variables ]]-- local LOG_ACTIVE = false local _logger = nil --[[ Table TGU_CommandsHandler ]]-- TGU_CommandsHandler = {} TGU_CommandsHandler.__index = TGU_CommandsHandler --[[ Table Members ]]-- TGU_CommandsHandler.Name = "TGU-CommandsHandler" --[[ Called on /setgroupultimatestyle command ]]-- function TGU_CommandsHandler.SetGroupUltimateStyleCommand(style) if (LOG_ACTIVE) then _logger:logTrace("TGU_CommandsHandler.SetGroupUltimateStyleCommand") _logger:logDebug("style", style) end if (style ~= nil and style ~= "") then TGU_SettingsHandler.SetStyleSettings(style) else d("Invalid style: " .. tostring(style)) end end --[[ Called on /setultimateid command ]]-- function TGU_CommandsHandler.SetUltimateIdCommand(groupName) if (LOG_ACTIVE) then _logger:logTrace("TGU_CommandsHandler.SetUltimateId") _logger:logDebug("groupName", groupName) end if (groupName ~= nil and groupName ~= "") then local ultimateGroup = TGU_UltimateGroupHandler.GetUltimateGroupByGroupName(groupName) if (ultimateGroup ~= nil) then TGU_SettingsHandler.SetStaticUltimateIDSettings(ultimateGroup.GroupAbilityId) else d("Invalid group name: " .. tostring(groupName)) end else d("Invalid group name: " .. tostring(groupName)) end end --[[ Called on /setswimlaneid command ]]-- function TGU_CommandsHandler.SetSwimlaneIdCommand(option) if (LOG_ACTIVE) then _logger:logTrace("TGU_CommandsHandler.SetSwimlaneId") _logger:logDebug("option", option) end -- Parse options local options = {} local arrayLength = 0 local searchResult = { string.match(option,"^(%S*)%s*(.-)$") } for i, v in pairs(searchResult) do if (v ~= nil and v ~= "") then options[i] = string.lower(v) arrayLength = i end end if (arrayLength == 2) then local swimlane = tonumber(options[1]) local swimlaneGroup = options[2] local ultimateGroup = TGU_UltimateGroupHandler.GetUltimateGroupByGroupName(swimlaneGroup) if (swimlane ~= nil and ultimateGroup ~= nil and swimlane >= 1 and swimlane <= 6) then TGU_SettingsHandler.SetSwimlaneUltimateGroupIdSettings(swimlane, ultimateGroup) else d("Invalid options: " .. tostring(option)) end else d("Invalid options: " .. tostring(option)) end end --[[ Called on /getultimategroups command ]]-- function TGU_CommandsHandler.GetUltimateGroupsCommand() if (LOG_ACTIVE) then _logger:logTrace("TGU_CommandsHandler.GetUltimateGroupsCommand") end local ultimateGroups = TGU_UltimateGroupHandler.GetUltimateGroups() d("Ultimate Groups:") for i, group in pairs(ultimateGroups) do d(group.GroupName .. " - " .. group.GroupDescription) end end --[[ Initialize initializes TGU_CommandsHandler ]]-- function TGU_CommandsHandler.Initialize(logger) if (LOG_ACTIVE) then logger:logTrace("TGU_CommandsHandler.Initialize") logger:logDebug("Commands active:") logger:logDebug("/setgroupultimatestyle <STYLEID> - Sets the style (0 = SimpleList, 1 = SwimlaneList).") logger:logDebug("/setultimateid <GROUPNAME> - Sets the static ultimate group; See /getultimategroups to get group names.") logger:logDebug("/setswimlaneid <SWIMLANE> <GROUPNAME> - Sets the ultimate group of swimlane (1-6); See /getultimategroups to get group name.") logger:logDebug("/getultimategroups - Gets all ultimate group names") end _logger = logger -- Define commands SLASH_COMMANDS["/setgroupultimatestyle"] = TGU_CommandsHandler.SetGroupUltimateStyleCommand SLASH_COMMANDS["/setultimateid"] = TGU_CommandsHandler.SetUltimateIdCommand SLASH_COMMANDS["/setswimlaneid"] = TGU_CommandsHandler.SetSwimlaneIdCommand SLASH_COMMANDS["/getultimategroups"] = TGU_CommandsHandler.GetUltimateGroupsCommand end