mirror of
https://git.crafterpika.cc/crafterpika/SplatTool-public.git
synced 2026-08-17 10:42:15 +02:00
239 lines
11 KiB
HTML
239 lines
11 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>SplatTool</title>
|
|
<link rel="stylesheet" href="style.css">
|
|
</head>
|
|
<body>
|
|
|
|
<h1 class="main-title">SplatTool Mod Menu</h1>
|
|
|
|
<div class="tabs-container">
|
|
<div class="tab-menu">
|
|
<button class="tab-link active" onclick="openTab(event, 'Tab1')">Player & Lobby</button>
|
|
<button class="tab-link" onclick="openTab(event, 'Tab8')">Save Editor</button>
|
|
<button class="tab-link" onclick="openTab(event, 'Tab9')">Equipment</button>
|
|
<button class="tab-link" onclick="openTab(event, 'Tab4')">Utilities</button>
|
|
<button class="tab-link" onclick="openTab(event, 'Tab5')">PID Grabber</button>
|
|
<button class="tab-link" onclick="openTab(event, 'Tab6')">Stats</button>
|
|
<button class="tab-link" onclick="openTab(event, 'Tab7')">About</button>
|
|
</div>
|
|
|
|
<div id="Tab1" class="tab-content active">
|
|
<div class="profile-card">
|
|
<div class="input-row">
|
|
<div class="input-group">
|
|
<span class="input-label">Name Changer:</span>
|
|
<input type="text" id="name-input" placeholder="Enter name..." autocomplete="off">
|
|
<button class="action-btn" onclick="namechange()">Apply</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<span class="input-label">Disconnect From Lobby:</span>
|
|
<div class="input-group">
|
|
<div class="spacer"></div> <button class="action-btn" onclick="execute('DisconnectLobby')">Apply</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="Tab8" class="tab-content">
|
|
<div class="profile-card">
|
|
<h3 style="margin-top: 0; font-size: 14px; color: var(--accent);">Gear Editor</h3>
|
|
<div class="input-row">
|
|
<span class="input-label">Category:</span>
|
|
<select id="gear-category" class="dropdown" style="flex: 1;" onchange="onCategoryChange()">
|
|
<option value="headgear">Headgear</option>
|
|
<option value="clothing">Clothing</option>
|
|
<option value="shoes">Shoes</option>
|
|
</select>
|
|
</div>
|
|
|
|
<div id="gear-selection-grid" class="pid-list" style="margin-bottom: 15px; border: 1px solid var(--border); padding: 5px;">
|
|
<p style="text-align: center; opacity: 0.5; width: 100%;">Select a category to load gear...</p>
|
|
</div>
|
|
|
|
<hr style="border: 0; border-top: 1px solid var(--border); margin: 15px 0;">
|
|
|
|
<div id="editor-fields">
|
|
<div class="input-row">
|
|
<span class="input-label">Item to Write:</span>
|
|
<select id="gear-item" class="dropdown" style="flex: 1;"></select>
|
|
</div>
|
|
<div class="input-row">
|
|
<span class="input-label">Slot Index:</span>
|
|
<input type="number" id="gear-slot-idx" value="0" readonly class="dropdown" style="width: 60px; opacity: 0.7;">
|
|
</div>
|
|
<div class="input-row">
|
|
<span class="input-label">Sub 1:</span>
|
|
<select id="ability-sub1" class="dropdown" style="flex: 1;"></select>
|
|
</div>
|
|
<div class="input-row">
|
|
<span class="input-label">Sub 2:</span>
|
|
<select id="ability-sub2" class="dropdown" style="flex: 1;"></select>
|
|
</div>
|
|
<div class="input-row">
|
|
<span class="input-label">Sub 3:</span>
|
|
<select id="ability-sub3" class="dropdown" style="flex: 1;"></select>
|
|
</div>
|
|
<div class="input-row">
|
|
<button id="gear-thread-btn" class="action-btn" style="flex: 1; background: #333;" onclick="toggleGearThread()">Write Queue</button>
|
|
<button class="action-btn" style="flex: 1;" onclick="applyGearChange()">Write to Queue</button>
|
|
</div>
|
|
</div>
|
|
<br><br>
|
|
<h3 style="margin-top: 0; font-size: 14px; color: var(--accent);">Player & Other</h3>
|
|
<div class="input-row">
|
|
<div class="label-stack">
|
|
<span class="input-label">Change Gender:</span>
|
|
</div>
|
|
<div class="input-group">
|
|
<select id="gender-select" class="dropdown" style="flex: 1;">
|
|
<option value="0">Girl</option>
|
|
<option value="1">Boy</option>
|
|
<option value="2">Octoling (Rival)</option>
|
|
</select>
|
|
<button class="action-btn" onclick="GenderChange()">Toggle Thread</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<div class="input-group">
|
|
<span class="input-label">Change Level:</span>
|
|
<input type="text" id="level-input" placeholder="50..." autocomplete="off">
|
|
<button class="action-btn" onclick="Level()">Toggle Thread</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<div class="input-group">
|
|
<span class="input-label">Change Cash:</span>
|
|
<input type="text" id="cash-input" placeholder="9999..." autocomplete="off">
|
|
<button class="action-btn" onclick="Cash()">Toggle Thread</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<div class="input-group">
|
|
<span class="input-label">Change Sea Snails:</span>
|
|
<input type="text" id="snails-input" placeholder="999..." autocomplete="off">
|
|
<button class="action-btn" onclick="SeaSnails()">Toggle Thread</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="Tab9" class="tab-content">
|
|
<div class="profile-card">
|
|
<div class="input-row">
|
|
<div class="label-stack">
|
|
<span class="input-label">Change Headgear:</span>
|
|
<span class="input-note">Changes Equipped Headgear.</span>
|
|
</div>
|
|
<div class="input-group">
|
|
<select id="headgear-sets" class="dropdown" style="flex: 1;"></select>
|
|
<button class="action-btn" onclick="changeHeadgear()">Toggle Thread</button>
|
|
<button class="action-btn" onclick="changeHeadgearApply()">Apply</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<div class="label-stack">
|
|
<span class="input-label">Change Clothes:</span>
|
|
<span class="input-note">Changes Clothes Headgear.</span>
|
|
</div>
|
|
<div class="input-group">
|
|
<select id="clothes-sets" class="dropdown" style="flex: 1;"></select>
|
|
<button class="action-btn" onclick="changeClothes()">Toggle Thread</button>
|
|
<button class="action-btn" onclick="changeClothesApply()">Apply</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<div class="label-stack">
|
|
<span class="input-label">Change Shoes:</span>
|
|
<span class="input-note">Changes Shoes Headgear.</span>
|
|
</div>
|
|
<div class="input-group">
|
|
<select id="shoes-sets" class="dropdown" style="flex: 1;"></select>
|
|
<button class="action-btn" onclick="changeShoes()">Toggle Thread</button>
|
|
<button class="action-btn" onclick="changeShoesApply()">Apply</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<div class="label-stack">
|
|
<span class="input-label">Change Weapon:</span>
|
|
<span class="input-note">Changes Equipped Weapon.</span>
|
|
</div>
|
|
<div class="input-group">
|
|
<select id="weapon-sets" class="dropdown" style="flex: 1;"></select>
|
|
<button class="action-btn" onclick="changeWeapon()">Toggle Thread</button>
|
|
<button class="action-btn" onclick="changeWeaponApply()">Apply</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="Tab4" class="tab-content">
|
|
<div class="profile-card">
|
|
<div class="input-row">
|
|
<div class="input-group">
|
|
<span class="input-label">Force Session ID:</span>
|
|
<input type="text" id="session-input" placeholder="Enter Session ID..." autocomplete="off">
|
|
<button class="action-btn" onclick="sessionid()">Toggle Thread</button>
|
|
</div>
|
|
</div>
|
|
<div class="input-row">
|
|
<div class="label-stack">
|
|
<span class="input-label">Dump faceimg.tga:</span>
|
|
<span class="input-note">Disable Anti-Telemetry.</span>
|
|
</div>
|
|
<div class="input-group">
|
|
<select id="format-select" class="dropdown" style="flex: 1;">
|
|
<option value="0">TGA</option>
|
|
<option value="1">PNG</option>
|
|
</select>
|
|
<button class="action-btn" onclick="faceimgtga();alert('faceimg.tga should be dumped.')">Dump</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="Tab5" class="tab-content">
|
|
<div class="profile-card">
|
|
<div class="input-row">
|
|
<span class="input-label">Session Control:</span>
|
|
<button class="action-btn" style="flex: 1;" onclick="fetchPids()">Fetch Current PIDs</button>
|
|
</div>
|
|
<div id="pid-display" class="pid-list">
|
|
<p style="text-align: center; opacity: 0.5; margin-top: 20px;">No data fetched yet.</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="Tab6" class="tab-content">
|
|
<div class="profile-card">
|
|
<h3 style="margin-top: 0;">Stats:</h3>
|
|
<div id="cbase">Waiting for fetch...</div>
|
|
<br><br>
|
|
<div class="input-row">
|
|
<div class="label-stack">
|
|
<span class="input-label">Webpost:</span>
|
|
<span class="input-note">Only works with SPFN.</span>
|
|
</div>
|
|
<div class="input-group">
|
|
<div class="spacer"></div> <button class="action-btn" onclick="execute('Webpost')">Toggle Thread</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="Tab7" class="tab-content">
|
|
<div class="profile-card">
|
|
<h3 style="margin-top: 0;">SplatTool v3.2.1</h3>
|
|
<div>Written by CrafterPika</div>
|
|
<div>Special Thanks: Winterberry, Javi.ig, Tombuntu, KittenTM, apoplexy</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="script.js"></script>
|
|
</body>
|
|
</html>
|