569 lines
31 KiB
HTML
569 lines
31 KiB
HTML
<!DOCTYPE html>
|
|
<html scroll-behavior="smooth">
|
|
<head>
|
|
<!-- nunito font, copying wynndata -->
|
|
<link rel="preconnect" href="https://fonts.gstatic.com">
|
|
<link href="https://fonts.googleapis.com/css2?family=Nunito&display=swap" rel="stylesheet">
|
|
|
|
<link rel="stylesheet" href="styles.css">
|
|
<link rel="stylesheet" media="screen and (min-width: 1100px)" href="wide.css"/>
|
|
<link rel="stylesheet" media="screen and (max-width: 1099px)" href="narrow.css"/>
|
|
<link rel="icon" href="favicon.png">
|
|
<link rel="manifest" href="manifest.json">
|
|
<title>Wynn Clientside</title>
|
|
</head>
|
|
<body class="all">
|
|
<div class="header" id="header">
|
|
Wynn build calculator
|
|
</div>
|
|
<div class="summary">
|
|
<div class="equipment" style="grid-column:1/span 2;grid-row:1">
|
|
<div style="grid-column:1/span 2;grid-row:1">
|
|
<table>
|
|
<tr>
|
|
<th class="center title">
|
|
<label>Equipment</label>
|
|
</th>
|
|
<th class="center title">
|
|
<label>Powdering</label>
|
|
</th>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="helmet-choice">Helmet:</label>
|
|
<input class="iteminput" list="helmet-items" id="helmet-choice" name="helmet-choice" placeholder="No Helmet"/>
|
|
<datalist id="helmet-items">
|
|
</datalist>
|
|
</td>
|
|
<td class="left">
|
|
<label id="helmet-slots" for="helmet-powder">X slots</label>
|
|
<input class="iteminput" type="text" id="helmet-powder" name="helmet-powder" placeholder="Example: t6t6"/>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="chestplate-choice">Chestplate:</label>
|
|
<input class="iteminput" list="chestplate-items" id="chestplate-choice" name="chestplate-choice" placeholder="No Chestplate" />
|
|
<datalist id="chestplate-items">
|
|
</datalist>
|
|
</td>
|
|
<td class="left">
|
|
<label id="chestplate-slots" for="chestplate-powder">X slots</label>
|
|
<input class="iteminput" type="text" id="chestplate-powder" name="chestplate-powder" />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="leggings-choice">Leggings:</label>
|
|
<input class="iteminput" list="leggings-items" id="leggings-choice" name="leggings-choice" placeholder="No Leggings" />
|
|
<datalist id="leggings-items">
|
|
</datalist>
|
|
</td>
|
|
<td class="left">
|
|
<label id="leggings-slots" for="leggings-powder">X slots</label>
|
|
<input class="iteminput" type="text" id="leggings-powder" name="leggings-powder" />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="boots-choice">Boots:</label>
|
|
<input class="iteminput" list="boots-items" id="boots-choice" name="boots-choice" placeholder="No Boots" />
|
|
<datalist id="boots-items">
|
|
</datalist>
|
|
</td>
|
|
<td class="left">
|
|
<label id="boots-slots" for="boots-powder">X slots</label>
|
|
<input class="iteminput" type="text" id="boots-powder" name="boots-powder" />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<br>
|
|
<label for="weapon-choice">Weapon:</label>
|
|
<input class="iteminput" list="weapon-items" id="weapon-choice" name="weapon-choice" placeholder="No Weapon" value=""/>
|
|
<datalist id="weapon-items">
|
|
</datalist>
|
|
</td>
|
|
<td class="left">
|
|
<br>
|
|
<label id="weapon-slots" for="weapon-powder">X slots</label>
|
|
<input class="iteminput" type="text" id="weapon-powder" name="weapon-powder" />
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div style="grid-column:3/span 1;grid-row:1">
|
|
<table>
|
|
<tr>
|
|
<th class="center title">
|
|
<label>Accessories</label>
|
|
</th>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="ring1-choice">Ring 1:</label>
|
|
<input class="iteminput" list="ring1-items" id="ring1-choice" name="ring1-choice" placeholder="No Ring 1"/>
|
|
<datalist id="ring1-items">
|
|
</datalist>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="ring2-choice">Ring 2:</label>
|
|
<input class="iteminput" list="ring2-items" id="ring2-choice" name="ring2-choice" placeholder="No Ring 2" />
|
|
<datalist id="ring2-items">
|
|
</datalist>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="bracelet-choice">Bracelet:</label>
|
|
<input class="iteminput" list="bracelet-items" id="bracelet-choice" name="bracelet-choice" placeholder="No Bracelet" />
|
|
<datalist id="bracelet-items">
|
|
</datalist>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<label for="necklace-choice">Necklace:</label>
|
|
<input class="iteminput" list="necklace-items" id="necklace-choice" name="necklace-choice" placeholder="No Necklace"/>
|
|
<datalist id="necklace-items">
|
|
</datalist>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="left">
|
|
<br/>
|
|
<label for="level-choice">Level:</label>
|
|
<input class="iteminput" id="level-choice" name="level-choice" placeholder="106" value=""/>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="center" style="grid-column:1/span 3;grid-row:2">
|
|
<table>
|
|
<tr>
|
|
<td>
|
|
<br/>
|
|
<button class = "button" id = "calc-button" onclick = "calculateBuild()">
|
|
Update Items
|
|
</button>
|
|
</td>
|
|
<td>
|
|
<br/>
|
|
<button class = "button" id = "reset-button" onclick = "resetFields()">
|
|
Reset
|
|
</button>
|
|
</td>
|
|
<td>
|
|
<br/>
|
|
<button class = "button" id = "copy-button" onclick = "copyBuild()">
|
|
Copy Short
|
|
</button>
|
|
</td>
|
|
<td>
|
|
<br/>
|
|
<button class = "button" id = "share-button" onclick = "shareBuild()">
|
|
Copy For Sharing
|
|
</button>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="center" style="grid-column:1/span 3;grid-row:3">
|
|
<br><br>
|
|
<div class="nomargin" id="summary-box">
|
|
|
|
</div>
|
|
<br><br>
|
|
<div class="externalBuffs" id="buff-box">
|
|
<table>
|
|
<tr>
|
|
<p class = "buffs-title itemp title">
|
|
Spell Boosts & Powder Specials:
|
|
</p>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button class = "button" id = "vanish-boost" onclick = "updateBoosts('vanish-boost')">
|
|
Vanish Boost (+80%)
|
|
</button>
|
|
</td>
|
|
<td>
|
|
<button class = "button" id = "warscream-boost" onclick = "updateBoosts('warscream-boost')">
|
|
War Scream (+10%)
|
|
</button>
|
|
</td>
|
|
<td>
|
|
<button class = "button" id = "yourtotem-boost" onclick = "updateBoosts('yourtotem-boost')">
|
|
Your Totem (+35%)
|
|
</button>
|
|
</td>
|
|
<td>
|
|
<button class = "button" id = "allytotem-boost" onclick = "updateBoosts('allytotem-boost')">
|
|
Ally Totem (+15%)
|
|
</button>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<div class = "powder-specials">
|
|
<div class = "powder-special-stats" style = "grid-column:1;grid-row:1">
|
|
<div class = "center" id = "powder-special-stats">
|
|
<p class = "itemp">Powder Specials</p>
|
|
</div>
|
|
</div>
|
|
<div style = "grid-column:2;grid-row:1">
|
|
<div class = "powder-special" style = "grid-column:2;grid-row:1">
|
|
<div class = "center" id = "powder-special">
|
|
<p class = "itemp Earth">
|
|
Quake
|
|
</p>
|
|
<p class = "Quake itemp" id = "Quake">
|
|
<b>
|
|
<button class = "button" id = "Quake-1" onclick = "updatePowderSpecials('Quake-1')">
|
|
4
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Quake-2" onclick = "updatePowderSpecials('Quake-2')">
|
|
4.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Quake-3" onclick = "updatePowderSpecials('Quake-3')">
|
|
5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Quake-4" onclick = "updatePowderSpecials('Quake-4')">
|
|
5.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Quake-5" onclick = "updatePowderSpecials('Quake-5')">
|
|
6
|
|
</button>
|
|
</b>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class = "powder-special" style = "grid-column:2;grid-row:2">
|
|
<div class = "center" id = "powder-special">
|
|
<p class = "itemp Thunder">
|
|
Chain Lightning
|
|
</p>
|
|
<p class = "Chain_Lightning itemp" id = "Chain_Lightning">
|
|
<b>
|
|
<button class = "button" id = "Chain_Lightning-1" onclick = "updatePowderSpecials('Chain_Lightning-1')">
|
|
4
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Chain_Lightning-2" onclick = "updatePowderSpecials('Chain_Lightning-2')">
|
|
4.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Chain_Lightning-3" onclick = "updatePowderSpecials('Chain_Lightning-3')">
|
|
5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Chain_Lightning-4" onclick = "updatePowderSpecials('Chain_Lightning-4')">
|
|
5.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Chain_Lightning-5" onclick = "updatePowderSpecials('Chain_Lightning-5')">
|
|
6
|
|
</button>
|
|
</b>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class = "powder-special" style = "grid-column:2;grid-row:3">
|
|
<div class = "center" id = "powder-special">
|
|
<p class = "itemp Water">
|
|
Curse
|
|
</p>
|
|
<p class = "Curse itemp" id = "Curse">
|
|
<b>
|
|
<button class = "button" id = "Curse-1" onclick = "updatePowderSpecials('Curse-1')">
|
|
4
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Curse-2" onclick = "updatePowderSpecials('Curse-2')">
|
|
4.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Curse-3" onclick = "updatePowderSpecials('Curse-3')">
|
|
5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Curse-4" onclick = "updatePowderSpecials('Curse-4')">
|
|
5.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Curse-5" onclick = "updatePowderSpecials('Curse-5')">
|
|
6
|
|
</button>
|
|
</b>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class = "powder-special" style = "grid-column:2;grid-row:4">
|
|
<div class = "center" id = "powder-special">
|
|
<p class = "itemp Fire">
|
|
Courage
|
|
</p>
|
|
<p class = "Courage itemp" id = "Courage">
|
|
<b>
|
|
<button class = "button" id = "Courage-1" onclick = "updatePowderSpecials('Courage-1')">
|
|
4
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Courage-2" onclick = "updatePowderSpecials('Courage-2')">
|
|
4.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Courage-3" onclick = "updatePowderSpecials('Courage-3')">
|
|
5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Courage-4" onclick = "updatePowderSpecials('Courage-4')">
|
|
5.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Courage-5" onclick = "updatePowderSpecials('Courage-5')">
|
|
6
|
|
</button>
|
|
</b>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class = "powder-special" style = "grid-column:2;grid-row:5">
|
|
<div class = "center" id = "powder-special">
|
|
<p class = "itemp Air">
|
|
Air Prison
|
|
</p>
|
|
<p class = "Air_Prison itemp" id = "Air_Prison">
|
|
<b>
|
|
<button class = "button" id = "Air_Prison-1" onclick = "updatePowderSpecials('Air_Prison-1')">
|
|
4
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Air_Prison-2" onclick = "updatePowderSpecials('Air_Prison-2')">
|
|
4.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Air_Prison-3" onclick = "updatePowderSpecials('Air_Prison-3')">
|
|
5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Air_Prison-4" onclick = "updatePowderSpecials('Air_Prison-4')">
|
|
5.5
|
|
</button>
|
|
</b>
|
|
<b>
|
|
<button class = "button" id = "Air_Prison-5" onclick = "updatePowderSpecials('Air_Prison-5')">
|
|
6
|
|
</button>
|
|
</b>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="build-overall-container hide-container" style="visibility: hidden;">
|
|
<div class = "center build-overall" id = "build-overall">
|
|
<br/>
|
|
<div class = "center" id = "build-overall-stats"></div>
|
|
</div>
|
|
</div>
|
|
<div class="spell-info-container hide-container" style="visibility: hidden;">
|
|
<div class="spell-info">
|
|
<div class="center" id="build-melee-statsAvg">melee</div>
|
|
</div>
|
|
<div class="spell-info">
|
|
<div class="center" id="spell0-infoAvg">spell1</div>
|
|
</div>
|
|
<div class="spell-info">
|
|
<div class="center" id="spell1-infoAvg">spell2</div>
|
|
</div>
|
|
<div class="spell-info">
|
|
<div class="center" id="spell2-infoAvg">spell3</div>
|
|
</div>
|
|
<div class="spell-info">
|
|
<div class="center" id="spell3-infoAvg">spell4</div>
|
|
</div>
|
|
<div class="spell-info">
|
|
<div class="center" id="build-poison-stats">poison</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="skillpoints">
|
|
<div class="center" style="grid-column:1;grid-row:1">
|
|
<div>
|
|
<label for="str-skp" class="skpLabel" id="str-skp-label">Strength:</label><br>
|
|
<input class="skp-input" type="number" id="str-skp" name="str-skp" value="0" class="skpInput"/>
|
|
</div>
|
|
<div id="str-skp-assign">
|
|
Manually Assigned: 0
|
|
</div>
|
|
<div id="str-skp-base">
|
|
Original Value: 0
|
|
</div>
|
|
<div id ="str-skp-pct">
|
|
</div>
|
|
</div>
|
|
<div class="center" style="grid-column:2;grid-row:1">
|
|
<div>
|
|
<label for="dex-skp" class="skpLabel" id="dex-skp-label">Dexterity:</label><br>
|
|
<input class="skp-input" type="number" id="dex-skp" name="dex-skp" value="0" class="skpInput"/>
|
|
</div>
|
|
<div id="dex-skp-assign">
|
|
Manually Assigned: 0
|
|
</div>
|
|
<div id="dex-skp-base">
|
|
Original Value: 0
|
|
</div>
|
|
<div id ="dex-skp-pct">
|
|
</div>
|
|
</div>
|
|
<div class="center" style="grid-column:3;grid-row:1">
|
|
<div>
|
|
<label for="int-skp" class="skpLabel" id="int-skp-label">Intelligence:</label><br>
|
|
<input class="skp-input" type="number" id="int-skp" name="int-skp" value="0" class="skpInput"/>
|
|
</div>
|
|
<div id="int-skp-assign">
|
|
Manually Assigned: 0
|
|
</div>
|
|
<div id="int-skp-base">
|
|
Original Value: 0
|
|
</div>
|
|
<div id ="int-skp-pct">
|
|
</div>
|
|
</div>
|
|
<div class="center" style="grid-column:4;grid-row:1">
|
|
<div>
|
|
<label for="def-skp" class="skpLabel" id="def-skp-label">Defense:</label><br>
|
|
<input class="skp-input" type="number" id="def-skp" name="def-skp" value="0" class="skpInput"/>
|
|
</div>
|
|
<div id="def-skp-assign">
|
|
Manually Assigned: 0
|
|
</div>
|
|
<div id="def-skp-base">
|
|
Original Value: 0
|
|
</div>
|
|
<div id ="def-skp-pct">
|
|
</div>
|
|
</div>
|
|
<div class="center" style="grid-column:5;grid-row:1">
|
|
<div>
|
|
<label for="agi-skp" class="skpLabel" id="agi-skp-label">Agility:</label><br>
|
|
<input class="skp-input" type="number" id="agi-skp" name="agi-skp" value="0" class="skpInput"/>
|
|
</div>
|
|
<div id="agi-skp-assign">
|
|
Manually Assigned: 0
|
|
</div>
|
|
<div id="agi-skp-base">
|
|
Original Value: 0
|
|
</div>
|
|
<div id ="agi-skp-pct">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="center">
|
|
<button class = "button" id = "update-button" onclick = "updateStats()">
|
|
Update Stats
|
|
</button>
|
|
</div>
|
|
<div class = "build">
|
|
<div class = "center build-helmet" id = "build-helmet" style = "grid-item-1">
|
|
<div class = "center" id = "build-helmet-stats"></div>
|
|
</div>
|
|
<div class = "center build-chestplate" id = "build-chestplate" style = "grid-item-2">
|
|
<div class = "center" id = "build-chestplate-stats"></div>
|
|
</div>
|
|
<div class = "center build-leggings" id = "build-leggings" style = "grid-item-3">
|
|
<div class = "center" id = "build-leggings-stats"></div>
|
|
</div>
|
|
<div class = "center build-boots" id = "build-boots" style = "grid-item-4">
|
|
<div class = "center" id = "build-boots-stats"></div>
|
|
</div>
|
|
<div class = "center build-ring1" id = "build-ring1" style = "grid-item-5">
|
|
<div class = "center" id = "build-ring1-stats"></div>
|
|
</div>
|
|
<div class = "center build-ring2" id = "build-ring2" style = "grid-item-6">
|
|
<div class = "center" id = "build-ring2-stats"></div>
|
|
</div>
|
|
<div class = "center build-leggings" id = "build-bracelet" style = "grid-item-7">
|
|
<div class = "center" id = "build-bracelet-stats"></div>
|
|
</div>
|
|
<div class = "center build-boots" id = "build-necklace" style = "grid-item-8">
|
|
<div class = "center" id = "build-necklace-stats"></div>
|
|
</div>
|
|
<div class = "center build-weapon" id = "build-weapon" style = "grid-item-9">
|
|
<div class = "center" id = "build-weapon-stats"></div>
|
|
</div>
|
|
<div class = "center build-order" id = "build-order" style = "grid-item-10">
|
|
</div>
|
|
<div class = "center build-melee-stats" id = "build-melee-stats" style = "grid-item-11">
|
|
</div>
|
|
<div class = "center build-defense-stats" id = "build-defense-stats" style = "grid-item-12">
|
|
</div>
|
|
</div>
|
|
<div class = "spells">
|
|
<div class = "center spell-info" id = "spell0" style = "grid-item-1">
|
|
<!--div class = "center" id = "spell0-name">Spell 1</div-->
|
|
<div class = "center" id = "spell0-info">Spell 1</div>
|
|
</div>
|
|
<div class = "center spell-info" id = "spell1" style = "grid-item-2">
|
|
<!--div class = "center" id = "spell1-name">Spell 2</div-->
|
|
<div class = "center" id = "spell1-info">Spell 2</div>
|
|
</div>
|
|
<div class = "center spell-info" id = "spell2" style = "grid-item-3">
|
|
<!--div class = "center" id = "spell2-name">Spell 3</div-->
|
|
<div class = "center" id = "spell2-info">Spell 3</div>
|
|
</div>
|
|
<div class = "center spell-info" id = "spell3" style = "grid-item-4">
|
|
<!--div class = "center" id = "spell3-name">Spell 4</div-->
|
|
<div class = "center" id = "spell3-info">Spell 4</div>
|
|
</div>
|
|
</div>
|
|
<div class="misc">
|
|
<div class = "center set-info" id = "set-info-div" style = "grid-column:1;grid-row:1; visibility: hidden;">
|
|
<div class = "center" id = "set-info">Set info</div>
|
|
</div>
|
|
</div>
|
|
<div class="center" id="header2">
|
|
<p>Made by <b class = "hppeng">hppeng</b> and <b class = "ferricles">ferricles</b> with Atlas Inc (JavaScript required to function, nothing works without js)</p>
|
|
<p>Hard refresh the page (Ctrl+Shift+R on windows/chrome) if it isn't updating correctly.</p>
|
|
</div>
|
|
<div class="center" id="credits">
|
|
<a href="credits.txt" class="link">Additional credits</a>
|
|
</div>
|
|
|
|
<script type="text/javascript" src="utils.js"></script>
|
|
<script type="text/javascript" src="skillpoints.js"></script>
|
|
<script type="text/javascript" src="damage_calc.js"></script>
|
|
<script type="text/javascript" src="display.js"></script>
|
|
<script type="text/javascript" src="build.js"></script>
|
|
<script type="text/javascript" src="load.js"></script>
|
|
<script type="text/javascript" src="builder.js"></script>
|
|
</body>
|
|
</html>
|