User Tools

Site Tools



mashlib

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
mashlib [2021/02/04 23:15] masshirodevmashlib [2021/12/25 22:01] (current) masshirodev
Line 1: Line 1:
 +===== MashLib =====
 A collection of useful commands that are going to be necessary to run my future addons. A collection of useful commands that are going to be necessary to run my future addons.
  
 ==== Support ==== ==== Support ====
-If you need support with this library or just wanna chat, join my [[https://discord.gg/CvA8zjNRnq|discord server]]! :D+If you need support with this library or just wanna chat, join my [Discord Server](https://discord.gg/CvA8zjNRnq)! :D
  
 ==== Structure ==== ==== Structure ====
Line 16: Line 17:
     Misc, -- Temporary values     Misc, -- Temporary values
     Battle, -- Battle related stuff     Battle, -- Battle related stuff
-    Hacks -- Useful hacks+    Hacks-- Useful hacks 
 +    Hunt, -- The Hunt related stuff 
 +    Logging, -- Entity Logging 
 +    Space, -- 2D and 3D space related stuff
 } }
 </code> </code>
Line 24: Line 28:
 <code lua> <code lua>
 --[[ --[[
-    Logs string to console and file +    Get current time 
-    @param {string} log +    @param {type} type = 'epoch', 'formatted' or 'formatted_no_spec' 
-    @param {string} type = 'string' or 'block'+    @return {string}
 ]] ]]
-MashLib.Helpers.Log(log, type)+function MashLib.Helpers.GetTime(type)
  
 --[[ --[[
-    Get current time +    Get current date 
-    @param {type} type = 'epoch', 'formatted' or 'formatted_no_spec'+    @param {type} type 'formatted' or 'formatted_no_spec'
     @return {string}     @return {string}
 ]] ]]
-MashLib.Helpers.GetTime(type)+function MashLib.Helpers.GetDate(type)
  
 --[[ --[[
Line 42: Line 46:
     @return {int}     @return {int}
 ]] ]]
-MashLib.Helpers.TimeSince(time)+function MashLib.Helpers.TimeSince(time)
  
 --[[ --[[
Line 49: Line 53:
     @returns {table}     @returns {table}
 ]] ]]
-MashLib.Helpers.GetKeyInfo(key)+function MashLib.Helpers.GetKeyInfo(key)
  
 --[[ --[[
Line 57: Line 61:
     @returns {string}     @returns {string}
 ]] ]]
-MashLib.Helpers.GetMapName(id, mode)+function MashLib.Helpers.GetMapName(id, mode)
  
 --[[ --[[
-    Return current map coordinates+    Returns float with a specific decimal
     @param {bool} float     @param {bool} float
     @returns {int}     @returns {int}
 ]] ]]
-MashLib.Helpers.ToFixed(float)+function MashLib.Helpers.ToFixed(float, dec)
  
 --[[ --[[
Line 71: Line 75:
     @returns {int}     @returns {int}
 ]] ]]
