User:XTCarnage/common.js: Difference between revisions
From Idle Clans wiki
mNo edit summary |
mNo edit summary |
||
Line 47: | Line 47: | ||
var actionsPerDay = 24 * 3600 / adjustedTime; | var actionsPerDay = 24 * 3600 / adjustedTime; | ||
var chancePerDay = 1 - Math.pow(((1 - percentageChance)), actionsPerDay); | var chancePerDay = 1 - Math.pow(((1 - percentageChance)), actionsPerDay); | ||
$(this).text(chancePerDay.toFixed( | $(this).text((chancePerDay * 100).toFixed(2) + "%"); | ||
}); | }); | ||
$(".average-hours").each(function() { | $(".average-hours").each(function() { |
Revision as of 18:21, 19 February 2025
mw.loader.using(['jquery'], function() { $(document).ready(function() { // Create the slider var slider = $('<input type="range" min="0" max="100" value="0" id="time-slider">'); var sliderLabel = $('<p>Adjust Production Time: <span id="slider-value">0</span>%</p>'); // Append slider to the page $(".mw-slider-md").append(sliderLabel).append(slider); $(".chance-per-action").each(function() { var levelRequirement = $(this).data("level"); var percentageChance = 1.2 * 0.000005 * ((levelRequirement / 10) * 1.033) var textChance = "1 in " + Math.ceil(1 / percentageChance).toLocaleString(); $(this).text(textChance); }); $(".chance-per-day").each(function() { var levelRequirement = $(this).data("level"); var time = $(this).data("time") / 100; var percentageChance = 1.2 * 0.000005 * ((levelRequirement / 10) * 1.033); var adjustedTime = time * (1 - slider.val() / 100) var actionsPerDay = 24 * 3600 / adjustedTime; var chancePerDay = 1 - Math.pow(((1 - percentageChance)), actionsPerDay); $(this).text((chancePerDay * 100).toFixed(2) + "%"); }); $(".average-hours").each(function() { var levelRequirement = $(this).data("level"); var time = $(this).data("time") / 100; var percentageChance = 1.2 * 0.000005 * ((levelRequirement / 10) * 1.033); var adjustedTime = time * (1 - slider.val() / 100) var averageHours = 100 / percentageChance / 100 / 3600 * adjustedTime; $(this).text(averageHours.toFixed(0)); }); // Update the table values when the slider is moved slider.on("input", function() { var sliderValue = $(this).val(); $("#slider-value").text(sliderValue); $(".chance-per-day").each(function() { var levelRequirement = $(this).data("level"); var time = $(this).data("time") / 100; var percentageChance = 1.2 * 0.000005 * ((levelRequirement / 10) * 1.033); var adjustedTime = time * (1 - slider.val() / 100) var actionsPerDay = 24 * 3600 / adjustedTime; var chancePerDay = 1 - Math.pow(((1 - percentageChance)), actionsPerDay); $(this).text((chancePerDay * 100).toFixed(2) + "%"); }); $(".average-hours").each(function() { var levelRequirement = $(this).data("level"); var time = $(this).data("time") / 100; var percentageChance = 1.2 * 0.000005 * ((levelRequirement / 10) * 1.033); var adjustedTime = time * (1 - slider.val() / 100) var averageHours = 100 / percentageChance / 100 / 3600 * adjustedTime; $(this).text(averageHours.toFixed(0)); }); }); }); });