1
0
mirror of synced 2024-11-24 15:40:22 +01:00

Fixed redirection bug for dan charts when played from ensou song select screen, add fugoukaku badge when failing a dan chart

This commit is contained in:
0aubsq 2022-01-06 08:30:21 +01:00
parent bf021950e0
commit 8e271667e1
4 changed files with 76 additions and 28 deletions

View File

@ -52,6 +52,12 @@ namespace TJAPlayer3
//public static readonly string D3DXDLL = "d3dx9_42.dll"; // February 2010
//public static readonly string D3DXDLL = "d3dx9_41.dll"; // March 2009
public static CStage latestSongSelect
{
get;
private set;
}
public static TJAPlayer3 app
{
get;
@ -855,6 +861,8 @@ namespace TJAPlayer3
stage選曲.On活性化();
r直前のステージ = r現在のステージ;
r現在のステージ = stage選曲;
TJAPlayer3.latestSongSelect = stage選曲;
//-----------------------------
#endregion
break;
@ -868,6 +876,8 @@ namespace TJAPlayer3
stage段位選択.On活性化();
r直前のステージ = r現在のステージ;
r現在のステージ = stage段位選択;
TJAPlayer3.latestSongSelect = stage段位選択;
//-----------------------------
#endregion
break;
@ -1224,6 +1234,10 @@ namespace TJAPlayer3
//DTX.t全チップの再生停止();
if( DTX != null )
DTX.On非活性化();
// ???
/*
if (stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan)
{
Trace.TraceInformation("----------------------");
@ -1240,12 +1254,23 @@ namespace TJAPlayer3
r直前のステージ = r現在のステージ;
r現在のステージ = stage選曲;
}
*/
Trace.TraceInformation("----------------------");
Trace.TraceInformation("■ Return to song select menu");
TJAPlayer3.latestSongSelect.On活性化();
r直前のステージ = r現在のステージ;
// Seek latest registered song select screen
r現在のステージ = TJAPlayer3.latestSongSelect;
foreach ( STPlugin pg in this.listプラグイン )
{
Directory.SetCurrentDirectory( pg.strプラグインフォルダ );
pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory( TJAPlayer3.strEXEのあるフォルダ );
}
break;
}
#endregion
@ -1397,6 +1422,10 @@ for (int i = 0; i < 3; i++) {
}
else
{
// Play cancelled return screen
/*
if(stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan)
{
Trace.TraceInformation("----------------------");
@ -1413,6 +1442,15 @@ for (int i = 0; i < 3; i++) {
r直前のステージ = r現在のステージ;
r現在のステージ = stage選曲;
}
*/
Trace.TraceInformation("----------------------");
Trace.TraceInformation("■ Return to song select menu");
TJAPlayer3.latestSongSelect.On活性化();
r直前のステージ = r現在のステージ;
// Seek latest registered song select screen
r現在のステージ = TJAPlayer3.latestSongSelect;
#region [ Onステージ変更() ]
//---------------------
@ -1579,6 +1617,10 @@ for (int i = 0; i < 3; i++) {
this.tガベージコレクションを実行する();
if ( !bコンパクトモード )
{
// After result screen
/*
if (stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan)
{
Trace.TraceInformation("----------------------");
@ -1595,6 +1637,16 @@ for (int i = 0; i < 3; i++) {
r直前のステージ = r現在のステージ;
r現在のステージ = stage選曲;
}
*/
Trace.TraceInformation("----------------------");
Trace.TraceInformation("■ Return to song select menu");
TJAPlayer3.latestSongSelect.On活性化();
r直前のステージ = r現在のステージ;
// Seek latest registered song select screen
r現在のステージ = TJAPlayer3.latestSongSelect;
stage選曲.NowSong++;
foreach( STPlugin pg in this.listプラグイン )

View File

@ -215,7 +215,7 @@ namespace TJAPlayer3
{
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.X = 0.20f;
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.Y = 0.20f;
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮上中央基準描画(TJAPlayer3.app.Device, xPos - 2, yPos - 14, new Rectangle(334 * currentRank, 0, 334, 334));
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮上中央基準描画(TJAPlayer3.app.Device, xPos - 2, yPos - 14, new Rectangle(334 * (currentRank + 1), 0, 334, 334));
}
#endregion
@ -356,7 +356,7 @@ namespace TJAPlayer3
{
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.X = 0.8f;
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.Y = 0.8f;
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, scroll + 173 + Anime, 422, new Rectangle(334 * currentRank, 0, 334, 334));
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, scroll + 173 + Anime, 422, new Rectangle(334 * (currentRank + 1), 0, 334, 334));
}
#endregion

View File

@ -2475,7 +2475,7 @@ namespace TJAPlayer3
TJAPlayer3.Tx.DanResult_Rank.Opacity = 255;
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.X = _resize;
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.Y = _resize;
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, x, y, new Rectangle(334 * grade, 0, 334, 334));
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, x, y, new Rectangle(334 * (grade + 1), 0, 334, 334));
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.X = 1f;
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.Y = 1f;
}

