示例#1
0
        public async Task Ranked([Summary("Summoner name")] string summonerName)
        {
            var msg = Context.Message;

            if (summonerName.IsNullOrEmpty())
            {
                using (var db = new LiteDatabase(@"LoL.db"))
                {
                    var summoners = db.GetCollection <LoLSummoner>("lolsummoners");

                    var summoner        = summoners.Find(x => x.DiscordID.Equals(msg.Author.Id));
                    var loLSummoners    = summoner as LoLSummoner[] ?? summoner.ToArray();
                    var discordSummoner = loLSummoners[0];

                    var summonerApi = LoLController.GetSummonerData(discordSummoner.SummonerID.ToString());
                    var message     = LoLController.GetRankedStats(summonerApi);
                    await ReplyAsync(message);
                }
            }
            else
            {
                var summonerApi = LoLController.GetSummonerData(summonerName);
                var message     = LoLController.GetRankedStats(summonerApi);
                await ReplyAsync(message);
            }
        }
示例#2
0
        public async Task SetSummoner([Summary("Summoner name")] string summonerName)
        {
            var msg = Context.Message;

            try
            {
                var summonerDetails = LoLController.GetSummonerData(summonerName);

                using (var db = new LiteDatabase(@"LoL.db"))
                {
                    var summoners = db.GetCollection <LoLSummoner>("lolsummoners");

                    var summoner = new LoLSummoner
                    {
                        Id         = msg.Author.Id,
                        DiscordID  = msg.Author.Id,
                        SummonerID = (int)summonerDetails.Id
                    };

                    var isNew = summoners.Find(x => x.Id.Equals(msg.Author.Id));

                    if (isNew.Any())
                    {
                        summoners.Update(summoner);
                    }
                    else
                    {
                        summoners.Insert(summoner);
                    }
                }

                await ReplyAsync(string.Format(Resources.response_Linked_LolAccount, summonerName));
            }
            catch (RiotSharpException ex)
            {
                // Handle the exception however you want.
                Console.WriteLine(ex);
            }
        }