No edit summary |
No edit summary |
||
Line 351: | Line 351: | ||
local currentCat = nil |
local currentCat = nil |
||
currentCat = keys[i] |
currentCat = keys[i] |
||
− | + | if gameList[currentCat]['short'] ~= nil then |
|
+ | currentCat = gameList[currentCat]['short'] |
||
+ | else |
||
+ | currentCat = gameList[currentCat]['title'] |
||
+ | end |
||
+ | |||
result = result .. "[[Category:" |
result = result .. "[[Category:" |
||
Revision as of 13:25, 9 June 2019
Auxiliary template for {{Infobox}}
.
Usage
{{abb|abbreviation}}
Parameters
Small template which retrieves the name of a ''Fallout'' game for a given user entry.
Parameter | Description | Type | Status | |
---|---|---|---|---|
Abb | 1 abb | Game abbrevation; see Template:Abb for list of valid inputs. | String | required |
Mode | mode | Determines the template output.
| String | required |
Available options for {{{mode|}}}
- icon: Returns the name of the game's icon (without "File:" prefix).
- link: Returns the name of the game's overview article.
- short: Returns a shortened version of the game's name for display in narrow spaces.
- text: Returns the game's name.
Abbreviations
Abbreviation | text | short | link | icon |
---|---|---|---|---|
AR | All Roads | All Roads | All Roads | |
D20 | Fallout Pen and Paper d20 | Fallout d20 | Fallout Pen and Paper d20 | |
FB | Fallout Bible | Fallout Bible | Fallout Bible | |
FBG | Fallout: The Board Game | Fallout: The Board Game | Fallout: The Board Game | |
FSBG | Fallout Shelter: The Board Game | Fallout Shelter: The Board Game | Fallout Shelter: The Board Game | |
FBGNC | Fallout: New California | Fallout: New California | Fallout: New California | |
FILM | Fallout (film) | Fallout (film) | Fallout (film) | |
FNV | Fallout: New Vegas | Fallout: New Vegas | Fallout: New Vegas | |
FNVCS | Courier's Stash | Courier's Stash | Courier's Stash | |
FNVDM | Dead Money | Dead Money | Dead Money | |
FNVHH | Honest Hearts | Honest Hearts | Honest Hearts | |
FNVGRA | Gun Runners' Arsenal | Gun Runners' Arsenal | Gun Runners' Arsenal | |
FNVLR | Lonesome Road | Lonesome Road | Lonesome Road (add-on) | |
FNVOWB | Old World Blues | Old World Blues | Old World Blues (add-on) | |
FO4 | Fallout 4 | Fallout 4 | Fallout 4 | |
FO4AUT | Automatron | Automatron | Automatron (add-on) | |
FO4WW | Wasteland Workshop | Wasteland Workshop | Wasteland Workshop | |
FO4FH | Far Harbor | Far Harbor | Far Harbor (add-on) | |
FO4CW | Contraptions Workshop | Contraptions Workshop | Contraptions Workshop | |
FO4VW | Vault-Tec Workshop | Vault-Tec Workshop | Vault-Tec Workshop | |
FO4NW | Nuka-World | Nuka-World | Nuka-World (add-on) | |
FO4VR | Fallout 4 VR | Fallout 4 VR | Fallout 4 VR | |
FO4CC | Creation Club | Creation Club | Creation Club | |
FO76 | Fallout 76 | Fallout 76 | Fallout 76 | |
FO76WA | Wild Appalachia | Wild Appalachia | Wild Appalachia | |
FO76NW | Nuclear Winter | Nuclear Winter | Nuclear Winter | |
FO76WL | Wastelanders | Wastelanders | Wastelanders | |
FO76LR | The Legendary Run | The Legendary Run | The Legendary Run (update) | |
FO76OW | One Wasteland For All | One Wasteland | One Wasteland For All | |
FO76SD | Steel Dawn | Steel Dawn | Steel Dawn | |
FO76LL | Locked & Loaded | Locked & Loaded | Locked & Loaded | |
FO76SR | Steel Reign | Steel Reign | Steel Reign | |
FO76FW | Fallout Worlds | Fallout Worlds | Fallout Worlds (update) | |
FO76NM | Night of the Moth | Night of the Moth | Night of the Moth | |
FO76IB | Invaders from Beyond | Invaders from Beyond | Invaders from Beyond (update) | |
FO76TM | Test Your Metal | Test Your Metal | Test Your Metal (update) | |
FO76TP | Expeditions: The Pitt | Expeditions: The Pitt | Expeditions: The Pitt | |
FO76NT | Nuka-World on Tour | Nuka-World on Tour | Nuka-World on Tour (update) | |
FO76MI | Mutation Invasion | Mutation Invasion | Mutation Invasion | |
FO76OB | Once in a Blue Moon | Once in a Blue Moon | Once in a Blue Moon | |
FO76AC | Expeditions: Atlantic City | Expeditions: Atlantic City | Expeditions: Atlantic City | |
FOS | Fallout Shelter | Fallout Shelter | Fallout Shelter | |
FOSO | Fallout Shelter Online | Fallout Shelter Online | Fallout Shelter Online | |
FPB | Fallout Pip-Boy | Fallout Pip-Boy | Fallout Pip-Boy | |
FO1 | Fallout | Fallout | Fallout | |
FO2 | Fallout 2 | Fallout 2 | Fallout 2 | |
FO3 | Fallout 3 | Fallout 3 | Fallout 3 | |
FO3BS | Broken Steel | Broken Steel | Broken Steel | |
FO3MZ | Mothership Zeta | Mothership Zeta | Mothership Zeta (add-on) | |
FO3OA | Operation: Anchorage | Operation: Anchorage | Operation: Anchorage (add-on) | |
FO3PL | Point Lookout | Point Lookout | Point Lookout (add-on) | |
FO3TP | The Pitt | The Pitt | The Pitt (add-on) | |
FOBOS | Fallout: Brotherhood of Steel | Fallout: BoS | Fallout: Brotherhood of Steel | |
FOBOS2 | Fallout: Brotherhood of Steel 2 | Fallout: BoS 2 | Fallout: Brotherhood of Steel 2 | |
PV13 | Project V13 | Project V13 | Project V13 | |
FOT | Fallout Tactics | Fallout Tactics | Fallout Tactics: Brotherhood of Steel | |
FOT2 | Fallout Tactics 2 | Fallout Tactics 2 | Fallout Tactics 2 | |
FOTV | Fallout TV series | Fallout (TV series) | Fallout (TV series) | |
FOW | Fallout: Warfare | Fallout: Warfare | Fallout: Warfare | |
FOX | Fallout Extreme | Fallout Extreme | Fallout Extreme | |
FOWW | Fallout: Wasteland Warfare | Fallout: Wasteland Warfare | Fallout: Wasteland Warfare | |
FOWWRPG | Fallout: Wasteland Warfare Roleplaying Game | Fallout: Wasteland Warfare Roleplaying Game | Fallout: Wasteland Warfare Roleplaying Game | |
FORPG | Fallout: The Roleplaying Game | Fallout: The Roleplaying Game | Fallout: The Roleplaying Game | |
FORPGWOA | Winter of Atom | Winter of Atom | Winter of Atom | |
JES | J.E. Sawyer's Fallout RPG | JES Fallout RPG | J.E. Sawyer's Fallout RPG | |
PA | One Man, and a Crate of Puppets | Penny Arcade | One Man, and a Crate of Puppets | |
TAR | The Armageddon Rag | Armageddon Rag | The Armageddon Rag | |
VB | Van Buren | Van Buren | Van Buren | |
Wiki | Nukapedia | Nukapedia | Fallout Wiki:About | |
none | mentioned-only | mentioned-only |
Adding new abbrevations
New abbreviations need adding to Module:Abb/data
Please note:
- The abbreviation needs to be in all-uppercase.
- Icon file names should be specified without "File:" prefix.
In addition, please try to maintain alphabetical order of abbreviations within the template.
Examples
Input | Result |
---|---|
{{abb|FO3MZ}}
|
Mothership Zeta |
{{abb|mode=short|FO3MZ}}
|
Mothership Zeta |
{{abb|mode=link|FO3MZ}}
|
Mothership Zeta (add-on) |
{{abb|mode=icon|FO3MZ}}
|
Gametitle-FO3_MZ.png |
local p = {}
local gameList = {
AR = {
icon = "Gametitle-AR.png",
title = "All Roads",
short = "All Roads"
},
D20 = {
icon = "Gametitle-D20.png",
title = "Fallout Pen and Paper d20",
short = "Fallout d20"
},
FB = {
icon = "Gametitle-FB.png",
title = "Fallout Bible"
},
FBG = {
icon = "Gametitle-FBG.png",
title = "Fallout: The Board Game"
},
FBGNC = {
icon = "Gametitle-FBGNC.png",
title = "Fallout: New California"
},
FBGWW = {
icon = "Gametitle-FBGWW.png",
title = "Fallout: Wasteland Warfare",
},
FILM = {
icon = "Film.png",
title = "Fallout (film)"
},
FNV = {
icon = "Gametitle-FNV.png",
title = "Fallout: New Vegas"
},
FNVCS = {
icon = "Gametitle-FNV_CS.png",
title = "Courier's Stash"
},
FNVDM = {
icon = "Gametitle-FNV_DM.png",
title = "Dead Money"
},
FNVGRA = {
icon = "Gametitle-FNV_GRA.png",
title = "Gunn Runners' Arsenal"
},
FNVHH = {
icon = "Gametitle-FNV_HH.png",
title = "Honest Hearts"
},
FNVLR = {
icon = "Gametitle-FNV_LR.png",
title = "Lonesome Road (add-on)",
short = "Lonesome Road"
},
FNVOWB = {
icon = "Gametitle-FNV_OWB.png",
title = "Old World Blues (add-on)",
short = "Old World Blues"
},
FO4 = {
icon = "Gametitle-FO4.png",
title = "Fallout 4",
},
FO4AUT = {
icon = "Gametitle-FO4_AUT.png",
title = "Automatron (add-on)",
short = "Automatron"
},
FO4WW = {
icon = "Gametitle-FO4_WW.png",
title = "Wasteland Workshop"
},
FO4FH = {
icon = "Gametitle-FO4_FH.png",
title = "Far Harbor (add-on)",
short = "Far Harbor"
},
FO4CW = {
icon = "Gametitle-FO4_CW.png",
title = "Contraptions Workshop"
},
FO4VW = {
icon = "Gametitle-FO4_VW.png",
title = "Vault-Tec Workshop"
},
FO4NW = {
icon = "Gametitle-FO4_NW.png",
title = "Nuka-World (add-on)",
short = "Nuka-World"
},
FO4VR = {
icon = "Gametitle-FO4VR.png",
title = "Fallout 4 VR"
},
FO4CC = {
icon = "Gametitle-FO4_CC.png",
title = "Creation Club"
},
FOS = {
icon = "Gametitle-FOS.png",
title = "Fallout Shelter",
},
FPB = {
icon = "Gametitle-FPB.png",
title = "Fallout Pip-Boy"
},
FO = {
icon = "Gametitle-FO1.png",
title = "Fallout"
},
FO1 = {
icon = "Gametitle-FO1.png",
title = "Fallout"
},
FO2 = {
icon = "Gametitle-FO2.png",
title = "Fallout 2"
},
FO3 = {
icon = "Gametitle-FO3.png",
title = "Fallout 3"
},
FO3BS = {
icon = "Gametitle-FO3_BS.png",
title = "Broken Steel"
},
FO3MZ = {
icon = "Gametitle-FO3_MZ.png",
title = "Mothership Zeta (add-on)",
short = "Mothership Zeta"
},
FO3OA = {
icon = "Gametitle-FO3_OA.png",
title = "Operation: Anchorage (add-on)",
short = "Operation: Anchorage"
},
FO3PL = {
icon = "Gametitle-FO3_PL.png",
title = "Point Lookout (add-on)",
short = "Point Lookout"
},
FO3TP = {
icon = "Gametitle-FO3_TP.png",
title = "The Pitt (add-on)",
short = "The Pitt"
},
FO76 = {
icon = "Gametitle-FO76.png",
title = "Fallout 76"
},
FO76WA = {
icon = "Gametitle-FO76_WA.png",
title = "Wild Appalachia"
},
FO76NW = {
icon = "Gametitle-FO76_NW.png",
title = "Nuclear Winter"
},
FO76WL = {
icon = "Gametitle-FO76_WL.png",
title = "Wastelanders"
},
FOBOS = {
icon = "Gametitle-FOBOS.png",
title = "Fallout: Brotherhood of Steel",
short = "Fallout: BoS"
},
FOBOS2 = {
icon = "Gametitle-FOBOS2.png",
title = "Fallout: Brotherhood of Steel 2",
short = "Fallout: BoS 2"
},
FOOL = {
icon = "PV13.png",
title = "Project V13"
},
PV13 = {
icon = "PV13.png",
title = "Project V13"
},
FOT = {
icon = "Gametitle-FOT.png",
title = "Fallout Tactics: Brotherhood of Steel",
short = "Fallout Tactics"
},
FOT2 = {
icon = "Gametitle-FOT2.png",
title = "Fallout Tactics 2"
},
FOW = {
icon = "Gametitle-FOW.png",
title = "Fallout: Warfare"
},
FOX = {
icon = "Gametitle-FOX.png",
title = "Fallout Extreme"
},
FWW = {
icon = "Gametitle-FWW.png",
title = "Fallout: Wasteland Warfare"
},
JES = {
icon = "Gametitle-JES.png",
title = "J.E. Sawyer's Fallout RPG",
short = "JES Fallout RPG"
},
LH = {
icon = "Gametitle-LH.png",
title = "Lionheart"
},
PA = {
icon = "Penny Arcade.gif",
title = "One Man, and a Crate of Puppets",
short = "Penny Arcade"
},
TAR = {
icon = "Gametitle-TAR.jpg",
title = "The Armageddon Rag",
short = "Armageddon Rag"
},
TORN = {
icon = "Gametitle-TORN.png",
title = "TORN"
},
VB = {
icon = "Gametitle-VB.png",
title = "Van Buren"
},
WIKI = {
icon = "Gametitle-Wiki.png",
title = "Fallout Wiki:About",
short = "Nukapedia"
},
NONE = {
title = "mentioned-only"
},
RW = {
title = "real world"
}
}
function setTable(keys)
if string.len(tostring(keys)) > 0 then
result = mw.text.split(keys, ",")
else
result = nil
end
return result
end
function p.validation(frame)
local keys = setTable(frame.args['games'])
local i = 1
local result = 0
while i <= table.getn(keys) do
if gameList[keys[i]] ~=nil then
result = result + 1
end
i = i + 1
end
return result
end
function icon(frame)
local fileCount = 1
local fileOut = ""
while fileCount <= abbLength do
currentFile = string.upper(abbGames[fileCount])
currentFile = abbIcon[currentFile]
if currentFile ~= nil then
fileOut = fileOut .. currentFile
end
fileCount = fileCount + 1
end
return fileOut
end
function p.category(frame)
local keys = setTable(frame.args['games'])
local category = frame.args['category']
local prepend = frame.args['prepend']
local append = frame.args['append']
local mode = frame.args['mode']
local sortKey = frame.args['sort key']
local i = 1
local result = ""
if keys ~= nil then
while i <= table.getn(keys) do
local currentCat = nil
currentCat = keys[i]
if gameList[currentCat]['short'] ~= nil then
currentCat = gameList[currentCat]['short']
else
currentCat = gameList[currentCat]['title']
end
result = result .. "[[Category:"
if string.lower(mode) == "append" then
result = result .. string.lower(category) .. " "
if prepend ~= nil then
result = result .. prepend
end
result = result .. currentCat
if append ~= nil then
result = result .. append
end
else
result = result .. currentCat .. " "
if prepend ~= nil then
result = result .. " " .. prepend
end
result = result .. category
if append ~= nil then
result = result .. append
end
end
if sortKey ~= nil and string.len(sortKey) ~= 0 then
result = result .. "|" .. sortKey
end
result = result .. "]]"
i = i + 1
end
else
result = "[[Category:" .. category
if sortKey ~= nil and string.len(sortKey) ~= 0 then
result = result .. "|" .. sortKey
end
result = result .. "]]"
end
return result
end
function p.abb(frame)
if frame.args[2] ~= nil then
mode = string.lower(frame.args[2])
end
local games = string.upper(tostring(frame.args[1]))
games = mw.text.split(games, ",")
length = table.getn(games)
if mode == "link" or mode == "text" or mode == "short" or mode == nil then
result = abbOnly(games, mode, length)
end
if mode == "cat" then
abbCatName = frame.args[3]
abbAppend = frame.args[4]
abbPrepend = frame.args[5]
abbCatMode = frame.args[6]
abbSort = frame.args[7]
result = abbCategory(games, length, abbCatName, abbAppend, abbPrepend, abbCatMode, abbSort)
end
if mode == "icon" then
result = abbFile(games, length)
end
return result
end
return p