1
0
Fork 1
mirror of https://github.com/TeamOctolings/Octobot.git synced 2025-01-31 00:19:00 +03:00

Unhardcoded bot mention + some small fixes (#7)

Co-authored-by: Octol1ttle <l1ttleofficial@outlook.com>
This commit is contained in:
Macintxsh 2022-12-05 17:04:27 +03:00 committed by GitHub
parent c02f503557
commit 1258496697
Signed by: GitHub
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 467 additions and 365 deletions

3
.gitignore vendored
View file

@ -5,4 +5,5 @@ bin/
obj/
/packages/
riderModule.iml
/_ReSharper.Caches/
/_ReSharper.Caches/
/.vs/

View file

@ -1,4 +1,4 @@
using System.Collections.ObjectModel;
using System.Collections.ObjectModel;
using System.Text;
using Discord;
using Discord.WebSocket;
@ -21,8 +21,7 @@ public static class Boyfriend {
};
private static readonly List<Tuple<Game, TimeSpan>> ActivityList = new() {
Tuple.Create(new Game("UNDEAD CORPORATION - Everything will freeze", ActivityType.Listening),
new TimeSpan(0, 3, 18)),
Tuple.Create(new Game("UNDEAD CORPORATION - Everything will freeze", ActivityType.Listening), new TimeSpan(0, 3, 18)),
Tuple.Create(new Game("Xi - Blue Zenith", ActivityType.Listening), new TimeSpan(0, 4, 16)),
Tuple.Create(new Game("Kurokotei - Scattered Faith", ActivityType.Listening), new TimeSpan(0, 8, 21)),
Tuple.Create(new Game("Splatoon 3 - Candy-Coated Rocks", ActivityType.Listening), new TimeSpan(0, 2, 39)),

View file

@ -1,4 +1,4 @@
using System.Text;
using System.Text;
using Boyfriend.Commands;
using Discord;
using Discord.Commands;
@ -13,7 +13,7 @@ public sealed class CommandProcessor {
private const string NoAccess = ":no_entry_sign: ";
private const string CantInteract = ":vertical_traffic_light: ";
private const string Mention = "<@855023234407333888>";
private static readonly string Mention = $"<@{Boyfriend.Client.CurrentUser.Id}>";
public static readonly ICommand[] Commands = {
new BanCommand(), new ClearCommand(), new HelpCommand(),

View file

@ -1,360 +1,462 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089
</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089
</value>
</resheader>
<data name="Ready" xml:space="preserve">
<value>{0}я родился!</value>
</data>
<data name="CachedMessageDeleted" xml:space="preserve">
<value>вырезано {0} в канале {1}: {2}</value>
</data>
<data name="CachedMessageEdited" xml:space="preserve">
<value>переделано {0}: {1} -&gt; {2}</value>
</data>
<data name="DefaultWelcomeMessage" xml:space="preserve">
<value>{0}, добро пожаловать на сервер {1}</value>
</data>
<data name="Beep1" xml:space="preserve">
<value>брах! </value>
</data>
<data name="Beep2" xml:space="preserve">
<value>брох! </value>
</data>
<data name="Beep3" xml:space="preserve">
<value>брух! </value>
</data>
<data name="CommandNoPermissionBot" xml:space="preserve">
<value>у меня прав нету, сделай что нибудь.</value>
</data>
<data name="CommandNoPermissionUser" xml:space="preserve">
<value>у тебя прав нету, твои проблемы.</value>
</data>
<data name="YouWereBanned" xml:space="preserve">
<value>здарова, тебя крч забанил {0} на сервере {1} за {2}</value>
</data>
<data name="PunishmentExpired" xml:space="preserve">
<value>время бана закончиловсь</value>
</data>
<data name="ClearAmountTooSmall" xml:space="preserve">
<value>ты выбрал менее {0} сообщений</value>
</data>
<data name="ClearAmountTooLarge" xml:space="preserve">
<value>ты выбрал более {0} сообщений</value>
</data>
<data name="CommandHelp" xml:space="preserve">
<value>туториал по приколам:</value>
</data>
<data name="YouWereKicked" xml:space="preserve">
<value>здарова, тебя крч кикнул {0} на сервере {1} за {2}</value>
</data>
<data name="Milliseconds" xml:space="preserve">
<value>мс</value>
</data>
<data name="MemberAlreadyMuted" xml:space="preserve">
<value>шизоид уже замучен!</value>
</data>
<data name="ChannelNotSpecified" xml:space="preserve">
<value>*тут ничего нет*</value>
</data>
<data name="RoleNotSpecified" xml:space="preserve">
<value>*тут ничего нет*</value>
</data>
<data name="CurrentSettings" xml:space="preserve">
<value>настройки:</value>
</data>
<data name="SettingsLang" xml:space="preserve">
<value>язык</value>
</data>
<data name="SettingsPrefix" xml:space="preserve">
<value>префикс</value>
</data>
<data name="SettingsRemoveRolesOnMute" xml:space="preserve">
<value>удалять звание при муте</value>
</data>
<data name="SettingsSendWelcomeMessages" xml:space="preserve">
<value>разглашать о том что пришел новый шизоид</value>
</data>
<data name="SettingsMuteRole" xml:space="preserve">
<value>роль замученного</value>
</data>
<data name="SettingsBotLogChannel" xml:space="preserve">
<value>канал бот-уведомлений</value>
</data>
<data name="LanguageNotSupported" xml:space="preserve">
<value>такого языка нету, ты шо</value>
</data>
<data name="Yes" xml:space="preserve">
<value>да</value>
</data>
<data name="No" xml:space="preserve">
<value>нъет</value>
</data>
<data name="UserNotBanned" xml:space="preserve">
<value>шизик не забанен</value>
</data>
<data name="MemberNotMuted" xml:space="preserve">
<value>шизоид не замучен!</value>
</data>
<data name="RolesReturned" xml:space="preserve">
<value>кто-то решил поумничать и обошел роль мута. я ее вернул.</value>
</data>
<data name="SettingsWelcomeMessage" xml:space="preserve">
<value>приветствие</value>
</data>
<data name="ClearAmountInvalid" xml:space="preserve">
<value>выбери число от {0} до {1} вместо {2}!</value>
</data>
<data name="FeedbackUserBanned" xml:space="preserve">
<value>забанен {0} на{1}: {2}</value>
</data>
<data name="UserNotInGuild" xml:space="preserve">
<value>шизик не на этом сервере</value>
</data>
<data name="SettingDoesntExist" xml:space="preserve">
<value>такой прикол не существует</value>
</data>
<data name="SettingsReceiveStartupMessages" xml:space="preserve">
<value>получать инфу о рождении бота</value>
</data>
<data name="InvalidSettingValue" xml:space="preserve">
<value>криво настроил прикол, давай по новой</value>
</data>
<data name="InvalidRole" xml:space="preserve">
<value>этого звания нету, ты шо</value>
</data>
<data name="InvalidChannel" xml:space="preserve">
<value>этого канала нету, ты шо</value>
</data>
<data name="RoleRemovalFailed" xml:space="preserve">
<value>я не украл звание {0} в связи с ошибкой! {1}</value>
</data>
<data name="DurationRequiredForTimeOuts" xml:space="preserve">
<value>ты шо, мутить больше чем на 28 дней таймаут не разрешает, вот настроишь роль мута, тогда поговорим</value>
</data>
<data name="CannotTimeOutBot" xml:space="preserve">
<value>я не могу замутить ботов, сделай что нибудь</value>
</data>
<data name="SettingsStarterRole" xml:space="preserve">
<value>базовое звание</value>
</data>
<data name="EventCreated" xml:space="preserve">
<value>{0} приготовил новый квест {1}! он пройдёт в {2} и начнётся &lt;t:{3}:R&gt;!{4}</value>
</data>
<data name="SettingsEventNotificationRole" xml:space="preserve">
<value>роль для уведомлений о создании квеста</value>
</data>
<data name="SettingsEventNotificationChannel" xml:space="preserve">
<value>канал для уведомлений о квестах</value>
</data>
<data name="SettingsEventStartedReceivers" xml:space="preserve">
<value>получатели уведомлений о начале квеста</value>
</data>
<data name="EventStarted" xml:space="preserve">
<value>{0}квест {1} начинается в {2}!</value>
</data>
<data name="SettingsFrowningFace" xml:space="preserve">
<value>оъмъомоъемъъео(((( </value>
</data>
<data name="EventCancelled" xml:space="preserve">
<value>квест {0} отменен!{1}</value>
</data>
<data name="EventCompleted" xml:space="preserve">
<value>квест {0} завершен! все это длилось {1}</value>
</data>
<data name="Ever" xml:space="preserve">
<value>всегда</value>
</data>
<data name="FeedbackMessagesCleared" xml:space="preserve">
<value>удалено {0} сообщений в {1}</value>
</data>
<data name="FeedbackMemberKicked" xml:space="preserve">
<value>выгнан {0}: {1}</value>
</data>
<data name="FeedbackMemberMuted" xml:space="preserve">
<value>замучен {0} на{1}: {2}</value>
</data>
<data name="FeedbackUserUnbanned" xml:space="preserve">
<value>раззабанен {0}: {1}</value>
</data>
<data name="FeedbackMemberUnmuted" xml:space="preserve">
<value>раззамучен {0}: {1}</value>
</data>
<data name="SettingsNothingChanged" xml:space="preserve">
<value>ты все сломал! значение прикола `{0}` и так {1}</value>
</data>
<data name="SettingNotDefined" xml:space="preserve">
<value>*тут ничего нет*</value>
</data>
<data name="FeedbackSettingsUpdated" xml:space="preserve">
<value>прикол для `{0}` теперь установлен на {1}</value>
</data>
<data name="CommandDescriptionBan" xml:space="preserve">
<value>возводит великий банхаммер над шизоидом</value>
</data>
<data name="CommandDescriptionClear" xml:space="preserve">
<value>удаляет сообщения. сколько хош, столько и удалит</value>
</data>
<data name="CommandDescriptionHelp" xml:space="preserve">
<value>показывает то, что ты сейчас видишь прямо сейчас</value>
</data>
<data name="CommandDescriptionKick" xml:space="preserve">
<value>выпинывает шизоида</value>
</data>
<data name="CommandDescriptionMute" xml:space="preserve">
<value>мутит шизоида</value>
</data>
<data name="CommandDescriptionPing" xml:space="preserve">
<value>показывает пинг (сверхмегаточный (нет))</value>
</data>
<data name="CommandDescriptionSettings" xml:space="preserve">
<value>настройки бота под этот сервер</value>
</data>
<data name="CommandDescriptionUnban" xml:space="preserve">
<value>отводит великий банхаммер от шизоида</value>
</data>
<data name="CommandDescriptionUnmute" xml:space="preserve">
<value>раззамучивает шизоида</value>
</data>
<data name="MissingNumber" xml:space="preserve">
<value>укажи целое число от {0} до {1}</value>
</data>
<data name="MissingUser" xml:space="preserve">
<value>укажи самого шизика</value>
</data>
<data name="InvalidUser" xml:space="preserve">
<value>надо указать юзверя вместо {0}!</value>
</data>
<data name="MissingMember" xml:space="preserve">
<value>укажи самого шизика</value>
</data>
<data name="InvalidMember" xml:space="preserve">
<value>укажи шизоида сервера вместо {0}!</value>
</data>
<data name="UserCannotBanMembers" xml:space="preserve">
<value>бан</value>
</data>
<data name="UserCannotManageMessages" xml:space="preserve">
<value>Ты не можешь управлять сообщениями этого сервера!</value>
</data>
<data name="UserCannotKickMembers" xml:space="preserve">
<value>кик шизиков нельзя</value>
</data>
<data name="UserCannotModerateMembers" xml:space="preserve">
<value>тебе нельзя управлять шизоидами</value>
</data>
<data name="UserCannotManageGuild" xml:space="preserve">
<value>тебе нельзя редактировать дурку</value>
</data>
<data name="BotCannotBanMembers" xml:space="preserve">
<value>я не могу ваще никого банить чел.</value>
</data>
<data name="BotCannotManageMessages" xml:space="preserve">
<value>я не могу исправлять орфографический кринж участников, сделай что нибудь.</value>
</data>
<data name="BotCannotKickMembers" xml:space="preserve">
<value>я не могу ваще никого кикать чел.</value>
</data>
<data name="BotCannotModerateMembers" xml:space="preserve">
<value>я не могу контроллировать за всеми ними, сделай что нибудь.</value>
</data>
<data name="BotCannotManageGuild" xml:space="preserve">
<value>я не могу этому серверу хоть че либо нибудь изменить, сделай что нибудь.</value>
</data>
<data name="MissingBanReason" xml:space="preserve">
<value>укажи зачем банить шизика</value>
</data>
<data name="MissingKickReason" xml:space="preserve">
<value>укажи зачем кикать шизика</value>
</data>
<data name="MissingMuteReason" xml:space="preserve">
<value>укажи зачем мутить шизика</value>
</data>
<data name="MissingSetting" xml:space="preserve">
<value>укажи настройку которую менять нужно</value>
</data>
<data name="MissingUnbanReason" xml:space="preserve">
<value>укажи зачем раззабанивать шизика</value>
</data>
<data name="MissingUnmuteReason" xml:space="preserve">
<value>укажи зачам размучивать шизика</value>
</data>
<data name="UserCannotBanBot" xml:space="preserve">
<value>че ты там вякнул?</value>
</data>
<data name="UserCannotBanOwner" xml:space="preserve">
<value>бан админу нельзя</value>
</data>
<data name="UserCannotBanTarget" xml:space="preserve">
<value>бан этому шизику нельзя</value>
</data>
<data name="UserCannotBanThemselves" xml:space="preserve">
<value>самобан нельзя</value>
</data>
<data name="BotCannotBanTarget" xml:space="preserve">
<value>я не могу его забанить...</value>
</data>
<data name="UserCannotKickOwner" xml:space="preserve">
<value>кик админу нельзя</value>
</data>
<data name="UserCannotKickThemselves" xml:space="preserve">
<value>самокик нельзя</value>
</data>
<data name="UserCannotKickBot" xml:space="preserve">
<value>че ты там вякнул?</value>
</data>
<data name="BotCannotKickTarget" xml:space="preserve">
<value>я не могу его кикнуть...</value>
</data>
<data name="UserCannotKickTarget" xml:space="preserve">
<value>кик этому шизику нельзя</value>
</data>
<data name="UserCannotMuteOwner" xml:space="preserve">
<value>мут админу нельзя</value>
</data>
<data name="UserCannotMuteThemselves" xml:space="preserve">
<value>самомут нельзя</value>
</data>
<data name="UserCannotMuteBot" xml:space="preserve">
<value>че ты там вякнул?</value>
</data>
<data name="BotCannotMuteTarget" xml:space="preserve">
<value>я не могу его замутить...</value>
</data>
<data name="UserCannotMuteTarget" xml:space="preserve">
<value>мут этому шизику нельзя</value>
</data>
<data name="UserCannotUnmuteOwner" xml:space="preserve">
<value>ты шо далбайоп шоле, админ замозамучался, не трожь</value>
</data>
<data name="UserCannotUnmuteThemselves" xml:space="preserve">
<value>ты замучен.</value>
</data>
<data name="UserCannotUnmuteBot" xml:space="preserve">
<value>... </value>
</data>
<data name="UserCannotUnmuteTarget" xml:space="preserve">
<value>тебе нельзя раззамучивать</value>
</data>
<data name="BotCannotUnmuteTarget" xml:space="preserve">
<value>я не могу его раззамутить...</value>
</data>
<data name="EventEarlyNotification" xml:space="preserve">
<value>{0}квест {1} начнется &lt;t:{2}:R&gt;!</value>
</data>
<data name="SettingsEventEarlyNotificationOffset" xml:space="preserve">
<value>заранее пнуть в минутах до начала квеста</value>
</data>
</root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Ready" xml:space="preserve">
<value>{0}я родился!</value>
</data>
<data name="CachedMessageDeleted" xml:space="preserve">
<value>вырезано {0} в канале {1}: {2}</value>
</data>
<data name="CachedMessageEdited" xml:space="preserve">
<value>переделано {0}: {1} -&gt; {2}</value>
</data>
<data name="DefaultWelcomeMessage" xml:space="preserve">
<value>{0}, добро пожаловать на сервер {1}</value>
</data>
<data name="Beep1" xml:space="preserve">
<value>брах! </value>
</data>
<data name="Beep2" xml:space="preserve">
<value>брох! </value>
</data>
<data name="Beep3" xml:space="preserve">
<value>брух! </value>
</data>
<data name="CommandNoPermissionBot" xml:space="preserve">
<value>у меня прав нету, сделай что нибудь.</value>
</data>
<data name="CommandNoPermissionUser" xml:space="preserve">
<value>у тебя прав нету, твои проблемы.</value>
</data>
<data name="YouWereBanned" xml:space="preserve">
<value>здарова, тебя крч забанил {0} на сервере {1} за {2}</value>
</data>
<data name="PunishmentExpired" xml:space="preserve">
<value>время бана закончиловсь</value>
</data>
<data name="ClearAmountTooSmall" xml:space="preserve">
<value>ты выбрал менее {0} сообщений</value>
</data>
<data name="ClearAmountTooLarge" xml:space="preserve">
<value>ты выбрал более {0} сообщений</value>
</data>
<data name="CommandHelp" xml:space="preserve">
<value>туториал по приколам:</value>
</data>
<data name="YouWereKicked" xml:space="preserve">
<value>здарова, тебя крч кикнул {0} на сервере {1} за {2}</value>
</data>
<data name="Milliseconds" xml:space="preserve">
<value>мс</value>
</data>
<data name="MemberAlreadyMuted" xml:space="preserve">
<value>шизоид уже замучен!</value>
</data>
<data name="ChannelNotSpecified" xml:space="preserve">
<value>*тут ничего нет*</value>
</data>
<data name="RoleNotSpecified" xml:space="preserve">
<value>*тут ничего нет*</value>
</data>
<data name="CurrentSettings" xml:space="preserve">
<value>настройки:</value>
</data>
<data name="SettingsLang" xml:space="preserve">
<value>язык</value>
</data>
<data name="SettingsPrefix" xml:space="preserve">
<value>префикс</value>
</data>
<data name="SettingsRemoveRolesOnMute" xml:space="preserve">
<value>удалять звание при муте</value>
</data>
<data name="SettingsSendWelcomeMessages" xml:space="preserve">
<value>разглашать о том что пришел новый шизоид</value>
</data>
<data name="SettingsMuteRole" xml:space="preserve">
<value>роль замученного</value>
</data>
<data name="SettingsBotLogChannel" xml:space="preserve">
<value>канал бот-уведомлений</value>
</data>
<data name="LanguageNotSupported" xml:space="preserve">
<value>такого языка нету, ты шо</value>
</data>
<data name="Yes" xml:space="preserve">
<value>да</value>
</data>
<data name="No" xml:space="preserve">
<value>нъет</value>
</data>
<data name="UserNotBanned" xml:space="preserve">
<value>шизик не забанен</value>
</data>
<data name="MemberNotMuted" xml:space="preserve">
<value>шизоид не замучен!</value>
</data>
<data name="RolesReturned" xml:space="preserve">
<value>кто-то решил поумничать и обошел роль мута. я ее вернул.</value>
</data>
<data name="SettingsWelcomeMessage" xml:space="preserve">
<value>приветствие</value>
</data>
<data name="ClearAmountInvalid" xml:space="preserve">
<value>выбери число от {0} до {1} вместо {2}!</value>
</data>
<data name="FeedbackUserBanned" xml:space="preserve">
<value>забанен {0} на{1}: {2}</value>
</data>
<data name="UserNotInGuild" xml:space="preserve">
<value>шизик не на этом сервере</value>
</data>
<data name="SettingDoesntExist" xml:space="preserve">
<value>такой прикол не существует</value>
</data>
<data name="SettingsReceiveStartupMessages" xml:space="preserve">
<value>получать инфу о рождении бота</value>
</data>
<data name="InvalidSettingValue" xml:space="preserve">
<value>криво настроил прикол, давай по новой</value>
</data>
<data name="InvalidRole" xml:space="preserve">
<value>этого звания нету, ты шо</value>
</data>
<data name="InvalidChannel" xml:space="preserve">
<value>этого канала нету, ты шо</value>
</data>
<data name="RoleRemovalFailed" xml:space="preserve">
<value>я не украл звание {0} в связи с ошибкой! {1}</value>
</data>
<data name="DurationRequiredForTimeOuts" xml:space="preserve">
<value>ты шо, мутить больше чем на 28 дней таймаут не разрешает, вот настроишь роль мута, тогда поговорим</value>
</data>
<data name="CannotTimeOutBot" xml:space="preserve">
<value>я не могу замутить ботов, сделай что нибудь</value>
</data>
<data name="SettingsStarterRole" xml:space="preserve">
<value>базовое звание</value>
</data>
<data name="EventCreated" xml:space="preserve">
<value>{0} приготовил новый квест {1}! он пройдёт в {2} и начнётся &lt;t:{3}:R&gt;!{4}</value>
</data>
<data name="SettingsEventNotificationRole" xml:space="preserve">
<value>роль для уведомлений о создании квеста</value>
</data>
<data name="SettingsEventNotificationChannel" xml:space="preserve">
<value>канал для уведомлений о квестах</value>
</data>
<data name="SettingsEventStartedReceivers" xml:space="preserve">
<value>получатели уведомлений о начале квеста</value>
</data>
<data name="EventStarted" xml:space="preserve">
<value>{0}квест {1} начинается в {2}!</value>
</data>
<data name="SettingsFrowningFace" xml:space="preserve">
<value>оъмъомоъемъъео(((( </value>
</data>
<data name="EventCancelled" xml:space="preserve">
<value>квест {0} отменен!{1}</value>
</data>
<data name="EventCompleted" xml:space="preserve">
<value>квест {0} завершен! все это длилось {1}</value>
</data>
<data name="Ever" xml:space="preserve">
<value>всегда</value>
</data>
<data name="FeedbackMessagesCleared" xml:space="preserve">
<value>удалено {0} сообщений в {1}</value>
</data>
<data name="FeedbackMemberKicked" xml:space="preserve">
<value>выгнан {0}: {1}</value>
</data>
<data name="FeedbackMemberMuted" xml:space="preserve">
<value>замучен {0} на{1}: {2}</value>
</data>
<data name="FeedbackUserUnbanned" xml:space="preserve">
<value>раззабанен {0}: {1}</value>
</data>
<data name="FeedbackMemberUnmuted" xml:space="preserve">
<value>раззамучен {0}: {1}</value>
</data>
<data name="SettingsNothingChanged" xml:space="preserve">
<value>ты все сломал! значение прикола `{0}` и так {1}</value>
</data>
<data name="SettingNotDefined" xml:space="preserve">
<value>*тут ничего нет*</value>
</data>
<data name="FeedbackSettingsUpdated" xml:space="preserve">
<value>прикол для `{0}` теперь установлен на {1}</value>
</data>
<data name="CommandDescriptionBan" xml:space="preserve">
<value>возводит великий банхаммер над шизоидом</value>
</data>
<data name="CommandDescriptionClear" xml:space="preserve">
<value>удаляет сообщения. сколько хош, столько и удалит</value>
</data>
<data name="CommandDescriptionHelp" xml:space="preserve">
<value>показывает то, что ты сейчас видишь прямо сейчас</value>
</data>
<data name="CommandDescriptionKick" xml:space="preserve">
<value>выпинывает шизоида</value>
</data>
<data name="CommandDescriptionMute" xml:space="preserve">
<value>мутит шизоида</value>
</data>
<data name="CommandDescriptionPing" xml:space="preserve">
<value>показывает пинг (сверхмегаточный (нет))</value>
</data>
<data name="CommandDescriptionSettings" xml:space="preserve">
<value>настройки бота под этот сервер</value>
</data>
<data name="CommandDescriptionUnban" xml:space="preserve">
<value>отводит великий банхаммер от шизоида</value>
</data>
<data name="CommandDescriptionUnmute" xml:space="preserve">
<value>раззамучивает шизоида</value>
</data>
<data name="MissingNumber" xml:space="preserve">
<value>укажи целое число от {0} до {1}</value>
</data>
<data name="MissingUser" xml:space="preserve">
<value>укажи самого шизика</value>
</data>
<data name="InvalidUser" xml:space="preserve">
<value>надо указать юзверя вместо {0}!</value>
</data>
<data name="MissingMember" xml:space="preserve">
<value>укажи самого шизика</value>
</data>
<data name="InvalidMember" xml:space="preserve">
<value>укажи шизоида сервера вместо {0}!</value>
</data>
<data name="UserCannotBanMembers" xml:space="preserve">
<value>бан</value>
</data>
<data name="UserCannotManageMessages" xml:space="preserve">
<value>тебе нельзя иметь власть над сообщениями шизоидов</value>
</data>
<data name="UserCannotKickMembers" xml:space="preserve">
<value>кик шизиков нельзя</value>
</data>
<data name="UserCannotModerateMembers" xml:space="preserve">
<value>тебе нельзя управлять шизоидами</value>
</data>
<data name="UserCannotManageGuild" xml:space="preserve">
<value>тебе нельзя редактировать дурку</value>
</data>
<data name="BotCannotBanMembers" xml:space="preserve">
<value>я не могу ваще никого банить чел.</value>
</data>
<data name="BotCannotManageMessages" xml:space="preserve">
<value>я не могу исправлять орфографический кринж участников, сделай что нибудь.</value>
</data>
<data name="BotCannotKickMembers" xml:space="preserve">
<value>я не могу ваще никого кикать чел.</value>
</data>
<data name="BotCannotModerateMembers" xml:space="preserve">
<value>я не могу контроллировать за всеми ними, сделай что нибудь.</value>
</data>
<data name="BotCannotManageGuild" xml:space="preserve">
<value>я не могу этому серверу хоть че либо нибудь изменить, сделай что нибудь.</value>
</data>
<data name="MissingBanReason" xml:space="preserve">
<value>укажи зачем банить шизика</value>
</data>
<data name="MissingKickReason" xml:space="preserve">
<value>укажи зачем кикать шизика</value>
</data>
<data name="MissingMuteReason" xml:space="preserve">
<value>укажи зачем мутить шизика</value>
</data>
<data name="MissingSetting" xml:space="preserve">
<value>укажи настройку которую менять нужно</value>
</data>
<data name="MissingUnbanReason" xml:space="preserve">
<value>укажи зачем раззабанивать шизика</value>
</data>
<data name="MissingUnmuteReason" xml:space="preserve">
<value>укажи зачам размучивать шизика</value>
</data>
<data name="UserCannotBanBot" xml:space="preserve">
<value>ээбля френдли фаер огонь по своим</value>
</data>
<data name="UserCannotBanOwner" xml:space="preserve">
<value>бан админу нельзя</value>
</data>
<data name="UserCannotBanTarget" xml:space="preserve">
<value>бан этому шизику нельзя</value>
</data>
<data name="UserCannotBanThemselves" xml:space="preserve">
<value>самобан нельзя</value>
</data>
<data name="BotCannotBanTarget" xml:space="preserve">
<value>я не могу его забанить...</value>
</data>
<data name="UserCannotKickOwner" xml:space="preserve">
<value>кик админу нельзя</value>
</data>
<data name="UserCannotKickThemselves" xml:space="preserve">
<value>самокик нельзя</value>
</data>
<data name="UserCannotKickBot" xml:space="preserve">
<value>ээбля френдли фаер огонь по своим</value>
</data>
<data name="BotCannotKickTarget" xml:space="preserve">
<value>я не могу его кикнуть...</value>
</data>
<data name="UserCannotKickTarget" xml:space="preserve">
<value>кик этому шизику нельзя</value>
</data>
<data name="UserCannotMuteOwner" xml:space="preserve">
<value>мут админу нельзя</value>
</data>
<data name="UserCannotMuteThemselves" xml:space="preserve">
<value>самомут нельзя</value>
</data>
<data name="UserCannotMuteBot" xml:space="preserve">
<value>ээбля френдли фаер огонь по своим</value>
</data>
<data name="BotCannotMuteTarget" xml:space="preserve">
<value>я не могу его замутить...</value>
</data>
<data name="UserCannotMuteTarget" xml:space="preserve">
<value>мут этому шизику нельзя</value>
</data>
<data name="UserCannotUnmuteOwner" xml:space="preserve">
<value>ты шо далбайоп шоле, админ замозамучался, не трожь</value>
</data>
<data name="UserCannotUnmuteThemselves" xml:space="preserve">
<value>ты замучен.</value>
</data>
<data name="UserCannotUnmuteBot" xml:space="preserve">
<value>... </value>
</data>
<data name="UserCannotUnmuteTarget" xml:space="preserve">
<value>тебе нельзя раззамучивать</value>
</data>
<data name="BotCannotUnmuteTarget" xml:space="preserve">
<value>я не могу его раззамутить...</value>
</data>
<data name="EventEarlyNotification" xml:space="preserve">
<value>{0}квест {1} начнется &lt;t:{2}:R&gt;!</value>
</data>
<data name="SettingsEventEarlyNotificationOffset" xml:space="preserve">
<value>заранее пнуть в минутах до начала квеста</value>
</data>
</root>