이 모듈에 대한 설명문서는 모듈:Pokedex/설명문서에서 만들 수 있습니다
local Pokedex = {}
local getArgs
local dex, dexSize, dexData
local forms
-- [[틀:번2포]]
function Pokedex.name ( index )
return dexData[index] or '없는 번호입니다.'
end
-- [[틀:포번앞]]
function Pokedex.prevIndex ( index )
local currentIndex = tonumber( index )
local prevIndex = ( currentIndex > 1 ) and ( currentIndex - 1 ) or dexSize
return string.format( '%03d', prevIndex )
end
-- [[틀:포번뒤]]
function Pokedex.nextIndex ( index )
local currentIndex = tonumber( index )
local nextIndex = ( currentIndex < dexSize ) and ( currentIndex + 1 ) or 1
return string.format( '%03d', nextIndex )
end
-- [[틀:폼문자]]
function Pokedex.formLetter ( name )
local ret = forms[name] and forms[name][2] or '없는 폼입니다.'
return ret
end
-- [[틀:폼이름]]
function Pokedex.formName ( name )
local ret = forms[name] and forms[name][1] or '없는 폼입니다.'
return ret
end
function Pokedex.main( frame )
-- 인자 관리 모듈이 캐시되어 있지 않으면 정의
if not getArgs then
getArgs = require( 'Module:Arguments' ).getArgs
end
-- 도감 데이터가 캐시되어 있지 않으면 정의
if not dex then
dex = mw.loadData( 'Module:Pokedex/Data' )
dexSize = dex.size
dexData = dex.data
end
-- `다른 폼` 데이터가 캐시되어 있지 않으면 정의
if not forms then
forms = mw.loadData( 'Module:Pokedex/Forms' )
end
local args = getArgs( frame )
local requested = args['request']
local result = Pokedex[requested] and Pokedex[requested]( args[1] )
return result
end
return Pokedex