Module:EquipmentInfo

Revision as of 12:02, 8 September 2022 by Botkaze (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Documentation for this module may be created at Module:EquipmentInfo/doc

local EquipmentCardKai = false
local EquipmentCategoriesKai = false
local EquipmentGraphicKai = false
local EquipmentInfoKai = false
local EnemyEquipmentInfoKai = false
local getArgs = require('Module:GetArgs')

local EquipmentInfo = {}

function EquipmentInfo.Infobox(frame)
	EquipmentInfoKai = EquipmentInfoKai or require('Module:EquipmentInfoKai')
	return EquipmentInfoKai:Infobox(frame.args.pagename and {frame.args.pagename} or getArgs{frame = frame:getParent()})
end

function EquipmentInfo.Card(frame)
	local args = getArgs{frame = frame:getParent()}
	_prepareEquipmentCardKai()
	return EquipmentCardKai:Asset(args)
end

function _prepareEquipmentCardKai()
	if not EquipmentCardKai then
		EquipmentCardKai = require('Module:EquipmentCardKai')
	end
end

function EquipmentInfo.Graphic(frame)
	local args = getArgs{frame = frame:getParent()}
	_prepareEquipmentGraphicKai()
	return EquipmentGraphicKai:Asset(args)
end

function _prepareEquipmentGraphicKai()
	if not EquipmentGraphicKai then
		EquipmentGraphicKai = require('Module:EquipmentGraphicKai')
	end
end

function EquipmentInfo.Categories(frame)
	local args = getArgs{frame = frame:getParent()}
	_prepareEquipmentCategoriesKai()
	return EquipmentCategoriesKai:Categories(args)
end

function _prepareEquipmentCategoriesKai()
	if not EquipmentCategoriesKai then
		EquipmentCategoriesKai = require('Module:EquipmentCategoriesKai')
	end
end

function EquipmentInfo.EnemyInfobox(frame)
	local args = getArgs{frame = frame:getParent()}
	_prepareEnemyEquipmentInfoKai()
	return EnemyEquipmentInfoKai:Infobox(args)
end

function _prepareEnemyEquipmentInfoKai()
	if not EnemyEquipmentInfoKai then
		EnemyEquipmentInfoKai = require('Module:EnemyEquipmentInfoKai')
	end
end

return EquipmentInfo