1234567891011121314151617181920212223242526272829303132333435363738394041 |
- using System.Threading.Tasks;
- using MafiaTelegramBot.Controllers;
- using MafiaTelegramBot.DataBase;
- using MafiaTelegramBot.Resources;
- using Telegram.Bot.Types;
- using Telegram.Bot.Types.ReplyMarkups;
- namespace MafiaTelegramBot.Models.Inlines
- {
- public class DecreaseRoomMaxCapacity:Query
- {
- protected override string Name => strings.decrease_number_of_players_callback;
- public override async Task<Message> Execute(Update update)
- {
- var messageId = update.CallbackQuery.Message.MessageId;
- var chatId = update.CallbackQuery.Message.Chat.Id;
- var data = update.CallbackQuery.Data;
- var userId = long.Parse(data.Split('|')[1]);
- var user = await UserDao.GetUserById(userId);
- var room_name = user.GetCurrentGame();
- var room = await RoomController.GetRoom(room_name);
- var room_max_capacity = room.MaxPlayers;
-
- if (room_max_capacity > Constants.PLAYER_LIMITS_MIN)
- {
- room_max_capacity = --room.MaxPlayers;
- }
-
- var message = $"{strings.max_capacity_message}: {room_max_capacity}";
-
- var inlineKeyboard = new InlineKeyboardMarkup(new[]
- {
- new[] {InlineKeyboardButton.WithCallbackData(strings.decrease_number_of_players, $"{strings.decrease_number_of_players_callback}|{userId}"), InlineKeyboardButton.WithCallbackData(strings.increase_number_of_players, $"{strings.increase_number_of_players_callback}|{userId}")}
- });
-
- return await Bot.Get().EditMessageTextAsync(chatId, messageId, message, replyMarkup:inlineKeyboard);
- }
- }
- }
|