OMCで分野別レートに応じて色を付ける
当前为
// ==UserScript==
// @name OMC分野別レートに色付け
// @namespace https://greasyfork.org/
// @version 1.0.0
// @description OMCで分野別レートに応じて色を付ける
// @author noppi
// @match https://onlinemathcontest.com/users/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
// 色付けのルール(レートの範囲ごとに色を指定)
const colorRules = [
{ min: 3600, color: '#ffd700' }, // 金 (Gold)
{ min: 3200, color: '#c0c0c0' }, // 銀 (Silver)
{ min: 2800, color: '#ff4500' }, // 赤 (Red)
{ min: 2400, color: '#ff8c00' }, // 橙 (Orange)
{ min: 2000, color: '#ffff00' }, // 黄 (Yellow)
{ min: 1600, color: '#0000ff' }, // 青 (Blue)
{ min: 1200, color: '#00bfff' }, // 水 (Light Blue)
{ min: 0, color: '#000000' } // 黒 (Black)
];
// 各分野の要素を取得
const fields = document.querySelectorAll(".user-stats span");
// 各分野のレートに応じて色を付ける
fields.forEach(field => {
const text = field.textContent.trim();
const rate = parseInt(text, 10);
if (!isNaN(rate)) {
const rule = colorRules.find(r => rate >= r.min);
if (rule) {
field.style.color = rule.color;
field.style.fontWeight = 'bold'; // 太字にする場合
}
}
});
})();