Modul:X: Unterschied zwischen den Versionen

Aus How to be a Hero
Zur Navigation springen Zur Suche springen
 
(96 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
local p = {} --local p = {} -- p steht für Paket (engl. package)
local p = {} --local p = {} -- p steht für Paket (engl. package)


function split (inputstr, sep)
require( "Module:Xfunc" )
 
function p.cutblock ( frame )
    if sep == nil then
text = frame.args[3]-- "Die Schmiede"
        sep = "%s"
width = tonumber(frame.args[2]) -- 4
    end
height = tonumber(frame.args[1]) -- 12
    local t={}
block = ""
    for str in string.gmatch(string.gsub(inputstr,sep, "\0"),"%Z+") do
textlen = string.len(text) -- 12
        table.insert(t, str)
tempsplit = {}
    end
    return t
end
 
function splait (inputstr, sep)
 
    if sep == nil then
        sep = "%s"
    end
    local t={}
    for str in string.gmatch(string.gsub(inputstr,sep, "\0"),"%Z+") do
        table.insert(t, str)
    end
    return t
end
 
function spalait (inputstr, sep)
 
    if sep == nil then
        sep = "%s"
    end
    local t={}
    for str in string.gmatch(string.gsub(inputstr,sep, "\0"),"%Z+") do
        table.insert(t, str)
    end
    return t
end
 
function copy(obj, seen)
  if type(obj) ~= 'table' then return obj end
  if seen and seen[obj] then return seen[obj] end
  local s = seen or {}
  local res = setmetatable({}, getmetatable(obj))
  s[obj] = res
  for k, v in pairs(obj) do res[copy(k, s)] = copy(v, s) end
  return res
end
function tabContains(tableasd, keaaay)
solution = nil --"key: "..keaaay.."\n\n"
    for numgasbr,crreasdnt in pairs(tableasd) do
if (tableasd[numgasbr] == keaaay) then
solution = numgasbr
end
--solution = solution..numgasbr..": "..crreasdnt[numgasbr].."\n\n"
end
return solution
end
while (height>0 and textlen>=width) do -- 12>0 and 12>=4|11>0 and 11>=4
function tablelength(T)
tempsplit = split(cut(width, text), "%%%@%%") -- ("Die", "Schmiede")| (
  local count = 0
block = block..tempsplit[1].." " -- "Die "
  if (T==nil or T[1]==nil) then
text = tempsplit[2] -- "Schmiede"
return 0
height = height-1 -- 11
  end
if (text==nil) then
  for _ in pairs(T) do count = count + 1 end
text = ""
  return count
end
 
function tabcontainstab(tableoneooop, tabletwoooop)
seanwsrer = true
if (tabletwoooop[1]~=nil) then
for numberindexthingiu, currenttableslothi in pairs(tabletwoooop) do
if (tabContains(tableoneooop,currenttableslothi) == nil) then
seanwsrer = false
end
end
end
textlen = string.len(text) -- 8
end
end
return seanwsrer
if (height>0) then
end
block = block.." "..text
 
text = ""
function displaytablevert(taable)
endresutl=""
if (taable==nil or taable[1]==nil) then
return endresutl
end
end
for nnnn,entri in pairs(taable) do
endresutl=endresutl..entri.."\n"
result = block.."%@%"..text
end
result = string.gsub(result, "", " ")
return endresutl
return result
end


function displaytablehor(taaable)
endresutal=""
if (taaable==nil or taaable[1]==nil) then
return endresutal
end
for nn,entria in pairs(taaable) do
endresutal=endresutal..entria.." - "
end
return endresutal
end


function displaytabletwo(taaaable)
end
endresutaal=""
if (taaaable==nil or taaaable[1]==nil) then
return endresutaal
end
for nnn,entriaa in pairs(taaaable) do
endresutaal=endresutaal..displaytablehor(entriaa).."\n\n"
end
return endresutaal
end  


 
function p.cut( frame )
function gmatchtable(text, pattern)
testtext = ""
ztable={}
realtext = frame.args[2] --Die Schmiede
realtext = removespaceinlink(realtext) --Die Schmiede
srealtext = split(realtext, " ") --Die|Schmiede(list)
i = 2; --2
testtext = testtext.."<br \>"..i..": "
limit = tonumber(frame.args[1]) --4
text = display(removespaceinlink(realtext)) --Die Schmiede
stext = split(text, " ") --Die|Schmiede(list)
for word in string.gmatch(text, pattern) do
if(table.getn(stext)==1) then
table.insert(ztable,word)  
if(string.len(stext[1])>limit) then
return "%@%"..text
else
return text.."%@%"
end
end
end
return ztable
cuttext = stext[1] --Die
end
realcuttext = srealtext[1] --Die
 
nextwo = stext[2] --Schmiede
realnextwo = srealtext[2] --Schmiede
nextlen = string.len(nextwo)--8
textlen = string.len(text)--12
cuttextlen = string.len(cuttext)--3
set = true;
testtext = testtext.."<br \>"..i..": "..realcuttext
if(limit>=textlen)then --4>=12
return realtext.."%@%"
elseif(cuttextlen>limit) then--3>4
return "%@%"..realtext


 
else
function getindexformat()
while (cuttextlen+nextlen+1<=textlen+2) do --8+3+1<=12+2(12<=14)|14+3+1<=12+2(18<=14)
title = mw.title.new( "Indexformat", "Yggdrasil" )
content = title:getContent()
if(cuttextlen+nextlen+1>limit and set) then --8+3+1>4(12>4)|
content = string.gsub(content, "</pre>.-<pre>" , "!!!")
set = false
content = string.gsub(content, "</pre>.*" , "")
cuttext = cuttext.."%@%" --"Die %@%"
content = string.gsub(content, ".*<pre>" , "")
realcuttext = realcuttext.."%@%" --"Die %@%"
content = string.gsub(content, "|" , "\n|")
content = split(content,"!!!")
else
return content
cuttext = cuttext.." " --
 
realcuttext = realcuttext.." " --
end
 
end
 
-- testtext = testtext..tostring(i)..": "..realcuttext.."<br />"
function getheader( title, namespace )
i = i + 1 --3
title = mw.title.new( title, namespace )
content = title:getContent()
cuttext = cuttext..nextwo -- "Die%@%Schmiede"
content = string.gsub(content, "%=%=+", "§§§")
realcuttext = realcuttext..realnextwo -- "Die%@%Schmiede"
content = split("hallo"..content, "§§§")
iiii = 2
nextwo = stext[i]-- nil
iiiii = 1
realnextwo = srealtext[i]-- nil
length = tablelength(content)
finaltext={}
if (nextwo ~= nil) then
while (iiii<=length) do
nextlen = string.len(nextwo) -- 5
finaltext[iiiii] = content[iiii]
end
iiii = iiii + 2
cuttextlen = string.len(cuttext) -- 14
iiiii = iiiii + 1
testtext = testtext.."<br \>"..i..": "..realcuttext
end
return finaltext
end
end
realnextwo = srealtext[i]
 
if (realnextwo ~= nil) then
function getheaderlimit( title, namespace )
realcuttext = realcuttext.." "..realnextwo
limiit = tonumber(string.sub(title, string.len(title)))
end
title = string.sub(title, 1, string.len(title)-2)
title = mw.title.new( title, namespace )
content = title:getContent()
curhead=""
while (0<=limiit) do
curhead = curhead.."%="
limiit = limiit-1
end
curhead = curhead.."+"
content = string.gsub(content, curhead, "no")
content = string.gsub(content, "%=%=+", "§§§")
content = split("hallo"..content, "§§§")
iiii = 2
iiiii = 1
length = tablelength(content)
endtext={}
while (iiii<=length) do
endtext[iiiii] = content[iiii]
iiii = iiii + 2
iiiii = iiiii + 1
end
end
return endtext
testtext = testtext.."<br \>"..(i+1)..": "..realcuttext
return realcuttext
end
end


 
function p.display ( frame )
 
text = frame.args[1]
 
text = text:gsub("'", "")
 
lend = string.len(text)
function cut( limit, realtext )
i=1
testtext = ""
auf = {}
zu = {}
realtext = removespaceinlink(realtext) --Die Schmiede
currentauf = string.find(text, "%[%[")
srealtext = split(realtext, " ") --Die|Schmiede(list)
while (currentauf ~= nil) do
i = 2; --2
auf[i] = currentauf;
testtext = testtext.."<br \>"..i..": "
if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
text = display(removespaceinlink(realtext)) --Die Schmiede
stext = split(text, " ") --Die|Schmiede(list)
if(table.getn(stext)==1) then
if(string.len(stext[1])>limit) then
return "%@%"..text
else
else
return text.."%@%"
currentauf = nil
end
end
i=i+1
end
end
cuttext = stext[1] --Die
i=1
realcuttext = srealtext[1] --Die
currentzu = string.find(text, "%|")
while (currentzu ~= nil) do
nextwo = stext[2] --Schmiede
zu[i] = currentzu;
realnextwo = srealtext[2] --Schmiede
if (string.find(string.sub(text,currentzu+2), "%|")~=nil)then
currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%|")
nextlen = string.len(nextwo)--8
else
textlen = string.len(text)--12
currentzu = nil
cuttextlen = string.len(cuttext)--3
end
i=i+1
set = true;
end
testtext = testtext.."<br \>"..i..": "..realcuttext
if(limit>=textlen)then --4>=12
return realtext.."%@%"
elseif(cuttextlen>limit) then--3>4
return "%@%"..realtext
offset = 0
if(table.getn(auf) == table.getn(zu))then
i=1
while (table.getn(auf)>=i) do
anfang = auf[i]
ende = zu[i]
tt, uu = string.find(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|")
text = string.gsub(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|", "")..string.sub(text,anfang-offset+2,string.len(text))
-- text = string.sub(text,1,anfang-offset+1)..string.sub(text,ende+1-offset,string.len(text))
if (tt ~= nil) and (uu ~= nil) then
offset = offset+uu-tt
end
i=i+1
end
text = string.gsub(text, "%[%[(.+)%|", "")
end
-- text = text:gsub("%[", "")
-- text = text:gsub("%|", "")
text = text:gsub("%]", "")


else
return text
while (cuttextlen+nextlen+1<=textlen+2) do --8+3+1<=12+2(12<=14)|14+3+1<=12+2(18<=14)
end
 
if(cuttextlen+nextlen+1>limit and set) then --8+3+1>4(12>4)|
 
set = false
 
cuttext = cuttext.."%@%" --"Die %@%"
function p.split ( frame )
realcuttext = realcuttext.."%@%" --"Die %@%"
spl = split(frame.args[1],frame.args[2])
i=1
else
t=""
cuttext = cuttext.." " --
while(i<=tablelength(spl)) do
realcuttext = realcuttext.." " --
t = t..spl[i].."\n\n"
i=i+1
end
end
-- testtext = testtext..tostring(i)..": "..realcuttext.."<br />"
 
i = i + 1 --3
    return t
cuttext = cuttext..nextwo -- "Die%@%Schmiede"
realcuttext = realcuttext..realnextwo -- "Die%@%Schmiede"
nextwo = stext[i]-- nil
realnextwo = srealtext[i]-- nil
if (nextwo ~= nil) then
nextlen = string.len(nextwo) -- 5
end
cuttextlen = string.len(cuttext) -- 14
testtext = testtext.."<br \>"..i..": "..realcuttext
end
realnextwo = srealtext[i]
if (realnextwo ~= nil) then
realcuttext = realcuttext.." "..realnextwo
end
end
testtext = testtext.."<br \>"..(i+1)..": "..realcuttext
return realcuttext
end
end


function headertotablelimit(title, namespace)
function p.removespaceinlink(frame)
limiiiit = tonumber(string.sub(title, string.len(title)))-1
text = frame.args[1]
title = string.sub(title, 1, string.len(title)-2)
i=1
title = mw.title.new( title, namespace )
content = title.getContent(title)
original = headertotable(content)
neworiginal = {}
for nnnnn,entriii in ipairs(original) do
if (tablelength(entriii)<=limiiiit) then
neworiginal[nnnnn] = entriii
end
end
return neworiginal
end
 
function display ( text )
text = text:gsub("'", "")
lend = string.len(text)
ii=1
auf = {}
auf = {}
zu = {}
zu = {}
currentauf = string.find(text, "%[%[")
currentauf = string.find(text, "%[%[")
while (currentauf ~= nil) do
while (currentauf ~= nil) do
auf[ii] = currentauf;
auf[i] = currentauf;
if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
Zeile 293: Zeile 198:
end
end
ii=ii+1
i=i+1
end
end
ii=1
i=1
currentzu = string.find(text, "%|")
currentzu = string.find(text, "%]%]")
while (currentzu ~= nil) do
while (currentzu ~= nil) do
zu[ii] = currentzu;
zu[i] = currentzu;
if (string.find(string.sub(text,currentzu+2), "%|")~=nil)then
if (string.find(string.sub(text,currentzu+2), "%]%]")~=nil)then
currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%|")
currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%]%]")
else
else
currentzu = nil
currentzu = nil
end
end
ii=ii+1
i=i+1
end
end
offset = 0
if(table.getn(auf) == table.getn(zu))then
if(table.getn(auf) == table.getn(zu))then
i=1
ii=1
while (table.getn(auf)>=i) do
while (table.getn(auf)>=ii) do
anfang = auf[i]
anfang = auf[ii]
ende = zu[i]
ende = zu[ii]
text = string.sub(text,1,anfang-1)..string.gsub(string.sub(text,anfang,ende)," ","§")..string.sub(text,ende+1,string.len(text))
tt, uu = string.find(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|")
 
text = string.gsub(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|", "")..string.sub(text,anfang-offset+2,string.len(text))
i=i+1
-- text = string.sub(text,1,anfang-offset+1)..string.sub(text,ende+1-offset,string.len(text))
end
if (tt ~= nil) and (uu ~= nil) then
offset = offset+uu-tt
end
ii=ii+1
end
text = string.gsub(text, "%[%[(.+)%|", "")
end
end
-- text = text:gsub("%[", "")
return text
-- text = text:gsub("%|", "")
end
text = text:gsub("%]", "")
 
 
 
 




return text
function p.size ( frame )
text = frame.args[1]
return textSize(text)
end
end


function removespaceinlink(text)
iii=1
auf = {}
zu = {}
currentauf = string.find(text, "%[%[")
while (currentauf ~= nil) do
auf[iii] = currentauf;
if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
else
currentauf = nil
end
iii=iii+1
end
iii=1
currentzu = string.find(text, "%]%]")
while (currentzu ~= nil) do
zu[iii] = currentzu;
if (string.find(string.sub(text,currentzu+2), "%]%]")~=nil)then
currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%]%]")
else
currentzu = nil
end
iii=iii+1
end
if(table.getn(auf) == table.getn(zu))then
iii=1
while (table.getn(auf)>=iii) do
anfang = auf[iii]
ende = zu[iii]
text = string.sub(text,1,anfang-1)..string.gsub(string.sub(text,anfang,ende)," ","§")..string.sub(text,ende+1,string.len(text))


iii=iii+1
end
end
return text
end


function gethighest( tabhle )
 
highest = tabhle[1]
 
for numgbr,crregnt in ipairs(tabhle) do
function p.size ( frame )
if (highest<tabhle[numgbr]) then
text = frame.args[1]
highest=tabhle[numgbr]
return textSize(text)
end
end
return highest
end
end


function duptable( tabhdhle )
function p.findg( frame )
dupe = {}
text = frame.args[1]
nothertab = {}
d,s,r = string.find(text, "g")
for nuamgbr,craregnt in pairs(tabhdhle) do
return d,s,r
reallycontains  = tabContains(nothertab,craregnt)
if (reallycontains==nil) then
nothertab[nuamgbr] = craregnt
else
tempdupetable = {reallycontains,nuamgbr}
table.insert(dupe,tempdupetable)
end
end
return dupe
end
 
function schlagwortliste()
tiasdtasdfle = mw.title.new( "Schlagwortliste", "Yggdrasil" )
contegfgdfndasdat = tiasdtasdfle:getContent()
schlagworttable = {}
for thingis in string.gmatch(contegfgdfndasdat, "%{%{o%|.-%|") do
iuadiuh = string.sub(thingis,5,string.len(thingis)-1)
if (iuadiuh~="Name") then
table.insert(schlagworttable,iuadiuh)
end
end
 
return schlagworttable


end
end


function gegvorapi()
function p.indexold
listxy = {}
( frame )
gegtitle = mw.title.new( "Gegenstände", "Yggdrasil" )
text = frame.args[1]
gegcontent = gegtitle:getContent()
stext = split (text, "§§§")
tabbbb = headertotable(gegcontent)
currentpage = ""
headerewnds = {}
currentheaders= nil
tempzwweites = {}
finish = ""
tempzudreites = 0
i = 1
tempzudreitasdafsaes = 0
inde = 1
for eiwnes,zwwweites in pairs(tabbbb) do
while (i<=tablelength(stext)) do
if (tablelength(zwwweites) == 3) then
currentpage = stext[i]
tempzwweites = copy(zwwweites)
currentheaders = getheaderlimit(currentpage, "Yggdrasil")
x,tempzudreites = string.find(gegcontent,"===="..tempzwweites[3].."====")
currentpage = string.sub(currentpage, 1, string.len(currentpage)-2)
tempzudreitasdafsaes,x = string.find(gegcontent,"\n=", tempzudreites)
headlen = tablelength(currentheaders)
if (tempzudreitasdafsaes==nil) then
inde = 1
tempzudreitasdafsaes = string.len(gegcontent)
while (inde<=headlen) do
end
finish = finish.."|[[Yggdrasil:"..currentpage.."#"..currentheaders[inde].."|"..currentheaders[inde].."]]\n|[[Yggdrasil:"..currentpage.."|"..currentpage.."]]\n|-\n"
tempzwweites[4] = string.gsub(string.sub(gegcontent,tempzudreites+1,tempzudreitasdafsaes-1),"<.->","")
table.insert(listxy,tempzwweites)
inde=inde+1
end
end
end
i=i+1
end
return listxy -- 1:Category 2: Subcategory 3: Name 4:content
--text = frame.args[1]
end
--stext = split (text, "\n")
 
--ending = ""
function zeros(intedhfgjdgkztger)
    resdgsgst = ""
--for i = 1,tablelength(stext),1 do
    while (intedhfgjdgkztger>0) do
-- currentsplit = split (stext[i], "%>")
        resdgsgst=resdgsgst.."0"
-- leng = tablelength(currentsplit)
        intedhfgjdgkztger=intedhfgjdgkztger-1
-- ending = ending.."|[[Yggdrasil:"..currentsplit[2].."#"..currentsplit[1].."|"..currentsplit[1].."]]\n|[[Yggdrasil:"..currentsplit[2].."|"..currentsplit[2].."]]\n|-\n"
end
--end
    return resdgsgst
end
 
function ones(intedhfgjdfasgkztger)
    resdgsasdgst = ""
    while (intedhfgjdfasgkztger>0) do
        resdgsasdgst=resdgsasdgst.."1"
        intedhfgjdfasgkztger=intedhfgjdfasgkztger-1
end
    return resdgsasdgst
end
 
function gegapi()
catlist = {}
nosortlist = {}
unforlist = gegvorapi()
temptable = {}
temprest = ""
tempsplittable = {}
nothertempsplittable = {}
tempimg = nil
for numd, keyd in pairs(unforlist) do
temptable = {}
if (catlist[keyd[1]] == nil) then
catlist[keyd[1]] = {}
end
if (catlist[keyd[1]][keyd[2]] == nil) then
catlist[keyd[1]][keyd[2]] = {}
end
if (catlist[keyd[1]][keyd[2]][numd] == nil) then
catlist[keyd[1]][keyd[2]][numd] = {}
end
temptable["Category"] = keyd[1]
temptable["Subcategory"] = keyd[2]
temptable["Name"] = keyd[3]
catlist[keyd[1]][keyd[2]][numd]["Name"] = keyd[3]
temptable["Text"] =  string.gsub(string.gsub(split(keyd[4], "\n%|\n")[2],"%}%}",""),"\n\n","")
catlist[keyd[1]][keyd[2]][numd]["Text"] = temptable["Text"]
temprest = split(keyd[4], "\n%|\n")[1]
tempimg = string.match(temprest,"img=.-\n")
anothertemp = ""
if (tempimg~= nil) then
temptable["Img"] = string.sub(tempimg,5)
catlist[keyd[1]][keyd[2]][numd]["Img"] = temptable["Img"]
end
temprest = string.gsub(string.gsub(temprest,"\n",""), "{{YggTab.-|!", "")
temprest = string.gsub(temprest, "{{YggTab|!", "|-|!")
temprest = split(temprest,"|%-|!")
for tri,asdf in pairs(temprest) do
tempsplittable = split(asdf,"|")
intindex = 2
nothertempsplittable = {}
while (intindex<=tablelength(tempsplittable)) do
anothertemp = tempsplittable[intindex]
if (string.find(anothertemp,"/")==1) then
anothertemp = string.sub(anothertemp,2)
elseif (string.find(anothertemp,":")~=nil) then
anothertemp = "[[Yggdrasil:"..split(anothertemp,":")[1].."|"..split(anothertemp,":")[2].."]]"
end
table.insert(nothertempsplittable,anothertemp)
intindex = intindex + 1
end
temptable[tempsplittable[1]] = copy(nothertempsplittable)
catlist[keyd[1]][keyd[2]][numd][tempsplittable[1]] = temptable[tempsplittable[1]]
if (tempsplittable[1]=="Schlagwörter") then
temptable[tempsplittable[1]] = split(temptable[tempsplittable[1]][1],", ")
catlist[keyd[1]][keyd[2]][numd][tempsplittable[1]] = temptable[tempsplittable[1]]
end
end
table.insert(nosortlist,temptable)
end
return finish
return nosortlist, catlist
end
end


function changebin(binaasdasfgggary, integeeer)
binaaasdfhry = binaasdasfgggary
tochange = string.sub(binaaasdfhry, integeeer, integeeer)
if(tochange == "1") then
        binaaasdfhry = string.sub(binaaasdfhry,1,integeeer-1).."0"..string.sub(binaaasdfhry,integeeer+1)
    elseif(tochange == "0") then
        binaaasdfhry = string.sub(binaaasdfhry,1,integeeer-1).."1"..string.sub(binaaasdfhry,integeeer+1)
end
return binaaasdfhry
end


function multchangebin(binaaghdfghsdgggary, integeeerstart, integeeerend)  
function p.yggrassen( frame )
while (integeeerstart<=integeeerend) do
text = frame.args[1]
binaaghdfghsdgggary = changebin(binaaghdfghsdgggary,integeeerstart)
stext = split (text, "\n")
integeeerstart = integeeerstart+1
haupttext = split (text, "'''Nebenrassen'''")[1]
end
nebentext = split (text, "'''Nebenrassen'''")[2]
return binaaghdfghsdgggary
shaupttext = split (haupttext, "\n")
end
snebentext = split (nebentext, "\n")
 
ending = "!<big>Hauptrassen</big>\n|-\n"
function multset(binaafgdhjhsdgggary, numbertoset, integerstart, integerend)  
if (numbertoset == "1") then
for i = 2,tablelength(stext),1 do
binaafgdhjhsdgggary = string.sub(binaafgdhjhsdgggary, 0, integerstart-1)..ones(integerend-integerstart+1)..string.sub(binaafgdhjhsdgggary, integerend+1)
if (stext[i]=="'''Nebenrassen'''") then
elseif(numbertoset == "0") then
ending = ending.."!<big>Nebenrassen</big>\n|-\n"
binaafgdhjhsdgggary = string.sub(binaafgdhjhsdgggary, 0, integerstart-1)..zeros(integerend-integerstart+1)..string.sub(binaafgdhjhsdgggary, integerend+1)
else
ending = ending.."|<big>'''[[#"..stext[i].."|"..stext[i].."]]'''</big>\n|-\n"
end
end
end
return binaafgdhjhsdgggary
end


function multchangebinall(binaasdgggary, integerstart, integerend)
return ending
izgovouv = string.sub(binaasdgggary, integerstart, integerend)
if (izgovouv~=ones(integerend-integerstart+1)) then
binaasdgggary = multset(binaasdgggary, "1",integerstart, integerend)
else
binaasdgggary = multset(binaasdgggary, "0",integerstart, integerend)
end
return binaasdgggary
end


function tran(integedasfr)
    integerotut = integedasfr
    if (integedasfr=="1") then
        integerotut = "tagselected"
    elseif (integedasfr=="0") then
        integerotut = "tagunselected"
end
    return integerotut
end
end


function trancat(integdfghedasfr)
    integerdfghotut = integdfghedasfr
    if (integdfghedasfr=="1") then
        integerdfghotut = "catselected"
    elseif (integdfghedasfr=="0") then
        integerdfghotut = "catunselected"
end
    return integerdfghotut
end


function tranlinkopen(integasdedasfr)
    integerasdotut = integasdedasfr
    if (integasdedasfr=="1") then
        integerasdotut = '<span class="linkwhite">'
    elseif (integasdedasfr=="0") then
        integerasdotut = '<span class="linkred">'
end
    return integerasdotut
end


function multtran(intedfgsdggedasfr)
function p.yggtab( frame )
    integerodfghdfghtut = intedfgsdggedasfr
text = frame.args[1]
    if (intedfgsdggedasfr==ones(string.len(intedfgsdggedasfr))) then
img = frame.args[2]
        integerodfghdfghtut = "tagselected"
stext = split (text, "§§§")
    else
exist = true
        integerodfghdfghtut = "tagunselected"
imgtext = ''
if (img~=nil and img~='' and img~='{{{img}}}') then
imgtext='<div id="yggimg">[[Datei:'..img..']]</div>\n'
end
end
    return integerodfghdfghtut
i=1
end
rettext='{|class="wikitable" style="width: 32%; float:right; margin-top: 0; margin-bottom: 0px;"\n|-\n'
 
while (stext[i+1]~=nil) do
function multtranlinkopen(intedsdfgsdfgfgsdggedasfr)
rettext=rettext..'!style="width:32%; padding: 10px;" |'..string.sub(stext[i],2,string.len(stext[i]))..'\n'
    asdfintegerodfghdfghtut = intedsdfgsdfgfgsdggedasfr
i=i+1
    if (intedsdfgsdfgfgsdggedasfr==ones(string.len(intedsdfgsdfgfgsdggedasfr))) then
if (stext[i+1]~=nil and stext[i]~='-') then
        asdfintegerodfghdfghtut = '<span class="linkwhite">'
rettext=rettext..'|style="width:68%; padding: 10px;" |'
    else
end
        asdfintegerodfghdfghtut = '<span class="linkred">'
end
while (stext[i+1]~=nil and stext[i]~='-') do
    return asdfintegerodfghdfghtut
if(string.sub(stext[i],1,1)=='/') then
end
rettext=rettext..string.sub(stext[i],2)
 
elseif(string.find(stext[i],'#')~=nil) then
function getint(binnnarry, ineetger)
found=string.find(stext[i],'#')
return string.sub(binnnarry,ineetger,ineetger)
rettext=rettext..'[[Yggdrasil:'..string.sub(stext[i],1,found-1)..'#'..string.sub(stext[i],found+1,string.len(stext[i]))..'|'..string.sub(stext[i],found+1,string.len(stext[i]))..']]'
end
 
else
function getmultint(binnnarry, ineetgerstarti, inteegerendi)
rettext=rettext..'[[#'..stext[i]..'|'..stext[i]..']]'
return string.sub(binnnarry,ineetgerstarti,inteegerendi)
end
end
rettext=rettext..'\n\n'
i=i+1
end


function numtran(binsnnafsffarry, ineeggsdgtger)
rettext=rettext..'|-\n'
return tran(getint(binsnnafsffarry, ineeggsdgtger))
i=i+1
end
rettext=rettext..'|}'..stext[i-1]..'\n|style="width:20%; padding: 0; vertical-align:top;"|'..imgtext
return '{|style="width:100%;"\n|style="width:80%; padding: 0; vertical-align:top;"|\n'..rettext..'\n|}'
end
end


function numtrancat(binsnsdfnafsffarry, ineegfdfggsdgtger)
function p.getpage( frame )
return trancat(getint(binsnsdfnafsffarry, ineegfdfggsdgtger))
title = mw.title.new( frame.args[1], frame.args[2] )
content = title:getContent()
return content
end
end


function numtranlinkopen(binhfghsnnarry, ineegdfsdhgtger)
function p.getheader( frame )
return tranlinkopen(getint(binhfghsnnarry, ineegdfsdhgtger))
title = mw.title.new( frame.args[1], frame.args[2] )
end
content = title:getContent()
 
--content = string.gsub(content, "([$$$]+)", "DIESER CHARACTER WIRD NICHT UNTERSTÜTZT")
function nummulttran(binsnwrtzeghnarry, ineegsgdfsdhftgereins, ineegsgdfsdhftgerzwei)
content = string.gsub(content, "%=%=+", "§§§")
return multtran(getmultint(binsnwrtzeghnarry, ineegsgdfsdhftgereins, ineegsgdfsdhftgerzwei))
content = split("hallo"..content, "§§§")
end
i = 2
 
length = tablelength(content)
function nummulttranlinkopen(binsnnarry, ineegtgereins, ineegtgerzwei)
finaltext=""
return multtranlinkopen(getmultint(binsnnarry, ineegtgereins, ineegtgerzwei))
while (i<=length) do
end
if (string.match(content[i], "[^[(%s)(%d)(%a)]]")==nil) then
 
finaltext = finaltext..content[i].."\n\n"
function categorylist()
gegasdtitle = mw.title.new( "Gegenstände", "Yggdrasil" )
gegconfsatent = gegasdtitle:getContent()
tabbfghbb = headertotable(gegconfsatent)
lastlist = {}
for eiwnes,zwwweites in pairs(tabbfghbb) do
if (tablelength(zwwweites) == 1) then
lastlist[zwwweites[1]] = {}
end
if (tablelength(zwwweites) == 2) then
table.insert(lastlist[zwwweites[1]],zwwweites[2])
end
end
i = i + 2
end
end
return lastlist --Kategorie-->stringlist:subcategories
return finaltext
end
end


function doubletablelength(taaabaaabaal)
seendlength = 0
for iaubgs,aousbd in pairs(taaabaaabaal) do
seendlength = seendlength+tablelength(aousbd)
end


return seendlength
end


 
function p.index( frame )
function markheaders(content)
--content = displaytablevert(getindexformat())
content = content.."\npuffercontent\n"
text = frame.args[1]
content = string.gsub(content, "=\n", "=\npuffercontent\n")
stext = split (text, "§§§")
content = string.gsub(content, "\n=%s*([^%=]+)%s*=\n", "\n")
currentpage = ""
content = string.gsub(content, "\n==%s*([^%=]+)%s*==\n", "\n!Anfang2!%1!2Ende!\n")
currentheaders= nil
content = string.gsub(content, "\n===%s*([^%=]+)%s*===\n", "\n!Anfang3!%1!3Ende!\n")
finish = ""
content = string.gsub(content, "\n====%s*([^%=]+)%s*====\n", "\n!Anfang4!%1!4Ende!\n")
tempfinish =""
content = string.gsub(content, "\n=====%s*([^%=]+)%s*=====\n", "\n!Anfang5!%1!5Ende!\n")
i = 1
content = string.gsub(content, "\n======%s*([^%=]+)%s*======\n", "\n!Anfang6!%1!6Ende!\n")
inde = 1
return content
while (i<=tablelength(stext)) do
end
currentpage = stext[i]
 
currentheaders = headertotablelimit(currentpage, "Yggdrasil")
function onllyheaders(content)
currentpage = string.sub(currentpage, 1, string.len(currentpage)-2)
content = markheaders(content)
headlen = tablelength(currentheaders)
content = string.gsub(content,"!.Ende!\n.-\n!Anfang", "\n\n")
inde = 1
content = string.gsub(content,".*!Anfang", "")
while (inde<=headlen) do
content = string.gsub(content,"!.Ende!.*", "")
if (tablelength(currentheaders[inde])==1) then
return content
tempfinish = getindexformat()[1]
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
end
 
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
function headertotable(content)
testvar=""
content = onllyheaders(content)
firsthead=1
if (string.find(content, "1!")== nil) then
firsthead=firsthead+1
if (string.find(content, "2!")== nil) then
firsthead=firsthead+1
if (string.find(content, "3!")== nil) then
firsthead=firsthead+1
if (string.find(content, "4!")== nil) then
firsthead=firsthead+1
if (string.find(content, "5!")== nil) then
firsthead=firsthead+1
end
end
end
end
end
iiiiii={1,2,2,2,2,1}
content="puffer\n"..content.."\n\n2!Puffer"
iall=0
headersplit={}
headersplit[1] = split(content,tostring(firsthead).."!")
currenthead={}
finaltable={}
while (iiiiii[1]<tablelength(headersplit[1])-1) do--tablelength(headersplit[1])
iall=iall+1
currenthead[1] = string.gsub(gmatchtable(headersplit[1][iiiiii[1]+1], ".-\n")[1],"\n","")
finaltable[iall]={currenthead[1]..testvar}
headersplit[2] = split(headersplit[1][iiiiii[1]+1],tostring(firsthead+1).."!")
while (iiiiii[2]<=tablelength(headersplit[2])) do
iall=iall+1
currenthead[2] = string.gsub(gmatchtable(headersplit[2][iiiiii[2]], ".-\n")[1],"\n","")
finaltable[iall]={currenthead[1],currenthead[2]}
headersplit[3] = split(headersplit[2][iiiiii[2]],tostring(firsthead+2).."!")
while (iiiiii[3]<=tablelength(headersplit[3])) do
iall=iall+1
currenthead[3] = string.gsub(gmatchtable(headersplit[3][iiiiii[3]], ".-\n")[1],"\n","")
finaltable[iall]={currenthead[1],currenthead[2],currenthead[3]}
headersplit[4] = split(headersplit[3][iiiiii[3]],tostring(firsthead+3).."!")
elseif(tablelength(currentheaders[inde])==2) then
while (iiiiii[4]<=tablelength(headersplit[4])) do
tempfinish = getindexformat()[2]
iall=iall+1
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
currenthead[4] = string.gsub(gmatchtable(headersplit[4][iiiiii[4]], ".-\n")[1],"\n","")
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
finaltable[iall]={currenthead[1],currenthead[2],currenthead[3],currenthead[4]}
headersplit[5] = split(headersplit[4][iiiiii[4]],tostring(firsthead+4).."!")
while (iiiiii[5]<=tablelength(headersplit[5])) do
iall=iall+1
currenthead[5] = string.gsub(gmatchtable(headersplit[5][iiiiii[5]], ".-\n")[1],"\n","")
finaltable[iall]={currenthead[1],currenthead[2],currenthead[3],currenthead[4],currenthead[5]}
iiiiii[5]=iiiiii[5]+1
end
iiiiii[5]=2
iiiiii[4]=iiiiii[4]+1
end
iiiiii[4]=2
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
iiiiii[3]=iiiiii[3]+1
elseif(tablelength(currentheaders[inde])==3) then
end
tempfinish = getindexformat()[3]
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
iiiiii[3]=2
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
iiiiii[2]=iiiiii[2]+1
end
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
iiiiii[2]=2
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
iiiiii[1]=iiiiii[1]+1
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
end
elseif(tablelength(currentheaders[inde])==4) then
return finaltable
tempfinish = getindexformat()[4]
 
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
end
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
 
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
function turnstring (stringtoturn)
tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
turnedstring = ""
while (string.len(stringtoturn)>0) do
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
turnedstring = string.sub(stringtoturn,1,1)..turnedstring
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
stringtoturn = string.sub(stringtoturn,2)
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
end
tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
 
return turnedstring
elseif(tablelength(currentheaders[inde])==5) then
end
tempfinish = getindexformat()[5]
function turntable (tabletoturn)
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
turnedtable = {}
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
intexi = tablelength(tabletoturn)
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
intexinnorm = 1
tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
while (intexi>0) do
tempfinish = string.gsub(tempfinish, "{{{h5}}}", currentheaders[inde][5])
turnedtable[intexi] = tabletoturn[intexinnorm]
intexi = intexi-1
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
intexinnorm = intexinnorm+1
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
end
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
return turnedtable
tempfinish = string.gsub(tempfinish, "{{{h5 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][5].."|"..currentheaders[inde][5].."]]")
end
 
elseif(tablelength(currentheaders[inde])==6) then
 
tempfinish = getindexformat()[6]
function relevanttags( tttagstate )
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
aaltags = schlagwortliste()
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
endtags = {}
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
iindexii = 1
tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
realiindexii = 1
tempfinish = string.gsub(tempfinish, "{{{h5}}}", currentheaders[inde][5])
while (iindexii<=string.len(tttagstate)) do
tempfinish = string.gsub(tempfinish, "{{{h6}}}", currentheaders[inde][6])
if (string.sub(tttagstate,iindexii,iindexii)=="1") then
endtags[realiindexii] = aaltags[iindexii]
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
realiindexii = realiindexii+1
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
end
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
iindexii = iindexii+1
tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
end
tempfinish = string.gsub(tempfinish, "{{{h5 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][5].."|"..currentheaders[inde][5].."]]")
return endtags
tempfinish = string.gsub(tempfinish, "{{{h6 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][6].."|"..currentheaders[inde][6].."]]")
end
 
