Please note that some information on this wiki is still based on the demo version.
If you notice any errors, feel free to correct them.

Module:MonsterOnDay: Difference between revisions

From Super Fantasy Kingdom Official Wiki
wgg>Cadaei
tag fix
wgg>Cadaei
css class
Line 27: Line 27:
if dayForCurse < 1 then dayForCurse = '-' end
if dayForCurse < 1 then dayForCurse = '-' end
table.insert(dayRows, '<tr><td>[[File:Curse.png|16x16px|link=Curse]] [[Curse|C'..curse..']]</td><td class="right">'..dayForCurse..'</td></tr>')
table.insert(dayRows, '<tr><td>[[File:Curse.png|16x16px|link=Curse]] [[Curse|C'..curse..']]: </td><td class="right">'..dayForCurse..'</td></tr>')
end
end
return '<table class=plaintable">'..table.concat(dayRows, '')..'</table>'
return '<table class=plain-table">'..table.concat(dayRows, '')..'</table>'
end
end


return p
return p

Revision as of 14:00, 11 November 2023

Calculates on which days a monster appears first when the monster appearing rank is given (the day on the first appearance on curse 0 ignoring offsets by bosses) depending on on the curse level and the fixed boss days.

  • When a monster on curse 0 appears first on day 1 the rank is 1
  • When a monster on curse 0 appears first on day 8 the rank is 7 because the boss on day 7 is fixed without rank
{{MonsterOnDay|9}}
C0: 10
C1: 9
C2: 8
C3: 6
C4: 5
C5: 4

-- calculates on which days a monster appears first
-- when the monster appearing rank is given (the day on the first appearance on curse 0 ignoring offsets by bosses)
-- depending on
-- on the curse level and
-- the fixed boss days
-- e.g. when a monster on curse 0 appears first on day 1 the rank is 1
-- e.g. when a monster on curse 0 appears first on day 8 the rank is 7 because the boss on day 7 is fixed without rank

local p = {}

function p.calculate(f)
	local args = f:getParent().args
	local rank = tonumber(args[1])
	if rank == nil then
		return '<code>'..(args[1] or 'nil') .. '</code> is not a valid number for a appearance rank'
	end
	
	local displayDaysForCurse = {0, 1, 2, 3, 4, 5}
	
	local dayRows = {}
	
	for _,curse in ipairs(displayDaysForCurse) do
		local dayForCurse = rank - curse
		-- bosses appear on day 7 and 14, the monster day then is one day later
		if dayForCurse >= 7 then dayForCurse = dayForCurse + 1 end
		if dayForCurse >= 14 then dayForCurse = dayForCurse + 1 end
		if dayForCurse < 1 then dayForCurse = '-' end
		
		table.insert(dayRows, '<tr><td>[[File:Curse.png|16x16px|link=Curse]] [[Curse|C'..curse..']]: </td><td class="right">'..dayForCurse..'</td></tr>')
	end
	
	return '<table class=plain-table">'..table.concat(dayRows, '')..'</table>'
end

return p