您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Bring an element of surprise to your tank customization experience with the Tank Randomizer!
当前为
// ==UserScript== // @name Tank-Randomizer // @author Kamarov // @description Bring an element of surprise to your tank customization experience with the Tank Randomizer! // @version 0.1.0 // @namespace https://github.com/kamarov-therussiantank // @license GPL-3.0 // @match https://*.tanktrouble.com/* // @desc Randomize your tank in style! // @run-at document-end // @grant GM_addStyle // @require https://update.greasyfork.org/scripts/482092/1297984/TankTrouble%20Development%20Library.js // @noframes // ==/UserScript== GM_addStyle(` .randomize-button { margin-bottom: 10px; } `); whenContentInitialized().then(() => { var id = Users.getAllPlayerIds()[0]; var turret = []; var back = []; var barrel = []; var front = []; var colours = []; var baseColor = ''; function randomize() { randomizePaint(); randomizeTankcessories(); } function randomizeTankcessories() { randomizeTankcessoriesA(); } function randomizeTankcessoriesA() { Backend.getInstance().setAccessory( function (result) { Users.updateUser(id, true, false); }, null, null, id, 'back', back[Math.floor(Math.random() * back.length)], Caches.getPlayerDetailsCache() ); Backend.getInstance().setAccessory( function (result) { Users.updateUser(id, true, false); }, null, null, id, 'turret', turret[Math.floor(Math.random() * turret.length)], Caches.getPlayerDetailsCache() ); Backend.getInstance().setAccessory( function (result) { Users.updateUser(id, true, false); }, null, null, id, 'front', front[Math.floor(Math.random() * front.length)], Caches.getPlayerDetailsCache() ); Backend.getInstance().setAccessory( function (result) { Users.updateUser(id, true, false); }, null, null, id, 'tread', Math.floor(Math.random() * 25) + 1, Caches.getPlayerDetailsCache() ); Backend.getInstance().setAccessory( function (result) { Users.updateUser(id, true, false); }, null, null, id, 'barrel', barrel[Math.floor(Math.random() * barrel.length)], Caches.getPlayerDetailsCache() ); } function randomizePaint() { randomizePaintC(); } function randomizePaintC() { var selectedBaseColor = getRandomColorFromGarage(); var selectedTurretColor = getRandomColorFromGarage(); var selectedTreadColor = getRandomColorFromGarage(); function setColorForPart(part, color) { Backend.getInstance().setColour( function (result) { Users.updateUser(id, true, false); }, function (result) { }, function (result) { }, id, part, color, Caches.getPlayerDetailsCache() ); } setColorForPart('base', selectedBaseColor); setColorForPart('turret', selectedTurretColor); setColorForPart('tread', selectedTreadColor); } Backend.getInstance().getGarageContent( function (result) { boxes = result['boxes']; for (box in boxes) { accessories = boxes[box]['accessories']; sprays = boxes[box]['sprayCans']; for (accessory in accessories) { thing = accessories[accessory]; if (thing['type'] == 'front') { front.push(thing['value']); } if (thing['type'] == 'back') { back.push(thing['value']); } if (thing['type'] == 'barrel') { barrel.push(thing['value']); } if (thing['type'] == 'turret') { turret.push(thing['value']); } } for (spray in sprays) { thing = sprays[spray]['colour']; if (thing['type']) { colours.push(thing['rawValue']); } } } // Randomly select the base color baseColor = colours[Math.floor(Math.random() * colours.length)]; }, function (res) { }, function (res) { }, id, Caches.getGarageContentCache() ); var snippet = $(` <div id="randomizerSnippet" class="snippet"> <div class="header">Tank Randomizer</div> Inject a dash of unpredictability into your tank's appearance <hr> <div class="header" style="color: #e7c811;">Randomize</div> </div> `); var content = $('<div></div>'); var allPartsButton = $('<button class="randomize-button button" type="button" tabindex="-1">All Parts</button>'); var accessoriesButton = $('<button class="randomize-button button" type="button" tabindex="-1">Accessories</button>'); var paintsButton = $('<button class="randomize-button button" type="button" tabindex="-1">Paints</button>'); allPartsButton.on('mouseup', () => randomize()); accessoriesButton.on('mouseup', () => randomizeTankcessoriesA()); paintsButton.on('mouseup', () => randomizePaintC()); content.append([allPartsButton, accessoriesButton, paintsButton]); snippet.append(content); $('#secondaryContent').append(snippet); function getRandomColorFromGarage() { return colours[Math.floor(Math.random() * colours.length)]; } });