您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Draggable player list UI Mod for Shell Shockers. Shows paused players and players hp.
当前为
- // ==UserScript==
- // @name Player List Mod (Draggable) | Shell Shockers | flyg0n LiTe
- // @namespace http://tampermonkey.net/
- // @version 0.4
- // @description Draggable player list UI Mod for Shell Shockers. Shows paused players and players hp.
- // @author flyg0n LiTe
- // @match https://shellshock.io/*
- // @match https://mathactivity.xyz/*
- // @match https://mathdrills.life/*
- // @icon https://www.berrywidgets.com/assets/health-bar2.png
- // @grant GM_addStyle
- // @license MIT
- // ==/UserScript==
- (function() {
- 'use strict';
- GM_addStyle(`
- #playerHealthContainer {
- position: fixed;
- top: 0;
- left: 0;
- z-index: 1000;
- color: white;
- font-size: 14px;
- background-color: #DB5A48;
- font-family: 'Kanit', sans-serif;
- padding: 5px;
- cursor: grab;
- margin: 5px;
- }
- .changeColor {
- position: absolute;
- top: 0;
- right: 0;
- z-index: 1001;
- background: none;
- border: none;
- color: white;
- font-size: 20px;
- cursor: pointer;
- outline: none;
- }
- `);
- // Add a container to display the health
- const playerHealthContainer = document.createElement('div');
- playerHealthContainer.id = 'playerHealthContainer';
- document.body.appendChild(playerHealthContainer);
- function sortByHealth(a, b) {
- if (a.hp > b.hp) {
- return -1;
- }
- if (a.hp < b.hp) {
- return 1;
- }
- return 0;
- }
- function updateHealthDisplay() {
- let playersArray = Array.from(window.players.values());
- playersArray.sort(sortByHealth);
- let healthInfo = '';
- playersArray.forEach((player) => {
- healthInfo += `${player.name}: ${player.hp === 0 ? 'Paused' : (player.hp).toFixed(2) + ' HP'}<br>`;
- });
- playerHealthContainer.innerHTML = healthInfo;
- }
- // Store player data
- window.players = new Map();
- // Intercept push method to store player data
- const originalPush = Array.prototype.push;
- Array.prototype.push = function(data) {
- try {
- if (arguments[0].player && arguments[0].id) {
- const playerProxy = new Proxy(arguments[0].player, {
- set: (target, property, value) => {
- target[property] = value;
- if (property === 'hp') {
- updateHealthDisplay();
- }
- return true;
- },
- });
- window.players.set(playerProxy.id, playerProxy);
- updateHealthDisplay();
- }
- } catch (e) {
- console.log(e);
- }
- return originalPush.apply(this, arguments);
- };
- // Add color picker
- const colorPicker = document.createElement('input');
- colorPicker.type = 'color';
- colorPicker.style.display = 'none';
- colorPicker.onchange = () => {
- playerHealthContainer.style.backgroundColor = colorPicker.value;
- };
- document.body.appendChild(colorPicker);
- // Add change color button
- const changeColorBtn = document.createElement('button');
- changeColorBtn.className = 'changeColor';
- changeColorBtn.innerHTML = '⚙';
- changeColorBtn.onclick = () => {
- colorPicker.click();
- };
- document.body.appendChild(changeColorBtn);
- // Load Google Fonts
- const googleFontLink = document.createElement('link');
- googleFontLink.href = 'https://fonts.googleapis.com/css2?family=Kanit&display=swap';
- googleFontLink.rel = 'stylesheet';
- document.head.appendChild(googleFontLink);
- // Make the playerHealthContainer draggable
- playerHealthContainer.addEventListener('mousedown', (event) => {
- event.preventDefault();
- const offsetX = event.clientX - playerHealthContainer.getBoundingClientRect().left;
- const offsetY = event.clientY - playerHealthContainer.getBoundingClientRect().top;
- const onMouseMove = (event) => {
- playerHealthContainer.style.left = `${event.clientX - offsetX}px`;
- playerHealthContainer.style.top = `${event.clientY - offsetY}px`;
- };
- const onMouseUp = () => {
- document.removeEventListener('mousemove', onMouseMove);
- document.removeEventListener('mouseup', onMouseUp);
- };
- document.addEventListener('mousemove', onMouseMove);
- document.addEventListener('mouseup', onMouseUp);
- });
- })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址