function relevantcats( cccatstate )
-- cccatstate = turnstring(cccatstate)
end
aallcats = categorylist()
if(tablelength(currentheaders[inde])~=0) then
endcats = {}
if (currentpage=="Religion") then
endcats["log"] = ""
currentpagedis = "Religion/Äscher"
iiindexiii = string.len(cccatstate)
elseif(currentpage=="Religion2") then
for scatname, ssubcatnames in pairs(aallcats) do
currentpagedis = "Religion/Lacerta"
endcats["log"] = endcats["log"]..scatname..": \n\n"
elseif(currentpage=="Religion2") then
for subcatindex, ssubcatname in pairs(turntable(ssubcatnames)) do
currentpagedis = "Religion/Lichtalben"
elseif(currentpage=="Religion2") then
if (string.sub(cccatstate,iiindexiii,iiindexiii)=="1") then
currentpagedis = "Religion/Dunkelalben"
if (endcats[scatname] == nil) then
elseif(currentpage=="Religion2") then
endcats[scatname] = {}
currentpagedis = "Religion/Dweorgo"
end
elseif(currentpage=="Religion2") then
table.insert(endcats[scatname], ssubcatname)
currentpagedis = "Religion/Andere"
endcats["log"] = endcats["log"]..ssubcatname.." "..string.sub(cccatstate,iiindexiii,iiindexiii).."\n\n"
else
end
currentpagedis = currentpage
iiindexiii = iiindexiii-1
end
end
cccatstate = string.sub(cccatstate,1, iiindexiii)
tempfinish = "|"..string.gsub(string.gsub(tempfinish, "{{{page}}}", currentpagedis),"\n", "",1)
iiindexiii = string.len(cccatstate)
tempfinish = string.gsub(tempfinish, "{{{page link}}}", "[[Yggdrasil:"..currentpage.."|"..currentpagedis.."]]")
end
finish = finish..tempfinish.."\n|-\n"
return endcats
end
end
inde=inde+1
 
