diff --git a/Compatible/Compatible.csproj b/Compatible/Compatible.csproj
index 54370f4..45991ae 100644
--- a/Compatible/Compatible.csproj
+++ b/Compatible/Compatible.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/Igniter/MSG/ViewAllowWindow.cs b/Igniter/MSG/ViewAllowWindow.cs
index d0b7a2b..08a02b1 100644
--- a/Igniter/MSG/ViewAllowWindow.cs
+++ b/Igniter/MSG/ViewAllowWindow.cs
@@ -3,7 +3,7 @@
namespace Igniter.MSG
{
- public sealed class ViewAllowWindow : AsyncRequestMessage
+ public sealed class ViewAllowWindow : RequestMessage
{
public string Text { get; set; }
diff --git a/Igniter/View/MainWindow.xaml.cs b/Igniter/View/MainWindow.xaml.cs
index 196cd2f..001536e 100644
--- a/Igniter/View/MainWindow.xaml.cs
+++ b/Igniter/View/MainWindow.xaml.cs
@@ -11,7 +11,7 @@
{
InitializeComponent();
- StrongReferenceMessenger.Default.Register(this, (recipient, message) => message.Reply(Dispatcher.InvokeAsync(() => MessageBox.Show(this, message.Text, "Qwilight", message.Input, message.Drawing)).Task));
+ StrongReferenceMessenger.Default.Register(this, (recipient, message) => message.Reply(MessageBox.Show(this, message.Text, "Qwilight", message.Input, message.Drawing)));
}
void OnLoaded(object sender, RoutedEventArgs e) => _ = (DataContext as MainViewModel).OnLoaded();
diff --git a/Igniter/ViewModels/MainViewModel.cs b/Igniter/ViewModels/MainViewModel.cs
index b1778af..d82fbc8 100644
--- a/Igniter/ViewModels/MainViewModel.cs
+++ b/Igniter/ViewModels/MainViewModel.cs
@@ -39,7 +39,7 @@
public async Task OnLoaded()
{
- switch (await StrongReferenceMessenger.Default.Send(new ViewAllowWindow
+ switch (StrongReferenceMessenger.Default.Send(new ViewAllowWindow
{
Text = LanguageSystem.Instance.Levy,
Input = MessageBoxButton.OKCancel,
@@ -65,14 +65,14 @@
Text = fileName;
}
};
- await Task.Run(() => zipFile.ExtractAll(Path.GetDirectoryName(IgniterComponent.QwilightFilePath), ExtractExistingFileAction.OverwriteSilently)).ConfigureAwait(false);
+ await Task.Run(() => zipFile.ExtractAll(Path.GetDirectoryName(IgniterComponent.QwilightFilePath), ExtractExistingFileAction.OverwriteSilently));
}
- await OnIgnited().ConfigureAwait(false);
+ OnIgnited();
}
catch (Exception e)
{
- await OnIgnitingFault(e).ConfigureAwait(false);
+ OnIgnitingFault(e);
if (IsVisible)
{
continue;
@@ -84,16 +84,16 @@
break;
}
- async ValueTask OnIgnited()
+ async void OnIgnited()
{
IsVisible = false;
- await StrongReferenceMessenger.Default.Send(new ViewAllowWindow
+ StrongReferenceMessenger.Default.Send(new ViewAllowWindow
{
Text = LanguageSystem.Instance.Ignited,
Input = MessageBoxButton.OK,
Drawing = MessageBoxImage.Information
});
- switch (await StrongReferenceMessenger.Default.Send(new ViewAllowWindow
+ switch (StrongReferenceMessenger.Default.Send(new ViewAllowWindow
{
Text = LanguageSystem.Instance.ExeQwilight,
Input = MessageBoxButton.YesNo,
@@ -107,16 +107,16 @@
Environment.Exit(0);
}
- async ValueTask OnIgnitingFault(Exception e)
+ async void OnIgnitingFault(Exception e)
{
IsVisible = false;
- await StrongReferenceMessenger.Default.Send(new ViewAllowWindow
+ StrongReferenceMessenger.Default.Send(new ViewAllowWindow
{
Text = e.Message,
Input = MessageBoxButton.OK,
Drawing = MessageBoxImage.Error
});
- switch (await StrongReferenceMessenger.Default.Send(new ViewAllowWindow
+ switch (StrongReferenceMessenger.Default.Send(new ViewAllowWindow
{
Text = LanguageSystem.Instance.IgnitingFault,
Input = MessageBoxButton.YesNo,
diff --git a/Qwilight/Assets/Language.json b/Qwilight/Assets/Language.json
index dbc0b6d..38da704 100644
--- a/Qwilight/Assets/Language.json
+++ b/Qwilight/Assets/Language.json
@@ -769,7 +769,7 @@
},
"DefaultComputeInNetSiteFault": {
"ko-KR": "일반 플레이를 하시려면 먼저 멀티방에서 나가주세요",
- "en-US": "If you want to play normally, please leave the multi-room first"
+ "en-US": "To play normally, leave the multiplayer room first"
},
"DefaultComputingSituationContents": {
"ko-KR": "게임 플레이 중… ({0})",
@@ -1309,7 +1309,7 @@
},
"HasNotNetNoteFile": {
"ko-KR": "해당 멀티방의 노트 파일을 가지지 않아서 시작이 불가능합니다.",
- "en-US": "It is impossible to start because it does not have the note file of the multi-room."
+ "en-US": "Can't start because you don't have the note file for that multiroom."
},
"HellBPMContents": {
"ko-KR": "기믹 노트 파일만 보여줄지 설정합니다.",
@@ -1733,7 +1733,7 @@
},
"IOHigherContents": {
"ko-KR": "#,##0 명 관전 중…",
- "en-US": "#,##0 people are spectating..."
+ "en-US": "#,##0 people are spectating…"
},
"IOLowerContents": {
"ko-KR": "{0} 관전 중…",
@@ -2269,11 +2269,11 @@
},
"NewNetSiteContents": {
"ko-KR": "멀티방 이름과 비밀번호를 입력하세요",
- "en-US": "Enter the name and password of the multi-room"
+ "en-US": "Enter your multiroom name and password"
},
"NewNetSiteText": {
"ko-KR": "멀티방 만들기",
- "en-US": "Creating a multi-room"
+ "en-US": "Create a multiroom"
},
"NewSilentSite": {
"ko-KR": "1대1 대화",
@@ -2793,7 +2793,7 @@
},
"PlatformQuitMode": {
"ko-KR": "결과 보는 중…",
- "en-US": "Viewing results..."
+ "en-US": "Viewing results…"
},
"PlatformSiteName": {
"ko-KR": "비공식 디스코드 대화방",
@@ -3003,14 +3003,14 @@
"ko-KR": "추가 스킨 받기",
"en-US": "Download additional skins"
},
- "SavedFileContents": {
- "ko-KR": "파일 압축 풀기 완료",
- "en-US": "File unzipping complete"
- },
"SavedLevelContents": {
"ko-KR": "난이도 테이블 다운로드 완료",
"en-US": "Difficulty table download complete"
},
+ "SavedNoteContents": {
+ "ko-KR": "노트 파일 압축 풀기 완료",
+ "en-US": "Note file unzipping completed"
+ },
"SavedQwilightBundleContents": {
"ko-KR": "게임을 다시 시작한 후 복원이 진행됩니다.",
"en-US": "Restoration proceeds after restarting the game."
@@ -3027,10 +3027,6 @@
"ko-KR": "스킨 등록 완료",
"en-US": "Skin registration completed"
},
- "SaveFileFault": {
- "ko-KR": "파일 압축 풀기가 불가능합니다. ({0})",
- "en-US": "It is not possible to unzip the file. ({0})"
- },
"SaveModeComponent": {
"ko-KR": "여기에 저장",
"en-US": "Save here"
@@ -3043,9 +3039,13 @@
"ko-KR": "공유 받기",
"en-US": "Get a Share"
},
+ "SaveNoteFault": {
+ "ko-KR": "노트 파일 압축 풀기가 불가능합니다. ({0})",
+ "en-US": "Unable to extract note file ({0})"
+ },
"SaveUIFault": {
"ko-KR": "스킨 등록이 불가능합니다. ({0})",
- "en-US": "Skin registration is not possible. ({0})"
+ "en-US": "Unable to register skin ({0})"
},
"SavingAsBundleContents": {
"ko-KR": "꾸러미로 업로드 중…",
@@ -3063,14 +3063,14 @@
"ko-KR": "추가 스킨을 백그라운드에서 받습니다.",
"en-US": "Downloading additional skins in the background."
},
- "SavingFileContents": {
- "ko-KR": "파일 압축 푸는 중…",
- "en-US": "Unzipping files..."
- },
"SavingLevelContents": {
"ko-KR": "난이도 테이블 다운로드 중…",
"en-US": "Downloading difficulty table…"
},
+ "SavingNoteContents": {
+ "ko-KR": "노트 파일 압축 푸는 중…",
+ "en-US": "Unzipping note file…"
+ },
"SavingQwilightContents": {
"ko-KR": "새 버전 다운로드 중…",
"en-US": "Downloading new version…"
@@ -3189,7 +3189,7 @@
},
"SiteYellNewNetSite": {
"ko-KR": "새 멀티방을 만듦",
- "en-US": "Create a new multi-room"
+ "en-US": "Create a new multiroom"
},
"SiteYellNewSite": {
"ko-KR": "새 대화방을 만듦",
@@ -3385,7 +3385,7 @@
},
"TwilightCommentaryAssist": {
"ko-KR": "코멘트를 입력하세요",
- "en-US": "Write a comment..."
+ "en-US": "Please enter a comment"
},
"TwilightCommentIOContents": {
"ko-KR": "다른 사용자의 실시간 멀티 플레이 화면을 클릭하면 바로 관전 가능합니다.",
diff --git a/Qwilight/Compute/DefaultCompute.cs b/Qwilight/Compute/DefaultCompute.cs
index ad69e56..1e422b2 100644
--- a/Qwilight/Compute/DefaultCompute.cs
+++ b/Qwilight/Compute/DefaultCompute.cs
@@ -3552,7 +3552,7 @@
_failedDrawingMillis = Math.Max(0.0, _failedDrawingMillis - millisLoopUnit);
- GetNetItems();
+ _ = GetNetItems();
GetNetComments();
HandleNetItems(millisLoopUnit);
}
@@ -4789,7 +4789,7 @@
return targetPosition;
}
- public virtual void GetNetItems()
+ public virtual async Task GetNetItems()
{
if (!_wasNetItems)
{
@@ -4810,49 +4810,45 @@
}
}
- _ = Awaitable();
- async Task Awaitable()
+ var eventNoteID = EventNoteEntryItem?.EventNoteID;
+ var netItems = new List();
+ switch (!string.IsNullOrEmpty(eventNoteID) || NoteFile.IsBanned ? 0 : Configure.Instance.CommentViewTabPosition)
{
- var eventNoteID = EventNoteEntryItem?.EventNoteID;
- var netItems = new List();
- switch (!string.IsNullOrEmpty(eventNoteID) || NoteFile.IsBanned ? 0 : Configure.Instance.CommentViewTabPosition)
- {
- case 0:
- netItems.AddRange(GetNetItemsImpl(DB.Instance.GetCommentItems(NoteFiles[0], eventNoteID, NoteFiles.Length)));
- _totalComments = netItems.Count;
- break;
- case 1:
- case 2:
- var www = $"{QwilightComponent.QwilightAPI}/comment?noteID={NoteFile.GetNoteID512()}&avatarID={Configure.Instance.AvatarID}&isUbuntu={Configure.Instance.UbuntuNetItemTarget || !string.IsNullOrEmpty(UbuntuID)}&ubuntuID={UbuntuID}&viewUnit=50";
- var twilightWwwComment = await TwilightSystem.Instance.GetWwwParallel(www).ConfigureAwait(false);
- if (twilightWwwComment.HasValue)
- {
- var twilightWwwCommentValue = twilightWwwComment.Value;
- PositionSystem.Instance.SetData(www, twilightWwwCommentValue.comments);
- _totalComments = twilightWwwCommentValue.totalComments;
- netItems.AddRange(GetNetItemsImpl(HandleTwilightNetItems(Utility.GetCommentItems(twilightWwwCommentValue, NoteFile, www))));
- }
- break;
- }
- netItems.Add(netItemMe);
- _netItems.AddRange(netItems);
- lock (IsTwilightNetItemsCSX)
- {
- if (!IsTwilightNetItems)
+ case 0:
+ netItems.AddRange(GetNetItemsImpl(DB.Instance.GetCommentItems(NoteFiles[0], eventNoteID, NoteFiles.Length)));
+ _totalComments = netItems.Count;
+ break;
+ case 1:
+ case 2:
+ var www = $"{QwilightComponent.QwilightAPI}/comment?noteID={NoteFile.GetNoteID512()}&avatarID={Configure.Instance.AvatarID}&isUbuntu={Configure.Instance.UbuntuNetItemTarget || !string.IsNullOrEmpty(UbuntuID)}&ubuntuID={UbuntuID}&viewUnit=50";
+ var twilightWwwComment = await TwilightSystem.Instance.GetWwwParallel(www);
+ if (twilightWwwComment.HasValue)
{
- SetNetItems(netItems);
+ var twilightWwwCommentValue = twilightWwwComment.Value;
+ PositionSystem.Instance.SetData(www, twilightWwwCommentValue.comments);
+ _totalComments = twilightWwwCommentValue.totalComments;
+ netItems.AddRange(GetNetItemsImpl(HandleTwilightNetItems(Utility.GetCommentItems(twilightWwwCommentValue, NoteFile, www))));
}
- }
- _wasGetNetItems = true;
-
- IEnumerable GetNetItemsImpl(ICollection commentItems) => commentItems.Select(commentItem => new NetItem(commentItem.AvatarWwwValue.AvatarID, commentItem.AvatarName, commentItem.Date, commentItem.Stand, commentItem.Band, commentItem.Point, commentItem.Stand / (1000000.0 * NoteFiles.Length))
- {
- CommentItem = commentItem,
- AvatarNetStatus = Event.Types.AvatarNetStatus.Clear,
- QuitValue = Utility.GetQuitStatusValue(commentItem.Point, commentItem.Stand, 1.0, NoteFiles.Length),
- HitPointsModeValue = commentItem.ModeComponentValue.HandlingHitPointsModeValue
- });
+ break;
}
+ netItems.Add(netItemMe);
+ _netItems.AddRange(netItems);
+ lock (IsTwilightNetItemsCSX)
+ {
+ if (!IsTwilightNetItems)
+ {
+ SetNetItems(netItems);
+ }
+ }
+ _wasGetNetItems = true;
+
+ IEnumerable GetNetItemsImpl(ICollection commentItems) => commentItems.Select(commentItem => new NetItem(commentItem.AvatarWwwValue.AvatarID, commentItem.AvatarName, commentItem.Date, commentItem.Stand, commentItem.Band, commentItem.Point, commentItem.Stand / (1000000.0 * NoteFiles.Length))
+ {
+ CommentItem = commentItem,
+ AvatarNetStatus = Event.Types.AvatarNetStatus.Clear,
+ QuitValue = Utility.GetQuitStatusValue(commentItem.Point, commentItem.Stand, 1.0, NoteFiles.Length),
+ HitPointsModeValue = commentItem.ModeComponentValue.HandlingHitPointsModeValue
+ });
}
}
diff --git a/Qwilight/Compute/IOCompute.cs b/Qwilight/Compute/IOCompute.cs
index f5943af..695de3c 100644
--- a/Qwilight/Compute/IOCompute.cs
+++ b/Qwilight/Compute/IOCompute.cs
@@ -29,15 +29,16 @@
IOMillis = time - ((time - twilightCallIOComponent.ioMillis) / 2 + twilightCallIOComponent.targetIOMillis);
}
- public override void GetNetItems()
+ public override async Task GetNetItems()
{
lock (IsTwilightNetItemsCSX)
{
if (!IsTwilightNetItems)
{
- base.GetNetItems();
+ _ = base.GetNetItems();
}
}
+ await Task.CompletedTask;
}
public override void GetNetComments()
diff --git a/Qwilight/Compute/NetCompute.cs b/Qwilight/Compute/NetCompute.cs
index 56eb1d0..80c5570 100644
--- a/Qwilight/Compute/NetCompute.cs
+++ b/Qwilight/Compute/NetCompute.cs
@@ -69,8 +69,9 @@
Configure.Instance.NotifyTutorial(Configure.TutorialID.NetQuitMode);
}
- public override void GetNetItems()
+ public override async Task GetNetItems()
{
+ await Task.CompletedTask;
}
public override void GetNetComments()
diff --git a/Qwilight/JSON.cs b/Qwilight/JSON.cs
index 0384833..8fa6a92 100644
--- a/Qwilight/JSON.cs
+++ b/Qwilight/JSON.cs
@@ -151,7 +151,7 @@
}
}
- public struct TaehuiQwilight
+ public struct TaehuiQwilightDate
{
public string date;
#if X64
diff --git a/Qwilight/NoteFile/DefaultEntryItemNoteFile.cs b/Qwilight/NoteFile/DefaultEntryItemNoteFile.cs
index 50afd7e..4b86efb 100644
--- a/Qwilight/NoteFile/DefaultEntryItemNoteFile.cs
+++ b/Qwilight/NoteFile/DefaultEntryItemNoteFile.cs
@@ -20,10 +20,7 @@
{
Title = entryItem.Title;
Artist = entryItem.Artist;
- OnLevyNoteFile = new(() =>
- {
- ViewModels.Instance.MainValue.SetLastDefaultEntryItem(isEnter ? DefaultEntryItem : null);
- });
+ OnLevyNoteFile = new(() => ViewModels.Instance.MainValue.SetLastDefaultEntryItem(isEnter ? DefaultEntryItem : null));
}
}
}
\ No newline at end of file
diff --git a/Qwilight/Qwilight.csproj b/Qwilight/Qwilight.csproj
index 56fb29d..76fad16 100644
--- a/Qwilight/Qwilight.csproj
+++ b/Qwilight/Qwilight.csproj
@@ -47,7 +47,7 @@
-
+
diff --git a/Qwilight/QwilightComponent.cs b/Qwilight/QwilightComponent.cs
index 98e5685..8aaa259 100644
--- a/Qwilight/QwilightComponent.cs
+++ b/Qwilight/QwilightComponent.cs
@@ -1,5 +1,4 @@
using CommandLine;
-using Microsoft.Win32;
using Qwilight.UIComponent;
using Qwilight.Utilities;
#if DEBUG
@@ -9,8 +8,6 @@
using System.IO;
using System.Reflection;
using System.Text.RegularExpressions;
-using System.Windows;
-using System.Windows.Media.Animation;
using Windows.Win32;
using Windows.Win32.Graphics.Gdi;
diff --git a/Qwilight/System/AvatarDrawingSystem.cs b/Qwilight/System/AvatarDrawingSystem.cs
index 57eec2d..7c9b128 100644
--- a/Qwilight/System/AvatarDrawingSystem.cs
+++ b/Qwilight/System/AvatarDrawingSystem.cs
@@ -49,7 +49,7 @@
var avatarCSX = _avatarCSXs.GetOrAdd(avatarID, GetCSX);
try
{
- await avatarCSX.WaitAsync().ConfigureAwait(false);
+ await avatarCSX.WaitAsync();
if (!_avatarDrawings.TryGetValue(avatarID, out var avatarDrawing))
{
if (string.IsNullOrEmpty(avatarID))
@@ -60,7 +60,7 @@
{
try
{
- using var s = await TwilightSystem.Instance.GetWwwParallel($"{QwilightComponent.QwilightAPI}/drawing?avatarID={WebUtility.UrlEncode(avatarID)}&drawingVariety=0").ConfigureAwait(false);
+ using var s = await TwilightSystem.Instance.GetWwwParallel($"{QwilightComponent.QwilightAPI}/drawing?avatarID={WebUtility.UrlEncode(avatarID)}&drawingVariety=0");
avatarDrawing = new()
{
Drawing = DrawingSystem.Instance.Load(s, null),
diff --git a/Qwilight/System/AvatarEdgeSystem.cs b/Qwilight/System/AvatarEdgeSystem.cs
index d0ccb48..a143b05 100644
--- a/Qwilight/System/AvatarEdgeSystem.cs
+++ b/Qwilight/System/AvatarEdgeSystem.cs
@@ -49,7 +49,7 @@
var avatarCSX = _avatarCSXs.GetOrAdd(avatarID, GetCSX);
try
{
- await avatarCSX.WaitAsync().ConfigureAwait(false);
+ await avatarCSX.WaitAsync();
if (!_avatarEdges.TryGetValue(avatarID, out var avatarEdge))
{
if (string.IsNullOrEmpty(avatarID))
@@ -60,7 +60,7 @@
{
try
{
- using var s = await TwilightSystem.Instance.GetWwwParallel($"{QwilightComponent.QwilightAPI}/drawing?avatarID={WebUtility.UrlEncode(avatarID)}&drawingVariety=2").ConfigureAwait(false);
+ using var s = await TwilightSystem.Instance.GetWwwParallel($"{QwilightComponent.QwilightAPI}/drawing?avatarID={WebUtility.UrlEncode(avatarID)}&drawingVariety=2");
avatarEdge = new()
{
Drawing = DrawingSystem.Instance.Load(s, null),
diff --git a/Qwilight/System/AvatarTitleSystem.cs b/Qwilight/System/AvatarTitleSystem.cs
index 8a372ff..fddb693 100644
--- a/Qwilight/System/AvatarTitleSystem.cs
+++ b/Qwilight/System/AvatarTitleSystem.cs
@@ -33,7 +33,7 @@
var avatarCSX = _avatarCSXs.GetOrAdd(avatarID, GetCSX);
try
{
- await avatarCSX.WaitAsync().ConfigureAwait(false);
+ await avatarCSX.WaitAsync();
if (!_avatarTitles.TryGetValue(avatarID, out var avatarTitle))
{
if (string.IsNullOrEmpty(avatarID))
@@ -44,7 +44,7 @@
{
try
{
- var twilightWwwTitle = await TwilightSystem.Instance.GetWwwParallel($"{QwilightComponent.QwilightAPI}/title?avatarID={WebUtility.UrlEncode(avatarID)}&language={Configure.Instance.Language}").ConfigureAwait(false);
+ var twilightWwwTitle = await TwilightSystem.Instance.GetWwwParallel($"{QwilightComponent.QwilightAPI}/title?avatarID={WebUtility.UrlEncode(avatarID)}&language={Configure.Instance.Language}");
avatarTitle = twilightWwwTitle.HasValue ? new AvatarTitle(twilightWwwTitle.Value.title, Utility.GetTitlePaint(twilightWwwTitle.Value.titleColor), Utility.GetTitleColor(twilightWwwTitle.Value.titleColor)) : new AvatarTitle(string.Empty, default, default);
}
catch
diff --git a/Qwilight/System/Configure/UIConfigure.cs b/Qwilight/System/Configure/UIConfigure.cs
index d9ba1eb..eca45c5 100644
--- a/Qwilight/System/Configure/UIConfigure.cs
+++ b/Qwilight/System/Configure/UIConfigure.cs
@@ -137,7 +137,7 @@
{
get => _judgmentVisualizerPosition;
- set =>SetProperty(ref _judgmentVisualizerPosition, value, nameof(JudgmentVisualizerPosition));
+ set => SetProperty(ref _judgmentVisualizerPosition, value, nameof(JudgmentVisualizerPosition));
}
public Dictionary HitNotePaintAreas { get; set; } = new();
diff --git a/Qwilight/System/DrawingSystem/DrawingSystem.cs b/Qwilight/System/DrawingSystem/DrawingSystem.cs
index 23b807f..787de43 100644
--- a/Qwilight/System/DrawingSystem/DrawingSystem.cs
+++ b/Qwilight/System/DrawingSystem/DrawingSystem.cs
@@ -402,9 +402,9 @@
var handleUndoImpl = new Action(mainViewModel.HandleUndoComment);
var handleQuitMove0Impl = new Action(() => defaultComputer.NotifyCompute(-1));
var handleQuitMove1Impl = new Action(() => defaultComputer.NotifyCompute(1));
- var getAvatarDrawing = new Action