Difference between revisions of "User:DeletedUser010919/Sandbox5"

From Dragalia Lost Wiki
Jump to navigation Jump to search
>@DeletedUser41383047
>@DeletedUser41383047
 
(393 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Test
+
<includeonly>
|Title=Winds of Hope
+
<script>
|StartDate=November 15, 2018 6:00 AM UTC
+
RLQ.push( function() {
|EndDate=November 30, 2018 5:59 AM UTC
+
  $(document).ready(function() {
|Unit1=Louise
+
  load_cargo_data();
|Unit1Type=Adventurer
+
  });
|Unit2=Garuda
+
});
|Unit2Type=Dragon
+
 
|Unit3=Gentle Winds
+
var srcData;
|Unit3Type=Wyrmprint
+
 
|Unit4=Gale of Beauty
+
function load_cargo_data() {
|Unit4Type=Wyrmprint
+
  var srcUrl = 'https://dragalialost.gamepedia.com/api.php?action=cargoquery&tables=Skills&fields=_pageName=Name,Description1=Skill1,Description2=Skill2,Description3=Skill3,HideLevel3=Hidden&where=Description1+LIKE+"%recovery%20potency%"&format=json';
|Unit5=Lowen
+
  $.getJSON(srcUrl, function(returnData) { processSrcUrl(returnData.cargoquery); });
|Unit5Type=Adventurer
+
  function processSrcUrl(data) {
|Unit6=Roc
+
    srcData = data; // so you can access this variable in console for testing
|Unit6Type=Dragon
+
    populate_skill_box("Skill1");
|Unit7=Fresh Perspective
+
    showSkillValue();
|Unit7Type=Wyrmprint
+
    selectSkillLevel(document.getElementById("skillSelect").selectedIndex);
|Unit8=Sisters of the Anvil
+
  };
|Unit8Type=Wyrmprint
+
};
|Unit9=Pietro
+
 
|Unit9Type=Adventurer
+
function populate_skill_box(skillLevel) {
|Unit10Type=Wyrmprint
+
  var defaultSkill = document.getElementById("skillSelect").selectedIndex;
|Unit10=Garuda's Feathers
+
  document.getElementById("skillSelect").innerHTML = ""
}}
+
  var skillSelect = $("#skillSelect");
 +
  var skillCount = srcData.length;   
 +
  for (var i = 0; i < skillCount; i++) {
 +
    var opt = $("<option></option>");
 +
    opt.attr("value", srcData[i].title[skillLevel].match(/\d+/));
 +
    opt.html(srcData[i].title.Name);
 +
    skillSelect.append(opt);
 +
  }
 +
  $("#skillSelect option:eq(defaultSkill)").prop('selected', true);
 +
};
 +
 
 +
function selectSkillLevel(skill) {
 +
  document.getElementById("skillLevelSelect1").innerHTML = '<input type="radio" value=1 name="Skill Level" oninput="populate_skill_box(&quot;Skill1&quot;)" checked=1><label for="skillLevelSelect1">Lv.1</label>';
 +
  document.getElementById("skillLevelSelect2").innerHTML = '<input type="radio" value=2 name="Skill Level" oninput="populate_skill_box(&quot;Skill2&quot;)"><label for="skillLevelSelect2">Lv.2</label>';
 +
  if (srcData[skill].title.Hidden == 0) {
 +
    document.getElementById("skillLevelSelect3").innerHTML = '<input type="radio" value=3 name="Skill Level" oninput="populate_skill_box(&quot;Skill3&quot;)"><label for="skillLevelSelect3">Lv.3</label>';
 +
  } else {
 +
    document.getElementById("skillLevelSelect3").innerHTML = ""
 +
  }
 +
};
 +
 
 +
 
 +
function showSkillValue() {
 +
  var skillValue = document.getElementById("skillSelect")[document.getElementById("skillSelect").selectedIndex].value;
 +
  document.getElementById("skillSelectValue").innerHTML = skillValue;
 +
};
 +
 
 +
