1
0
mirror of synced 2025-02-17 11:08:33 +01:00

Add Hard Reload, Update Dictionary Indexes (#581)

* Add Hard Reload option

Erases songlist.db and rebuilds it from scratch

* Update Dictionary Indexes

* Update SimpleMode description
This commit is contained in:
DragonRatTiger / リュウコ 2024-03-19 23:23:43 -05:00 committed by GitHub
parent 4bd4fe51f1
commit dbe55e5e27
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 118 additions and 13 deletions

View File

@ -179,7 +179,72 @@
10087 : "Exit" menu title
10090 : "System" description
10091 : "Gameplay options" description
10092 : "Exit" description
10092 : "Drum options" description
10093 : "Exit" description
10094 : "Left red drum key settings for 3P" option title
10095 : "Left red drum key settings for 3P" description
10096 : "Right red drum key settings for 3P" option title
10097 : "Right red drum key settings for 3P" description
10098 : "Left blue drum key settings for 3P" option title
10099 : "Left blue drum key settings for 3P" description
10100 : "Right blue drum key settings for 3P" option title
10101 : "Right blue drum key settings for 3P" description
10102 : "Left red drum key settings for 4P" option title
10103 : "Left red drum key settings for 4P" description
10104 : "Right red drum key settings for 4P" option title
10105 : "Right red drum key settings for 4P" description
10106 : "Left blue drum key settings for 4P" option title
10107 : "Left blue drum key settings for 4P" description
10108 : "Right blue drum key settings for 4P" option title
10109 : "Right blue drum key settings for 4P" description
10110 : "Left red drum key settings for 5P" option title
10111 : "Left red drum key settings for 5P" description
10112 : "Right red drum key settings for 5P" option title
10113 : "Right red drum key settings for 5P" description
10114 : "Left blue drum key settings for 5P" option title
10115 : "Left blue drum key settings for 5P" description
10116 : "Right blue drum key settings for 5P" option title
10117 : "Right blue drum key settings for 5P" description
10118 : "Konga clap key settings for 3P" option title
10119 : "Konga clap key settings for 3P" description
10120 : "Konga clap key settings for 4P" option title
10121 : "Konga clap key settings for 4P" description
10122 : "Konga clap key settings for 5P" option title
10123 : "Konga clap key settings for 5P" description
10124 : "Toggle Extreme/Extra transition animations" option title
10125 : "Toggle Extreme/Extra transition animations" description
10126 : "Force normal gauge" option title
10127 : "Force normal gauge" description
10128 : "Increase music volume key settings" option title
10129 : "Increase music volume key settings" description
10130 : "Decrease music volume key settings" option title
10131 : "Decrease music volume key settings" description
10132 : "Display hit values box key settings" option title
10133 : "Display hit values box key settings" description
10134 : "Display debug menu key settings" option title
10135 : "Display debug menu key settings" description
10136 : "Quick Config menu key settings" option title
10137 : "Quick Config menu key settings" description
10138 : "Player Customization menu key settings" option title
10139 : "Player Customization menu key settings" description
10140 : "Change Song Sort menu key settings" option title
10141 : "Change Song Sort menu key settings" description
10142 : "Toggle Auto (P1) key settings" option title
10143 : "Toggle Auto (P1) key settings" description
10144 : "Toggle Auto (P2) key settings" option title
10145 : "Toggle Auto (P2) key settings" description
10146 : "Toggle Training Mode key settings" option title
10147 : "Toggle Training Mode key settings" description
10148 : "Reload songs (Hard Reload)" option title
10149 : "Reload songs (Hard Reload)" description - Creates a fresh song database by rebuilding it from scratch
9992 : "SimpleMode" description - Simplifies drawing by disabling most visual effects during gameplay
9993 : "SimpleMode" option title
9994 : "Async Texture Loading" description - Toggles whether the startup screen will be animated while loading
9995 : "Async Texture Loading" option title
9996 : "Graphics API" description - Choose between OpenGL, DirectX11, Vulkan, or Metal for rendering graphics; Benefits vary, refer to CLang_en entry for details
9997 : "Graphics API" option title
9998 : "Bass Buffer Size" description - User determines a value between 0~99999ms; A lower value reduces audio lag, but may also create abnormal audio. Set to 0 to let the OS decide the size.
9999 : "Bass Buffer Size" option title
# Main Menu text (001XX)

View File

@ -25,6 +25,9 @@ namespace TJAPlayer3
[3] = "Return to left menu.",
[4] = "Reload Songs",
[5] = "Reload the song folder.",
[10148] = "Reload Songs (Hard Reload)",
[10149] = "Delete the existing database and\n" +
"reload the song folder from scratch.",
[6] = "Player Count",
[7] = "Select whether to use 2 player mode.",
[8] = "Kanpeki Mode",
@ -101,9 +104,9 @@ namespace TJAPlayer3
[54] = "Choose a skin to use from the system folder.",
[55] = "A secondary menu for assigning system keys.",
[56] = "Player 1 Auto Play",
[57] = "Toggle whether player 1 plays automatically.\nPress F3 on song select to toggle this.",
[57] = "Toggle whether player 1 plays automatically.",
[58] = "Player 2 Auto Play",
[59] = "Toggle whether player 2 plays automatically.\nPress F4 on song select to toggle this.",
[59] = "Toggle whether player 2 plays automatically.",
[60] = "Roll Speed",
[61] = "When auto is enabled, rolls will be \nautomatically hit this many times per \nsecond. Has no effect on balloons. \n0 disables auto roll, and the \nmaximum value is one hit per frame.",
[62] = "Scroll Speed",
@ -156,7 +159,8 @@ namespace TJAPlayer3
[96] = "A secondary menu to adjust keys used during gameplay.",
[99] = "LeftRed",
[9992] = "Simplifies Drawing\n",
[9992] = "Simplifies drawing by hiding most visual\n" +
"flare and effects during gameplay.\n",
[9993] = "SimpleMode",
[9994] = "Texture Loading Type:\n" +
@ -167,13 +171,12 @@ namespace TJAPlayer3
[9996] = "Drawing Method:\n" +
"Select from either OpenGL,\n" +
"Vulkan, DirectX11, or DirectX12.\n" +
"DirectX11, Vulkan, or Metal.\n" +
"OpenGL is slow, but compatible & stable.\n" +
"Vulkan works fastest on Linux.\n" +
"DirectX11 is fast and stable, but only\n" +
"works on Windows.\n" +
"DirectX12 is very fast but only works\n" +
"on Windows.\n" +
"Vulkan works fastest on Linux.\n" +
"Metal only works on MacOS.\n" +
"\n" +
"This will take effect after game reboot.\n",
[9997] = "Graphics API",
@ -266,7 +269,7 @@ namespace TJAPlayer3
[10085] = "System options",
[10086] = "Gameplay options",
[10087] = "Exit",
[10091] = "Settings for an overall systems.",
[10091] = "Settings for the overall system.",
[10092] = "Settings to play the drums.",
[10093] = "Save the settings and exit from CONFIGURATION menu.",

View File

@ -224,7 +224,6 @@ namespace TJAPlayer3
"Fireworkが非表示になります\n" +
"Rainbowが非表示になります\n" +
"音符がアニメーションしなくなります\n" +
"音符がアニメーションしなくなります\n" +
"NamePlateのアニメーションがなくなります\n" +
"連打の飛んでいく画像が非表示になります\n",
[9993] = "シンプルモード",

View File

@ -126,7 +126,7 @@ namespace TJAPlayer3
/// <summary>
/// 曲検索スレッドの開始
/// </summary>
public void StartEnumFromDisk()
public void StartEnumFromDisk(bool hard_reload = false)
{
if ( state == DTXEnumState.None || state == DTXEnumState.CompletelyDone )
{
@ -141,7 +141,10 @@ namespace TJAPlayer3
{
this.Songs管理 = new CSongs管理();
}
this.thDTXFileEnumerate = new Thread( new ThreadStart( this.t曲リストの構築2 ) );
if (hard_reload)
this.thDTXFileEnumerate = new Thread( new ThreadStart( this.HardReloadSongList ) );
else
this.thDTXFileEnumerate = new Thread( new ThreadStart( this.ReloadSongList ) );
this.thDTXFileEnumerate.Name = "曲リストの構築";
this.thDTXFileEnumerate.IsBackground = true;
this.thDTXFileEnumerate.Priority = System.Threading.ThreadPriority.Lowest;
@ -149,6 +152,14 @@ namespace TJAPlayer3
}
}
private void HardReloadSongList()
{
this.t曲リストの構築2(true);
}
private void ReloadSongList()
{
this.t曲リストの構築2(false);
}
/// <summary>
/// 曲探索スレッドのサスペンド
@ -307,7 +318,7 @@ namespace TJAPlayer3
/// 起動してタイトル画面に遷移した後にバックグラウンドで発生させる曲検索
/// #27060 2012.2.6 yyagi
/// </summary>
private void t曲リストの構築2()
private void t曲リストの構築2(bool hard_reload = false)
{
// !注意!
// 本メソッドは別スレッドで動作するが、プラグイン側でカレントディレクトリを変更しても大丈夫なように、
@ -318,6 +329,11 @@ namespace TJAPlayer3
try
{
if (hard_reload)
{
if (File.Exists($"{TJAPlayer3.strEXEのあるフォルダ}songlist.db"))
File.Delete($"{TJAPlayer3.strEXEのあるフォルダ}songlist.db");
}
Deserialize();
#region [ 2) ]

View File

@ -77,6 +77,10 @@ namespace TJAPlayer3
this.iSystemReloadDTX = new CItemBase(CLangManager.LangInstance.GetString(4), CItemBase.Eパネル種別.,
CLangManager.LangInstance.GetString(5));
this.list項目リスト.Add( this.iSystemReloadDTX );
this.iSystemHardReloadDTX = new CItemBase(CLangManager.LangInstance.GetString(10148), CItemBase.Eパネル種別.,
CLangManager.LangInstance.GetString(10149));
this.list項目リスト.Add( this.iSystemHardReloadDTX );
this.iSystemLanguage = new CItemList(CLangManager.LangInstance.GetString(1), CItemList.Eパネル種別., CLangManager.langToInt(TJAPlayer3.ConfigIni.sLang),
CLangManager.LangInstance.GetString(0),
@ -735,6 +739,23 @@ namespace TJAPlayer3
TJAPlayer3.stageSongSelect.actSongList.ResetSongIndex();
}
else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemHardReloadDTX ) // #32081 2013.10.21 yyagi
{
if ( TJAPlayer3.EnumSongs.IsEnumerating )
{
// Debug.WriteLine( "バックグラウンドでEnumeratingSongs中だったので、一旦中断します。" );
TJAPlayer3.EnumSongs.Abort();
TJAPlayer3.actEnumSongs.DeActivate();
}
TJAPlayer3.EnumSongs.StartEnumFromDisk(true);
TJAPlayer3.EnumSongs.ChangeEnumeratePriority( ThreadPriority.Normal );
TJAPlayer3.actEnumSongs.bコマンドでの曲データ取得 = true;
TJAPlayer3.actEnumSongs.Activate();
// TJAPlayer3.stage選曲.Refresh(TJAPlayer3.EnumSongs.Songs管理, true);
TJAPlayer3.stageSongSelect.actSongList.ResetSongIndex();
}
#endregion
}
}
@ -1673,6 +1694,7 @@ namespace TJAPlayer3
private CItemList iSystemSkinSubfolder; // #28195 2012.5.2 yyagi
private CItemBase iSystemReloadDTX; // #32081 2013.10.21 yyagi
private CItemBase iSystemHardReloadDTX;
//private CItemInteger iSystemMasterVolume; // #33700 2014.4.26 yyagi
private int t前の項目( int nItem )