Anonymous
×
Create a new article
Write your page title here:
We currently have 496 articles on WIKI - Idle Pixel. Type your article name above or click on one of the titles below and start writing!



WIKI - Idle Pixel

Module:Breeding Enemy DB: Difference between revisions

No edit summary
No edit summary
Tag: Reverted
Line 1: Line 1:
return {
u = require("Module:Util")
edb = require("Module:Breeding_Enemy_DB")
adb = require("Module:Breeding_Area_DB")
lt = require("Module:Loot_Table")
inspect = require("Module:InspectLua")
local p = {}


-- Format: {Name, Area, Attack, HP, Difficult, {Loot1, Loot2, ...}},
function p.enemy_table(enemy)
    local result = [[]]
    if next(enemy[6]) == nil then
        return ''
    end
    return lt.lt(enemy[1],enemy[6])
end


-- Loot Format: {Name},
function p.enemy_stats(enemy)
return [[{{{!}} class="article-table"
! Enemy
!]] .. '[[File: Heart.png{{!}}20px]]' .. [[


-- Difficult: 1 = Normal, 2 = Hard and 3 = Very Hard
!]] .. '[[File: Attack.png{{!}}20px]]' .. [[


--Fields
{{!}}-
{"Squidshroom","Fields",1,5,1,{{"Red Mushroom"},{"Red Mushroom Cap"}}},
{{!}}]] .. '[[' .. [[File:Breeding]] .. lt.formatName(enemy[1]) .. 'Monster.png' .. [[{{!}}40px{{!}}link=]] .. enemy[1] .. ']]' .. [[
{"Snail","Fields",1,10,1,{{"Snail Sticky Glue"}}, {{"Small Snail Shell"}}, {{"Medium Snail Shell"}}, {{"Large Snail Shell"}}},


--Caves
{{!}}]] .. enemy[4] .. [[
}
 
{{!}}]] .. enemy[3] .. [[
 
{{!}}}
 
]] .. p.enemy_table(enemy)
end
 
function p.enemy_zone_tabber(areaEnemies)
    local enemies = {}
    local result = ""
    if type(areaEnemies) == 'string' then
        for _, enemy in ipairs(edb) do
            if enemy[2] == areaEnemies then
                table.insert(enemies, enemy)
            end
        end
    else
        enemies = areaEnemies
    end
    for index, e in ipairs(enemies) do
        result = result .. [[<htmltag tagname="input" type="radio" class="dTabsRadio" name="]] .. e[2] .. [[" id="]] .. e[1] .. [["]]
        if index == 1 then
result = result .. ' checked'
end
result = result .. [[></htmltag><htmltag tagname="label" for="]] .. e[1] .. [[" class="dTabsLabel">]] .. e[1] .. [[</htmltag>
<div class="dTabsContent dTabsSubcontent">
]] .. p.enemy_stats(e):gsub('|', '{{!}}') .. [[
</div>]]
    end
    return result
end
 
function p.enemy_all_tabber()
    local result = [[<div class="dTabs">]]
for idx, a in ipairs(adb) do
result = result .. '<htmltag tagname="input" type="radio" class="dTabsRadio" name="Areas" id="' .. a[1] .. '"'
if idx == 1 then
result = result .. ' checked'
end
result = result .. [[></htmltag><htmltag tagname="label" for="]] .. a[1] .. [[" class="dTabsLabel">]] .. a[1] .. [[</htmltag>
<div class="dTabsContent">]]
result = result .. p.enemy_zone_tabber(a[1]) .. [[</div>]]
    end
    return result .. [[</div>]]
end
 
function p.enemy_page_before(name)
    local enemy = nil
local l = ''
 
for _, e in ipairs(edb) do
l = l .. inspect(e)
if e[1] == name then
enemy = e
break
end
end
    return l
end
 
function p.enemy_page_after(name)
    local enemy = nil
    if type(name) == 'table' then
        enemy = name
        name = name[1]
    else
        for _, e in ipairs(edb) do
            if e[1] == name then
                enemy = e
                break
            end
        end
    end
    return [[{{Navbox Breeding Monsters}}
]] .. '[[Category:Breeding_' .. enemy[2] .. ']] [[Category:Breeding_Monsters]]' .. [[
]]
end
return p

Revision as of 19:48, 19 January 2025

Documentation for this module may be created at Module:Breeding Enemy DB/doc

u = require("Module:Util")
edb = require("Module:Breeding_Enemy_DB")
adb = require("Module:Breeding_Area_DB")
lt = require("Module:Loot_Table")
inspect = require("Module:InspectLua")
local p = {}

function p.enemy_table(enemy)
    local result = [[]]
    if next(enemy[6]) == nil then
        return ''
    end
    return lt.lt(enemy[1],enemy[6])
end

function p.enemy_stats(enemy)
	return [[{{{!}} class="article-table"
! Enemy
!]] .. '[[File: Heart.png{{!}}20px]]' .. [[

!]] .. '[[File: Attack.png{{!}}20px]]' .. [[

{{!}}-
{{!}}]] .. '[[' .. [[File:Breeding]] .. lt.formatName(enemy[1]) .. 'Monster.png' .. [[{{!}}40px{{!}}link=]] .. enemy[1] .. ']]' .. [[

{{!}}]] .. enemy[4] .. [[

{{!}}]] .. enemy[3] .. [[

{{!}}}

]] .. p.enemy_table(enemy)
end

function p.enemy_zone_tabber(areaEnemies)
    local enemies = {}
    local result = ""
    if type(areaEnemies) == 'string' then
        for _, enemy in ipairs(edb) do
            if enemy[2] == areaEnemies then
                table.insert(enemies, enemy)
            end
        end
    else
        enemies = areaEnemies
    end
    for index, e in ipairs(enemies) do
        result = result .. [[<htmltag tagname="input" type="radio" class="dTabsRadio" name="]] .. e[2] .. [[" id="]] .. e[1] .. [["]]
        if index == 1 then
			result = result .. ' checked'
		end
		result = result .. [[></htmltag><htmltag tagname="label" for="]] .. e[1] .. [[" class="dTabsLabel">]] .. e[1] .. [[</htmltag>
<div class="dTabsContent dTabsSubcontent">
]] .. p.enemy_stats(e):gsub('|', '{{!}}') .. [[
</div>]]
    end
    return result
end 

function p.enemy_all_tabber()
    local result = [[<div class="dTabs">]]
	for idx, a in ipairs(adb) do
		result = result .. '<htmltag tagname="input" type="radio" class="dTabsRadio" name="Areas" id="' .. a[1] .. '"'
		if idx == 1 then
			result = result .. ' checked'
		end
		result = result .. [[></htmltag><htmltag tagname="label" for="]] .. a[1] .. [[" class="dTabsLabel">]] .. a[1] .. [[</htmltag>
		<div class="dTabsContent">]]
		result = result .. p.enemy_zone_tabber(a[1]) .. [[</div>]]
    end
    return result .. [[</div>]]
end

function p.enemy_page_before(name)
    local enemy = nil
	local l = ''

	for _, e in ipairs(edb) do
		l = l .. inspect(e)
		if e[1] == name then
			enemy = e
			break
		end
	end
    return l
end

function p.enemy_page_after(name)
    local enemy = nil
    if type(name) == 'table' then
        enemy = name
        name = name[1]
    else
        for _, e in ipairs(edb) do
            if e[1] == name then
                enemy = e
                break
            end
        end
    end
    return [[{{Navbox Breeding Monsters}}
]] .. '[[Category:Breeding_' .. enemy[2] .. ']] [[Category:Breeding_Monsters]]' .. [[
]]
end
return p