Module:GameShortened
From Inkipedia, the Splatoon wiki
Helper template that transforms the game argument into the shortened S form. For template chaining and code reduction. Will also help us when new game/expansions/formats are created.
If the game is not matched, the default argument is used instead if specified, otherwise "S".
Usage
game
|
Named or first positional, optional | The game that the cost belongs to. The following values are handled:
If game is not specified, the default argument will be used instead. | |||
default
|
Named or second positional, optional | If the game argument was not matched, uses this instead.
|
- Typical usage
{{GameShortened|<game>|<default>}}
{{GameShortened|Octo Expansion}}
->
OE
- Chained in another template that has the game parameter
{{GameShortened|{{{game|}}}}}
->
S
- Using the default parameter
{{GameShortened|Splatoon 3|S}}
->
S3
{{GameShortened|game=Splatoon 2|default=Splatoon}}
->
S2
- In files
[[File:{{GameShortened|Splatoon 3}}_Icon_Big_Run.svg|link=Big Run|30px]]
->
[[File:{{GameShortened|game=Splatoon 2|default=Splatoon 3}}_Splatfest_Logo.svg|link=Splatfest|30px]]
->
See Also
local g = {} function g.main(frame) local S1 = "S" local S2 = "S2" local S3 = "S3" local OE = "OE" local abbrev = { ['S'] = S, ['S1'] = S, ['Splatoon'] = S, ['Splatoon 1'] = S, ['S2'] = S2, ['Splatoon 2'] = S2, ['S3'] = S3, ['Splatoon 3'] = S3, ['OE'] = OE, ['Octo Expansion'] = OE, } -- Calculate the game parameter -- It's the first positional, or in the paramter named 'game' -- If game is not specified, then arg is nil and a default will be used local arg = frame:getParent().args['game'] or frame:getParent().args[1] -- return the abbreviation from the game arg. -- if it's not in the table, instead return the default parameter, which -- is the second positional, or the parameter named 'default', else simply return S1. return abbrev[arg] or frame:getParent().args['default'] or frame:getParent().args[2] or S1 end return g