Merge remote-tracking branch 'origin/main'

# Conflicts:
#	static/filterWeapons.js
#	static/operative.json
This commit is contained in:
IM23a-spirgif
2025-01-22 13:24:05 +01:00
11 changed files with 2451 additions and 203 deletions
+12 -2
View File
@@ -57,7 +57,7 @@
TRL Community with an easy go-to way to calculate DPS and DPM values to help players make informed decisions
about their gameplay. Whether you're fine-tuning your new Deathwish Strategy or simply curious about firearm
performance, we’ve got you covered. If you have suggestions, feedback, or want to contribute new stats or
features, we’d love to hear from you, just contact us on Discord!
features, we’d love to hear from you, just contact us on Discord or on the <a href="{{ url_for('suggestion') }}">Suggestion Page!</a>
</p>
<h2>Our Story</h2>
<p class="about_us_text">
@@ -85,7 +85,17 @@
(damage per second) and DPM (damage per minute) of each weapon via a formula that is also mentioned on Lanz1021' Spreadsheet.</p>
<p class="about_us_text"><b>How often are stats updated?</b></p>
<p class="about_us_text">We update the weapon stats every time a new update is released for TRL.</p><br>
<p class="about_us_text">We update the weapon stats every time a new update is released for TRL.</p>
<h2>Special Thanks</h2>
<p class="about_us_text">
<b>gameknight90999(holdenn/holdenisch)</b>: For telling me what Sandevistan does. (The wiki doesn't tell what it does, lol)<br>
<b>delete(real_delete)</b>: For the info about the 'Weapon Expert' perk (I don't know where else I would've found that).<br>
<b>Epicdragon99999999(epicdog999)</b>: For helping me categorize WW2 and Soviet weapons (I don't think I would've thought about the PKM)<br>
<b>NocturnalAndrea(nocturnalandrea)</b>: For helping me categorize Semi-auto weapons (again, why isn't this listed on the wiki?)<br>
<b>Kris HD(krishd1337)</b>: For the motivation and help with finding bugs.<br>
<b>Lanz1021</b>: For reviewing and giving feedback.<br>
<b>AND YOU!</b>: We are thankful for every visitor we get on this website, and we hope you're enjoying it!
</p>
<h3 class="about_us_text">Thank you for visiting <b>TRL Stats</b>.</h3>
</main>
</body>
+53 -7
View File
@@ -25,6 +25,22 @@
dropdownContent.style.display = "block";
}
}
// Collapsible functionality for perks, buffs, etc.
document.addEventListener('DOMContentLoaded', function () {
var coll = document.getElementsByClassName("collapsible-header");
for (var i = 0; i < coll.length; i++) {
coll[i].addEventListener("click", function () {
this.classList.toggle("active");
var content = this.nextElementSibling;
if (content.style.display === "block") {
content.style.display = "none";
} else {
content.style.display = "block";
}
});
}
});
</script>
</head>
<header>
@@ -53,19 +69,49 @@
</header>
<main>
<label for="weapon-select">Choose a weapon:</label>
<label for="weapon-search"></label>
<input type="text" id="weapon-search" placeholder="Search weapons..." onkeyup="filterWeapons()">
<br>
<label for="weapon-select"></label>
<select id="weapon-select" name="weapons">
<!-- Weapon options will be populated here dynamically -->
<option value="">Select a Weapon</option> <!-- This is the placeholder option -->
</select>
<br>
<div id="guntype-filters">
<label><input type="checkbox" id="primary" value="PRIMARY"> Primary</label>
<label><input type="checkbox" id="secondary" value="SECONDARY"> Secondary</label>
<label><input type="checkbox" id="ww2" value="WW2"> WW2</label>
<label><input type="checkbox" id="soviet" value="SOVIET"> Soviet</label>
<label><input type="checkbox" id="rifle" value="RIFLE"> Rifle</label>
<label><input type="checkbox" id="smg" value="SMG"> SMG</label>
<label><input type="checkbox" id="shotgun" value="SHOTGUN"> Shotgun</label>
<label><input type="checkbox" id="lmg" value="LMG"> LMG</label>
<label><input type="checkbox" id="pistol" value="PISTOL"> Pistol</label>
<label><input type="checkbox" id="special" value="SPECIAL"> Special</label>
<label><input type="checkbox" id="semi-auto" value="SEMI-AUTO"> Semi-Auto</label>
<!-- Add more gun types as needed -->
</div>
<!-- Weapon Stats will be displayed here -->
<label for="operative-search"></label>
<input type="text" id="operative-search" placeholder="Search operatives..." onkeyup="filterOperatives()">
<br>
<label for="operative-select"></label>
<select id="operative-select">
<option value="">Select an operative</option> <!-- This is the placeholder option -->
</select><br>
<!-- Weapon Stats Display -->
<div id="weapon-stats"></div>
<!-- Calculated DPS/DPM results will be shown here -->
<div id="calculated-stats"></div>
<!-- Modifier Checkboxes -->
<div id="modifiers"></div>
<h3>Operative Specific Modifiers</h3>
<div id="operative-modifiers"></div>
<!-- Modifiers Display -->
<div id="modifiers-container">
<div id="modifiers"></div> <!-- Items and Perks go here -->
<div id="abilities"></div> <!-- Abilities go here -->
</div>
<script src="{{ url_for('static', filename='filterWeapons.js') }}"></script>
-2
View File
@@ -55,13 +55,11 @@
<table id="gun-stats" class="background-roster">
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Damage</th>
<th>Rounds per minute</th>
<th>Magazine Size</th>
<th>Reload time</th>
<th>Gun type</th>
<th>RPS</th>
<th>DPS</th>
<th>DPM</th>
+4 -27
View File
@@ -63,34 +63,11 @@
<textarea id="text" name="text" rows="4" cols="50" placeholder="Enter your comments here..." minlength="5" maxlength="500" required></textarea><br><br>
</article>
<button class="button1" type="button" onclick="sendMessage()">Send</button>
<!-- Success message (initially hidden) -->
<p id="successMessage" style="display: none; color: green;"></p>
</main>
<script>
function sendMessage() {
const request = new XMLHttpRequest();
request.open("POST", "https://discord.com/api/webhooks/1284936894890901649/Zi-2ZV12L1v1OSBoM-DluE1V1LECXilrNNRZYJcxelnwO7rGgXNH47dxvfFEOK7Fe9_J");
request.setRequestHeader('Content-type', 'application/json');
// Get the values from the input fields
const pseudoname = document.getElementById("name").value || "Anonymous";
const rating = document.getElementById("rate").value;
const comment = document.getElementById("text").value;
// Create the content to send to the Discord webhook
const content = `**Pseudoname:** ${pseudoname}\n**Rating:** ${rating}\n**Comment:**\n${comment}`;
// Debugging information
console.log('Sending message with content:', content);
// Send the message payload to the Discord webhook
const params = {
username: pseudoname, // Pseudoname will appear as the username
content: content // The combined content (pseudoname, rating, and comment)
};
request.send(JSON.stringify(params));
}
</script>
<script src="{{ url_for('static', filename='suggestion.js') }}"></script>
</body>
</html>