Skip to content
This repository was archived by the owner on Sep 2, 2023. It is now read-only.

Commit 2309172

Browse files
author
Awbugl
committed
Update Code
1 parent 6ba9e01 commit 2309172

File tree

4 files changed

+40
-21
lines changed

4 files changed

+40
-21
lines changed

Andreal.Core/Common/MessageInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,15 +106,15 @@ private async Task<bool> SendGroupMessage(MessageChain messages)
106106

107107
internal async Task<bool> SendMessage(MessageChain? message)
108108
{
109-
if (message is null) return false;
109+
if (message is null) return true;
110110
return FromGroup != 0 && MessageType == MessageInfoType.Group
111111
? await SendGroupMessage(message.Prepend(new ReplyMessage(Message)))
112112
: await SendPrivateMessage(message);
113113
}
114114

115115
internal async Task<bool> SendMessageOnly(MessageChain? message)
116116
{
117-
if (message is null) return false;
117+
if (message is null) return true;
118118
return FromGroup != 0 && MessageType == MessageInfoType.Group
119119
? await SendGroupMessage(message)
120120
: await SendPrivateMessage(message);

Andreal.Core/Data/Api/ArcaeaUnlimitedApi.cs

Lines changed: 34 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -21,34 +21,53 @@ public static void Init(AndrealConfig config)
2121
JsonConvert.DeserializeObject<ResponseRoot>(await (await _client!.SendAsync(new(HttpMethod.Get, url)))
2222
.EnsureSuccessStatusCode().Content.ReadAsStringAsync());
2323

24-
private static async Task GetStream(string url, Path filename)
24+
private static async Task GetImage(string url, Path filename)
2525
{
2626
FileStream? fileStream = null;
27+
var message = (await _client!.GetAsync(url)).EnsureSuccessStatusCode();
28+
29+
if (message.Content.Headers.ContentType?.MediaType?.StartsWith("image/") != true)
30+
throw new ArgumentException(JsonConvert.DeserializeObject<ResponseRoot>(await message.Content
31+
.ReadAsStringAsync())!
32+
.Message);
33+
34+
var exflag = false;
2735

2836
try
2937
{
3038
fileStream = new(filename, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
31-
await (await _client!.GetAsync(url)).EnsureSuccessStatusCode().Content.CopyToAsync(fileStream);
39+
await message.Content.CopyToAsync(fileStream);
3240
}
3341
catch
42+
{
43+
exflag = true;
44+
throw;
45+
}
46+
finally
3447
{
3548
try
3649
{
37-
File.Delete(filename);
50+
if (fileStream is not null)
51+
{
52+
fileStream.Close();
53+
await fileStream.DisposeAsync();
54+
}
3855
}
3956
catch
4057
{
4158
// ignore
4259
}
43-
44-
throw;
45-
}
46-
finally
47-
{
48-
if (fileStream is not null)
60+
61+
try
4962
{
50-
fileStream.Close();
51-
await fileStream.DisposeAsync();
63+
if (exflag && File.Exists(filename))
64+
{
65+
File.Delete(filename);
66+
}
67+
}
68+
catch
69+
{
70+
// ignore
5271
}
5372
}
5473
}
@@ -69,16 +88,16 @@ private static async Task GetStream(string url, Path filename)
6988
internal static async Task<ResponseRoot?> SongList() => await GetString("song/list");
7089

7190
internal static async Task SongAssets(string sid, int difficulty, Path pth) =>
72-
await GetStream($"assets/song?songid={sid}&difficulty={difficulty}", pth);
91+
await GetImage($"assets/song?songid={sid}&difficulty={difficulty}", pth);
7392

7493
internal static async Task CharAssets(int partner, bool awakened, Path pth) =>
75-
await GetStream($"assets/char?partner={partner}&awakened={(awakened ? "true" : "false")}", pth);
94+
await GetImage($"assets/char?partner={partner}&awakened={(awakened ? "true" : "false")}", pth);
7695

7796
internal static async Task IconAssets(int partner, bool awakened, Path pth) =>
78-
await GetStream($"assets/icon?partner={partner}&awakened={(awakened ? "true" : "false")}", pth);
97+
await GetImage($"assets/icon?partner={partner}&awakened={(awakened ? "true" : "false")}", pth);
7998

8099
internal static async Task PreviewAssets(string sid, int difficulty, Path pth) =>
81-
await GetStream($"assets/preview?songid={sid}&difficulty={difficulty}", pth);
100+
await GetImage($"assets/preview?songid={sid}&difficulty={difficulty}", pth);
82101

83102
internal static TextMessage GetErrorMessage(RobotReply info, int status, string message)
84103
{

Andreal.Core/UI/Color.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
using Andreal.Core.Model.Arcaea;
2-
31
namespace Andreal.Core.UI;
42

53
[Serializable]
@@ -11,7 +9,9 @@ internal static class Color
119
Tairitsu = FromArgb(150, 50, 20, 75),
1210
Achromic = FromArgb(150, 180, 180, 180),
1311
PmColor = FromArgb(150, 180, 200), ArcGray = FromArgb(60, 60, 60),
14-
ArcPurple = FromArgb(31, 30, 51), GnaqGray = FromArgb(110, 110, 110),
12+
ArcPurple = FromArgb(31, 30, 51),
13+
ArcRed = FromArgb (104, 9, 52),
14+
GnaqGray = FromArgb(110, 110, 110),
1515
AzusaGray = FromArgb(90, 90, 90);
1616

1717
internal static System.Drawing.Color FromArgb(int alpha, System.Drawing.Color baseColor) =>

Andreal.Core/UI/Model/PotentitalModel.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ void IGraphicsModel.Draw(Graphics g)
4949
: $"{ptt[1]}{ptt[2]}", r = $".{ptt[3]}{ptt[4]}";
5050
using var s = new StringFormat { Alignment = StringAlignment.Near };
5151
using var path = new GraphicsPath();
52-
using var pen = new Pen(Color.ArcPurple, 8);
52+
using var pen = new Pen(_potential < 1300 ? Color.ArcPurple : Color.ArcRed, 8);
5353
path.AddString(l, Font.Exo60.FontFamily, 0, 60, new Rectangle(posx, 56, 150, 70), s);
5454
path.AddString(r, Font.Exo44.FontFamily, 0, 44, new Rectangle(posx + lx, 73, 150, 53), s);
5555
gr.DrawPath(pen, path);

0 commit comments

Comments
 (0)