User Tools

Site Tools



argus

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
Next revisionBoth sides next revision
argus [2020/02/15 04:04] rikudouargus [2020/03/18 04:52] rikudou
Line 24: Line 24:
 ====== Documentation ====== ====== Documentation ======
 //italics// = type, __underline__ = optional //italics// = type, __underline__ = optional
-===== Functions =====+===== Detection Functions =====
   * **''Argus.getCurrentGroundAOEs()''**   * **''Argus.getCurrentGroundAOEs()''**
     * Returns //table GroundAOE// of current AOEs that are cast on the ground where each **key is the entityID** source, and value is the GroundAOE structure (listed below). These are **not** attached to an entity (they do not originate from an entity centerpoint). **Also returns AOEs before the telegraphs are drawn, and returns AOEs with no telegraphs.**     * Returns //table GroundAOE// of current AOEs that are cast on the ground where each **key is the entityID** source, and value is the GroundAOE structure (listed below). These are **not** attached to an entity (they do not originate from an entity centerpoint). **Also returns AOEs before the telegraphs are drawn, and returns AOEs with no telegraphs.**
Line 30: Line 30:
     * Returns //table DirectionalAOE// of current AOEs that are on the ground where each **key is the entityID** source, and value is the //DirectionalAOE// structure (listed below) and are attached to an entity (they originate from the source entity's center point). **Most commonly used for line AOEs**, conals, and donuts, but also includes circles. **Also returns AOEs before the telegraphs are drawn, also returns AOEs with no telegraphs.**     * Returns //table DirectionalAOE// of current AOEs that are on the ground where each **key is the entityID** source, and value is the //DirectionalAOE// structure (listed below) and are attached to an entity (they originate from the source entity's center point). **Most commonly used for line AOEs**, conals, and donuts, but also includes circles. **Also returns AOEs before the telegraphs are drawn, also returns AOEs with no telegraphs.**
   * **''Argus.getCurrentTethers()''**   * **''Argus.getCurrentTethers()''**
