您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
自动将中文英雄名、称号、昵称转换为英文,支持160+英雄别名(如“盲僧”→“Lee Sin”)
// ==UserScript== // @name lol英雄名字替换 // @namespace http://tampermonkey.net/ // @version 1.0.0 // @description 自动将中文英雄名、称号、昵称转换为英文,支持160+英雄别名(如“盲僧”→“Lee Sin”) // @author zq // @match https://runeforge.dev/* // @icon https://www.google.com/s2/favicons?sz=64&domain=runeforge.dev // @grant none // @license MIT // ==/UserScript==/// ==UserScript== // @name lol英雄名字替换 // @namespace http://tampermonkey.net/ // @version 1.0.0 // @description 自动将中文英雄名、称号、昵称转换为英文,支持160+英雄别名(如“盲僧”→“Lee Sin”) // @author You // @match https://runeforge.dev/* // @icon https://www.google.com/s2/favicons?sz=64&domain=runeforge.dev // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; // 中文到英文的映射表(这里以英雄联盟英雄名为例,可根据需要扩展) const translationMap = { // Aatrox '亚托克斯': 'Aatrox', '暗裔剑魔': 'Aatrox', // Ahri '阿狸': 'Ahri', '九尾妖狐': 'Ahri', // Akali '阿卡丽': 'Akali', '暗影之拳': 'Akali', // Alistar '阿利斯塔': 'Alistar', '牛头酋长': 'Alistar', // Amumu '阿木木': 'Amumu', '殇之木乃伊': 'Amumu', // Anivia '艾尼维亚': 'Anivia', '冰晶凤凰': 'Anivia', // Annie '安妮': 'Annie', '黑暗之女': 'Annie', // Ashe '艾希': 'Ashe', '寒冰射手': 'Ashe', // Aurelion Sol '奥瑞利安·索尔': 'Aurelion Sol', '铸星龙王': 'Aurelion Sol', // Azir '阿兹尔': 'Azir', '沙漠皇帝': 'Azir', // Bard '巴德': 'Bard', '星界游神': 'Bard', // Blitzcrank '布里茨': 'Blitzcrank', '蒸汽机器人': 'Blitzcrank', // Brand '布兰德': 'Brand', '复仇焰魂': 'Brand', // Braum '布隆': 'Braum', '弗雷尔卓德之心': 'Braum', // Camille '卡蜜尔': 'Camille', '青钢影': 'Camille', // Caitlyn '凯特琳': 'Caitlyn', '皮城女警': 'Caitlyn', // Cassiopeia '卡西奥佩娅': 'Cassiopeia', '魔蛇之拥': 'Cassiopeia', // Chogath '科加斯': 'Chogath', '虚空恐惧': 'Chogath', // Corki '库奇': 'Corki', '英勇投弹手': 'Corki', // Darius '德莱厄斯': 'Darius', '诺克萨斯之手': 'Darius', // Diana '戴安娜': 'Diana', '皎月女神': 'Diana', // Draven '德莱文': 'Draven', '荣耀行刑官': 'Draven', // Dr. Mundo '蒙多医生': 'Dr. Mundo', '祖安狂人': 'Dr. Mundo', // Ekko '艾克': 'Ekko', '时间刺客': 'Ekko', // Elise '伊莉丝': 'Elise', '蜘蛛女皇': 'Elise', // Evelynn '伊芙琳': 'Evelynn', '痛苦之拥': 'Evelynn', // Ezreal '伊泽瑞尔': 'Ezreal', '探险家': 'Ezreal', // Fiddlesticks '费德提克': 'Fiddlesticks', '末日使者': 'Fiddlesticks', // Fiora '菲奥娜': 'Fiora', '无双剑姬': 'Fiora', // Fizz '菲兹': 'Fizz', '潮汐海灵': 'Fizz', // Galio '加里奥': 'Galio', '正义巨像': 'Galio', // Gangplank '普朗克': 'Gangplank', '海洋之灾': 'Gangplank', // Garen '盖伦': 'Garen', '德玛西亚之力': 'Garen', // Gnar '纳尔': 'Gnar', '迷失之牙': 'Gnar', // Gragas '古拉加斯': 'Gragas', '酒桶': 'Gragas', // Graves '格雷福斯': 'Graves', '法外狂徒': 'Graves', // Hecarim '赫卡里姆': 'Hecarim', '战争之影': 'Hecarim', // Heimerdinger '黑默丁格': 'Heimerdinger', '大发明家': 'Heimerdinger', // Illaoi '俄洛伊': 'Illaoi', '海兽祭司': 'Illaoi', // Irelia '艾瑞莉娅': 'Irelia', '刀锋舞者': 'Irelia', // Ivern '艾翁': 'Ivern', '翠神': 'Ivern', // Janna '迦娜': 'Janna', '风暴之怒': 'Janna', // Jarvan IV '嘉文四世': 'Jarvan IV', '德玛西亚皇子': 'Jarvan IV', // Jax '贾克斯': 'Jax', '武器大师': 'Jax', // Jayce '杰斯': 'Jayce', '未来守护者': 'Jayce', // Jhin '烬': 'Jhin', '戏命师': 'Jhin', // Jinx '金克丝': 'Jinx', '暴走萝莉': 'Jinx', // Kaisa '卡莎': 'Kaisa', '虚空之女': 'Kaisa', // Kalista '卡莉丝塔': 'Kalista', '复仇之矛': 'Kalista', // Karma '卡尔玛': 'Karma', '天启者': 'Karma', // Kayle '凯尔': 'Kayle', '审判天使': 'Kayle', // Kayn '凯隐': 'Kayn', '影流之镰': 'Kayn', // Kennen '凯南': 'Kennen', '狂暴之心': 'Kennen', // Karthus '卡尔萨斯': 'Karthus', '死亡歌颂者': 'Karthus', // Kassadin '卡萨丁': 'Kassadin', '虚空行者': 'Kassadin', // Katarina '卡特琳娜': 'Katarina', '不祥之刃': 'Katarina', // Khazix '卡兹克': 'Khazix', '虚空掠夺者': 'Khazix', // Kindred '千珏': 'Kindred', '永猎双子': 'Kindred', // Kled '克烈': 'Kled', '暴怒骑士': 'Kled', // Kog'Maw '克格莫': 'KogMaw', '深渊巨口': 'KogMaw', '大嘴': 'KogMaw', // Leblanc '乐芙兰': 'Leblanc', '诡术妖姬': 'Leblanc', '妖姬': 'Leblanc', // Lee Sin '李青': 'Lee Sin', '盲僧': 'Lee Sin', '瞎子': 'Lee Sin', // Leona '蕾欧娜': 'Leona', '曙光女神': 'Leona', '日女': 'Leona', // Lissandra '丽桑卓': 'Lissandra', '冰霜女巫': 'Lissandra', '冰女': 'Lissandra', // Lucian '卢锡安': 'Lucian', '圣枪游侠': 'Lucian', // Lulu '璐璐': 'Lulu', '仙灵女巫': 'Lulu', // Lux '拉克丝': 'Lux', '光辉女郎': 'Lux', '光辉': 'Lux', // Malphite '墨菲特': 'Malphite', '熔岩巨兽': 'Malphite', '石头人': 'Malphite', // Malzahar '马尔扎哈': 'Malzahar', '虚空先知': 'Malzahar', '蚂蚱': 'Malzahar', // Maokai '茂凯': 'Maokai', '扭曲树精': 'Maokai', '大树': 'Maokai', // Master Yi '易': 'Master Yi', '易大师': 'Master Yi', '无极剑圣': 'Master Yi', '剑圣': 'Master Yi', // Miss Fortune '厄运小姐': 'Miss Fortune', '赏金猎人': 'Miss Fortune', '女枪': 'Miss Fortune', // Monkey King '孙悟空': 'Monkey King', '齐天大圣': 'Monkey King', '猴子': 'Monkey King', // Mordekaiser '莫德凯撒': 'Mordekaiser', '铁铠冥魂': 'Mordekaiser', '铁男': 'Mordekaiser', // Morgana '莫甘娜': 'Morgana', '堕落天使': 'Morgana', // Nami '娜美': 'Nami', '唤潮鲛姬': 'Nami', // Nasus '内瑟斯': 'Nasus', '沙漠死神': 'Nasus', '狗头': 'Nasus', // Nocturne '魔腾': 'Nocturne', '永恒梦魇': 'Nocturne', '梦魇': 'Nocturne', // Nautilus '诺提勒斯': 'Nautilus', '深海泰坦': 'Nautilus', '泰坦': 'Nautilus', // Nidalee '奈德丽': 'Nidalee', '狂野女猎手': 'Nidalee', '豹女': 'Nidalee', // Nunu '努努': 'Nunu', '雪人骑士': 'Nunu', // Olaf '奥拉夫': 'Olaf', '狂战士': 'Olaf', // Orianna '奥莉安娜': 'Orianna', '发条魔灵': 'Orianna', '发条': 'Orianna', // Ornn '奥恩': 'Ornn', '山隐之焰': 'Ornn', '山羊': 'Ornn', // Pantheon '潘森': 'Pantheon', '战争之王': 'Pantheon', // Poppy '波比': 'Poppy', '圣锤之毅': 'Poppy', // Pyke '派克': 'Pyke', '血港鬼影': 'Pyke', // Quinn '奎因': 'Quinn', '德玛西亚之翼': 'Quinn', // Rakan '洛': 'Rakan', '幻翎': 'Rakan', // Rammus '拉莫斯': 'Rammus', '披甲龙龟': 'Rammus', '龙龟': 'Rammus', // Rek'Sai '雷克赛': 'RekSai', '虚空遁地兽': 'RekSai', '挖掘机': 'RekSai', // Renekton '雷克顿': 'Renekton', '荒漠屠夫': 'Renekton', '鳄鱼': 'Renekton', // Rengar '雷恩加尔': 'Rengar', '傲之追猎者': 'Rengar', '狮子狗': 'Rengar', // Riven '锐雯': 'Riven', '放逐之刃': 'Riven', // Rumble '兰博': 'Rumble', '机械公敌': 'Rumble', // Ryze '瑞兹': 'Ryze', '符文法师': 'Ryze', // Sejuani '瑟庄妮': 'Sejuani', '北地之怒': 'Sejuani', '猪女': 'Sejuani', // Shaco '萨科': 'Shaco', '恶魔小丑': 'Shaco', '小丑': 'Shaco', // Shen '慎': 'Shen', '暮光之眼': 'Shen', // Shyvana '希瓦娜': 'Shyvana', '龙血武姬': 'Shyvana', '龙女': 'Shyvana', // Singed '辛吉德': 'Singed', '炼金术士': 'Singed', '炼金': 'Singed', // Sion '赛恩': 'Sion', '亡灵战神': 'Sion', // Sivir '希维尔': 'Sivir', '战争女神': 'Sivir', '轮子妈': 'Sivir', // Skarner '斯卡纳': 'Skarner', '水晶先锋': 'Skarner', '蝎子': 'Skarner', // Sona '索娜': 'Sona', '琴瑟仙女': 'Sona', '琴女': 'Sona', // Soraka '索拉卡': 'Soraka', '众星之子': 'Soraka', '奶妈': 'Soraka', // Swain '斯维因': 'Swain', '诺克萨斯统领': 'Swain', '乌鸦': 'Swain', // Syndra '辛德拉': 'Syndra', '暗黑元首': 'Syndra', '球女': 'Syndra', // Tahm Kench '塔姆': 'Tahm Kench', '河流之王': 'Tahm Kench', // Taliyah '塔莉垭': 'Taliyah', '岩雀': 'Taliyah', // Talon '泰隆': 'Talon', '刀锋之影': 'Talon', '男刀': 'Talon', // Taric '塔里克': 'Taric', '瓦罗兰之盾': 'Taric', // Teemo '提莫': 'Teemo', '迅捷斥候': 'Teemo', // Trundle '特朗德尔': 'Trundle', '巨魔之王': 'Trundle', '巨魔': 'Trundle', // Tryndamere '泰达米尔': 'Tryndamere', '蛮族之王': 'Tryndamere', '蛮王': 'Tryndamere', // Twisted Fate '崔斯特': 'Twisted Fate', '卡牌大师': 'Twisted Fate', '卡牌': 'Twisted Fate', // Tristana '崔丝塔娜': 'Tristana', '麦林炮手': 'Tristana', '小炮': 'Tristana', // Twitch '图奇': 'Twitch', '瘟疫之源': 'Twitch', '老鼠': 'Twitch', // Thresh '锤石': 'Thresh', '魂锁典狱长': 'Thresh', // Udyr '乌迪尔': 'Udyr', '兽灵行者': 'Udyr', // Urgot '厄加特': 'Urgot', '无畏战车': 'Urgot', // Varus '维鲁斯': 'Varus', '惩戒之箭': 'Varus', // Vayne '薇恩': 'Vayne', '暗夜猎手': 'Vayne', 'vn': 'Vayne', // Vi '蔚': 'Vi', '皮城执法官': 'Vi', // Viktor '维克托': 'Viktor', '机械先驱': 'Viktor', // Veigar '维迦': 'Veigar', '邪恶小法师': 'Veigar', '小法': 'Veigar', // Velkoz '维克兹': 'Velkoz', '虚空之眼': 'Velkoz', '大眼': 'Velkoz', // Vladimir '弗拉基米尔': 'Vladimir', '猩红收割者': 'Vladimir', '吸血鬼': 'Vladimir', // Volibear '沃利贝尔': 'Volibear', '雷霆咆哮': 'Volibear', '狗熊': 'Volibear', // Warwick '沃里克': 'Warwick', '祖安怒兽': 'Warwick', '狼人': 'Warwick', // Xayah '霞': 'Xayah', '逆羽': 'Xayah', // Xerath '泽拉斯': 'Xerath', '远古巫灵': 'Xerath', // Xin Zhao '赵信': 'Xin Zhao', '德邦总管': 'Xin Zhao', // Yasuo '亚索': 'Yasuo', '疾风剑豪': 'Yasuo', // Yorick '约里克': 'Yorick', '牧魂人': 'Yorick', '掘墓': 'Yorick', // Zac '扎克': 'Zac', '生化魔人': 'Zac', // Zed '劫': 'Zed', '影流之主': 'Zed', // Ziggs '吉格斯': 'Ziggs', '爆破鬼才': 'Ziggs', '炸弹人': 'Ziggs', // Zilean '基兰': 'Zilean', '时光守护者': 'Zilean', '时光老人': 'Zilean', // Zoe '佐伊': 'Zoe', '暮光星灵': 'Zoe', // Zyra '婕拉': 'Zyra', '荆棘之兴': 'Zyra' }; // 获取搜索输入框 const searchInput = document.getElementsByName('search')[0]; if (!searchInput) return; // 存储原始的input事件处理函数(如果有的话) const originalInputHandler = searchInput.oninput; // 阻止原始的input事件处理 searchInput.oninput = null; // 记录上次的输入值,用于判断是否需要触发搜索 let lastInputValue = ''; // 防抖函数,避免频繁触发搜索 function debounce(func, delay) { let timer = null; return function() { const context = this; const args = arguments; clearTimeout(timer); timer = setTimeout(() => func.apply(context, args), delay); }; } // 处理用户输入的函数 const handleUserInput = debounce(function(e) { let inputValue = e.target.value; // 如果输入包含中文,尝试替换为英文 if (/[\u4e00-\u9fa5]/.test(inputValue)) { let translatedValue = inputValue; // 遍历翻译映射表,替换所有匹配的中文 Object.keys(translationMap).forEach(chinese => { const regex = new RegExp(chinese, 'g'); translatedValue = translatedValue.replace(regex, translationMap[chinese]); }); // 如果有替换,更新输入框的值 if (translatedValue !== inputValue) { searchInput.value = translatedValue; inputValue = translatedValue; } } // 只有当值确实发生变化时才触发搜索 if (inputValue !== lastInputValue) { lastInputValue = inputValue; // 创建并触发新的input事件 const newInputEvent = new Event('input', { bubbles: true }); searchInput.dispatchEvent(newInputEvent); } }, 300); // 300ms防抖延迟 // 监听用户输入事件 searchInput.addEventListener('input', handleUserInput); // 如果需要保留原始的input事件处理函数,可以在自定义处理后调用它 if (originalInputHandler) { searchInput.addEventListener('input', originalInputHandler); } })();