Editing Module:Enemy List

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 2: Line 2:
local yesno = require('Module:Yesno')
local yesno = require('Module:Yesno')
local album_xp_data = require('Module:Experience/data').album
local album_xp_data = require('Module:Experience/data').album
local Array = require('Module:Array')
local lang = mw.language.getContentLanguage()

local function formatNum(n)
if n == nil then
return ''
end
return lang:formatNum(n)
end


local p = {}
local p = {}
Line 59: Line 50:
:tag('td'):wikitext(monster['Unlock level']):done()
:tag('td'):wikitext(monster['Unlock level']):done()
:tag('td'):wikitext(monster['Profession Level A']):done()
:tag('td'):wikitext(monster['Profession Level A']):done()
:tag('td'):wikitext(formatNum(monster.Health)):done()
:tag('td'):wikitext(monster.Health):done()
:tag('td'):wikitext(format_attack_style(monster['Attack style'])):done()
:tag('td'):wikitext(format_attack_style(monster['Attack style'])):done()
:tag('td'):wikitext(format_attack_style(monster['Immune to'])):done()
:tag('td'):wikitext(format_attack_style(monster['Immune to'])):done()
Line 70: Line 61:
row
row
:tag('td'):wikitext(table.concat(location_text, ', ')):done()
:tag('td'):wikitext(table.concat(location_text, ', ')):done()
:tag('td'):wikitext(formatNum(monster.Experience)):done()
:tag('td'):wikitext(monster.Experience):done()
:tag('td'):wikitext(formatNum(monster['Album XP'])):done()
:tag('td'):wikitext(monster['Album XP']):done()
end
end


Line 86: Line 77:
('[[Profession A::%s]]'):format(profession),
('[[Profession A::%s]]'):format(profession),
('[[Passive::%s]]'):format(passive and 'true' or 'false'),
('[[Passive::%s]]'):format(passive and 'true' or 'false'),
'[[Quest::!]]',
'?Image#70px;x70px',
'?Image#70px;x70px',
'?Unlock level',
'?Unlock level',
Line 95: Line 87:
'?Location JSON',
'?Location JSON',
'?Experience',
'?Experience',
'?Quest',
'?Variant of#-',
'sort=Profession Level A',
'sort=Profession Level A',
'order=asc'
'order=asc'
}
}

data = Array.filter(data, function(monster)
return monster.Quest == nil and monster[1] ~= '[[:Training Dummy|Training Dummy]]'
end)

local location_cache = {}


for _, monster in ipairs(data) do
for _, monster in ipairs(data) do
monster['Album XP'] = album_xp_data[monster['Profession Level A']]
monster['Album XP'] = album_xp_data[monster['Profession Level A']]
if monster['Location JSON'] == nil and monster['Variant of'] ~= nil then
local variant_cat = monster['Variant of']
if location_cache[variant_cat] == nil then
local of_variant = mw.smw.ask{
'[['..variant_cat..']]',
'?Location JSON'
}
location_cache[variant_cat] = of_variant and of_variant[1]['Location JSON']
end
monster['Location JSON'] = location_cache[variant_cat]
end
monster['Location JSON'] = mw.text.jsonDecode(monster['Location JSON'] or '{}')
monster['Location JSON'] = mw.text.jsonDecode(monster['Location JSON'] or '{}')
end
end
Please note that all contributions to Brighter Shores Wiki are considered to be released under the CC BY-NC-SA 3.0 (see Brighter Shores:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)
Preview page with this template

Template used on this page: