Tritt unserem Discord bei und informiere dich auf unserem Twitter-Kanal über die aktuellsten Themen rund um Fallout!
KKeine Bearbeitungszusammenfassung |
KKeine Bearbeitungszusammenfassung |
||
| Zeile 105: | Zeile 105: | ||
local game_list = mw.text.split(frame.args[1], "%s*,%s*") | local game_list = mw.text.split(frame.args[1], "%s*,%s*") | ||
for n, game in ipairs(game_list) do | for n, game in ipairs(game_list) do | ||
if game:lower() == "-" or "none" or "kein" then | if game:lower() == "-" or game:lower() == "none" or game:lower() == "kein" then | ||
result = '' | result = '' | ||
else | else | ||
| Zeile 136: | Zeile 136: | ||
local game_list = mw.text.split(frame.args[1], "%s*,%s*") | local game_list = mw.text.split(frame.args[1], "%s*,%s*") | ||
for n, game in ipairs(game_list) do | for n, game in ipairs(game_list) do | ||
if game:lower() == "-" or "none" or "kein" then | if game:lower() == "-" or game:lower() == "none" or game:lower() == "kein" then | ||
result = 'erwähnt' | result = 'erwähnt' | ||
if frame.args[3] then | if frame.args[3] then | ||
Version vom 31. Oktober 2024, 14:55 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Games/Doku erstellt werden
--<nowiki>
local p = {}
local games = {
["AR"] = "All Roads",
["D20"] = "Fallout Pen & Paper d20",
["FB"] = "Fallout Bible",
["FBG"] = "Fallout: The Board Game",
["FBGNC"] = "Fallout: New California",
["FILM"] = "Fallout (Film)",
["FNV"] = "Fallout: New Vegas",
["FNVGRA"] = "Gun Runners' Arsenal (Add-On)",
["FNVDM"] = "Dead Money (Add-On)",
["FNVHH"] = "Honest Hearts (Add-On)",
["FNVOWB"] = "Old World Blues (Add-On)",
["FNVLR"] = "Lonesome Road (Add-On)",
["FO1"] = "Fallout",
["FO2"] = "Fallout 2",
["FO3"] = "Fallout 3",
["FO3OA"] = "Operation: Anchorage (Add-On)",
["FO3TP"] = "The Pitt (Add-On)",
["FO3BS"] = "Broken Steel (Add-On)",
["FO3PL"] = "Point Lookout (Add-On)",
["FO3MZ"] = "Mothership Zeta (Add-On)",
["FO4"] = "Fallout 4",
["FO4AUT"] = "Automatron (Add-On)",
["FO4WW"] = "Wasteland Workshop (Add-On)",
["FO4FH"] = "Far Harbor (Add-On)",
["FO4CW"] = "Contraptions Workshop (Add-On)",
["FO4VW"] = "Vault-Tec Workshop (Add-On)",
["FO4NW"] = "Nuka-World (Add-On)",
["FO4VR"] = "Fallout 4 VR",
["FO4CC"] = "Creation Club",
["FO76"] = "Fallout 76",
["FO76WA"] = "Wild Appalachia",
["FO76NW"] = "Nuclear Winter",
["FO76WL"] = "Wastelanders",
["FO76LR"] = "Das legendäre Rennen (Update)",
["FO76OW"] = "Ein Ödland für alle",
["FO76FS"] = "Stählerne Dämmerung",
["FO76SD"] = "Stählerne Dämmerung",
["FO76LL"] = "Geladen und entsichert",
["FO76SR"] = "Stählerne Herrschaft",
["FO76FW"] = "Fallout Worlds (Update)",
["FO76IB"] = "Angreifer aus dem All (Update)",
["FO76NM"] = "Nacht der Motte",
["FO76TM"] = "Härteprüfung (Update)",
["FO76TP"] = "Expeditionen: The Pitt",
["FO76NT"] = "Nuka-World on Tour (Update)",
["FO76NWOT"] = "Nuka-World on Tour (Update)",
["FO76MI"] = "Mutations-Invasion",
["FO76OB"] = "Wenn die Sterne günstig stehen",
["FO76AC"] = "Expeditionen: Atlantic City",
["FO76BP"] = "AC Boardwalk Paradise",
["FO76AP"] = "AC America's Playground",
["FO76SV"] = "Skyline Valley (Update)",
["FO76MZ"] = "Meilenstein Null (Update)",
["FO76GD"] = "Strahlende Tiefen (Update)",
["FOBOS"] = "Fallout: Brotherhood of Steel",
["FOBOS2"] = "Fallout: Brotherhood of Steel 2",
["FORPG"] = "Fallout: The Roleplaying Game",
["2D20"] = "Fallout: The Roleplaying Game",
["FORPGWOA"] = "Winter of Atom",
["FOS"] = "Fallout Shelter",
["FOSO"] = "Fallout Shelter Online",
["FOT"] = "Fallout Tactics",
["FOT2"] = "Fallout Tactics 2",
["FOTV"] = "Fallout (Fernsehserie)",
["FTV"] = "Fallout (Fernsehserie)",
["FOW"] = "Fallout: Warfare",
["FOX"] = "Fallout Extreme",
["FWW"] = "Fallout: Wasteland Warfare",
["FOWW"] = "Fallout: Wasteland Warfare",
["FOF"] = "Fallout: Factions",
["JES"] = "J.E. Sawyer's Fallout RPG",
["LH"] = "Lionheart",
["PA"] = "One Man, and a Crate of Puppets",
["PV13"] = "Project V13",
["TAR"] = "Project V13",
["VB"] = "Van Buren",
}
-- look up short title without disambig
function stitle(game)
local result = games[game] or game
if game ~= "FILM" or "FNVGRA" or "FNVDM" or "FNVHH" or "FNVOWB" or "FNVLR" or "FO3OA" or "FO3TP" or "FO3BS" or "FO3PL" or "FO3MZ" or "FO4AUT" or "FO4WW" or "FO4FH" or "FO4CW" or "FO4VW" or "FO4NW" or "FO76LR" or "FO76FW" or "FO76IB" or "FO76NT" or "FO76TM" or "FO76NWOT" or "FO76SV" or "FO76MZ" or "FO76GD" then
result = result:gsub('%s%(.*', '')
end
return result
end
-- ====================
-- Diese Funktion, links, ist für gewöhnliche Links innerhalb des
-- Inhalts einer Infobox gedacht. Wenn du nur [[Fallout 4]]
-- zurückgeben möchtest, dann verwende die Syntax:
-- {{#invoke:Games|links|{{{games|}}}}}
-- Die Angabe eines zweiten Arguments gibt den Text kursiv zurück:
-- {{#invoke:Games|links|{{{games|}}}|1}}
-- ====================
function p.links(frame)
local result = ''
local game_list = mw.text.split(frame.args[1], "%s*,%s*")
for n, game in ipairs(game_list) do
if game:lower() == "-" or game:lower() == "none" or game:lower() == "kein" then
result = ''
else
result = result .. '[[' .. games[game] .. '|' .. stitle(game) .. ']]'
if n ~= #game_list then
result = result .. '<br/>'
end
end
end
if (frame.args[2] and result ~= '') then
return "''" .. result .. "''"
else
return result
end
end
-- ====================
-- Diese Funktion, title, generiert generisch Links für den Supertitel.
-- Entweder nur zur Spielseite selbst oder zu einer spezifischeren Seite.
--
-- {{#invoke:Games|title|FO4}} gibt einfach [[Fallout 4|Fallout 4]]
-- {{#invoke:Games|title|FO4|Waffen}} ergibt [[Waffen (Fallout 4)|Fallout 4]]
-- {{#invoke:Games|title|FO4|Waffen|Waffe}} ergibt [[Waffen (Fallout 4)|Fallout 4: Waffe]]
-- ====================
function p.title(frame)
local result = ''
local game_list = mw.text.split(frame.args[1], "%s*,%s*")
for n, game in ipairs(game_list) do
if game:lower() == "-" or game:lower() == "none" or game:lower() == "kein" then
result = 'erwähnt'
if frame.args[3] then
result = frame.args[3] .. ' (' .. result .. ')'
end
else
local link
if frame.args[2] then
link = frame.args[2] .. ' (' .. stitle(game) .. ')'
else
link = games[game]
end
local text = stitle(game)
if frame.args[3] and n == #game_list then
text = text .. ': ' .. frame.args[3]
end
result = result .. '[[' .. link .. '|' .. text .. ']]'
if n ~= #game_list then
result = result .. ' / '
end
end
end
return result
end
return p
--</nowiki>