Changes

14,102 bytes removed ,  3 years ago
m
47 revisions imported
Line 1: Line 1: −
local Utils = require('Module:Utils')
+
local U = require('Module:Core')
local format = require('Module:StringInterpolation').format
+
local Utils = require('Module:Core')
 +
local format = require('Module:Core').format
 
local getArgs = require('Module:GetArgs')
 
local getArgs = require('Module:GetArgs')
   −
local artists = {
+
local artists = require('Module:Collection/Artists')
    type = "artists",
+
local seiyuus = require('Module:Collection/Seiyuus')
    index = { "Akira", "Amamiya Chiharu", "Ayaki", "bob", "drew", "Fujikawa", "hatsuko", "JiJi", "Konishi", "Kujou Ichiso", "Kusada Souta", "Kuu Ro Kuro", "Mikoto Akemi", "Parsley", "Rikka", "Shibafu", "Shimada Humikane", "Shizuma Yoshinori", "Shobon", "UGUME", "Yadokari", "Unknown" },
+
local types = require('Module:Collection/ShipsByType')
    ["Akira"] = {
  −
        ships = {"Commandant Teste", "Mizuho", "Northern Princess"}
  −
    },
  −
    ["Amamiya Chiharu"] = {
  −
        url = "http://www.pixiv.net/member.php?id=2095023",
  −
        ships = {"Samidare", "Suzukaze"}
  −
    },
  −
    ["Ayaki"] = {
  −
        url = "http://www.pixiv.net/member.php?id=8611",
  −
        ships = {"Hatsuharu", "Murakumo", "Nenohi", "Tatsuta", "Tenryuu"}
  −
    },
  −
    ["bob"] = {
  −
        url = "http://www.pixiv.net/member.php?id=91521",
  −
        ships = {"Ashigara", "Chikuma", "Haguro", "Jintsuu", "Myoukou", "Nachi", "Naka", "Sendai", "Shouhou", "Tone"}
  −
    },
  −
    ["drew"] = {
  −
        url = "http://www.pixiv.net/member.php?id=193293",
  −
        ships = {"Akebono", "Oboro", "Sazanami", "Ushio"}
  −
    },
  −
    ["Fujikawa"] = {
  −
        ships = {"Akashi", "Akashi NPC", "Akigumo", "Asagumo", "Asashimo", "Hayashimo", "Irako", "Fujinami", "Kazagumo", "Kinugasa", "Kiyoshimo", "Makigumo", "Mamiya", "Naganami", "Okinami", "Ooyodo", "Ooyodo NPC", "Takanami", "Yamagumo", "Yuugumo"}
  −
    },
  −
    ["hatsuko"] = {
  −
        url = "http://www.pixiv.net/member.php?id=237559",
  −
        ships = {"Aoba"}
  −
    },
  −
    ["JiJi"] = {
  −
        url = "http://www.pixiv.net/member.php?id=3911",
  −
        ships = {"Aquila", "Libeccio", "Littorio", "Italia", "Pola", "Roma", "Zara"}
  −
    },
  −
    ["Konishi"] = {
  −
        url = "http://www.pixiv.net/member.php?id=4258322",
  −
        ships = {"Abukuma", "Agano", "Arare", "Arashi", "Arashio", "Asashio", "Hagikaze", "Haruna", "Hatsukaze", "Hayasui", "Hiei", "Kagerou", "Kasumi", "Kinu", "Kirishima", "Kongou", "Kumano", "Kuroshio", "Maikaze", "Michishio", "Noshiro", "Nowaki", "Ooshio", "Oyashio", "Sakawa", "Shiranui", "Shoukaku", "Suzuya", "Warspite", "Yahagi", "Yura", "Yuubari", "Zuihou", "Zuikaku"}
  −
    },
  −
    ["Kujou Ichiso"] = {
  −
        url = "http://www.pixiv.net/member.php?id=186655",
  −
        ships = {"Harusame", "Kawakaze", "Murasame", "Shigure", "Shiratsuyu", "Taigei", "Ryuuhou", "Umikaze", "Yamakaze", "Yuudachi"}
  −
    },
  −
    ["Kusada Souta"] = {
  −
        url = "http://www.pixiv.net/member.php?id=303275",
  −
        ships = {"Kisaragi", "Minazuki", "Mutsuki", "Uzuki", "Yayoi"}
  −
    },
  −
    ["Kuu Ro Kuro"] = {
  −
        url = "http://www.pixiv.net/member.php?id=29389",
  −
        ships = {"Akitsu Maru", "Amagi", "Chitose", "Chiyoda", "Hiyou", "I-26", "Isuzu", "Junyou", "Katsuragi", "Maruyu", "Nagara", "Natori", "Ryuujou", "Unryuu"}
  −
    },
  −
    ["Mikoto Akemi"] = {
  −
        url = "http://www.pixiv.net/member.php?id=501378",
  −
        ships = {"Atago", "Takao"}
  −
    },
  −
    ["Parsley"] = {
  −
        url = "http://www.pixiv.net/member.php?id=414162",
  −
        ships = {"Asakaze", "Choukai", "Hamakaze", "Harukaze", "Isokaze", "Kamikaze", "Kashima", "Katori", "Matsukaze", "Maya", "Tanikaze", "Urakaze"}
  −
    },
  −
    ["Rikka"] = {
  −
        url = "http://www.pixiv.net/member.php?id=1926153",
  −
        ships = {"Fusou", "Yamashiro"}
  −
    },
  −
    ["Shibafu"] = {
  −
        url = "http://www.pixiv.net/member.php?id=312614",
  −
        ships = {"Akagi", "Ayanami", "Fubuki", "Hatsuyuki", "Hiryuu", "Houshou", "Hyuuga", "I-401", "Ise", "Isonami", "Kaga", "Kitakami", "Mikuma", "Miyuki", "Mogami", "Ooi", "Shikinami", "Shirayuki", "Souryuu", "Uranami"}
  −
    },
  −
    ["Shimada Humikane"] = {
  −
        url = "https://twitter.com/humikane",
  −
        ships = {"Bismarck", "Graf Zeppelin", "Prinz Eugen", "Taihou", "U-511", "Ro-500", "Z1", "Z3"}
  −
    },
  −
    ["Shizuma Yoshinori"] = {
  −
        url = "http://www.pixiv.net/member.php?id=141206",
  −
        ships = {"Akitsushima", "Akizuki", "Amatsukaze", "Hatsuzuki", "I-13", "I-14", "Iowa", "Musashi", "Mutsu", "Nagato", "Saratoga", "Shimakaze", "Teruzuki", "Tokitsukaze", "Yamato", "Yukikaze"}
  −
    },
  −
    ["Shobon"] = {
  −
        url = "http://www.pixiv.net/member.php?id=2572017",
  −
        ships = {"I-19", "I-168", "I-58", "I-8"}
  −
    },
  −
    ["UGUME"] = {
  −
        url = "http://www.pixiv.net/member.php?id=1457830",
  −
        ships = {"Furutaka", "Kako", "Kiso", "Kuma", "Tama"}
  −
    },
  −
    ["Yadokari"] = {
  −
        url = "http://www.pixiv.net/member.php?id=1828868",
  −
        ships = {"Akatsuki", "Fumizuki", "Hatsushimo", "Hibiki", "Верный", "Ikazuchi", "Inazuma", "Kikuzuki", "Mikazuki", "Mochizuki", "Nagatsuki", "Satsuki", "Wakaba"}
  −
    },
  −
    ["Unknown"] = {
  −
        ships = {  },
  −
    },
  −
}
     −
