| @@ -139,6 +139,10 @@ namespace Discord.API | |||||
| public string Name; | public string Name; | ||||
| [JsonProperty("permissions", NullValueHandling = NullValueHandling.Ignore)] | [JsonProperty("permissions", NullValueHandling = NullValueHandling.Ignore)] | ||||
| public uint? Permissions; | public uint? Permissions; | ||||
| [JsonProperty("hoist", NullValueHandling = NullValueHandling.Ignore)] | |||||
| public bool? Hoist; | |||||
| [JsonProperty("color", NullValueHandling = NullValueHandling.Ignore)] | |||||
| public uint? Color; | |||||
| } | } | ||||
| //Servers | //Servers | ||||
| @@ -270,12 +270,12 @@ namespace Discord | |||||
| return _rest.Delete(Endpoints.ServerRole(serverId, roleId)); | return _rest.Delete(Endpoints.ServerRole(serverId, roleId)); | ||||
| } | } | ||||
| public Task EditRole(string serverId, string roleId, string name = null, uint? permissions = null) | |||||
| public Task EditRole(string serverId, string roleId, string name = null, uint? permissions = null, bool? hoist = null, uint? color = null) | |||||
| { | { | ||||
| if (serverId == null) throw new ArgumentNullException(nameof(serverId)); | if (serverId == null) throw new ArgumentNullException(nameof(serverId)); | ||||
| if (roleId == null) throw new ArgumentNullException(nameof(roleId)); | if (roleId == null) throw new ArgumentNullException(nameof(roleId)); | ||||
| var request = new EditRoleRequest { Name = name, Permissions = permissions }; | |||||
| var request = new EditRoleRequest { Name = name, Permissions = permissions, Hoist = hoist, Color = color }; | |||||
| return _rest.Patch(Endpoints.ServerRole(serverId, roleId), request); | return _rest.Patch(Endpoints.ServerRole(serverId, roleId), request); | ||||
| } | } | ||||
| @@ -654,13 +654,13 @@ namespace Discord | |||||
| public Task EditRole(Role role, string newName) | public Task EditRole(Role role, string newName) | ||||
| => EditRole(role?.ServerId, role?.Id, newName); | => EditRole(role?.ServerId, role?.Id, newName); | ||||
| public Task EditRole(string serverId, string roleId, string name = null, PackedServerPermissions permissions = null) | |||||
| public Task EditRole(string serverId, string roleId, string name = null, PackedServerPermissions permissions = null, bool? hoist = null, uint? color = null) | |||||
| { | { | ||||
| CheckReady(); | CheckReady(); | ||||
| if (serverId == null) throw new NullReferenceException(nameof(serverId)); | if (serverId == null) throw new NullReferenceException(nameof(serverId)); | ||||
| if (roleId == null) throw new NullReferenceException(nameof(roleId)); | if (roleId == null) throw new NullReferenceException(nameof(roleId)); | ||||
| return _api.EditRole(serverId, roleId, name: name, permissions: permissions?.RawValue); | |||||
| return _api.EditRole(serverId, roleId, name: name, permissions: permissions?.RawValue, hoist: hoist, color: color); | |||||
| } | } | ||||
| public Task DeleteRole(Role role) | public Task DeleteRole(Role role) | ||||