end
 
function getpartapi(ttagstate, ccatstate)
i=i+1
nosorttlist, cattlist = getapi()
 
 
 
end
 
--##################################################################################################################################################################
--##################################################################################################################################################################
--##################################################################################################################################################################
--##################################################################################################################################################################
--##################################################################################################################################################################
--##################################################################################################################################################################
 
 
function p.cutblock ( frame )
text = frame.args[3]-- "Die Schmiede"
width = tonumber(frame.args[2]) -- 4
height = tonumber(frame.args[1]) -- 12
block = ""
textlen = string.len(text) -- 12
tempsplit = {}
while (height>0 and textlen>=width) do -- 12>0 and 12>=4|11>0 and 11>=4
tempsplit = split(cut(width, text), "%%%@%%") -- ("Die", "Schmiede")| (
block = block..tempsplit[1].." " -- "Die "
text = tempsplit[2] -- "Schmiede"
height = height-1 -- 11
if (text==nil) then
text = ""
end
textlen = string.len(text) -- 8
end
if (height>0) then
block = block.." "..text
text = ""
end
end
result = block.."%@%"..text
return finish
result = string.gsub(result, "%§", " ")
return result


--<h2>


end
end


function p.cut( frame )
function p.religion( frame )
testtext = ""
ull = ""
realtext = frame.args[2] --Die Schmiede
if (frame.args[1]=="1") then
realtext = removespaceinlink(realtext) --Die Schmiede
ull = '{{YggRegister|!Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
srealtext = split(realtext, " ") --Die|Schmiede(list)
elseif (frame.args[1]=="2") then
i = 2; --2
ull = '{{YggRegister|Religion:Äscher|!Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
testtext = testtext.."<br \>"..i..": "
elseif (frame.args[1]=="3") then
limit = tonumber(frame.args[1]) --4
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|!Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
text = display(removespaceinlink(realtext)) --Die Schmiede
elseif (frame.args[1]=="4") then
stext = split(text, " ") --Die|Schmiede(list)
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|!Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
elseif (frame.args[1]=="5") then
if(table.getn(stext)==1) then
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|!Religion5:Dweorgo|Religion6:Andere}}'
if(string.len(stext[1])>limit) then
elseif (frame.args[1]=="6") then
return "%@%"..text
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|!Religion6:Andere}}'
end
return ull
end
 
 
function p.test( frame )
dieter, dieter2 = gegapi()
dieter2 = dieter2["Kampfutensilien"]["Nahkampfwaffen"][1]
leresti = "Dinge:\n"
    for zahl,dingsi in  pairs(dieter2) do
        leresti = leresti.."*"..zahl..":"
if (dingsi[1]~=nil) then
for zahfgsal,didfsdhngsi in  pairs(dingsi) do
leresti = leresti.." - "..didfsdhngsi
end
else
else
return text.."%@%"
leresti = leresti.." "..dingsi
end
end
leresti = leresti.."\n"
end
end
cuttext = stext[1] --Die
realcuttext = srealtext[1] --Die
nextwo = stext[2] --Schmiede
realnextwo = srealtext[2] --Schmiede
nextlen = string.len(nextwo)--8
textlen = string.len(text)--12
cuttextlen = string.len(cuttext)--3
set = true;
testtext = testtext.."<br \>"..i..": "..realcuttext
if(limit>=textlen)then --4>=12
return realtext.."%@%"
elseif(cuttextlen>limit) then--3>4
return "%@%"..realtext
return leresti
end


else
function p.options( frame )
while (cuttextlen+nextlen+1<=textlen+2) do --8+3+1<=12+2(12<=14)|14+3+1<=12+2(18<=14)
stext = split (frame.args[1], "§§§")
lengthi = tablelength(stext)
if(cuttextlen+nextlen+1>limit and set) then --8+3+1>4(12>4)|
finalthing = ""
set = false
tempeins = stext[1]
cuttext = cuttext.."%@%" --"Die %@%"
tempzwei = stext[2]
realcuttext = realcuttext.."%@%" --"Die %@%"
tempdrei = stext[3]
tempvier = stext[4]
else
tempfunf = stext[5]
cuttext = cuttext.." " --
tempsech = stext[6]
realcuttext = realcuttext.." " --
tempsieb = stext[7]
tempacht = stext[8]
end
tempneun = stext[9]
-- testtext = testtext..tostring(i)..": "..realcuttext.."<br />"
if (lengthi==2) then
i = i + 1 --3
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
cuttext = cuttext..nextwo -- "Die%@%Schmiede"
else
realcuttext = realcuttext..realnextwo -- "Die%@%Schmiede"
tempeins = string.sub(tempeins,2)
nextwo = stext[i]-- nil
realnextwo = srealtext[i]-- nil
if (nextwo ~= nil) then
nextlen = string.len(nextwo) -- 5
end
cuttextlen = string.len(cuttext) -- 14
testtext = testtext.."<br \>"..i..": "..realcuttext
end
end
realnextwo = srealtext[i]
if (string.sub(stext[2],1,1)~="/") then
if (realnextwo ~= nil) then
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
realcuttext = realcuttext.." "..realnextwo
else
tempzwei = string.sub(tempzwei,2)
end
end
end
finalthing = "*"..tempeins.." (bei 1-50)\n*"..tempzwei.." (bei 51-100)"
testtext = testtext.."<br \>"..(i+1)..": "..realcuttext
elseif(lengthi==3) then
return realcuttext
if (string.sub(stext[1],1,1)~="/") then
end
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
 
function p.display ( frame )
text = frame.args[1]
text = text:gsub("'", "")
lend = string.len(text)
i=1
auf = {}
zu = {}
currentauf = string.find(text, "%[%[")
while (currentauf ~= nil) do
auf[i] = currentauf;
if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
else
else
currentauf = nil
tempeins = string.sub(tempeins,2)
end
end
if (string.sub(stext[2],1,1)~="/") then
i=i+1
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
end
else
tempzwei = string.sub(tempzwei,2)
i=1
end
currentzu = string.find(text, "%|")
if (string.sub(stext[3],1,1)~="/") then
while (currentzu ~= nil) do
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
zu[i] = currentzu;
else
if (string.find(string.sub(text,currentzu+2), "%|")~=nil)then
tempdrei = string.sub(tempdrei,2)
currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%|")
end
finalthing = "*"..tempeins.." (Bei 1-33)\n*"..tempzwei.." (Bei 34-66)\n*"..tempdrei.." (Bei 67-99)\n*Bei 100: Reroll"
elseif(lengthi==4) then
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
else
else
currentzu = nil
tempeins = string.sub(tempeins,2)
end
end
i=i+1
if (string.sub(stext[2],1,1)~="/") then
end
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
else
offset = 0
tempzwei = string.sub(tempzwei,2)
end
if(table.getn(auf) == table.getn(zu))then
if (string.sub(stext[3],1,1)~="/") then
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
i=1
else
while (table.getn(auf)>=i) do
tempdrei = string.sub(tempdrei,2)
anfang = auf[i]
end
ende = zu[i]
if (string.sub(stext[4],1,1)~="/") then
tt, uu = string.find(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|")
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
text = string.gsub(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|", "")..string.sub(text,anfang-offset+2,string.len(text))
else
-- text = string.sub(text,1,anfang-offset+1)..string.sub(text,ende+1-offset,string.len(text))
tempvier = string.sub(tempvier,2)
if (tt ~= nil) and (uu ~= nil) then
end
offset = offset+uu-tt
finalthing = "*"..tempeins.." (Bei 1-25)\n*"..tempzwei.." (Bei 26-50)\n*"..tempdrei.." (Bei 51-75)\n*"..tempvier.." (Bei 76-100)"
end
elseif(lengthi==5) then
i=i+1
if (string.sub(stext[1],1,1)~="/") then
end
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
text = string.gsub(text, "%[%[(.+)%|", "")
else
end
tempeins = string.sub(tempeins,2)
end
-- text = text:gsub("%[", "")
if (string.sub(stext[2],1,1)~="/") then
-- text = text:gsub("%|", "")
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
text = text:gsub("%]", "")
else
 
tempzwei = string.sub(tempzwei,2)
 
return text
end
 
 
 
function p.split ( frame )
spl = split(frame.args[1],frame.args[2])
i=1
t=""
while(i<=tablelength(spl)) do
t = t..spl[i].."\n\n"
i=i+1
end
 
    return t
end
 
function p.removespaceinlink(frame)
text = frame.args[1]
i=1
auf = {}
zu = {}
currentauf = string.find(text, "%[%[")
while (currentauf ~= nil) do
auf[i] = currentauf;
if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
else
currentauf = nil
end
end
if (string.sub(stext[3],1,1)~="/") then
i=i+1
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
end
i=1
currentzu = string.find(text, "%]%]")
while (currentzu ~= nil) do
zu[i] = currentzu;
if (string.find(string.sub(text,currentzu+2), "%]%]")~=nil)then
currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%]%]")
else
else
currentzu = nil
tempdrei = string.sub(tempdrei,2)
end
end
i=i+1
if (string.sub(stext[4],1,1)~="/") then
end
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
if(table.getn(auf) == table.getn(zu))then
else
i=1
tempvier = string.sub(tempvier,2)
while (table.getn(auf)>=i) do
anfang = auf[i]
ende = zu[i]
text = string.sub(text,1,anfang-1)..string.gsub(string.sub(text,anfang,ende)," ","§")..string.sub(text,ende+1,string.len(text))
 
i=i+1
end
end
end
if (string.sub(stext[5],1,1)~="/") then
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
return text
else
end
tempfunf = string.sub(tempfunf,2)
 
end
 
finalthing = "*"..tempeins.." (Bei 1-20)\n*"..tempzwei.." (Bei 21-40)\n*"..tempdrei.." (Bei 41-60)\n*"..tempvier.." (Bei 61-80)\n*"..tempfunf.." (Bei 81-100)"
 
elseif(lengthi==6) then
 
if (string.sub(stext[1],1,1)~="/") then
 
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
 
else
function p.size ( frame )
tempeins = string.sub(tempeins,2)
text = frame.args[1]
end
return textSize(text)
if (string.sub(stext[2],1,1)~="/") then
end
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
 
else
 
tempzwei = string.sub(tempzwei,2)
 
end
 