local seiyuus = {
+
local function requireSeasonModule(name)
    type = "seiyuus",
+
  local success, data = U.requireModule('Data/Season/' .. name)
    index = { "Akasaki Chinatsu", "Bridcut Sarah Emi", "Chinami Hashimoto", "Endou Aya", "Fujita Saki", "Hayami Saori", "Hayasaka Kozue", "Hidaka Rina", "Hondo Kaede", "Horie Yui", "Iguchi Yuka", "Imamura Ayaka", "Ise Mariya", "Ishigami Shizuka", "Itou Shizuka", "Kanemoto Hisako", "Kawasumi Ayako", "Kayano Ai", "Kitou Akari", "Kobayashi Motoko", "Komatsu Mana", "Komatsu Mikako", "Kuno Misaki", "Misato", "Miyagawa Wakana", "Nakajima Megumi", "Nomizu Iori", "Noto Mamiko", "Ogura Yui", "Ootsubo Yuka", "Ozawa Ari", "Sakura Ayane", "Suzaki Aya", "Taketatsu Ayana", "Taneda Risa", "Tanibe Yumi", "Touyama Nao", "Uchida Shuu", "Uesaka Sumire", "Yamada Yuki", "Unknown" },
+
  if not success then
    ["Akasaki Chinatsu"] = {
+
     success, data = U.requireModule('Seasonal/' .. name)
        url = "http://myanimelist.net/people/12652/Chinatsu_Akasaki",
+
  end
        ships = { "Aquila", "Pola", "Zara", },
+
  if not success then
    },
+
     data = {index = {}, ships = {}}
    ["Bridcut Sarah Emi"] = {
+
  end
        url = "http://myanimelist.net/people/19371/Sarah_Emi_Bridcut",
+
  return data
        ships = {"Hatsukaze", "Kumano", "Maikaze", "Suzuya", "Yuubari", },
+
end
    },
  −
    ["Chinami Hashimoto"] = {
  −
        url = "http://myanimelist.net/people/27761/Chinami_Hashimoto",
  −
        ships = {"Iowa", "Yamakaze"},
  −
    },
  −
    ["Endou Aya"] = {
  −
        url = "http://myanimelist.net/people/54/Aya_Endou",
  −
        ships = {"Bismarck", "Z1", "Z3", },
  −
    },
  −
    ["Fujita Saki"] = {
  −
        url = "http://myanimelist.net/people/504",
  −
        ships = {"Akagi", "Fusou", "Kagerou", "Kuroshio", "Shiranui", "Tokitsukaze", "Yamashiro", "Yukikaze", },
  −
    },
  −
    ["Hayami Saori"] = {
  −
        url = "http://myanimelist.net/people/869/Saori_Hayami",
  −
        ships = {"Graf Zeppelin", "Hagikaze", },
  −
    },
  −
    ["Hayasaka Kozue"] = {
  −
        url = nil,
  −
        ships = {"Akebono", "Oboro", "Sazanami", "Ushio", },
  −
    },
  −
    ["Hidaka Rina"] = {
  −
        url = "http://myanimelist.net/people/5250/Rina_Hidaka",
  −
        ships = {"Fumizuki", "Kikuzuki", "Kisaragi", "Mikazuki", "Minazuki", "Mochizuki", "Mutsuki", "Nagatsuki", "Ryuujou", "Satsuki", "Uzuki", "Yayoi", },
  −
    },
  −
    ["Hondo Kaede"] = {
  −
        url = "https://myanimelist.net/people/38659/Kaede_Hondo",
  −
        ships = { "Oyashio", },
  −
    },
  −
    ["Horie Yui"] = {
  −
        url = "http://myanimelist.net/people/28/Yui_Horie",
  −
        ships = {"Amagi", "Asagumo", "Irako", "Mamiya", "Yamagumo", },
  −
    },
  −
    ["Iguchi Yuka"] = {
  −
        url = "http://myanimelist.net/people/885/Yuka_Iguchi",
  −
        ships = {"Chikuma", "Isuzu", "Kaga", "Nagara", "Natori", "Tatsuta", "Tenryuu", "Tone", },
  −
    },
  −
    ["Imamura Ayaka"] = {
  −
        url = "https://myanimelist.net/people/34697",
  −
        ships = {"I-13", "I-14"},
  −
    },
  −
    ["Ise Mariya"] = {
  −
        url = "http://myanimelist.net/people/655/Mariya_Ise",
  −
        ships = {"I-401", },
  −
    },
  −
    ["Ishigami Shizuka"] = {
  −
        url = "http://myanimelist.net/people/28755/Shizuka_Ishigami",
  −
        ships = {"Kawakaze", "Mizuho", "Umikaze", },
  −
     },
  −
    ["Itou Shizuka"] = {
  −
        url = "https://myanimelist.net/people/93/Shizuka_Itou",
  −
        ships = { "Asakaze", "Saratoga", },
  −
    },
  −
    ["Kanemoto Hisako"] = {
  −
        url = "http://myanimelist.net/people/8555/Hisako_Kanemoto",
  −
        ships = {"Harusame", "Hayashimo", "Kiyoshimo", },
  −
    },
  −
    ["Kawasumi Ayako"] = {
  −
        url = "http://myanimelist.net/people/13/Ayako_Kawasumi",
  −
        ships = {"Isokaze", "Kamikaze", "Ooyodo", "Unryuu", },
  −
    },
  −
    ["Kayano Ai"] = {
  −
        url = "http://myanimelist.net/people/10765/",
  −
        ships = {"Arashi", "Asashimo", "Kashima", "Katori", "Katsuragi", "U-511", "Ro-500"},
  −
    },
  −
    ["Kitou Akari"] = {
  −
        url = "https://ja.wikipedia.org/wiki/%E9%AC%BC%E9%A0%AD%E6%98%8E%E9%87%8C",
  −
        ships = {"Kazagumo", "Libeccio", "Okinami"},
  −
    },
  −
    ["Kobayashi Motoko"] = {
  −
        url = "http://myanimelist.net/people/12285/Motoko_Kobayashi",
  −
        ships = {"Hatsuharu", "Hatsushimo", "Nenohi", "Wakaba", },
  −
    },
  −
    ["Komatsu Mana"] = {
  −
        url = "http://myanimelist.net/people/12941/Mana_Komatsu",
  −
        ships = {"Hamakaze", "Tanikaze", "Urakaze", "Zuihou", },
  −
    },
  −
     ["Komatsu Mikako"] = {
  −
        url = "http://myanimelist.net/people/10071/Komatsu_Mikako",
  −
        ships = {"Akitsushima", "Teruzuki", },
  −
    },
  −
    ["Kuno Misaki"] = {
  −
        url = "http://myanimelist.net/people/11641/Misaki_Kuno",
  −
        ships = {"Littorio", "Italia", "Roma", "Takanami", },
  −
    },
  −
    ["Misato"] = {
  −
        url = "http://myanimelist.net/people/12759/Misato",
  −
        ships = {"I-19", "I-8", "Musashi", },
  −
    },
  −
    ["Miyagawa Wakana"] = {
  −
        url = "http://www.animenewsnetwork.com.au/encyclopedia/people.php?id=98235",
  −
        ships = {"Arare", "Arashio", "Asashio", "Chitose", "Chiyoda", "Kasumi", "Michishio", "Ooshio", },
  −
    },
  −
    ["Nakajima Megumi"] = {
  −
        url = "http://myanimelist.net/people/1105/Megumi_Nakajima",
  −
        ships = {"I-168", "I-58", "Hatsuzuki", "Kinugasa", "Mikuma", },
  −
    },
  −
    ["Nomizu Iori"] = {
  −
        url = "http://myanimelist.net/people/8956/Iori_Nomizu",
  −
        ships = {"Abukuma", "Hayasui", "Kinu", "Shoukaku", "Zuikaku", },
  −
    },
  −
    ["Noto Mamiko"] = {
  −
        url = "http://myanimelist.net/people/40/Mamiko_Noto",
  −
        ships = {"Akitsu Maru", "Harukaze", "Maruyu", "Taihou", },
  −
    },
  −
    ["Ogura Yui"] = {
  −
        url = "http://myanimelist.net/people/10981/Yui_Ogura",
  −
        ships = {"Amatsukaze", "I-26", "Taigei", "Ryuuhou"},
  −
    },
  −
    ["Ootsubo Yuka"] = {
  −
        url = "http://myanimelist.net/people/12452/Yuka_Ootsubo",
  −
        ships = {"Furutaka", "Hiyou", "Hyuuga", "Ise", "Junyou", "Kako", "Kitakami", "Ooi", },
  −
    },
  −
    ["Ozawa Ari"] = {
  −
        url = "http://myanimelist.net/people/27395/Ari_Ozawa",
  −
        ships = {"Akizuki", "Nowaki", "Prinz Eugen", },
  −
    },
  −
    ["Sakura Ayane"] = {
  −
        url = "http://myanimelist.net/people/11622/Ayane_Sakura",
  −
        ships = {"Jintsuu", "Kiso", "Kuma", "Mutsu", "Nagato", "Naka", "Sendai", "Shimakaze", "Tama", },
  −
    },
  −
    ["Suzaki Aya"] = {
  −
        url = "http://myanimelist.net/people/19834/Aya_Suzaki",
  −
        ships = {"Akatsuki", "Aoba", "Hibiki", "Верный", "Houshou", "Ikazuchi", "Inazuma", "Mogami", },
  −
    },
  −
    ["Taketatsu Ayana"] = {
  −
        url = "http://myanimelist.net/people/6996/Ayana_Taketatsu",
  −
        ships = {"Akigumo", "Makigumo", "Naganami", "Yamato", "Yuugumo", },
  −
    },
  −
    ["Taneda Risa"] = {
  −
        url = "http://myanimelist.net/people/16135/Risa_Taneda",
  −
        ships = {"Akashi", "Ashigara", "Haguro", "Myoukou", "Nachi", "Samidare", "Shouhou", "Suzukaze", },
  −
    },
  −
    ["Tanibe Yumi"] = {
  −
        url = "http://myanimelist.net/people/35951",
  −
        ships = {"Commandant Teste", "Murasame", "Shigure", "Shiratsuyu", "Yura", "Yuudachi", },
  −
    },
  −
    ["Touyama Nao"] = {
  −
        url = "http://myanimelist.net/people/11184/Nao_Touyama",
  −
        ships = {"Atago", "Ayanami", "Choukai", "Haruna", "Hiei", "Kirishima", "Kongou", "Maya", "Shikinami", "Takao", },
  −
    },
  −
    ["Uchida Shuu"] = {
  −
        url = false,
  −
        ships = { "Warspite" },
  −
    },
  −
    ["Uesaka Sumire"] = {
  −
        url = "http://myanimelist.net/people/14441/Sumire_Uesaka",
  −
        ships = {"Fubuki", "Hatsuyuki", "Hiryuu", "Isonami", "Miyuki", "Murakumo", "Shirayuki", "Souryuu", "Uranami"},
  −
    },
  −
    ["Yamada Yuki"] = {
  −
        url = "http://myanimelist.net/people/28053/Yuki_Yamada",
  −
        ships = {"Agano", "Noshiro", "Sakawa", "Yahagi", },
  −
    },
  −
    ["Unknown"] = {
  −
        ships = {"Fujinami", "Matsukaze"},
  −
    },
  −
}
  −
 
  −
