From db5a8bf759ee2baf317c2a88facc3a9340ab57d6 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 11:28:05 +0200 Subject: [PATCH 01/13] Update defintiions --- datatype/_time.lua | 26 ++++++------- mq.lua | 92 +++++++++++++++++++++++++++++++++++---------- tlo/_Navigation.lua | 3 +- 3 files changed, 87 insertions(+), 34 deletions(-) diff --git a/datatype/_time.lua b/datatype/_time.lua index 17f4590..3abeaf7 100644 --- a/datatype/_time.lua +++ b/datatype/_time.lua @@ -1,14 +1,14 @@ --- @class time ---- @field public Date string Date in the format MM/DD/YYYY ---- @field public Day number Day of the month ---- @field public DayOfWeek number Day of the week (1=sunday to 7=saturday) ---- @field public Hour number Hour (0-23) ---- @field public Minute number Minute (0-59) ---- @field public Month number Month of the year (1-12) ---- @field public Night boolean Gives true if the current hour is considered "night" in EQ (7:00pm-6:59am) ---- @field public Second number Second (0-59) ---- @field public SecondsSinceMidnight number Number of seconds since midnight ---- @field public Time12 string Time in 12-hour format (HH:MM:SS) ---- @field public Time24 string Time in 24-hour format (HH:MM:SS) ---- @field public Year number Year ---- @field public ToString string Same as Time24 \ No newline at end of file +--- @field public Date fun(): string #Date in the format MM/DD/YYYY +--- @field public Day fun(): integer #Day of the month +--- @field public DayOfWeek fun(): integer #Day of the week (1=sunday to 7=saturday) +--- @field public Hour fun(): integer #Hour (0-23) +--- @field public Minute fun(): integer #Minute (0-59) +--- @field public Month fun(): integer #Month of the year (1-12) +--- @field public Night fun(): boolean #Gives true if the current hour is considered "night" in EQ (7:00pm-6:59am) +--- @field public Second fun(): integer #Second (0-59) +--- @field public SecondsSinceMidnight fun(): number #Number of seconds since midnight +--- @field public Time12 fun(): string #Time in 12-hour format (HH:MM:SS) +--- @field public Time24 fun(): string #Time in 24-hour format (HH:MM:SS) +--- @field public Year fun(): integer #Year +--- @field public ToString fun(): string #Same as Time24 \ No newline at end of file diff --git a/mq.lua b/mq.lua index e351b9f..112f9af 100644 --- a/mq.lua +++ b/mq.lua @@ -104,8 +104,8 @@ function mq.imgui.destory(name) end ---@field Bandoliler any ---@field Corpse corpse|fun():corpse|nil Corpse you are looting ---@field Cursor item|fun():string|nil ----@field DisplayItem fun():item ----@field DoorTarget fun():spawn +---@field DisplayItem fun():item Access to all the information in the Item Display window +---@field DoorTarget spawn|fun():string|nil Information on your doortarget ---@field DynamicZone dynamiczone ---@field Event any ---@field EverQuest any @@ -114,19 +114,18 @@ function mq.imgui.destory(name) end ---@field FPS userdata ---@field FrameLimiter userdata ---@field Friends userdata ----@field GameTime any ----@field Ground any ----@field Group any +---@field GameTime time +---@field Ground ground #References the ground spawn item you have targeted. +---@field Group group ---@field GroupLeader any ---@field GroupLeaderName any ----@field Heading heading ---@field If any ---@field Illusion any ---@field Ini any ---@field Int any ---@field InvSlot any ---@field Irc any ----@field ItemTarget any +---@field ItemTarget ground #Gives access to the ground item that is previously targeted using /itemtarget. ---@field LastSpawn any ---@field LineOfSight any ---@field Lua Lua @@ -136,27 +135,23 @@ function mq.imgui.destory(name) end ---@field Me character ---@field Menu any ---@field Mercenary mercenary ----@field Merchant merchant +---@field Merchant merchant #Interacts with the currently active merchant ---@field Mount any ----@field Navigation Navigation ---@field Pet pet ----@field Plugin plugin ---@field PointMerchant any ---@field Raid raid ----@field Range any ----@field Select any ----@field SelectedItem item ----@field Skill skill +---@field Range range +---@field Select fun(target: string, ...): integer #Finds number of matches in [target] +---@field SelectedItem item #Returns information on the object that is selected in your own inventory while using a merchant. ---@field String any ---@field SubDefined any ----@field Switch any +---@field Switch switch ---@field SwitchTarget any ---@field Target target ----@field Task any ----@field Time any ----@field Type type ----@field Window window ----@field Zone zone +---@field Task fun(index?: integer): task|nil #Returns the first task, or the current shared task if one exists. +---@field Time time +---@field Type fun(type: string): type #Information on data types +---@field Window fun(name: string): window #Information on a particular UI window local TLO = {} ---@diagnostic disable: duplicate-set-field @@ -219,6 +214,35 @@ function mq.TLO.FindItemBankCount(id)end ---@return integer function mq.TLO.FindItemBankCount(name)end +---@diagnostic disable: duplicate-set-field +----Creates a heading object using degrees (clockwise) +---@param degrees integer Degrees (clockwise) +---@return heading +function TLO.Heading(degrees) end + +----Creates a heading object using the heading to this y,x location +---@param y integer #Y location +---@param x integer #X location +---@return heading +function TLO.Heading(y, x) end + +----Creates a heading object using the heading to this north,west location +---@param north integer #North location +---@param west integer #West location +---@return heading +function TLO.Heading(north, west) end +---@diagnostic enable: duplicate-set-field + +---Returns a Plugin by index, starting with 1 and stopping whenever the list runs out of plugins. +---@param index integer +---@return plugin +function mq.TLO.Plugin(index)end + +----Returns a Plugin by Name +---@param name string +---@return plugin +function mq.TLO.Plugin(name)end + ---Returns a Spawn by ID ---@param id integer ---@return spawn @@ -249,4 +273,32 @@ function mq.TLO.Spell(id)end ---@return spell function mq.TLO.Spell(name)end +---Returns a Skill by number +---@param number integer +---@return skill +function mq.TLO.Skill(number)end + +----Returns a Skill by Name +---@param name string +---@return skill +function mq.TLO.Skill(name)end + +----The current zone information +---@type zone +TLO.Zone = nil + +---@diagnostic disable: duplicate-set-field +---@diagnostic disable: assign-type-mismatch +----Retrieves information about a zone by zone ID. If this zone is the current zone, then this will return currentzone. +---@param id integer Zone ID +---@return zone|nil +function TLO.Zone(id) end + +----Retrieves information about a zone by short name. If this zone is the current zone, then this will return currentzone. +---@param shortName string Zone Short Name +---@return zone|nil +function TLO.Zone(shortName) end +---@diagnostic enable: assign-type-mismatch +---@diagnostic enable: duplicate-set-field + return mq \ No newline at end of file diff --git a/tlo/_Navigation.lua b/tlo/_Navigation.lua index 05ad2ab..d26e5f1 100644 --- a/tlo/_Navigation.lua +++ b/tlo/_Navigation.lua @@ -3,4 +3,5 @@ --- @field public Paused boolean Returns true if nativation is currently paused --- @field public MeshLoaded boolean Returns true if a mesh is loaded for the zone --- @field public PathExists boolean Returns true if a path exists for the target ---- @field public PathLength int \ No newline at end of file +--- @field public PathLength int +mq.TLO.Navigation = {} \ No newline at end of file From 5e8d3e4ad0f65e534bd319da9529ed11dbb2e458 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 11:39:08 +0200 Subject: [PATCH 02/13] Try fix plugin Navigation TLO --- plugins/EQBC/_TLO.lua | 2 +- plugins/MoveUtils/_TLO.lua | 10 +++++----- plugins/NetBots/_TLO.lua | 2 +- plugins/Twist/_TLO.lua | 2 +- tlo/_Navigation.lua | 5 ++++- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/plugins/EQBC/_TLO.lua b/plugins/EQBC/_TLO.lua index e2581b4..432d013 100644 --- a/plugins/EQBC/_TLO.lua +++ b/plugins/EQBC/_TLO.lua @@ -1,7 +1,7 @@ ---@meta --- EQBC Lua Bindings ----@class TLO.EQBC +---@class mq.TLO.EQBC ---@field Connected fun(): boolean Client connection status ---@field Names fun(): string List of connected characters (space delmited) ---@field Port fun(): string OFFLINE if not connected, port if connected diff --git a/plugins/MoveUtils/_TLO.lua b/plugins/MoveUtils/_TLO.lua index 0df662b..6e3d5aa 100644 --- a/plugins/MoveUtils/_TLO.lua +++ b/plugins/MoveUtils/_TLO.lua @@ -1,7 +1,7 @@ ---@meta --- MoveUtils Lua Bindings ----@class TLO.MoveUtils +---@class mq.TLO.MoveUtils ---@field Command fun(): string Returns the currently active command. MAKECAMP returns if a camp is setup but no other command is currently in use ["NONE", "STICK", "MOVETO", "MAKECAMP", "CIRCLE"] ---@field Stuck fun(): boolean Returns true if plugin stucklogic has determined you are currently stuck ---@field Summoned fun(): boolean Returns true if BreakOnSummon is enabled and has fired due to your character being summoned beyond breakonsummon distance @@ -22,7 +22,7 @@ mq.TLO.MoveUtils = {} --- Stick Lua Bindings ----@class Stick +---@class mq.Stick ---@field Status fun(): string Returns ON if any form of stick is active ["OFF", "PAUSED" or "ON"] ---@field Active fun(): boolean Returns TRUE if any form of stick is active ---@field Broken fun(): boolean Returns TRUE if BreakOnHit event has halted stick prematurely @@ -42,7 +42,7 @@ mq.TLO.MoveUtils = {} mq.TLO.Stick = {} --- MoveTo Lua Bindings ----@class TLO.MoveTo +---@class mq.TLO.MoveTo ---@field Moving fun(): boolean Returns TRUE if moveto or camp return is active ---@field Stopped fun(): boolean Returns TRUE if the last moveto command completed successfully ---@field CampStopped fun(): boolean Returns TRUE if within moveto distance of makecamp Y X location @@ -54,7 +54,7 @@ mq.TLO.Stick = {} mq.TLO.MoveTo = {} --- MakeCamp Lua Bindings ----@class TLO.MakeCamp +---@class mq.TLO.MakeCamp ---@field Status fun(): string Returns status of MakeCamp command. AltCamp returns OFF ["OFF", "PAUSED" or "ON"] ---@field Leash fun(): boolean Returns TRUE if plugin stucklogic has determined you are currently stuck ---@field AnchorX fun(): number Returns location of current camp X anchor @@ -79,7 +79,7 @@ mq.TLO.MoveTo = {} mq.TLO.MakeCamp = {} --- Circle Lua Bindings ----@class TLO.Circle +---@class mq.TLO.Circle ---@field Status fun(): string Returns ON if circling ["OFF", "PAUSED" or "ON"] ---@field CircleY fun(): number Returns the location of circle center Y ---@field CircleX fun(): number Returns the location of circle center X diff --git a/plugins/NetBots/_TLO.lua b/plugins/NetBots/_TLO.lua index 8e646bb..18ba050 100644 --- a/plugins/NetBots/_TLO.lua +++ b/plugins/NetBots/_TLO.lua @@ -1,7 +1,7 @@ ---@meta --- NetBots Lua Bindings ----@class TLO.NetBots +---@class mq.TLO.NetBots ---@field Client fun(index: integer): netbot The netbot at the given index in the array ---@field Counts fun(): integer The number of connected clients. ---@field Enable fun(): boolean The plugin status. diff --git a/plugins/Twist/_TLO.lua b/plugins/Twist/_TLO.lua index 6fa2e53..22f32db 100644 --- a/plugins/Twist/_TLO.lua +++ b/plugins/Twist/_TLO.lua @@ -1,7 +1,7 @@ ---@meta --- Twist Lua Bindings ----@class TLO.Twist +---@class mq.TLO.Twist ---@field Twisting fun(): boolean Returns TRUE if currently twisting, FALSE if not and NULL if plugin not loaded. ---@field Current fun(): integer Returns the current gem being sung, -1 for item or 0 if not twisting ---@field Next fun(): integer Returns the next gem to be sung, -1 for item or 0 if not twisting diff --git a/tlo/_Navigation.lua b/tlo/_Navigation.lua index d26e5f1..333b717 100644 --- a/tlo/_Navigation.lua +++ b/tlo/_Navigation.lua @@ -1,4 +1,7 @@ ---- @class Navigation +---@meta + +--- Navigation Lua Bindings +--- @class mq.TLO.Navigation --- @field public Active boolean Returns true if navigation is currently active --- @field public Paused boolean Returns true if nativation is currently paused --- @field public MeshLoaded boolean Returns true if a mesh is loaded for the zone From 49a33a9a44e2bb91d9ff96f43f8537effe3a6cb8 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 12:18:21 +0200 Subject: [PATCH 03/13] Need to have TLO global to have plugin types show class variables. Report bug on this. --- mq.lua | 2 +- plugins/EQBC/_TLO.lua | 4 ++-- plugins/MoveUtils/_TLO.lua | 20 ++++++++++---------- plugins/NetBots/_TLO.lua | 6 +++--- plugins/Twist/_TLO.lua | 4 ++-- tlo/_Navigation.lua | 4 ++-- 6 files changed, 20 insertions(+), 20 deletions(-) diff --git a/mq.lua b/mq.lua index 112f9af..e1a28a3 100644 --- a/mq.lua +++ b/mq.lua @@ -152,7 +152,7 @@ function mq.imgui.destory(name) end ---@field Time time ---@field Type fun(type: string): type #Information on data types ---@field Window fun(name: string): window #Information on a particular UI window -local TLO = {} +TLO = {} ---@diagnostic disable: duplicate-set-field ---Returns a pipe | separated list of alert ids diff --git a/plugins/EQBC/_TLO.lua b/plugins/EQBC/_TLO.lua index 432d013..3459212 100644 --- a/plugins/EQBC/_TLO.lua +++ b/plugins/EQBC/_TLO.lua @@ -1,11 +1,11 @@ ---@meta --- EQBC Lua Bindings ----@class mq.TLO.EQBC +---@class TLO.EQBC ---@field Connected fun(): boolean Client connection status ---@field Names fun(): string List of connected characters (space delmited) ---@field Port fun(): string OFFLINE if not connected, port if connected ---@field Server fun(): string Hostname or IP of server you connected to ---@field ToonName fun(): string Character name as seen by EQBC \(may reflect YouPlayer\) ---@field Setting fun(): boolean Option enabled/disabled status. \(see **/bccmd set** for complete list\) -mq.TLO.EQBC = {} +TLO.EQBC = {} diff --git a/plugins/MoveUtils/_TLO.lua b/plugins/MoveUtils/_TLO.lua index 6e3d5aa..ff040e5 100644 --- a/plugins/MoveUtils/_TLO.lua +++ b/plugins/MoveUtils/_TLO.lua @@ -1,7 +1,7 @@ ---@meta --- MoveUtils Lua Bindings ----@class mq.TLO.MoveUtils +---@class TLO.MoveUtils ---@field Command fun(): string Returns the currently active command. MAKECAMP returns if a camp is setup but no other command is currently in use ["NONE", "STICK", "MOVETO", "MAKECAMP", "CIRCLE"] ---@field Stuck fun(): boolean Returns true if plugin stucklogic has determined you are currently stuck ---@field Summoned fun(): boolean Returns true if BreakOnSummon is enabled and has fired due to your character being summoned beyond breakonsummon distance @@ -19,10 +19,10 @@ ---@field Version fun(): number Returns the version number of the plugin ---@field MovePause fun(): boolean Returns TRUE if mpause \(PauseKB\) is enabled ---@field GM fun(): boolean Returns TRUE if BreakOnGM fired -mq.TLO.MoveUtils = {} +TLO.MoveUtils = {} --- Stick Lua Bindings ----@class mq.Stick +---@class Stick ---@field Status fun(): string Returns ON if any form of stick is active ["OFF", "PAUSED" or "ON"] ---@field Active fun(): boolean Returns TRUE if any form of stick is active ---@field Broken fun(): boolean Returns TRUE if BreakOnHit event has halted stick prematurely @@ -39,10 +39,10 @@ mq.TLO.MoveUtils = {} ---@field DistMod fun(): number Returns current stickdist modifier ---@field DistModPercent fun(): number Returns current stickdist percent modifier ---@field Always fun(): boolean Returns TRUE if /stick always is active -mq.TLO.Stick = {} +TLO.Stick = {} --- MoveTo Lua Bindings ----@class mq.TLO.MoveTo +---@class TLO.MoveTo ---@field Moving fun(): boolean Returns TRUE if moveto or camp return is active ---@field Stopped fun(): boolean Returns TRUE if the last moveto command completed successfully ---@field CampStopped fun(): boolean Returns TRUE if within moveto distance of makecamp Y X location @@ -51,10 +51,10 @@ mq.TLO.Stick = {} ---@field ArrivalDistY fun(): number Returns acceptable arrival distance for precisey ---@field ArrivalDistX fun(): number Returns acceptable arrival distance for precisex ---@field Broken fun(): boolean Returns TRUE if BreakOnAggro or BreakOnHit event have halted moveto prematurely -mq.TLO.MoveTo = {} +TLO.MoveTo = {} --- MakeCamp Lua Bindings ----@class mq.TLO.MakeCamp +---@class TLO.MakeCamp ---@field Status fun(): string Returns status of MakeCamp command. AltCamp returns OFF ["OFF", "PAUSED" or "ON"] ---@field Leash fun(): boolean Returns TRUE if plugin stucklogic has determined you are currently stuck ---@field AnchorX fun(): number Returns location of current camp X anchor @@ -76,10 +76,10 @@ mq.TLO.MoveTo = {} ---@field Bearing fun(): number Returns the bearing \(heading\) of camp scattering ---@field ScatDist fun(): number Returns the distance from anchor to perform scatter ---@field ScatSize fun(): number Returns the size of scattering radius -mq.TLO.MakeCamp = {} +TLO.MakeCamp = {} --- Circle Lua Bindings ----@class mq.TLO.Circle +---@class TLO.Circle ---@field Status fun(): string Returns ON if circling ["OFF", "PAUSED" or "ON"] ---@field CircleY fun(): number Returns the location of circle center Y ---@field CircleX fun(): number Returns the location of circle center X @@ -89,4 +89,4 @@ mq.TLO.MakeCamp = {} ---@field Clockwise fun(): boolean Returns FALSE if reverse circling ---@field Backwards fun(): boolean Returns TRUE if movement direction backwards ---@field Radius fun(): number Returns the radius size of circle -mq.TLO.Circle = {} \ No newline at end of file +TLO.Circle = {} \ No newline at end of file diff --git a/plugins/NetBots/_TLO.lua b/plugins/NetBots/_TLO.lua index 18ba050..bf680fb 100644 --- a/plugins/NetBots/_TLO.lua +++ b/plugins/NetBots/_TLO.lua @@ -1,14 +1,14 @@ ---@meta --- NetBots Lua Bindings ----@class mq.TLO.NetBots +---@class TLO.NetBots ---@field Client fun(index: integer): netbot The netbot at the given index in the array ---@field Counts fun(): integer The number of connected clients. ---@field Enable fun(): boolean The plugin status. ---@field Listen fun(): boolean The grab parameter status. ---@field Output fun(): boolean The send parameter status. -mq.TLO.NetBots = {} +TLO.NetBots = {} ---@param name string # Name of he netbot ---@return netbot|"NULL" # Returns the netbot with the given name or 'NULL' if not found -function mq.TLO.NetBots(name) end \ No newline at end of file +function TLO.NetBots(name) end \ No newline at end of file diff --git a/plugins/Twist/_TLO.lua b/plugins/Twist/_TLO.lua index 22f32db..3b730e3 100644 --- a/plugins/Twist/_TLO.lua +++ b/plugins/Twist/_TLO.lua @@ -1,9 +1,9 @@ ---@meta --- Twist Lua Bindings ----@class mq.TLO.Twist +---@class TLO.Twist ---@field Twisting fun(): boolean Returns TRUE if currently twisting, FALSE if not and NULL if plugin not loaded. ---@field Current fun(): integer Returns the current gem being sung, -1 for item or 0 if not twisting ---@field Next fun(): integer Returns the next gem to be sung, -1 for item or 0 if not twisting ---@field List fun(): string Returns the twist sequence in a format suitable for /twist. -mq.TLO.Twist = {} +TLO.Twist = {} diff --git a/tlo/_Navigation.lua b/tlo/_Navigation.lua index 333b717..28223a6 100644 --- a/tlo/_Navigation.lua +++ b/tlo/_Navigation.lua @@ -1,10 +1,10 @@ ---@meta --- Navigation Lua Bindings ---- @class mq.TLO.Navigation +--- @class TLO.Navigation --- @field public Active boolean Returns true if navigation is currently active --- @field public Paused boolean Returns true if nativation is currently paused --- @field public MeshLoaded boolean Returns true if a mesh is loaded for the zone --- @field public PathExists boolean Returns true if a path exists for the target --- @field public PathLength int -mq.TLO.Navigation = {} \ No newline at end of file +TLO.Navigation = {} \ No newline at end of file From 55a1df43f438e00c2aacbdcb237085f3c66dfd4f Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 13:19:25 +0200 Subject: [PATCH 04/13] Fix spelling --- datatype/_window.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datatype/_window.lua b/datatype/_window.lua index abdec23..2813d05 100644 --- a/datatype/_window.lua +++ b/datatype/_window.lua @@ -3,7 +3,7 @@ --- @field public Checked boolean Returns TRUE if the button has been checked --- @field public Child window Child with this name --- @field public Children boolean Returns TRUE if the window has children ---- @field public DoClose fun() Does the ction of closing a window +--- @field public DoClose fun() Does the action of closing a window --- @field public DoOpen fun() Does the action of opening a window --- @field public Enabled boolean Returns TRUE if the window is enabled --- @field public FirstChild window First child window From 4608e8ab9edea89405a6deb15cc07063631ec4ae Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 13:19:37 +0200 Subject: [PATCH 05/13] Fix MQ type definition --- datatype/_type.lua | 12 ++++++++++++ mq.lua | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/datatype/_type.lua b/datatype/_type.lua index e69de29..57d264b 100644 --- a/datatype/_type.lua +++ b/datatype/_type.lua @@ -0,0 +1,12 @@ +--- @class mqtype +--- @field public Name fun(): string Type name +--- @field public ToString fun(): string Same as Name +mqtype = nil + +---@param id integer # Internal ID number +---@return string # Member name based on an internal ID number (based on 1 through N, not all values will be used) +function mqtype.TypeMember(id) end + +---@param name string +---@return integer # Member internal ID number based on name (will be a number from 1 to N) +function mqtype.TypeMember(name) end \ No newline at end of file diff --git a/mq.lua b/mq.lua index e1a28a3..18a68fb 100644 --- a/mq.lua +++ b/mq.lua @@ -150,7 +150,7 @@ function mq.imgui.destory(name) end ---@field Target target ---@field Task fun(index?: integer): task|nil #Returns the first task, or the current shared task if one exists. ---@field Time time ----@field Type fun(type: string): type #Information on data types +---@field Type fun(type: string): mqtype #Information on data types ---@field Window fun(name: string): window #Information on a particular UI window TLO = {} From 16ab920e9614c1897e4cfc02c0653a81bb929b87 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 13:24:42 +0200 Subject: [PATCH 06/13] Fix zone definitions --- datatype/_zone.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/datatype/_zone.lua b/datatype/_zone.lua index e53a00f..5b29a7c 100644 --- a/datatype/_zone.lua +++ b/datatype/_zone.lua @@ -1,5 +1,5 @@ --- @class zone ---- @field public ID number ID of the zone ---- @field public Name string Full zone name ---- @field public ShortName string Short zone name ---- @field public ToString string Same as Name \ No newline at end of file +--- @field public ID fun(): integer ID of the zone +--- @field public Name fun(): string Full zone name +--- @field public ShortName fun(): string Short zone name +--- @field public ToString fun(): string Same as Name \ No newline at end of file From 579521fcbad7c16db747c76343e81972b8053c89 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 13:24:50 +0200 Subject: [PATCH 07/13] Fix naviation definition --- tlo/_Navigation.lua | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/tlo/_Navigation.lua b/tlo/_Navigation.lua index 28223a6..00ed2a2 100644 --- a/tlo/_Navigation.lua +++ b/tlo/_Navigation.lua @@ -2,9 +2,27 @@ --- Navigation Lua Bindings --- @class TLO.Navigation ---- @field public Active boolean Returns true if navigation is currently active ---- @field public Paused boolean Returns true if nativation is currently paused ---- @field public MeshLoaded boolean Returns true if a mesh is loaded for the zone ---- @field public PathExists boolean Returns true if a path exists for the target ---- @field public PathLength int -TLO.Navigation = {} \ No newline at end of file +--- @field public Active fun(): boolean Returns true if navigation is currently active +--- @field public Paused fun(): boolean Returns true if nativation is currently paused +--- @field public MeshLoaded fun(): boolean Returns true if a mesh is loaded for the zone +TLO.Navigation = {} + +----Returns true if a path exists for the target +---@param navigationParams string # Navigation parameters are the same parameters that would be passed to /nav +---@return boolean # Can navigate to the given [navigationParams] +function TLO.Navigation.PathExists(navigationParams) end + +----Returns true if a path exists for the target +---@param target target +---@return boolean # Can navigate to the given [target] +function TLO.Navigation.PathExists(target) end + +----Returns the length of the path if one is found +---@param navigationParams string # Navigation parameters are the same parameters that would be passed to /nav +---@return integer # Length of the path if one is found given [navigationParams] +function TLO.Navigation.PathLength(navigationParams) end + +----Returns the length of the path if one is found +---@param target target +---@return integer # Length of the path if one is found given [target] +function TLO.Navigation.PathLength(target) end \ No newline at end of file From f2091093cf389bdd063a99c1314a52dc6d796504 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 13:32:06 +0200 Subject: [PATCH 08/13] Skip userdata types --- plugins/NetBots/_datatypes.lua | 170 ++++++++++++++++----------------- 1 file changed, 85 insertions(+), 85 deletions(-) diff --git a/plugins/NetBots/_datatypes.lua b/plugins/NetBots/_datatypes.lua index 4d147da..6f677f9 100644 --- a/plugins/NetBots/_datatypes.lua +++ b/plugins/NetBots/_datatypes.lua @@ -1,89 +1,89 @@ --- @class netbot ---- @field public Name userdata|fun(): string Name of Name. ---- @field public Zone userdata|fun(): integer Zone ID of Name. ---- @field public Instance userdata|fun(): integer Instance ID of Name. ---- @field public ID userdata|fun(): integer|'NULL' Spawn ID of Name. +--- @field public Name fun(): string Name of Name. +--- @field public Zone fun(): integer Zone ID of Name. +--- @field public Instance fun(): integer Instance ID of Name. +--- @field public ID fun(): integer|'NULL' Spawn ID of Name. --- @field public Class class Class of Name. ---- @field public Level userdata|fun(): integer Level of Name. ---- @field public PctExp userdata|fun(): number Percent Experience of Name. ---- @field public PctAAExp userdata|fun(): number Percent AA Experience of Name. ---- @field public PctGroupLeaderExp userdata|fun(): number Percent Group Leader Experience of Name. EMU servers only. ---- @field public CurrentHPs userdata|fun(): integer Current Hitpoints of Name. ---- @field public MaxHPs userdata|fun(): integer Total Hitpoints of Name ---- @field public PctHPs userdata|fun(): integer Current Hitpoints percentage of Name. ---- @field public CurrentEndurance userdata|fun(): integer Current Endurace of Name. Requires Extended=1 in the ini. ---- @field public MaxEndurance userdata|fun(): integer Total Endurance of Name. Requires Extended=1 in the ini. ---- @field public PctEndurace userdata|fun(): integer Current Endurance percentage of Name. Requires Extended=1 in the ini. ---- @field public CurrentMana userdata|fun(): integer Current Mana of Name. ---- @field public MaxMana userdata|fun(): integer Total Mana of Name. ---- @field public PctMana userdata|fun(): integer Current Mana percentage of Name. ---- @field public PetID userdata|fun(): integer Spawn ID of Name's pet. ---- @field public PetHP userdata|fun(): integer Hitpoints of Name's pet. ---- @field public TargetID userdata|fun(): integer Spawn ID of Name's target. ---- @field public TargetHP userdata|fun(): integer Hitpoints of Name's target. +--- @field public Level fun(): integer Level of Name. +--- @field public PctExp fun(): number Percent Experience of Name. +--- @field public PctAAExp fun(): number Percent AA Experience of Name. +--- @field public PctGroupLeaderExp fun(): number Percent Group Leader Experience of Name. EMU servers only. +--- @field public CurrentHPs fun(): integer Current Hitpoints of Name. +--- @field public MaxHPs fun(): integer Total Hitpoints of Name +--- @field public PctHPs fun(): integer Current Hitpoints percentage of Name. +--- @field public CurrentEndurance fun(): integer Current Endurace of Name. Requires Extended=1 in the ini. +--- @field public MaxEndurance fun(): integer Total Endurance of Name. Requires Extended=1 in the ini. +--- @field public PctEndurace fun(): integer Current Endurance percentage of Name. Requires Extended=1 in the ini. +--- @field public CurrentMana fun(): integer Current Mana of Name. +--- @field public MaxMana fun(): integer Total Mana of Name. +--- @field public PctMana fun(): integer Current Mana percentage of Name. +--- @field public PetID fun(): integer Spawn ID of Name's pet. +--- @field public PetHP fun(): integer Hitpoints of Name's pet. +--- @field public TargetID fun(): integer Spawn ID of Name's target. +--- @field public TargetHP fun(): integer Hitpoints of Name's target. --- @field public Casting fun(): spell|'NULL' Spell Name is casting. ---- @field public State userdata|fun(): string State of Name (STUN STAND SIT DUCK BIND FEIGN DEAD UNKNOWN). ---- @field public Attacking userdata|fun(): boolean Is Name Attacking? ---- @field public AFK userdata|fun(): boolean Is Name AFK? ---- @field public Binding userdata|fun(): boolean Is Name kneeling? ---- @field public Ducking userdata|fun(): boolean Is Name ducking? ---- @field public Feigning userdata|fun(): boolean Is Name feigning? ---- @field public Grouped userdata|fun(): boolean Is Name in a group? (not necessarily your own group) ---- @field public Invis userdata|fun(): boolean Is Name invis? ---- @field public Levitating userdata|fun(): boolean Is Name levitating? ---- @field public LFG userdata|fun(): boolean Is Name LFG? ---- @field public Mounted userdata|fun(): boolean Is Name on a mount? ---- @field public Moving userdata|fun(): boolean Is Name moving? ---- @field public Detrimentals userdata|fun(): integer Total of detrimental counts for Name. ---- @field public Detrimental userdata|fun(): string A string list of all detrimental types affecting Name. ---- @field public Raid userdata|fun(): boolean Is Name in a raid? ---- @field public Sitting userdata|fun(): boolean Is Name sitting? ---- @field public Standing userdata|fun(): boolean Is Name standing? ---- @field public Stunned userdata|fun(): boolean Is Name stunned? ---- @field public FreeBuffSlots userdata|fun(): integer Total free buff slots Name has. ---- @field public InZone userdata|fun(): boolean|'NULL' Is Name in the same zone as you? ---- @field public InGroup userdata|fun(): boolean Is Name in your group? ---- @field public Leader userdata|fun(): string Is Name the group leader? ---- @field public Note userdata|fun(): string Is Name the group leader? ---- @field public Updated userdata|fun(): integer Timestamp of last NetBots update from Name. ---- @field public Gem userdata|fun(): string|fun(gemNumber?: integer): spell All spells Name has memorized, or Spell that is memorized in Gem[gemNumber]. ---- @field public Buff userdata|fun(): string|fun(gemNumberOrSpellName?: integer|string): spell All buffs Name currently has, or spell in Gem[gemNumberOrSpellName] or buff name by [gemNumberOrSpellName] ---- @field public Duration userdata|fun(): string|fun(gemNumber?: integer): integer Duration remaining of all buffs Name has or Duration of the buff on Name in slot Gem[gemNumber]. ---- @field public ShortBuff userdata|fun(): string|fun(gemNumberOrSpellName?: integer|string): spell All short duration buffs Name currently has, or spell in Gem[gemNumberOrSpellName] or buff name by [gemNumberOrSpellName] ---- @field public PetBuff userdata|fun(): string|fun(gemNumberOrSpellName?: integer|string): spell All pet buffs Name currently has, or spell in Gem[gemNumberOrSpellName] or buff name by [gemNumberOrSpellName] +--- @field public State fun(): string State of Name (STUN STAND SIT DUCK BIND FEIGN DEAD UNKNOWN). +--- @field public Attacking fun(): boolean Is Name Attacking? +--- @field public AFK fun(): boolean Is Name AFK? +--- @field public Binding fun(): boolean Is Name kneeling? +--- @field public Ducking fun(): boolean Is Name ducking? +--- @field public Feigning fun(): boolean Is Name feigning? +--- @field public Grouped fun(): boolean Is Name in a group? (not necessarily your own group) +--- @field public Invis fun(): boolean Is Name invis? +--- @field public Levitating fun(): boolean Is Name levitating? +--- @field public LFG fun(): boolean Is Name LFG? +--- @field public Mounted fun(): boolean Is Name on a mount? +--- @field public Moving fun(): boolean Is Name moving? +--- @field public Detrimentals fun(): integer Total of detrimental counts for Name. +--- @field public Detrimental fun(): string A string list of all detrimental types affecting Name. +--- @field public Raid fun(): boolean Is Name in a raid? +--- @field public Sitting fun(): boolean Is Name sitting? +--- @field public Standing fun(): boolean Is Name standing? +--- @field public Stunned fun(): boolean Is Name stunned? +--- @field public FreeBuffSlots fun(): integer Total free buff slots Name has. +--- @field public InZone fun(): boolean|'NULL' Is Name in the same zone as you? +--- @field public InGroup fun(): boolean Is Name in your group? +--- @field public Leader fun(): string Is Name the group leader? +--- @field public Note fun(): string Is Name the group leader? +--- @field public Updated fun(): integer Timestamp of last NetBots update from Name. +--- @field public Gem fun(): string|fun(gemNumber?: integer): spell All spells Name has memorized, or Spell that is memorized in Gem[gemNumber]. +--- @field public Buff fun(): string|fun(gemNumberOrSpellName?: integer|string): spell All buffs Name currently has, or spell in Gem[gemNumberOrSpellName] or buff name by [gemNumberOrSpellName] +--- @field public Duration fun(): string|fun(gemNumber?: integer): integer Duration remaining of all buffs Name has or Duration of the buff on Name in slot Gem[gemNumber]. +--- @field public ShortBuff fun(): string|fun(gemNumberOrSpellName?: integer|string): spell All short duration buffs Name currently has, or spell in Gem[gemNumberOrSpellName] or buff name by [gemNumberOrSpellName] +--- @field public PetBuff fun(): string|fun(gemNumberOrSpellName?: integer|string): spell All pet buffs Name currently has, or spell in Gem[gemNumberOrSpellName] or buff name by [gemNumberOrSpellName] --- @field public Stacks fun(buffId: integer): boolean Returns true if the buffId will stack on netbot. ---- @field public TotalAA userdata|fun(): integer Total AAs Name has. ---- @field public UsedAA userdata|fun(): integer Total spend AAs of Name. ---- @field public UnusedAA userdata|fun(): integer Total unspent AAs of Name. ---- @field public CombatState userdata|fun(): integer Combat State of Name. ---- @field public Counters userdata|fun(): integer Cursed,etc. counters for Name. ---- @field public Cursed userdata|fun(): integer Cursed counters for Name. ---- @field public Diseased userdata|fun(): integer Diseased counters for Name. ---- @field public Poisoned userdata|fun(): integer Poisoned counters for Name. ---- @field public Corrupted userdata|fun(): integer Corrupted counters for Name. ---- @field public EnduDrain userdata|fun(): integer Endurance drain counters for Name. ---- @field public LifeDrain userdata|fun(): integer HP drain counters for Name. ---- @field public ManaDrain userdata|fun(): integer Mana drain counters for Name. ---- @field public Blinded userdata|fun(): integer Blinded counters for Name. ---- @field public CastingLevel userdata|fun(): integer CastingLevel counters for Name. ---- @field public Charmed userdata|fun(): integer Charmed counters for Name. ---- @field public Feared userdata|fun(): integer Feared counters for Name. ---- @field public Healing userdata|fun(): integer Healing counters for Name. ---- @field public Invulnerable userdata|fun(): integer Invulnerable counters for Name. ---- @field public Mesmerized userdata|fun(): integer Mesmerized counters for Name. ---- @field public Rooted userdata|fun(): integer Rooted counters for Name. ---- @field public Silenced userdata|fun(): integer Silenced counters for Name. ---- @field public Slowed userdata|fun(): integer Slowed counters for Name. ---- @field public Snared userdata|fun(): integer Snared counters for Name. ---- @field public SpellCost userdata|fun(): integer SpellCost counters for Name. ---- @field public SpellSlowed userdata|fun(): integer SpellSlowed counters for Name. ---- @field public SpellDamage userdata|fun(): integer SpellDamage counters for Name. ---- @field public Trigger userdata|fun(): integer Trigger counters for Name. ---- @field public Resistance userdata|fun(): integer Resistance counters for Name. ---- @field public NoCure userdata|fun(): integer NoCure counters for Name. ---- @field public Location userdata|fun(): string The Y,X,Z location of Name. ---- @field public Heading userdata|fun(): string The Heading of Name. ---- @field public MacroName userdata|fun(): string The running macro of Name, empty string if none running. ---- @field public MacroState userdata|fun(): integer The macro state for Name. 0=No macro running, 1=Running, 2=Paused ---- @field public NavigationActive userdata|fun(): boolean If running a MQ2Nav path for Name. ---- @field public NavigationPaused userdata|fun(): boolean If a MQ2Nav path is paused for Name. \ No newline at end of file +--- @field public TotalAA fun(): integer Total AAs Name has. +--- @field public UsedAA fun(): integer Total spend AAs of Name. +--- @field public UnusedAA fun(): integer Total unspent AAs of Name. +--- @field public CombatState fun(): integer Combat State of Name. +--- @field public Counters fun(): integer Cursed,etc. counters for Name. +--- @field public Cursed fun(): integer Cursed counters for Name. +--- @field public Diseased fun(): integer Diseased counters for Name. +--- @field public Poisoned fun(): integer Poisoned counters for Name. +--- @field public Corrupted fun(): integer Corrupted counters for Name. +--- @field public EnduDrain fun(): integer Endurance drain counters for Name. +--- @field public LifeDrain fun(): integer HP drain counters for Name. +--- @field public ManaDrain fun(): integer Mana drain counters for Name. +--- @field public Blinded fun(): integer Blinded counters for Name. +--- @field public CastingLevel fun(): integer CastingLevel counters for Name. +--- @field public Charmed fun(): integer Charmed counters for Name. +--- @field public Feared fun(): integer Feared counters for Name. +--- @field public Healing fun(): integer Healing counters for Name. +--- @field public Invulnerable fun(): integer Invulnerable counters for Name. +--- @field public Mesmerized fun(): integer Mesmerized counters for Name. +--- @field public Rooted fun(): integer Rooted counters for Name. +--- @field public Silenced fun(): integer Silenced counters for Name. +--- @field public Slowed fun(): integer Slowed counters for Name. +--- @field public Snared fun(): integer Snared counters for Name. +--- @field public SpellCost fun(): integer SpellCost counters for Name. +--- @field public SpellSlowed fun(): integer SpellSlowed counters for Name. +--- @field public SpellDamage fun(): integer SpellDamage counters for Name. +--- @field public Trigger fun(): integer Trigger counters for Name. +--- @field public Resistance fun(): integer Resistance counters for Name. +--- @field public NoCure fun(): integer NoCure counters for Name. +--- @field public Location fun(): string The Y,X,Z location of Name. +--- @field public Heading fun(): string The Heading of Name. +--- @field public MacroName fun(): string The running macro of Name, empty string if none running. +--- @field public MacroState fun(): integer The macro state for Name. 0=No macro running, 1=Running, 2=Paused +--- @field public NavigationActive fun(): boolean If running a MQ2Nav path for Name. +--- @field public NavigationPaused fun(): boolean If a MQ2Nav path is paused for Name. \ No newline at end of file From 1cb42b3423bc2c26818b7721bff015d1fce7b76f Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 14:50:45 +0200 Subject: [PATCH 09/13] Fix invslot definitions --- datatype/_invslot.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/datatype/_invslot.lua b/datatype/_invslot.lua index d99f8a7..55f88ba 100644 --- a/datatype/_invslot.lua +++ b/datatype/_invslot.lua @@ -1,7 +1,7 @@ --- @class invslot ---- @field public ID number ID of this item slot (usable directly by /itemnotify) +--- @field public ID fun(): integer ID of this item slot (usable directly by /itemnotify) --- @field public Item item Item data for the item in this slot ---- @field public Name string For inventory slots not inside packs, the slot name, otherwise NULL +--- @field public Name fun(): string For inventory slots not inside packs, the slot name, otherwise NULL --- @field public Pack invslot Container that must be opened to access the slot with /itemnotify ---- @field public Slot number Slot number inside the pack which holds the item, otherwise NULL ---- @field public ToString number Same as ID \ No newline at end of file +--- @field public Slot fun(): integer Slot number inside the pack which holds the item, otherwise NULL +--- @field public ToString fun(): string Same as ID \ No newline at end of file From 2cf2684f2a270ac7414acc0adb4b672aece02946 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 14:50:51 +0200 Subject: [PATCH 10/13] Fix class definitions --- datatype/_class.lua | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/datatype/_class.lua b/datatype/_class.lua index 23c4847..ff90c1e 100644 --- a/datatype/_class.lua +++ b/datatype/_class.lua @@ -1,12 +1,12 @@ ---@class class ----@field public CanCast boolean Can cast seplls, including Bard ----@field public ClericType boolean Cleric/Paladin? ----@field public DruidType boolean Druid/Ranger? ----@field public HealerType boolean Cleric/Druid/Shaman? ----@field public ID number The class's ID # ----@field public MercType boolean Mercenary? ----@field public Name string The long name, as in "Ranger" ----@field public NecromancerType boolean Necromancer/Shadow Knight? ----@field public PureCaster boolean Any one of: Cleric, Druid, Shaman, Necromancer, Wizard, Mage, Enchanter ----@field public ShamanType boolean Shaman/Beastlord? ----@field public ShortName string The short name as in "RNG" \ No newline at end of file +---@field public CanCast fun(): boolean Can cast seplls, including Bard +---@field public ClericType fun(): boolean Cleric/Paladin? +---@field public DruidType fun(): boolean Druid/Ranger? +---@field public HealerType fun(): boolean Cleric/Druid/Shaman? +---@field public ID fun(): integer The class's ID # +---@field public MercType fun(): boolean Mercenary? +---@field public Name fun(): string The long name, as in "Ranger" +---@field public NecromancerType fun(): boolean Necromancer/Shadow Knight? +---@field public PureCaster fun(): boolean Any one of: Cleric, Druid, Shaman, Necromancer, Wizard, Mage, Enchanter +---@field public ShamanType fun(): boolean Shaman/Beastlord? +---@field public ShortName fun(): string The short name as in "RNG" \ No newline at end of file From 30fde0740d47b9295c136eb6264b213da5c8c19a Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 15:05:25 +0200 Subject: [PATCH 11/13] Some more definition fixes --- datatype/_pet.lua | 18 +++++++++--------- datatype/_plugin.lua | 4 ++-- datatype/_race.lua | 6 +++--- datatype/_range.lua | 17 +++++++++++++++-- datatype/_skill.lua | 16 ++++++++-------- 5 files changed, 37 insertions(+), 24 deletions(-) diff --git a/datatype/_pet.lua b/datatype/_pet.lua index 5aad88e..3357af9 100644 --- a/datatype/_pet.lua +++ b/datatype/_pet.lua @@ -2,16 +2,16 @@ ---@diagnostic disable: duplicate-set-field ---@class pet ----@field Combat boolean Combat state ----@field Ghold boolean GHold state ----@field Hold boolean Hold state ----@field ReGroup boolean ReGroup state ----@field Stance string Returns the pet's current stance (e.g. FOLLOW, GUARD) ----@field Stop boolean Stop state +---@field Combat fun(): boolean Combat state +---@field Ghold fun(): boolean GHold state +---@field Hold fun(): boolean Hold state +---@field ReGroup fun(): boolean ReGroup state +---@field Stance fun(): string Returns the pet's current stance (e.g. FOLLOW, GUARD) +---@field Stop fun(): boolean Stop state ---@field Target spawn Returns the pet's current target ----@field Taunt boolean Taunt state ----@field Focus boolean Focus state ----@field ID int returns pet ID +---@field Taunt fun(): boolean Taunt state +---@field Focus fun(): boolean Focus state +---@field ID fun(): integer returns pet ID local pet = {} ---Returns the slot number for the buff name diff --git a/datatype/_plugin.lua b/datatype/_plugin.lua index 54b8374..cf970dc 100644 --- a/datatype/_plugin.lua +++ b/datatype/_plugin.lua @@ -1,4 +1,4 @@ --- @class plugin ---- @field public Name string Name of the plugin +--- @field public Name fun(): string Name of the plugin --- @field public Version float Version number of the plugin ---- @field public ToString string Same as Name \ No newline at end of file +--- @field public ToString fun(): string Same as Name \ No newline at end of file diff --git a/datatype/_race.lua b/datatype/_race.lua index e19f719..8cfba4f 100644 --- a/datatype/_race.lua +++ b/datatype/_race.lua @@ -1,4 +1,4 @@ --- @class race ---- @field public ID number The ID of the race ---- @field public Name string The name of the race ---- @field public ToString string The name of the race \ No newline at end of file +--- @field public ID fun(): integer The ID of the race +--- @field public Name fun(): string The name of the race +--- @field public ToString fun(): string The name of the race \ No newline at end of file diff --git a/datatype/_range.lua b/datatype/_range.lua index b157017..af43a5b 100644 --- a/datatype/_range.lua +++ b/datatype/_range.lua @@ -1,3 +1,16 @@ --- @class range ---- @field public Between boolean is n Between the range of #1 and #2 both numbers included ---- @field public Inside boolean is n Inside the range of #1 and #2 both number excluded \ No newline at end of file +range = nil + +----True if N is between the range of #1 and #2, inclusive. +----Is 50 between 33 and 66? ${Range.Between[33,66:50]} returns TRUE +---@param n integer +---@param range string +---@return boolean is n Between the range of #1 and #2 both numbers included +function range.Between(n, range) end + +----True if N is within the range of #1 and #2, exclusive. +----Is 50 Inside 33 and 66? ${Range.Inside[33,66:50]} returns TRUE +---@param n integer +---@param range string +---@return boolean is n Inside the range of #1 and #2 both number excluded +function range.Inside(n, range) end diff --git a/datatype/_skill.lua b/datatype/_skill.lua index 143900c..85f509d 100644 --- a/datatype/_skill.lua +++ b/datatype/_skill.lua @@ -1,10 +1,10 @@ --- @class skill ---- @field public Activated boolean Returns TRUE if the skill has been activated ---- @field public AltTimer boolean Returns TRUE if the skill uses the kick/bash/slam/backstab/frenzy timer +--- @field public Activated fun(): boolean Returns TRUE if the skill has been activated +--- @field public AltTimer fun(): boolean Returns TRUE if the skill uses the kick/bash/slam/backstab/frenzy timer --- @field public ID number Skill number ---- @field public MinLevel number Minimum level for your class ---- @field public Name string Name of the skill ---- @field public ReuseTime number Reuse timer (what number format? ticks, seconds, deciseconds?) ---- @field public SkillCap number Skill cap based on your current level and class. ---- @field public StartingSkill number Base skill level for your class ---- @field public ToString string Same as Name \ No newline at end of file +--- @field public MinLevel fun(): integer Minimum level for your class +--- @field public Name fun(): string Name of the skill +--- @field public ReuseTime fun(): number Reuse timer (what number format? ticks, seconds, deciseconds?) +--- @field public SkillCap fun(): integer Skill cap based on your current level and class. +--- @field public StartingSkill fun(): integer Base skill level for your class +--- @field public ToString fun(): string Same as Name \ No newline at end of file From 16a488658399b5145ebb13b401f03d1fd312def6 Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 16:40:21 +0200 Subject: [PATCH 12/13] Fix Member function names --- datatype/_type.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/datatype/_type.lua b/datatype/_type.lua index 57d264b..4a5e15e 100644 --- a/datatype/_type.lua +++ b/datatype/_type.lua @@ -5,8 +5,8 @@ mqtype = nil ---@param id integer # Internal ID number ---@return string # Member name based on an internal ID number (based on 1 through N, not all values will be used) -function mqtype.TypeMember(id) end +function mqtype.Member(id) end ---@param name string ---@return integer # Member internal ID number based on name (will be a number from 1 to N) -function mqtype.TypeMember(name) end \ No newline at end of file +function mqtype.Member(name) end \ No newline at end of file From 485cac762fe6249bf3b354c4e93e776d7e86191a Mon Sep 17 00:00:00 2001 From: Aleksander Spro Date: Mon, 12 Sep 2022 16:59:43 +0200 Subject: [PATCH 13/13] Pet is of type pet --- datatype/_spawn.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datatype/_spawn.lua b/datatype/_spawn.lua index 18e938e..309f4bc 100644 --- a/datatype/_spawn.lua +++ b/datatype/_spawn.lua @@ -111,7 +111,7 @@ --- @field public Next spawn Next spawn in the list --- @field public Owner spawn Owner, if mercenary --- @field public Prev spawn Previous spawn in the list ---- @field public Pet spawn Pet +--- @field public Pet pet Pet --- @field public PctHPs number Percent hit points --- @field public PlayerState number returns a mask as an inttype which has the following meaning:0=Idle 1=Open 2=WeaponSheathed 4=Aggressive 8=ForcedAggressive 0x10=InstrumentEquipped 0x20=Stunned 0x40=PrimaryWeaponEquipped 0x80=SecondaryWeaponEquipped --- @field public Primary number Item ID of anything that may be in the Primary slot