您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Shows the amount of connected users next to the amount of all users
- // ==UserScript==
- // @name Connected Users
- // @namespace http://tampermonkey.net/
- // @version 1.1.1
- // @description Shows the amount of connected users next to the amount of all users
- // @author guildedbird & azti
- // @match https://pixelplace.io/*
- // @grant none
- // @license MIT
- // ==/UserScript==
- (function () {
- 'use strict';
- let canvasTotal = null;
- let lastUserTotal = null;
- let lastDisplay = '';
- function update(force = false) {
- const value1 = document.querySelector('#chat .online span.value');
- const value2 = document.querySelector('span.sub-value');
- if (!value1 || !value2) return;
- const titleText = value1.title;
- const matchUserTotal = titleText.match(/^\d+/);
- const matchCanvasTotal = titleText.match(/\s\d+/);
- if (!matchUserTotal) return;
- const currentUserTotal = parseInt(matchUserTotal[0]);
- if (canvasTotal === null && matchCanvasTotal) {
- canvasTotal = parseInt(matchCanvasTotal[0].trim());
- }
- const newDisplay = (() => {
- let result = `${currentUserTotal}`;
- if (canvasTotal && canvasTotal > 0) {
- result += ` & ${canvasTotal}`;
- }
- return `(${result})`;
- })();
- if (force || currentUserTotal !== lastUserTotal || newDisplay !== lastDisplay) {
- value2.textContent = newDisplay;
- value2.style.setProperty('display', 'inline', 'important');
- value2.style.setProperty('color', '#b3b3b3', 'important');
- lastUserTotal = currentUserTotal;
- lastDisplay = newDisplay;
- }
- }
- function updateCanvasTotal() {
- const players = document.querySelectorAll('.players-list .player');
- const newTotal = players.length;
- if (newTotal !== canvasTotal) {
- canvasTotal = newTotal;
- update(true);
- }
- }
- function observeSubValue() {
- const value2 = document.querySelector('span.sub-value');
- if (value2) {
- const observer = new MutationObserver(() => {
- value2.style.setProperty('display', 'inline', 'important');
- value2.style.setProperty('color', '#b3b3b3', 'important');
- });
- observer.observe(value2, { attributes: true, attributeFilter: ['style'] });
- }
- }
- update();
- observeSubValue();
- const chatElement = document.querySelector('#chat .online');
- if (chatElement) {
- const observer = new MutationObserver(() => {
- const value1 = document.querySelector('#chat .online span.value');
- if (value1) update();
- });
- observer.observe(chatElement, { childList: true, subtree: true, attributes: true });
- }
- const playerListElement = document.querySelector('.players-list');
- if (playerListElement) {
- const observer2 = new MutationObserver(() => {
- updateCanvasTotal();
- });
- observer2.observe(playerListElement, { childList: true, subtree: true, attributes: true });
- }
- })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址