-    * Returns //table// where each key is ///number// entityID and each value is //table// tether. The list is all active tethers/chains/links between 2 entities. Each tether table has the following values: //number// type, //number// targetID. This type is similar to overhead marker types, each type will have exactly the same animation for every instance that shares that type (ex type 2 tethers will always look the same). However, how or when the tether resolves, is not known to the client.+    * Returns //table// where each key is //number// entityID and each value is //table// tether. The list is all active tethers/chains/links between 2 entities. Each tether table has the following values: //number// type, //number// targetID. This type is similar to overhead marker types, each type will have exactly the same animation for every instance that shares that type (ex type 2 tethers will always look the same). However, how or when the tether resolves, is not known to the client.
   * **''Argus.registerOnMarkerAdd(//function// func)''**   * **''Argus.registerOnMarkerAdd(//function// func)''**
     * Registers //func// into marker func list, and //func// will get called any time there is an overhead marker added to an entity. Function //func// should be defined with the following arguments: ''func(//number// entityID, //number// markerType)''. Argument //entityID// is the id of the entity to which the marker is being added to, and argument //markerType// is the marker type that is added to entity. Marker type is consistent across mechanics. A marker of type 2 will always have the same animation.     * Registers //func// into marker func list, and //func// will get called any time there is an overhead marker added to an entity. Function //func// should be defined with the following arguments: ''func(//number// entityID, //number// markerType)''. Argument //entityID// is the id of the entity to which the marker is being added to, and argument //markerType// is the marker type that is added to entity. Marker type is consistent across mechanics. A marker of type 2 will always have the same animation.
Line 37: Line 37:
   * **''Argus.registerOnEntityChannel(//function// func)''**   * **''Argus.registerOnEntityChannel(//function// func)''**
     * Registers //func// into entity channel func list. This func will get called any time the **server** sends a packet to the client, that entity has begun channeling. This means that the function is almost 100% reliable to use. Function //func// should be defined with the following arguments ''func(//number// entityID, //number// channelID, //number// targetID, //number// channelTimeMax)''.     * Registers //func// into entity channel func list. This func will get called any time the **server** sends a packet to the client, that entity has begun channeling. This means that the function is almost 100% reliable to use. Function //func// should be defined with the following arguments ''func(//number// entityID, //number// channelID, //number// targetID, //number// channelTimeMax)''.
 +
 +===== Draw Functions =====
   * **''Argus.rotatePosAroundPos(//table// originPos, //table// posToRotate, //number// angle)''**   * **''Argus.rotatePosAroundPos(//table// originPos, //table// posToRotate, //number// angle)''**
     * returns //table// with keys ''x, y, z'' of rotated pos. Argument ''originPos'' is the position the rotation should be around in a table with the keys x, y, z defined, and argument //posToRotate// is the world Pos to rotate. This function is most commonly used for getting the correct positions for line aoes. example usage for line aoe: <code lua>            local length, width = aoe.aoeLength, (aoe.aoeWidth / 2)     * returns //table// with keys ''x, y, z'' of rotated pos. Argument ''originPos'' is the position the rotation should be around in a table with the keys x, y, z defined, and argument //posToRotate// is the world Pos to rotate. This function is most commonly used for getting the correct positions for line aoes. example usage for line aoe: <code lua>            local length, width = aoe.aoeLength, (aoe.aoeWidth / 2)
Line 56: Line 58:
   * **''Argus.addCrossFilled(//number// x, //number// y, //number// z, //number// length, //number// width, //number// heading, //U32 Color// colorFill, //U32 Color// colorOutline, //number// __outlineThickness = 1.0__)''**   * **''Argus.addCrossFilled(//number// x, //number// y, //number// z, //number// length, //number// width, //number// heading, //U32 Color// colorFill, //U32 Color// colorOutline, //number// __outlineThickness = 1.0__)''**
     * Draws a filled rectangle at **world coordinates** with //length// and //width// rotated around the center point //x, y, z// in the direction of //heading//. //U32 Color// can be retrieved from the function GUI:ColorConvertFloat4ToU32(). if colorOutline is not specified, then an outline will not be drawn. Tip: You can set the alpha on colorFill to be 0 and specify an outline color with alpha > 0 to have only the outline drawn.  This function is commonly used for drawing cross aoes (type 11).     * Draws a filled rectangle at **world coordinates** with //length// and //width// rotated around the center point //x, y, z// in the direction of //heading//. //U32 Color// can be retrieved from the function GUI:ColorConvertFloat4ToU32(). if colorOutline is not specified, then an outline will not be drawn. Tip: You can set the alpha on colorFill to be 0 and specify an outline color with alpha > 0 to have only the outline drawn.  This function is commonly used for drawing cross aoes (type 11).
 +  * **''Argus.addTimedCircleFilled(//number// timeout, //number// x, //number// y, //number// z, //number// radius, //number// segments, //table// rgbFill, //number// alphaMin, //number// alphaMax, //number// delay, //number// entityAttachID, //U32 Color// __colorOutline__, //number// __outlineThickness = 1.0__)''**
 +    * Adds a filled circle for specified time //timeout// in ms. Argument //rgbfill// is a table that consists of ''{r = 0, g = 0, b = 0}'', replacing the values with your specified color from a range of 0 - 1. If //entityAttachID// is specified, the circle will be attached to the position of the specified entity id.
 +
 +
 +
  
 ===== Structures ===== ===== Structures =====
Line 83: Line 90:
     * ''//number// aoeType''     * ''//number// aoeType''
       * Animation/omen type of AOE       * Animation/omen type of AOE
-    * ''//number// aoeRadius'' +    * ''//number// aoeLength'' 
-      * Radius in yalms of aoe+      * Length/radius in yalms of aoe
     * ''//number// aoeWidth''     * ''//number// aoeWidth''
       * Width in yalms of aoe (0 for circles and cones etc)       * Width in yalms of aoe (0 for circles and cones etc)
argus.txt · Last modified: 2021/07/14 21:11 by rikudou