Module:Sandbox/LVL: Difference between revisionsGive feedback
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 2: | Line 2: | ||
-- Get NPC data values (you may need to adjust these based on your wiki's implementation) | -- Get NPC data values (you may need to adjust these based on your wiki's implementation) | ||
local baseValue = | local baseValue = 164 -- This should match {{NpcData|neutral_sinners_sacrifice|GoldReward}} | ||
local bonusPercentPerMinute = 0. | local bonusPercentPerMinute = 0.0108 -- | ||
function p.calculatePayouts(frame) | function p.calculatePayouts(frame) | ||
local time = tonumber(frame.args[1]) or 0 | local time = tonumber(frame.args[1]) or 0 | ||
Revision as of 18:04, 16 November 2025
Documentation for this module may be created at Module:Sandbox/LVL/doc
local p = {}
-- Get NPC data values (you may need to adjust these based on your wiki's implementation)
local baseValue = 164 -- This should match {{NpcData|neutral_sinners_sacrifice|GoldReward}}
local bonusPercentPerMinute = 0.0108 --
function p.calculatePayouts(frame)
local time = tonumber(frame.args[1]) or 0
-- Calculate total soul value
local totalValue = math.floor((baseValue + (baseValue * bonusPercentPerMinute * time)) * 2)
-- Calculate individual payouts
local lightMelee = math.floor(totalValue / 20 + 0.5) -- Adding 0.5 for proper rounding
local heavyMelee = math.floor(totalValue / 10 + 0.5)
local finalHit = math.floor(totalValue / 2 + 0.5) + math.floor(totalValue / 10 + 0.5)
-- Return JSON format for easy parsing by JavaScript
return mw.text.jsonEncode({
total = totalValue,
light = lightMelee,
heavy = heavyMelee,
final = finalHit
})
end
return p