isVisible: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
(2 intermediate revisions by 2 users not shown) | |||
Line 4: | Line 4: | ||
|description= | |description= | ||
Check whether a point on the map is visible from a token or not. | Check whether a point on the map is visible from a token or not. | ||
It returns 1 | It returns 1 if the token is visible, 0 otherwise. This vision is based off of the impersonated token. | ||
|usage= | |usage= | ||
< | <syntaxhighlight lang="mtmacro" line> | ||
isVisible(x,y) | isVisible(x,y) | ||
isVisible(x,y,id) | isVisible(x,y,id) | ||
</ | </syntaxhighlight> | ||
'''Parameter''' | '''Parameter''' | ||
{{param|x|Then tokens x coordinate. Always in map units, not grid .}} | {{param|x|Then tokens x coordinate. Always in map units, not grid .}} | ||
Line 18: | Line 18: | ||
|example= | |example= | ||
A simple example for testing out {{code|isVisible()}}. Drop the default tokens "Hero" and "Troll" on a map. Make sure "Hero" has sight (make him PC or set sight manually). You can then execute the following code as a campaign macro to check if the Hero can see the Troll. | A simple example for testing out {{code|isVisible()}}. Drop the default tokens "Hero" and "Troll" on a map. Make sure "Hero" has sight (make him PC or set sight manually). You can then execute the following code as a campaign macro to check if the Hero can see the Troll. | ||
< | <syntaxhighlight lang="mtmacro" line> | ||
<!-- lets check if token1 can see token2 --> | <!-- lets check if token1 can see token2 --> | ||
[h: token1 = "Hero"] | [h: token1 = "Hero"] | ||
Line 35: | Line 35: | ||
<!-- and final the check for visiblity --> | <!-- and final the check for visiblity --> | ||
[r:getName(id1)] <b>[r, if(isVisible(x,y, id1)): "can"; "cannot"]</b> see [r:getName(id2)]. | [r:getName(id1)] <b>[r, if(isVisible(x,y, id1)): "can"; "cannot"]</b> see [r:getName(id2)]. | ||
</ | </syntaxhighlight> | ||
|also= | |also= |
Revision as of 20:13, 15 March 2023
isVisible() Function
• Introduced in version 1.3b69
Check whether a point on the map is visible from a token or not.
It returns 1 if the token is visible, 0 otherwise. This vision is based off of the impersonated token.
Usage
isVisible(x,y)
isVisible(x,y,id)
Parameter
x
- Then tokens x coordinate. Always in map units, not grid .y
- Then tokens x coordinate. Always in map units, not grid .id
- The check for visibility is performed from tokenid
.Note: This parameter can only be used in a Trusted Macro.
Example
A simple example for testing out
isVisible()
. Drop the default tokens "Hero" and "Troll" on a map. Make sure "Hero" has sight (make him PC or set sight manually). You can then execute the following code as a campaign macro to check if the Hero can see the Troll.
<!-- lets check if token1 can see token2 -->
[h: token1 = "Hero"]
[h: id1 = findToken(token1)]
[h: token2 = "Troll"]
[h: id2 = findToken(token2)]
<!-- get the map coordinates of token2 -->
<!-- i want to check if the center of the occupied cell can be seen -->
<!-- getTokenX/Y retrieves the top-left corner, so -->
<!-- in a 50 pixel grid the center is offset by 25 pixel -->
[h: x = getTokenX(1, id2)+25]
[h: y = getTokenY(1, id2)+25]
<!-- and final the check for visiblity -->
[r:getName(id1)] <b>[r, if(isVisible(x,y, id1)): "can"; "cannot"]</b> see [r:getName(id2)].