74 lines
2.0 KiB
HTML
74 lines
2.0 KiB
HTML
<script>
|
|
function toHex(num) {
|
|
num = num.toString(16);
|
|
while (num.length < 2) num = "0" + num;
|
|
return num;
|
|
}
|
|
|
|
function convertToHex(str) {
|
|
hexstring = "";
|
|
for (var n = 0; n < str.length; n++) {
|
|
let hex = Number(str.charCodeAt(n)).toString(16);
|
|
hexstring = hexstring.concat(toHex(hex), ",");
|
|
}
|
|
return hexstring + "00";
|
|
}
|
|
|
|
function generate() {
|
|
let base0 = "1001";
|
|
let base1 = "00";
|
|
let name = document.getElementById("fname").value;
|
|
let region = "1";
|
|
let url = document.getElementById("furl").value;
|
|
|
|
let hexstring = convertToHex(base0);
|
|
hexstring = hexstring + "," + convertToHex(base1);
|
|
hexstring = hexstring + "," + convertToHex(name);
|
|
hexstring = hexstring + "," + convertToHex(region);
|
|
hexstring = hexstring + "," + convertToHex(url);
|
|
hexstring = hexstring + "," + "00";
|
|
|
|
let regscript =
|
|
`REGEDIT4
|
|
|
|
[HKEY_CURRENT_USER\\Software\\Blizzard Entertainment\\Warcraft III]
|
|
"Battle.net Gateways"=hex(7):${hexstring}
|
|
`;
|
|
|
|
document.getElementById("regscript").value = regscript;
|
|
}
|
|
|
|
|
|
function downloadReg() {
|
|
let filename = "wc3.reg";
|
|
let data = document.getElementById("regscript").value;
|
|
|
|
var element = document.createElement('a');
|
|
element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(data));
|
|
element.setAttribute('download', filename);
|
|
|
|
element.style.display = 'none';
|
|
document.body.appendChild(element);
|
|
|
|
element.click();
|
|
|
|
document.body.removeChild(element);
|
|
}
|
|
</script>
|
|
|
|
<label for="fname">Gateway Name (Nickname): </label><br>
|
|
<input type="text" id="fname" name="fname">
|
|
<br><br>
|
|
<label for="furl">PvPGN Server URL:</label><br>
|
|
<input type="text" id="furl" name="furl">
|
|
<br><br>
|
|
<form onclick="return generate();" class="my-form">
|
|
<input type="button" value="Generate">
|
|
</form>
|
|
<form onclick="return downloadReg();" class="my-form">
|
|
<input type="button" value="Download">
|
|
</form>
|
|
|
|
<label for="regscript">Registry Script:</label><br>
|
|
<textarea id="regscript" name="regscript" rows="10" cols="200"></textarea>
|