您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Enhanced customization for Poxel.io with RAVE, CHAOS, crosshair, color mod, ad remover, and more. (No Resolution Scale)
- // ==UserScript==
- // @name Nekoking Client! 1.1
- // @namespace http://tampermonkey.net/
- // @version 1.1
- // @description Enhanced customization for Poxel.io with RAVE, CHAOS, crosshair, color mod, ad remover, and more. (No Resolution Scale)
- // @author Nekoking!
- // @match *://poxel.io/*
- // @grant none
- // ==/UserScript==
- (function () {
- 'use strict';
- // ---------- スタイル追加 ----------
- const style = document.createElement('style');
- style.textContent = `
- #gear-button {
- position: fixed;
- top: 50%;
- left: 0;
- transform: translateY(-50%);
- background-color: #222;
- padding: 10px;
- border-radius: 0 10px 10px 0;
- color: white;
- cursor: pointer;
- z-index: 9999;
- font-size: 20px;
- }
- #settings-panel {
- position: fixed;
- top: 50%;
- left: 50px;
- transform: translateY(-50%);
- background: rgba(0, 0, 0, 0.9);
- padding: 15px;
- color: white;
- border-radius: 10px;
- z-index: 9999;
- display: none;
- min-width: 250px;
- }
- .section {
- margin-bottom: 10px;
- border-bottom: 1px solid #555;
- padding-bottom: 10px;
- }
- .section:last-child {
- border-bottom: none;
- }
- label {
- display: block;
- margin: 4px 0;
- }
- .subpanel {
- margin-top: 8px;
- padding-left: 10px;
- }
- .slider {
- width: 100%;
- }
- #crosshair {
- position: fixed;
- z-index: 9998;
- top: 50%;
- left: 50%;
- transform: translate(-50%, -50%);
- pointer-events: none;
- }
- #rave-overlay, #color-overlay, #chaos-overlay {
- position: fixed;
- top: 0; left: 0;
- width: 100vw;
- height: 100vh;
- z-index: 9990;
- pointer-events: none;
- }
- #rave-overlay {
- background: linear-gradient(45deg, red, orange, yellow, green, blue, indigo, violet);
- mix-blend-mode: screen;
- opacity: 0.8;
- animation: rave 1s linear infinite;
- display: none;
- }
- #chaos-overlay {
- background: black;
- mix-blend-mode: difference;
- animation: chaos 0.3s infinite;
- display: none;
- }
- #color-overlay {
- background-color: rgba(255,0,0,0.2);
- mix-blend-mode: multiply;
- display: none;
- }
- @keyframes rave {
- 0% { filter: hue-rotate(0deg); }
- 100% { filter: hue-rotate(360deg); }
- }
- @keyframes chaos {
- 0% { background: red; }
- 25% { background: yellow; }
- 50% { background: lime; }
- 75% { background: cyan; }
- 100% { background: violet; }
- }
- `;
- document.head.appendChild(style);
- // ---------- オーバーレイ ----------
- const overlayRave = document.createElement('div');
- overlayRave.id = 'rave-overlay';
- document.body.appendChild(overlayRave);
- const overlayColor = document.createElement('div');
- overlayColor.id = 'color-overlay';
- document.body.appendChild(overlayColor);
- const overlayChaos = document.createElement('div');
- overlayChaos.id = 'chaos-overlay';
- document.body.appendChild(overlayChaos);
- // ---------- 歯車ボタン ----------
- const gear = document.createElement('div');
- gear.id = 'gear-button';
- gear.textContent = '⚙️';
- document.body.appendChild(gear);
- const panel = document.createElement('div');
- panel.id = 'settings-panel';
- document.body.appendChild(panel);
- gear.addEventListener('click', () => {
- panel.style.display = panel.style.display === 'none' ? 'block' : 'none';
- });
- // ---------- UI ----------
- panel.innerHTML = `
- <div class="section">
- <label><input type="checkbox" id="enable-crosshair"> Enable Crosshair</label>
- <div id="crosshair-settings" class="subpanel" style="display:none;">
- <label>Type: <select id="crosshair-type"><option>Dot</option><option>Cross</option></select></label>
- <label>Size: <input type="range" id="crosshair-size" min="4" max="40" value="10" class="slider"></label>
- <label>Color: <input type="color" id="crosshair-color" value="#ffffff"></label>
- </div>
- </div>
- <div class="section">
- <label><input type="checkbox" id="enable-color"> Enable Color Mod</label>
- <div id="color-settings" class="subpanel" style="display:none;">
- <label>Color: <input type="color" id="color-mod-color" value="#ff0000"></label>
- <label>Opacity: <input type="range" id="color-mod-opacity" min="0" max="1" step="0.01" value="0.2" class="slider"></label>
- </div>
- </div>
- <div class="section">
- <label><input type="checkbox" id="enable-rave"> RAVE Mode</label>
- </div>
- <div class="section">
- <label><input type="checkbox" id="enable-chaos"> Chaos Mode</label>
- </div>
- <div class="section">
- <label><input type="checkbox" id="enable-performance"> Performance Mode</label>
- </div>
- <div class="section">
- <label><input type="checkbox" id="enable-removefx"> Remove Effects</label>
- </div>
- <div class="section">
- <label><input type="checkbox" id="enable-adblock"> Remove ADS</label>
- </div>
- `;
- // ---------- クロスヘア描画 ----------
- const crosshairCanvas = document.createElement('canvas');
- crosshairCanvas.id = 'crosshair';
- document.body.appendChild(crosshairCanvas);
- const ctx = crosshairCanvas.getContext('2d');
- function drawCrosshair() {
- const enabled = document.getElementById('enable-crosshair').checked;
- crosshairCanvas.style.display = enabled ? 'block' : 'none';
- if (!enabled) return;
- const type = document.getElementById('crosshair-type').value;
- const size = parseInt(document.getElementById('crosshair-size').value);
- const color = document.getElementById('crosshair-color').value;
- crosshairCanvas.width = size * 2;
- crosshairCanvas.height = size * 2;
- ctx.clearRect(0, 0, crosshairCanvas.width, crosshairCanvas.height);
- ctx.strokeStyle = color;
- ctx.fillStyle = color;
- ctx.lineWidth = 2;
- if (type === 'Dot') {
- ctx.beginPath();
- ctx.arc(size, size, size / 4, 0, Math.PI * 2);
- ctx.fill();
- } else {
- ctx.beginPath();
- ctx.moveTo(size, 0);
- ctx.lineTo(size, size * 2);
- ctx.moveTo(0, size);
- ctx.lineTo(size * 2, size);
- ctx.stroke();
- }
- }
- // ---------- イベント処理 ----------
- document.getElementById('enable-crosshair').addEventListener('change', e => {
- document.getElementById('crosshair-settings').style.display = e.target.checked ? 'block' : 'none';
- drawCrosshair();
- });
- ['crosshair-type', 'crosshair-size', 'crosshair-color'].forEach(id => {
- document.getElementById(id).addEventListener('input', drawCrosshair);
- });
- document.getElementById('enable-color').addEventListener('change', e => {
- document.getElementById('color-settings').style.display = e.target.checked ? 'block' : 'none';
- overlayColor.style.display = e.target.checked ? 'block' : 'none';
- });
- document.getElementById('color-mod-color').addEventListener('input', e => {
- overlayColor.style.backgroundColor = e.target.value;
- });
- document.getElementById('color-mod-opacity').addEventListener('input', e => {
- overlayColor.style.opacity = e.target.value;
- });
- document.getElementById('enable-rave').addEventListener('change', e => {
- overlayRave.style.display = e.target.checked ? 'block' : 'none';
- });
- document.getElementById('enable-chaos').addEventListener('change', e => {
- overlayChaos.style.display = e.target.checked ? 'block' : 'none';
- });
- document.getElementById('enable-performance').addEventListener('change', e => {
- document.body.style.imageRendering = e.target.checked ? 'pixelated' : '';
- });
- document.getElementById('enable-removefx').addEventListener('change', e => {
- const particleContainers = document.querySelectorAll('[class*=particle], [class*=fx]');
- particleContainers.forEach(el => el.style.display = e.target.checked ? 'none' : '');
- });
- document.getElementById('enable-adblock').addEventListener('change', e => {
- const ads = document.querySelectorAll('iframe, .ad, [id*=ads], [class*=ads], .adsbygoogle');
- ads.forEach(ad => ad.remove());
- });
- // 初期描画
- drawCrosshair();
- })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址