public static async Task UpdatePlanetAsync() { foreach (Planet planet in await ValourClient.GetData <List <Planet> >($"https://valour.gg/Planet/GetPlanetMembership?user_id={ValourClient.BotId}&token={ValourClient.Token}")) { if (PlanetCache.ContainsKey(planet.Id) == false) { PlanetCache.TryAdd(planet.Id, planet); } } }
public static async Task UpdateChannelsFromPlanetAsync(ulong PlanetId) { foreach (Channel channel in await ValourClient.GetData <List <Channel> >($"https://valour.gg/Channel/GetPlanetChannels?planet_id={PlanetId}&token={ValourClient.Token}")) { if (ChannelCache.ContainsKey(channel.Id) == false) { ChannelCache.TryAdd(channel.Id, channel); } } }
public static async Task <PlanetMember> GetPlanetMember(ulong UserId, ulong PlanetId) { PlanetMember member = PlanetMemberCache.Values.FirstOrDefault(x => x.Planet_Id == PlanetId && x.User_Id == UserId); if (member == null) { member = await ValourClient.GetData <PlanetMember>($"https://valour.gg/Planet/GetPlanetMember?user_id={UserId}&planet_id={PlanetId}&auth={ValourClient.Token}"); PlanetMemberCache.TryAdd(member.Id, member); } return(member); }
public static async Task UpdateMembersFromPlanetAsync(ulong PlanetId) { foreach (PlanetMemberInfo memberinfo in await ValourClient.GetData <List <PlanetMemberInfo> >($"https://valour.gg/Planet/GetPlanetMemberInfo?planet_id={PlanetId}&token={ValourClient.Token}")) { if (PlanetMemberCache.ContainsKey(memberinfo.Member.Id) == false) { PlanetMember member = memberinfo.Member; member.RoleIds = new List <ulong>(); member.RoleIds.AddRange(memberinfo.RoleIds); PlanetMemberCache.TryAdd(memberinfo.Member.Id, member); } } }
public static async Task <Planet> GetPlanet(ulong PlanetId) { Planet planet = PlanetCache.Values.FirstOrDefault(x => x.Id == PlanetId); if (planet == null) { planet = await ValourClient.GetData <Planet>($"https://valour.gg/Planet/GetPlanet?planet_id={PlanetId}&auth={ValourClient.Token}"); PlanetCache.TryAdd(planet.Id, planet); return(PlanetCache.Values.FirstOrDefault(x => x.Id == PlanetId)); } return(planet); }