您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
This script provides an easier way to defend your base in Zombs.io by selling Melee Towers at night and placing them in the morning.
// ==UserScript== // @name Defense with Melee - Zombs.io // @namespace http://tampermonkey.net/ // @version v0.5 // @description This script provides an easier way to defend your base in Zombs.io by selling Melee Towers at night and placing them in the morning. // @author lasche (laschedev) // @match localhost // @match https://zombs.io/ // @icon https://www.google.com/s2/favicons?sz=64&domain=zombs.io // @grant none // ==/UserScript== let savedMelees = []; let meleeTrick = false; document.getElementsByClassName('hud-settings-grid')[0].innerHTML = ` <button class="btn btn-green" id="saveMelee">Save Melee's</button> <button class="btn btn-green" id="meleeTrick">Enable Melee Trick!</button> `; document.getElementById('saveMelee').addEventListener('click', function() { savedMelees = Object.values(game.ui.buildings).filter(building => building.type === "MeleeTower"); }); document.getElementById('meleeTrick').addEventListener('click', function() { meleeTrick = !meleeTrick; this.innerText = meleeTrick ? "Disable Melee Trick!" : "Enable Melee Trick!"; this.className = meleeTrick ? "btn btn-red" : "btn btn-green"; }); async function sellBuilding(uid) { game.network.sendPacket(9, { name: "DeleteBuilding", uid: uid || 1 }); await new Promise(resolve => setTimeout(resolve, 200)); } game.network.addPacketHandler(9, async data => { switch (data.name) { case "DayCycle": for (const melee of savedMelees) { const isThereMeleeTower = Object.values(game.ui.buildings).forEach(building => building.type == "MeleeTower" && building.x == melee.x && building.y == melee.y ); if (!data.response.isDay) { Object.values(game.ui.buildings).forEach(building => building.type == "MeleeTower" && building.x == melee.x && building.y == melee.y ? melee.uid = building.uid : 0 ) await sellBuilding(melee.uid); } else if (data.response.isDay && !isThereMeleeTower && meleeTrick) { game.network.sendPacket(9, { name: 'MakeBuilding', x: melee.x, y: melee.y, type: "MeleeTower", yaw: 0}); } } break; } });