getTokenX

From RPTools Wiki
Revision as of 20:12, 14 March 2023 by Taustin (talk | contribs) (Text replacement - "source>" to "syntaxhighlight>")
Jump to navigation Jump to search

getTokenX() Function

Introduced in version 1.3b51
Gets the X coordinate of a token.

Usage

<source lang="mtmacro" line> getTokenX() getTokenX(units) getTokenX(units, id) getTokenX(units, id, mapname) </syntaxhighlight> Parameters

  • units - If set to false(0), the coordinate is a location on the grid in number of cells. Defaults to true(1), where the coordinate is in number of Pixels (in other words 0:distance in cells, 1: distance in pixels)'.
  • id - The id of the token to move, defaults to the Current Token.
  • mapname - The name of the map to find the token. Defaults to the current map.


Which coordinate is returned for tokens larger then one cell

 Note: This refers to a proposed change that has not been implemented in the main code base yet.
 Details:
The marked exception will disappear.

  • With the exception of

one case the coordinates of the cell are given where the UPPER LEFT CORNER of the the image of the token is in at that moment.

The exception to this is when the token is 'Freesize' AND 'Snapped to Grid' AND NOT 'On Background Layer'. In that particular case the coordinates of the cell where the upper left corner of the FOOTPRINT (NOT image) of the token is at. The footprint can be recognized when you move the token on the Token layer, it will leave the white marker on the field. The footprint can be the same size as the image and it is if a preset size is used. With freesize however the size of the footprint is either the original size of the image OR when you have used a preset (e.g. 'large') it will have the size of the preset as footprint.

  • Note that if you rotate the image such that the image is no longer in the upper left corner, the upper left corner of its native position is still returned as its coordinate.

Examples

Moves the Current Token right 5 pixels, and up 10 pixels.

<source lang="mtmacro" line> [h: CurrentX = getTokenX()] [h: CurrentY = getTokenY()] [h: NewX = CurrentX + 5] [h: NewY = CurrentY - 10] [h: moveToken(NewX, NewY)] </syntaxhighlight>

Moves the Current Token right 5 cells, and up 10 cells. <source lang="mtmacro" line> [h: CurrentX = getTokenX(0)] [h: CurrentY = getTokenY(0)] [h: NewX = CurrentX + 5] [h: NewY = CurrentY - 10] [h: moveToken(NewX, NewY, 0)]

</syntaxhighlight>

See Also

Version Changes

  • 1.5.8 - Added mapname parameter option.