Modul:MHI: Unterschied zwischen den Versionen

Aus SchnuppTrupp
Wechseln zu: Navigation, Suche
Zeile 1: Zeile 1:
 +
--[[
 +
Variablen:
 +
MHI:
 +
Limit: limit, l
 +
Bild: bild, b
 +
Nalch: nalch, na
 +
Gewicht: gewicht, g
 +
MHITab:
 +
Bild: bild, b
 +
Namen: name, n
 +
MHPreis: mhpreis, mh
 +
Hohe Alchemie: hohe, ha
 +
Niedrige Alchemie: nalch, na
 +
Ladenpreis: laden, la
 +
Mitglied: mitglied, m
 +
]]
 
local v = {}
 
local v = {}
  
Zeile 20: Zeile 36:
 
     return "[[Datei:"..bild[id].."|"..zusatz.."]]"
 
     return "[[Datei:"..bild[id].."|"..zusatz.."]]"
 
     end
 
     end
     elseif variable == 'nalch' or variable == 'n' then -- Niedriger Alchemie Wert
+
     elseif variable == 'nalch' or variable == 'na' then -- Niedriger Alchemie Wert
 
     return mh:nalch(frame, id)
 
     return mh:nalch(frame, id)
 
elseif variable == 'gewicht' or variable == 'g' then -- Gewicht
 
elseif variable == 'gewicht' or variable == 'g' then -- Gewicht
Zeile 60: Zeile 76:
 
local ItemPreisaufzeichnung = frame:callParserFunction{ name= '#mh', args= { id,'s' } }
 
local ItemPreisaufzeichnung = frame:callParserFunction{ name= '#mh', args= { id,'s' } }
 
return '|<span title="Preis Aktuell: '..ItemPreisPl..' Gm&#013;Maximal Preis: '..ItemPreisMax..' Gm&#013;Mittel Preis: '..ItemPreisMittel..' Gm&#013;Minimal Preis: '..ItemPreisMin..' Gm&#013;Preisaufzeichnung seit: '..ItemPreisaufzeichnung..'">'..ItemPreisPp..'</span>'
 
return '|<span title="Preis Aktuell: '..ItemPreisPl..' Gm&#013;Maximal Preis: '..ItemPreisMax..' Gm&#013;Mittel Preis: '..ItemPreisMittel..' Gm&#013;Minimal Preis: '..ItemPreisMin..' Gm&#013;Preisaufzeichnung seit: '..ItemPreisaufzeichnung..'">'..ItemPreisPp..'</span>'
elseif variable == 'hohe' or variable == 'h' then -- Spalte Hohe Alchemie
+
elseif variable == 'hohe' or variable == 'ha' then -- Spalte Hohe Alchemie
 
local ItemHoheAlch = frame:callParserFunction{ name= '#mh', args= { id, 'h' } }
 
local ItemHoheAlch = frame:callParserFunction{ name= '#mh', args= { id, 'h' } }
 
local ItemHoheAlchPp = frame:callParserFunction{ name= '#pp', args= { ItemHoheAlch } }
 
local ItemHoheAlchPp = frame:callParserFunction{ name= '#pp', args= { ItemHoheAlch } }
 
local ItemHoheAlchPl = frame:callParserFunction{ name= '#pl', args= { ItemHoheAlch } }
 
local ItemHoheAlchPl = frame:callParserFunction{ name= '#pl', args= { ItemHoheAlch } }
 
return '|'..frame:callParserFunction{ name= '#ifeq', args= { ItemHoheAlch,'0',' ','<span title="'..ItemHoheAlchPl..'">'..ItemHoheAlchPp..'</span>' } }
 
return '|'..frame:callParserFunction{ name= '#ifeq', args= { ItemHoheAlch,'0',' ','<span title="'..ItemHoheAlchPl..'">'..ItemHoheAlchPp..'</span>' } }
elseif variable == 'laden' or variable == 'l' then -- Spalte Ladenpreis
+
elseif variable == 'laden' or variable == 'la' then -- Spalte Ladenpreis
 
local ItemLadenpreis = frame:callParserFunction{ name= '#mh', args= { id, 'l' } }
 
