Greasy Fork is available in English.

change bot names

Поменять скучные никнеймы ботов из говнокаши на балдежные

// ==UserScript==
// @name         change bot names
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Поменять скучные никнеймы ботов из говнокаши на балдежные
// @author       Something begins
// @license     none
// @match       https://www.heroeswm.ru/war*
// @match       https://my.lordswm.com/war*
// @match       https://www.lordswm.com/war*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=lordswm.com
// @grant        unsafeWindow
// ==/UserScript==
function getRandomChoice(arr) {
    var randomIndex = Math.floor(Math.random() * arr.length);
    return arr[randomIndex];
}
//const names = ["Eva Elfie", "Mia Khalifa", "Johny Sins", "Ricardo Milos", "Bobby Kotick", "Админ пидарас", "Riley Reid", "Sasha Grey", "Madison Ivy", "Lana Rhoades", "Dani Daniels", "Angela White"];
var names = [
    'Паста карбонара',
    'Пицца Маргарита',
    'Суши с лососем',
    'Стейк из говядины',
    'Греческий салат',
    'Том Ям Гун',
    'Гамбургер',
    'Паэлья',
    'Спагетти Болоньезе',
    'Суши с тунцом',
    'Карри курицы',
    'Сэндвич с индейкой и авокадо',
    'Креветки с чесноком',
    'Рататуй',
    'Салат Цезарь',
    'Салат Нисуаз',
    'Роллы Филадельфия',
    'Пельмени',
    'Борщ',
    'Картошка фри',
    'Сырный соус',
    'Картошка по‑деревенски',
    'Гречка по‑купечески',
    'Мисо-суп',
    'Котлеты по‑киевски',
    'Тартар из лосося',
    'Муссака',
    'Бефстроганов',
    'Лазанья',
    'Курица терия',
    'Блины',
    'Рис с овощами',
    'Фахитос',
    'Шаверма',
    'Хачапури',
    'Фунчоза с овощами',
    'Карри рис',
    'Салат с манго и курицей',
    'Грибной суп',
    'Пельмени с соусом',
    'Тунец тартар',
    'Чечевичный суп',
    'Куриные крылышки',
    'Фруктовый салат',
    'Окрошка',
    'Мидии в сливочном соусе',
    'Паста с лососем',
    'Картошка с грибами',
    'Карпаччо из говядины',
    'Котлеты рыбные',
    'Салат Греческий с курицей',
    'Рулет из куриного филе',
    'Холодец',
    'Пельмени с картошкой',
    'Чайхана плов',
    'Овощной суп',
    'Лобио',
    'Макароны с тунцом',
    'Спагетти с морепродуктами',
    'Роллы Унаги',
    'Каша гречневая',
    'Паста с креветками',
    'Жаркое по‑домашнему',
    'Семга в терияки',
    'Пицца Пепперони',
    'Тартар из тунца',
    'Сырники',
    'Молодые картошечки',
    'Лосось в азиатском стиле',
    'Тунец поке',
    'Омлет с овощами',
    'Говядина по‑китайски',
    'Бургер с курицей',
    'Пудинг чиа с малиной',
    'Печенье шоколадное',
    'Кабачковая икра',
    'Банановый хлеб',
    'Куриные наггетсы',
    'Чизкейк клубничный',
    'Маффины с ягодами',
    'Тайская лапша с курицей',
    'Котлеты из индейки',
    'Жареный лосось',
    'Свинина по‑корейски',
    'Гренки с чесноком',
    'Фруктовый лед',
    'Такос с говядиной',
    'Пудинг тирамису',
    'Фисташковое мороженое',
    'Смузи с шпинатом',
    'Пирог с яблоками',
    'Крем‑суп из брокколи',
    'Лосось гриль',
    'Баранина тандыр',
    'Оливье',
    'Бледный карри',
    'Печенье овсяное',
    'Запеченные баклажаны',
    'Тайская салат',
    'Фиш энд чипс',
    'Маффины с шоколадом',
    'Куриные котлеты',
    'Салат Капрезе',
    'Мантарин кексы',
    'Пирог с картошкой',
    'Сырный пирог',
    'Манго чатни',
    'Пельмени с лососем',
    'Лаваш с творогом',
    'Малиновый пирог',
    'Фруктовое мороженое',
    'Тайский суп том кха',
    'Лапша рамен',
    'Печенье имбирное',
    'Финики с орехами',
    'Спагетти карбонара',
    'Медовый торт',
    'Трюфели шоколадные',
    'Салат Оливье с курицей',
    'Салат с морепродуктами',
    'Шоколадный торт',
    'Пельмени с говядиной',
    'Рулет с мясом',
    'Овощной суп с курицей',
    'Куриные крылышки в барбекю',
    'Шоколадные кексы',
    'Мармелад варенье',
    'Пельмени с курицей',
    'Пудинг тыквенный',
    'Омлет с сыром',
    'Чизкейк шоколадный',
    'Лосось терияки',
    'Тунец гриль',
    'Паста с куриной грудкой',
    'Гречка с овощами',
    'Пирог с вишней',
    'Тирамису',
    'Лаваш с лососем',
    'Пюре картофельное',
    'Окрошка на кефире',
    'Тайская лапша с креветками',
    'Боба тайская',
    'Пудинг тыквенный с кокосом',
    'Лазанья с мясом',
    'Пельмени с картошкой и грибами',
    'Суп фасолевый',
    'Томатный суп',
    'Тайский суп том ям',
    'Шаурма куриная',
    'Песочное печенье',
    'Компот из сухофруктов',
    'Крабовый салат',
    'Пицца с грибами',
    'Свинина по‑индийски',
    'Суп с фрикадельками',
    'Блинчики с творогом',
    'Коктейль фруктовый',
    'Суп‑пюре гороховый',
    'Булочки с корицей',
    'Курица терияки',
    'Картошка с курицей',
    'Салат Цезарь с курицей',
    'Пудинг тирамису с малиной',
    'Сырники с вареньем',
    'Французский луковый суп',
    'Пицца с морепродуктами',
    'Тирамису клубничный',
    'Чай черный',
    'Борщ зелёный',
    'Коктейль банановый',
    'Жаркое по‑французски',
    'Карпаччо из лосося',
    'Суп с грибами',
    'Пирожное "Наполеон"',
    'Жареный рис с овощами',
    'Бургер говяжий',
    'Салат Греческий с оливками',
    'Фруктовый салат с медом',
    'Томатный суп с мясом',
    'Пицца с пепперони',
    'Суп‑гуляш',
    'Картошка жареная',
    'Салат из свежих овощей',
    'Сырники с яблоками',
    'Булочки с маком',
    'Тарталетки с фруктами',
    'Чизкейк клубнично‑банановый',
    'Куриное филе в соевом соусе',
    'Медовый кекс',
    'Лосось по‑азиатски',
    'Салат из креветок',
    'Паста с грибами',
    'Салат с крабовыми палочками',
    'Куриные крылышки в кисло‑сладком соусе',
    'Суп‑харчо',
    'Манго с курицей',
    'Пюре из сельдерея',
];
var militaryRanks = [
    'Солдат',
    'Ефрейтор',
    'Младший сержант',
    'Сержант',
    'Старший сержант',
    'Старшина',
    'Прапорщик',
    'Старший прапорщик',
    'Младший лейтенант',
    'Лейтенант',
    'Старший лейтенант',
    'Капитан',
    'Майор',
    'Подполковник',
    'Полковник',
    'Генерал-майор',
    'Генерал-лейтенант',
    'Генерал-полковник',
    'Генерал армии',
    'Маршал',
    'Стажер',
    'Ассистент',
    'Аналитик',
    'Специалист',
    'Старший специалист',
    'Младший менеджер',
    'Менеджер',
    'Старший менеджер',
    'Руководитель отдела',
    'Директор по направлению',
    'Заместитель генерального директора',
    'Генеральный директор',
    'Исполнительный директор',
    'Президент',
    'Председатель правления'
];
let replaceName = (string, name) => {
    if (!string) return "";
    const pattern = /\*(.*)\*/;
    const botName = string.match(pattern);
    if (!botName) return string;
    else {
        string = string.replace(botName[1], name);
        return string;
    }
}
const namesDict = {};
function changeNames() {
    for (const cre of Object.values(stage.pole.obj)){
        if (cre.hero !== 1 || !cre.nametxt.includes("*")) continue;
        console.log(cre.nametxt);
        const name = getRandomChoice(names);
        names.splice(names.indexOf(name), 1);
        const rank = getRandomChoice(militaryRanks);
        militaryRanks.splice(militaryRanks.indexOf(rank), 1);
        const randomName = rank + " " + name;
        namesDict[cre.nametxt] = randomName;
        names.splice(names.indexOf(randomName), 1);
        cre.nametxt = randomName;
        inf[cre.obj_index] = replaceName(inf[cre.obj_index], randomName);
        cre.command = replaceName(cre.command, randomName);
        cre.command_new = replaceName(cre.command_new, randomName);
        showmi[cre.obj_index];
    }
}
function monitorFonts(){
    for (const font of document.querySelectorAll("font")){
        // font.textContent
        if (Object.keys(namesDict).includes(font.textContent)){
            font.textContent = namesDict[font.textContent];
        }
    }
}
setInterval(monitorFonts, 1000);
let settings_interval = setInterval(() => {
    if (Object.keys(unsafeWindow.stage.pole.obj).length !== 0) {
        clearInterval(settings_interval);
        changeNames();
    }
}, 300)