-MashLib.Helpers.SizeOf(tbl+function MashLib.Helpers.SizeOf(tbl)
- +
---[[ +
-    Return the size of the table +
-    @param {string} expansion -- shb or sb +
-    @returns {int} +
-]] +
-MashLib.Helpers.GetMapsByExpansion(expansion)+
  
 --[[ --[[
Line 85: Line 82:
     @returns {int}     @returns {int}
 ]] ]]
-MashLib.Helpers.HandleCoolDowns(time)+function MashLib.Helpers.HandleCoolDowns(time)
  
 --[[ --[[
Line 92: Line 89:
     @returns {int}     @returns {int}
 ]] ]]
-MashLib.Helpers.GetMax(tbl)+function MashLib.Helpers.GetMax(tbl)
  
 --[[ --[[
Line 99: Line 96:
     @returns {int}     @returns {int}
 ]] ]]
-MashLib.Helpers.GetMin(tbl)+function MashLib.Helpers.GetMin(tbl) 
 + 
 +--[[ 
 +    Get the normalization translation table 
 +    @returns {table} 
 +]] 
 +function MashLib.Helpers.GetNormalizationTable() 
 + 
 +--[[ 
 +    Get the special char normalization translation table 
 +    @returns {table} 
 +]] 
 +function MashLib.Helpers.GetSpecialCharTable() 
 + 
 +--[[ 
 +    Normalizes a string 
 +    @param {string} string 
 +    @param {boolean} parameterize 
 +    @returns {string} 
 +]] 
 +function MashLib.Helpers.Normalize(string, parameterize) 
 + 
 +--[[ 
 +    Returns the file name from path 
 +    @param {string} path 
 +    @returns {string} 
 +]] 
 +function MashLib.Helpers.GetFileNameFromPath(path) 
 + 
 +--[[ 
 +    Split string 
 +    @param {string} inputstr 
 +    @param {string} separator 
 +    @param {string} datatype 
 +    @returns {string} 
 +]] 
 +function MashLib.Helpers.SplitString(inputstr, sep, datatype) 
 + 
 +--[[ 
 +    Join table into a string 
 +    @param {string} delimiter 
 +    @param {table} table 
 +    @returns {table} 
 +]] 
 +function MashLib.Helpers.Join(delimiter, table) 
 + 
 +--[[ 
 +    Limit a string length 
 +    @param {string} string 
 +    @param {int} length 
 +    @returns {string} 
 +]] 
 +function MashLib.Helpers.LimitLength(string, length) 
 + 
 +--[[ 
 +    Validates an email string 
 +    @param {string} str 
 +    @returns {boolean} 
 +]] 
 +function MashLib.Helpers.ValidateEmail(str) 
 + 
 +--[[ 
 +    Returns the percentage of a value 
 +    @param {number} percent 
 +    @param {number} value 
 +    @returns {number} 
 +]] 
 +function MashLib.Helpers.PercentOf(percent, value) 
 + 
 +--[[ 
 +    Removes a value from a table 
 +    @param {table} table 
 +    @param {string} value 
 +    @returns {table} 
 +]] 
 +function MashLib.Helpers.RemoveByValue(table, value) 
 + 
 +--[[ 
 +    Gets a key/value from a value 
 +    @param {table} table 
 +    @param {string} value 
 +    @param {boolean} keyonly 
 +    @returns {table} 
 +]] 
 +function MashLib.Helpers.GetByValue(table, value, keyonly) 
 + 
 +--[[ 
 +    Formats a number with commas 
 +    @param {string} number 
 +    @returns {string} 
 +]] 
 +function MashLib.Helpers.FormatNumber(number) 
 + 
 +--[[ 
 +    Escapes slashes / 
 +    @param {string} string 
 +]] 
 +function MashLib.Helpers.EscapeSlash(string) 
 + 
 +--[[ 
 +    Returns the first entry in a table 
 +    @param {table} table 
 +    @param {bool} key 
 +]] 
 +function MashLib.Helpers.First(table, key) 
 + 
 +--[[ 
 +    Returns the last entry in a table 
 +    @param {table} table 
 +    @param {bool} key 
 +]] 
 +function MashLib.Helpers.Last(table, key) 
 + 
 +--[[ 
 +    Returns the table without empty key/values 
 +    @param {table} table 
 +    @return {table} 
 +]] 
 +function MashLib.Helpers.DeleteEmpty(table) 
 + 
 +--[[ 
 +    Returns a table without the key/value passed 
 +    @param {table} table 
 +    @param {string} key 
 +    @return {table} 
 +]] 
 +function MashLib.Helpers.DeleteByKey(table, key) 
 + 
 +--[[ 
 +    Returns a table without the key/value passed 
 +    @param {table} table 
 +    @param {any} value 
 +    @return {table} 
 +]] 
 +function MashLib.Helpers.DeleteByValue(table, value) 
 + 
 +--[[ 
 +    Returns minion's quest id from GarlandTools quest id 
 +    @param {int} questId 
 +    @return {int} 
 +]] 
 +function MashLib.Helpers.GetMinionQuestId(questId) 
 </code> </code>
  
Line 108: Line 247:
     @returns {Table}     @returns {Table}
 ]] ]]
