movedOverPoints: Difference between revisions

From RPTools Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 4: Line 4:
|version=1.3.b75
|version=1.3.b75
|description=
|description=
Use to check if a token has moved through a shape that is defined by an array of pixel coordinates (formatted like the one received from {{func|getLastPath}} or the {{code|onTokenMove}} events {{code|macro.args}}.  
Use to check if a token has moved through a shape that is defined by an array of pixel coordinates (formatted like the one received from {{func|getLastPath}} or the {{code|onTokenMove}} event.


Returns a JSON array with coordinates of all cells that are
Returns a JSON array with coordinates of all cells that are

Revision as of 02:51, 29 March 2019

 This article is a stub, you can help the RPTools Wiki project by contributing content to expand this article.
 This article needs: lastPath-format specified, define/explain return value, examples

movedOverPoints() Function

Introduced in version 1.3.b75
Use to check if a token has moved through a shape that is defined by an array of pixel coordinates (formatted like the one received from getLastPath() or the onTokenMove event.

Returns a JSON array with coordinates of all cells that are

  • all or partially in the defined shape and
  • were traversed by the token.

Where each point is dependent on the grid type:

  • Square: Coordinates are the top-left corner.
  • Hex: Coordinates are the center point of the cell.
  • Isometric: Coordinates are the right-most point of the cell.
  • Gridless: Returns just the top-left corner of the token's ending location.

Usage

movedOverPoints(points)
movedOverPoints(points,path)

Parameters

  • points - JSON array of X/Y coordinate X/Y pairs that defines a polygon
  • path - JSON array of X/Y coordinate such as that returned by getLastPath()

Example

<!-- lets define a shape -->

[h: jsonArray = json.append("",
    json.set("", "x",   0, "y",   0),
    json.set("", "x",   0, "y", 100),
    json.set("", "x", 100, "y", 100),
    json.set("", "x",   100, "y", 0)
)]

<!-- check if token in context has moved through that shape -->
[r: movedOverPoints(jsonArray)]

With Second Parameter

[h: jsonArray = json.append("",
    json.set("", "x", 250, "y", 250),
    json.set("", "x", 250, "y", 550),
    json.set("", "x", 550, "y", 550),
    json.set("", "x", 550, "y", 250)
)]

Last Path: [r: lastPath = getLastPath()]
<br>
Moved Over: [r: movedOverPoints(jsonArray,lastPath)]