mirror of
https://github.com/JonnyBro/JaBa.git
synced 2024-11-22 05:04:58 +05:00
Конные скачки и секретное повышение джекпота :)
This commit is contained in:
parent
7ba63e372c
commit
85d3259bad
18 changed files with 181 additions and 20 deletions
|
@ -23,7 +23,7 @@ class Pay extends Command {
|
||||||
if (member.id === message.author.id) return message.error("economy/pay:YOURSELF");
|
if (member.id === message.author.id) return message.error("economy/pay:YOURSELF");
|
||||||
|
|
||||||
const sentAmount = args[1];
|
const sentAmount = args[1];
|
||||||
if (!sentAmount || isNaN(sentAmount) || parseInt(sentAmount, 10) <= 0) return message.error("economy/pay:INVALID_AMOUNT", { username: member.user.tag });
|
if (!sentAmount || isNaN(sentAmount) || parseInt(sentAmount, 10) <= 0) return message.error("economy/pay:INVALID_AMOUNT");
|
||||||
|
|
||||||
const amount = Math.ceil(parseInt(sentAmount, 10));
|
const amount = Math.ceil(parseInt(sentAmount, 10));
|
||||||
if (amount > data.memberData.money) return message.error("economy/pay:ENOUGH_MONEY", {
|
if (amount > data.memberData.money) return message.error("economy/pay:ENOUGH_MONEY", {
|
||||||
|
|
|
@ -39,7 +39,7 @@ class Slots extends Command {
|
||||||
|
|
||||||
function getCredits(number, isJackpot) {
|
function getCredits(number, isJackpot) {
|
||||||
if (!isJackpot) number = number * 1.5;
|
if (!isJackpot) number = number * 1.5;
|
||||||
else if (isJackpot) number = number * 4;
|
else if (isJackpot) number = number * 5;
|
||||||
|
|
||||||
return Math.round(number);
|
return Math.round(number);
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,9 @@ class Slots extends Command {
|
||||||
prefixEmoji: "loading"
|
prefixEmoji: "loading"
|
||||||
});
|
});
|
||||||
editMsg();
|
editMsg();
|
||||||
|
|
||||||
const interval = setInterval(editMsg, 1000);
|
const interval = setInterval(editMsg, 1000);
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
clearInterval(interval);
|
clearInterval(interval);
|
||||||
end(tmsg);
|
end(tmsg);
|
||||||
|
|
|
@ -110,7 +110,7 @@ class FindWords extends Command {
|
||||||
credits: `**${won}** ${message.getNoun(won, message.translate("misc:NOUNS:CREDIT:1"), message.translate("misc:NOUNS:CREDIT:2"), message.translate("misc:NOUNS:CREDIT:5"))}`
|
credits: `**${won}** ${message.getNoun(won, message.translate("misc:NOUNS:CREDIT:1"), message.translate("misc:NOUNS:CREDIT:2"), message.translate("misc:NOUNS:CREDIT:5"))}`
|
||||||
});
|
});
|
||||||
|
|
||||||
const userdata = await this.client.findOrCreateMember({
|
const memberData = await this.client.findOrCreateMember({
|
||||||
id: user.id,
|
id: user.id,
|
||||||
guildID: message.guild.id
|
guildID: message.guild.id
|
||||||
});
|
});
|
||||||
|
@ -124,8 +124,8 @@ class FindWords extends Command {
|
||||||
|
|
||||||
data.memberData.transactions.push(info);
|
data.memberData.transactions.push(info);
|
||||||
|
|
||||||
userdata.money = userdata.money + won;
|
memberData.money += won;
|
||||||
userdata.save();
|
memberData.save();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
144
commands/Fun/horserace.js
Normal file
144
commands/Fun/horserace.js
Normal file
|
@ -0,0 +1,144 @@
|
||||||
|
const Command = require("../../base/Command");
|
||||||
|
|
||||||
|
const games = {};
|
||||||
|
|
||||||
|
class Horserace extends Command {
|
||||||
|
constructor(client) {
|
||||||
|
super(client, {
|
||||||
|
name: "horserace",
|
||||||
|
dirname: __dirname,
|
||||||
|
enabled: false,
|
||||||
|
guildOnly: false,
|
||||||
|
aliases: ["hr"],
|
||||||
|
memberPermissions: [],
|
||||||
|
botPermissions: ["SEND_MESSAGES", "EMBED_LINKS"],
|
||||||
|
nsfw: false,
|
||||||
|
ownerOnly: false,
|
||||||
|
cooldown: 2000
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async run(message, args, data) {
|
||||||
|
if (!args[0]) return message.sendT("fun/horserace:MISSING_STATUS");
|
||||||
|
const author = message.author;
|
||||||
|
|
||||||
|
if (args[0] === "create") {
|
||||||
|
let thisGame = games[message.channel.id];
|
||||||
|
if (thisGame !== undefined) message.sendT("fun/horserace:GAME_RUNNING");
|
||||||
|
else {
|
||||||
|
games[message.channel.id] = {
|
||||||
|
horseSpeeds: [],
|
||||||
|
bets: []
|
||||||
|
};
|
||||||
|
|
||||||
|
thisGame = games[message.channel.id];
|
||||||
|
|
||||||
|
const f = [];
|
||||||
|
for (let i = 0; i < 5; i++) {
|
||||||
|
const speed = Math.ceil(Math.random() * 10);
|
||||||
|
const profit = Math.floor((((8.9 / 9) * (10 - speed)) + 1.1) * 10) / 10;
|
||||||
|
thisGame.horseSpeeds.push(speed);
|
||||||
|
f.push({
|
||||||
|
name: message.translate("fun/horserace:HORSE_NAME", {
|
||||||
|
number: i + 1
|
||||||
|
}),
|
||||||
|
value: message.translate("fun/horserace:HORSE_VALUE", {
|
||||||
|
speed,
|
||||||
|
profit: Math.round(profit * 100)
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
message.channel.send({
|
||||||
|
embeds: [{
|
||||||
|
color: data.config.embed.color,
|
||||||
|
title: message.translate("fun/horserace:EMBED_T"),
|
||||||
|
fields: f
|
||||||
|
}]
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} else if (args[0] === "bet") {
|
||||||
|
const horse = parseFloat(args[1]);
|
||||||
|
if (horse > 5) return message.sendT("fun/horserace:HORSE_NUM");
|
||||||
|
const amount = parseFloat(args[2]);
|
||||||
|
|
||||||
|
if (!amount || isNaN(amount) || parseInt(amount, 10) <= 0) return message.error("economy/pay:INVALID_AMOUNT");
|
||||||
|
if (amount > data.memberData.money) return message.error("economy/pay:ENOUGH_MONEY", {
|
||||||
|
amount: `**${amount}** ${message.getNoun(amount, message.translate("misc:NOUNS:CREDITS:1"), message.translate("misc:NOUNS:CREDITS:2"), message.translate("misc:NOUNS:CREDITS:5"))}`
|
||||||
|
});
|
||||||
|
|
||||||
|
games[message.channel.id].bets[author.id] = {
|
||||||
|
amount: amount,
|
||||||
|
horse: horse
|
||||||
|
};
|
||||||
|
|
||||||
|
data.memberData.money -= amount;
|
||||||
|
message.sendT("fun/horserace:BET", {
|
||||||
|
user: author.username,
|
||||||
|
amount: `**${amount}** ${message.getNoun(amount, message.translate("misc:NOUNS:CREDITS:1"), message.translate("misc:NOUNS:CREDITS:2"), message.translate("misc:NOUNS:CREDITS:5"))}`,
|
||||||
|
horse: horse
|
||||||
|
});
|
||||||
|
|
||||||
|
} else if (args[0] === "go") {
|
||||||
|
const thisGame = games[message.channel.id];
|
||||||
|
const horsePositions = [0, 0, 0, 0, 0];
|
||||||
|
|
||||||
|
// eslint-disable-next-line no-constant-condition
|
||||||
|
while (true) {
|
||||||
|
for (let i = 0; i < 5; i++) {
|
||||||
|
if (thisGame.horseSpeeds[i] >= Math.random() * 15) {
|
||||||
|
horsePositions[i] += 1;
|
||||||
|
if (horsePositions[i] == 3) {
|
||||||
|
const winnings = [];
|
||||||
|
|
||||||
|
const profit = Math.floor((((8.9 / 9) * (10 - thisGame.horseSpeeds[i])) + 1.1) * 10) / 10;
|
||||||
|
|
||||||
|
for (let j = 0; j < Object.keys(thisGame.bets).length; j++) {
|
||||||
|
if (Object.values(thisGame.bets)[j].horse === i + 1) {
|
||||||
|
winnings.push([Object.keys(thisGame.bets)[j], Object.values(thisGame.bets)[j].amount * profit]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (winnings.length === 0) {
|
||||||
|
message.sendT("fun/horserace:NO_WINNERS", {
|
||||||
|
horse: i + 1
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
let winners = "";
|
||||||
|
for (let j = 0; j < winnings.length; j++) {
|
||||||
|
winners += `\n<@${winnings[j][0]}> выиграл **${winnings[j][1]}** ${message.getNoun(winnings[j][1], message.translate("misc:NOUNS:CREDITS:1"), message.translate("misc:NOUNS:CREDITS:2"), message.translate("misc:NOUNS:CREDITS:5"))}!`;
|
||||||
|
|
||||||
|
const memberData = await this.client.findOrCreateMember({
|
||||||
|
id: winnings[j][0],
|
||||||
|
guildID: message.guild.id
|
||||||
|
});
|
||||||
|
|
||||||
|
const info = {
|
||||||
|
user: message.translate("economy/transactions:HORSERACE"),
|
||||||
|
amount: winnings[j][1],
|
||||||
|
date: Date.now(),
|
||||||
|
type: "got"
|
||||||
|
};
|
||||||
|
|
||||||
|
data.memberData.transactions.push(info);
|
||||||
|
|
||||||
|
memberData.money += winnings[j][1];
|
||||||
|
memberData.save();
|
||||||
|
}
|
||||||
|
|
||||||
|
message.sendT("fun/horserace:WINNERS", {
|
||||||
|
horse: i + 1,
|
||||||
|
winners
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
delete games[message.channel.id];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = Horserace;
|
|
@ -63,7 +63,7 @@ class Number extends Command {
|
||||||
credits: `**${won}** ${message.getNoun(won, message.translate("misc:NOUNS:CREDIT:1"), message.translate("misc:NOUNS:CREDIT:2"), message.translate("misc:NOUNS:CREDIT:5"))}`
|
credits: `**${won}** ${message.getNoun(won, message.translate("misc:NOUNS:CREDIT:1"), message.translate("misc:NOUNS:CREDIT:2"), message.translate("misc:NOUNS:CREDIT:5"))}`
|
||||||
});
|
});
|
||||||
|
|
||||||
const userdata = await this.client.findOrCreateMember({
|
const memberData = await this.client.findOrCreateMember({
|
||||||
id: msg.author.id,
|
id: msg.author.id,
|
||||||
guildID: message.guild.id
|
guildID: message.guild.id
|
||||||
});
|
});
|
||||||
|
@ -77,8 +77,8 @@ class Number extends Command {
|
||||||
|
|
||||||
data.memberData.transactions.push(info);
|
data.memberData.transactions.push(info);
|
||||||
|
|
||||||
userdata.money = userdata.money + won;
|
memberData.money += won;
|
||||||
userdata.save();
|
memberData.save();
|
||||||
}
|
}
|
||||||
|
|
||||||
collector.stop();
|
collector.stop();
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"DESCRIPTION": "Включить или отключить автоудаление Discord приглашений",
|
"DESCRIPTION": "Включить или отключить автоудаление Discord приглашений",
|
||||||
"USAGE": "{{prefix}}automod [on/off] (#канал)",
|
"USAGE": "{{prefix}}automod [on/off] (#канал)",
|
||||||
"EXAMPLES": "{{prefix}}automod on\n{{prefix}}automod off #general\n{{prefix}}automod off",
|
"EXAMPLES": "{{prefix}}automod on\n{{prefix}}automod off #general\n{{prefix}}automod off",
|
||||||
"MISSING_STATUS": "Укажите значение `on` или `off`",
|
"MISSING_STATUS": "Укажите значение `on` или `off`!",
|
||||||
"ENABLED": "**Discord приглашения будут автоматически удаляться!**\n\n:arrow_right_hook: *Используйте `{{prefix}}automod off #channel`, чтобы игнорировать канал!*",
|
"ENABLED": "**Discord приглашения будут автоматически удаляться!**\n\n:arrow_right_hook: *Используйте `{{prefix}}automod off #channel`, чтобы игнорировать канал!*",
|
||||||
"DISABLED_CHANNEL": "Автомодерация не будет выполняться в {{channel}}!",
|
"DISABLED_CHANNEL": "Автомодерация не будет выполняться в {{channel}}!",
|
||||||
"DISABLED": "Автомодерация отключена на данном сервере!",
|
"DISABLED": "Автомодерация отключена на данном сервере!",
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"DESCRIPTION": "Включить или отключить автоназначение роли при входе на сервер!",
|
"DESCRIPTION": "Включить или отключить автоназначение роли при входе на сервер!",
|
||||||
"USAGE": "{{prefix}}autorole [on/off] (@роль)",
|
"USAGE": "{{prefix}}autorole [on/off] (@роль)",
|
||||||
"EXAMPLES": "{{prefix}}autorole on @новенький\n{{prefix}}autorole off",
|
"EXAMPLES": "{{prefix}}autorole on @новенький\n{{prefix}}autorole off",
|
||||||
"MISSING_STATUS": "Укажите значение `on` или `off`",
|
"MISSING_STATUS": "Укажите значение `on` или `off`!",
|
||||||
"MISSING_ROLE": "Укажите роль!",
|
"MISSING_ROLE": "Укажите роль!",
|
||||||
"SUCCESS_ENABLED": "Автоназначение роли включено! Новые пользователи будут автоматически получать **{{roleName}}** при входе на сервер.",
|
"SUCCESS_ENABLED": "Автоназначение роли включено! Новые пользователи будут автоматически получать **{{roleName}}** при входе на сервер.",
|
||||||
"ALREADY_DISABLED": "**Автоназначение роли уже отключено.**\n\n:arrow_right_hook: *Используйте `{{prefix}}autorole on @роль`, чтобы включить!*",
|
"ALREADY_DISABLED": "**Автоназначение роли уже отключено.**\n\n:arrow_right_hook: *Используйте `{{prefix}}autorole on @роль`, чтобы включить!*",
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"DESCRIPTION": "Включить или отключить автоудаление команд модерации!",
|
"DESCRIPTION": "Включить или отключить автоудаление команд модерации!",
|
||||||
"USAGE": "{{prefix}}deletemod [on/off]",
|
"USAGE": "{{prefix}}deletemod [on/off]",
|
||||||
"EXAMPLES": "{{prefix}}deletemod on",
|
"EXAMPLES": "{{prefix}}deletemod on",
|
||||||
"MISSING_STATUS": "Укажите значение `on` или `off`",
|
"MISSING_STATUS": "Укажите значение `on` или `off`!",
|
||||||
"ENABLED": "Автоудаление команд модерации включено!",
|
"ENABLED": "Автоудаление команд модерации включено!",
|
||||||
"DISABLED": "Автоудаление команд модерации отключено!"
|
"DISABLED": "Автоудаление команд модерации отключено!"
|
||||||
}
|
}
|
|
@ -2,7 +2,7 @@
|
||||||
"DESCRIPTION": "Включить или отключить сообщения при выходе пользователя с сервера!",
|
"DESCRIPTION": "Включить или отключить сообщения при выходе пользователя с сервера!",
|
||||||
"USAGE": "{{prefix}}goodbye (edit/off/test)",
|
"USAGE": "{{prefix}}goodbye (edit/off/test)",
|
||||||
"EXAMPLES": "{{prefix}}goodbye\n{{prefix}}goodbye test",
|
"EXAMPLES": "{{prefix}}goodbye\n{{prefix}}goodbye test",
|
||||||
"MISSING_STATUS": "Выберите действие: `edit`, `off` или `test`",
|
"MISSING_STATUS": "Выберите действие: `edit`, `off` или `test`!",
|
||||||
"DEFAULT_MESSAGE": "Пока, {user}! Нас теперь {membercount} без тебя :'(",
|
"DEFAULT_MESSAGE": "Пока, {user}! Нас теперь {membercount} без тебя :'(",
|
||||||
"TEST_SUCCESS": "Тест выполнен!",
|
"TEST_SUCCESS": "Тест выполнен!",
|
||||||
"FORM_1": "**В какой канал будут отправляться сообщения?**\n\n:arrow_right_hook: *Отправьте упоминание канала!*",
|
"FORM_1": "**В какой канал будут отправляться сообщения?**\n\n:arrow_right_hook: *Отправьте упоминание канала!*",
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
"USAGE": "{{prefix}}set [level/xp/credits/bank] [@пользователь] [значение]",
|
"USAGE": "{{prefix}}set [level/xp/credits/bank] [@пользователь] [значение]",
|
||||||
"EXAMPLES": "{{prefix}}set level @Jonny_Bro#4226 10",
|
"EXAMPLES": "{{prefix}}set level @Jonny_Bro#4226 10",
|
||||||
"INVALID_MEMBER": "Вы должны упомянуть пользователя!",
|
"INVALID_MEMBER": "Вы должны упомянуть пользователя!",
|
||||||
"NO_STATUS": "Выберите параметр: `level`, `xp`, `credits` или `bank`",
|
"NO_STATUS": "Выберите значение: `level`, `xp`, `credits` или `bank`!",
|
||||||
"BOT_USER": "Вы не можете изменить статистику бота!",
|
"BOT_USER": "Вы не можете изменить статистику бота!",
|
||||||
"INVALID_AMOUNT": "Укажите новое значение!",
|
"INVALID_AMOUNT": "Укажите новое значение!",
|
||||||
"SUCCESS_LEVEL": "Уровень пользователя **{{username}}** изменён на **{{amount}}**!",
|
"SUCCESS_LEVEL": "Уровень пользователя **{{username}}** изменён на **{{amount}}**!",
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"DESCRIPTION": "Включить или отключить сообщения при входе пользователя на сервер!",
|
"DESCRIPTION": "Включить или отключить сообщения при входе пользователя на сервер!",
|
||||||
"USAGE": "{{prefix}}welcome (edit/off/test)",
|
"USAGE": "{{prefix}}welcome (edit/off/test)",
|
||||||
"EXAMPLES": "{{prefix}}welcome\n{{prefix}}welcome test",
|
"EXAMPLES": "{{prefix}}welcome\n{{prefix}}welcome test",
|
||||||
"MISSING_STATUS": "Выберите действие: `edit`, `off` или `test`",
|
"MISSING_STATUS": "Выберите действие: `edit`, `off` или `test`!",
|
||||||
"DEFAULT_MESSAGE": "Добро пожаловать на сервер {server}, {user}, теперь нас {membercount}! Ваш аккаунт был создан {createdat}.",
|
"DEFAULT_MESSAGE": "Добро пожаловать на сервер {server}, {user}, теперь нас {membercount}! Ваш аккаунт был создан {createdat}.",
|
||||||
"TEST_SUCCESS": "Тест выполнен!",
|
"TEST_SUCCESS": "Тест выполнен!",
|
||||||
"FORM_1": "**В какой канал будут отправляться сообщения?**\n\n:arrow_right_hook: *Отправьте упоминание канала!*",
|
"FORM_1": "**В какой канал будут отправляться сообщения?**\n\n:arrow_right_hook: *Отправьте упоминание канала!*",
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"DESCRIPTION": "Показать таблице лидеров по кредитам, уровню или очкам репутации!",
|
"DESCRIPTION": "Показать таблице лидеров по кредитам, уровню или очкам репутации!",
|
||||||
"USAGE": "{{prefix}}leaderboard [rep/level/credits]",
|
"USAGE": "{{prefix}}leaderboard [rep/level/credits]",
|
||||||
"EXAMPLES": "{{prefix}}leaderboard credits\n{{prefix}}leaderboard level",
|
"EXAMPLES": "{{prefix}}leaderboard credits\n{{prefix}}leaderboard level",
|
||||||
"MISSING_TYPE": "Выберите таблицу `credits`, `level` или `rep`",
|
"MISSING_TYPE": "Выберите таблицу: `credits`, `level` или `rep`!",
|
||||||
"MOBILE": ":confused: Я заметил, что вы онлайн с телефона... Таблица лидеров может отображаться некорректно на маленьких экранах. Попробуйте позже с другого устройства!",
|
"MOBILE": ":confused: Я заметил, что вы онлайн с телефона... Таблица лидеров может отображаться некорректно на маленьких экранах. Попробуйте позже с другого устройства!",
|
||||||
"TABLE": "Таблица лидеров {{name}}",
|
"TABLE": "Таблица лидеров {{name}}",
|
||||||
"TOP": "Топ 20",
|
"TOP": "Топ 20",
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
"USAGE": "{{prefix}}marry [@пользователь]",
|
"USAGE": "{{prefix}}marry [@пользователь]",
|
||||||
"EXAMPLES": "{{prefix}}marry @Jonny_Bro#4226",
|
"EXAMPLES": "{{prefix}}marry @Jonny_Bro#4226",
|
||||||
"INVALID_MEMBER": "Вы должны упомянуть пользователя!",
|
"INVALID_MEMBER": "Вы должны упомянуть пользователя!",
|
||||||
"ALREADY_MARRIED": "Вы уже состоите в браке! Вы можете развестить с помощью команды `{{prefix}}divorce`",
|
"ALREADY_MARRIED": "Вы уже состоите в браке! Вы можете развестить с помощью команды `{{prefix}}divorce`.",
|
||||||
"ALREADY_MARRIED_USER": "Место занято! **{{username}}** уже состоит в браке!",
|
"ALREADY_MARRIED_USER": "Место занято! **{{username}}** уже состоит в браке!",
|
||||||
"YOURSELF": "Вы не можете жениться на себе!",
|
"YOURSELF": "Вы не можете жениться на себе!",
|
||||||
"REQUEST_AUTHOR_TO_AMEMBER": "Вы уже отправили предложение **{{username}}**!",
|
"REQUEST_AUTHOR_TO_AMEMBER": "Вы уже отправили предложение **{{username}}**!",
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
"BANK": "Банк",
|
"BANK": "Банк",
|
||||||
"WORDS": "Угадай слово",
|
"WORDS": "Угадай слово",
|
||||||
"NUMBERS": "Угадай число",
|
"NUMBERS": "Угадай число",
|
||||||
|
"HORSERACE": "Конные скачки",
|
||||||
"T_GOT": "Пополнение",
|
"T_GOT": "Пополнение",
|
||||||
"T_SEND": "Списание",
|
"T_SEND": "Списание",
|
||||||
"T_USER_GOT": "Источник",
|
"T_USER_GOT": "Источник",
|
||||||
|
|
14
languages/ru-RU/fun/horserace.json
Normal file
14
languages/ru-RU/fun/horserace.json
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
"DESCRIPTION": "Конные скачки!",
|
||||||
|
"USAGE": "{{prefix}}horserace [create/bet/go]",
|
||||||
|
"EXAMPLES": "{{prefix}}horserace create\n{{prefix}}horserace bet 3 100",
|
||||||
|
"MISSING_STATUS": "Выберите параметр: `create`, `bet` или `go`!",
|
||||||
|
"HORSE_NUM": "На скачках всего 5 лошадей!",
|
||||||
|
"EMBED_T": "Конные скачки",
|
||||||
|
"HORSE_NAME": "Лошадь {{number}}",
|
||||||
|
"HORSE_VALUE": "Скорость - {{speed}}\nПрибыль - {{profit}}%",
|
||||||
|
"BET": "**{{user}}** поставил {{amount}} на лошадь **{{horse}}**!",
|
||||||
|
"NO_WINNERS": "Победила лошадь {{horse}}. Никто не выиграл кредиты!",
|
||||||
|
"WINNERS": "Победила лошадь {{horse}}. {{winners}}!",
|
||||||
|
"GAME_RUNNING": "Игра уже идёт!"
|
||||||
|
}
|
|
@ -6,7 +6,7 @@
|
||||||
"TIMES_UP": "Время вышло! Используйте команду снова!",
|
"TIMES_UP": "Время вышло! Используйте команду снова!",
|
||||||
"INVALID_YES_NO": "Отправьте `да` или `нет` (регистр не важен)!",
|
"INVALID_YES_NO": "Отправьте `да` или `нет` (регистр не важен)!",
|
||||||
"INVALID_CHANNEL": "Укажите существующий канал!",
|
"INVALID_CHANNEL": "Укажите существующий канал!",
|
||||||
"INVALID_TIME": "Укажите действительное время! Доступные единицы: `s`, `m`, `h` или `d`",
|
"INVALID_TIME": "Укажите действительное время! Доступные единицы: `s`, `m`, `h` или `d`.",
|
||||||
"INVALID_NUMBER": "Укажите число!",
|
"INVALID_NUMBER": "Укажите число!",
|
||||||
"INVALID_NUMBER_RANGE": "Укажите число от **{{min}}** до **{{max}}**!",
|
"INVALID_NUMBER_RANGE": "Укажите число от **{{min}}** до **{{max}}**!",
|
||||||
"FORCE_STOP": "Игра принудительно окончена {{user}}, никто не победил!",
|
"FORCE_STOP": "Игра принудительно окончена {{user}}, никто не победил!",
|
||||||
|
|
|
@ -5,8 +5,8 @@
|
||||||
"MISSING_STATUS": "Выберите действие: `create`, `reroll`, `end` или `delete`!",
|
"MISSING_STATUS": "Выберите действие: `create`, `reroll`, `end` или `delete`!",
|
||||||
"INVALID_CREATE": "Какой-то из аргументов указан неверно, попробуйте снова!",
|
"INVALID_CREATE": "Какой-то из аргументов указан неверно, попробуйте снова!",
|
||||||
"MISSING_ID": "Укажите ID сообщения раздачи!",
|
"MISSING_ID": "Укажите ID сообщения раздачи!",
|
||||||
"NOT_FOUND": "Раздач с ID `{{messageID}}` не найдено",
|
"NOT_FOUND": "Раздач с ID `{{messageID}}` не найдено!",
|
||||||
"NOT_FOUND_ENDED": "**Оконченных** раздач с ID `{{messageID}} не найдено`",
|
"NOT_FOUND_ENDED": "**Оконченных** раздач с ID `{{messageID}} не найдено!`!",
|
||||||
"MAX_DURATION": "Максимальная длительность раздачи - 15 дней.",
|
"MAX_DURATION": "Максимальная длительность раздачи - 15 дней.",
|
||||||
"MAX_COUNT": "Одновременно можно создать только 4 раздачи.",
|
"MAX_COUNT": "Одновременно можно создать только 4 раздачи.",
|
||||||
"TITLE": "🎉🎉 **РАЗДАЧА** 🎉🎉",
|
"TITLE": "🎉🎉 **РАЗДАЧА** 🎉🎉",
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"DESCRIPTION": "Настроить наказание которое пользователь будет получать после данного кол-ва предупреждений!",
|
"DESCRIPTION": "Настроить наказание которое пользователь будет получать после данного кол-ва предупреждений!",
|
||||||
"USAGE": "{{prefix}}setwarns [kick/ban] [число/reset]",
|
"USAGE": "{{prefix}}setwarns [kick/ban] [число/reset]",
|
||||||
"EXAMPLES": "{{prefix}}setwarns kick 5\n{{prefix}}setwarns ban 10\n{{prefix}}setwarns ban reset",
|
"EXAMPLES": "{{prefix}}setwarns kick 5\n{{prefix}}setwarns ban 10\n{{prefix}}setwarns ban reset",
|
||||||
"MISSING_TYPE": "Выберите действие: `kick` или `ban`",
|
"MISSING_TYPE": "Выберите действие: `kick` или `ban`!",
|
||||||
"SUCCESS_KICK": "`{{count}}` приведут к кику!\n\n:arrow_right_hook: *Используйте `{{prefix}}configuration`, чтобы увидеть обновлённые настройки!*",
|
"SUCCESS_KICK": "`{{count}}` приведут к кику!\n\n:arrow_right_hook: *Используйте `{{prefix}}configuration`, чтобы увидеть обновлённые настройки!*",
|
||||||
"SUCCESS_BAN": "`{{count}}` приведут к бану!\n\n:arrow_right_hook: *Используйте `{{prefix}}configuration`, чтобы увидеть обновлённые настройки!*",
|
"SUCCESS_BAN": "`{{count}}` приведут к бану!\n\n:arrow_right_hook: *Используйте `{{prefix}}configuration`, чтобы увидеть обновлённые настройки!*",
|
||||||
"SUCCESS_KICK_RESET": "**Автокик пользователей отключён!**\n\n:arrow_right_hook: *Используйте `{{prefix}}configuration`, чтобы увидеть обновлённые настройки!*",
|
"SUCCESS_KICK_RESET": "**Автокик пользователей отключён!**\n\n:arrow_right_hook: *Используйте `{{prefix}}configuration`, чтобы увидеть обновлённые настройки!*",
|
||||||
|
|
Loading…
Reference in a new issue