macroLinkText: Difference between revisions
Jump to navigation
Jump to search
Bone White (talk | contribs) m (Added example of changing link text colour, courtesy of aliasmask. See http://forums.rptools.net/viewtopic.php?f=20&t=20330) |
No edit summary |
||
Line 50: | Line 50: | ||
[h: outputTo = '["Fred", "Barney", "gm"]'] | [h: outputTo = '["Fred", "Barney", "gm"]'] | ||
[h: args = json.set("{}", "mlOutputList", outputTo)] | [h: args = json.set("{}", "mlOutputList", outputTo)] | ||
[r: macroLinkText( | [r: macroLinkText("Test@Lib:Test", "list", args)] | ||
</source> | </source> | ||
Correctly modifying the colour of the link, works both in the chat box and in forms: | Correctly modifying the colour of the link, works both in the chat box and in forms: | ||
<source lang="mtmacro" line> | <source lang="mtmacro" line> | ||
[r: strformat('<a style="color:red" href="%s">Click Me</a>', macroLinkText(" | [r: strformat('<a style="color:red" href="%s">Click Me</a>', macroLinkText("Test@Lib:Test"))] | ||
</source> | </source> | ||
Revision as of 13:58, 10 January 2020
macroLinkText() Function
• Introduced in version 1.3b48
Creates the text that would appear in a HTML tag for a link which will run the specified macro when clicked on. This is useful for callbacks in [dialog():] or [frame():]. If you just want to send a click-able link to someone use macroLink().
Usage
macroLinkText(macroName)
macroLinkText(macroName, output)
macroLinkText(macroName, output, args)
macroLinkText(macroName, output, args, target)
Parameters
macroName
- The name of the macro to run when the link is clicked. ThemacroName
is in the standard macro reference format (e.g.Macro@Lib:Token
)output
- Who the output of the macro should go to, values are (defaults tonone
):self
- Display only to person who clicked on the link.gm
- Display to GM.all
- Everyone (acts like a/say
)none
- Discard any output.gm-self
- Display to GM and the person executing the link.list
- Displays to a list of players. When theoutput
parameter is"list"
then the macro link expects theargs
parameter to be a JSON Object, that contains a field calledmlOutputList
which is a JSON Array containing the players to send the output to.
args
- Any arguments to be passed to the macro when it is called.target
- Which tokens to run the macro on. Target can be one or more of the following separated by commas (defaults toimpersonated
):
Examples
To create the text that would go inside a form element as the
action
attribute, and that will call a macro named Test
on the Library Token named Lib:Test
:
[r: macroLinkText("Test@Lib:Test","", "gm")]
Returns: macro://Test@Lib:Test/gm/impersonated?
To create the text that would go inside a form element as the action
attribute and call the AddWeapon
on the Library Token named Lib:PC
which will act upon the Current Token:
[r:macroLinkText('AddWeapon@Lib:PC', 'none', '', currentToken())]
Returns: macro://AddWeapon@Lib:PC/none/#ID#?
where #ID#
is the id
of the Current Token.
Sending to multiple players and the GM in 1.3b55
[h: outputTo = '["Fred", "Barney", "gm"]']
[h: args = json.set("{}", "mlOutputList", outputTo)]
[r: macroLinkText("Test@Lib:Test", "list", args)]
Correctly modifying the colour of the link, works both in the chat box and in forms:
[r: strformat('<a style="color:red" href="%s">Click Me</a>', macroLinkText("Test@Lib:Test"))]
See Also
Version Changes
- 1.3b55 - Added
gm-self
andlist
output options. - 1.3b56 - Links created using this function will no longer show a tooltip when displayed in a dialog or frame.