local types = {
  −
    type = "types",
  −
    index = { "Destroyers", "Light Cruisers", "Heavy Cruisers", "Battleships", "Light Carriers", "Standard Carriers", "Submarines", "Auxiliaries", "NPC", "Bosses" },
  −
    ["Destroyers"] = {
  −
        ships = { "Akatsuki", "Akebono", "Akigumo", "Akizuki", "Amatsukaze", "Arare", "Arashi", "Arashio", "Asagumo", "Asakaze", "Asashimo", "Asashio", "Ayanami", "Fubuki", "Fujinami", "Fumizuki", "Hagikaze", "Hamakaze", "Harukaze", "Harusame", "Hatsuharu", "Hatsukaze", "Hatsushimo", "Hatsuyuki", "Hatsuzuki", "Hayashimo", "Hibiki", "Верный", "Ikazuchi", "Inazuma", "Isokaze", "Isonami", "Kagerou", "Kamikaze", "Kasumi", "Kawakaze", "Kazagumo", "Kikuzuki", "Kisaragi", "Kiyoshimo", "Kuroshio", "Libeccio", "Maikaze", "Makigumo", "Matsukaze", "Michishio", "Mikazuki", "Minazuki", "Miyuki", "Mochizuki", "Murakumo", "Murasame", "Mutsuki", "Naganami", "Nagatsuki", "Nenohi", "Nowaki", "Oboro", "Okinami", "Ooshio", "Oyashio", "Samidare", "Satsuki", "Sazanami", "Shigure", "Shikinami", "Shimakaze", "Shiranui", "Shiratsuyu", "Shirayuki", "Suzukaze", "Takanami", "Tanikaze", "Teruzuki", "Tokitsukaze", "Umikaze", "Uranami", "Urakaze", "Ushio", "Uzuki", "Wakaba", "Yamagumo", "Yamakaze", "Yayoi", "Yukikaze", "Yuudachi", "Yuugumo", "Z1", "Z3" }
  −
    },
  −
    ["Light Cruisers"] = {
  −
        ships = { "Abukuma", "Agano", "Isuzu", "Jintsuu", "Kinu", "Kiso", "Kitakami", "Kuma", "Nagara", "Naka", "Natori", "Noshiro", "Ooi", "Ooyodo", "Sakawa", "Sendai", "Tama", "Tatsuta", "Tenryuu", "Yahagi", "Yura", "Yuubari" }
  −
    },
  −
    ["Heavy Cruisers"] = {
  −
        ships = { "Aoba", "Ashigara", "Atago", "Chikuma", "Choukai", "Furutaka", "Haguro", "Kako", "Kinugasa", "Kumano", "Maya", "Mikuma", "Mogami", "Myoukou", "Nachi", "Pola", "Prinz Eugen", "Suzuya", "Takao", "Tone", "Zara" }
  −
    },
  −
    ["Battleships"] = {
  −
        ships = { "Bismarck", "Fusou", "Haruna", "Hiei", "Hyuuga", "Iowa", "Ise", "Kirishima", "Kongou", "Littorio", "Italia", "Musashi", "Mutsu", "Nagato", "Roma", "Warspite", "Yamashiro", "Yamato" }
  −
    },
  −
    ["Light Carriers"] = {
  −
        ships = { "Chitose", "Chiyoda", "Hiyou", "Houshou", "Jun'you", "Ryuuhou", "Ryuujou", "Shouhou", "Zuihou" }
  −
    },
  −
    ["Standard Carriers"] = {
  −
        ships = { "Akagi", "Amagi", "Aquila", "Graf Zeppelin", "Hiryuu", "Kaga", "Katsuragi", "Saratoga", "Shoukaku", "Souryuu", "Taihou", "Unryuu", "Zuikaku" }
  −
    },
  −
    ["Submarines"] = {
  −
        ships = { "I-13", "I-14", "I-19", "I-168", "I-58", "I-8", "I-401", "Maruyu", "U-511", "Ro-500", "I-26" }
  −
    },
  −
    ["Auxiliaries"] = {
  −
        ships = { "Akashi", "Akitsu Maru", "Akitsushima", "Commandant Teste", "Hayasui", "Kashima", "Katori", "Mizuho", "Taigei" }
  −
    },
  −
    ["NPC"] = {
  −
        ships = { "Akashi NPC", "Irako", "Mamiya", "Ooyodo NPC" }
  −
    },
  −
    ["Bosses"] = {
  −
        ships = { "Northern Princess" }
  −
    },
  −
}
     −
