Modul:MHI
Aus SchnuppTrupp
Version vom 24. März 2019, 01:31 Uhr von Siedler6 (Diskussion | Beiträge)
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 return mh:limit(frame, id) elseif variable == 'bild' or variable == 'b' then -- Bilder local zusatz = fargs.zusatz or '' return mh:bild(frame, id, zusatz) elseif variable == 'nalch' or variable == 'na' then -- Niedriger Alchemie Wert return mh:nalch(frame, id) elseif variable == 'halch' or variable == 'ha' then -- Hohe Alchemie Wert return mh:halch(frame, id) elseif variable == 'gewicht' or variable == 'g' then -- Gewicht return mh:gewicht(frame, id) 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 beschreibung = frame:callParserFunction{ name= '#mh', args= { id,'b' } } return '|'..mh:bild(frame, id, beschreibung) 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="280px"|'..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
Maximal Preis: '..ItemPreisMax..' Gm
Mittel Preis: '..ItemPreisMittel..' Gm
Minimal Preis: '..ItemPreisMin..' Gm
Preisaufzeichnung seit: '..ItemPreisaufzeichnung..'">'..ItemPreisPp..'</span>' elseif variable == 'hohe' or variable == 'ha' then -- Spalte Hohe Alchemie local ItemHoheAlch = mh:halch(frame, id) 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:halch (frame, id) -- Gibt den Niedrigen Alchemie Wert zurück. local halch = mw.loadData('Module:MHI/Halch') if halch[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.6 -- Value *0,6 Ist der Hohe 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 function mh:nalch (frame, id) -- Gibt den Niedrigen Alchemie Wert 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 function mh:limit (frame, id) -- Handelslimit local Handelslimit = mw.loadData('Module:MHI/Limit') return Handelslimit[id] or 'Bitte Handelslimit eintragen' end function mh:gewicht (frame, id) -- Gewicht local Gewicht = mw.loadData('Module:MHI/Gewicht') return Gewicht[id] or 'Bitte Gewicht eintragen' end function mh:bild (frame, id, zusatz) -- Bild local name = frame:callParserFunction{ name= '#mh', args= { id,'name' } } 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 end return v