if (string.sub(stext[3],1,1)~="/") then
 
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
function p.size ( frame )
else
text = frame.args[1]
tempdrei = string.sub(tempdrei,2)
return textSize(text)
end
end
if (string.sub(stext[4],1,1)~="/") then
 
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
function p.findg( frame )
else
text = frame.args[1]
tempvier = string.sub(tempvier,2)
d,s,r = string.find(text, "g")
return d,s,r
 
end
 
function p.indexold
( frame )
text = frame.args[1]
stext = split (text, "§§§")
currentpage = ""
currentheaders= nil
finish = ""
i = 1
inde = 1
while (i<=tablelength(stext)) do
currentpage = stext[i]
currentheaders = getheaderlimit(currentpage, "Yggdrasil")
currentpage = string.sub(currentpage, 1, string.len(currentpage)-2)
headlen = tablelength(currentheaders)
inde = 1
while (inde<=headlen) do
finish = finish.."|[[Yggdrasil:"..currentpage.."#"..currentheaders[inde].."|"..currentheaders[inde].."]]\n|[[Yggdrasil:"..currentpage.."|"..currentpage.."]]\n|-\n"
inde=inde+1
end
end
if (string.sub(stext[5],1,1)~="/") then
i=i+1
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
end
else
tempfunf = string.sub(tempfunf,2)
--text = frame.args[1]
end
--stext = split (text, "\n")
if (string.sub(stext[6],1,1)~="/") then
--ending = ""
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
else
--for i = 1,tablelength(stext),1 do
tempsech = string.sub(tempsech,2)
-- currentsplit = split (stext[i], "%>")
end
-- leng = tablelength(currentsplit)
finalthing = "*"..tempeins.." (Bei 1-16)\n*"..tempzwei.." (Bei 17-32)\n*"..tempdrei.." (Bei 33-48)\n*"..tempvier.." (Bei 49-64)\n*"..tempfunf.." (Bei 65-80)\n*"..tempsech.." (Bei 81-96)\n*Bei 97-100: Reroll"
-- ending = ending.."|[[Yggdrasil:"..currentsplit[2].."#"..currentsplit[1].."|"..currentsplit[1].."]]\n|[[Yggdrasil:"..currentsplit[2].."|"..currentsplit[2].."]]\n|-\n"
elseif(lengthi==7) then
--end
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
return finish
end
 
 
function p.yggrassen( frame )
text = frame.args[1]
stext = split (text, "\n")
haupttext = split (text, "'''Nebenrassen'''")[1]
nebentext = split (text, "'''Nebenrassen'''")[2]
shaupttext = split (haupttext, "\n")
snebentext = split (nebentext, "\n")
ending = "!<big>Hauptrassen</big>\n|-\n"
for i = 2,tablelength(stext),1 do
if (stext[i]=="'''Nebenrassen'''") then
ending = ending.."!<big>Nebenrassen</big>\n|-\n"
else
else
ending = ending.."|<big>'''[[#"..stext[i].."|"..stext[i].."]]'''</big>\n|-\n"
tempeins = string.sub(tempeins,2)
end
end
end
if (string.sub(stext[2],1,1)~="/") then
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
else
tempzwei = string.sub(tempzwei,2)
 
return ending
 
end
 
 
 
function p.yggtab( frame )
text = frame.args[1]
img = frame.args[2]
stext = split (text, "§§§")
exist = true
imgtext = ''
if (img~=nil and img~='' and img~='{{{img}}}') then
imgtext='<div id="yggimg">[[Datei:'..img..']]</div>\n'
end
i=1
rettext='{|class="wikitable" style="width: 32%; float:right; margin-top: 0; margin-bottom: 0px;"\n|-\n'
while (stext[i+1]~=nil) do
rettext=rettext..'!style="width:32%; padding: 10px;" |'..string.sub(stext[i],2,string.len(stext[i]))..'\n'
i=i+1
if (stext[i+1]~=nil and stext[i]~='-') then
rettext=rettext..'|style="width:68%; padding: 10px;" |'
end
end
if (string.sub(stext[3],1,1)~="/") then
while (stext[i+1]~=nil and stext[i]~='-') do
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
if(string.sub(stext[i],1,1)=='/') then
else
rettext=rettext..string.sub(stext[i],2)
tempdrei = string.sub(tempdrei,2)
elseif(string.find(stext[i],'#')~=nil) then
end
found=string.find(stext[i],'#')
if (string.sub(stext[4],1,1)~="/") then
rettext=rettext..'[[Yggdrasil:'..string.sub(stext[i],1,found-1)..'#'..string.sub(stext[i],found+1,string.len(stext[i]))..'|'..string.sub(stext[i],found+1,string.len(stext[i]))..']]'
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
else
else
tempvier = string.sub(tempvier,2)
rettext=rettext..'[[#'..stext[i]..'|'..stext[i]..']]'
end
rettext=rettext..'\n\n'
i=i+1
end
end
 
if (string.sub(stext[5],1,1)~="/") then
rettext=rettext..'|-\n'
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
i=i+1
else
tempfunf = string.sub(tempfunf,2)
end
rettext=rettext..'|}'..stext[i-1]..'\n|style="width:20%; padding: 0; vertical-align:top;"|'..imgtext
return '{|style="width:100%;"\n|style="width:80%; padding: 0; vertical-align:top;"|\n'..rettext..'\n|}'
end
 
function p.getpage( frame )
title = mw.title.new( frame.args[1], frame.args[2] )
content = title:getContent()
return content
end
 
function p.getheader( frame )
title = mw.title.new( frame.args[1], frame.args[2] )
content = title:getContent()
--content = string.gsub(content, "([$$$]+)", "DIESER CHARACTER WIRD NICHT UNTERSTÜTZT")
content = string.gsub(content, "%=%=+", "§§§")
content = split("hallo"..content, "§§§")
i = 2
length = tablelength(content)
finaltext=""
while (i<=length) do
if (string.match(content[i], "[^[(%s)(%d)(%a)]]")==nil) then
finaltext = finaltext..content[i].."\n\n"
end
end
i = i + 2
if (string.sub(stext[6],1,1)~="/") then
end
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
return finaltext
else
end
tempsech = string.sub(tempsech,2)
 
end
 
if (string.sub(stext[7],1,1)~="/") then
 
tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
function p.index( frame )
else
--content = displaytablevert(getindexformat())
tempsieb = string.sub(tempsieb,2)
text = frame.args[1]
end
stext = split (text, "§§§")
finalthing = "*"..tempeins.." (Bei 1-14)\n*"..tempzwei.." (Bei 15-28)\n*"..tempdrei.." (Bei 29-42)\n*"..tempvier.." (Bei 43-56)\n*"..tempfunf.." (Bei 57-70)\n*"..tempsech.." (Bei 71-84)\n*"..tempsieb.." (Bei 85-98)\n*Bei 99-100: Reroll"
currentpage = ""
elseif(lengthi==8) then
currentheaders= nil
if (string.sub(stext[1],1,1)~="/") then
finish = ""
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
tempfinish =""
else
i = 1
tempeins = string.sub(tempeins,2)
inde = 1
end
while (i<=tablelength(stext)) do
if (string.sub(stext[2],1,1)~="/") then
currentpage = stext[i]
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
currentheaders = headertotablelimit(currentpage, "Yggdrasil")
else
currentpage = string.sub(currentpage, 1, string.len(currentpage)-2)
tempzwei = string.sub(tempzwei,2)
headlen = tablelength(currentheaders)
end
inde = 1
if (string.sub(stext[3],1,1)~="/") then
while (inde<=headlen) do
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
if (tablelength(currentheaders[inde])==1) then
else
tempfinish = getindexformat()[1]
tempdrei = string.sub(tempdrei,2)
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
end
if (string.sub(stext[4],1,1)~="/") then
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
else
elseif(tablelength(currentheaders[inde])==2) then
tempvier = string.sub(tempvier,2)
tempfinish = getindexformat()[2]
end
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
if (string.sub(stext[5],1,1)~="/") then
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
else
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
tempfunf = string.sub(tempfunf,2)
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
end
if (string.sub(stext[6],1,1)~="/") then
elseif(tablelength(currentheaders[inde])==3) then
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
tempfinish = getindexformat()[3]
else
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
tempsech = string.sub(tempsech,2)
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
end
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
if (string.sub(stext[7],1,1)~="/") then
tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
else
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
tempsieb = string.sub(tempsieb,2)
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
end
if (string.sub(stext[8],1,1)~="/") then
elseif(tablelength(currentheaders[inde])==4) then
tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
tempfinish = getindexformat()[4]
else
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
tempacht = string.sub(tempacht,2)
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
end
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
finalthing = "*"..tempeins.." (Bei 1-12)\n*"..tempzwei.." (Bei 13-24)\n*"..tempdrei.." (Bei 25-36)\n*"..tempvier.." (Bei 37-48)\n*"..tempfunf.." (Bei 49-60)\n*"..tempsech.." (Bei 61-72)\n*"..tempsieb.." (Bei 73-84)\n*"..tempacht.." (Bei 85-96)\n*Bei 97-100: Reroll"
tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
elseif(lengthi==9) then
if (string.sub(stext[1],1,1)~="/") then
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
else
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
tempeins = string.sub(tempeins,2)
tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
end
if (string.sub(stext[2],1,1)~="/") then
elseif(tablelength(currentheaders[inde])==5) then
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
tempfinish = getindexformat()[5]
else
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
tempzwei = string.sub(tempzwei,2)
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
end
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
if (string.sub(stext[3],1,1)~="/") then
tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
tempfinish = string.gsub(tempfinish, "{{{h5}}}", currentheaders[inde][5])
else
tempdrei = string.sub(tempdrei,2)
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
end
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
if (string.sub(stext[4],1,1)~="/") then
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
else
tempfinish = string.gsub(tempfinish, "{{{h5 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][5].."|"..currentheaders[inde][5].."]]")
tempvier = string.sub(tempvier,2)
end
elseif(tablelength(currentheaders[inde])==6) then
if (string.sub(stext[5],1,1)~="/") then
tempfinish = getindexformat()[6]
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
else
tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
tempfunf = string.sub(tempfunf,2)
tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
end
tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
if (string.sub(stext[6],1,1)~="/") then
tempfinish = string.gsub(tempfinish, "{{{h5}}}", currentheaders[inde][5])
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
tempfinish = string.gsub(tempfinish, "{{{h6}}}", currentheaders[inde][6])
else
tempsech = string.sub(tempsech,2)
tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
end
tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
if (string.sub(stext[7],1,1)~="/") then
tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
else
tempfinish = string.gsub(tempfinish, "{{{h5 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][5].."|"..currentheaders[inde][5].."]]")
tempsieb = string.sub(tempsieb,2)
tempfinish = string.gsub(tempfinish, "{{{h6 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][6].."|"..currentheaders[inde][6].."]]")
end
if (string.sub(stext[8],1,1)~="/") then
tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
else
end
tempacht = string.sub(tempacht,2)
if(tablelength(currentheaders[inde])~=0) then
if (currentpage=="Religion") then
currentpagedis = "Religion/Äscher"
elseif(currentpage=="Religion2") then
currentpagedis = "Religion/Lacerta"
elseif(currentpage=="Religion2") then
currentpagedis = "Religion/Lichtalben"
elseif(currentpage=="Religion2") then
currentpagedis = "Religion/Dunkelalben"
elseif(currentpage=="Religion2") then
currentpagedis = "Religion/Dweorgo"
elseif(currentpage=="Religion2") then
currentpagedis = "Religion/Andere"
else
currentpagedis = currentpage
end
tempfinish = "|"..string.gsub(string.gsub(tempfinish, "{{{page}}}", currentpagedis),"\n", "",1)
tempfinish = string.gsub(tempfinish, "{{{page link}}}", "[[Yggdrasil:"..currentpage.."|"..currentpagedis.."]]")
finish = finish..tempfinish.."\n|-\n"
end
inde=inde+1
end
end
if (string.sub(stext[9],1,1)~="/") then
i=i+1
tempneun = "[[#"..tempneun.."|"..tempneun.."]]"
else
tempneun = string.sub(tempneun,2)
end
finalthing = "*"..tempeins.." (Bei 1-11)\n*"..tempzwei.." (Bei 12-22)\n*"..tempdrei.." (Bei 23-33)\n*"..tempvier.." (Bei 34-44)\n*"..tempfunf.." (Bei 45-55)\n*"..tempsech.." (Bei 56-66)\n*"..tempsieb.." (Bei 67-77)\n*"..tempacht.." (Bei 78-88)\n*"..tempneun.." (Bei 89-99)\n*Bei 100: Reroll"
else
finalthing = "Die Anzahl an ausgewählten Optionen wird nicht unterstützt. Erkundige dich, dass du alles richtig geschrieben hast. Falls dir das Maximum von 9 Optionen nicht reicht wende dich bitte an [[Benutzerin:Murmelgrumpf]]"
end
end
return finalthing
return finish
--<h2>
end
end
 
function p.optionsnodice( frame )
function p.religion( frame )
stext = split (frame.args[1], "§§§")
ull = ""
lengthi = tablelength(stext)
if (frame.args[1]=="1") then
finalthing = ""
ull = '{{YggRegister|!Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
tempeins = stext[1]
elseif (frame.args[1]=="2") then
tempzwei = stext[2]
ull = '{{YggRegister|Religion:Äscher|!Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
tempdrei = stext[3]
elseif (frame.args[1]=="3") then
tempvier = stext[4]
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|!Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
tempfunf = stext[5]
elseif (frame.args[1]=="4") then
tempsech = stext[6]
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|!Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
tempsieb = stext[7]
elseif (frame.args[1]=="5") then
tempacht = stext[8]
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|!Religion5:Dweorgo|Religion6:Andere}}'
tempneun = stext[9]
elseif (frame.args[1]=="6") then
if (lengthi==2) then
ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|!Religion6:Andere}}'
if (string.sub(stext[1],1,1)~="/") then
end
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
return ull
else
end
tempeins = string.sub(tempeins,2)
 
end
 
if (string.sub(stext[2],1,1)~="/") then
function p.test( frame )
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
dieter, dieter2 = gegapi()
dieter2 = dieter2["Kampfutensilien"]["Nahkampfwaffen"][1]
leresti = "Dinge:\n"
    for zahl,dingsi in  pairs(dieter2) do
        leresti = leresti.."*"..zahl..":"
if (dingsi[1]~=nil) then
for zahfgsal,didfsdhngsi in  pairs(dingsi) do
leresti = leresti.." - "..didfsdhngsi
end
else
else
leresti = leresti.." "..dingsi
tempzwei = string.sub(tempzwei,2)
end
end
leresti = leresti.."\n"
finalthing = "*"..tempeins.."\n*"..tempzwei
end
elseif(lengthi==3) then
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
return leresti
else
tempeins = string.sub(tempeins,2)
 
end
 
