Content added Content deleted
mNo edit summary |
mNo edit summary |
||
Line 149: | Line 149: | ||
local ret = '' |
local ret = '' |
||
for i=1,count do |
for i=1,count do |
||
ret = ret .. string.format('[[File%s|%s|link=]]', icons[star_icon], size) |
ret = ret .. string.format('[[File:%s|%s|link=]]', icons[star_icon], size) |
||
end |
end |
||
return ret |
return ret |
Revision as of 04:25, 29 July 2021
Documentation for this module may be created at Module:Icons/doc
local getArgs = require('Module:Arguments').getArgs
local constants = require('Module:Constants')
local p = {}
local icons = {
-- Characters
-- VIRTUAL SINGER
['vs miku'] = 'Miku-chibi-circle.png',
['vs rin'] = 'Rin-chibi-circle.png',
['vs len'] = 'Len-chibi-circle.png',
['vs luka'] = 'Luka-chibi-circle.png',
['vs meiko'] = 'Meiko-chibi-circle.png',
['vs kaito'] = 'Kaito-chibi-circle.png',
-- Leo/need
['ichika'] = 'Ichika-chibi-circle.png',
['saki'] = 'Saki-chibi-circle.png',
['honami'] = 'Honami-chibi-circle.png',
['shiho'] = 'Shiho-chibi-circle.png',
['l/n miku'] = 'Leoneed-miku-chibi-circle.png',
['l/n luka'] = 'Leoneed-luka-chibi-circle.png',
-- MORE MORE JUMP!
['minori'] = 'Minori-chibi-circle.png',
['haruka'] = 'Haruka-chibi-circle.png',
['airi'] = 'Airi-chibi-circle.png',
['shizuku'] = 'Shizuku-chibi-circle.png',
['mmj miku'] = 'Mmj-miku-chibi-circle.png',
['mmj rin'] = 'Mmj-rin-chibi-circle.png',
-- Vivid BAD SQUAD
['kohane'] = 'Kohane-chibi-circle.png',
['an'] = 'An-chibi-circle.png',
['akito'] = 'Akito-chibi-circle.png',
['toya'] = 'Toya-chibi-circle.png',
['vbs miku'] = 'Vbs-miku-chibi-circle.png',
['vbs len'] = 'Vbs-len-chibi-circle.png',
['vbs meiko'] = 'Vbs-meiko-chibi-circle.png',
-- Wonderlands×Showtime
['tsukasa'] = 'Tsukasa-chibi-circle.png',
['emu'] = 'Emu-chibi-circle.png',
['nene'] = 'Nene-chibi-circle.png',
['rui'] = 'Rui-chibi-circle.png',
['wxs miku'] = 'Wxs-miku-chibi-circle.png',
['wxs kaito'] = 'Wxs-kaito-chibi-circle.png',
-- 25-ji, Night Code de.
['kanade'] = 'Kanade-chibi-circle.png',
['mafuyu'] = 'Mafuyu-chibi-circle.png',
['ena'] = 'Ena-chibi-circle.png',
['mizuki'] = 'Mizuki-chibi-circle.png',
['25ji miku'] = '25ji-miku-chibi-circle.png',
-- Unit
['VIRTUAL SINGER'] = 'VIRTUAL SINGER icon.svg',
['Leo/need'] = 'Leoneed icon.svg',
['MORE MORE JUMP!'] = 'MORE MORE JUMP! icon.svg',
['Vivid BAD SQUAD'] = 'Vivid BAD SQUAD icon.svg',
['Wonderlands×Showtime'] = 'Wonderlands×Showtime icon.svg',
['25-ji, Night Code de.'] = '25-ji, Night Code de. icon.svg',
-- Game
-- Attributes
['cool'] = 'Icon attribute cool.png',
['cute'] = 'Icon attribute cute.png',
['happy'] = 'Icon attribute happy.png',
['mysterious'] = 'Icon attribute mysterious.png',
['pure'] = 'Icon attribute pure.png',
-- Card Stats
['technique'] = 'Icon technique.png',
['stamina'] = 'Icon stamina.png',
['performance'] = 'Icon performance.png',
-- Stars
['star'] = 'Gold star.png',
['star trained'] = 'Rainbow star.png'
}
local links = {
-- VIRTUAL SINGER
['vs miku'] = 'Hatsune Miku',
['vs rin'] = 'Kagamine Rin',
['vs len'] = 'Kagamine Len',
['vs luka'] = 'Megurine Luka',
['vs meiko'] = 'MEIKO',
['vs kaito'] = 'KAITO',
-- Leo/need
['ichika'] = 'Hoshino Ichika',
['saki'] = 'Tenma Saki',
['honami'] = 'Mochizuki Honami',
['shiho'] = 'Hinomori Shiho',
['l/n miku'] = 'Hatsune Miku',
['l/n luka'] = 'Megurine Luka',
-- MORE MORE JUMP!
['minori'] = 'Hanasato Minori',
['haruka'] = 'Kiritani Haruka',
['airi'] = 'Momoi Airi',
['shizuku'] = 'Hinomori Shizuku',
['mmj miku'] = 'Hatsune Miku',
['mmj rin'] = 'Kagamine Rin',
-- Vivid BAD SQUAD
['kohane'] = 'Azusawa Kohane',
['an'] = 'Shiraishi An',
['akito'] = 'Shinonome Akito',
['toya'] = 'Aoyagi Toya',
['vbs miku'] = 'Hatsune Miku',
['vbs len'] = 'Kagamine Len',
['vbs meiko'] = 'MEIKO',
-- Wonderlands×Showtime
['tsukasa'] = 'Tenma Tsukasa',
['emu'] = 'Otori Emu',
['nene'] = 'Kusanagi Nene',
['rui'] = 'Kamishiro Rui',
['wxs miku'] = 'Hatsune Miku',
['wxs kaito'] = 'KAITO',
-- 25-ji, Night Code de.
['kanade'] = 'Yoisaki Kanade',
['mafuyu'] = 'Asahina Mafuyu',
['ena'] = 'Shinonome Ena',
['mizuki'] = 'Akiyama Mizuki',
['25ji miku'] = 'Hatsune Miku'
}
function p.main(frame)
local args = getArgs(frame)
return p._main(args)
end
function p._main(args)
local icon = args[1]
local size = args['size'] or '30px'
if icon then
if icons[icon] then
return string.format('[[File:%s|%s|link=%s]]', icons[icon], size, links[icon] or '')
elseif icons[constants.get_unit(icon)] then
return string.format('[[File:%s|%s|link=%s]]', icons[constants.get_unit(icon)], size, links[icon] or '')
elseif string.find(icon, "^[1-5] star$") or string.find(icon, "^[1-5] star trained$") then
local count = tonumber(string.match(icon, "[1-5]"))
local star_icon = string.match(icon, "star trained") or string.match(icon, "star")
local ret = ''
for i=1,count do
ret = ret .. string.format('[[File:%s|%s|link=]]', icons[star_icon], size)
end
return ret
end
end
return nil
end
return p