MPP Userscript Core

A library to simplify userscript creation for Multiplayer Piano.

此腳本不應該直接安裝,它是一個供其他腳本使用的函式庫。欲使用本函式庫,請在腳本 metadata 寫上: // @require https://update.greasyfork.org/scripts/582107/1849133/MPP%20Userscript%20Core.js

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

Advertisement:

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

Advertisement:

作者
sophb.chan
版本
0.0.1.20260612040150
建立日期
2026-06-10
更新日期
2026-06-12
尺寸
5.5 KB
授權條款
未知

API Documentation

  • registerCommand(commandName, commandFunction, {...additionalOptions}): Self-explanatory. Note that the options aliases and rank may be used by the library, so you should be carfeful to not use those options for anything else.

  • send(message): Self-explanatory.

  • receive(message, userInfo, date): Receives a message in chat, but it can only be seen by the user.

  • storeItem(itemName, itemData): Stores an item to localStorage. Will automatically stringify the item data before storing.

  • readItem(itemName, fallbackValue): Reads an item from localStorage. Will automatically convert the item data to its true type (e.g. to an array) before storing.

  • findUsers(searchQuery): Finds all users that have a usename or ID that matches with the search query. Both the search query and the ID & username being searched are normalized in the same way.

  • findUser(searchQuery): Returns the first result of doing findUsers(searchQuery), and returns null when no user was found.

  • clearUserRank(targetUserID): Removes all ranks attached to the user ID given.

  • getUserRank(userID): Self-explanatory.

  • setUserRank(userID, rankIDorName): Self-explanatory. As the pseudo-argument says, the function can take in the ID (e.g. -12) and name (e.g. 'admin') of a rank.

  • setPrivate(privacy): Self-explanatory.

  • setPrefix(newPrefix): Self-explanatory.