updates i think
This commit is contained in:
parent
625ca8e30c
commit
063a12e804
9 changed files with 41 additions and 21 deletions
|
@ -274,7 +274,7 @@ namespace Maki
|
||||||
);
|
);
|
||||||
|
|
||||||
if (gateway.ErrorCode != RestErrorCode.Ok)
|
if (gateway.ErrorCode != RestErrorCode.Ok)
|
||||||
throw new Exception($"{gateway.ErrorCode}: {gateway.ErrorMessage}");
|
throw new DiscordException($"{gateway.ErrorCode}: {gateway.ErrorMessage}");
|
||||||
|
|
||||||
Gateway = gateway.Response.Url;
|
Gateway = gateway.Response.Url;
|
||||||
|
|
||||||
|
@ -311,13 +311,13 @@ namespace Maki
|
||||||
);
|
);
|
||||||
|
|
||||||
if (login.ErrorCode != RestErrorCode.Ok)
|
if (login.ErrorCode != RestErrorCode.Ok)
|
||||||
throw new Exception($"{login.ErrorCode}: {login.ErrorMessage}");
|
throw new DiscordException($"{login.ErrorCode}: {login.ErrorMessage}");
|
||||||
|
|
||||||
if (login.Response.UsernameError?.Length > 0)
|
if (login.Response.UsernameError?.Length > 0)
|
||||||
throw new Exception(login.Response.UsernameError.FirstOrDefault());
|
throw new DiscordException(login.Response.UsernameError.FirstOrDefault());
|
||||||
|
|
||||||
if (login.Response.PasswordError?.Length > 0)
|
if (login.Response.PasswordError?.Length > 0)
|
||||||
throw new Exception(login.Response.PasswordError.FirstOrDefault());
|
throw new DiscordException(login.Response.PasswordError.FirstOrDefault());
|
||||||
|
|
||||||
Token = login.Response.Token;
|
Token = login.Response.Token;
|
||||||
|
|
||||||
|
@ -336,16 +336,16 @@ namespace Maki
|
||||||
);
|
);
|
||||||
|
|
||||||
if (totp.ErrorCode != RestErrorCode.Ok)
|
if (totp.ErrorCode != RestErrorCode.Ok)
|
||||||
throw new Exception($"{totp.ErrorCode}: {totp.ErrorMessage}");
|
throw new DiscordException($"{totp.ErrorCode}: {totp.ErrorMessage}");
|
||||||
|
|
||||||
Token = totp.Response.Token;
|
Token = totp.Response.Token;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
throw new Exception("Token was null but MFA is false and/or ticket is empty?");
|
throw new DiscordException("Token was null but MFA is false and/or ticket is empty?");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (string.IsNullOrEmpty(Token))
|
if (string.IsNullOrEmpty(Token))
|
||||||
throw new Exception("Authentication failed!");
|
throw new DiscordException("Authentication failed!");
|
||||||
|
|
||||||
Connect();
|
Connect();
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,14 +5,14 @@ namespace Maki
|
||||||
{
|
{
|
||||||
public class DiscordColour
|
public class DiscordColour
|
||||||
{
|
{
|
||||||
public DiscordColour(uint raw)
|
public DiscordColour(int raw)
|
||||||
{
|
{
|
||||||
Raw = raw;
|
Raw = raw;
|
||||||
}
|
}
|
||||||
|
|
||||||
public DiscordColour(byte red, byte green, byte blue)
|
public DiscordColour(byte red, byte green, byte blue)
|
||||||
{
|
{
|
||||||
Raw = (uint)((red << 16) + (green << 8) + blue);
|
Raw = (red << 16) + (green << 8) + blue;
|
||||||
}
|
}
|
||||||
|
|
||||||
public DiscordColour(string hex)
|
public DiscordColour(string hex)
|
||||||
|
@ -24,30 +24,30 @@ namespace Maki
|
||||||
|
|
||||||
if (hex.Length != 6)
|
if (hex.Length != 6)
|
||||||
throw new FormatException("Invalid hex colour format!");
|
throw new FormatException("Invalid hex colour format!");
|
||||||
|
|
||||||
Red = byte.Parse(hex.Substring(0, 2), NumberStyles.HexNumber);
|
Red = byte.Parse(hex.Substring(0, 2), NumberStyles.HexNumber);
|
||||||
Green = byte.Parse(hex.Substring(2, 2), NumberStyles.HexNumber);
|
Green = byte.Parse(hex.Substring(2, 2), NumberStyles.HexNumber);
|
||||||
Blue = byte.Parse(hex.Substring(4, 2), NumberStyles.HexNumber);
|
Blue = byte.Parse(hex.Substring(4, 2), NumberStyles.HexNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
public uint Raw = uint.MinValue;
|
public int Raw = int.MinValue;
|
||||||
|
|
||||||
public byte Red
|
public byte Red
|
||||||
{
|
{
|
||||||
get => (byte)(Raw >> 16 & 0xFF);
|
get => (byte)(Raw >> 16 & 0xFF);
|
||||||
set => Raw = (uint)((value << 16) + (Green << 8) + Blue);
|
set => Raw = (value << 16) + (Green << 8) + Blue;
|
||||||
}
|
}
|
||||||
|
|
||||||
public byte Green
|
public byte Green
|
||||||
{
|
{
|
||||||
get => (byte)(Raw >> 8 & 0xFF);
|
get => (byte)(Raw >> 8 & 0xFF);
|
||||||
set => Raw = (uint)((Red << 16) + (value << 8) + Blue);
|
set => Raw = (Red << 16) + (value << 8) + Blue;
|
||||||
}
|
}
|
||||||
|
|
||||||
public byte Blue
|
public byte Blue
|
||||||
{
|
{
|
||||||
get => (byte)(Raw & 0xFF);
|
get => (byte)(Raw & 0xFF);
|
||||||
set => Raw = (uint)((Red << 16) + (Green << 8) + value);
|
set => Raw = (Red << 16) + (Green << 8) + value;
|
||||||
}
|
}
|
||||||
|
|
||||||
public string Hex => $"{Red:X2}{Green:X2}{Blue:X2}";
|
public string Hex => $"{Red:X2}{Green:X2}{Blue:X2}";
|
||||||
|
|
19
Maki/DiscordException.cs
Normal file
19
Maki/DiscordException.cs
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Maki
|
||||||
|
{
|
||||||
|
public class DiscordException : Exception
|
||||||
|
{
|
||||||
|
public DiscordException() : base()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public DiscordException(string msg) : base(msg)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public DiscordException(string msg, Exception inner) : base(msg, inner)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -30,7 +30,7 @@ namespace Maki
|
||||||
IsMentionable = role.IsMentionable == true;
|
IsMentionable = role.IsMentionable == true;
|
||||||
Position = role.Position ?? 0;
|
Position = role.Position ?? 0;
|
||||||
Server = server;
|
Server = server;
|
||||||
Colour = new DiscordColour(role.Colour ?? uint.MinValue);
|
Colour = new DiscordColour(role.Colour ?? int.MinValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Delete()
|
public void Delete()
|
||||||
|
@ -38,7 +38,7 @@ namespace Maki
|
||||||
RestResponse<object> resp = client.RestClient.Request<object>(RestRequestMethod.DELETE, RestEndpoints.GuildRole(Server.Id, Id));
|
RestResponse<object> resp = client.RestClient.Request<object>(RestRequestMethod.DELETE, RestEndpoints.GuildRole(Server.Id, Id));
|
||||||
|
|
||||||
if (resp.Status != 204)
|
if (resp.Status != 204)
|
||||||
throw new Exception("Failed to delete role!");
|
throw new DiscordException("Failed to delete role!");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Edit(string name = null, DiscordPermission? perms = null, DiscordColour colour = null, bool? hoist = null, bool? mentionable = null)
|
public void Edit(string name = null, DiscordPermission? perms = null, DiscordColour colour = null, bool? hoist = null, bool? mentionable = null)
|
||||||
|
@ -53,7 +53,7 @@ namespace Maki
|
||||||
});
|
});
|
||||||
|
|
||||||
if (role.ErrorCode != RestErrorCode.Ok)
|
if (role.ErrorCode != RestErrorCode.Ok)
|
||||||
throw new Exception($"{role.ErrorCode}: {role.ErrorMessage}");
|
throw new DiscordException($"{role.ErrorCode}: {role.ErrorMessage}");
|
||||||
|
|
||||||
Name = role.Response.Name;
|
Name = role.Response.Name;
|
||||||
Perms = (DiscordPermission)role.Response.Permissions;
|
Perms = (DiscordPermission)role.Response.Permissions;
|
||||||
|
|
|
@ -45,7 +45,7 @@ namespace Maki
|
||||||
});
|
});
|
||||||
|
|
||||||
if (roleResp.ErrorCode != RestErrorCode.Ok)
|
if (roleResp.ErrorCode != RestErrorCode.Ok)
|
||||||
throw new Exception($"{roleResp.ErrorCode}: {roleResp.ErrorMessage}");
|
throw new DiscordException($"{roleResp.ErrorCode}: {roleResp.ErrorMessage}");
|
||||||
|
|
||||||
DiscordRole role = client.roles.Where(x => x.Id == roleResp.Response.Id).FirstOrDefault();
|
DiscordRole role = client.roles.Where(x => x.Id == roleResp.Response.Id).FirstOrDefault();
|
||||||
|
|
||||||
|
|
|
@ -59,6 +59,7 @@
|
||||||
<Compile Include="DiscordEmbedField.cs" />
|
<Compile Include="DiscordEmbedField.cs" />
|
||||||
<Compile Include="DiscordEmbedFooter.cs" />
|
<Compile Include="DiscordEmbedFooter.cs" />
|
||||||
<Compile Include="DiscordEmbedImage.cs" />
|
<Compile Include="DiscordEmbedImage.cs" />
|
||||||
|
<Compile Include="DiscordException.cs" />
|
||||||
<Compile Include="DiscordGame.cs" />
|
<Compile Include="DiscordGame.cs" />
|
||||||
<Compile Include="DiscordMember.cs" />
|
<Compile Include="DiscordMember.cs" />
|
||||||
<Compile Include="DiscordMessage.cs" />
|
<Compile Include="DiscordMessage.cs" />
|
||||||
|
|
|
@ -42,7 +42,7 @@ namespace Maki.Structures.Embeds
|
||||||
/// colour code of the embed
|
/// colour code of the embed
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[JsonProperty("color")]
|
[JsonProperty("color")]
|
||||||
public uint Colour;
|
public int Colour;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// footer information
|
/// footer information
|
||||||
|
|
|
@ -11,7 +11,7 @@ namespace Maki.Structures.Rest
|
||||||
public DiscordPermission Perms;
|
public DiscordPermission Perms;
|
||||||
|
|
||||||
[JsonProperty("color")]
|
[JsonProperty("color")]
|
||||||
public uint Colour;
|
public int Colour;
|
||||||
|
|
||||||
[JsonProperty("hoist")]
|
[JsonProperty("hoist")]
|
||||||
public bool Hoist;
|
public bool Hoist;
|
||||||
|
|
|
@ -23,7 +23,7 @@ namespace Maki.Structures.Roles
|
||||||
/// integer representation of hexadecimal color code
|
/// integer representation of hexadecimal color code
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[JsonProperty("color")]
|
[JsonProperty("color")]
|
||||||
public uint? Colour;
|
public int? Colour;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// if this role is pinned in the user listing
|
/// if this role is pinned in the user listing
|
||||||
|
|
Reference in a new issue