Module:Misc
From Exiled Kingdoms Wiki
--[[ Module for Miscellaneous smaller functions ]] p = {}
local Comp = require( "Module:ValComp" )
Traits ={'Strength', 'Endurance', 'Agility', 'Intellect', 'Awareness', 'Personality'}
Arg1 = mw.getCurrentFrame().args[1] Arg2 = mw.getCurrentFrame().args[2] Arg3 = mw.getCurrentFrame().args[3] Arg4 = mw.getCurrentFrame().args[4]
function p.imgLink()
size = mw.getCurrentFrame().args['size'] nolink = mw.getCurrentFrame().args['ln'] icon = mw.getCurrentFrame().args['icon'] addcolor = mw.getCurrentFrame().args['Colo'] if (size == nil or size == ) then if (Arg3 == nil or Arg3 == ) then size = 32 else size = Arg3 end end if (Arg2 == nil or Arg2 == ) then Arg2 = 'png' end linktxt = dirlink = string.format('%s',Arg1) if (icon == '1') then argtbl = { 'genSel', 'Icon'} inm = string.format(':%s',Arg1) tmpicon = mw.getCurrentFrame():expandTemplate{ title = inm, args = argtbl } linktxt = string.format('%spx', tmpicon,size,Arg1) elseif (icon ~= 0 and icon == nil) then linktxt = string.format('%spx',Arg1,Arg2,size,Arg1) else linktxt = string.format('%spx',icon,size,Arg1) end if (nolink ~= true) then if (addcolor == '1') then dirlink = string.format('%s', dirlink) linktxt = string.format('%s %s',linktxt,dirlink) else linktxt = string.format('%s %s',linktxt,dirlink) end end return linktxt
end
function p.Rarity()
rarities = {Unique = 'Red', Uncommon = 'Violet', Limited = 'rgb(220,0,0)', Crafted = 'DeepSkyBlue', Common = 'Lime'} longtxt = if (rarities[Arg1] == nil) then Arg1 = 'Common' end spantag = mw.html.create( 'span' ) spantag:css('color', rarities[Arg1]) spantag:wikitext(Arg1) spantag = tostring(spantag:allDone()) shorttxt = spantag if (Arg2 ~= nil and Arg2 ~= ) then if (Arg1 == 'Unique') then longtxt = string.format('This is a %s item, found only once.', spantag) elseif (Arg1 == 'Common') then longtxt = string.format('This is a %s item, a frequent drop or obtainable from merchants.', spantag) elseif (Arg1 == 'Uncommon') then longtxt = string.format('This is an %s item, a rare drop or obtainable from faction specific merchants.', spantag) elseif (Arg1 == 'Limited') then longtxt = string.format('This is a %s item that can only be obtained a set amount of times.', spantag) elseif (Arg1 == 'Crafted') then longtxt = string.format('This is a %s item, obtainable as a rare drop or by the player interacting with certain NPCs.', spantag) end return longtxt end return shorttxt
end
function p.Cost()
retval = 0 if (Arg3 ~= and Arg3 ~= nil) then if (Arg1 ~= nil and Arg1 ~= ) then return Arg1 end retval = Arg2 * 4 else if Arg2 ~= nil and Arg2 ~= then return Arg2 end retval = Arg1 / 4 end return string.format('%i',retval)
end
function p.traitDisp()
txtout = RawTraits = mw.text.split(Arg1,',',true) size = mw.getCurrentFrame().args[2] if (size == nil or size == ) then size = 16 end for i, trt in pairs(RawTraits) do if (tonumber(trt) > 0) then trlnk = string.format('%spx %s ', Traits[i], size, Traits[i], trt) txtout = txtout .. trlnk end end return txtout
end
function p.traitSel()
trsel = 0 RawTraits = mw.text.split(Arg1,',',true) Utrt = mw.getCurrentFrame().args[2] Symb = mw.getCurrentFrame().args[3] Chkval = mw.getCurrentFrame().args[4] if (Utrt == nil or Utrt == ) then return 0 end if (Symb == nil or Symb == ) then Symb = 'gt' end if (Chkval == nil or Chkval == ) then Chkval = 0 end Rawind = Comp.getIndex(Traits, Utrt) if (Comp.Compare(RawTraits[Rawind], Symb, Chkval) == true) then trsel = 1 end return trsel
end
return p