RPTools

Personal tools
From MapToolDoc

getMatchingLibProperties

Contents

getMatchingLibProperties() Function

Introduced in version 1.3b54

Returns a String List or JSON Array with names of the Token Properties on a specific Library Token that match the given pattern.

Usage

  1. getMatchingLibProperties(pattern)
  1. getMatchingLibProperties(pattern, lib)
  1. getMatchingLibProperties(pattern, lib, delim)

Parameters

  • pattern - A regular expression(regex) that represents the pattern the properties should match.
  • lib - The name of the Library Token that is checked for properties that match, defaults to the Library Token the macro is running on.
  • delim - The delimiter used in the String List that is returned, defaults to ",". Returns a JSON Array if "json" is specified.

Examples

Assuming that you have a Library Token that contained a list of all the items and their detail in your campaign stored as Token properties names with the following format Type:Item Name (for example Weapon:Longsword), you could use the following code to loop through all the weapons.

  1. [foreach(item, getMatchingLibProperties("Weapon:.*", "Lib:Items")): {
  2.     <!-- Do something really exciting here -->
  3. }]

Or the following to loop through all the armor

  1. [foreach(item, getMatchingLibProperties("Armor:.*", "Lib:Items")): {
  2.     <!-- Do something really exciting here -->
  3. }]

Or even all the armor and all the shields.

  1. [foreach(item, getMatchingLibProperties("(Armor|Shield):.*", "Lib:Items")): {
  2.     <!-- Do something really exciting here -->
  3. }]

See Also

getMatchingProperties() getLibPropertyNames()