-MashLib.System.GetCommonKeys()+function MashLib.System.GetCommonKeys()
  
 --[[ --[[
Line 115: Line 254:
     @returns {table}     @returns {table}
 ]] ]]
-MashLib.System.GetServer(id)+function MashLib.System.GetServer(id) 
 + 
 +--[[ 
 +    Get channel list 
 +    @param {int} id 
 +    @returns {table} 
 +]] 
 +function MashLib.System.GetChannelList() 
 + 
 +--[[ 
 +    Get channel by id 
 +    @returns {table} 
 +]] 
 +function MashLib.System.GetChannel(id)
  
 --[[ --[[
Line 122: Line 274:
     @returns {string}     @returns {string}
 ]] ]]
-MashLib.System.GetRegion(id)+function MashLib.System.GetRegion(id)
  
 --[[ --[[
Line 129: Line 281:
     @returns {string}     @returns {string}
 ]] ]]
-MashLib.System.GetJob(id)+function MashLib.System.GetJob(id)
  
 --[[ --[[
Line 136: Line 288:
     @returns {int}     @returns {int}
 ]] ]]
-MashLib.System.GetJobId(name)+function MashLib.System.GetJobId(name)
  
 --[[ --[[
Line 143: Line 295:
     @returns {int}     @returns {int}
 ]] ]]
-MashLib.System.GetJobList(dominion)+function MashLib.System.GetJobList(dominion)
  
 --[[ --[[
Line 149: Line 301:
     @returns {boolean}     @returns {boolean}
 ]] ]]
-MashLib.System.CheckLogin()+function MashLib.System.CheckLogin()
  
 --[[ --[[
-    Get current map's ID by name+    Check if the game is loading 
 +    @returns {boolean} 
 +]] 
 +function MashLib.System.IsLoading() 
 + 
 +--[[ 
 +    Get map's ID by name
     @param {string} name     @param {string} name
-    @param {string} continent 
     @return {int}     @return {int}
 ]] ]]
-MashLib.System.GetMap(continent, name)+function MashLib.System.GetMapId(name)
  
 --[[ --[[
-    Get player info+    Get current map'info by Id 
 +    @param {int} id
     @return {table}     @return {table}
 ]] ]]
-MashLib.System.GetUserInfo()+function MashLib.System.GetMap(id) 
 + 
 +--[[ 
 +    Loads and run a lua file 
 +    @param {string} filePath 
 +    @return {variant} Code return 
 +]] 
 +function MashLib.System.Require(filePath) 
 + 
 +--[[ 
 +    Converts TerritoryId to MapId 
 +    @param {int} territoryid 
 +    @return {int} 
 +]] 
 +function MashLib.System.GetMapIDFromTerritoryID(id) 
 + 
 +--[[ 
 +    Get expansion list 
 +    @param {string} type 
 +    @return {table} 
 +]] 
 +function MashLib.System.GetExpansionList(type) 
 + 
 +--[[ 
 +    Get expansion by id 
 +    @param {int} expansionid 
 +    @return {table} 
 +]] 
 +function MashLib.System.GetExpansionByID(expansionid) 
 + 
 +--[[ 
 +    Returns the file names inside a folder, and the files inside subfolders 
 +    Thanks to xSalice! <3 
 +    @param {string} folder path 
 +    @return {table} 
 +]] 
 +function MashLib.System.GetFilesInside(folder) 
 + 
 +--[[ 
 +    Changes to and enables Assist Bot Mode 
 +]] 
 +function MashLib.System.EnableAssistMode() 
 + 
 +--[[ 
 +    Disables Bot Mode 
 +]] 
 +function MashLib.System.TurnOffBotMode() 
 + 
 +--[[ 
 +    Searchs for an action by Name 
 +    @param {int} type 
 +    @param {string} name 
 +]] 
 +function MashLib.System.SearchAction(type, name) 
 + 
 +--[[ 
 +    Searchs for an action by Id 
 +    @param {int} type 
 +    @param {int} id 
 +]] 
 +function MashLib.System.SearchActionById(type, id) 
 + 
 +--[[ 
 +    Searchs for an entity nearby 
 +    @param {int} contentId 
 +]] 
 +function MashLib.System.FindEntityAroundPlayer(contentId)
 </code> </code>
  
