Modul:PLaden: Unterschied zwischen den Versionen
Aus SchnuppTrupp
| Zeile 20: | Zeile 20: | ||
local vkpreispl = frame:callParserFunction{ name= '#pl', args= { vkpreis } } | local vkpreispl = frame:callParserFunction{ name= '#pl', args= { vkpreis } } | ||
local mhpreis = mh:mhpreis(frame,id) | local mhpreis = mh:mhpreis(frame,id) | ||
| − | local wertlagerpl = mhp * lager | + | local wertlagerpl = (mhp-vkpreis) * lager |
wertlagerpl = frame:callParserFunction{ name= '#pl', args= { wertlagerpl } } | wertlagerpl = frame:callParserFunction{ name= '#pl', args= { wertlagerpl } } | ||
vkpreis=tonumber(vkpreis) | vkpreis=tonumber(vkpreis) | ||
| Zeile 47: | Zeile 47: | ||
i = i+1 | i = i+1 | ||
end | end | ||
| − | + | lagertotalpl = frame:callParserFunction{ name= '#pl', args= { lagertotal } } | |
| − | + | werttotalpl = frame:callParserFunction{ name= '#pl', args= { werttotal } } | |
| − | return '| ||align="left" colspan="1" |<b><span title="Gesamter Verkaufswert wenn alle Gegenstände eingekauft werden">Gesamt Wert:</span>||'.. | + | return '| ||align="left" colspan="1" |<b><span title="Gesamter Verkaufswert wenn alle Gegenstände eingekauft werden">Gesamt Wert:</span>||'..lagertotalpl..'|| || ||'..werttotalpl..'</b>\n|-' |
end | end | ||
Version vom 24. November 2020, 17:53 Uhr
Die Dokumentation für dieses Modul kann unter Modul:PLaden/Doku erstellt werden
local v = {}
function v.laden(frame)
local fargs = frame.args
local id = fargs.id or ''
local lager = tonumber(fargs.lager or '1')
local vkpreis = fargs.vkpreis or nil
local MHI = require( "Module:MHI" ) -- Läd Modul MHI um die Funktionen zu nutzen
local mhp = frame:callParserFunction{ name= '#mh', args= { id } } -- Speichert den MHPreis
local bild = mh:bild(frame,id,'')
local name = frame:callParserFunction{ name= '#mh', args= { id,'n' } }
name = frame:callParserFunction{ name= '#ifexist', args= { name,'[['..name..']]',name } }
local lagerpl = frame:callParserFunction{ name= '#pl', args= { lager } }
if vkpreis=='null' then
vkpreis = mh:value(frame,id)
else
vkpreis = tonumber(vkpreis)
end
local vkpreispl = frame:callParserFunction{ name= '#pl', args= { vkpreis } }
local mhpreis = mh:mhpreis(frame,id)
local wertlagerpl = (mhp-vkpreis) * lager
wertlagerpl = frame:callParserFunction{ name= '#pl', args= { wertlagerpl } }
vkpreis=tonumber(vkpreis)
local gewinninv
local ItemMitglied = frame:callParserFunction{ name= '#mh', args= { id, 'm' } }
local mitglied = '|'..frame:callParserFunction{ name= '#ifeq', args= { ItemMitglied,'Ja','[[Datei:Mitglied.png|Mitgliedsgegenstand]]','[[Datei:Nichtmitglied.png|Nicht Mitgliedsgegenstand]]' } }
return '|'..bild..'||align="left" width="280px"|'..name..'||'..lagerpl..'||'..vkpreispl..'||'..mhpreis..'||'..wertlagerpl..'||'..mitglied..'\n|-'
end
function v.gesamt(frame)
local fargs = frame.args
local MHI = require( "Module:MHI" ) -- Läd Modul MHI um die Funktionen zu nutzen
local lagertotal = 0
local werttotal = 0
local i = 1
while (fargs[i] ~= nil and i<=1)
do
local inhalt = split(fargs[i], ";") -- Problem hohlt sich variable i und nicht Variable 1 oder 2...
local mhpreis = frame:callParserFunction{ name= '#mh', args= { inhalt[1] } } -- Gegenstand Name oder ID in inhalt[1]
lagertotal = lagertotal + tonumber(inhalt[2]) -- Lager
local vkpreis = tonumber(inhalt[3]) -- Laden VK Preis
werttotal = werttotal + ((mhpreis-vkpreis)*lagertotal)
i = i+1
end
lagertotalpl = frame:callParserFunction{ name= '#pl', args= { lagertotal } }
werttotalpl = frame:callParserFunction{ name= '#pl', args= { werttotal } }
return '| ||align="left" colspan="1" |<b><span title="Gesamter Verkaufswert wenn alle Gegenstände eingekauft werden">Gesamt Wert:</span>||'..lagertotalpl..'|| || ||'..werttotalpl..'</b>\n|-'
end
function split(s, delimiter)
result = {};
for match in (s..delimiter):gmatch("(.-)"..delimiter) do
table.insert(result, match);
end
return result;
end
return v