<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.runerealm.org/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FUser%3ARiblet15%2FSet_drops_vars</id>
	<title>Module:Sandbox/User:Riblet15/Set drops vars - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.runerealm.org/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FUser%3ARiblet15%2FSet_drops_vars"/>
	<link rel="alternate" type="text/html" href="https://wiki.runerealm.org/index.php?title=Module:Sandbox/User:Riblet15/Set_drops_vars&amp;action=history"/>
	<updated>2026-04-30T17:40:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://wiki.runerealm.org/index.php?title=Module:Sandbox/User:Riblet15/Set_drops_vars&amp;diff=35111&amp;oldid=prev</id>
		<title>Alex: Created page with &quot;local var = mw.ext.VariablesLua  local p = {}  function p.main(frame) 	return p._main(frame:getParent().args) end  function p._main(args) 	local type = args.type or &#039;&#039; 	local levels = args.level or &#039;&#039; 	local versions = args.version or &#039;&#039;  	-- All levels are additionally saved to the DEFAULT drop version 	versions = versions .. &#039;,DEFAULT&#039;  	local valuesToSet = {} 	for dropVersion in string.gmatch(versions, &#039; *([^,]+) *&#039;) do 		local varName = string.format(&#039;DropLevel_%s_%s...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.runerealm.org/index.php?title=Module:Sandbox/User:Riblet15/Set_drops_vars&amp;diff=35111&amp;oldid=prev"/>
		<updated>2024-10-16T23:13:00Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local var = mw.ext.VariablesLua  local p = {}  function p.main(frame) 	return p._main(frame:getParent().args) end  function p._main(args) 	local type = args.type or &amp;#039;&amp;#039; 	local levels = args.level or &amp;#039;&amp;#039; 	local versions = args.version or &amp;#039;&amp;#039;  	-- All levels are additionally saved to the DEFAULT drop version 	versions = versions .. &amp;#039;,DEFAULT&amp;#039;  	local valuesToSet = {} 	for dropVersion in string.gmatch(versions, &amp;#039; *([^,]+) *&amp;#039;) do 		local varName = string.format(&amp;#039;DropLevel_%s_%s...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local var = mw.ext.VariablesLua&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	return p._main(frame:getParent().args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._main(args)&lt;br /&gt;
	local type = args.type or &amp;#039;&amp;#039;&lt;br /&gt;
	local levels = args.level or &amp;#039;&amp;#039;&lt;br /&gt;
	local versions = args.version or &amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	-- All levels are additionally saved to the DEFAULT drop version&lt;br /&gt;
	versions = versions .. &amp;#039;,DEFAULT&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	local valuesToSet = {}&lt;br /&gt;
	for dropVersion in string.gmatch(versions, &amp;#039; *([^,]+) *&amp;#039;) do&lt;br /&gt;
		local varName = string.format(&amp;#039;DropLevel_%s_%s&amp;#039;, type, dropVersion)&lt;br /&gt;
&lt;br /&gt;
		local valuesForVersion = {}&lt;br /&gt;
		-- read any existing values for this var so we can append to it&lt;br /&gt;
		local previousLevels = var.var(varName)&lt;br /&gt;
		for previousLevel in string.gmatch(previousLevels, &amp;#039; *([^,]+) *&amp;#039;) do&lt;br /&gt;
			valuesForVersion[previousLevel] = true&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		-- add in new levels&lt;br /&gt;
		for level in string.gmatch(levels, &amp;#039; *([^,]+) *&amp;#039;) do&lt;br /&gt;
			valuesForVersion[level] = true&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		valuesToSet[varName] = valuesForVersion&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- set new values for each var&lt;br /&gt;
	for varName, levels in pairs(valuesToSet) do&lt;br /&gt;
		local ordered = {}&lt;br /&gt;
		for level, _ in pairs(levels) do&lt;br /&gt;
			local n = tonumber(level)&lt;br /&gt;
			if n ~= nil then&lt;br /&gt;
				table.insert(ordered, n)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		table.sort(ordered)&lt;br /&gt;
		var.vardefine(varName, table.concat(ordered, &amp;#039;,&amp;#039;))&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Alex</name></author>
	</entry>
</feed>