You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2341 lines
79 KiB
2341 lines
79 KiB
---@meta
|
|
|
|
--#region TinkrTypes
|
|
|
|
--- Example: "!00038"
|
|
---@alias TinkrObjectManagerId string
|
|
|
|
---@class WowGameObject : userdata
|
|
---@field unit fun(): UnitIds
|
|
---@field guid fun(): string
|
|
---@field id fun(): number | boolean, ...: number|nil
|
|
|
|
---@alias TinkrObjectReference WowGameObject | UnitIds
|
|
|
|
---@alias spellId integer
|
|
|
|
---@enum PathTypes
|
|
local PathTypes = {
|
|
PATHFIND_BLANK = 0x00, -- path not built yet
|
|
PATHFIND_NORMAL = 0x01, -- normal path
|
|
PATHFIND_SHORTCUT = 0x02, -- travel through obstacles, terrain, air, etc (old behavior)
|
|
PATHFIND_INCOMPLETE = 0x04, -- we have partial path to follow - getting closer to target
|
|
PATHFIND_NOPATH = 0x08, -- no valid path at all or error in generating one
|
|
PATHFIND_NOT_USING_PATH = 0x10, -- used when we are either flying/swiming or on map w/o mmaps
|
|
PATHFIND_SHORT = 0x20, -- path is longer or equal to its limited path length
|
|
}
|
|
|
|
---@class Missle
|
|
---@field cx number # current x
|
|
---@field cy number # current y
|
|
---@field cz number # current z
|
|
---@field hx number # hit x
|
|
---@field hy number # hit y
|
|
---@field hz number # hit z
|
|
---@field ix number # init x
|
|
---@field iy number # init y
|
|
---@field iz number # init z
|
|
---@field mx? number # model x
|
|
---@field my? number # model y
|
|
---@field mz? number # model z
|
|
|
|
---@enum SkinType
|
|
local SkinType = {
|
|
HERBALISM = 0x100,
|
|
MINING = 0x200,
|
|
ENGINEERING = 0x8000,
|
|
}
|
|
|
|
--@alias ObjTypes | ObjectTypes.Object | ObjectTypes.Item | ObjectTypes.Container | ObjectTypes.AzeriteEmpoweredItem | ObjectTypes.AzeriteItem | ObjectTypes.Unit | ObjectTypes.Player | ObjectTypes.ActivePlayer | ObjectTypes.GameObject | ObjectTypes.DynamicObject | ObjectTypes.Corpse | ObjectTypes.AreaTrigger | ObjectTypes.SceneObject | ObjectTypes.Conversation | ObjectTypes.AiGroup | ObjectTypes.Scenario | ObjectTypes.Loot | ObjectTypes.Invalid
|
|
|
|
---@alias Position {x: number, y: number, z: number}
|
|
---@alias PositionArray Position[]
|
|
|
|
---@alias HttpGetRequestParams { method: 'GET', url: string, headers?: string[], callback: fun(status: number, res: string) }
|
|
---@alias HttpPostRequestParams { method: 'POST', url: string, fields: { [string]: any }, body?: string, files?: { [string]: string }, headers?: string[], callback: fun(status: number, res: string) }
|
|
|
|
---@enum TinkrCollisionFlags
|
|
local TinkrCollisionFlags = {
|
|
M2Collision = 0x1,
|
|
M2Render = 0x2,
|
|
WMOCollision = 0x10,
|
|
WMORender = 0x20,
|
|
Terrain = 0x100,
|
|
WaterWalkableLiquid = 0x10000,
|
|
Liquid = 0x20000,
|
|
EntityCollision = 0x100000,
|
|
}
|
|
|
|
--#endregion TinkrTypes
|
|
|
|
--#region Tinkr.Util
|
|
|
|
--#region Tinkr.Util.Http
|
|
---@class Tinkr.Util.Http
|
|
local TinkrUtilHttp = {
|
|
---Make a HTTP request
|
|
---@param self Tinkr.Util.Http
|
|
---@param parms HttpGetRequestParams | HttpPostRequestParams
|
|
Request = function(self, parms) end,
|
|
}
|
|
--#endregion Tinkr.Util.Http
|
|
|
|
--#region Tinkr.Util.Commands
|
|
|
|
--#region Tinkr.Util.Commands.New.Register
|
|
---@class Tinkr.Util.Commands.New.Register
|
|
local TinkrUtilCommandsNewRegister = {
|
|
---@param self Tinkr.Util.Commands.New.Register
|
|
---@param command string | string[],
|
|
---@param handler fun(...),
|
|
---@param help string,
|
|
---@param arguments? string[]
|
|
Register = function(self, command, handler, help, arguments) end,
|
|
}
|
|
--#endregion Tinkr.Util.Commands.New.Register
|
|
|
|
---@class Tinkr.Util.Commands
|
|
local TinkrUtilCommands = {
|
|
---Create a new command
|
|
---@param self Tinkr.Util.Commands
|
|
---@param prefix string
|
|
---@return Tinkr.Util.Commands.New.Register
|
|
New = function(self, prefix) end,
|
|
}
|
|
--#endregion Tinkr.Util.Commands
|
|
|
|
--#region Tinkr.Util.GUIBuilder
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Reusable
|
|
---@class Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field key string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Base.Sizable
|
|
---@field width number
|
|
---@field height number
|
|
|
|
---@alias Tinkr.Util.GUIBuilderChildElement Tinkr.Util.GUIBuilder.Element.SimpleGroup.Config | Tinkr.Util.GUIBuilder.Element.Tab.Config | Tinkr.Util.GUIBuilder.Element.Radio.Config | Tinkr.Util.GUIBuilder.Element.ScrollGroup.Config | Tinkr.Util.GUIBuilder.Element.Image.Config | Tinkr.Util.GUIBuilder.Element.TreeBranch.Config | Tinkr.Util.GUIBuilder.Element.Slider.Config | Tinkr.Util.GUIBuilder.Element.Heading.Config | Tinkr.Util.GUIBuilder.Element.Padding.Config | Tinkr.Util.GUIBuilder.Element.Radio.Config | Tinkr.Util.GUIBuilder.Element.Spacer.Config | Tinkr.Util.GUIBuilder.Element.Dropdown.Config | Tinkr.Util.GUIBuilder.Element.EditBox.Config | Tinkr.Util.GUIBuilder.Element.Group.Config | Tinkr.Util.GUIBuilder.Element.TabGroup.Config | Tinkr.Util.GUIBuilder.Element.Window.Config | Tinkr.Util.GUIBuilder.Element.Text.Config | Tinkr.Util.GUIBuilder.Element.Columns.Config | Tinkr.Util.GUIBuilder.Element.Rows.Config | Tinkr.Util.GUIBuilder.Element.HTML.Config | Tinkr.Util.GUIBuilder.Element.ColorPicker.Config | Tinkr.Util.GUIBuilder.Element.TreeGroup.Config
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Base.GroupElement.Options
|
|
---@field content Tinkr.Util.GUIBuilderChildElement[]
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Reusable
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Button
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Button.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field text string
|
|
---@field disabled? boolean
|
|
---@field fullwidth boolean
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Button.Config : Tinkr.Util.GUIBuilder.Element.Button.Options
|
|
---@field type "Button"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Button.Instance : Button
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Button.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Button.Config): Tinkr.Util.GUIBuilder.Element.Button.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Button
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Window
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Window.Options : Tinkr.Util.GUIBuilder.Base.Keyable, Tinkr.Util.GUIBuilder.Base.Sizable, Tinkr.Util.GUIBuilder.Base.GroupElement.Options
|
|
---@field title string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Window.Config : Tinkr.Util.GUIBuilder.Element.Window.Options
|
|
---@field type "Window"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Window.Instance : AceGUIWindow, AceGUIWidget
|
|
---@field Release fun()
|
|
---@field Hide fun()
|
|
---@field Show fun()
|
|
---@field closebutton Tinkr.Util.GUIBuilder.Element.Button.Instance
|
|
---@field SetTitle fun(title: string)
|
|
---@field OnRelease fun()
|
|
---@field OnAcquire fun()
|
|
---@field SetStatusText fun(text: string)
|
|
---@field SetStatusTable fun(status: table)
|
|
---@field ApplyStatus fun()
|
|
---@field OnWidthSet fun(width: number)
|
|
---@field OnHeightSet fun(height: number)
|
|
---@field EnableResize fun(state: boolean)
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Window.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Window.Config): Tinkr.Util.GUIBuilder.Element.Window.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Window
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Text
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Text.Options
|
|
---@field text string
|
|
---@field size? number
|
|
---@field color? string
|
|
---@field font? string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Text.Config : Tinkr.Util.GUIBuilder.Element.Text.Options
|
|
---@field type "Text"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Text.Instance : FontString
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Text.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Text.Config): Tinkr.Util.GUIBuilder.Element.Text.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Text
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Tab
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Tab.Options : Tinkr.Util.GUIBuilder.Base.GroupElement.Options
|
|
---@field title string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Tab.Config : Tinkr.Util.GUIBuilder.Element.Tab.Options
|
|
---@field type "Tab"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Tab.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Tab.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Tab.Config): Tinkr.Util.GUIBuilder.Element.Tab.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Tab
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.TabGroup
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TabGroup.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field tabs Tinkr.Util.GUIBuilder.Element.Tab.Config[]
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TabGroup.Config : Tinkr.Util.GUIBuilder.Element.TabGroup.Options
|
|
---@field type "TabGroup"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TabGroup.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Tab.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Tab.Config): Tinkr.Util.GUIBuilder.Element.Tab.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.TabGroup
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Spacer
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Spacer.Options
|
|
---@field height? number
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Spacer.Config
|
|
---@field type "Spacer"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Spacer.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Tab.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Tab.Config): Tinkr.Util.GUIBuilder.Element.Tab.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Spacer
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Checkbox
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Checkbox.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field label string
|
|
---@field description? string
|
|
---@field tristate? boolean
|
|
---@field default? 'yes' | 'no' | 'half'
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Checkbox.Config : Tinkr.Util.GUIBuilder.Element.Checkbox.Options
|
|
---@field type "Checkbox"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Checkbox.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Checkbox.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Checkbox.Config): Tinkr.Util.GUIBuilder.Element.Checkbox.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Checkbox
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Radio
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Radio.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field stacked? boolean
|
|
---@field values string[]
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Radio.Config : Tinkr.Util.GUIBuilder.Element.Radio.Options
|
|
---@field type "Radio"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Radio.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Radio.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Radio.Config): Tinkr.Util.GUIBuilder.Element.Radio.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Radio
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Group
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Group.Options : Tinkr.Util.GUIBuilder.Base.GroupElement.Options
|
|
---@field title string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Group.Config : Tinkr.Util.GUIBuilder.Element.Group.Options
|
|
---@field type "Group"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Group.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Group.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Group.Config): Tinkr.Util.GUIBuilder.Element.Group.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Group
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.EditBox
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.EditBox.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field label string
|
|
---@field description? string
|
|
---@field placeholder? string
|
|
---@field button? boolean
|
|
---@field multiline? boolean
|
|
---@field lines? number
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.EditBox.Config : Tinkr.Util.GUIBuilder.Element.EditBox.Options
|
|
---@field type "EditBox"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.EditBox.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.EditBox.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.EditBox.Config): Tinkr.Util.GUIBuilder.Element.EditBox.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.EditBox
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Dropdown
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Dropdown.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field label string
|
|
---@field description? string
|
|
---@field default? string
|
|
---@field values string[]
|
|
---@field multi? boolean
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Dropdown.Config : Tinkr.Util.GUIBuilder.Element.Dropdown.Options
|
|
---@field type "Dropdown"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Dropdown.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Dropdown.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Dropdown.Config): Tinkr.Util.GUIBuilder.Element.Dropdown.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Dropdown
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Padding
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Padding.Options : Tinkr.Util.GUIBuilder.Base.Keyable, Tinkr.Util.GUIBuilder.Base.GroupElement.Options
|
|
---@field padding number
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Padding.Config : Tinkr.Util.GUIBuilder.Element.Padding.Options
|
|
---@field type "Padding"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Padding.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Padding.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Padding.Config): Tinkr.Util.GUIBuilder.Element.Padding.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Padding
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Rows
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Rows.Options
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Rows.Config : Tinkr.Util.GUIBuilder.Element.Rows.Options
|
|
---@field type "Rows"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Rows.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Rows.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Rows.Config): Tinkr.Util.GUIBuilder.Element.Rows.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Rows
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Columns
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Columns.Options
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Columns.Config : Tinkr.Util.GUIBuilder.Element.Columns.Options
|
|
---@field type "Columns"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Columns.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Columns.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Columns.Config): Tinkr.Util.GUIBuilder.Element.Columns.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Columns
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Image
|
|
---@class Tinkr.Util.GUIBuilder.Element.Image.Options : Tinkr.Util.GUIBuilder.Base.Sizable
|
|
---@field image string
|
|
---@field fit? boolean
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Image.Config : Tinkr.Util.GUIBuilder.Element.Image.Options
|
|
---@field type "Image"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Image.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Image.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Image.Config): Tinkr.Util.GUIBuilder.Element.Image.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Image
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.TreeBranch
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeBranch.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field title string
|
|
---@field icon number
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeBranch.Config : Tinkr.Util.GUIBuilder.Element.TreeBranch.Options
|
|
---@field type "TreeBranch"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeBranch.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeBranch.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.TreeBranch.Config): Tinkr.Util.GUIBuilder.Element.TreeBranch.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.TreeBranch
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.TreeGroup
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeGroup.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field branches Tinkr.Util.GUIBuilder.Element.TreeBranch.Config[]
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeGroup.Config : Tinkr.Util.GUIBuilder.Element.TreeGroup.Options
|
|
---@field type "TreeGroup"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeGroup.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.TreeGroup.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.TreeGroup.Config): Tinkr.Util.GUIBuilder.Element.TreeGroup.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.TreeGroup
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Slider
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Slider.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field label string
|
|
---@field description? string
|
|
---@field min? number
|
|
---@field max? number
|
|
---@field step? number
|
|
---@field default? number
|
|
---@field percent? boolean
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Slider.Config : Tinkr.Util.GUIBuilder.Element.Slider.Options
|
|
---@field type "Slider"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Slider.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Slider.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Slider.Config): Tinkr.Util.GUIBuilder.Element.Slider.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Slider
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.ColorPicker
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ColorPicker.Options : Tinkr.Util.GUIBuilder.Base.Keyable
|
|
---@field label string
|
|
---@field description? string
|
|
---@field alpha? boolean
|
|
---@field default? string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ColorPicker.Config : Tinkr.Util.GUIBuilder.Element.ColorPicker.Options
|
|
---@field type "ColorPicker"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ColorPicker.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ColorPicker.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.ColorPicker.Config): Tinkr.Util.GUIBuilder.Element.ColorPicker.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.ColorPicker
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.SimpleGroup
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.SimpleGroup.Options
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.SimpleGroup.Config : Tinkr.Util.GUIBuilder.Element.SimpleGroup.Options
|
|
---@field type "SimpleGroup"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.SimpleGroup.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.SimpleGroup.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.SimpleGroup.Config): Tinkr.Util.GUIBuilder.Element.SimpleGroup.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.SimpleGroup
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.Heading
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Heading.Options : string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Heading.Config : Tinkr.Util.GUIBuilder.Element.Heading.Options
|
|
---@field text string
|
|
---@field type "Heading"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Heading.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Heading.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.Heading.Config): Tinkr.Util.GUIBuilder.Element.Heading.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.Heading
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.ScrollGroup
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ScrollGroup.Options : Tinkr.Util.GUIBuilder.Base.GroupElement.Options
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ScrollGroup.Config : Tinkr.Util.GUIBuilder.Element.ScrollGroup.Options
|
|
---@field type "ScrollGroup"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ScrollGroup.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.ScrollGroup.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.ScrollGroup.Config): Tinkr.Util.GUIBuilder.Element.ScrollGroup.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.ScrollGroup
|
|
|
|
--#region Tinkr.Util.GUIBuilder.Element.HTML
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.HTML.Options : string
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.HTML.Config
|
|
---@field html string
|
|
---@field type "HTML"
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.HTML.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.HTML.Factory
|
|
---@overload fun(self: Tinkr.Util.GUIBuilder, options: Tinkr.Util.GUIBuilder.Element.HTML.Config): Tinkr.Util.GUIBuilder.Element.HTML.Instance
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder.Element.HTML
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Listener
|
|
---@field to_source boolean
|
|
---@field callback fun()
|
|
|
|
---@class Tinkr.Util.GUIBuilder
|
|
local GUIBuilder = {
|
|
---@param self Tinkr.Util.GUIBuilder
|
|
Factory = function(self) end,
|
|
|
|
---@param self Tinkr.Util.GUIBuilder
|
|
---@param config { config: string }
|
|
---@return Tinkr.Util.GUIBuilder.Instance
|
|
New = function(self, config) end,
|
|
|
|
---@param self Tinkr.Util.GUIBuilder
|
|
---@param name string
|
|
---@param factoryFunc fun(self: Tinkr.Util.GUIBuilder, options: table): Tinkr.Util.GUIBuilderChildElement
|
|
RegisterElementFactory = function(self, name, factoryFunc) end,
|
|
}
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Instance
|
|
local GUIBuilderInstance = {
|
|
---@param self Tinkr.Util.GUIBuilder.Instance
|
|
---@param config Tinkr.Util.GUIBuilder.Builder.Config
|
|
---@return Tinkr.Util.GUIBuilder.Element.Window.Instance
|
|
Build = function(self, config) end,
|
|
|
|
---@generic D
|
|
---@param self Tinkr.Util.GUIBuilder.Instance
|
|
---@param key string
|
|
---@param default? D | any
|
|
---@return D
|
|
GetConfig = function(self, key, default) end,
|
|
}
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Element.Factory
|
|
---@field Button fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Button.Config): Tinkr.Util.GUIBuilder.Element.Button.Instance
|
|
---@field Checkbox fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Checkbox.Config): Tinkr.Util.GUIBuilder.Element.Checkbox.Instance
|
|
---@field ColorPicker fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.ColorPicker.Config): Tinkr.Util.GUIBuilder.Element.ColorPicker.Instance
|
|
---@field Columns fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Columns.Config): Tinkr.Util.GUIBuilder.Element.Columns.Instance
|
|
---@field Dropdown fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Dropdown.Config): Tinkr.Util.GUIBuilder.Element.Dropdown.Instance
|
|
---@field EditBox fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.EditBox.Config): Tinkr.Util.GUIBuilder.Element.EditBox.Instance
|
|
---@field Group fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Group.Config): Tinkr.Util.GUIBuilder.Element.Group.Instance
|
|
---@field HTML fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.HTML.Config): Tinkr.Util.GUIBuilder.Element.HTML.Instance
|
|
---@field Heading fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Heading.Config): Tinkr.Util.GUIBuilder.Element.Heading.Instance
|
|
---@field Image fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Image.Config): Tinkr.Util.GUIBuilder.Element.Image.Instance
|
|
---@field Padding fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Padding.Config): Tinkr.Util.GUIBuilder.Element.Padding.Instance
|
|
---@field Radio fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Radio.Config): Tinkr.Util.GUIBuilder.Element.Radio.Instance
|
|
---@field Rows fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Rows.Config): Tinkr.Util.GUIBuilder.Element.Rows.Instance
|
|
---@field ScrollGroup fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.ScrollGroup.Config): Tinkr.Util.GUIBuilder.Element.ScrollGroup.Instance
|
|
---@field SimpleGroup fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.SimpleGroup.Config): Tinkr.Util.GUIBuilder.Element.SimpleGroup.Instance
|
|
---@field Slider fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Slider.Config): Tinkr.Util.GUIBuilder.Element.Slider.Instance
|
|
---@field Spacer fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Spacer.Config): Tinkr.Util.GUIBuilder.Element.Spacer.Instance
|
|
---@field TabGroup fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.TabGroup.Config): Tinkr.Util.GUIBuilder.Element.TabGroup.Instance
|
|
---@field Text fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Text.Config): Tinkr.Util.GUIBuilder.Element.Text.Instance
|
|
---@field TreeGroup fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.TreeGroup.Config): Tinkr.Util.GUIBuilder.Element.TreeGroup.Instance
|
|
---@field Window fun(self: Tinkr.Util.GUIBuilder.Instance, config: Tinkr.Util.GUIBuilder.Element.Window.Config): Tinkr.Util.GUIBuilder.Element.Window.Instance
|
|
|
|
---@class Tinkr.Util.GUIBuilder.Instance : Tinkr.Util.GUIBuilder
|
|
---@field Button fun(self: Tinkr.Util.GUIBuilder.Instance, buttonOptions: Tinkr.Util.GUIBuilder.Element.Button.Options): Tinkr.Util.GUIBuilder.Element.Button.Config
|
|
---@field Checkbox fun(self: Tinkr.Util.GUIBuilder.Instance, checkboxOptions: Tinkr.Util.GUIBuilder.Element.Checkbox.Options): Tinkr.Util.GUIBuilder.Element.Checkbox.Config
|
|
---@field ColorPicker fun(self: Tinkr.Util.GUIBuilder.Instance, colorPickerOptions: Tinkr.Util.GUIBuilder.Element.ColorPicker.Options): Tinkr.Util.GUIBuilder.Element.ColorPicker.Config
|
|
---@field Columns fun(self: Tinkr.Util.GUIBuilder.Instance, columnsOptions: Tinkr.Util.GUIBuilder.Element.Columns.Options): Tinkr.Util.GUIBuilder.Element.Columns.Config
|
|
---@field Dropdown fun(self: Tinkr.Util.GUIBuilder.Instance, dropdownOptions: Tinkr.Util.GUIBuilder.Element.Dropdown.Options): Tinkr.Util.GUIBuilder.Element.Dropdown.Config
|
|
---@field EditBox fun(self: Tinkr.Util.GUIBuilder.Instance, editBoxOptions: Tinkr.Util.GUIBuilder.Element.EditBox.Options): Tinkr.Util.GUIBuilder.Element.EditBox.Config
|
|
---@field Emit fun(self: Tinkr.Util.GUIBuilder.Instance, key: string, value: any, toSource?: boolean)
|
|
---@field Group fun(self: Tinkr.Util.GUIBuilder.Instance, groupOptions: Tinkr.Util.GUIBuilder.Element.Group.Options): Tinkr.Util.GUIBuilder.Element.Group.Config
|
|
---@field HTML fun(self: Tinkr.Util.GUIBuilder.Instance, htmlOptions: Tinkr.Util.GUIBuilder.Element.HTML.Options): Tinkr.Util.GUIBuilder.Element.HTML.Config
|
|
---@field Heading fun(self: Tinkr.Util.GUIBuilder.Instance, headingOptions: Tinkr.Util.GUIBuilder.Element.Heading.Options): Tinkr.Util.GUIBuilder.Element.Heading.Config
|
|
---@field Image fun(self: Tinkr.Util.GUIBuilder.Instance, imageOptions: Tinkr.Util.GUIBuilder.Element.Image.Options): Tinkr.Util.GUIBuilder.Element.Image.Config
|
|
---@field Listen fun(self: Tinkr.Util.GUIBuilder.Instance, key: string, callback: fun(key: string, value: any)): Tinkr.Util.GUIBuilder.Listener
|
|
---@field Padding fun(self: Tinkr.Util.GUIBuilder.Instance, paddingOptions: Tinkr.Util.GUIBuilder.Element.Padding.Options): Tinkr.Util.GUIBuilder.Element.Padding.Config
|
|
---@field Radio fun(self: Tinkr.Util.GUIBuilder.Instance, radioOptions: Tinkr.Util.GUIBuilder.Element.Radio.Options): Tinkr.Util.GUIBuilder.Element.Radio.Config
|
|
---@field ReadConfig fun(self: Tinkr.Util.GUIBuilder.Instance, name: string, default?: any): any
|
|
---@field RemoveListener fun(self: Tinkr.Util.GUIBuilder.Instance, key: string, listener: Tinkr.Util.GUIBuilder.Listener)
|
|
---@field Rows fun(self: Tinkr.Util.GUIBuilder.Instance, rowsOptions: Tinkr.Util.GUIBuilder.Element.Rows.Options): Tinkr.Util.GUIBuilder.Element.Rows.Config
|
|
---@field ScrollGroup fun(self: Tinkr.Util.GUIBuilder.Instance, scrollGroupOptions: Tinkr.Util.GUIBuilder.Element.ScrollGroup.Options): Tinkr.Util.GUIBuilder.Element.ScrollGroup.Config
|
|
---@field SetConfig fun(self: Tinkr.Util.GUIBuilder.Instance, name: string)
|
|
---@field SimpleGroup fun(self: Tinkr.Util.GUIBuilder.Instance, simpleGroupOptions: Tinkr.Util.GUIBuilder.Element.SimpleGroup.Options): Tinkr.Util.GUIBuilder.Element.SimpleGroup.Config
|
|
---@field Slider fun(self: Tinkr.Util.GUIBuilder.Instance, sliderOptions: Tinkr.Util.GUIBuilder.Element.Slider.Options): Tinkr.Util.GUIBuilder.Element.Slider.Config
|
|
---@field Spacer fun(self: Tinkr.Util.GUIBuilder.Instance, spacerOptions: Tinkr.Util.GUIBuilder.Element.Spacer.Options): Tinkr.Util.GUIBuilder.Element.Spacer.Config
|
|
---@field Tab fun(self: Tinkr.Util.GUIBuilder.Instance, tabOptions: Tinkr.Util.GUIBuilder.Element.Tab.Options): Tinkr.Util.GUIBuilder.Element.Tab.Config
|
|
---@field TabGroup fun(self: Tinkr.Util.GUIBuilder.Instance, tabGroupOptions: Tinkr.Util.GUIBuilder.Element.TabGroup.Options): Tinkr.Util.GUIBuilder.Element.TabGroup.Config
|
|
---@field Text fun(self: Tinkr.Util.GUIBuilder.Instance, textOptions: Tinkr.Util.GUIBuilder.Element.Text.Options | string): Tinkr.Util.GUIBuilder.Element.Text.Config
|
|
---@field TreeBranch fun(self: Tinkr.Util.GUIBuilder.Instance, treeBranchOptions: Tinkr.Util.GUIBuilder.Element.TreeBranch.Options): Tinkr.Util.GUIBuilder.Element.TreeBranch.Config
|
|
---@field TreeGroup fun(self: Tinkr.Util.GUIBuilder.Instance, treeGroupOptions: Tinkr.Util.GUIBuilder.Element.TreeGroup.Options): Tinkr.Util.GUIBuilder.Element.TreeGroup.Config
|
|
---@field validate fun(self: Tinkr.Util.GUIBuilder.Instance, options: string[])
|
|
---@field validateRule fun(self: Tinkr.Util.GUIBuilder.Instance, options: string[], rule: string, value: any): boolean
|
|
---@field Window fun(self: Tinkr.Util.GUIBuilder.Instance, windowOptions: Tinkr.Util.GUIBuilder.Element.Window.Options): Tinkr.Util.GUIBuilder.Element.Window.Config
|
|
---@field WriteConfig fun(self: Tinkr.Util.GUIBuilder.Instance, name: string, value: any)
|
|
---@field atomic table
|
|
---@field config Tinkr.Util.Config.Instance
|
|
---@field key string
|
|
---@field keys { [string]: boolean }
|
|
---@field listeners { [string]: Tinkr.Util.GUIBuilder.Listener[] }
|
|
---@field elements Tinkr.Util.GUIBuilder.Element.Factory
|
|
|
|
---@alias Tinkr.Util.GUIBuilder.Builder.Config Tinkr.Util.GUIBuilder.Element.Window.Config
|
|
|
|
--#endregion Tinkr.Util.GUIBuilder
|
|
|
|
--#region Tinkr.Util.Common
|
|
---@class Tinkr.Util.Common
|
|
local TinkrUtilCommon = {
|
|
HitFlags = TinkrCollisionFlags,
|
|
|
|
---@param number number
|
|
---@param decimals number
|
|
---@return number
|
|
Round = function(number, decimals) end,
|
|
|
|
---@param x number
|
|
---@param y number
|
|
---@param hitFlags CollisionFlags
|
|
---@return number x, number y, number z
|
|
ScreenToWorld = function(x, y, hitFlags) end,
|
|
|
|
---@param length number
|
|
---@return string
|
|
RandomVariable = function(length) end,
|
|
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param z1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@param z2 number
|
|
---@return number
|
|
GetAnglesBetweenPositions = function(x1, y1, z1, x2, y2, z2) end,
|
|
}
|
|
--#endregion Tinkr.Util.Common
|
|
|
|
--#region Tinkr.Util.Config
|
|
|
|
--#region Tinkr.Util.Config.Instance
|
|
---@class Tinkr.Util.Config.Instance : Tinkr.Util.Config
|
|
---@field data table
|
|
---@field file string
|
|
|
|
--#endregion Tinkr.Util.Config.Instance
|
|
|
|
---@class Tinkr.Util.Config
|
|
---@field New fun(self: Tinkr.Util.Config, name: string): Tinkr.Util.Config.Instance
|
|
---@field Read fun(self: Tinkr.Util.Config.Instance, key: string, default: any): any
|
|
---@field Sync fun(self: Tinkr.Util.Config.Instance, key: string)
|
|
---@field Write fun(self: Tinkr.Util.Config.Instance, key: string, value: any)
|
|
|
|
--#endregion Tinkr.Util.Config
|
|
|
|
--#region Tinkr.Util.Crypto
|
|
|
|
--#region Tinkr.Util.Crypto.AES
|
|
---@class Tinkr.Util.Crypto.AES
|
|
local TinkrUtilCryptoAES = {
|
|
---@param self Tinkr.Util.Crypto.AES
|
|
---@return string
|
|
IV = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.AES
|
|
---@param input string
|
|
---@param key string
|
|
---@param iv string
|
|
---@return string
|
|
Encrypt = function(self, input, key, iv) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.AES
|
|
---@param input string
|
|
---@param key string
|
|
---@param iv string
|
|
---@return string
|
|
Decrypt = function(self, input, key, iv) end,
|
|
}
|
|
--#endregion Tinkr.Util.Crypto.AES
|
|
|
|
--#region Tinkr.Util.Crypto.Hash
|
|
---@class Tinkr.Util.Crypto.Hash
|
|
local TinkrUtilCryptoHash = {
|
|
---@param self Tinkr.Util.Crypto.Hash
|
|
---@param input string
|
|
---@return string
|
|
MD5 = function(self, input) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.Hash
|
|
---@param input string
|
|
---@return string
|
|
SHA1 = function(self, input) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.Hash
|
|
---@param input string
|
|
---@return string
|
|
SHA2 = function(self, input) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.Hash
|
|
---@param input string
|
|
---@return string
|
|
SHA256 = function(self, input) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.Hash
|
|
---@param input string
|
|
---@return string
|
|
SHA3 = function(self, input) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.Hash
|
|
---@param algo HMacHashType
|
|
---@param input string
|
|
---@param key string
|
|
---@return string
|
|
HMAC = function(self, algo, input, key) end,
|
|
}
|
|
--#endregion Tinkr.Util.Crypto.Hash
|
|
|
|
--#region Tinkr.Util.Crypto.Base64
|
|
---@class Tinkr.Util.Crypto.Base64
|
|
local TinkrUtilCryptoBase64 = {
|
|
---@param self Tinkr.Util.Crypto.Base64
|
|
---@param input string
|
|
---@return string
|
|
Encode = function(self, input) end,
|
|
|
|
---@param self Tinkr.Util.Crypto.Base64
|
|
---@param input string
|
|
---@return string
|
|
Decode = function(self, input) end,
|
|
}
|
|
--#endregion Tinkr.Util.Crypto.Base64
|
|
|
|
---@class Tinkr.Util.Crypto
|
|
local TinkrUtilCrypto = {
|
|
---@type Tinkr.Util.Crypto.AES
|
|
AES = {},
|
|
---@type Tinkr.Util.Crypto.Hash
|
|
Hash = {},
|
|
---@type Tinkr.Util.Crypto.Base64
|
|
Base64 = {},
|
|
}
|
|
--#endregion Tinkr.Util.Crypto
|
|
|
|
--#region Tinkr.Util.Modules
|
|
|
|
--#region Tinkr.Util.Modules.Detour
|
|
---@class Tinkr.Util.Modules.Detour
|
|
local TinkrUtilModulesDetour = {
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param path Position[]
|
|
---@return Position[]
|
|
SmoothPath = function(self, path) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param path Position[]
|
|
---@return Position[]
|
|
FlattenPath = function(self, path) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param path Position[]
|
|
---@return Position[]
|
|
PreparePath = function(self, path) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param object TinkrObjectReference
|
|
---@return Position[]
|
|
ToObject = function(self, object) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@return Position[]
|
|
ToPosition = function(self, x, y, z) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param startX number
|
|
---@param startY number
|
|
---@param startZ number
|
|
---@param destX number
|
|
---@param destY number
|
|
---@param destZ number
|
|
---@return Position[]
|
|
Raw = function(self, startX, startY, startZ, destX, destY, destZ) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param route Position[]
|
|
---@param close Position
|
|
---@return Position[]
|
|
ConnectWaypoints = function(self, route, close) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param path Position[]
|
|
---@param color string
|
|
DebugPath = function(self, path, color) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Detour
|
|
---@param path Position[]
|
|
---@param color string
|
|
DebugTiles = function(self, path, color) end,
|
|
}
|
|
--#endregion Tinkr.Util.Modules.Detour
|
|
|
|
--#region Tinkr.Util.Modules.Draw
|
|
---@class Tinkr.Util.Modules.Draw
|
|
local TinkrUtilModulesDraw = {
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param size number
|
|
---@param arc number
|
|
---@param rotation number
|
|
Arc = function(self, x, y, z, size, arc, rotation) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param vectors Position[]
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param rotationX number
|
|
---@param rotationY number
|
|
---@param rotationZ number
|
|
Array = function(self, vectors, x, y, z, rotationX, rotationY, rotationZ) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@return number x, number y, number z
|
|
CameraPosition = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param radius number
|
|
---@param steps number
|
|
Circle = function(self, x, y, z, radius, steps) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
ClearCanvas = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param radius number
|
|
---@param height number
|
|
Cylinder = function(self, x, y, z, radius, height) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
DashedLine = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
Disable = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param ax number
|
|
---@param ay number
|
|
---@param az number
|
|
---@param bx number
|
|
---@param by number
|
|
---@param bz number
|
|
---@return number
|
|
Distance = function(self, ax, ay, az, bx, by, bz) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param x2 number
|
|
---@return number
|
|
Distance2D = function(self, x1, y1, x2, y2) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
Draw3DTexture = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
Enable = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@return boolean
|
|
Enabled = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
FilledArc = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param radius number
|
|
FilledCircle = function(self, x, y, z, radius) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
FilledRectangle = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
FilledRectangleOffset = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
FilledRing = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param object TinkrObjectReference
|
|
---@return number r, number g, number b
|
|
GetColorFromObject = function(self, object) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
Helper = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param hex string
|
|
---@return number r, number g, number b
|
|
HexToRGB = function(self, hex) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param z1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@param z2 number
|
|
---@param maxD number
|
|
Line = function(self, x1, y1, z1, x2, y2, z2, maxD) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param sx number
|
|
---@param sy number
|
|
---@param ex number
|
|
---@param ey number
|
|
Line2D = function(self, sx, sy, ex, ey) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param z1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@param z2 number
|
|
LineRaw = function(self, x1, y1, z1, x2, y2, z2) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param value number
|
|
---@param fromLow number
|
|
---@param fromHigh number
|
|
---@param toLow number
|
|
---@param toHigh number
|
|
Map = function(self, value, fromLow, fromHigh, toLow, toHigh) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param canvas? table
|
|
---@return Tinkr.Util.Modules.Draw.Canvas
|
|
New = function(self, canvas) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param radius number
|
|
Outline = function(self, x, y, z, radius) end,
|
|
|
|
ProjectedTexture = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param w number
|
|
---@param l number
|
|
---@param rot number
|
|
Rectangle = function(self, x, y, z, w, l, rot) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param w number
|
|
---@param l number
|
|
---@param rot number
|
|
RectangleOffset = function(self, x, y, z, w, l, rot) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param cx number
|
|
---@param cy number
|
|
---@param cz number
|
|
---@param px number
|
|
---@param py number
|
|
---@param pz number
|
|
---@param r number
|
|
RotateX = function(self, cx, cy, cz, px, py, pz, r) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param cx number
|
|
---@param cy number
|
|
---@param cz number
|
|
---@param px number
|
|
---@param py number
|
|
---@param pz number
|
|
---@param r number
|
|
RotateY = function(self, cx, cy, cz, px, py, pz, r) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param cx number
|
|
---@param cy number
|
|
---@param cz number
|
|
---@param px number
|
|
---@param py number
|
|
---@param pz number
|
|
---@param r number
|
|
RotateZ = function(self, cx, cy, cz, px, py, pz, r) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param a number
|
|
SetAlpha = function(self, a) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param a number
|
|
SetAlphaRaw = function(self, a) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param r number
|
|
---@param g number
|
|
---@param b number
|
|
---@param a number
|
|
SetColor = function(self, r, g, b, a) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param object TinkrObjectReference
|
|
SetColorFromObject = function(self, object) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param r number
|
|
---@param g number
|
|
---@param b number
|
|
---@param a number
|
|
SetColorRaw = function(self, r, g, b, a) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param width number
|
|
SetWidth = function(self, width) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param callback fun(draw: Tinkr.Util.Modules.Draw.Canvas)
|
|
Sync = function(self, callback) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param text string
|
|
---@param font string
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
Text = function(self, text, font, x, y, z) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param config table
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param alphaA number
|
|
Texture = function(self, config, x, y, z, alphaA) end,
|
|
|
|
TracedCircle = function() end,
|
|
|
|
Triangle = function() end,
|
|
Triangle2D = function() end,
|
|
TriangleAbsolut = function() end,
|
|
TriangleAbsolute = function() end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
Update = function(self) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Draw
|
|
---@param wx number
|
|
---@param wy number
|
|
---@param wz number
|
|
WorldToScreen = function(self, wx, wy, wz) end,
|
|
|
|
mixColors = function() end
|
|
}
|
|
|
|
---@class Tinkr.Util.Modules.Draw.Canvas : Tinkr.Util.Modules.Draw
|
|
---@field enabled boolean
|
|
---@field height number
|
|
---@field line_width number
|
|
---@field scale number
|
|
---@field width number
|
|
---@field callbacks fun(self: Tinkr.Util.Modules.Draw.Canvas)[]
|
|
---@field color { [1]: number, [2]: number, [3]: number, [4]: number }
|
|
---@field lines table
|
|
---@field lines_used table
|
|
---@field strings FontString[]
|
|
---@field strings_used FontString[]
|
|
---@field textures Texture[]
|
|
---@field textures_used Texture[]
|
|
---@field triangles table
|
|
---@field triangles_used table
|
|
---@field canvas Frame
|
|
---@field relative Frame
|
|
local TinkrUtilDrawCanvas = {
|
|
|
|
}
|
|
|
|
--#endregion Tinkr.Util.Modules.Draw
|
|
|
|
--#region Tinkr.Util.Modules.Evaluator
|
|
---@class Tinkr.Util.Modules.Evaluator
|
|
local TinkrUtilModulesEvaluator = {
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param length number
|
|
---@return string
|
|
RandomVariable = function(self, length) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param func function
|
|
InjectGlobals = function(self, func) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param file string
|
|
---@param args ...
|
|
LoadEncrypted = function(self, file, args) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param input string
|
|
---@return function
|
|
Load = function(self, input, ...) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param input string
|
|
---@param args any[]
|
|
---@param path string
|
|
---@return ...
|
|
LoadString = function(self, input, args, path) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param func function
|
|
---@param ... any
|
|
CallProtectedFunction = function(self, func, ...) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param buffer string
|
|
---@param args ...
|
|
---@param path string
|
|
LoadEncBuffer = function(self, buffer, args, path) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Evaluator
|
|
---@param global string
|
|
EmplaceGlobals = function(self, global) end,
|
|
}
|
|
--#endregion Tinkr.Util.Modules.Evaluator
|
|
|
|
--#region Tinkr.Util.Modules.Event
|
|
---@class Tinkr.Util.Modules.Event
|
|
local TinkrUtilModulesEvent = {
|
|
|
|
---@param self Tinkr.Util.Modules.Event
|
|
---@param event string
|
|
---@param callback fun(...)
|
|
Register = function(self, event, callback) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Event
|
|
---@param event string
|
|
---@param ... any
|
|
Emit = function(self, event, ...) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Event
|
|
---@param id string
|
|
---@param callback fun(...)
|
|
RemoveListener = function(self, id, callback) end,
|
|
|
|
---@param self Tinkr.Util.Modules.Event
|
|
---@param event string
|
|
---@return number[] ids
|
|
GetListeners = function(self, event) end,
|
|
}
|
|
--#endregion Tinkr.Util.Modules.Event
|
|
|
|
--#region Tinkr.Util.Modules.File
|
|
---@class Tinkr.Util.Modules.File
|
|
local TinkrUtilModulesFile = {
|
|
---List all files in a given directory.
|
|
---@param self Tinkr.Util.Modules.File
|
|
---@param dir string
|
|
---@return string[]
|
|
List = function(self, dir) end,
|
|
|
|
---List all files in a given directory.
|
|
---@param self Tinkr.Util.Modules.File
|
|
---@param dir string
|
|
---@param recurse boolean
|
|
---@return string[]
|
|
ListDirectory = function(self, dir, recurse) end,
|
|
|
|
---Writes the data to a given file.
|
|
---@param self Tinkr.Util.Modules.File
|
|
---@param file string
|
|
---@param data string
|
|
---@param append boolean
|
|
---@return boolean
|
|
Write = function(self, file, data, append) end,
|
|
|
|
---Read the data in a given file.
|
|
---@param self Tinkr.Util.Modules.File
|
|
---@param file string
|
|
---@return string
|
|
Read = function(self, file) end,
|
|
|
|
---Delete the given file.
|
|
---@param self Tinkr.Util.Modules.File
|
|
---@param file string
|
|
---@return string
|
|
Delete = function(self, file) end,
|
|
|
|
---Run the given file.
|
|
---@param self Tinkr.Util.Modules.File
|
|
---@param file string
|
|
---@param args ...
|
|
---@return string
|
|
Run = function(self, file, args) end,
|
|
|
|
---Load the given package.
|
|
---@param self Tinkr.Util.Modules.File
|
|
---@param file string
|
|
---@param args ...
|
|
---@return string
|
|
LoadPackage = function(self, file, args) end,
|
|
}
|
|
--#endregion Tinkr.Util.Modules.File
|
|
|
|
--#region Tinkr.Util.Modules.Fly
|
|
---@class Tinkr.Util.Modules.Fly
|
|
local TinkrUtilModulesFly = {}
|
|
--#endregion Tinkr.Util.Modules.Fly
|
|
|
|
--#region Tinkr.Util.Modules.FrameEvent
|
|
---@class Tinkr.Util.Modules.FrameEvent
|
|
local TinkrUtilModulesFrameEvent = {}
|
|
--#endregion Tinkr.Util.Modules.FrameEvent
|
|
|
|
--#region Tinkr.Util.Modules.HTTP
|
|
---@class Tinkr.Util.Modules.HTTP
|
|
local TinkrUtilModulesHTTP = {}
|
|
--#endregion Tinkr.Util.Modules.HTTP
|
|
|
|
--#region Tinkr.Util.Modules.JSON
|
|
---@class Tinkr.Util.Modules.JSON
|
|
local TinkrUtilModulesJSON = {
|
|
---@param json string
|
|
Decode = function(self, json) end,
|
|
---@param luatable table
|
|
Encode = function(self, luatable) end,
|
|
}
|
|
--#endregion Tinkr.Util.Modules.JSON
|
|
|
|
--#region Tinkr.Util.Modules.LibStub
|
|
---@class Tinkr.Util.Modules.LibStub
|
|
local TinkrUtilModulesLibStub = {}
|
|
--#endregion Tinkr.Util.Modules.LibStub
|
|
|
|
--#region Tinkr.Util.Modules.Movement
|
|
---@class Tinkr.Util.Modules.Movement
|
|
local TinkrUtilModulesMovement = {}
|
|
--#endregion Tinkr.Util.Modules.Movement
|
|
|
|
--#region Tinkr.Util.Modules.ObjectManager
|
|
---@class Tinkr.Util.Modules.ObjectManager
|
|
local TinkrUtilModulesObjectManager = {}
|
|
--#endregion Tinkr.Util.Modules.ObjectManager
|
|
|
|
--#region Tinkr.Util.Modules.Script
|
|
---@class Tinkr.Util.Modules.Script
|
|
local TinkrUtilModulesScript = {}
|
|
--#endregion Tinkr.Util.Modules.Script
|
|
|
|
--#region Tinkr.Util.Modules.Vector3
|
|
---@class Tinkr.Util.Modules.Vector3
|
|
local TinkrUtilModulesVector3 = {}
|
|
--#endregion Tinkr.Util.Modules.Vector3
|
|
|
|
---@class Tinkr.Util.Modules
|
|
local TinkrUtilModules = {
|
|
---@type Tinkr.Util.Modules.Detour
|
|
Detour = {},
|
|
---@type Tinkr.Util.Modules.Draw
|
|
Draw = {},
|
|
---@type Tinkr.Util.Modules.Evaluator
|
|
Evaluator = {},
|
|
---@type Tinkr.Util.Modules.Event
|
|
Event = {},
|
|
---@type Tinkr.Util.Modules.File
|
|
File = {},
|
|
---@type Tinkr.Util.Modules.Fly
|
|
Fly = {},
|
|
---@type Tinkr.Util.Modules.FrameEvent
|
|
FrameEvent = {},
|
|
---@type Tinkr.Util.Modules.HTTP
|
|
HTTP = {},
|
|
---@type Tinkr.Util.Modules.JSON
|
|
JSON = {},
|
|
---@type Tinkr.Util.Modules.LibStub
|
|
LibStub = {},
|
|
---@type Tinkr.Util.Modules.Movement
|
|
Movement = {},
|
|
---@type Tinkr.Util.Modules.ObjectManager
|
|
ObjectManager = {},
|
|
---@type Tinkr.Util.Modules.Script
|
|
Script = {},
|
|
---@type Tinkr.Util.Modules.Vector3
|
|
Vector3 = {},
|
|
}
|
|
--#endregion Tinkr.Util.Modules
|
|
|
|
---@class Tinkr.Util.Class.Static
|
|
---@field allocate fun(self: Tinkr.Util.Class.Instance): Tinkr.Util.Class.Instance
|
|
---@field new fun(self: Tinkr.Util.Class.Instance, ...: any ): Tinkr.Util.Class.Instance | any
|
|
---@field subclass fun(self: Tinkr.Util.Class.Instance, name: string): Tinkr.Util.Class.Instance
|
|
---@field isSubclassOf fun(self: Tinkr.Util.Class.Instance, other: Tinkr.Util.Class.Instance): boolean
|
|
---@field subclassed fun(self: Tinkr.Util.Class.Instance, other: Tinkr.Util.Class.Instance): boolean
|
|
---@field include fun(self: Tinkr.Util.Class.Instance, ...): Tinkr.Util.Class.Instance
|
|
|
|
---@class Tinkr.Util.Class.DefaultMixin
|
|
---@field __tostring fun(self: Tinkr.Util.Class.Instance): string
|
|
---@field initialize fun(self: Tinkr.Util.Class.Instance, ...)
|
|
---@field isInstanceOf fun(self: Tinkr.Util.Class.Instance, aClass: Tinkr.Util.Class.Instance): boolean
|
|
---@field static? Tinkr.Util.Class.Static
|
|
|
|
---@class Tinkr.Util.Class.Instance : Tinkr.Util.Class.DefaultMixin, Tinkr.Util.Class.Static
|
|
---@field name string
|
|
---@field super? Tinkr.Util.Class
|
|
---@field __declaredMethods table<string, function>
|
|
---@field __instanceDict table
|
|
---@field __newindex fun(self: Tinkr.Util.Class.Instance, name: string, f: function)
|
|
---@overload fun()
|
|
|
|
---@class Tinkr.Util.Class
|
|
---@field class fun(self: Tinkr.Util.Class, name: string, super?: Tinkr.Util.Class.Instance): Tinkr.Util.Class.Instance
|
|
---@overload fun(self: Tinkr.Util.Class, name: string, super?: Tinkr.Util.Class.Instance): Tinkr.Util.Class.Instance
|
|
|
|
---@class Tinkr.Util.File
|
|
---@field List fun(self: Tinkr.Util.File, dir: string): string[]
|
|
---@field Read fun(self: Tinkr.Util.File, file: string): string
|
|
|
|
---@class Tinkr.Util.Serialize
|
|
---@field Load fun(self: Tinkr.Util.Serialize, string: string): any
|
|
---@field Serialize fun(self: Tinkr.Util.Serialize, value: any): string
|
|
|
|
---@class Tinkr.Util
|
|
---@field File Tinkr.Util.File
|
|
local TinkrUtil = {
|
|
---@class Tinkr.Util.Class
|
|
Class = {},
|
|
---@type Tinkr.Util.Http
|
|
HTTP = {},
|
|
---@type Tinkr.Util.Modules.Evaluator
|
|
Evaluator = {},
|
|
---@type Tinkr.Util.Commands
|
|
Commands = {},
|
|
---@type Tinkr.Util.Common
|
|
Common = {},
|
|
---@type Tinkr.Util.Config
|
|
Config = {},
|
|
---@type Tinkr.Util.Crypto
|
|
Crypto = {},
|
|
---@type Tinkr.Util.Modules
|
|
Modules = {},
|
|
---@type Tinkr.Util.GUIBuilder
|
|
GUIBuilder = {},
|
|
---@type Tinkr.Util.Modules.Draw
|
|
Draw = {},
|
|
LibStub = LibStub,
|
|
JSON = Tinkr.Util.JSON,
|
|
Serialize = {},
|
|
}
|
|
--#endregion Tinkr.Util
|
|
|
|
--#region Tinkr.FileSystem
|
|
|
|
---@class Tinkr.FileSystem
|
|
local TinkrFileSystem = {
|
|
---Attempts to create a given directory.
|
|
---@param path string
|
|
---@return boolean
|
|
CreateDirectory = function(path) end,
|
|
|
|
---Attempts to create a given directory.
|
|
---@param path string
|
|
---@return boolean
|
|
CreateFolder = function(path) end,
|
|
|
|
---Deletes a file from the system.
|
|
---@param path string
|
|
---@return boolean
|
|
DeleteFile = function(path) end,
|
|
|
|
---Checks if the given directory exists.
|
|
---@param path string
|
|
---@return boolean
|
|
DirectoryExists = function(path) end,
|
|
|
|
---Checks if the given directory exists.
|
|
---@param path string
|
|
---@return boolean
|
|
FolderExists = function(path) end,
|
|
|
|
---Checks if the given file exists.
|
|
---@param path string
|
|
---@return boolean
|
|
FileExists = function(path) end,
|
|
|
|
---List all directories in a given directory.
|
|
---@param path string
|
|
---@return string[]
|
|
ListDirectories = function(path) end,
|
|
|
|
---List all directories in a given directory.
|
|
---@param path string
|
|
---@return string[]
|
|
ListFolders = function(path) end,
|
|
|
|
---List all files in a given directory.
|
|
---@param path string
|
|
---@return string[]
|
|
ListFiles = function(path) end,
|
|
|
|
---List all files in a given zip.
|
|
---@param path string
|
|
---@return string[]
|
|
ListZipEntries = function(path) end,
|
|
|
|
---Reads the contents of a given file.
|
|
---@param path string
|
|
---@return string
|
|
ReadFile = function(path) end,
|
|
|
|
---a given file inside a zip archive.
|
|
---@param zip string
|
|
---@param entry string
|
|
---@return boolean
|
|
ReadZipEntry = function(zip, entry) end,
|
|
|
|
---Writes the data to a given file.
|
|
---@param path string
|
|
---@param data string
|
|
---@param append boolean
|
|
---@return boolean
|
|
WriteFile = function(path, data, append) end,
|
|
|
|
---Loads file and returns the result.
|
|
---@param path string
|
|
---@param ... any
|
|
---@return any ...
|
|
require = function(path, ...) end,
|
|
}
|
|
|
|
CreateDirectory = TinkrFileSystem.CreateDirectory
|
|
CreateFolder = TinkrFileSystem.CreateFolder
|
|
DeleteFile = TinkrFileSystem.DeleteFile
|
|
DirectoryExists = TinkrFileSystem.DirectoryExists
|
|
FolderExists = TinkrFileSystem.FolderExists
|
|
FileExists = TinkrFileSystem.FileExists
|
|
ListDirectories = TinkrFileSystem.ListDirectories
|
|
ListFolders = TinkrFileSystem.ListFolders
|
|
ListFiles = TinkrFileSystem.ListFiles
|
|
ListZipEntries = TinkrFileSystem.ListZipEntries
|
|
ReadFile = TinkrFileSystem.ReadFile
|
|
ReadZipEntry = TinkrFileSystem.ReadZipEntry
|
|
WriteFile = TinkrFileSystem.WriteFile
|
|
require = TinkrFileSystem.require
|
|
|
|
--#endregion Tinkr.FileSystem
|
|
|
|
--#region Tinkr.Interaction
|
|
---@class Tinkr.Interaction
|
|
local TinkrInteraction = {
|
|
---Sends an afk clear packet to the server. This is like typing /afk
|
|
---@return boolean
|
|
ClearAFK = function() end,
|
|
|
|
---Clears the target object.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
ClearNPCObject = function(objectRef) end,
|
|
|
|
---Clears the target object.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
ClearTargetObject = function(objectRef) end,
|
|
|
|
---Clicks the ground at the given position. This is useful for casting spells on the ground.
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
Click = function(x, y, z) end,
|
|
|
|
---Interact with a unit.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
InteractUnit = function(objectRef) end,
|
|
|
|
---Checks if a cursor spell cast is pending.
|
|
---@return number
|
|
IsSpellPending = function() end,
|
|
|
|
---Right click an object.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
LeftClickObject = function(objectRef) end,
|
|
|
|
---Releases an empowered spell.
|
|
---@param spellID spellId
|
|
ReleaseEmpoweredSpell = function(spellID) end,
|
|
|
|
---Right click an object.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
RightClickObject = function(objectRef) end,
|
|
|
|
---Sends a heartbeat packet to the server. This is useful for doing things like disengaging backwards.
|
|
---@return boolean
|
|
SendMovementHeartbeat = function() end,
|
|
|
|
---Sets the mouseover to a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
SetMouseover = function(objectRef) end,
|
|
|
|
---Sets the target object to a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
SetNPCObject = function(objectRef) end,
|
|
|
|
---Sets the target object to a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
SetTargetObject = function(objectRef) end,
|
|
}
|
|
|
|
ClearAFK = TinkrInteraction.ClearAFK
|
|
ClearNPCObject = TinkrInteraction.ClearNPCObject
|
|
ClearTargetObject = TinkrInteraction.ClearTargetObject
|
|
Click = TinkrInteraction.Click
|
|
InteractUnit = TinkrInteraction.InteractUnit
|
|
IsSpellPending = TinkrInteraction.IsSpellPending
|
|
LeftClickObject = TinkrInteraction.LeftClickObject
|
|
ReleaseEmpoweredSpell = TinkrInteraction.ReleaseEmpoweredSpell
|
|
RightClickObject = TinkrInteraction.RightClickObject
|
|
SendMovementHeartbeat = TinkrInteraction.SendMovementHeartbeat
|
|
SetMouseover = TinkrInteraction.SetMouseover
|
|
SetNPCObject = TinkrInteraction.SetNPCObject
|
|
SetTargetObject = TinkrInteraction.SetTargetObject
|
|
|
|
--#endregion Tinkr.Interaction
|
|
|
|
--#region Tinkr.Movement
|
|
---@class Tinkr.Movement
|
|
local TinkrMovement = {
|
|
---Returns the position of the camera.
|
|
---@return number x, number y, number z
|
|
CameraPosition = function() end,
|
|
---Face the player in the direction given (in radians).
|
|
---@param dir number
|
|
---@param update boolean
|
|
FaceDirection = function(dir, update) end,
|
|
---Face the player at a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
FaceObject = function(objectRef) end,
|
|
---GeneratePath a path between two positions for the given map ID.
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param z1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@param z2 number
|
|
---@param mapId integer
|
|
---@return PositionArray path, PathTypes pathType
|
|
GeneratePath = function(x1, y1, z1, x2, y2, z2, mapId) end,
|
|
---GeneratePath a path between two positions for the given map ID, attaching an extra weight to each poly edge examined.
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param z1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@param z2 number
|
|
---@param mapId integer
|
|
---@param weightCalc fun(ax: number, ay: number, az: number, bx: number, by: number, bz: number): number
|
|
---@return PositionArray path
|
|
GeneratePathWeighted = function(x1, y1, z1, x2, y2, z2, mapId, weightCalc) end,
|
|
---Returns the current area info.
|
|
---@return { continentID: integer, areaID: integer, parentAreaID: integer }
|
|
GetAreaInfo = function() end,
|
|
---Returns the position of the players corpse.
|
|
---@return number x, number y, number z
|
|
GetCorpsePosition = function() end,
|
|
---Returns the position of the players corpse.
|
|
---@return number x, number y, number z
|
|
GetCorpseLocation = function() end,
|
|
---Returns the current mapID for use with GeneratePath.
|
|
---@return integer
|
|
GetMapID = function() end,
|
|
---Get the players current pitch
|
|
---@return number
|
|
GetPitch = function() end,
|
|
---Click to Move to a given position.
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
MoveTo = function(x, y, z) end,
|
|
---Click to Move to a raw position ignoring transport world relativity
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
MoveToRaw = function(x, y, z) end,
|
|
---Set your players rotation instantly to face a direction using the games input controller
|
|
---@param theta number
|
|
SetHeading = function(theta) end,
|
|
---Set your players rotation instantly to face a direction using the games input controller
|
|
---@param theta number
|
|
SetPitch = function(theta) end,
|
|
}
|
|
|
|
CameraPosition = TinkrMovement.CameraPosition
|
|
FaceDirection = TinkrMovement.FaceDirection
|
|
FaceObject = TinkrMovement.FaceObject
|
|
GeneratePath = TinkrMovement.GeneratePath
|
|
GeneratePathWeighted = TinkrMovement.GeneratePathWeighted
|
|
GetAreaInfo = TinkrMovement.GetAreaInfo
|
|
GetCorpseLocation = TinkrMovement.GetCorpseLocation
|
|
GetCorpsePosition = TinkrMovement.GetCorpsePosition
|
|
GetMapID = TinkrMovement.GetMapID
|
|
GetPitch = TinkrMovement.GetPitch
|
|
MoveTo = TinkrMovement.MoveTo
|
|
MoveToRaw = TinkrMovement.MoveToRaw
|
|
SetHeading = TinkrMovement.SetHeading
|
|
SetPitch = TinkrMovement.SetPitch
|
|
|
|
--#endregion Tinkr.Movement
|
|
|
|
--#region Tinkr.Objects
|
|
---@class Tinkr.Objects
|
|
local TinkrObjects = {
|
|
---Returns the spellID of a WowGameObject representation of an Area Trigger
|
|
---@param objectRef TinkrObjectReference
|
|
---@return { spellID1: number, spellID2: number } | false
|
|
AreaTriggerSpell = function(objectRef) end,
|
|
|
|
---Returns the gameobject type of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return ObjectType | false
|
|
GameObjectType = function(objectRef) end,
|
|
|
|
---Gets a list of all Missiles.
|
|
---@return Missle[]
|
|
Missiles = function() end,
|
|
|
|
---Gets a single object.
|
|
---@param unitId TinkrObjectReference
|
|
---@return WowGameObject | false
|
|
Object = function(unitId) end,
|
|
|
|
---Get an objects hidden aura
|
|
---@param objectRef TinkrObjectReference
|
|
---@param index integer
|
|
---@return string name, number icon, number count, (DispelType | nil) displType, number duration, number expirationTime, UnitId source, boolean isStealable, boolean nameplateShowPersonal, spellId spellId, boolean canApplyAura, boolean isBossDebuff, boolean castByPlayer, boolean nameplateShowAll, number timeMod
|
|
---@overload fun(objectRef: TinkrObjectReference, index: integer): nil
|
|
ObjectAura = function(objectRef, index) end,
|
|
|
|
---Returns the bounding radius of a WowGameObject in radians.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number | false
|
|
ObjectBoundingRadius = function(objectRef) end,
|
|
|
|
---Returns the casting and channeling spell of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number[] | false
|
|
ObjectCastingInfo = function(objectRef) end,
|
|
|
|
---Returns a WowGameObject representing the destination for a units current spell cast.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return WowGameObject | false
|
|
ObjectCastingTarget = function(objectRef) end,
|
|
|
|
---Returns the combat reach of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number | false
|
|
ObjectCombatReach = function(objectRef) end,
|
|
|
|
---Returns the creator of the WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return TinkrObjectReference | false
|
|
ObjectCreator = function(objectRef) end,
|
|
|
|
---Returns the creature type of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return UnitCreatureType | false
|
|
ObjectCreatureType = function(objectRef) end,
|
|
|
|
---Returns the distance between two WowGameObject's.
|
|
---@param fromObjectRef TinkrObjectReference
|
|
---@param toObjectRef TinkrObjectReference
|
|
---@return number | false
|
|
ObjectDistance = function(fromObjectRef, toObjectRef) end,
|
|
|
|
---Returns the flags of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number flags1, number flags2, number flags3, number flags4, number unitFlags1, number unitFlags2, number dynamicFlags
|
|
---@overload fun(objectRef: TinkrObjectReference): false
|
|
ObjectFlags = function(objectRef) end,
|
|
|
|
---Returns the GUID of a WowGameObject. This is equal to UnitGUID but supports any object
|
|
---@param objectRef TinkrObjectReference
|
|
---@return string | false
|
|
ObjectGUID = function(objectRef) end,
|
|
|
|
---Returns the hight of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number | false
|
|
ObjectHeight = function(objectRef) end,
|
|
|
|
---Returns the NPC ID of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return (number | boolean), (number?) ...
|
|
ObjectID = function(objectRef) end,
|
|
|
|
---Check if a WowGameObject is outside (AKA not in a cave).
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
ObjectIsOutdoors = function(objectRef) end,
|
|
|
|
---Check if a WowGameObject is submerged (AKA in the water).
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
ObjectIsSubmerged = function(objectRef) end,
|
|
|
|
---Returns if a WowGameObject is lootable or not.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
ObjectLootable = function(objectRef) end,
|
|
|
|
---Returns the current movement state of a Unit
|
|
---@param objectRef TinkrObjectReference
|
|
---@return MovementFlags
|
|
ObjectMovementFlag = function(objectRef) end,
|
|
|
|
---Returns the objectReference that the WowGameObject is moving on.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return TinkrObjectReference | false
|
|
ObjectMover = function(objectRef) end,
|
|
|
|
---Returns the name of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return string | false
|
|
ObjectName = function(objectRef) end,
|
|
|
|
---Returns the position of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number x, number y, number z
|
|
ObjectPosition = function(objectRef) end,
|
|
|
|
---Returns the raw position of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number x, number y, number z
|
|
ObjectRawPosition = function(objectRef) end,
|
|
|
|
---Returns the raw rotation of a WowGameObject in radians.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number | false
|
|
ObjectRawRotation = function(objectRef) end,
|
|
|
|
---Returns the rotation of a WowGameObject in radians.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number | false
|
|
ObjectRotation = function(objectRef) end,
|
|
|
|
---Returns if a WowGameObject is skinned or not.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
ObjectSkinnable = function(objectRef) end,
|
|
|
|
---Returns the skinning type of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return SkinType | false
|
|
ObjectSkinningType = function(objectRef) end,
|
|
|
|
---Returns the spec ID of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number | false
|
|
ObjectSpecializationID = function(objectRef) end,
|
|
|
|
---Returns the type of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return ObjectType | false
|
|
ObjectType = function(objectRef) end,
|
|
|
|
---@param objectRef TinkrObjectReference
|
|
---@return string
|
|
ObjectUnit = function(objectRef) end,
|
|
|
|
---Returns a WowGameObject representing the current target of an object.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return WowGameObject | false
|
|
ObjectTarget = function(objectRef) end,
|
|
|
|
---Returns the world position of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number x, number y, number z
|
|
ObjectWorldPosition = function(objectRef) end,
|
|
|
|
---Gets a list of all objects.
|
|
---@param filterTypeId? ObjectType
|
|
---@return WowGameObject[]
|
|
Objects = function(filterTypeId) end,
|
|
|
|
---Returns the duel team of a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number
|
|
UnitDuelTeam = function(objectRef) end,
|
|
|
|
---Check if a WowGameObject is mounted.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
UnitIsMounted = function(objectRef) end,
|
|
|
|
---Check if a WowGameObject is sitting.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return boolean
|
|
UnitIsSitting = function(objectRef) end,
|
|
|
|
---Return item levels for a WowGameObject.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number equipped, number current, number avg, number max
|
|
UnitItemLevels = function(objectRef) end,
|
|
|
|
---Returns a WowGameObject representing the current loot target of an object.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return WowGameObject | false
|
|
ObjectLootTarget = function(objectRef) end,
|
|
|
|
---Returns a WowGameObject shapeshift ID.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number | false
|
|
UnitShapeShiftID = function(objectRef) end,
|
|
|
|
--A more "advanced" way to find the "top" of the mob where you could possibly cast a spell towards.
|
|
---@param objectRef TinkrObjectReference
|
|
---@param typeID number
|
|
---@return number, number, number
|
|
GetUnitAttachmentPosition = function(objectRef, typeID) end,
|
|
|
|
---Returns the model id of the object.
|
|
---@param objectRef TinkrObjectReference
|
|
---@return number
|
|
ObjectModelId = function(objectRef) end,
|
|
}
|
|
|
|
AreaTriggerSpell = TinkrObjects.AreaTriggerSpell
|
|
GameObjectType = TinkrObjects.GameObjectType
|
|
Missiles = TinkrObjects.Missiles
|
|
Object = TinkrObjects.Object
|
|
ObjectAura = TinkrObjects.ObjectAura
|
|
ObjectBoundingRadius = TinkrObjects.ObjectBoundingRadius
|
|
ObjectCastingInfo = TinkrObjects.ObjectCastingInfo
|
|
ObjectCastingTarget = TinkrObjects.ObjectCastingTarget
|
|
ObjectCombatReach = TinkrObjects.ObjectCombatReach
|
|
ObjectCreator = TinkrObjects.ObjectCreator
|
|
ObjectCreatureType = TinkrObjects.ObjectCreatureType
|
|
ObjectDistance = TinkrObjects.ObjectDistance
|
|
ObjectFlags = TinkrObjects.ObjectFlags
|
|
ObjectGUID = TinkrObjects.ObjectGUID
|
|
ObjectHeight = TinkrObjects.ObjectHeight
|
|
ObjectID = TinkrObjects.ObjectID
|
|
ObjectIsOutdoors = TinkrObjects.ObjectIsOutdoors
|
|
ObjectIsSubmerged = TinkrObjects.ObjectIsSubmerged
|
|
ObjectLootTarget = TinkrObjects.ObjectLootTarget
|
|
ObjectLootable = TinkrObjects.ObjectLootable
|
|
ObjectModelId = TinkrObjects.ObjectModelId
|
|
ObjectMovementFlag = TinkrObjects.ObjectMovementFlag
|
|
ObjectMover = TinkrObjects.ObjectMover
|
|
ObjectName = TinkrObjects.ObjectName
|
|
ObjectPosition = TinkrObjects.ObjectPosition
|
|
ObjectRawPosition = TinkrObjects.ObjectRawPosition
|
|
ObjectRawRotation = TinkrObjects.ObjectRawRotation
|
|
ObjectRotation = TinkrObjects.ObjectRotation
|
|
ObjectSkinnable = TinkrObjects.ObjectSkinnable
|
|
ObjectSkinningType = TinkrObjects.ObjectSkinningType
|
|
ObjectSpecializationID = TinkrObjects.ObjectSpecializationID
|
|
ObjectTarget = TinkrObjects.ObjectTarget
|
|
ObjectType = TinkrObjects.ObjectType
|
|
ObjectUnit = TinkrObjects.ObjectUnit
|
|
ObjectWorldPosition = TinkrObjects.ObjectWorldPosition
|
|
Objects = TinkrObjects.Objects
|
|
UnitDuelTeam = TinkrObjects.UnitDuelTeam
|
|
UnitIsMounted = TinkrObjects.UnitIsMounted
|
|
UnitIsSitting = TinkrObjects.UnitIsSitting
|
|
UnitItemLevels = TinkrObjects.UnitItemLevels
|
|
UnitShapeShiftID = TinkrObjects.UnitShapeShiftID
|
|
GetUnitAttachmentPosition = TinkrObjects.GetUnitAttachmentPosition
|
|
|
|
---@enum Tinkr.KeyCodes
|
|
local KeyCodes = {
|
|
ANSI_A = 0x00,
|
|
ANSI_S = 0x01,
|
|
ANSI_D = 0x02,
|
|
ANSI_F = 0x03,
|
|
ANSI_H = 0x04,
|
|
ANSI_G = 0x05,
|
|
ANSI_Z = 0x06,
|
|
ANSI_X = 0x07,
|
|
ANSI_C = 0x08,
|
|
ANSI_V = 0x09,
|
|
ANSI_B = 0x0B,
|
|
ANSI_Q = 0x0C,
|
|
ANSI_W = 0x0D,
|
|
ANSI_E = 0x0E,
|
|
ANSI_R = 0x0F,
|
|
ANSI_Y = 0x10,
|
|
ANSI_T = 0x11,
|
|
ANSI_1 = 0x12,
|
|
ANSI_2 = 0x13,
|
|
ANSI_3 = 0x14,
|
|
ANSI_4 = 0x15,
|
|
ANSI_6 = 0x16,
|
|
ANSI_5 = 0x17,
|
|
ANSI_Equal = 0x18,
|
|
ANSI_9 = 0x19,
|
|
ANSI_7 = 0x1A,
|
|
ANSI_Minus = 0x1B,
|
|
ANSI_8 = 0x1C,
|
|
ANSI_0 = 0x1D,
|
|
ANSI_RightBracket = 0x1E,
|
|
ANSI_O = 0x1F,
|
|
ANSI_U = 0x20,
|
|
ANSI_LeftBracket = 0x21,
|
|
ANSI_I = 0x22,
|
|
ANSI_P = 0x23,
|
|
ANSI_L = 0x25,
|
|
ANSI_J = 0x26,
|
|
ANSI_Quote = 0x27,
|
|
ANSI_K = 0x28,
|
|
ANSI_Semicolon = 0x29,
|
|
ANSI_Backslash = 0x2A,
|
|
ANSI_Comma = 0x2B,
|
|
ANSI_Slash = 0x2C,
|
|
ANSI_N = 0x2D,
|
|
ANSI_M = 0x2E,
|
|
ANSI_Period = 0x2F,
|
|
ANSI_Grave = 0x32,
|
|
ANSI_KeypadDecimal = 0x41,
|
|
ANSI_KeypadMultiply = 0x43,
|
|
ANSI_KeypadPlus = 0x45,
|
|
ANSI_KeypadClear = 0x47,
|
|
ANSI_KeypadDivide = 0x4B,
|
|
ANSI_KeypadEnter = 0x4C,
|
|
ANSI_KeypadMinus = 0x4E,
|
|
ANSI_KeypadEquals = 0x51,
|
|
ANSI_Keypad0 = 0x52,
|
|
ANSI_Keypad1 = 0x53,
|
|
ANSI_Keypad2 = 0x54,
|
|
ANSI_Keypad3 = 0x55,
|
|
ANSI_Keypad4 = 0x56,
|
|
ANSI_Keypad5 = 0x57,
|
|
ANSI_Keypad6 = 0x58,
|
|
ANSI_Keypad7 = 0x59,
|
|
ANSI_Keypad8 = 0x5B,
|
|
ANSI_Keypad9 = 0x5C,
|
|
Return = 0x24,
|
|
Tab = 0x30,
|
|
Space = 0x31,
|
|
Delete = 0x33,
|
|
Escape = 0x35,
|
|
Command = 0x37,
|
|
Shift = 0x38,
|
|
CapsLock = 0x39,
|
|
Option = 0x3A,
|
|
Control = 0x3B,
|
|
RightShift = 0x3C,
|
|
RightOption = 0x3D,
|
|
RightControl = 0x3E,
|
|
Function = 0x3F,
|
|
F17 = 0x40,
|
|
VolumeUp = 0x48,
|
|
VolumeDown = 0x49,
|
|
Mute = 0x4A,
|
|
F18 = 0x4F,
|
|
F19 = 0x50,
|
|
F20 = 0x5A,
|
|
F5 = 0x60,
|
|
F6 = 0x61,
|
|
F7 = 0x62,
|
|
F3 = 0x63,
|
|
F8 = 0x64,
|
|
F9 = 0x65,
|
|
F11 = 0x67,
|
|
F13 = 0x69,
|
|
F16 = 0x6A,
|
|
F14 = 0x6B,
|
|
F10 = 0x6D,
|
|
F12 = 0x6F,
|
|
F15 = 0x71,
|
|
Help = 0x72,
|
|
Home = 0x73,
|
|
PageUp = 0x74,
|
|
ForwardDelete = 0x75,
|
|
F4 = 0x76,
|
|
End = 0x77,
|
|
F2 = 0x78,
|
|
PageDown = 0x79,
|
|
F1 = 0x7A,
|
|
LeftArrow = 0x7B,
|
|
RightArrow = 0x7C,
|
|
DownArrow = 0x7D,
|
|
UpArrow = 0x7E,
|
|
}
|
|
|
|
--#endregion Tinkr.Objects
|
|
|
|
--#region Tinkr.Utility
|
|
---@class Tinkr.Utility
|
|
local TinkrUtility = {
|
|
|
|
---Bring a window to the foreground
|
|
---@return boolean
|
|
BringWindowToForeground = function() end,
|
|
|
|
---Crash a client
|
|
---@return nil
|
|
Crash = function() end,
|
|
|
|
---Runs lua code in a unprotected environment.
|
|
---@param code string
|
|
---@param debugName? string
|
|
Eval = function(code, debugName) end,
|
|
|
|
---Calculates the distance in C land quicker than it can be done in Lua.
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param z1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@param z2 number
|
|
---@return number
|
|
FastDistance = function(x1, y1, z1, x2, y2, z2) end,
|
|
|
|
---Calculates the 2D distance in C land quicker than it can be done in Lua.
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@return number
|
|
FastDistance2D = function(x1, y1, x2, y2) end,
|
|
|
|
---Returns the architecture of a tinkr build
|
|
---@return 'arm64' | 'x86_64'
|
|
GetArchitecture = function() end,
|
|
|
|
---Gets information about an auction (this is classic only).
|
|
---@param type 'list' | 'bidder' | 'owner'
|
|
---@param index number
|
|
---@return number itemID, number expiresAt, string expiresAtString, number currentBid, string currentBidString, number buyout, string buyoutString, string creator
|
|
GetAuctionInfo = function(type, index) end,
|
|
|
|
---Gets the last time a game tick happened.
|
|
---@return number
|
|
GetGameTick = function() end,
|
|
|
|
---Get the state of a key
|
|
---@param key Tinkr.KeyCodes
|
|
---@return boolean
|
|
GetKeyState = function(key) end,
|
|
|
|
---GetLastHardwareActionTime returns the last time your game client received a hardware interaction
|
|
---@return number
|
|
GetLastHardwareActionTime = function() end,
|
|
|
|
---Check if a window is in the foreground
|
|
---@return boolean
|
|
GetWindowStatus = function() end,
|
|
|
|
---Check if a the player is in the game world
|
|
---@return boolean
|
|
IsInGame = function() end,
|
|
|
|
---Do JSON decoding in C land.
|
|
---@param string string
|
|
---@return table
|
|
JsonDecode = function(string) end,
|
|
|
|
---Do JSON encoding in C land.
|
|
---@param table table
|
|
---@return string
|
|
JsonEncode = function(table) end,
|
|
|
|
---Do BSON decoding in C land.
|
|
---@param data string
|
|
---@return table
|
|
BsonDecode = function(data) end,
|
|
|
|
---Do BSON encoding in C land.
|
|
---@param table table
|
|
---@return string
|
|
BsonEncode = function(table) end,
|
|
|
|
---Kill a client
|
|
Kill = function() end,
|
|
|
|
---Log output to the console
|
|
---@param str string
|
|
Log = function(str) end,
|
|
|
|
---Rotate a vector (x: number, y: number, z: number) and apply a distance calculation to it.
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@param theta number
|
|
---@param distance number
|
|
---@return number x, number y, number z
|
|
RotateVector = function(x, y, z, theta, distance) end,
|
|
|
|
---Returns the world position of a screen coordinate.
|
|
---@param x number
|
|
---@param y number
|
|
---@param hitFlags CollisionFlags
|
|
---@return number x, number y, number z
|
|
ScreenToWorld = function(x, y, hitFlags) end,
|
|
|
|
---Force a frame to not be forbidden, allowing lua interactions on it
|
|
---@param frame Frame
|
|
---@return boolean
|
|
SetForbiddenFrame = function(frame) end,
|
|
|
|
---SetLastHardwareActionTime updates the last input interaction time in the game client, mainly used to prevent AFK behaviors
|
|
---@param time number
|
|
SetLastHardwareActionTime = function(time) end,
|
|
|
|
---Returns the position of the camera.
|
|
---@param x1 number
|
|
---@param y1 number
|
|
---@param z1 number
|
|
---@param x2 number
|
|
---@param y2 number
|
|
---@param z2 number
|
|
---@param hitFlags integer
|
|
---@return number x, number y, number z
|
|
TraceLine = function(x1, y1, z1, x2, y2, z2, hitFlags) end,
|
|
|
|
---Returns the screen position of a world coordinate.
|
|
---@param x number
|
|
---@param y number
|
|
---@param z number
|
|
---@return number x, number y
|
|
WorldToScreen = function(x, y, z) end,
|
|
|
|
---Check if tinkr would have injected lua into the client (Sanity check mainly, if it would return false it wouldn't exist (probably))
|
|
---@return boolean
|
|
WouldInject = function() end,
|
|
|
|
---Zlip compression in C land.
|
|
---@param string string
|
|
---@param level number
|
|
---@return string
|
|
Deflate = function(string, level) end,
|
|
|
|
---Zlib compression in C land.
|
|
---@param data string
|
|
---@return string
|
|
Inflate = function(data) end,
|
|
|
|
---loadstring but without lua taint.
|
|
---@param code string
|
|
---@return function
|
|
loadstringsecure = function(code) end,
|
|
}
|
|
|
|
BringWindowToForeground = TinkrUtility.BringWindowToForeground
|
|
BsonDecode = TinkrUtility.BsonDecode
|
|
BsonEncode = TinkrUtility.BsonEncode
|
|
Crash = TinkrUtility.Crash
|
|
Deflate = TinkrUtility.Deflate
|
|
Eval = TinkrUtility.Eval
|
|
FastDistance = TinkrUtility.FastDistance
|
|
FastDistance2D = TinkrUtility.FastDistance2D
|
|
GetArchitecture = TinkrUtility.GetArchitecture
|
|
GetAuctionInfo = TinkrUtility.GetAuctionInfo
|
|
GetGameTick = TinkrUtility.GetGameTick
|
|
GetKeyState = TinkrUtility.GetKeyState
|
|
GetLastHardwareActionTime = TinkrUtility.GetLastHardwareActionTime
|
|
GetWindowStatus = TinkrUtility.GetWindowStatus
|
|
Inflate = TinkrUtility.Inflate
|
|
IsInGame = TinkrUtility.IsInGame
|
|
JsonDecode = TinkrUtility.JsonDecode
|
|
JsonEncode = TinkrUtility.JsonEncode
|
|
Kill = TinkrUtility.Kill
|
|
Log = TinkrUtility.Log
|
|
RotateVector = TinkrUtility.RotateVector
|
|
ScreenToWorld = TinkrUtility.ScreenToWorld
|
|
SetForbiddenFrame = TinkrUtility.SetForbiddenFrame
|
|
SetLastHardwareActionTime = TinkrUtility.SetLastHardwareActionTime
|
|
TraceLine = TinkrUtility.TraceLine
|
|
WorldToScreen = TinkrUtility.WorldToScreen
|
|
WouldInject = TinkrUtility.WouldInject
|
|
loadstringsecure = TinkrUtility.loadstringsecure
|
|
|
|
--#endregion Tinkr.Utility
|
|
|
|
---@class Tinkr.Routine
|
|
---@field active_routine boolean
|
|
---@field enabled boolean
|
|
---@field timer boolean
|
|
---@field update_rate number
|
|
---@field Disable fun()
|
|
---@field Enable fun()
|
|
---@field Inject fun(metatable: metatable, libName?: string, Class?: Tinkr.Routine.Classes )
|
|
---@field InjectLib fun(...:any)
|
|
---@field InjectLibrary fun(...:any)
|
|
---@field LoadLib fun(...: any)
|
|
---@field LoadLibrary fun(...: any)
|
|
---@field RegisterLib fun(...: any)
|
|
---@field RegisterLibrary fun(...: any)
|
|
---@field RegisterRoutine fun(callback: fun(...:any), class: Tinkr.Routine.Classes, spec: number)
|
|
---@field RegisterSpellBook fun(spellbook: table, class: Tinkr.Routine.Classes)
|
|
---@field LoadForSpec fun()
|
|
---@field LoadRoutine fun(id: number)
|
|
---@field RegisterLocalRoutines fun()
|
|
---@field RegisterLocalSpellbooks fun()
|
|
---@field RegisterLocal fun()
|
|
---@field Toggle fun(state: boolean)
|
|
local TinkrRoutine = {
|
|
---@enum Tinkr.Routine.Classes
|
|
Classes = {
|
|
Warrior = 1,
|
|
Paladin = 2,
|
|
Hunter = 3,
|
|
Rogue = 4,
|
|
Priest = 5,
|
|
DeathKnight = 6,
|
|
Shaman = 7,
|
|
Mage = 8,
|
|
Warlock = 9,
|
|
Monk = 10,
|
|
Druid = 11,
|
|
DemonHunter = 12,
|
|
Evoker = 13,
|
|
Shared = 999
|
|
},
|
|
Exports = {},
|
|
RoutineCache = {},
|
|
Specs = {
|
|
Warrior = {
|
|
Arms = 71,
|
|
Fury = 72,
|
|
Protection = 73
|
|
},
|
|
Paladin = {
|
|
Holy = 65,
|
|
Protection = 66,
|
|
Retribution = 70
|
|
},
|
|
Hunter = {
|
|
BeastMastery = 253,
|
|
Marksmanship = 254,
|
|
Survival = 255
|
|
},
|
|
Rogue = {
|
|
Assassination = 259,
|
|
Outlaw = 260,
|
|
Subtlety = 261
|
|
},
|
|
Priest = {
|
|
Discipline = 256,
|
|
Holy = 257,
|
|
Shadow = 258
|
|
},
|
|
DeathKnight = {
|
|
Blood = 250,
|
|
Frost = 251,
|
|
Unholy = 252
|
|
},
|
|
Shaman = {
|
|
Elemental = 262,
|
|
Enhancement = 263,
|
|
Restoration = 264
|
|
},
|
|
Mage = {
|
|
Arcane = 62,
|
|
Fire = 63,
|
|
Frost = 64
|
|
},
|
|
Warlock = {
|
|
Affliction = 265,
|
|
Demonology = 266,
|
|
Destruction = 267
|
|
},
|
|
Monk = {
|
|
Brewmaster = 268,
|
|
Mistweaver = 270,
|
|
Windwalker = 269
|
|
},
|
|
Druid = {
|
|
Balance = 102,
|
|
Feral = 103,
|
|
Guardian = 104,
|
|
Restoration = 105
|
|
},
|
|
DemonHunter = {
|
|
Havoc = 577,
|
|
Vengeance = 581
|
|
},
|
|
Evoker = {
|
|
Devastation = 1467,
|
|
Preservation = 1468,
|
|
},
|
|
},
|
|
export_cache = {},
|
|
injected_libs = {},
|
|
routine_data = {},
|
|
routine_hooks = {},
|
|
routines = {},
|
|
spellbooks = {},
|
|
}
|
|
|
|
---@class Tinkr : Tinkr.Utility
|
|
---@field classic boolean
|
|
---@field dragonflight boolean
|
|
---@field era boolean
|
|
---@field retail boolean
|
|
---@field shadowlands boolean
|
|
---@field init_at 0
|
|
---@field build string
|
|
---@field color string
|
|
---@field name "Tinkr"
|
|
---@field name_locale string
|
|
---@field release "release"
|
|
---@field Routine Tinkr.Routine
|
|
---@field Util Tinkr.Util
|
|
local Tinkr = {
|
|
Common = {},
|
|
---@param path string
|
|
---@return string, string
|
|
resolvePath = function(path) end,
|
|
Automator = {},
|
|
Commands = {},
|
|
globals = {},
|
|
modules = {},
|
|
}
|
|
|
|
AuraUtil_ForEachAura = AuraUtil.ForEachAura
|
|
C_UnitAuras_GetAuraDataByAuraInstanceID = C_UnitAuras.GetAuraDataByAuraInstanceID
|
|
|