function p.options( frame )
stext = split (frame.args[1], "§§§")
lengthi = tablelength(stext)
finalthing = ""
tempeins = stext[1]
tempzwei = stext[2]
tempdrei = stext[3]
tempvier = stext[4]
tempfunf = stext[5]
tempsech = stext[6]
tempsieb = stext[7]
tempacht = stext[8]
tempneun = stext[9]
if (lengthi==2) then
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
else
tempeins = string.sub(tempeins,2)
end
end
if (string.sub(stext[2],1,1)~="/") then
if (string.sub(stext[2],1,1)~="/") then
Zeile 1.418: Zeile 834:
tempzwei = string.sub(tempzwei,2)
tempzwei = string.sub(tempzwei,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-50)\n*"..tempzwei.." (Bei 51-100)"
if (string.sub(stext[3],1,1)~="/") then
elseif(lengthi==3) then
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
else
tempeins = string.sub(tempeins,2)
end
if (string.sub(stext[2],1,1)~="/") then
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
else
tempzwei = string.sub(tempzwei,2)
end
if (string.sub(stext[3],1,1)~="/") then
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
else
else
tempdrei = string.sub(tempdrei,2)
tempdrei = string.sub(tempdrei,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-33)\n*"..tempzwei.." (Bei 34-66)\n*"..tempdrei.." (Bei 67-99)\n*Bei 100: Reroll"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei
elseif(lengthi==4) then
elseif(lengthi==4) then
if (string.sub(stext[1],1,1)~="/") then
if (string.sub(stext[1],1,1)~="/") then
Zeile 1.457: Zeile 861:
tempvier = string.sub(tempvier,2)
tempvier = string.sub(tempvier,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-25)\n*"..tempzwei.." (Bei 26-50)\n*"..tempdrei.." (Bei 51-75)\n*"..tempvier.." (Bei 76-100)"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier
elseif(lengthi==5) then
elseif(lengthi==5) then
if (string.sub(stext[1],1,1)~="/") then
if (string.sub(stext[1],1,1)~="/") then
Zeile 1.484: Zeile 888:
tempfunf = string.sub(tempfunf,2)
tempfunf = string.sub(tempfunf,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-20)\n*"..tempzwei.." (Bei 21-40)\n*"..tempdrei.." (Bei 41-60)\n*"..tempvier.." (Bei 61-80)\n*"..tempfunf.." (Bei 81-100)"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf
elseif(lengthi==6) then
elseif(lengthi==6) then
if (string.sub(stext[1],1,1)~="/") then
if (string.sub(stext[1],1,1)~="/") then
Zeile 1.516: Zeile 920:
tempsech = string.sub(tempsech,2)
tempsech = string.sub(tempsech,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-16)\n*"..tempzwei.." (Bei 17-32)\n*"..tempdrei.." (Bei 33-48)\n*"..tempvier.." (Bei 49-64)\n*"..tempfunf.." (Bei 65-80)\n*"..tempsech.." (Bei 81-96)\n*Bei 97-100: Reroll"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech
elseif(lengthi==7) then
elseif(lengthi==7) then
if (string.sub(stext[1],1,1)~="/") then
if (string.sub(stext[1],1,1)~="/") then
Zeile 1.553: Zeile 957:
tempsieb = string.sub(tempsieb,2)
tempsieb = string.sub(tempsieb,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-14)\n*"..tempzwei.." (Bei 15-28)\n*"..tempdrei.." (Bei 29-42)\n*"..tempvier.." (Bei 43-56)\n*"..tempfunf.." (Bei 57-70)\n*"..tempsech.." (Bei 71-84)\n*"..tempsieb.." (Bei 85-98)\n*Bei 99-100: Reroll"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb
elseif(lengthi==8) then
elseif(lengthi==8) then
if (string.sub(stext[1],1,1)~="/") then
if (string.sub(stext[1],1,1)~="/") then
Zeile 1.595: Zeile 999:
tempacht = string.sub(tempacht,2)
tempacht = string.sub(tempacht,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-12)\n*"..tempzwei.." (Bei 13-24)\n*"..tempdrei.." (Bei 25-36)\n*"..tempvier.." (Bei 37-48)\n*"..tempfunf.." (Bei 49-60)\n*"..tempsech.." (Bei 61-72)\n*"..tempsieb.." (Bei 73-84)\n*"..tempacht.." (Bei 85-96)\n*Bei 97-100: Reroll"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb.."\n*"..tempacht
elseif(lengthi==9) then
elseif(lengthi==9) then
if (string.sub(stext[1],1,1)~="/") then
if (string.sub(stext[1],1,1)~="/") then
Zeile 1.642: Zeile 1.046:
tempneun = string.sub(tempneun,2)
tempneun = string.sub(tempneun,2)
end
end
finalthing = "*"..tempeins.." (Bei 1-11)\n*"..tempzwei.." (Bei 12-22)\n*"..tempdrei.." (Bei 23-33)\n*"..tempvier.." (Bei 34-44)\n*"..tempfunf.." (Bei 45-55)\n*"..tempsech.." (Bei 56-66)\n*"..tempsieb.." (Bei 67-77)\n*"..tempacht.." (Bei 78-88)\n*"..tempneun.." (Bei 89-99)\n*Bei 100: Reroll"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb.."\n*"..tempacht.."\n*"..tempneun
else
else
finalthing = "Die Anzahl an ausgewählten Optionen wird nicht unterstützt. Erkundige dich, dass du alles richtig geschrieben hast. Falls dir das Maximum von 9 Optionen nicht reicht wende dich bitte an [[Benutzerin:Murmelgrumpf]]"
finalthing = "Die Anzahl an ausgewählten Optionen wird nicht unterstützt. Erkundige dich, dass du alles richtig geschrieben hast. Falls dir das Maximum von 9 Optionen nicht reicht wende dich bitte an [[Benutzerin:Murmelgrumpf]]"
Zeile 1.649: Zeile 1.053:
end
end
function p.optionsnodice( frame )
function p.kampf( frame )
stext = split (frame.args[1], "§§§")
    stext = split (frame.args[1], "§§§")
lengthi = tablelength(stext)
curthing = ""
eendrest = ""
for nudmbr,crdrent in ipairs(stext) do
curthing = split (stext[nudmbr], ">")
eendrest = eendrest.."|"..curthing[1].."\n|"..curthing[2].."\n|"..curthing[3].."\n|-\n"
end
return eendrest
end
 
function p.dia( frame )
    stext = split (frame.args[1], "§§§")
lengthi = tablelength(stext)
lengthi = tablelength(stext)
finalthing = ""
curthing = ""
tempeins = stext[1]
eendrest = ""
tempzwei = stext[2]
for nudmbr,crdrent in ipairs(stext) do
tempdrei = stext[3]
curthing = split (stext[nudmbr], ":")
tempvier = stext[4]
eendrest = eendrest.."\n'''"..curthing[1]..":'''\n\n„"..curthing[2].."“\n"
tempfunf = stext[5]
end
tempsech = stext[6]
eendrest = string.gsub(eendrest, "(\n[\n%s]*)", "''%1''")
tempsieb = stext[7]
return eendrest
tempacht = stext[8]
end
tempneun = stext[9]
function p.image( frame )
if (lengthi==2) then
imaage = "[[Datei:"..frame.args[1]
if (string.sub(stext[1],1,1)~="/") then
if (frame.args[2]~=nil) then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
imaage = imaage.."|"..frame.args[2]
else
end
tempeins = string.sub(tempeins,2)
if (frame.args[3]~=nil) then
end
imaage = imaage.."|"..frame.args[3]
if (string.sub(stext[2],1,1)~="/") then
end
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
if (frame.args[4]~=nil) then
else
imaage = imaage.."|"..frame.args[4]
tempzwei = string.sub(tempzwei,2)
end
end
if (frame.args[5]~=nil) then
finalthing = "*"..tempeins.."\n*"..tempzwei
imaage = imaage.."|"..frame.args[5]
elseif(lengthi==3) then
end
if (string.sub(stext[1],1,1)~="/") then
if (frame.args[6]~=nil) then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
imaage = imaage.."|"..frame.args[6]
else
end
tempeins = string.sub(tempeins,2)
imaage = imaage.."]]"
end
return imaage
if (string.sub(stext[2],1,1)~="/") then
end
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
 
else
 
tempzwei = string.sub(tempzwei,2)
function p.vid( frame )
end
stext = split (frame.args[2], "§§§")
if (string.sub(stext[3],1,1)~="/") then
seend = "Hier kannst du das Abenteuer von ["..frame.args[1].."] noch einmal nachschauen! Viel Spaß! :)\n"..'{|class="wikitable"\n|-\n'
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
    for nuudmbr,curdrent in ipairs(stext) do
else
seend = seend.."!Teil "..tostring(nuudmbr).."\n"
tempdrei = string.sub(tempdrei,2)
end
end
seend = seend.."|-\n"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei
    for nuudmbr,curdrent in ipairs(stext) do
elseif(lengthi==4) then
seend = seend.."|"..frame:callParserFunction('#tag:youtube', curdrent).."\nFalls das Video nicht richtig angezeigt wird, kannst du es ["..curdrent.." hier] finden.\n"
if (string.sub(stext[1],1,1)~="/") then
end
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
seend = seend.."|-\n|}\n"
else
return seend
tempeins = string.sub(tempeins,2)
end
end
 
if (string.sub(stext[2],1,1)~="/") then
function p.talents( frame )
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
handeln = split (frame.args[1], "\n")
else
wissen = split (frame.args[2], "\n")
tempzwei = string.sub(tempzwei,2)
soziales = split (frame.args[3], "\n")
end
    lenlist = {}
if (string.sub(stext[3],1,1)~="/") then
lenlist[1] = tablelength(handeln)
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
lenlist[2] = tablelength(wissen)
else
lenlist[3] = tablelength(soziales)
tempdrei = string.sub(tempdrei,2)
highesst = gethighest(lenlist)
intex = 1
selast = ""
while (intex<=highesst) do
selast = selast.."|"
if (handeln[intex]~=nil) then
selast = selast..handeln[intex]
end
end
if (string.sub(stext[4],1,1)~="/") then
selast = selast.."\n|"
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
if (wissen[intex]~=nil) then
else
selast = selast..wissen[intex]
tempvier = string.sub(tempvier,2)
end
end
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier
selast = selast.."\n|"
elseif(lengthi==5) then
if (soziales[intex]~=nil) then
if (string.sub(stext[1],1,1)~="/") then
selast = selast..soziales[intex]
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
else
tempeins = string.sub(tempeins,2)
end
end
if (string.sub(stext[2],1,1)~="/") then
selast = selast.."\n|-\n"
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
intex = intex+1
else
end
tempzwei = string.sub(tempzwei,2)
return selast
end
end
if (string.sub(stext[3],1,1)~="/") then
 
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
function p.description( frame )
else
    stext = split (frame.args[1], "§§§")
tempdrei = string.sub(tempdrei,2)
eerndrest=""
end
if(tabContains(stext,"Szene")) then  
if (string.sub(stext[4],1,1)~="/") then
eerndrest = eerndrest.."'''Szenen:'''\nSzenen geben Handlung und Orte vor, die die Spieler meist passiv miterleben.\n\n"
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
end
else
if(tabContains(stext,"Inter")) then
tempvier = string.sub(tempvier,2)
eerndrest = eerndrest.."'''<span style='color:#BB0011;'>Interaktionen:</span>'''\nInteraktionen sind aktive Szenen, die eine Interaktion mit den Spielern erfordern.\n\n"
end
end
if (string.sub(stext[5],1,1)~="/") then
if(tabContains(stext,"Kursiv")) then
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
eerndrest = eerndrest.."''Kursive Texte:''\nKursive Texte können wörtlich vorgetragen werden und beinhalten meist direkte Rede oder Beschreibungen.\n\n"
else
end
tempfunf = string.sub(tempfunf,2)
if(tabContains(stext,"Probe")) then  
eerndrest = eerndrest.."'''<span style='color:#31B404;'>Proben:</span>'''\nSteht für mögliche Talentwürfe, welche die Spieler ablegen müssen.\n\n"
end
if(tabContains(stext,"Moral")) then
eerndrest = eerndrest.."'''<span style='color:#00b8ff;'>Moral:</span>'''\nBeinhaltet Situationen, an denen die Spieler moralische Fragen beantworten müssen, die sich auf den Verlauf des Abenteuers auswirken können.\n\n"
end
if(tabContains(stext,"Module")) then
eerndrest = eerndrest.."'''<span style='color:#4B088A;'>Module:</span>'''\nBeinhalten Regeln, die zusätzlich zum Grundregelwerk in diesem Abenteuer verwendet werden.\n\n"
end
if(tabContains(stext,"Module2")) then  
eerndrest = eerndrest.."'''<span style='color:#0014ff;'>Module 2:</span>'''\nBeinhaltet ebenfalls Regeln, eines anderen Modul allerdings, die farblich vom ersten Modul abgegrenzt sind.\n\n"
end
if(tabContains(stext,"Box")) then
eerndrest = eerndrest.."<div class='box'>'''Boxen:''' Boxen stehen für Spielleiterhinweise und beinhalten meist Hintergrundinformationen, welche die Spieler nicht haben können.</div>\n\n"
end
return string.sub(eerndrest,0,string.len(eerndrest)-2)
end
 
function p.ygggegerror ( frame )
displayedtext = "\n\n----\n\n"
listeeins, listezwei = gegapi()
headerends = {}
schlagworte = schlagwortliste()
for eines,zweites in pairs(listeeins) do
table.insert(headerends,listeeins[eines]["Name"])
for qfsdf,zweihgfhgtes in pairs(listeeins[eines]["Schlagwörter"]) do
if (tabContains(schlagworte,zweihgfhgtes)==nil) then
displayedtext = displayedtext..'<span style="color:red;"><big><big><big> Falsches Schlagwort gefunden: "'..zweihgfhgtes..'"'..", unter: '''("..listeeins[eines]["Category"].." - "..listeeins[eines]["Subcategory"].." - "..listeeins[eines]["Name"]..")'''!Bitte Ändern!</big></big></big>"..'</span>\n\n----\n\n'
end
end
end
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf
end
elseif(lengthi==6) then
dupeeeetab = duptable(headerends)
if (string.sub(stext[1],1,1)~="/") then
for zup,dupeeee in pairs(dupeeeetab) do
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
if (dupeeee~=nil) then
else
displayedtext = displayedtext..'<span style="color:red;"><big><big><big>Duplikat gefunden: "'..listeeins[dupeeee[1]]["Name"]..'"'..", unter: '''("..listeeins[dupeeee[1]]["Category"]..' - '..listeeins[dupeeee[1]]["Subcategory"]..")''' und unter: '''("..listeeins[dupeeee[2]]["Category"]..' - '..listeeins[dupeeee[2]]["Subcategory"]..")''' !Bitte Ändern!</big></big></big>"..'</span>\n\n----\n\n'
tempeins = string.sub(tempeins,2)
end
end
if (string.sub(stext[2],1,1)~="/") then
end
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
else
tempzwei = string.sub(tempzwei,2)
return displayedtext
end
 
if (string.sub(stext[3],1,1)~="/") then
end
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
 
else
function p.testzwei ( frame )
tempdrei = string.sub(tempdrei,2)
 
return frame.args["test"]
end
 
function p.cur ( frame )
thingtext = frame.args[1]
thingtext = string.gsub(thingtext, "(\n+)", "''%1''")
return thingtext
end
 
function p.probe ( frame )
return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end
 
