Modul:ZauberNachGrad: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Stewie (Diskussion | Beiträge) |
Stewie (Diskussion | Beiträge) |
||
Zeile 26: | Zeile 26: | ||
]]-- | ]]-- | ||
local queryResult = mw.smw.ask('[['.. value ..']][[' .. Schule ..'::' .. grad ..'|?Kurzbeschreibung=1|mainlabel=-') | local queryResult = mw.smw.ask('[['.. value ..']][[' .. Schule ..'::' .. grad ..'|?Kurzbeschreibung=1|mainlabel=-') | ||
− | if queryResult | + | if queryResult[1] ~= nil |
then ReturnString = ReturnString .. value .. ' (' .. queryResult[1][1] .. ')' | then ReturnString = ReturnString .. value .. ' (' .. queryResult[1][1] .. ')' | ||
end | end |
Version vom 21. November 2020, 19:44 Uhr
Die Dokumentation für dieses Modul kann unter Modul:ZauberNachGrad/Doku erstellt werden
--[[
Diese funktion nimmt eine komma separierte Liste von Zaubern (arg1)
und sortiert sie nach ihren Grad in einer Magieschule (arg2)
--]]
local p = {} --local p = {} -- p steht für Paket (engl. package)
function p.createList( frame )
local ZauberListe = frame.args['ZauberListe']
local Schule = frame.args['Schule']
if ZauberListe == nil or Schule == nil-- Wenn Argument1 oder 2 Leer, endet der script hier
then return nil
end
--Liste ist nicht leer, für jeden Zauber Grad und Kurzbeschreibung in Erfahrung bringen
local ReturnString = "" -- String für die rückgabe
local ZauberSplit = mw.text.split(ZauberListe, ",") -- Zauber bei , trennen
-- Für jeden Zaubergrad 0,1,2,3,4,5 die Liste der Zauber durchgehen
local grad = 0
while grad <= 5 do
for key,value in pairs(ZauberSplit) do-- Über die Zauber table gehen ...
--[[
SemanticWiki API query wobei value der name des Zaubers ist
Nummerierung der Ergebnisse spätere weiter Verwendung
1 Kurzbeschreibung
]]--
local queryResult = mw.smw.ask('[['.. value ..']][[' .. Schule ..'::' .. grad ..'|?Kurzbeschreibung=1|mainlabel=-')
if queryResult[1] ~= nil
then ReturnString = ReturnString .. value .. ' (' .. queryResult[1][1] .. ')'
end
end
grad =grad + 1
end
return ReturnString
end
return p