public static async void GiveRole(ulong[] roles, IUser user) { var guilds = Constants.Guilds.PLANETS; for (int i = 0; i < 3; i++) { var guildID = guilds.ElementAt(i); var guild = Bot.client.GetGuild(guildID); if (await Funcs.InGuild(guild, user)) { var gUser = guild.GetUser(user.Id); await gUser.AddRoleAsync(guild.GetRole(roles[i])); } } }
public async static void LoadRoles(IUser User) { string race = GetAttribute("RACE", User).ToLower(); if (race == "human") { if (await Funcs.InGuild(Bot.client.GetGuild(Constants.Guilds.DBZ_EARTH), User)) { var guild = Bot.client.GetGuild(Constants.Guilds.DBZ_EARTH); var gUser = guild.GetUser(User.Id); await gUser.AddRoleAsync(guild.GetRole(Constants.Roles.ON_EARTH)); for (int i = 0; i < 3; i++) { var rGuild = Bot.client.GetGuild(Constants.Guilds.PLANETS[i]); var rRole = rGuild.GetRole(Constants.Roles.HUMAN[i]); if (await Funcs.InGuild(rGuild, User)) { var rUser = rGuild.GetUser(User.Id); await rUser.AddRoleAsync(rRole); } } } } else if (race == "saiyan") { if (await Funcs.InGuild(Bot.client.GetGuild(Constants.Guilds.DBZ_VEGETA), User)) { var guild = Bot.client.GetGuild(Constants.Guilds.DBZ_VEGETA); var gUser = guild.GetUser(User.Id); await gUser.AddRoleAsync(guild.GetRole(Constants.Roles.ON_VEGETA)); for (int i = 0; i < 3; i++) { var rGuild = Bot.client.GetGuild(Constants.Guilds.PLANETS[i]); var rRole = rGuild.GetRole(Constants.Roles.SAIYAN[i]); if (await Funcs.InGuild(rGuild, User)) { var rUser = rGuild.GetUser(User.Id); await rUser.AddRoleAsync(rRole); } } } } else if (race == "namekian") { if (await Funcs.InGuild(Bot.client.GetGuild(Constants.Guilds.DBZ_NAMEK), User)) { var guild = Bot.client.GetGuild(Constants.Guilds.DBZ_NAMEK); var gUser = guild.GetUser(User.Id); await gUser.AddRoleAsync(guild.GetRole(Constants.Roles.ON_NAMEK)); for (int i = 0; i < 3; i++) { var rGuild = Bot.client.GetGuild(Constants.Guilds.PLANETS[i]); var rRole = rGuild.GetRole(Constants.Roles.NAMEKIAN[i]); if (await Funcs.InGuild(rGuild, User)) { var rUser = rGuild.GetUser(User.Id); await rUser.AddRoleAsync(rRole); } } } } }
public async Task Power(string direction, int amount) { if (direction == "up") { string race = DBFuncs.GetAttribute("RACE", Context.User); IGuild guild = Bot.client.GetGuild(Constants.Guilds.DBZ_EARTH); var user = await guild.GetUserAsync(Context.User.Id); ulong[] role = new ulong[3]; for (int i = 0; i < amount; i++) { if ((user.RoleIds.Contains(Constants.Roles.KAIOKEN[0]) || role == Constants.Roles.KAIOKEN) && DBFuncs.HasSkill("Super Saiyan", Context.User)) { await Power("down"); role = Constants.Roles.SUPER; } else if ((user.RoleIds.Contains(Constants.Roles.SUPER[0]) || role == Constants.Roles.SUPER) && DBFuncs.HasSkill("SSGSS", Context.User)) { await Power("down"); role = Constants.Roles.SSGSS; } else if (DBFuncs.HasSkill("Kaioken", Context.User) && !user.RoleIds.Contains(Constants.Roles.SSGSS[0])) { role = Constants.Roles.KAIOKEN; } } if (role[0] != 0) { Funcs.GiveRole(role, Context.User); DBSkill skill = DBFuncs.GetSkill(guild.GetRole(role[0]).Name); DBFuncs.SetAttribute("MULTIPLIER", Context.User, Convert.ToString(skill.Power)); } else { await Context.Channel.SendMessageAsync("You attempt to power up further, but fail."); } } else if (direction == "down") { var guilds = Constants.Guilds.PLANETS; for (int i = 0; i < 3; i++) { var guildID = guilds.ElementAt(i); var guild = Bot.client.GetGuild(guildID); if (await Funcs.InGuild(guild, Context.User)) { var user = guild.GetUser(Context.User.Id); if (user.Roles.Contains(guild.GetRole(Constants.Roles.KAIOKEN[i]))) { await user.RemoveRoleAsync(guild.GetRole(Constants.Roles.KAIOKEN[i])); } else if (user.Roles.Contains(guild.GetRole(Constants.Roles.SUPER[i]))) { await user.RemoveRoleAsync(guild.GetRole(Constants.Roles.SUPER[i])); } else if (user.Roles.Contains(guild.GetRole(Constants.Roles.SSGSS[i]))) { await user.RemoveRoleAsync(guild.GetRole(Constants.Roles.SSGSS[i])); } } DBFuncs.SetAttribute("FORM", Context.User, "1"); } DBFuncs.SetAttribute("MULTIPLIER", Context.User, "1"); } }