function p.taglist ( frame )
currenttagstate = frame.args[2]
currentcatstate = frame.args[3]
currentsite = frame.args[1]
allsetcats = categorylist()
allsetags = schlagwortliste()
if (string.len(currenttagstate)~=tablelength(allsetags)) then
currenttagstate = zeros(tablelength(allsetags))
end
if (string.len(currentcatstate)~=doubletablelength(allsetcats)) then
currentcatstate = zeros(doubletablelength(allsetcats))
end
sefinalendtext = '{|class="tagholder"\n|style="width:40%"|\n'
tagstatelength = string.len(currenttagstate)
catstatelength = string.len(currentcatstate)
countcat = 1
for curcatname,cursubcats in pairs(allsetcats) do
cursublength = tablelength(cursubcats)
catstdif = catstatelength-cursublength+1
sefinalendtext = sefinalendtext..'{|class="'..nummulttran(currentcatstate,catstdif,catstatelength)..'"\n|'..nummulttranlinkopen(currentcatstate,catstdif,catstatelength)..'[https://howtobeahero.de/index.php?title='..currentsite..'&tagstate='..currenttagstate..'&catstate='..multchangebinall(currentcatstate, catstdif, catstatelength).." "..curcatname..":]</span>\n"  
nowcatstatelength = catstatelength-cursublength
while (catstatelength>nowcatstatelength) do
cursubcatname = allsetcats[curcatname][catstatelength-nowcatstatelength]
sefinalendtext = sefinalendtext..'{|class="'..numtrancat(currentcatstate,catstatelength)..'"\n|'..numtranlinkopen(currentcatstate,catstatelength)..'[https://howtobeahero.de/index.php?title='..currentsite..'&tagstate='..currenttagstate..'&catstate='..changebin(currentcatstate,catstatelength).." "..cursubcatname.."]</span>\n|}\n"--..numtranlinkopen(
catstatelength = catstatelength-1
end
end
if (string.sub(stext[4],1,1)~="/") then
sefinalendtext = sefinalendtext.."\n|}"
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
if (countcat%2==0) then
sefinalendtext = sefinalendtext.."\n<div>\n\n</div>\n"
else
else
tempvier = string.sub(tempvier,2)
sefinalendtext = sefinalendtext.."\n"
end
end
if (string.sub(stext[5],1,1)~="/") then
countcat=countcat+1
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
else
end
tempfunf = string.sub(tempfunf,2)
sefinalendtext = sefinalendtext..'|style="width:40%"|\n'
    while (tagstatelength>0) do
        sefinalendtext=sefinalendtext..'{|class="'..numtran(currenttagstate,tagstatelength)..'"\n|'..numtranlinkopen(currenttagstate,tagstatelength)..'[https://howtobeahero.de/index.php?title='..currentsite..'&tagstate='..changebin(currenttagstate,tagstatelength)..'&catstate='..currentcatstate.." "..allsetags[tagstatelength]..' •]</span>\n|}\n'
tagstatelength = tagstatelength-1
end
    sefinalendtext=sefinalendtext..'|style="width:20%"|\n'
 
senosort, secatliste= getpartapi(currenttagstate,currentcatstate)
sefinalendtext=sefinalendtext..'|-\n|colspan="5" align="left"|\n'
yggtabaapie = getyggtabapi(currenttagstate,currentcatstate)
descuu = getdes()
for nasf, dgasd in pairs(yggtabaapie) do
sefinalendtext = sefinalendtext.."=="..nasf.."==\n\n<big><big>"..descuu[nasf].."</big></big>\n\n"
for nassfsf, dgadasd in pairs(dgasd) do
sefinalendtext = sefinalendtext.."==="..nassfsf.."===\n\n<big><big>"..descuu[nassfsf].."</big></big>\n\n"
for nasfgjsfsf, dgagdfgdasd in pairs(dgadasd) do
sefinalendtext = sefinalendtext.."===="..nasfgjsfsf.."====\n\n"
frargs = {[1] = dgagdfgdasd["TabID"], [2] = dgagdfgdasd["Img"]}
rfr = frame
rfr.args = frargs
sefinalendtext = sefinalendtext..p.yggtab(rfr).."\n\n"
end
end
end
if (string.sub(stext[6],1,1)~="/") then
end
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
sefinalendtext = sefinalendtext.."|}"
else
--resulttext = yggtabaapie["log"]
tempsech = string.sub(tempsech,2)
end
return sefinalendtext.."\n\n"
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech
end
elseif(lengthi==7) then
 
if (string.sub(stext[1],1,1)~="/") then
function p.kampflist ( frame )
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
seendthingi = '{|style="display: inline-block;"\n|'..string.gsub(frame.args[1], "§§§",'\n|}\n{|style="display: inline-block;"\n|')..'\n|}'
else
return seendthingi
tempeins = string.sub(tempeins,2)
end  
end
if (string.sub(stext[2],1,1)~="/") then
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
else
tempzwei = string.sub(tempzwei,2)
end
if (string.sub(stext[3],1,1)~="/") then
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
else
tempdrei = string.sub(tempdrei,2)
end
if (string.sub(stext[4],1,1)~="/") then
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
else
tempvier = string.sub(tempvier,2)
end
if (string.sub(stext[5],1,1)~="/") then
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
else
tempfunf = string.sub(tempfunf,2)
end
if (string.sub(stext[6],1,1)~="/") then
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
else
tempsech = string.sub(tempsech,2)
end
if (string.sub(stext[7],1,1)~="/") then
tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
else
tempsieb = string.sub(tempsieb,2)
end
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb
elseif(lengthi==8) then
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
else
tempeins = string.sub(tempeins,2)
end
if (string.sub(stext[2],1,1)~="/") then
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
else
tempzwei = string.sub(tempzwei,2)
end
if (string.sub(stext[3],1,1)~="/") then
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
else
tempdrei = string.sub(tempdrei,2)
end
if (string.sub(stext[4],1,1)~="/") then
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
else
tempvier = string.sub(tempvier,2)
end
if (string.sub(stext[5],1,1)~="/") then
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
else
tempfunf = string.sub(tempfunf,2)
end
if (string.sub(stext[6],1,1)~="/") then
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
else
tempsech = string.sub(tempsech,2)
end
if (string.sub(stext[7],1,1)~="/") then
tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
else
tempsieb = string.sub(tempsieb,2)
end
if (string.sub(stext[8],1,1)~="/") then
tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
else
tempacht = string.sub(tempacht,2)
end
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb.."\n*"..tempacht
elseif(lengthi==9) then
if (string.sub(stext[1],1,1)~="/") then
tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
else
tempeins = string.sub(tempeins,2)
end
if (string.sub(stext[2],1,1)~="/") then
tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
else
tempzwei = string.sub(tempzwei,2)
end
if (string.sub(stext[3],1,1)~="/") then
tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
else
tempdrei = string.sub(tempdrei,2)
end
if (string.sub(stext[4],1,1)~="/") then
tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
else
tempvier = string.sub(tempvier,2)
end
if (string.sub(stext[5],1,1)~="/") then
tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
else
tempfunf = string.sub(tempfunf,2)
end
if (string.sub(stext[6],1,1)~="/") then
tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
else
tempsech = string.sub(tempsech,2)
end
if (string.sub(stext[7],1,1)~="/") then
tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
else
tempsieb = string.sub(tempsieb,2)
end
if (string.sub(stext[8],1,1)~="/") then
tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
else
tempacht = string.sub(tempacht,2)
end
if (string.sub(stext[9],1,1)~="/") then
tempneun = "[[#"..tempneun.."|"..tempneun.."]]"
else
tempneun = string.sub(tempneun,2)
end
finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb.."\n*"..tempacht.."\n*"..tempneun
else
finalthing = "Die Anzahl an ausgewählten Optionen wird nicht unterstützt. Erkundige dich, dass du alles richtig geschrieben hast. Falls dir das Maximum von 9 Optionen nicht reicht wende dich bitte an [[Benutzerin:Murmelgrumpf]]"
end
return finalthing
end
function p.kampf( frame )
    stext = split (frame.args[1], "§§§")
lengthi = tablelength(stext)
curthing = ""
eendrest = ""
for nudmbr,crdrent in ipairs(stext) do
curthing = split (stext[nudmbr], ">")
eendrest = eendrest.."|"..curthing[1].."\n|"..curthing[2].."\n|"..curthing[3].."\n|-\n"
end
return eendrest
end
 
function p.dia( frame )
    stext = split (frame.args[1], "§§§")
lengthi = tablelength(stext)
curthing = ""
eendrest = ""
for nudmbr,crdrent in ipairs(stext) do
curthing = split (stext[nudmbr], ":")
eendrest = eendrest.."\n'''"..curthing[1]..":'''\n\n„"..curthing[2].."“\n"
end
eendrest = string.gsub(eendrest, "(\n[\n%s]*)", "''%1''")
return eendrest
end
function p.image( frame )
imaage = "[[Datei:"..frame.args[1]
if (frame.args[2]~=nil) then
imaage = imaage.."|"..frame.args[2]
end
if (frame.args[3]~=nil) then
imaage = imaage.."|"..frame.args[3]
end
if (frame.args[4]~=nil) then
imaage = imaage.."|"..frame.args[4]
end
if (frame.args[5]~=nil) then
imaage = imaage.."|"..frame.args[5]
end
if (frame.args[6]~=nil) then
imaage = imaage.."|"..frame.args[6]
end
imaage = imaage.."]]"
return imaage
end
 
 
function p.vid( frame )
stext = split (frame.args[2], "§§§")
seend = "Hier kannst du das Abenteuer von ["..frame.args[1].."] noch ein mal nachschauen! Viel Spaß! :)\n"..'{|class="wikitable"\n|-\n'
    for nuudmbr,curdrent in ipairs(stext) do
seend = seend.."!Teil "..tostring(nuudmbr).."\n"
end
seend = seend.."|-\n"
    for nuudmbr,curdrent in ipairs(stext) do
seend = seend.."|"..curdrent.."\n"
end
seend = seend.."|-\n|}\n"
return seend
end
 
function p.talents( frame )
handeln = split (frame.args[1], "\n")
wissen = split (frame.args[2], "\n")
soziales = split (frame.args[3], "\n")
    lenlist = {}
lenlist[1] = tablelength(handeln)
lenlist[2] = tablelength(wissen)
lenlist[3] = tablelength(soziales)
highesst = gethighest(lenlist)
intex = 1
selast = ""
while (intex<=highesst) do
selast = selast.."|"
if (handeln[intex]~=nil) then
selast = selast..handeln[intex]
end
selast = selast.."\n|"
if (wissen[intex]~=nil) then
selast = selast..wissen[intex]
end
selast = selast.."\n|"
if (soziales[intex]~=nil) then
selast = selast..soziales[intex]
end
selast = selast.."\n|-\n"
intex = intex+1
end
return selast
end
 
function p.description( frame )
    stext = split (frame.args[1], "§§§")
eerndrest=""
if(tabContains(stext,"Szene")) then
eerndrest = eerndrest.."'''Szenen:'''\nSzenen geben Handlung und Orte vor, die die Spieler meist passiv miterleben.\n\n"
end
if(tabContains(stext,"Inter")) then
eerndrest = eerndrest.."'''<span style='color:#BB0011;'>Interaktionen:</span>'''\nInteraktionen sind aktive Szenen, die eine Interaktion mit den Spielern erfordern.\n\n"
end
if(tabContains(stext,"Kursiv")) then
eerndrest = eerndrest.."''Kursive Texte:''\nKursive Texte können wörtlich vorgetragen werden und beinhalten meist direkte Rede oder Beschreibungen.\n\n"
end
if(tabContains(stext,"Probe")) then
eerndrest = eerndrest.."'''<span style='color:#31B404;'>Proben:</span>'''\nSteht für mögliche Talentwürfe, welche die Spieler ablegen müssen.\n\n"
end
if(tabContains(stext,"Moral")) then
eerndrest = eerndrest.."'''<span style='color:#00b8ff;'>Moral:</span>'''\nBeinhaltet Situationen, an denen die Spieler moralische Fragen beantworten müssen, die sich auf den Verlauf des Abenteuers auswirken können.\n\n"
end
if(tabContains(stext,"Module")) then
eerndrest = eerndrest.."'''<span style='color:#4B088A;'>Module:</span>'''\nBeinhalten Regeln, die zusätzlich zum Grundregelwerk in diesem Abenteuer verwendet werden.\n\n"
end
if(tabContains(stext,"Box")) then
eerndrest = eerndrest.."<div class='box'>'''Boxen:''' Boxen stehen für Spielleiterhinweise und beinhalten meist Hintergrundinformationen, welche die Spieler nicht haben können.</div>\n\n"
end
return string.sub(eerndrest,0,string.len(eerndrest)-2)
end


function p.ygggegerror ( frame )
function p.howhlp ( frame )
displayedtext = "\n\n----\n\n"
if (frame.args[1]=="") then
listeeins, listezwei = gegapi()
return "'''None'''"
headerends = {}
else
schlagworte = schlagwortliste()
--return frame.args[1]
for eines,zweites in pairs(listeeins) do
return "*[[Spielwiese:HowHlp/"..string.sub(frame.args[1],7):gsub("§§§","]]\n*[[Spielwiese:HowHlp/").."]]"
table.insert(headerends,listeeins[eines]["Name"])
for qfsdf,zweihgfhgtes in pairs(listeeins[eines]["Schlagwörter"]) do
if (tabContains(schlagworte,zweihgfhgtes)==nil) then
displayedtext = displayedtext..'<span style="color:red;"><big><big><big> Falsches Schlagwort gefunden: "'..zweihgfhgtes..'"'..", unter: '''("..listeeins[eines]["Category"].." - "..listeeins[eines]["Subcategory"].." - "..listeeins[eines]["Name"]..")'''!Bitte Ändern!</big></big></big>"..'</span>\n\n----\n\n'
end
end
end
dupeeeetab = duptable(headerends)
for zup,dupeeee in pairs(dupeeeetab) do
if (dupeeee~=nil) then
displayedtext = displayedtext..'<span style="color:red;"><big><big><big>Duplikat gefunden: "'..listeeins[dupeeee[1]]["Name"]..'"'..", unter: '''("..listeeins[dupeeee[1]]["Category"]..' - '..listeeins[dupeeee[1]]["Subcategory"]..")''' und unter: '''("..listeeins[dupeeee[2]]["Category"]..' - '..listeeins[dupeeee[2]]["Subcategory"]..")''' !Bitte Ändern!</big></big></big>"..'</span>\n\n----\n\n'
end
end
end
return displayedtext
end
end


function p.testzwei ( frame )
function p.testi ( frame )
 
return getdes()["Kampfutensilien"]
return frame.args["test"]
end
end


function p.cur ( frame )
function p.abenteuersort( frame )
thingtext = frame.args[1]
output = ""
thingtext = string.gsub(thingtext, "(\n+)", "''%1''")
categories = mw.ext.dpl.getFullpagenames({["category"] =  "AbenteuerBack" })
return thingtext
for i,v in ipairs(categories) do
      output = output..v.."<br \>"
    end
return output
end
end


function p.probe ( frame )
return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end


function p.prodbe ( frame )
return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end


function p.prodbe ( frame )
return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end
function p.prohbe ( frame )
return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end
function p.proabe ( frame )
return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end
function p.probhe ( frame )
return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end


function p.cufghr ( frame )
thingtext = frame.args[1]
thingtext = string.gsub(thingtext, "(\n+)", "''%1''")
return thingtext
end
function p.chur ( frame )
thingtext = frame.args[1]
thingtext = string.gsub(thingtext, "(\n+)", "''%1''")
return thingtext
end
function p.cugr ( frame )
thingtext = frame.args[1]
thingtext = string.gsub(thingtext, "(\n+)", "''%1''")
return thingtext
end
return p
return p
--§§§

Aktuelle Version vom 12. Oktober 2021, 21:40 Uhr

Die Dokumentation für dieses Modul kann unter Modul:X/Doku erstellt werden

local p = {} --local p = {} -- p steht für Paket (engl. package)

require( "Module:Xfunc" )
function p.cutblock ( frame )
	text = frame.args[3]-- "Die Schmiede"
	width = tonumber(frame.args[2]) -- 4
	height = tonumber(frame.args[1]) -- 12
	block = ""
	textlen = string.len(text) -- 12
	tempsplit = {}
	
	
	while (height>0 and textlen>=width) do -- 12>0 and 12>=4|11>0 and 11>=4
		tempsplit = split(cut(width, text), "%%%@%%") -- ("Die", "Schmiede")| (
		block = block..tempsplit[1].." " -- "Die "
		text = tempsplit[2] -- "Schmiede"
		height = height-1 -- 11
		if (text==nil) then
			text = ""
		end
		textlen = string.len(text) -- 8
	end
	if (height>0) then
		block = block.." "..text
		text = ""
	end
	
	result = block.."%@%"..text
	result = string.gsub(result, "%§", " ")
	return result


end

function p.cut( frame )
	testtext = ""
	realtext = frame.args[2] --Die Schmiede
	realtext = removespaceinlink(realtext) --Die Schmiede
	srealtext = split(realtext, " ") --Die|Schmiede(list)
	i = 2; --2
	testtext = testtext.."<br \>"..i..": "
	limit = tonumber(frame.args[1]) --4
	text = display(removespaceinlink(realtext)) --Die Schmiede
	stext = split(text, " ") --Die|Schmiede(list)
	
	if(table.getn(stext)==1) then
		if(string.len(stext[1])>limit) then
			return "%@%"..text
		else
			return text.."%@%"
		end
	end
	
	cuttext = stext[1] --Die
	realcuttext = srealtext[1] --Die
	
	nextwo = stext[2] --Schmiede
	realnextwo = srealtext[2] --Schmiede
	
	nextlen = string.len(nextwo)--8
	textlen = string.len(text)--12
	cuttextlen = string.len(cuttext)--3
	
	set = true;
	testtext = testtext.."<br \>"..i..": "..realcuttext
	
	if(limit>=textlen)then --4>=12
		return realtext.."%@%"
	
	elseif(cuttextlen>limit) then--3>4
		return "%@%"..realtext
	
	
	

	else
		while (cuttextlen+nextlen+1<=textlen+2) do --8+3+1<=12+2(12<=14)|14+3+1<=12+2(18<=14)
			
			if(cuttextlen+nextlen+1>limit and set) then --8+3+1>4(12>4)|
				set = false
				cuttext = cuttext.."%@%" --"Die %@%"
				realcuttext = realcuttext.."%@%" --"Die %@%"
				
			else
				cuttext = cuttext.." " --
				realcuttext = realcuttext.." " --
				
			end
			-- testtext = testtext..tostring(i)..": "..realcuttext.."<br />"
			i = i + 1 --3
			
			cuttext = cuttext..nextwo -- "Die%@%Schmiede"
			realcuttext = realcuttext..realnextwo -- "Die%@%Schmiede"
			
			nextwo = stext[i]-- nil
			realnextwo = srealtext[i]-- nil
			
			if (nextwo ~= nil) then
				nextlen = string.len(nextwo) -- 5
			end
			cuttextlen = string.len(cuttext) -- 14
			testtext = testtext.."<br \>"..i..": "..realcuttext
			
		end
		realnextwo = srealtext[i]
		if (realnextwo ~= nil) then
			realcuttext = realcuttext.." "..realnextwo
		end
	end
	testtext = testtext.."<br \>"..(i+1)..": "..realcuttext
	return realcuttext
end

function p.display ( frame )
	text = frame.args[1]
	text = text:gsub("'", "")
	lend = string.len(text)
	i=1
	auf = {}
	zu = {}
	currentauf = string.find(text, "%[%[")
	while (currentauf ~= nil) do
		auf[i] = currentauf;
		if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
			currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
		else
			currentauf = nil
		end
		
		i=i+1
	end
	
	i=1
	currentzu = string.find(text, "%|")
	while (currentzu ~= nil) do
		zu[i] = currentzu;
		if (string.find(string.sub(text,currentzu+2), "%|")~=nil)then
			currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%|")
		else
			currentzu = nil
		end
		i=i+1
	end
	
	offset = 0
	
	if(table.getn(auf) == table.getn(zu))then
		
		 i=1
		 while (table.getn(auf)>=i) do
			anfang = auf[i]
			ende = zu[i]
			tt, uu = string.find(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|")
			text = string.gsub(string.sub(text, 1, anfang-offset+1), "%[%[(.+)%|", "")..string.sub(text,anfang-offset+2,string.len(text))
			-- text = string.sub(text,1,anfang-offset+1)..string.sub(text,ende+1-offset,string.len(text))
			if (tt ~= nil) and (uu ~= nil) then
				offset = offset+uu-tt
			end
			i=i+1
		 end
		 text = string.gsub(text, "%[%[(.+)%|", "")
	end
	
	-- text = text:gsub("%[", "")
	-- text = text:gsub("%|", "")
	text = text:gsub("%]", "")


	return text
end



function p.split ( frame )
	spl = split(frame.args[1],frame.args[2])
	i=1
	t=""
	while(i<=tablelength(spl)) do
		t = t..spl[i].."\n\n"
		i=i+1
	end

    return t	
end

function p.removespaceinlink(frame)
	text = frame.args[1]
	i=1
	auf = {}
	zu = {}
	currentauf = string.find(text, "%[%[")
	while (currentauf ~= nil) do
		auf[i] = currentauf;
		if (string.find(string.sub(text,currentauf+2), "%[%[")~=nil)then
			currentauf = currentauf+1+string.find(string.sub(text,currentauf+2), "%[%[")
		else
			currentauf = nil
		end
		
		i=i+1
	end
	
	i=1
	currentzu = string.find(text, "%]%]")
	while (currentzu ~= nil) do
		zu[i] = currentzu;
		if (string.find(string.sub(text,currentzu+2), "%]%]")~=nil)then
			currentzu = currentzu+1+string.find(string.sub(text,currentzu+2), "%]%]")
		else
			currentzu = nil
		end
		i=i+1
	end
	if(table.getn(auf) == table.getn(zu))then
		i=1
		while (table.getn(auf)>=i) do
			anfang = auf[i]
			ende = zu[i]
			text = string.sub(text,1,anfang-1)..string.gsub(string.sub(text,anfang,ende)," ","§")..string.sub(text,ende+1,string.len(text))

			i=i+1
		end
	end
	
	return text
end






function p.size ( frame )
	text = frame.args[1]
	return textSize(text)
end





function p.size ( frame )
	text = frame.args[1]
	return textSize(text)
end

function p.findg( frame )
	text = frame.args[1]
	d,s,r = string.find(text, "g")
	return d,s,r

end

function p.indexold
( frame )
	text = frame.args[1]
	stext = split (text, "§§§")
	currentpage = ""
	currentheaders= nil
	finish = ""
	i = 1
	inde = 1
	while (i<=tablelength(stext)) do
		currentpage = stext[i]
		currentheaders = getheaderlimit(currentpage, "Yggdrasil")
		currentpage = string.sub(currentpage, 1, string.len(currentpage)-2)
		headlen = tablelength(currentheaders)
		inde = 1
		while (inde<=headlen) do
			finish = finish.."|[[Yggdrasil:"..currentpage.."#"..currentheaders[inde].."|"..currentheaders[inde].."]]\n|[[Yggdrasil:"..currentpage.."|"..currentpage.."]]\n|-\n"
			
			inde=inde+1
		end
		
		i=i+1
	end
	
	--text = frame.args[1]
	--stext = split (text, "\n")
	--ending = ""
	
	--for i = 1,tablelength(stext),1 do 
	--	currentsplit = split (stext[i], "%>")
	--	leng = tablelength(currentsplit)
	--	ending = ending.."|[[Yggdrasil:"..currentsplit[2].."#"..currentsplit[1].."|"..currentsplit[1].."]]\n|[[Yggdrasil:"..currentsplit[2].."|"..currentsplit[2].."]]\n|-\n"
	--end
	
	return finish
end


function p.yggrassen( frame )
	text = frame.args[1]
	stext = split (text, "\n")
	haupttext = split (text, "'''Nebenrassen'''")[1]
	nebentext = split (text, "'''Nebenrassen'''")[2]
	shaupttext = split (haupttext, "\n")
	snebentext = split (nebentext, "\n")
	ending = "!<big>Hauptrassen</big>\n|-\n"
	
	for i = 2,tablelength(stext),1 do 
		if (stext[i]=="'''Nebenrassen'''") then
			ending = ending.."!<big>Nebenrassen</big>\n|-\n"
		else
			ending = ending.."|<big>'''[[#"..stext[i].."|"..stext[i].."]]'''</big>\n|-\n"
		end
	end
	
	
	

	return ending

end



function p.yggtab( frame )
	text = frame.args[1]
	img = frame.args[2]
	stext = split (text, "§§§")
	exist = true
	imgtext = ''
	if (img~=nil and img~='' and img~='{{{img}}}') then
		imgtext='<div id="yggimg">[[Datei:'..img..']]</div>\n'
		
	end
	i=1
	rettext='{|class="wikitable" style="width: 32%; float:right; margin-top: 0; margin-bottom: 0px;"\n|-\n'
	while (stext[i+1]~=nil) do
		rettext=rettext..'!style="width:32%; padding: 10px;" |'..string.sub(stext[i],2,string.len(stext[i]))..'\n'
		i=i+1
		if (stext[i+1]~=nil and stext[i]~='-') then
			rettext=rettext..'|style="width:68%; padding: 10px;" |'
		end
		
		while (stext[i+1]~=nil and stext[i]~='-') do
			if(string.sub(stext[i],1,1)=='/') then
				rettext=rettext..string.sub(stext[i],2)
			elseif(string.find(stext[i],'#')~=nil) then
				found=string.find(stext[i],'#')
				rettext=rettext..'[[Yggdrasil:'..string.sub(stext[i],1,found-1)..'#'..string.sub(stext[i],found+1,string.len(stext[i]))..'|'..string.sub(stext[i],found+1,string.len(stext[i]))..']]'
				
			else
				rettext=rettext..'[[#'..stext[i]..'|'..stext[i]..']]'
			end
			rettext=rettext..'\n\n'
			i=i+1
		end

		rettext=rettext..'|-\n'
		i=i+1
		
	end
	rettext=rettext..'|}'..stext[i-1]..'\n|style="width:20%; padding: 0; vertical-align:top;"|'..imgtext
	return '{|style="width:100%;"\n|style="width:80%; padding: 0; vertical-align:top;"|\n'..rettext..'\n|}'
end

function p.getpage( frame )
	title = mw.title.new( frame.args[1], frame.args[2] )
	content = title:getContent()
	return content
end

function p.getheader( frame )
	title = mw.title.new( frame.args[1], frame.args[2] )
	content = title:getContent()
	--content = string.gsub(content, "([$$$]+)", "DIESER CHARACTER WIRD NICHT UNTERSTÜTZT")
	content = string.gsub(content, "%=%=+", "§§§")
	content = split("hallo"..content, "§§§")
	i = 2
	length = tablelength(content)
	finaltext=""
	while (i<=length) do
		if (string.match(content[i], "[^[(%s)(%d)(%a)]]")==nil) then
			finaltext = finaltext..content[i].."\n\n"
		end
		i = i + 2
	end
	return finaltext
end



function p.index( frame )
	--content = displaytablevert(getindexformat())
	text = frame.args[1]
	stext = split (text, "§§§")
	currentpage = ""
	currentheaders= nil
	finish = ""
	tempfinish =""
	i = 1
	inde = 1
	while (i<=tablelength(stext)) do
		currentpage = stext[i]
		currentheaders = headertotablelimit(currentpage, "Yggdrasil")
		currentpage = string.sub(currentpage, 1, string.len(currentpage)-2)
		headlen = tablelength(currentheaders)
		inde = 1
		while (inde<=headlen) do
			if (tablelength(currentheaders[inde])==1) then
				tempfinish = getindexformat()[1]
				tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
				
				tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
				
			elseif(tablelength(currentheaders[inde])==2) then
				tempfinish = getindexformat()[2]
				tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
				tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
				
				tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
				
			elseif(tablelength(currentheaders[inde])==3) then
				tempfinish = getindexformat()[3]
				tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
				tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
				tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
				
				tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
				
			elseif(tablelength(currentheaders[inde])==4) then
				tempfinish = getindexformat()[4]
				tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
				tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
				tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
				tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
				
				tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
				
			elseif(tablelength(currentheaders[inde])==5) then
				tempfinish = getindexformat()[5]
				tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
				tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
				tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
				tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
				tempfinish = string.gsub(tempfinish, "{{{h5}}}", currentheaders[inde][5])
				
				tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h5 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][5].."|"..currentheaders[inde][5].."]]")
				
			elseif(tablelength(currentheaders[inde])==6) then
				tempfinish = getindexformat()[6]
				tempfinish = string.gsub(tempfinish, "{{{h1}}}", currentheaders[inde][1])
				tempfinish = string.gsub(tempfinish, "{{{h2}}}", currentheaders[inde][2])
				tempfinish = string.gsub(tempfinish, "{{{h3}}}", currentheaders[inde][3])
				tempfinish = string.gsub(tempfinish, "{{{h4}}}", currentheaders[inde][4])
				tempfinish = string.gsub(tempfinish, "{{{h5}}}", currentheaders[inde][5])
				tempfinish = string.gsub(tempfinish, "{{{h6}}}", currentheaders[inde][6])
				
				tempfinish = string.gsub(tempfinish, "{{{h1 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][1].."|"..currentheaders[inde][1].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h2 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][2].."|"..currentheaders[inde][2].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h3 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][3].."|"..currentheaders[inde][3].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h4 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][4].."|"..currentheaders[inde][4].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h5 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][5].."|"..currentheaders[inde][5].."]]")
				tempfinish = string.gsub(tempfinish, "{{{h6 link}}}", "[[Yggdrasil:"..currentpage.."#"..currentheaders[inde][6].."|"..currentheaders[inde][6].."]]")
				
				
				
			end
			if(tablelength(currentheaders[inde])~=0) then
				if (currentpage=="Religion") then
					currentpagedis = "Religion/Äscher"
				elseif(currentpage=="Religion2") then
					currentpagedis = "Religion/Lacerta"
				elseif(currentpage=="Religion2") then
					currentpagedis = "Religion/Lichtalben"
				elseif(currentpage=="Religion2") then
					currentpagedis = "Religion/Dunkelalben"
				elseif(currentpage=="Religion2") then
					currentpagedis = "Religion/Dweorgo"
				elseif(currentpage=="Religion2") then
					currentpagedis = "Religion/Andere"
				else
					currentpagedis = currentpage
				end
			
				tempfinish = "|"..string.gsub(string.gsub(tempfinish, "{{{page}}}", currentpagedis),"\n", "",1)
				tempfinish = string.gsub(tempfinish, "{{{page link}}}", "[[Yggdrasil:"..currentpage.."|"..currentpagedis.."]]")
				finish = finish..tempfinish.."\n|-\n"
			end
			inde=inde+1
		end
		
		i=i+1
	end
	
	return finish

