internal static async Task CheckServices(Player player, ISocketMessageChannel chan) { switch (player.Area.type) { case AreaType.ArenaLobby: await Arena.Service(player, chan); break; case AreaType.BeastMasterShop: await PetShopInteractive.PetShopUi(player, chan); break; case AreaType.Tavern: await TavernInteractive.TavernUI(player, chan); break; default: await chan.SendMessageAsync("No extra features available in this area."); break; } }
public async Task Tavern(SocketReaction reaction, IUserMessage msg) { if (EUI.Dice(reaction.Emote.ToString()) == 1) { await GamblingCommands.TavernGames(player, reaction.Channel); return; } switch (reaction.Emote.ToString()) { case EUI.sideQuest: { var qt = User.DailyQuestBoard.Load(player._id); await qt.ShowBoard(player, reaction.Channel); } break; case EUI.bounties: { Areas.AreaPartials.Area tavern = player.Area; if (tavern.parent != null) { tavern = Areas.AreaPartials.Area.LoadArea(tavern.GeneratePath(false) + tavern.parent); } await TavernInteractive.GenerateBountyFile(player, tavern, -1, reaction.Channel); } break; } }
public async Task BountyBoard(SocketReaction reaction, IUserMessage msg) { switch (reaction.Emote.ToString()) { case EUI.prev: if (player.Area.type == Areas.AreaType.Tavern) { await TavernInteractive.GenerateBountyFile(player, player.Area, int.Parse(data) - 1, reaction.Channel); } break; case EUI.next: if (player.Area.type == Areas.AreaType.Tavern) { await TavernInteractive.GenerateBountyFile(player, player.Area, int.Parse(data) + 1, reaction.Channel); } break; } }