function calculate() {
 +
  var HP = document.getElementById('HP').value;
 +
  var STR = document.getElementById('STR').value;
 +
  var PTNCY = document.getElementById("skillSelect")[document.getElementById("skillSelect").selectedIndex].value / 100;
 +
  var PTNCYB = document.getElementById('PTNCYB').value / 100 + 1;
 +
  var COBUFF = document.getElementById("coAbility")[document.getElementById("coAbility").selectedIndex].value / 100 + 1;
 +
  if (document.getElementById('ELEM').checked) {
 +
    var EBUFF = 1.2;
 +
  } else {
 +
    var EBUFF = 1;
 +
  }
 +
  if (document.getElementById('RAID').checked) {
 +
    var TARG = 16;
 +
  } else {
 +
    var TARG = 4;
 +
  }
 +
  if (checkbox.checked) {
 +
    var DUR = document.getElementById('DUR').value;
 +
    var FREQ = document.getElementById('FREQ').value;
 +
    var REGEN = document.getElementById('REGEN').value / 100;
 +
    var TIMES = Math.floor(DUR/FREQ);
 +
    var RTOTAL = (((0.65*HP + 0.2*STR) * REGEN * PTNCYB * COBUFF) / TARG) * EBUFF * TIMES;
 +
    var TOTAL = (((0.65*HP + 0.2*STR) * PTNCY * PTNCYB * COBUFF) / TARG) * EBUFF + RTOTAL;
 +
  } else {
 +
    var TOTAL = (((0.65*HP + 0.2*STR) * PTNCY * PTNCYB * COBUFF) / TARG) * EBUFF;
 +
  }
 +
  document.getElementById("total").innerHTML = Math.floor(TOTAL);
 +
  console.log(TOTAL);
 +
}
 +
function display() {
 +
  var hot = document.getElementById("HOT");
 +
  if (document.getElementById('checkbox').checked) {
 +
    hot.style.display = "block";
 +
  } else {
 +
    hot.style.display = "none";
 +
  }
 +
}
 +
</script>
 +
<p>HP: <input type="number" id="HP" class="a"></p>
 +
<p>STR: <input type="number" id="STR" class='a'></p>
 +
<p>Skill: <select id="skillSelect" name="skillSelect" onclick="showSkillValue(); selectSkillLevel(document.getElementById('skillSelect').selectedIndex);"></select>
 +
<form id="skillLevelSelect" style="display:inline;">
 +
    <div id="skillLevelSelect1" style="display:inline;"></div>
 +
    <div id="skillLevelSelect2" style="display:inline;"></div>
 +
    <div id="skillLevelSelect3" style="display:inline;"></div>
 +
</form>
 +
<p>Potency %: <span id="skillSelectValue"></span></p>
 +
<p>Potency Buff %: <input type="number" id="PTNCYB" class='a'></p>
 +
<p>CoAbility %: <select id="coAbility" name="coAbility">
 +
  <option value="2">Recovery Potency +2%</option>
 +
  <option value="4">Recovery Potency +4%</option>
 +
  <option value="6">Recovery Potency +6%</option>
 +
  <option value="8">Recovery Potency +8%</option>
 +
  <option value="10">Recovery Potency +10%</option>
 +
  <option value="12">Recovery Potency +12%</option>
 +
  <option value="14">Recovery Potency +14%</option>
 +
  <option value="16">Recovery Potency +16%</option>
 +
  <option value="20">Recovery Potency +20%</option>
 +
</select>
 +
</p>
 +
<p>Same Element?: <input type="checkbox" id="ELEM"> Check for yes.</p>
 +
<p>Raid?: <input type= "checkbox" id="RAID">Check for yes.</p>
 +
<p>Include Healing Over Time?<input type="checkbox" id="checkbox" onclick="display()">Check for yes.</p>
 +
<div id="HOT" style="display:none">
 +
  <p>REGEN%: <input type="number" id="REGEN" class='a'></p>
 +
  <p>DURATION: <input type="number" id="DUR"class='a'></p>
 +
  <p>HEAL FREQUENCY: <input type="number" id="FREQ"class='a'></p>
 +
</div>
 +
<p>Total Heal:</p>
 +
<p id="total"> </p>
 +
<button onclick="calculate()">Calculate</button>
 +
</includeonly>

Latest revision as of 23:48, 29 November 2018