local ItemLadenpreis = frame:callParserFunction{ name= '#mh', args= { id, 'l' } }
 
local ItemLadenpreisPp = frame:callParserFunction{ name= '#pp', args= { ItemLadenpreis } }
 
local ItemLadenpreisPp = frame:callParserFunction{ name= '#pp', args= { ItemLadenpreis } }

Version vom 22. März 2019, 20:04 Uhr

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

--[[
	Variablen:
	MHI:
		Limit: limit, l
		Bild: bild, b
		Nalch: nalch, na
		Gewicht: gewicht, g
	MHITab:
		Bild: bild, b
		Namen: name, n
		MHPreis: mhpreis, mh
		Hohe Alchemie: hohe, ha
		Niedrige Alchemie: nalch, na
		Ladenpreis: laden, la
		Mitglied: mitglied, m
]]
local v = {}

function v.daten(frame)
	local fargs = frame.args 
    --local id = frame:getParent().args[1] -- Hohlt sich die Eingegebene Variable in userem Fall die ID und Speichert sie in die Variable ID
    local daten = fargs.daten or '' -- 
    local variable = mw.ustring.lower( daten ) -- Alle Zeichen auf Kleinbuchstaben ändern
    local id = fargs.id or ''
    local name = frame:callParserFunction{ name= '#mh', args= { id,'n' } }
    if variable == 'limit'  or variable == 'l' then -- Handelslimit
    	local Handelslimit = mw.loadData('Module:MHI/Limit')
    	return Handelslimit[id] or 'Wert nicht vorhanden'
    elseif variable == 'bild' or variable == 'b' then -- Bilder
        local zusatz = fargs.zusatz or ''
        if string.len(zusatz)<=1 then zusatz = name end -- Wenn der zusatz nicht gesetzt wurde wird der Name des Items verwendet
    	local bild = mw.loadData('Module:MHI/Bild')
    	if bild[id] == nil then
    		return "[[Datei:"..name..".png|"..zusatz.."]]"
    	else
    		return "[[Datei:"..bild[id].."|"..zusatz.."]]"
    	end
    elseif variable == 'nalch' or variable == 'na' then -- Niedriger Alchemie Wert
    	return mh:nalch(frame, id)
	elseif variable == 'gewicht' or variable == 'g' then -- Gewicht
		local Gewicht = mw.loadData('Module:MHI/Gewicht')
    	return Gewicht[id] or 'Gewicht nicht vorhanden'
    else
    	return 'keinen Parameter eingegeben'
    end
    return id 
	
end

