Modul:PLaden: Unterschied zwischen den Versionen

Aus SchnuppTrupp
Wechseln zu: Navigation, Suche
Zeile 38: Zeile 38:
 
local werttotal = 0
 
local werttotal = 0
 
local i = 1
 
local i = 1
while (fargs[i] ~= nil or i>=25)
+
while (fargs[i] ~= nil or i<=1)
 
do
 
do
   local inhalt = split(fargs[i] or '0', ";") -- Problem hohlt sich variable i und nicht Variable 1 oder 2...
+
   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]
 
   local mhpreis = frame:callParserFunction{ name= '#mh', args= { inhalt[1] } }  -- Gegenstand Name oder ID in inhalt[1]
 
   lagertotal = lagertotal + tonumber(inhalt[2]) -- Lager
 
   lagertotal = lagertotal + tonumber(inhalt[2]) -- Lager

Version vom 24. November 2020, 17:44 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 * 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 or 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
	
	return '| ||align="left" colspan="4" |<span title="Gesamter Verkaufswert wenn alle Gegenstände eingekauft werden">Gesamt Wert:</span>||'..fargs[i]..'\n|-'
end

return v