function find_type(ship)
+
function findType(ship)
 
     for type, data in pairs(types) do
 
     for type, data in pairs(types) do
 
         if data.ships and Utils.find(data.ships, ship) then
 
         if data.ships and Utils.find(data.ships, ship) then
Line 305: Line 28:  
end
 
end
   −
function gen(args, tbl, format)
+
function genToc(args, tbl, format)
 
     local result = ""
 
     local result = ""
 
     local i = 0
 
     local i = 0
Line 315: Line 38:  
             i = i + 1
 
             i = i + 1
 
             n = n + #ships
 
             n = n + #ships
             local ships_str = table.concat(Utils.map(ships, function(ship) return string.format("[[#%s|%s]]", args.art and (tbl.type == "types" and k or find_type(ship)) or ship, ship) end), ", ")
+
             local ships_str = table.concat(Utils.map(ships, function(ship) return string.format("[[#%s|%s]]", args.art and (tbl.type == "types" and k or findType(ship)) or ship, ship) end), ", ")
 
             if data.url then
 
             if data.url then
 
                 result = result .. string.format("|-\n|[%s %s]\n|%s\n", data.url, k, ships_str)
 
                 result = result .. string.format("|-\n|[%s %s]\n|%s\n", data.url, k, ships_str)
Line 330: Line 53:  
local Seasonal = {}
 