--<h2>

end

function p.religion( frame )
	ull = ""
	if (frame.args[1]=="1") then
		ull = '{{YggRegister|!Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
	elseif (frame.args[1]=="2") then
		ull = '{{YggRegister|Religion:Äscher|!Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
	elseif (frame.args[1]=="3") then
		ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|!Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
	elseif (frame.args[1]=="4") then
		ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|!Religion4:Dubkelalben|Religion5:Dweorgo|Religion6:Andere}}'
	elseif (frame.args[1]=="5") then
		ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|!Religion5:Dweorgo|Religion6:Andere}}'
	elseif (frame.args[1]=="6") then
		ull = '{{YggRegister|Religion:Äscher|Religion2:Lacerta|Religion3:Lichtalben|Religion4:Dubkelalben|Religion5:Dweorgo|!Religion6:Andere}}'
	end
	return ull
end


function p.test( frame )
	dieter, dieter2 = gegapi()
	dieter2 = dieter2["Kampfutensilien"]["Nahkampfwaffen"][1]
	leresti = "Dinge:\n"
    for zahl,dingsi in  pairs(dieter2) do
        leresti = leresti.."*"..zahl..":"
		if (dingsi[1]~=nil) then
			for zahfgsal,didfsdhngsi in  pairs(dingsi) do
				leresti = leresti.." - "..didfsdhngsi
			end
		else
			leresti = leresti.." "..dingsi
		end
		leresti = leresti.."\n"
	end
	
	
	return leresti
	

end

function p.options( frame )
	stext = split (frame.args[1], "§§§")
	lengthi = tablelength(stext)
	finalthing = ""
	tempeins = stext[1]
	tempzwei = stext[2]
	tempdrei = stext[3]
	tempvier = stext[4]
	tempfunf = stext[5]
	tempsech = stext[6]
	tempsieb = stext[7]
	tempacht = stext[8]
	tempneun = stext[9]
	if (lengthi==2) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		finalthing = "*"..tempeins.." (bei 1-50)\n*"..tempzwei.." (bei 51-100)"
	elseif(lengthi==3) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		finalthing = "*"..tempeins.." (Bei 1-33)\n*"..tempzwei.." (Bei 34-66)\n*"..tempdrei.." (Bei 67-99)\n*Bei 100: Reroll"
	elseif(lengthi==4) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		finalthing = "*"..tempeins.." (Bei 1-25)\n*"..tempzwei.." (Bei 26-50)\n*"..tempdrei.." (Bei 51-75)\n*"..tempvier.." (Bei 76-100)"
	elseif(lengthi==5) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		finalthing = "*"..tempeins.." (Bei 1-20)\n*"..tempzwei.." (Bei 21-40)\n*"..tempdrei.." (Bei 41-60)\n*"..tempvier.." (Bei 61-80)\n*"..tempfunf.." (Bei 81-100)"
	elseif(lengthi==6) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		finalthing = "*"..tempeins.." (Bei 1-16)\n*"..tempzwei.." (Bei 17-32)\n*"..tempdrei.." (Bei 33-48)\n*"..tempvier.." (Bei 49-64)\n*"..tempfunf.." (Bei 65-80)\n*"..tempsech.." (Bei 81-96)\n*Bei 97-100: Reroll"
	elseif(lengthi==7) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		if (string.sub(stext[7],1,1)~="/") then
			tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
		else
			tempsieb = string.sub(tempsieb,2)
		end
		finalthing = "*"..tempeins.." (Bei 1-14)\n*"..tempzwei.." (Bei 15-28)\n*"..tempdrei.." (Bei 29-42)\n*"..tempvier.." (Bei 43-56)\n*"..tempfunf.." (Bei 57-70)\n*"..tempsech.." (Bei 71-84)\n*"..tempsieb.." (Bei 85-98)\n*Bei 99-100: Reroll"
	elseif(lengthi==8) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		if (string.sub(stext[7],1,1)~="/") then
			tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
		else
			tempsieb = string.sub(tempsieb,2)
		end
		if (string.sub(stext[8],1,1)~="/") then
			tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
		else
			tempacht = string.sub(tempacht,2)
		end
		finalthing = "*"..tempeins.." (Bei 1-12)\n*"..tempzwei.." (Bei 13-24)\n*"..tempdrei.." (Bei 25-36)\n*"..tempvier.." (Bei 37-48)\n*"..tempfunf.." (Bei 49-60)\n*"..tempsech.." (Bei 61-72)\n*"..tempsieb.." (Bei 73-84)\n*"..tempacht.." (Bei 85-96)\n*Bei 97-100: Reroll"
	elseif(lengthi==9) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		if (string.sub(stext[7],1,1)~="/") then
			tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
		else
			tempsieb = string.sub(tempsieb,2)
		end
		if (string.sub(stext[8],1,1)~="/") then
			tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
		else
			tempacht = string.sub(tempacht,2)
		end
		if (string.sub(stext[9],1,1)~="/") then
			tempneun = "[[#"..tempneun.."|"..tempneun.."]]"
		else
			tempneun = string.sub(tempneun,2)
		end
		finalthing = "*"..tempeins.." (Bei 1-11)\n*"..tempzwei.." (Bei 12-22)\n*"..tempdrei.." (Bei 23-33)\n*"..tempvier.." (Bei 34-44)\n*"..tempfunf.." (Bei 45-55)\n*"..tempsech.." (Bei 56-66)\n*"..tempsieb.." (Bei 67-77)\n*"..tempacht.." (Bei 78-88)\n*"..tempneun.." (Bei 89-99)\n*Bei 100: Reroll"
	else
		finalthing = "Die Anzahl an ausgewählten Optionen wird nicht unterstützt. Erkundige dich, dass du alles richtig geschrieben hast. Falls dir das Maximum von 9 Optionen nicht reicht wende dich bitte an [[Benutzerin:Murmelgrumpf]]"
	end
	return finalthing
	
