-- Configuration Luacheck
std = "lua53"

exclude_files = {
   "**/Libs/**"
   
}

globals = {
    "MultiBot", "GetLocale", "GetSpellInfo", "GetSpellLink", "MultiBotSave", "SendChatMessage", "CreateFrame", "UIParent",
    "MultiBotGlobalSave", "DEFAULT_CHAT_FRAME", "C_Timer_After", "IsInRaid", "GetNumRaidMembers", "IsInGroup", "GetNumPartyMembers",
    "GetNumGroupMembers", "GetNumSubgroupMembers", "lvl", "C_Timer", "UnitClass", "InspectUnit", "InspectFrame", "HideUIPanel",
    "tinsert", "strtrim", "wipe", "UnitName", "GetRealmName", "GameTooltip", "GameTooltip_Hide", "MultiBotDB", "SlashCmdList",
    "GetScreenWidth", "tParts", "tSpace", "strsub", "strlen", "GetNumTalents", "UnitLevel", "IsSpellKnown", "GetInventoryItemLink",
    "iName", "iLink", "iRare", "iMinLevel", "iType", "iSubType", "iStack", "GetItemInfo", "floor", "tIcon", "tBody", "GetMacroInfo",
    "CreateMacro", "PickupMacro", "UnitSex", "UnitRace", "substr", "StaticPopupDialogs", "ACCEPT", "CANCEL", "StaticPopup_Show",
    "MultiBotPVPFrame", "GetItemIcon", "OKAY", "_MB_getIcon", "_MB_applyDesat", "_MB_applyDesatToTexture", "_MB_setDesat", "unpack",
	"CheckInteractDistance", "Minimap", "GetScreenHeight", "GetCursorPosition", "InterfaceOptionsFrame_OpenToCategory", "TimerAfter",
	"UnitExists", "UnitIsPlayer", "GuildRoster", "ShowFriends", "GetNumGuildMembers", "GetGuildRosterInfo", "GetNumFriends", "GetFriendInfo",
	"UnitFactionGroup", "IsUnitOnQuest", "GetNumQuestLogEntries", "GetQuestLink", "YES", "NO", "GetQuestLogTitle", "GetNumQuestLeaderBoards",
	"GetNumQuestLogEntries", "SelectQuestLogEntry", "SetAbandonQuest", "QuestLogPushQuest", "UIErrorsFrame", "SendAll", "CancelTrade", "InitiateTrade",
	"GetNumMacroIcons", "gApply", "GetActiveTalentGroup", "GetTalentInfo", "GetUnspentTalentPoints", "GetTalentLink", "GetCursorInfo", "strsplit",
	"GetSpellTexture", "ClearCursor", "MBHunterPetPreview", "tru", "InterfaceOptionsFrame", "INTERFACEOPTIONS_ADDONCATEGORIES", "InterfaceOptionsFrame_AddCategory",
	"InterfaceOptions_AddCategory", "UIDropDownMenu_JustifyText", "UIDropDownMenu_SetSelectedValue", "UIDropDownMenu_SetButtonWidth", "UIDropDownMenu_SetWidth",
	"UIDropDownMenu_Initialize", "UIDropDownMenu_AddButton", "UIDropDownMenu_CreateInfo", "UIDropDownMenu_SetSelectedID", "SetRaidSubgroup", "GetRaidRosterInfo",
	"MouseIsOver", "UninviteUnit", "UnitInRaid", "UnitInGroup", "GetNumQuestChoices", "GetQuestItemLink", "GetQuestItemInfo", "SwapRaidSubgroup", "WorldMapButton",
	"UnitIsConnected", "event", "arg1", "arg2", "MultiBotSaved", "GetUnitName", "GetTime", "GetNumMacros", "ReloadUI", "GetQuestLogLeaderBoard", "AbandonQuest",
	"GetMacroIconInfo", "GetPlayerInfoByGUID", "UnitGUID", "ConvertToRaid", "HandleQuestsAllResponse", "UnitXPMax", "UnitXP", "UnitManaMax", "UnitMana",
	"GetCurrentMapContinent", "GetCurrentMapAreaID", "SLASH_MULTIBOT1", "SLASH_MULTIBOT2", "SLASH_MULTIBOT3", "SLASH_MULTIBOTOPTIONS1", "SLASH_MBFAKEGM1",
	"SLASH_MBCLASS1", "SLASH_MBCLASSTEST1", "UIDropDownMenu_SetText", "UIDropDownMenu_SetWidth", "UIDropDownMenu_Initialize", "UIDropDownMenu_CreateInfo",
    "UIDropDownMenu_AddButton", "UIDropDownMenu_SetSelectedValue", "time", "isFav", "ToggleDropDownMenu", "LibStub", "securecallfunction", "geterrorhandler", "GAME_LOCALE",
	"oldminor", "GameFontHighlightSmall", "PlaySound", "ChatFontNormal", "C_Spell", "hooksecurefunc", "ChatEdit_InsertLink", "ChatFrameUtil", "hooksecurefunc", "AceGUIMultiLineEditBoxInsertLink",
	"CreateFont", "NOT_BOUND", "IsShiftKeyDown", "IsControlKeyDown", "IsAltKeyDown", "CLOSE", "GameFontDisableSmall", "GameFontNormalSmall", "self", "FONT_COLOR_CODE_CLOSE",
	"AceGUIEditBoxInsertLink", "tconcat", "loadstring", "assert", "rawset", "rawget", "IsLoggedIn", "hash_SlashCmdList", "GetCurrentRegion", "GetCurrentRegionName", "InterfaceOptionsFramePanelContainer",
    "GameFontNormal", "_G", "SetDesaturation", "WOW_PROJECT_ID", "WOW_PROJECT_MAINLINE", "ColorPickerFrame", "fixstrata", "UIDropDownMenu_HandleGlobalMouseEvent", "EventRegistry", "BackdropTemplateMixin",
	"TooltipBackdropTemplateMixin", "NORMAL_FONT_COLOR", "HIGHLIGHT_FONT_COLOR", "GameTooltip_SetDefaultAnchor", "ChatFrame1", "UISpecialFrames", "GetMouseFocus", "ShowUIPanel", "tremove", "min", "max",
	"GetMinimapShape", "GetMinimapShape", "PanelTemplates_TabResize", "GetGuildRosterShowOffline", "SetGuildRosterShowOffline", "IsInGuild", "GetGuildInfo", "SetGuildRosterShowOffline", "PLAYER", "INVENTORY_TOOLTIP",
	"BAGSLOT", "UNKNOWN", "UnitIsDead", "ShowPrompt", "_MB_GetOrCreateShamanPos", "ensureHiddenTooltip", "MB_TAB_TITLE_DEFAULT", "SPELLBOOK", "MB_PAGE_DEFAULT", "SPELLBOOK_END_NON_SPELL_STREAK", "sendInventoryItemCommand",
	"RAID_CLASS_COLORS", "INSPECT", "MB_INVENTORY_LABEL", "LOADING", "ITEM", "ITEMS", "SEARCH", "NO_QUESTS_LABEL", "QUESTS_LABEL", "QUEST_LOG", "UnitIsUnit", "ITEM_STARTS_QUEST", "TRACKER_HEADER_QUESTS",
	"GetItemInfoInstant", "LE_ITEM_CLASS_QUESTITEM", "config", "INV_SLOT_MAINHAND", "INV_SLOT_OFFHAND", "LoadAddOn", "HandleModifiedItemClick", "WorldFrame", "WorldFrame"
}

read_globals = {
   math = {
      fields = {
         atan2 = {}
      }
   }
}

-- Interdire les tabulations
no_tab_indent = true

-- Indentation à 4 espaces
indent_size = 4

-- Options de propreté du code
unused_args = false
unused_vars = false
redefined_vars = false
unused_values = false

-- Interdire les globals implicites
allow_defined_top = false

-- Considérer 'self' comme utilisé automatiquement
self = true

-- Limite de longueur de ligne
max_line_length = 900