feat: extend tiles with Tiles.isLava and Tiles.isChasm
This commit is contained in:
1 parent
b7a55eabed
commit
598dfaf79e
3 files changed
+137
No files matched your search
@@ -0,0 +1,37 @@
|
||||
-- Renown-gated titles: a flavor rank meta.lua's own banked renown climbs
|
||||
-- through, one tier per crossed threshold, entirely separate from a
|
||||
-- character's class - a title describes how far this save file's whole
|
||||
-- history has come, not what any single run's build looked like.
|
||||
|
||||
local Titles = {}
|
||||
|
||||
Titles.LADDER = {
|
||||
{ threshold = 0, name = "Whelp" },
|
||||
{ threshold = 50, name = "Delver" },
|
||||
{ threshold = 150, name = "Warden" },
|
||||
{ threshold = 350, name = "Vanquisher" },
|
||||
{ threshold = 700, name = "Warren Lord" },
|
||||
{ threshold = 1500, name = "Undying" },
|
||||
}
|
||||
|
||||
-- The highest title whose threshold `renown` clears, walked from the top of
|
||||
-- the ladder down so a renown total that clears several thresholds at once
|
||||
-- always resolves to the hardest-earned name rather than the first match.
|
||||
function Titles.forRenown(renown)
|
||||
for i = #Titles.LADDER, 1, -1 do
|
||||
if renown >= Titles.LADDER[i].threshold then return Titles.LADDER[i].name end
|
||||
end
|
||||
return Titles.LADDER[1].name
|
||||
end
|
||||
|
||||
-- Renown still needed to clear the next threshold above `renown`, or nil
|
||||
-- once renown has already cleared the top of the ladder and there is
|
||||
-- nothing left to climb toward.
|
||||
function Titles.toNext(renown)
|
||||
for _, tier in ipairs(Titles.LADDER) do
|
||||
if renown < tier.threshold then return tier.threshold - renown end
|
||||
end
|
||||
return nil
|
||||
end
|
||||
|
||||
return Titles
|
||||
Reference in new issue
Block a user