change bot names

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

  1. // ==UserScript==
  2. // @name change bot names
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.2
  5. // @description Поменять скучные никнеймы ботов из говнокаши на балдежные
  6. // @author Something begins
  7. // @license none
  8. // @match https://www.heroeswm.ru/war*
  9. // @match https://my.lordswm.com/war*
  10. // @match https://www.lordswm.com/war*
  11. // @icon https://www.google.com/s2/favicons?sz=64&domain=lordswm.com
  12. // @grant unsafeWindow
  13. // ==/UserScript==
  14. function getRandomChoice(arr) {
  15. var randomIndex = Math.floor(Math.random() * arr.length);
  16. return arr[randomIndex];
  17. }
  18. //const names = ["Eva Elfie", "Mia Khalifa", "Johny Sins", "Ricardo Milos", "Bobby Kotick", "Админ пидарас", "Riley Reid", "Sasha Grey", "Madison Ivy", "Lana Rhoades", "Dani Daniels", "Angela White"];
  19. var names = [
  20. 'Паста карбонара',
  21. 'Пицца Маргарита',
  22. 'Суши с лососем',
  23. 'Стейк из говядины',
  24. 'Греческий салат',
  25. 'Том Ям Гун',
  26. 'Гамбургер',
  27. 'Паэлья',
  28. 'Спагетти Болоньезе',
  29. 'Суши с тунцом',
  30. 'Карри курицы',
  31. 'Сэндвич с индейкой и авокадо',
  32. 'Креветки с чесноком',
  33. 'Рататуй',
  34. 'Салат Цезарь',
  35. 'Салат Нисуаз',
  36. 'Роллы Филадельфия',
  37. 'Пельмени',
  38. 'Борщ',
  39. 'Картошка фри',
  40. 'Сырный соус',
  41. 'Картошка по‑деревенски',
  42. 'Гречка по‑купечески',
  43. 'Мисо-суп',
  44. 'Котлеты по‑киевски',
  45. 'Тартар из лосося',
  46. 'Муссака',
  47. 'Бефстроганов',
  48. 'Лазанья',
  49. 'Курица терия',
  50. 'Блины',
  51. 'Рис с овощами',
  52. 'Фахитос',
  53. 'Шаверма',
  54. 'Хачапури',
  55. 'Фунчоза с овощами',
  56. 'Карри рис',
  57. 'Салат с манго и курицей',
  58. 'Грибной суп',
  59. 'Пельмени с соусом',
  60. 'Тунец тартар',
  61. 'Чечевичный суп',
  62. 'Куриные крылышки',
  63. 'Фруктовый салат',
  64. 'Окрошка',
  65. 'Мидии в сливочном соусе',
  66. 'Паста с лососем',
  67. 'Картошка с грибами',
  68. 'Карпаччо из говядины',
  69. 'Котлеты рыбные',
  70. 'Салат Греческий с курицей',
  71. 'Рулет из куриного филе',
  72. 'Холодец',
  73. 'Пельмени с картошкой',
  74. 'Чайхана плов',
  75. 'Овощной суп',
  76. 'Лобио',
  77. 'Макароны с тунцом',
  78. 'Спагетти с морепродуктами',
  79. 'Роллы Унаги',
  80. 'Каша гречневая',
  81. 'Паста с креветками',
  82. 'Жаркое по‑домашнему',
  83. 'Семга в терияки',
  84. 'Пицца Пепперони',
  85. 'Тартар из тунца',
  86. 'Сырники',
  87. 'Молодые картошечки',
  88. 'Лосось в азиатском стиле',
  89. 'Тунец поке',
  90. 'Омлет с овощами',
  91. 'Говядина по‑китайски',
  92. 'Бургер с курицей',
  93. 'Пудинг чиа с малиной',
  94. 'Печенье шоколадное',
  95. 'Кабачковая икра',
  96. 'Банановый хлеб',
  97. 'Куриные наггетсы',
  98. 'Чизкейк клубничный',
  99. 'Маффины с ягодами',
  100. 'Тайская лапша с курицей',
  101. 'Котлеты из индейки',
  102. 'Жареный лосось',
  103. 'Свинина по‑корейски',
  104. 'Гренки с чесноком',
  105. 'Фруктовый лед',
  106. 'Такос с говядиной',
  107. 'Пудинг тирамису',
  108. 'Фисташковое мороженое',
  109. 'Смузи с шпинатом',
  110. 'Пирог с яблоками',
  111. 'Крем‑суп из брокколи',
  112. 'Лосось гриль',
  113. 'Баранина тандыр',
  114. 'Оливье',
  115. 'Бледный карри',
  116. 'Печенье овсяное',
  117. 'Запеченные баклажаны',
  118. 'Тайская салат',
  119. 'Фиш энд чипс',
  120. 'Маффины с шоколадом',
  121. 'Куриные котлеты',
  122. 'Салат Капрезе',
  123. 'Мантарин кексы',
  124. 'Пирог с картошкой',
  125. 'Сырный пирог',
  126. 'Манго чатни',
  127. 'Пельмени с лососем',
  128. 'Лаваш с творогом',
  129. 'Малиновый пирог',
  130. 'Фруктовое мороженое',
  131. 'Тайский суп том кха',
  132. 'Лапша рамен',
  133. 'Печенье имбирное',
  134. 'Финики с орехами',
  135. 'Спагетти карбонара',
  136. 'Медовый торт',
  137. 'Трюфели шоколадные',
  138. 'Салат Оливье с курицей',
  139. 'Салат с морепродуктами',
  140. 'Шоколадный торт',
  141. 'Пельмени с говядиной',
  142. 'Рулет с мясом',
  143. 'Овощной суп с курицей',
  144. 'Куриные крылышки в барбекю',
  145. 'Шоколадные кексы',
  146. 'Мармелад варенье',
  147. 'Пельмени с курицей',
  148. 'Пудинг тыквенный',
  149. 'Омлет с сыром',
  150. 'Чизкейк шоколадный',
  151. 'Лосось терияки',
  152. 'Тунец гриль',
  153. 'Паста с куриной грудкой',
  154. 'Гречка с овощами',
  155. 'Пирог с вишней',
  156. 'Тирамису',
  157. 'Лаваш с лососем',
  158. 'Пюре картофельное',
  159. 'Окрошка на кефире',
  160. 'Тайская лапша с креветками',
  161. 'Боба тайская',
  162. 'Пудинг тыквенный с кокосом',
  163. 'Лазанья с мясом',
  164. 'Пельмени с картошкой и грибами',
  165. 'Суп фасолевый',
  166. 'Томатный суп',
  167. 'Тайский суп том ям',
  168. 'Шаурма куриная',
  169. 'Песочное печенье',
  170. 'Компот из сухофруктов',
  171. 'Крабовый салат',
  172. 'Пицца с грибами',
  173. 'Свинина по‑индийски',
  174. 'Суп с фрикадельками',
  175. 'Блинчики с творогом',
  176. 'Коктейль фруктовый',
  177. 'Суп‑пюре гороховый',
  178. 'Булочки с корицей',
  179. 'Курица терияки',
  180. 'Картошка с курицей',
  181. 'Салат Цезарь с курицей',
  182. 'Пудинг тирамису с малиной',
  183. 'Сырники с вареньем',
  184. 'Французский луковый суп',
  185. 'Пицца с морепродуктами',
  186. 'Тирамису клубничный',
  187. 'Чай черный',
  188. 'Борщ зелёный',
  189. 'Коктейль банановый',
  190. 'Жаркое по‑французски',
  191. 'Карпаччо из лосося',
  192. 'Суп с грибами',
  193. 'Пирожное "Наполеон"',
  194. 'Жареный рис с овощами',
  195. 'Бургер говяжий',
  196. 'Салат Греческий с оливками',
  197. 'Фруктовый салат с медом',
  198. 'Томатный суп с мясом',
  199. 'Пицца с пепперони',
  200. 'Суп‑гуляш',
  201. 'Картошка жареная',
  202. 'Салат из свежих овощей',
  203. 'Сырники с яблоками',
  204. 'Булочки с маком',
  205. 'Тарталетки с фруктами',
  206. 'Чизкейк клубнично‑банановый',
  207. 'Куриное филе в соевом соусе',
  208. 'Медовый кекс',
  209. 'Лосось по‑азиатски',
  210. 'Салат из креветок',
  211. 'Паста с грибами',
  212. 'Салат с крабовыми палочками',
  213. 'Куриные крылышки в кисло‑сладком соусе',
  214. 'Суп‑харчо',
  215. 'Манго с курицей',
  216. 'Пюре из сельдерея',
  217. ];
  218. var militaryRanks = [
  219. 'Солдат',
  220. 'Ефрейтор',
  221. 'Младший сержант',
  222. 'Сержант',
  223. 'Старший сержант',
  224. 'Старшина',
  225. 'Прапорщик',
  226. 'Старший прапорщик',
  227. 'Младший лейтенант',
  228. 'Лейтенант',
  229. 'Старший лейтенант',
  230. 'Капитан',
  231. 'Майор',
  232. 'Подполковник',
  233. 'Полковник',
  234. 'Генерал-майор',
  235. 'Генерал-лейтенант',
  236. 'Генерал-полковник',
  237. 'Генерал армии',
  238. 'Маршал',
  239. 'Стажер',
  240. 'Ассистент',
  241. 'Аналитик',
  242. 'Специалист',
  243. 'Старший специалист',
  244. 'Младший менеджер',
  245. 'Менеджер',
  246. 'Старший менеджер',
  247. 'Руководитель отдела',
  248. 'Директор по направлению',
  249. 'Заместитель генерального директора',
  250. 'Генеральный директор',
  251. 'Исполнительный директор',
  252. 'Президент',
  253. 'Председатель правления'
  254. ];
  255. let replaceName = (string, name) => {
  256. if (!string) return "";
  257. const pattern = /\*(.*)\*/;
  258. const botName = string.match(pattern);
  259. if (!botName) return string;
  260. else {
  261. string = string.replace(botName[1], name);
  262. return string;
  263. }
  264. }
  265. const namesDict = {};
  266. function changeNames() {
  267. for (const cre of Object.values(stage.pole.obj)){
  268. if (cre.hero !== 1 || !cre.nametxt.includes("*")) continue;
  269. console.log(cre.nametxt);
  270. const name = getRandomChoice(names);
  271. names.splice(names.indexOf(name), 1);
  272. const rank = getRandomChoice(militaryRanks);
  273. militaryRanks.splice(militaryRanks.indexOf(rank), 1);
  274. const randomName = rank + " " + name;
  275. namesDict[cre.nametxt] = randomName;
  276. names.splice(names.indexOf(randomName), 1);
  277. cre.nametxt = randomName;
  278. inf[cre.obj_index] = replaceName(inf[cre.obj_index], randomName);
  279. cre.command = replaceName(cre.command, randomName);
  280. cre.command_new = replaceName(cre.command_new, randomName);
  281. showmi[cre.obj_index];
  282. }
  283. }
  284. function monitorFonts(){
  285. for (const font of document.querySelectorAll("font")){
  286. // font.textContent
  287. if (Object.keys(namesDict).includes(font.textContent)){
  288. font.textContent = namesDict[font.textContent];
  289. }
  290. }
  291. }
  292. setInterval(monitorFonts, 1000);
  293. let settings_interval = setInterval(() => {
  294. if (Object.keys(unsafeWindow.stage.pole.obj).length !== 0) {
  295. clearInterval(settings_interval);
  296. changeNames();
  297. }
  298. }, 300)