# █████████████████████████████████████████ # █────██────█────█────█───█────█────█────█ # █─██──█─██─█─██─█─██─██─██─██─█─██─█─██─█ # █─██──█─██─█────█─██─██─██─██─█────█─██─█ # █─██──█─██─█─█─██─██─██─██─██─█─█─██─██─█ # █────██────█─█─██────██─██────█─█─██────█ # █████████████████████████████████████████ # # # Copyright 2022 t.me/Dorotoro # https://www.gnu.org/licenses/agpl-3.0.html # meta banner: https://raw.githubusercontent.com/dorotorothequickend/DorotoroModules/main/banners/DorotoroInlineTTS.png # meta developer: @DorotoroMods from telethon.tl.types import Message from .. import loader, utils @loader.tds class InlineTTS(loader.Module): """Синтезирует текст в голос ваших любимых героев!Пример использования: .atts arthas Привет""" strings = {"name": "InlineTTS"} @loader.command() async def atts(self, message: Message): "<герой> <ваш текст> - синтезирует текст в голос героев из Warcraft III и обычных говорилок." args = utils.get_args_raw(message) if not args: await utils.answer( message, ( "😱 | Чел... я" " пустоту не озвучиваю." ), ) return reply = await message.get_reply_message() async with self._client.conversation("@silero_voice_bot") as conv: my_msg = await conv.send_message(args) r = await conv.get_response() if not r.media: await my_msg.delete() return await utils.answer(message, "Пожалуйста, выполните действие в личке с @silero_voice_bot, а после используйте команду .atts") await message.respond(file=r, reply_to=reply.id if reply else None) if message.out: await message.delete() @loader.command() async def warcraftv(self, message): "- список голосов для синтеза (Герои Warcraft III)" await utils.answer( message, ( " 💬 Warcraft III Voices:\n\n arthas | kelthuzad" " | anubarak | thrall | " " grunt | cairne | rexxar |" " uther | jaina | kael | " " garithos | malev | naisha |" " tyrande | furion | illidan" " | ladyvashj | narrator |" " medivh | villagerm | acolyte" " | sylvanas | dread_bm | " " dread_t | illidan_f | mannoroth " " | muradin | peasant | priest" " | sorceress | peon | " " chen " ), ) @loader.command() async def silerov(self, message): "- список голосов для синтеза (Silero)" await utils.answer( message, ( "👾 Silero Voices:\n\n aidar | baya |" " kseniya | xenia | eugene " ), ) @loader.command() async def halflifev(self, message): "- список голосов для синтеза (Half-Life)" await utils.answer( message, ( "🔫 Half-Life Voices:\n\n alyx | breen |" " gman_e2 | father | barney" " | gman | kleiner | " " vort_e2 | vort " ), ) @loader.command() async def portalv(self, message): "- список голосов для синтеза (Portal 2)" await utils.answer( message, "🔮 Portal 2 Voices:\n\n glados | wheatley ", ) @loader.command() async def starcraftv(self, message): "- список голосов для синтеза (Starcraft)" await utils.answer( message, ( "🪅 Starcraft Voices:\n\n hanson | kerrigan " " | stetmann | tosh | hill " " | raynor | swann | tychus" " | valerian " ), ) @loader.command() async def stalkerv(self, message): "- список голосов для синтеза (STALKER)" await utils.answer(message, "🛖 Stalker Voices:\n\nbandit") @loader.command() async def dotav(self, message): "- список голосов для синтеза (Dota 2)" await utils.answer( message, ( " Dota 2" " Voices:\n\nannouncer | antimage |" " batrider | bloodseeker |" " bounty | bristle | clockwerk |" " doom | earth | gyro |" " huskar | juggernaut | kotl |" " kunkka | lancer | lina |" " luna | meepo | mortred |" " omni | pudge | queen |" " ranger | riki | shaker |" " skywrath | sniper | storm |" " templar | tide | treant |" " tusk | windranger |" " witchdoctor | wraith" ), ) @loader.command() async def lolv(self, message): "- список голосов для синтеза (League of Legends)" await utils.answer( message, ( "🏳️‍🌈 LOL Voices:\n\nevelynn | pantheon |" " yuumi" ), ) @loader.command() async def zahmv(self, message): "- список голосов для синтеза (Atomic Heart)" await utils.answer( message, ( "🫀 Atomic Heart" "Voices: \n\nbabazina | hraz |" " p3 | tereshkova" ), ) @loader.command() async def skyv(self, message): "- список голосов для синтеза (Skyrim)" await utils.answer( message, ( " ⚔️ Skyrim" " Voices:\n\nancano | astrid |" " aventus | brynjolf/ |" " delphine | elenwen |" " emperor | esbern |" " felldir | gormlaith |" " hadvar | hakon |" " hermaeus | kodlak |" " maven | mercer |" " mirabelle | motierre |" " nazir | tsun |" " tullius | ulfric |" " vex | alduin |" " dragon | odahviing |" " paarthurnax | barbas |" " dremora | hagraven |" " f_child | m_child |" " arngeir | ebony |" " eorlund | falion |" " farengar | farkas |" " festus | m_argo |" " m_bandit | m_citizen |" " m_commander | m_commoner |" " m_coward | m_darkelf |" " m_drunk | m_forswon |" " m_guard | m_haughty |" " m_khajiit | m_nord |" " m_orc | m_soldier |" " malkoran | nazeem |" " sven | tolfdir |" " elisif | f_argo |" " f_commander | f_commoner |" " f_coward | f_darkelf |" " f_haughty | f_haughty |" " f_nord | f_orc |" " f_shrill | f_sultry |" " grelka | grelod |" " lydia | olava" ), ) @loader.command() async def fallv(self, message): "- список голосов для синтеза (Fallout 1 & 2)" await utils.answer( message, ( "💣 Fallout" "Voices:\n\ndick | dornan |" " elder | frank |" " hakunin | harold |" " marcus | master |" " officer | overseer |" " set | sulik |" " aradesh | cabbot |" " gizmo | harris |" " harry | jain |" " killian | laura |" " lieutenant | loxley |" " maxson | morpheus |" " nicole | rhombus |" " tandi | vree" ), ) @loader.command() async def postalv(self, message): "- список голосов для синтеза (Postal 2)" await utils.answer( message, ( "🔫 Postal 2" "Voices:\n\ndude | dude_cartoon" ), ) @loader.command() async def tfv(self, message): "- список голосов для синтеза (Team Fortress)" await utils.answer( message, ( "🔫 Team Fortress" "Voices:\n\ndemoman | engineer |" " heavy | medic |" " scout | sniper_tf |" " soldier | spy" ), ) @loader.command() async def heartv(self, message): "- список голосов для синтеза (Hearthstone)" await utils.answer( message, ( "💣 Hearthstone" "Voices:\n\nakazamzarak | aranna |" " arwyn | azalina |" " brann | bob |" " deathwhisper | dr_boom |" " eudora | elise |" " goya | greymane |" " innkeeper | hancho |" " kazakus | moroes |" " omu | omnotron |" " pollark | reno |" " togwaggle | stelina |" " vargoth | wagtoggle |" " anarii | applebough |" " floop | edra |" " loti | malfurion |" " tala | squeamlish |" " zenda | arha |" " arha | avozu |" " belnaara | cardish |" " draemus | flark |" " lunara | putricide |" " slate | shaw |" " smiggs | brukan |" " disidra | fireheart |" " hesutu | hagatha |" " ozara | rastakhan |" " siamat | rhogi |" " thunderking | zentimo |" " dr_sezavo | zibb |" " jolene | lanathel |" " tekahn_boss | sthara |" " jeklik | karastamper |" " tekahn | marei |" " aki | willow |" " bolan | belloc |" " glowtron | george" " rasil | tarkus |" " turalyon | timothy |" " valdera | yrel_hs |" " anduin | baechao |" " illucia | haro |" " lazul | oshi |" " talanji | tyrande_hs |" " awilo | zole |" " biggs | chu |" " dagg | dovo |" " hannigan | ilza |" " kizi | kasa |" " kyriss | saurfang |" " voone | tierra |" " candlebeard | gallywix |" " hooktusk | gnomenapper |" " lilian | maiev_hs |" " ol_toomba | myra |" " thrud | valeera_hs |" " isiset | kalec |" " khadgar | katrana |" " lilayell | malacrass |" " norroa | mozaki |" " robold | sinclari |" " stargazer | wendy |" " xurios | whirt |" ), ) @loader.command() async def metrov(self, message): "- список голосов для синтеза (Metro)" await utils.answer( message, ( "🚝 Metro" "Voices:\n\nbandit2 | bandit3 |" " bridger2 | bridger1 |" " bridger3 | forest1 |" " forest3 | forest2 |" " slave1 | slave2 |" " tribal1 | slave3 |" " tribal3 | krest |" " cannibal2 | miller |" " cannibal3 | merc1 |" " merc2 | blackheart" ), ) @loader.command() async def hotsv(self, message): "- список голосов для синтеза (HotS)" await utils.answer( message, ( "💣 Heroes of the Storm" "Voices:\n\nangel | barbarian |" " deckard | crusader |" " demon | demonhunter |" " witchdoctor_H | ana |" " lucio | dva |" " zarya | abathur |" " kerrigan_h | alarak |" " mechatassadar | mira |" " adjutant | athena |" " gardensdayannouncer | blackheart |" " drekthar | ladyofthorns |" " toy18 | necromancer |" " volskaya | erik |" " orphea | olaf" ), ) @loader.command() async def overv(self, message): "- список голосов для синтеза (Overwatch)" await utils.answer( message, ( "💣 Overwatch" "Voices:\n\ndoomfist | dva_ov |" " roadhog | junker |" " sigma | winston |" " witchdoctor_H | zarya |" " ana | baptiste |" " zarya | brigitte |" " kiriko | lucio_ov |" " moira | mercy |" " training_robot | zenyatta |" " ashe | echo |" " genji | cassidy |" " hanzo | junkrat |" " reaper | pharah |" " sojourn | soldier_76 |" " sombra | symmetra |" " widowmaker | tracer |" ), ) @loader.command() async def ritav(self, message): "- список голосов для синтеза (Rita)" await utils.answer( message, ( "💣 Rita" "Voices:\n\nrita" ), ) @loader.command() async def evilv(self, message): "- список голосов для синтеза (Evil Islands)" await utils.answer( message, ( "💣 Evil Islands" "Voices:\n\nzak" ), ) @loader.command() async def valv(self, message): "- список голосов для синтеза (Valorant)" await utils.answer( message, ( "💣 Valorant" "Voices:\n\nbrimstone | sage |" " harbor | sova" ), )