View File

@ -1104,6 +1104,9 @@ namespace TJAPlayer3
Exam.Status examStatus = TJAPlayer3.stage演奏ドラム画面.actDan.GetExamStatus(TJAPlayer3.stage結果.st演奏記録.Drums.Dan_C);
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.X = 1f;
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.Y = 1f;
if (examStatus != Exam.Status.Failure)
{
int successType = 0;
@ -1120,10 +1123,13 @@ namespace TJAPlayer3
comboType += 1;
}
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.X = 1f;
TJAPlayer3.Tx.DanResult_Rank.vc拡大縮小倍率.Y = 1f;
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 130, 380, new Rectangle(334 * (2 * comboType + successType), 0, 334, 334));
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 130, 380, new Rectangle(334 * (2 * comboType + successType + 1), 0, 334, 334));
}
else
{
TJAPlayer3.Tx.DanResult_Rank.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 130, 380, new Rectangle(0, 0, 334, 334));
}
#endregion
@ -1250,17 +1256,17 @@ namespace TJAPlayer3
this.bアニメが完了 = false;
}
#region
#region Nameplate
for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
{
// To change while implementing the 2P result screen
int pos = i;
if (TJAPlayer3.P1IsBlue() && TJAPlayer3.stage選曲.n確定された曲の難易度[0] < (int)Difficulty.Tower)
pos = 1;
TJAPlayer3.NamePlate.tNamePlateDraw((pos == 1) ? 1280 - 28 - TJAPlayer3.Tx.NamePlateBase.szテクスチャサイズ.Width : 28, 621, i);
// TJAPlayer3.NamePlate.tNamePlateDraw(28, 621, i);
}
#endregion
if (base.eフェーズID == CStage.Eフェーズ._フェードイン)
@ -1299,7 +1305,7 @@ namespace TJAPlayer3
TJAPlayer3.Skin.sound決定音.t再生する();
actFI.tフェードアウト開始();
if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan)
if (TJAPlayer3.latestSongSelect == TJAPlayer3.stage選曲)// TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan)
if (TJAPlayer3.stage選曲.r現在選択中の曲.r親ード != null)
TJAPlayer3.stage選曲.act曲リスト.tBOXを出る();
@ -1320,7 +1326,7 @@ namespace TJAPlayer3
{
actFI.tフェードアウト開始();
if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan)
if (TJAPlayer3.latestSongSelect == TJAPlayer3.stage選曲)// TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan)
if (TJAPlayer3.stage選曲.r現在選択中の曲.r親ード != null)
TJAPlayer3.stage選曲.act曲リスト.tBOXを出る();
@ -1385,7 +1391,7 @@ namespace TJAPlayer3
if (!b最近遊んだ曲追加済み)
{
#region [ ]
#region [ Apply new local status for song select screens ]
//---------------------
if (!TJAPlayer3.bコンパクトモード)
{
@ -1560,9 +1566,6 @@ namespace TJAPlayer3
private CActオプションパネル actOption;
private CActResultParameterPanel actParameterPanel;
private CActResultRank actRank;
private CActResultImage actResultImage;
private CActResultSongBar actSongBar;
private bool bアニメが完了;
private bool bIsCheckedWhetherResultScreenShouldSaveOrNot; // #24509 2011.3.14 yyagi
@ -1606,17 +1609,10 @@ namespace TJAPlayer3
private CPrivateFastFont pfTowerText;
private CPrivateFastFont pfTowerText48;
private CPrivateFastFont pfTowerText72;
private int TowerScoreRank;
// Don medals information
private int[] nEarnedMedalsCount = { 0, 0 };
private CCounter ctAutoReturn;
//private CTexture txオプションパネル;
//private CTexture tx下部パネル;
//private CTexture tx上部パネル;
//private CTexture tx背景;
#region [ #24609 pngで保存する ] // #24609 2011.3.14 yyagi; to save result screen in case BestRank or HiSkill.
/// <summary>
/// リザルト画像のキャプチャと保存。