Line 172: Line 396:
     @param {string} path     @param {string} path
 ]] ]]
-MashLib.Powershell.ExecuteFile(path)+function MashLib.Powershell.ExecuteFile(path)
  
 --[[ --[[
Line 179: Line 403:
     @param {string} path on system     @param {string} path on system
 ]] ]]
-MashLib.Powershell.DownloadFile(url, path)+function MashLib.Powershell.DownloadFile(url, path)
  
 --[[ --[[
Line 185: Line 409:
     @param {string} url     @param {string} url
 ]] ]]
-MashLib.Powershell.OpenLink(url)+function MashLib.Powershell.OpenLink(url
 + 
 +--[[ 
 +    Executes a command on powershell 
 +    @param {string} command 
 +]] 
 +function MashLib.Powershell.Execute(command) 
 + 
 +--[[ 
 +    Plays a sound 
 +    @NOTE: Not yet implemented 
 +]] 
 +function MashLib.Powershell.PlaySound()
 </code> </code>
  
Line 194: Line 430:
     @return {table}     @return {table}
 ]] ]]
-MashLib.Character.GetBuffList()+function MashLib.Character.GetBuffList()
  
 --[[ --[[
-    Moves character to coords +    Get the list of buffs on your character 
-    @param {table} coords+    @return {table}
 ]] ]]
-MashLib.Character.MoveTo(coords)+function MashLib.Character.HasBuff(id)
  
 --[[ --[[
-    Return current map coordinates +    Teleports the player to the map with corresponding id 
-    @param {bool} exact +    @param {intaetheryteid
-    @returns {table}+
 ]] ]]
-MashLib.Character.GetMapCoords(exact)+function MashLib.Character.TeleportTo(aetheryteid)
  
 --[[ --[[
-    Teleports the player to the map with corresponding id+    Teleports the player to the first aetheryte of a map
     @param {int} mapid     @param {int} mapid
 ]] ]]
-MashLib.Character.TeleportTo(mapid)+function MashLib.Character.TeleportToFirst(mapid
 + 
 +--[[ 
 +    Teleports the player to the first aetheryte of a map, skips if already there 
 +    @param {int} mapid 
 +]] 
 +function MashLib.Character.TeleportToMap(mapid) 
 + 
 +--[[ 
 +    Checks if character is casting teleport 
 +    @return {boolean} 
 +]] 
 +function MashLib.Character.IsCastingTeleport()
  
 --[[ --[[
Line 219: Line 466:
     @param {int} id     @param {int} id
 ]] ]]
-MashLib.Character.SetMoveModeTo(id)+function MashLib.Character.SetMoveModeTo(id) 
 +</code>
  
 +=== Character.Inventory ===
 +<code lua>
 --[[ --[[
     Return an inventory item info by id     Return an inventory item info by id
Line 246: Line 496:
             .isbinding             .isbinding
 ]] ]]
-MashLib.Character.Inventory.GetItemDetails(id)+function MashLib.Character.Inventory.GetItemDetails(id
 + 
 +--[[ 
 +    Get inventory item list to a txt file for speeder 
 +    @param {string} search 
 +    @param {string} norepeat 
 +]] 
 +function MashLib.Character.Inventory.GetSpeederInventory(search, norepeat) 
 + 
 +--[[ 
 +    Get inventory item list or search 
 +    @param {string} search 
 +    @param {string} norepeat 
 +    @return {table} items 
 +]] 
 +function MashLib.Character.Inventory.Get(search, norepeat) 
 + 
 +--[[ 
 +    Get item from inventory by Id if quantity == 1 
 +    @param {string} id 
 +    @return {table} 
 +]] 
 +function MashLib.Character.Inventory.GetOneById(id) 
 + 
 +--[[ 
 +    Get item from inventory by Id 
 +    @param {string} id 
 +    @param {string} norepeat 
 +    @return {table} 
 +]] 
 +function MashLib.Character.Inventory.GetById(id, norepeat) 
 + 
 +--[[ 
 +    Get item list or search in a specific inventory 
 +    @param {string} inventory 
 +    @param {string} search 
 +    @param {boolean} norepeat 
 +    @return {table} items 
 +]] 
 +function MashLib.Character.Inventory.GetFromSpecific(inventory, search, norepeat) 
 + 
 +--[[ 
 +    Move an item to another slot 
 +    @param {int} inventory 
 +    @param {int} slot 
 +    @param {int} toinventory 
 +    @param {int} toslot 
 +]] 
 +function MashLib.Character.Inventory.Move(inventory, slot, toinventory, toslot) 
 + 
 +--[[ 
 +    Move an item object to another slot 
 +    @param {int} toinventory 
 +    @param {int} toslot 
 +]] 
 +function MashLib.Character.Inventory.MoveObject(object, toinventory, toslot)
 </code> </code>
  
Line 256: Line 561:
     @return {table}     @return {table}
 ]] ]]