local Seasonal = {}
    +
-- Template:SeasonalTOC
 
function Seasonal.toc(frame)
 
function Seasonal.toc(frame)
 
     local args = getArgs{frame = frame:getParent()}
 
     local args = getArgs{frame = frame:getParent()}
 
     return
 
     return
         gen(args, types, function(r, i, n) return string.format([===[{| class="mw-collapsible mw-collapsed wikitable typography-xl-optout" style="width:100%%"
+
         genToc(args, types, function(r, i, n) return string.format([===[{| class="mw-collapsible mw-collapsed wikitable typography-xl-optout" style="width:100%%"
 
|-
 
|-
 
!width=20%%|Class
 
!width=20%%|Class
Line 339: Line 63:  
]===], args.text or "Ship girls", n) .. r .. "|}" end)
 
]===], args.text or "Ship girls", n) .. r .. "|}" end)
 
         .. "\n" ..
 
         .. "\n" ..
         gen(args, args.art and artists or seiyuus, function(r, i, n) return string.format([===[{| class="mw-collapsible mw-collapsed wikitable typography-xl-optout" style="width:100%%"
+
         genToc(args, args.art and artists or seiyuus, function(r, i, n) return string.format([===[{| class="mw-collapsible mw-collapsed wikitable typography-xl-optout" style="width:100%%"
 
|-
 
|-
 
!width=20%%|[[%s]] (%s)
 
!width=20%%|[[%s]] (%s)
Line 347: Line 71:  
end  
 
end  
    +
-- Template:SeasonalQuotesInclude
 
function Seasonal.include(frame)
 
function Seasonal.include(frame)
   Line 355: Line 80:     
     local quote_template = [=[|- ${id_string}
 
     local quote_template = [=[|- ${id_string}
${ship_row}|align="center"|<span class="audio-button click-parent">[[File:${ship} ${season}${line}.ogg|Play]]</span>
+
${ship_row}|align="center"|<span class="audio-button click-parent">[[File:${ship}${form} ${season}${line}.ogg|Play]]</span>
 
|lang="ja"|${ja}
 
|lang="ja"|${ja}
 
|${en}
 
|${en}
Line 367: Line 92:  
         string.format([=[!colspan="5"|From [[Seasonal/%s|%s]]]=], season, season)
 
         string.format([=[!colspan="5"|From [[Seasonal/%s|%s]]]=], season, season)
 
     }
 
     }
     local seasonal_data = require(string.format("Module:Seasonal/%s", season))
+
     local seasonal_data = requireSeasonModule(season)
 
     for _, ship in ipairs(seasonal_data.index[type]) do
 
     for _, ship in ipairs(seasonal_data.index[type]) do
 
         if only and Utils.find(args, ship) or not only and not Utils.find(args, ship) then
 
         if only and Utils.find(args, ship) or not only and not Utils.find(args, ship) then
Line 376: Line 101:  
             for i, quote in ipairs(quotes) do
 
             for i, quote in ipairs(quotes) do
 
                 local note = args[ship .. "." .. "note"]
 
                 local note = args[ship .. "." .. "note"]
 +
                if note and note == "nil" then
 +
                    note = ""
 +
                elseif note and note:sub(-1) == "+" then
 +
                    note = note:sub(1, -2) .. (quote.note or "")
 +
                end
 
                 table.insert(result, format{
 
                 table.insert(result, format{
 
                     quote_template,
 
                     quote_template,
Line 388: Line 118:  
                     },
 
                     },
 
                     ship = quote.ship or ship,
 
                     ship = quote.ship or ship,
 +
                    form = quote.form or "",
 
                     season = quote.season or season,
 
                     season = quote.season or season,
 
                     line = quote.line and " " .. quote.line or "",
 
                     line = quote.line and " " .. quote.line or "",
Bots, gkautomate
12,557

edits