Warning.png

Поддержка Wiki прекращена, она доступна в режиме архива. Информация в ней устарела и может быть неактуальной.

Модуль:Инвентарный слот/Псевдонимы/Таблица — различия между версиями

Материал из Hilarious Wiki
Перейти к: навигация, поиск
Строка 6: Строка 6:
 
local keys = {}
 
local keys = {}
 
for i in pairs( aliases ) do
 
for i in pairs( aliases ) do
-- Skip the banner aliases (except "Базовый флаг"), as there are so
+
-- Skip the banner aliases (except "Любой флаг"), as there are so
 
-- many of them it causes the table to be excessively long
 
-- many of them it causes the table to be excessively long
if i == 'Базовый флаг' or not i:find( 'Флаг$ ' ) then
+
if i == 'Любой флаг' or not i:find( 'Флаг$ ' ) then
 
table.insert( keys, i )
 
table.insert( keys, i )
 
end
 
end

Версия 13:37, 7 августа 2016

Для документации этого модуля может быть создана страница Модуль:Инвентарный слот/Псевдонимы/Таблица/док

local p = {}
p.table = function()
	local slot = require( [[Модуль: Инвентарный слот]] ).slot
	local aliases = mw.loadData( [[Модуль: Инвентарный слот/Псевдонимы]] )
	
	local keys = {}
	for i in pairs( aliases ) do
		-- Skip the banner aliases (except "Любой флаг"), as there are so
		-- many of them it causes the table to be excessively long
		if i == 'Любой флаг' or not i:find( 'Флаг$ ' ) then
			table.insert( keys, i )
		end
	end
	table.sort( keys )
	
	local tableRows = {
		' {| class="wikitable collapsible collapsed"',
		'! Alias !! class="collapse-button" | Output'
	}
	for _, key in ipairs( keys ) do
		local alias = aliases[key]
		
		local displayCell = {}
		for name in mw.text.gsplit( alias, '%s*;%s*' ) do
			-- Aliases are disabled in output for acuracy
			-- (as sub-aliases aren't meant to work) and performance
			table.insert( displayCell, slot{ name, noalias = true } )
		end
		
		table.insert( tableRows, '|<code>' .. key .. '</code>||' .. table.concat( displayCell ) )
	end
	table.insert( tableRows, '|}' )
	
	return table.concat( tableRows, '\n|-\n' )
end
return p