end
function p.optionsnodice( frame )
	stext = split (frame.args[1], "§§§")
	lengthi = tablelength(stext)
	finalthing = ""
	tempeins = stext[1]
	tempzwei = stext[2]
	tempdrei = stext[3]
	tempvier = stext[4]
	tempfunf = stext[5]
	tempsech = stext[6]
	tempsieb = stext[7]
	tempacht = stext[8]
	tempneun = stext[9]
	if (lengthi==2) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei
	elseif(lengthi==3) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei
	elseif(lengthi==4) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier
	elseif(lengthi==5) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf
	elseif(lengthi==6) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech
	elseif(lengthi==7) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		if (string.sub(stext[7],1,1)~="/") then
			tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
		else
			tempsieb = string.sub(tempsieb,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb
	elseif(lengthi==8) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		if (string.sub(stext[7],1,1)~="/") then
			tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
		else
			tempsieb = string.sub(tempsieb,2)
		end
		if (string.sub(stext[8],1,1)~="/") then
			tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
		else
			tempacht = string.sub(tempacht,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb.."\n*"..tempacht
	elseif(lengthi==9) then
		if (string.sub(stext[1],1,1)~="/") then
			tempeins = "[[#"..tempeins.."|"..tempeins.."]]"
		else
			tempeins = string.sub(tempeins,2)
		end
		if (string.sub(stext[2],1,1)~="/") then
			tempzwei = "[[#"..tempzwei.."|"..tempzwei.."]]"
		else
			tempzwei = string.sub(tempzwei,2)
		end
		if (string.sub(stext[3],1,1)~="/") then
			tempdrei = "[[#"..tempdrei.."|"..tempdrei.."]]"
		else
			tempdrei = string.sub(tempdrei,2)
		end
		if (string.sub(stext[4],1,1)~="/") then
			tempvier = "[[#"..tempvier.."|"..tempvier.."]]"
		else
			tempvier = string.sub(tempvier,2)
		end
		if (string.sub(stext[5],1,1)~="/") then
			tempfunf = "[[#"..tempfunf.."|"..tempfunf.."]]"
		else
			tempfunf = string.sub(tempfunf,2)
		end
		if (string.sub(stext[6],1,1)~="/") then
			tempsech = "[[#"..tempsech.."|"..tempsech.."]]"
		else
			tempsech = string.sub(tempsech,2)
		end
		if (string.sub(stext[7],1,1)~="/") then
			tempsieb = "[[#"..tempsieb.."|"..tempsieb.."]]"
		else
			tempsieb = string.sub(tempsieb,2)
		end
		if (string.sub(stext[8],1,1)~="/") then
			tempacht = "[[#"..tempacht.."|"..tempacht.."]]"
		else
			tempacht = string.sub(tempacht,2)
		end
		if (string.sub(stext[9],1,1)~="/") then
			tempneun = "[[#"..tempneun.."|"..tempneun.."]]"
		else
			tempneun = string.sub(tempneun,2)
		end
		finalthing = "*"..tempeins.."\n*"..tempzwei.."\n*"..tempdrei.."\n*"..tempvier.."\n*"..tempfunf.."\n*"..tempsech.."\n*"..tempsieb.."\n*"..tempacht.."\n*"..tempneun
	else
		finalthing = "Die Anzahl an ausgewählten Optionen wird nicht unterstützt. Erkundige dich, dass du alles richtig geschrieben hast. Falls dir das Maximum von 9 Optionen nicht reicht wende dich bitte an [[Benutzerin:Murmelgrumpf]]"
	end
	return finalthing
	
end
function p.kampf( frame )
    stext = split (frame.args[1], "§§§")
	lengthi = tablelength(stext)
	curthing = ""
	eendrest = ""
	for nudmbr,crdrent in ipairs(stext) do
		curthing = split (stext[nudmbr], ">")
		eendrest = eendrest.."|"..curthing[1].."\n|"..curthing[2].."\n|"..curthing[3].."\n|-\n"
	end
	return eendrest
end

function p.dia( frame )
    stext = split (frame.args[1], "§§§")
	lengthi = tablelength(stext)
	curthing = ""
	eendrest = ""
	for nudmbr,crdrent in ipairs(stext) do
		curthing = split (stext[nudmbr], ":")
		eendrest = eendrest.."\n'''"..curthing[1]..":'''\n\n„"..curthing[2].."“\n"
	end
	eendrest = string.gsub(eendrest, "(\n[\n%s]*)", "''%1''")
	return eendrest
end
function p.image( frame )
	imaage = "[[Datei:"..frame.args[1]
	if (frame.args[2]~=nil) then
		imaage = imaage.."|"..frame.args[2]
	end
	if (frame.args[3]~=nil) then
		imaage = imaage.."|"..frame.args[3]
	end
	if (frame.args[4]~=nil) then
		imaage = imaage.."|"..frame.args[4]
	end
	if (frame.args[5]~=nil) then
		imaage = imaage.."|"..frame.args[5]
	end
	if (frame.args[6]~=nil) then
		imaage = imaage.."|"..frame.args[6]
	end
	imaage = imaage.."]]"
	return imaage
end


function p.vid( frame )
	stext = split (frame.args[2], "§§§")
	seend = "Hier kannst du das Abenteuer von ["..frame.args[1].."] noch einmal nachschauen! Viel Spaß! :)\n"..'{|class="wikitable"\n|-\n'
    for nuudmbr,curdrent in ipairs(stext) do
		seend = seend.."!Teil "..tostring(nuudmbr).."\n"
	end
	seend = seend.."|-\n"
    for nuudmbr,curdrent in ipairs(stext) do
		seend = seend.."|"..frame:callParserFunction('#tag:youtube', curdrent).."\nFalls das Video nicht richtig angezeigt wird, kannst du es ["..curdrent.." hier] finden.\n"
	end
	seend = seend.."|-\n|}\n"
	return seend
end

function p.talents( frame )
	handeln = split (frame.args[1], "\n")
	wissen = split (frame.args[2], "\n")
	soziales = split (frame.args[3], "\n")
    lenlist = {}
	lenlist[1] = tablelength(handeln)
	lenlist[2] = tablelength(wissen)
	lenlist[3] = tablelength(soziales)
	highesst = gethighest(lenlist)
	intex = 1
	selast = ""
	while (intex<=highesst) do
		selast = selast.."|"
		if (handeln[intex]~=nil) then
			selast = selast..handeln[intex]
		end
		selast = selast.."\n|"
		if (wissen[intex]~=nil) then
			selast = selast..wissen[intex]
		end
		selast = selast.."\n|"
		if (soziales[intex]~=nil) then
			selast = selast..soziales[intex]
		end
		selast = selast.."\n|-\n"
		intex = intex+1
	end
	return selast
end

function p.description( frame )
    stext = split (frame.args[1], "§§§")
	eerndrest=""
	if(tabContains(stext,"Szene")) then 
		eerndrest = eerndrest.."'''Szenen:'''\nSzenen geben Handlung und Orte vor, die die Spieler meist passiv miterleben.\n\n"
	end
	if(tabContains(stext,"Inter")) then 
		eerndrest = eerndrest.."'''<span style='color:#BB0011;'>Interaktionen:</span>'''\nInteraktionen sind aktive Szenen, die eine Interaktion mit den Spielern erfordern.\n\n"
	end
	if(tabContains(stext,"Kursiv")) then 
		eerndrest = eerndrest.."''Kursive Texte:''\nKursive Texte können wörtlich vorgetragen werden und beinhalten meist direkte Rede oder Beschreibungen.\n\n"
	end
	if(tabContains(stext,"Probe")) then 
		eerndrest = eerndrest.."'''<span style='color:#31B404;'>Proben:</span>'''\nSteht für mögliche Talentwürfe, welche die Spieler ablegen müssen.\n\n"
	end
	if(tabContains(stext,"Moral")) then 
		eerndrest = eerndrest.."'''<span style='color:#00b8ff;'>Moral:</span>'''\nBeinhaltet Situationen, an denen die Spieler moralische Fragen beantworten müssen, die sich auf den Verlauf des Abenteuers auswirken können.\n\n"
	end
	if(tabContains(stext,"Module")) then 
		eerndrest = eerndrest.."'''<span style='color:#4B088A;'>Module:</span>'''\nBeinhalten Regeln, die zusätzlich zum Grundregelwerk in diesem Abenteuer verwendet werden.\n\n"
	end
	if(tabContains(stext,"Module2")) then 
		eerndrest = eerndrest.."'''<span style='color:#0014ff;'>Module 2:</span>'''\nBeinhaltet ebenfalls Regeln, eines anderen Modul allerdings, die farblich vom ersten Modul abgegrenzt sind.\n\n"
	end
	if(tabContains(stext,"Box")) then 
		eerndrest = eerndrest.."<div class='box'>'''Boxen:''' Boxen stehen für Spielleiterhinweise und beinhalten meist Hintergrundinformationen, welche die Spieler nicht haben können.</div>\n\n"
	end
	return string.sub(eerndrest,0,string.len(eerndrest)-2)
end

function p.ygggegerror ( frame )
	displayedtext = "\n\n----\n\n"
	listeeins, listezwei = gegapi()
	headerends = {}
	schlagworte = schlagwortliste()
	for eines,zweites in pairs(listeeins) do
		table.insert(headerends,listeeins[eines]["Name"])
		for qfsdf,zweihgfhgtes in pairs(listeeins[eines]["Schlagwörter"]) do
			if (tabContains(schlagworte,zweihgfhgtes)==nil) then
				displayedtext = displayedtext..'<span style="color:red;"><big><big><big> Falsches Schlagwort gefunden: "'..zweihgfhgtes..'"'..", unter: '''("..listeeins[eines]["Category"].." - "..listeeins[eines]["Subcategory"].." - "..listeeins[eines]["Name"]..")'''!Bitte Ändern!</big></big></big>"..'</span>\n\n----\n\n'
			end
		end
	end
	dupeeeetab = duptable(headerends)
	for zup,dupeeee in pairs(dupeeeetab) do
		if (dupeeee~=nil) then
			displayedtext = displayedtext..'<span style="color:red;"><big><big><big>Duplikat gefunden: "'..listeeins[dupeeee[1]]["Name"]..'"'..", unter: '''("..listeeins[dupeeee[1]]["Category"]..' - '..listeeins[dupeeee[1]]["Subcategory"]..")''' und unter: '''("..listeeins[dupeeee[2]]["Category"]..' - '..listeeins[dupeeee[2]]["Subcategory"]..")''' !Bitte Ändern!</big></big></big>"..'</span>\n\n----\n\n'
		end
	end
	
	
	return displayedtext

end

function p.testzwei ( frame )

	
	return frame.args["test"]
end

function p.cur ( frame )
	thingtext = frame.args[1]
	thingtext = string.gsub(thingtext, "(\n+)", "''%1''")
	return thingtext
end

function p.probe ( frame )
	return "'''<span style='color:#31B404;'>"..string.gsub(frame.args[1], "(\n+)" , "</span>'''%1'''<span style='color:#31B404;'>").."</span>'''"
end

function p.taglist ( frame )
	currenttagstate = frame.args[2]
	currentcatstate = frame.args[3]
	currentsite = frame.args[1]
	allsetcats = categorylist()
	allsetags = schlagwortliste()
	if (string.len(currenttagstate)~=tablelength(allsetags)) then
		currenttagstate = zeros(tablelength(allsetags))
	end
	if (string.len(currentcatstate)~=doubletablelength(allsetcats)) then
		currentcatstate = zeros(doubletablelength(allsetcats))
	end
	
	
	sefinalendtext = '{|class="tagholder"\n|style="width:40%"|\n'
	tagstatelength = string.len(currenttagstate)
	catstatelength = string.len(currentcatstate)
	countcat = 1
	
	for curcatname,cursubcats in pairs(allsetcats) do
		cursublength = tablelength(cursubcats)
		catstdif = catstatelength-cursublength+1
		
		sefinalendtext = sefinalendtext..'{|class="'..nummulttran(currentcatstate,catstdif,catstatelength)..'"\n|'..nummulttranlinkopen(currentcatstate,catstdif,catstatelength)..'[https://howtobeahero.de/index.php?title='..currentsite..'&tagstate='..currenttagstate..'&catstate='..multchangebinall(currentcatstate, catstdif, catstatelength).." "..curcatname..":]</span>\n" 
		nowcatstatelength = catstatelength-cursublength
		while (catstatelength>nowcatstatelength) do
			cursubcatname = allsetcats[curcatname][catstatelength-nowcatstatelength]
			sefinalendtext = sefinalendtext..'{|class="'..numtrancat(currentcatstate,catstatelength)..'"\n|'..numtranlinkopen(currentcatstate,catstatelength)..'[https://howtobeahero.de/index.php?title='..currentsite..'&tagstate='..currenttagstate..'&catstate='..changebin(currentcatstate,catstatelength).." "..cursubcatname.."]</span>\n|}\n"--..numtranlinkopen(
			catstatelength = catstatelength-1
		end
		sefinalendtext = sefinalendtext.."\n|}"
		if (countcat%2==0) then
			sefinalendtext = sefinalendtext.."\n<div>\n\n</div>\n"
		
		else
			sefinalendtext = sefinalendtext.."\n"
		end
		countcat=countcat+1
			
	end
	
	sefinalendtext = sefinalendtext..'|style="width:40%"|\n'
    while (tagstatelength>0) do
        sefinalendtext=sefinalendtext..'{|class="'..numtran(currenttagstate,tagstatelength)..'"\n|'..numtranlinkopen(currenttagstate,tagstatelength)..'[https://howtobeahero.de/index.php?title='..currentsite..'&tagstate='..changebin(currenttagstate,tagstatelength)..'&catstate='..currentcatstate.." "..allsetags[tagstatelength]..' •]</span>\n|}\n'
		tagstatelength = tagstatelength-1
	end
		
    sefinalendtext=sefinalendtext..'|style="width:20%"|\n'

	senosort, secatliste= getpartapi(currenttagstate,currentcatstate)
	
	sefinalendtext=sefinalendtext..'|-\n|colspan="5" align="left"|\n'
	
	
	
	
	
	yggtabaapie = getyggtabapi(currenttagstate,currentcatstate)
	descuu = getdes()
	for nasf, dgasd in pairs(yggtabaapie) do
		sefinalendtext = sefinalendtext.."=="..nasf.."==\n\n<big><big>"..descuu[nasf].."</big></big>\n\n"
		for nassfsf, dgadasd in pairs(dgasd) do
			sefinalendtext = sefinalendtext.."==="..nassfsf.."===\n\n<big><big>"..descuu[nassfsf].."</big></big>\n\n"
			for nasfgjsfsf, dgagdfgdasd in pairs(dgadasd) do
				sefinalendtext = sefinalendtext.."===="..nasfgjsfsf.."====\n\n"
				frargs = {[1] = dgagdfgdasd["TabID"], [2] = dgagdfgdasd["Img"]}
				rfr = frame
				rfr.args = frargs
				sefinalendtext = sefinalendtext..p.yggtab(rfr).."\n\n"
			end
		end
	end
	sefinalendtext = sefinalendtext.."|}"
	--resulttext = yggtabaapie["log"]
	
	return sefinalendtext.."\n\n"
end

function p.kampflist ( frame )
	seendthingi = '{|style="display: inline-block;"\n|'..string.gsub(frame.args[1], "§§§",'\n|}\n{|style="display: inline-block;"\n|')..'\n|}'
	return seendthingi
end 

function p.howhlp ( frame )
	if (frame.args[1]=="") then
		return "'''None'''"
	else
		--return frame.args[1]
		return "*[[Spielwiese:HowHlp/"..string.sub(frame.args[1],7):gsub("§§§","]]\n*[[Spielwiese:HowHlp/").."]]"
	end
end

function p.testi ( frame )
	return getdes()["Kampfutensilien"]
	
end

function p.abenteuersort( frame )
	output = ""
	categories = mw.ext.dpl.getFullpagenames({["category"] =  "AbenteuerBack" })
	for i,v in ipairs(categories) do
      output = output..v.."<br \>"
    end
	return output
end




return p
--§§§