public async Task ImpersonateAsync(string name) { var eb = new EmbedBuilder(); var heldenliste = await Helden_software_API.GetHeroBasics(name); if (!heldenliste.Any()) { await ReplyAsync("helden-software ist zurzeit offline. es wird auf ein Backup zugegriffen."); heldenliste = await DBService.GetHeldenIDUndName(name.ToLower()); } if (heldenliste.Count > 1) { string tmp = ""; int count = 0; foreach (var entry in heldenliste) { tmp += entry.Value; count++; if (count < heldenliste.Count) { tmp += ", "; } } var embed = eb.AddField("Fehler", "Es fangen **" + heldenliste.Count + "** Helden mit \"" + name + "\" an (" + tmp + "), " + "bitte sei etwas genauer wessen Rolle du übernehmen möchtest.") .WithColor(Color.Red) .Build(); await ReplyAsync(null, false, embed); } else if (heldenliste.Count < 1) { var embed = eb.AddField("Fehler", "Leider habe ich keinen Helden namens \"" + name + "\" gefunden, " + "gebe **!list** für eine Liste aller Helden die im Moment online sind ein.") .WithColor(Color.Red) .Build(); await ReplyAsync(null, false, embed); } else { await DBService.UpdateDsaLink(Context.User.Id, heldenliste.Keys.First()); await DBService.UpdateHeroName(heldenliste.Keys.First(), heldenliste.Values.First()); var embed = eb.AddField(Context.User.Username, "Du übernimmst jetzt die Werte von: **" + heldenliste.Values.First() + "**.") .WithColor(Color.Green) .Build(); await ReplyAsync(null, false, embed); } }