function v.tabelle(frame)
	local fargs = frame.args
	local daten = fargs.daten or ''
    local variable = mw.ustring.lower( daten ) -- Alle Zeichen auf Kleinbuchstaben ändern
    local id = fargs.id or ''
    
    if variable == 'bild'  or variable == 'b' then -- Spalte Bild
    	local bild = mw.loadData('Module:MHI/Bild')
    	local name =  frame:callParserFunction{ name= '#mh', args= { id,'n' } }
    	local beschreibung = frame:callParserFunction{ name= '#mh', args= { id,'b' } }
    	if bild[id] == nil then
    		return "|[[Datei:"..name..".png|"..beschreibung.."]]"
    	else
    		return "|[[Datei:"..bild[id].."|"..beschreibung.."]]"
    	end
    elseif variable == 'name' or variable == 'n' then -- Namen Spalte
		local itemname = frame:callParserFunction{ name= '#mh', args= { id,'n' } }
		local temp = frame:callParserFunction{ name= '#ifexist', args= { itemname,'[['..itemname..']]',itemname } }
		return '|align="left" width="250px"|'..temp
	elseif variable == 'mhpreis' or variable == 'mh' then -- Spalte MH Preis
		local ItemPreis = frame:callParserFunction{ name= '#mh', args= { id } }
		local ItemPreisPl = frame:callParserFunction{ name= '#pl', args= { ItemPreis } }
		local ItemPreisPp = frame:callParserFunction{ name= '#pp', args= { ItemPreis } }
		local ItemPreisMax = frame:callParserFunction{ name= '#mh', args= { id,'max'}}
		local ItemPreisMittel = frame:callParserFunction{ name= '#mh', args= { id,'mittel'}}
		local ItemPreisMin = frame:callParserFunction{ name= '#mh', args= { id,'min'}}
		local ItemPreisaufzeichnung = frame:callParserFunction{ name= '#mh', args= { id,'s' } }
		return '|<span title="Preis Aktuell: '..ItemPreisPl..' Gm&#013;Maximal Preis: '..ItemPreisMax..' Gm&#013;Mittel Preis: '..ItemPreisMittel..' Gm&#013;Minimal Preis: '..ItemPreisMin..' Gm&#013;Preisaufzeichnung seit: '..ItemPreisaufzeichnung..'">'..ItemPreisPp..'</span>'
	elseif variable == 'hohe' or variable == 'ha' then -- Spalte Hohe Alchemie
		local ItemHoheAlch = frame:callParserFunction{ name= '#mh', args= { id, 'h' } }
		local ItemHoheAlchPp = frame:callParserFunction{ name= '#pp', args= { ItemHoheAlch } }
		local ItemHoheAlchPl = frame:callParserFunction{ name= '#pl', args= { ItemHoheAlch } }
		return '|'..frame:callParserFunction{ name= '#ifeq', args= { ItemHoheAlch,'0',' ','<span title="'..ItemHoheAlchPl..'">'..ItemHoheAlchPp..'</span>' } }
	elseif variable == 'laden' or variable == 'la' then -- Spalte Ladenpreis
		local ItemLadenpreis = frame:callParserFunction{ name= '#mh', args= { id, 'l' } }
		local ItemLadenpreisPp = frame:callParserFunction{ name= '#pp', args= { ItemLadenpreis } }
		local ItemLadenpreisPl = frame:callParserFunction{ name= '#pl', args= { ItemLadenpreis } }
		return '|'..frame:callParserFunction{ name= '#ifeq', args= { ItemLadenpreis,'0',' ','<span title="'..ItemLadenpreisPl..'">'..ItemLadenpreisPp..'</span>' } }
	elseif variable == 'nalch' or variable == 'na' then -- Spalte Niedriger Alchemie Preis
		local ItemNiedrigeAlch = mh:nalch(frame, id)
		local ItemNiedrigeAlchPp = frame:callParserFunction{ name= '#pp', args= { ItemNiedrigeAlch } }
		local ItemNiedrigeAlchPl = frame:callParserFunction{ name= '#pl', args= { ItemNiedrigeAlch } }
		return '|'..'<span title="'..ItemNiedrigeAlchPl..'">'..ItemNiedrigeAlchPp..'</span>'
	elseif variable == 'mitglied' or variable == 'm' then -- Spalte Mitglied
		local ItemMitglied = frame:callParserFunction{ name= '#mh', args= { id, 'm' } }
		return '|'..frame:callParserFunction{ name= '#ifeq', args= { ItemMitglied,'Ja','[[Datei:Mitglied.png|Mitgliedsgegenstand]]','[[Datei:Nichtmitglied.png|Nicht Mitgliedsgegenstand]]' } }
	else
    	return 'keinen Parameter eingegeben'
    end
    return '' 
end

mh = {balance = 0}
function mh:nalch (frame, id) -- Gibt den Niedrigen Alchemie Wert in der richtigen Form zurück.
	local nalch = mw.loadData('Module:MHI/Nalch')
    if nalch[id] == nil then -- Wenn der Wert sonst nirgenst näher spezifiziert wurde wird er über die Value berechnet
    	local value = mw.loadData('Module:MHI/Value')
    	if value[id] ~= nil then -- Nur in If bedinung gehen wenn value von id existiert
	    	local NalchCalc = value[id]*0.4 -- Value *0,4 Ist der Niedrige Alchemie Wert
	    	NalchCalc = math.floor(NalchCalc) -- Niedriger Alchemie Wert abrunden
			return NalchCalc
		else 
			return 'Bitte Value eintragen'
		end
	else
		local NalchCalc = nalch[id]
		return NalchCalc
	end
end


return v