Module:DropsLineTest: Difference between revisions

From Roat Pkz
Jump to navigation Jump to search
No edit summary
Tag: Reverted
No edit summary
 
(61 intermediate revisions by the same user not shown)
Line 1: Line 1:
local p = {}
local p = {}


function p.determineColor(r)
-- Define a function to generate output numbers based on the input
     r = tonumber(r) or 0 -- Convert r to a number or default to 0 if nil
function p.generateOutput(frame)
     if r <= 1 then
     local inputNumber = tonumber(frame.args[1]) or 0
        return "#afeeee"
     local output = {}
    elseif r <= 25 then
        return "#56e156"
    elseif r <= 100 then
        return "#ffed4c"
    elseif r <= 1000 then
        return "#ff863c"
    elseif r <= 9999999 then
        return "#ff6262"
    else
        return "#ffffff"
    end
end


function p.calculateIncreasedRates(r)
     -- Add the input number
     local rates = {}
    table.insert(output, "\" | 1/" .. inputNumber)
    for i = 2, 6 do
        local percentageBoost = (i - 1) * 0.15 -- Calculate the percentage boost
        local increasedRate = r * (1 + percentageBoost) -- Calculate the increased drop rate
        rates[i] = increasedRate
    end
    return rates
end


function p.determineCellStyle(r, n)
    -- Calculate percentages and choose color based on the percentage
     r = tonumber(r) or 0 -- Convert r to a number or default to 0 if nil
     local percentages = {0.85, 0.75, 0.70, 0.65, 0.60} -- Percentages
     local color
     local colors = {"#ff9999", "#7aa7ff", "#d699ff", "#fff59e", "#b3f1ff"} -- Corresponding colors
     if n == 1 then
      
        color = p.determineColor(r)
    for i, percent in ipairs(percentages) do
    else
         local value = math.floor(inputNumber * percent)
         local increasedRates = p.calculateIncreasedRates(r)
         local color = colors[i]
         local increasedRate = increasedRates[n] or 0 -- Get the corresponding increased rate
         table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. value)
         color = p.determineColor(increasedRate)
     end
     end
     return string.format('style="background-color: %s;"', color)
   
     return table.concat(output, '\n')
end
end


return p
return p

Latest revision as of 17:59, 7 May 2024

Documentation for this module may be created at Module:DropsLineTest/doc

local p = {}

-- Define a function to generate output numbers based on the input
function p.generateOutput(frame)
    local inputNumber = tonumber(frame.args[1]) or 0
    local output = {}

    -- Add the input number
    table.insert(output, "\" | 1/" .. inputNumber)

    -- Calculate percentages and choose color based on the percentage
    local percentages = {0.85, 0.75, 0.70, 0.65, 0.60} -- Percentages
    local colors = {"#ff9999", "#7aa7ff", "#d699ff", "#fff59e", "#b3f1ff"} -- Corresponding colors
    
    for i, percent in ipairs(percentages) do
        local value = math.floor(inputNumber * percent)
        local color = colors[i]
        table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. value)
    end
    
    return table.concat(output, '\n')
end

return p