Template:SetProp

From Salem Wiki
Jump to: navigation, search


Template documentation (for the template shown above, sometimes hidden or invisible)

Description

This is a wrapper-template that calls {{SetProp/single}} to automatically set property values.
It has a fixed-set of properties it supports, and can be expanded when needed in code...
Some properties are fit to assign multiple values to, using a sep, but those of type Boolean are obviously not...
For more documentation on functions used see

Syntax

Type the below code on top of a page:
{{SetProp
|propname=propvalues
|propname=propvalues
|...
}}
It supports this optional named-parameter for multi-value propname's:
  • sep
    The default separator used in the propvalues to separate single-values from each other.
    It defaults to a comma ','

Supported propname's

It currently supports these properties in preferred sequence:

  • IsGameMenu (Type: Boolean, single-value)
    Will always be set.
    Defaults to 'false'.
  • IsinGameMenu (Type: String, multi-value)
    Will always be set.
    Defaults to 'no'.
    Default separator in this case is a ^ when no over-ride is used in sep, be careful this property can use a comma in its valid value!
  • Has icon (Type: Page, single-value)
    Only supply the filename, it will automatically prepend the final property-value with Image:
    When not used, it will auto-set this property to Image:{{SUBPAGENAME}} icon.png
  • Caption (Type: Text, single-value)
    Can hold free text.
  • Has fullview (Type: Page, single-value)
    Only supply the filename, it will automatically prepend the final property-value with Image:
  • RequiresTech (Type: Page, multi-value)
  • UnlocksTech (Type: Page, multi-value)
  • RequiresObj (Type: String, multi-value)
  • RepairedWith (Type: String, multi-value)
  • IsLiftable (Type: Boolean, single-value)
  • IsLiftableWhenEmpty (Type: Boolean, single-value)
    When used will always be set to 'true', and auto-set IsLiftable='true'.
  • Locations (Type: Page, multi-value)
  • HP (Type: Number, single-value)
  • Soak (Type: Number, single-value)
  • Loot (Type: String, multi-value)
  • purity (Type: Number, single-value) (No auto calculations done yet)
    This will default to 1.0 when not provided together with Alchemical values or Skills.
  • Alchemical values (Type: Number, single-value)
    These can be provided in 2 formats, manual and "record".
    The manual format will only be accepted when no "record" format is being used at all for any of them.
    1. In "record" format with dot-comma as field separators:
      • heals - List the amounts that this object heals your humours, separated by dot-comma's, in sequence as it's been listed in game.
      • events1 - List the RED numbers, separated by dot-comma's, in sequence as it's been listed in game.
      • events2 - List the GREEN numbers, separated by dot-comma's, in sequence as it's been listed in game.
      • events3 - List the BLUE numbers, separated by dot-comma's, in sequence as it's been listed in game.
      • events4 - List the YELLOW numbers, separated by dot-comma's, in sequence as it's been listed in game.
    2. In manual format, single number per propname:
  • Skills (Type: Number, single-value)
    These are called Proficiencies ingame.
    If either one of the below Skills are set, then all will be set at same time.
    They will all default to '0', when not given a value explicitly.
  • RequiredBy (Type: Page, multi-value)
    This will be automatically set using {{SetProp/RequiredBy auto}}, after any eventual manual assignments using this propname.

Copy&Paste code for easy use

Type the below code at the top of the page, with values assigned to relevant parameters.
Parameters can be in any order, and not all need to be used, but its preferred to use the ordering above for uniformity.
The shown parameters are examples and most used.
You can remove the unused ones if they are not likely to be set for your page.
See Help:Infobox

Examples

See the example(s) in the documentation of {{SetProp/single}}, this template just passes known multi-value properties with their values to it.
Or directly uses {{#set:propname=propvalue}} for single-value properties.


Visit Template:SetProp/doc to edit this text! (How does this work?)