public void Excecute(IRocketPlayer caller, string[] args) { if (args.Length != 1) { LoonePermissions.Say(caller, "invalid_args", Color.red); return; } if (!MySqlManager.GroupExists(args[0].ToLower())) { LoonePermissions.Say(caller, "group_not_exists", Color.red); return; } if (LoonePermissionsConfig.DefaultGroup.ToLower() == args[0].ToLower()) { LoonePermissions.Say(caller, "group_default_already", Color.red); return; } MySqlManager.ReassignTo(LoonePermissionsConfig.DefaultGroup.ToLower(), args[0].ToLower(), true); LoonePermissionsConfig.SetDefaultGroup(args[0].ToLower()); LoonePermissions.Say(caller, "group_default", Color.green, args[0].ToLower()); RocketLogger.Log(string.Format("{0} set the default group to {1}!", caller.DisplayName, args[0].ToLower()), ConsoleColor.Yellow); }
public static void MigrateDatabase() { MySqlCommand cmd1 = Connection.CreateCommand(); MySqlCommand cmd2 = Connection.CreateCommand(); MySqlCommand cmd3 = Connection.CreateCommand(); cmd1.CommandText = String.Format("DELETE FROM {0}", PLAYER_TABLE); cmd2.CommandText = String.Format("DELETE FROM {0}", PERMISSION_TABLE); cmd3.CommandText = String.Format("DELETE FROM {0}", GROUP_TABLE); TryOpen(); cmd1.ExecuteNonQuery(); cmd2.ExecuteNonQuery(); cmd3.ExecuteNonQuery(); TryClose(); RocketPermissions p = new XMLFileAsset <RocketPermissions>(Rocket.Core.Environment.PermissionFile, null, null).Instance; LoonePermissionsConfig.SetDefaultGroup(p.DefaultGroup); foreach (RocketPermissionsGroup group in p.Groups) { CreateGroup(group.Id); if (group.Color != null) { UpdateGroup(EGroupProperty.COLOR, group.Color, group.Id); } if (group.ParentGroup != null) { UpdateGroup(EGroupProperty.PARENT, group.ParentGroup, group.Id); } if (group.Prefix != null) { UpdateGroup(EGroupProperty.PREFIX, group.Prefix, group.Id); } if (group.Suffix != null) { UpdateGroup(EGroupProperty.SUFFIX, group.Suffix, group.Id); } if (group.DisplayName != null) { UpdateGroup(EGroupProperty.NAME, group.DisplayName, group.Id); } UpdateGroup(EGroupProperty.PRIORITY, group.Priority.ToString(), group.Id); foreach (Permission perm in group.Permissions) { string name = perm.Name; name = name.Replace("-", "~"); AddPermission(group.Id, name, (int)perm.Cooldown); } foreach (string player in group.Members) { if (ulong.TryParse(player, out ulong id)) { AddPlayerToGroup(id, group.Id); } } } }