-MashLib.API.GetEndpoint(name)+function MashLib.API.GetEndpoint(name)
 </code> </code>
  
Line 266: Line 571:
     @return {table}     @return {table}
 ]] ]]
-MashLib.Crafting.GetCondition(name)+function MashLib.Crafting.GetCondition(name)
 </code> </code>
  
 === Gathering === === Gathering ===
- 
 === Battle === === Battle ===
 <code lua> <code lua>
Line 278: Line 582:
     @return {table}     @return {table}
 ]] ]]
-MashLib.Battle.GetEncounter(id)+function MashLib.Battle.GetEncounter(id)
  
 --[[ --[[
-    Get encounter list+    Get list of skills on a specific job 
 +    @param {int} job
     @return {table}     @return {table}
 ]] ]]
-MashLib.Battle.GetEncounterList()+function MashLib.Battle.GetSkillListByJobID(job) 
 +</code>
  
 +=== Hacks ===
 +<code lua>
 --[[ --[[
-    Get last skill casted'id +    Set character'speed 
-    @return {int} id+    @param {int|nilfly 
 +    @param {int|nil} walk 
 +    @param {int|nil} mount
 ]] ]]
-MashLib.Battle.GetLastCastID()+function MashLib.Hacks.Speed.Set(fly, walk, mount) 
 +</code>
  
 +=== Hunt ===
 +<code lua>
 --[[ --[[
-    Get skill ID by Name +    Get a mark's name by it's id 
-    @param {intjob +    @param {stringexpansion 
-    @param {string} name +    @param {string} rank 
-    @return {int} id+    @param {int} contentid 
 +    @retun {string}
 ]] ]]
-MashLib.Battle.GetSkillId(jobname)+function MashLib.Hunt.GetMarkNameByID(expansionrank, contentid)
  
 --[[ --[[
-    Get skill Name by ID +    Get mark list 
-    @param {intjob +    @param {stringexpansion 
-    @param {idid +    @param {stringrank 
-    @return {intid+    @retun {table}
 ]] ]]
-MashLib.Battle.GetSkillNameByID(jobid)+function MashLib.Hunt.GetMarkList(expansionrank)
  
 --[[ --[[
-    Get a list of skills on a specific job +    Gets the mark list on a map 
-    @param {int} job+    @param {int} mapid 
 +    @retun {table} 
 +]] 
 +function MashLib.Hunt.GetMarkListOnMap(mapid) 
 + 
 +--[[ 
 +    Gets the mark list per map 
 +    @param {string} option | to_combo 
 +    @retun {table} 
 +]] 
 +function MashLib.Hunt.GetMarkListPerMap(option) 
 +</code> 
 + 
 +=== Space === 
 +<code lua> 
 +--[[ 
 +    Moves character to coords 
 +    @param {table} coords 
 +]] 
 +function MashLib.Space.MoveTo(coords) 
 + 
 +--[[ 
 +    Stops character from moving 
 +]] 
 +function MashLib.Space.Stop() 
 + 
 +--[[ 
 +    Get random coordinates around another coordinates, in a circular area 
 +    Thanks to Kitanoi <3 
 +    @param {table} coords 
 +    @param {int} radius
     @return {table}     @return {table}
 ]] ]]
-MashLib.Battle.GetSkillListByJobID(job)+function MashLib.Space.RandomPosCloseToCoords(coords, radius)
  
 --[[ --[[
-    Get a list of skills with specified cooldowns on specific job +    Calculates the 2D distance between two points 
-    @param {int} job +    Thanks to Kali <3 
-    @param {booleanto_combo+    @param {table} pos 
 +    @param {table} pos2 
 +    @param {bool} ignoreradius 
 +    @return {int} 
 +]] 
 +function MashLib.Space.Distance2D(pos, pos2, ignoreradius) 
 + 
 +--[[ 
 +    Calculates the 3D distance between two points 
 +    Thanks to Kali <3 
 +    @param {table} pos 
 +    @param {table} pos2 
 +    @param {bool} ignoreradius 
 +    @return {int} 
 +]] 
 +function MashLib.Space.Distance3D(pos, pos2, ignoreradius) 
 + 
 +--[[ 
 +    Places flag in the map 
 +    @param {int} territoryid 
 +    @param {tableworld coords -> x, z 
 +    @param optinal {int} mapid 
 +]] 
 +function MashLib.Space.SetMapFlag(territoryid, coords, mapid) 
 + 
 +--[[ 
 +    Gets the flag position in the map
     @return {table}     @return {table}
 ]] ]]
-MashLib.Battle.GetSkillListWithCDByJobID(job, to_combo)+function MashLib.Space.GetMapFlag()
  
 --[[ --[[
-    NIN - Hold TCJ on key down +    Converts world coordinates to map coordinates 
-    @param {strngkey+    @param optional {table} world coords 
 +    @param optional {int} mapid 
 +    @param optional {bool} exact 
 +    @return {table}
 ]] ]]
-MashLib.Battle.NIN.HoldTCJ(key) +function MashLib.Space.WorldToMap(coords, mapid, exact)
-</code>+
  
-=== Hacks === 
-<code lua> 
 --[[ --[[
-    Set character's speed +    Converts map coordinates to world coordinates 
-    @param {intfly +    Thanks to Kali and Kitano <3 
-    @param {int} walk +    @param {tablemap coords 
-    @param {intmount+    @param {int} scale 
 +    @return {table}
 ]] ]]
-MashLib.Hacks.SpeedHacks.Set(fly, walkmount)+function MashLib.Space.MapToWorld(coordsmapid)
  
 --[[ --[[
-    Reset character'speed+    Gets a specific map'scale 
 +    @param {int} mapid 
 +    @return {int} 
 +]] 
 +function MashLib.Space.GetMapScale(id) 
 +</code> 
 + 
 +=== Logging === 
 +<code lua> 
 +--[[ 
 +    Logs an entity 
 +    @param {table} target 
 +    @return {table}
 ]] ]]
-MashLib.Hacks.SpeedHacks.Reset()+function MashLib.Logging.Entity(target)
 </code> </code>
mashlib.1612480522.txt.gz · Last modified: 2021/02/04 23:15 by masshirodev