Feature request #48 (Random song select button) base implementation, currently set automatically difficulty to oni but will allow others later, + small bug fixes
This commit is contained in:
parent
094bcd5f0b
commit
bbf108c1cf
@ -182,6 +182,7 @@
|
|||||||
200 : Ensou Back box (Tojiru)
|
200 : Ensou Back box (Tojiru)
|
||||||
201 : Ensou recently played songs
|
201 : Ensou recently played songs
|
||||||
202 : Ensou recently played songs description
|
202 : Ensou recently played songs description
|
||||||
|
203 : Ensou randomly select song
|
||||||
|
|
||||||
# Tower text (0100X)
|
# Tower text (0100X)
|
||||||
|
|
||||||
|
@ -272,6 +272,7 @@ namespace TJAPlayer3
|
|||||||
[200] = "Return",
|
[200] = "Return",
|
||||||
[201] = "Recently played songs",
|
[201] = "Recently played songs",
|
||||||
[202] = "Play recently played songs !",
|
[202] = "Play recently played songs !",
|
||||||
|
[203] = "Random song",
|
||||||
|
|
||||||
[1000] = "Reached floor",
|
[1000] = "Reached floor",
|
||||||
[1001] = "F",
|
[1001] = "F",
|
||||||
|
@ -67,6 +67,7 @@ namespace TJAPlayer3
|
|||||||
[200] = "Retour",
|
[200] = "Retour",
|
||||||
[201] = "Sons joués récemment",
|
[201] = "Sons joués récemment",
|
||||||
[202] = "Rejouez les sons joués précedement !",
|
[202] = "Rejouez les sons joués précedement !",
|
||||||
|
[203] = "Surprend moi !",
|
||||||
|
|
||||||
[1000] = "Étage atteint",
|
[1000] = "Étage atteint",
|
||||||
[1001] = "",
|
[1001] = "",
|
||||||
|
@ -278,8 +278,9 @@ namespace TJAPlayer3
|
|||||||
[200] = "とじる",
|
[200] = "とじる",
|
||||||
[201] = "最近あそんだ曲",
|
[201] = "最近あそんだ曲",
|
||||||
[202] = "最近あそんだ曲を集めたよ!",
|
[202] = "最近あそんだ曲を集めたよ!",
|
||||||
|
[203] = "おまかせ",
|
||||||
|
|
||||||
[1000] = "到達階数",
|
[1000] = "到達階数",
|
||||||
[1001] = "階",
|
[1001] = "階",
|
||||||
[1002] = "点",
|
[1002] = "点",
|
||||||
[1003] = "スコア",
|
[1003] = "スコア",
|
||||||
|
@ -1007,7 +1007,7 @@ namespace TJAPlayer3
|
|||||||
{
|
{
|
||||||
if(c曲リストノード.eノード種別 == C曲リストノード.Eノード種別.BOX)
|
if(c曲リストノード.eノード種別 == C曲リストノード.Eノード種別.BOX)
|
||||||
{
|
{
|
||||||
// Dojo node removed here
|
// Dojo node removed here, add an option soonish to put it off
|
||||||
|
|
||||||
if (c曲リストノード.strタイトル == "段位道場")
|
if (c曲リストノード.strタイトル == "段位道場")
|
||||||
{
|
{
|
||||||
@ -1063,8 +1063,58 @@ namespace TJAPlayer3
|
|||||||
TJAPlayer3.Skin.strBoxDefSkinSubfolders = ba;
|
TJAPlayer3.Skin.strBoxDefSkinSubfolders = ba;
|
||||||
}
|
}
|
||||||
private void t曲リストへ後処理を適用する( List<C曲リストノード> ノードリスト )
|
private void t曲リストへ後処理を適用する( List<C曲リストノード> ノードリスト )
|
||||||
{
|
{
|
||||||
// すべてのノードについて…
|
|
||||||
|
|
||||||
|
#region [ リストに1つ以上の曲があるなら RANDOM BOX を入れる ]
|
||||||
|
|
||||||
|
//-----------------------------
|
||||||
|
if (ノードリスト.Count > 0)
|
||||||
|
{
|
||||||
|
C曲リストノード itemRandom = new C曲リストノード();
|
||||||
|
itemRandom.eノード種別 = C曲リストノード.Eノード種別.RANDOM;
|
||||||
|
itemRandom.strタイトル = CLangManager.LangInstance.GetString(203);
|
||||||
|
itemRandom.nスコア数 = (int)Difficulty.Total;
|
||||||
|
itemRandom.r親ノード = ノードリスト[0].r親ノード;
|
||||||
|
|
||||||
|
itemRandom.strBreadcrumbs = (itemRandom.r親ノード == null) ?
|
||||||
|
itemRandom.strタイトル : itemRandom.r親ノード.strBreadcrumbs + " > " + itemRandom.strタイトル;
|
||||||
|
|
||||||
|
itemRandom.arスコア[0] = new Cスコア();
|
||||||
|
/*
|
||||||
|
for (int i = 0; i < (int)Difficulty.Total; i++)
|
||||||
|
{
|
||||||
|
itemRandom.arスコア[0].譜面情報.タイトル = string.Format("< RANDOM SELECT Lv.{0} >", i + 1);
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
ノードリスト.Add(itemRandom);
|
||||||
|
|
||||||
|
#region [ ログ出力 ]
|
||||||
|
//-----------------------------
|
||||||
|
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力)
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder(0x100);
|
||||||
|
sb.Append(string.Format("nID#{0:D3}", itemRandom.nID));
|
||||||
|
if (itemRandom.r親ノード != null)
|
||||||
|
{
|
||||||
|
sb.Append(string.Format("(in#{0:D3}):", itemRandom.r親ノード.nID));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sb.Append("(onRoot):");
|
||||||
|
}
|
||||||
|
sb.Append(" RANDOM");
|
||||||
|
Trace.TraceInformation(sb.ToString());
|
||||||
|
}
|
||||||
|
//-----------------------------
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
//-----------------------------
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// すべてのノードについて…
|
||||||
foreach ( C曲リストノード c曲リストノード in ノードリスト )
|
foreach ( C曲リストノード c曲リストノード in ノードリスト )
|
||||||
{
|
{
|
||||||
SlowOrSuspendSearchTask(); // #27060 中断要求があったら、解除要求が来るまで待機, #PREMOVIE再生中は検索負荷を落とす
|
SlowOrSuspendSearchTask(); // #27060 中断要求があったら、解除要求が来るまで待機, #PREMOVIE再生中は検索負荷を落とす
|
||||||
|
@ -191,6 +191,7 @@ namespace TJAPlayer3
|
|||||||
SongSelect_Frame_BackBox = TxC(SONGSELECT + @"Frame_BackBox.png");
|
SongSelect_Frame_BackBox = TxC(SONGSELECT + @"Frame_BackBox.png");
|
||||||
SongSelect_Frame_Random = TxC(SONGSELECT + @"Frame_Random.png");
|
SongSelect_Frame_Random = TxC(SONGSELECT + @"Frame_Random.png");
|
||||||
SongSelect_Bar_Genre_Back = TxC(SONGSELECT + @"Bar_Genre_Back.png");
|
SongSelect_Bar_Genre_Back = TxC(SONGSELECT + @"Bar_Genre_Back.png");
|
||||||
|
SongSelect_Bar_Genre_Random = TxC(SONGSELECT + @"Bar_Genre_Random.png");
|
||||||
SongSelect_Bar_Genre_RecentryPlaySong = TxC(SONGSELECT + @"Bar_Genre_RecentryPlaySong.png");
|
SongSelect_Bar_Genre_RecentryPlaySong = TxC(SONGSELECT + @"Bar_Genre_RecentryPlaySong.png");
|
||||||
SongSelect_Bar_Select = TxC(SONGSELECT + @"Bar_Select.png");
|
SongSelect_Bar_Select = TxC(SONGSELECT + @"Bar_Select.png");
|
||||||
SongSelect_Level_Number = TxC(SONGSELECT + @"Level_Number.png");
|
SongSelect_Level_Number = TxC(SONGSELECT + @"Level_Number.png");
|
||||||
@ -1026,6 +1027,7 @@ namespace TJAPlayer3
|
|||||||
SongSelect_Frame_Random,
|
SongSelect_Frame_Random,
|
||||||
SongSelect_Bar_Center,
|
SongSelect_Bar_Center,
|
||||||
SongSelect_Bar_Genre_Back,
|
SongSelect_Bar_Genre_Back,
|
||||||
|
SongSelect_Bar_Genre_Random,
|
||||||
SongSelect_Bar_Genre_RecentryPlaySong,
|
SongSelect_Bar_Genre_RecentryPlaySong,
|
||||||
SongSelect_Level_Number,
|
SongSelect_Level_Number,
|
||||||
SongSelect_Bar_Select,
|
SongSelect_Bar_Select,
|
||||||
|
@ -614,58 +614,19 @@ namespace TJAPlayer3
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region [UraOmote pad]
|
#region [UraOmote pad]
|
||||||
|
|
||||||
// UraOmote pad
|
// UraOmote pad
|
||||||
for (int i = 0; i < ScorePads[(int)Difficulty.Edit + 1].ScoreRankCount.Length; i++)
|
for (int i = 0; i < ScorePads[(int)Difficulty.Edit + 1].ScoreRankCount.Length; i++)
|
||||||
{
|
{
|
||||||
ScorePads[(int)Difficulty.Edit + 1].ScoreRankCount[i] = ScorePads[(int)Difficulty.Edit].ScoreRankCount[i] + ScorePads[(int)Difficulty.Oni].ScoreRankCount[i];
|
ScorePads[(int)Difficulty.Edit + 1].ScoreRankCount[i] = ScorePads[(int)Difficulty.Edit].ScoreRankCount[i] + ScorePads[(int)Difficulty.Oni].ScoreRankCount[i];
|
||||||
}
|
}
|
||||||
for (int i = 0; i < ScorePads[(int)Difficulty.Edit + 1].CrownCount.Length; i++)
|
for (int i = 0; i < ScorePads[(int)Difficulty.Edit + 1].CrownCount.Length; i++)
|
||||||
{
|
{
|
||||||
ScorePads[(int)Difficulty.Edit + 1].CrownCount[i] = ScorePads[(int)Difficulty.Edit].CrownCount[i] + ScorePads[(int)Difficulty.Oni].CrownCount[i];
|
ScorePads[(int)Difficulty.Edit + 1].CrownCount[i] = ScorePads[(int)Difficulty.Edit].CrownCount[i] + ScorePads[(int)Difficulty.Oni].CrownCount[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
/*
|
|
||||||
#region [Legacy]
|
|
||||||
|
|
||||||
if (song.eノード種別 == C曲リストノード.Eノード種別.BOX)
|
|
||||||
{
|
|
||||||
for (int i = 0; i < ScoreRankCount.Length; i++)
|
|
||||||
{
|
|
||||||
ScoreRankCount[i] += song.list子リスト.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nスコアランク[3] == (i + 1)).Count();
|
|
||||||
ScoreRankCount[i] += song.list子リスト.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nスコアランク[4] == (i + 1)).Count();
|
|
||||||
}
|
|
||||||
for (int i = 0; i < CrownCount.Length; i++)
|
|
||||||
{
|
|
||||||
CrownCount[i] += song.list子リスト.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nクリア[3] == (i + 1)).Count();
|
|
||||||
CrownCount[i] += song.list子リスト.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nクリア[4] == (i + 1)).Count();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (song.eノード種別 == C曲リストノード.Eノード種別.SCORE)
|
|
||||||
{
|
|
||||||
for (int i = 0; i < ScoreRankCount.Length; i++)
|
|
||||||
{
|
|
||||||
ScoreRankCount[i] += TJAPlayer3.Songs管理.list曲ルート.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nスコアランク[3] == (i + 1)).Count();
|
|
||||||
ScoreRankCount[i] += TJAPlayer3.Songs管理.list曲ルート.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nスコアランク[4] == (i + 1)).Count();
|
|
||||||
}
|
|
||||||
for (int i = 0; i < CrownCount.Length; i++)
|
|
||||||
{
|
|
||||||
CrownCount[i] += TJAPlayer3.Songs管理.list曲ルート.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nクリア[3] == (i + 1)).Count();
|
|
||||||
CrownCount[i] += TJAPlayer3.Songs管理.list曲ルート.Where(a => a.eノード種別 == C曲リストノード.Eノード種別.SCORE && a.arスコア[3] != null && a.arスコア[3].譜面情報.nクリア[4] == (i + 1)).Count();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
*/
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1662,10 +1623,33 @@ namespace TJAPlayer3
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
if (r現在選択中の曲.eノード種別 == C曲リストノード.Eノード種別.RANDOM)
|
||||||
#endregion
|
{
|
||||||
|
#region [Random box]
|
||||||
switch (r現在選択中の曲.eノード種別)
|
|
||||||
|
if (TJAPlayer3.Tx.SongSelect_Bar_Genre_Random != null)
|
||||||
|
{
|
||||||
|
if (ctBoxOpen.n現在の値 >= 1300 && ctBoxOpen.n現在の値 <= 1940)
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random.vc拡大縮小倍率.X = 1.0f - (float)Math.Sin(((ctBoxOpen.n現在の値 - 1300) * 0.28125f) * (Math.PI / 180)) * 1.0f;
|
||||||
|
else
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random.vc拡大縮小倍率.X = 1.0f;
|
||||||
|
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 326 - BarAnimeCount, new Rectangle(0, 0, 632, 21));
|
||||||
|
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random.vc拡大縮小倍率.Y = BarAnimeCount == 0 ? 1.0f : 1.0f + (float)(BarAnimeCount) / 23.6f;
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 360, new Rectangle(0, 21, 632, 48));
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random.vc拡大縮小倍率.Y = 1.0f;
|
||||||
|
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 394 + BarAnimeCount, new Rectangle(0, 69, 632, 23));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
switch (r現在選択中の曲.eノード種別)
|
||||||
{
|
{
|
||||||
case C曲リストノード.Eノード種別.SCORE:
|
case C曲リストノード.Eノード種別.SCORE:
|
||||||
{
|
{
|
||||||
@ -1977,10 +1961,7 @@ namespace TJAPlayer3
|
|||||||
|
|
||||||
#region [ private ]
|
#region [ private ]
|
||||||
//-----------------
|
//-----------------
|
||||||
private enum Eバー種別 { Score, Box, Other, BackBox }
|
private enum Eバー種別 { Score, Box, Other, BackBox, Random }
|
||||||
|
|
||||||
public int[] ScoreRankCount = new int[7];
|
|
||||||
public int[] CrownCount = new int[3];
|
|
||||||
|
|
||||||
// Edit + 1 => UraOmote ScorePad, add 2P later
|
// Edit + 1 => UraOmote ScorePad, add 2P later
|
||||||
public CScorePad[] ScorePads = new CScorePad[(int)Difficulty.Edit + 2] { new CScorePad(), new CScorePad(), new CScorePad(), new CScorePad(), new CScorePad(), new CScorePad() };
|
public CScorePad[] ScorePads = new CScorePad[(int)Difficulty.Edit + 2] { new CScorePad(), new CScorePad(), new CScorePad(), new CScorePad(), new CScorePad(), new CScorePad() };
|
||||||
@ -2126,6 +2107,9 @@ namespace TJAPlayer3
|
|||||||
|
|
||||||
case C曲リストノード.Eノード種別.BACKBOX:
|
case C曲リストノード.Eノード種別.BACKBOX:
|
||||||
return Eバー種別.BackBox;
|
return Eバー種別.BackBox;
|
||||||
|
|
||||||
|
case C曲リストノード.Eノード種別.RANDOM:
|
||||||
|
return Eバー種別.Random;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return Eバー種別.Other;
|
return Eバー種別.Other;
|
||||||
@ -2332,46 +2316,21 @@ namespace TJAPlayer3
|
|||||||
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.Opacity = (int)255.0f;
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.Opacity = (int)255.0f;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (eバー種別 != Eバー種別.BackBox)
|
if (eバー種別 == Eバー種別.Random)
|
||||||
|
{
|
||||||
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Random?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||||
|
}
|
||||||
|
else if (eバー種別 != Eバー種別.BackBox)
|
||||||
{
|
{
|
||||||
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType]?.t2D描画(TJAPlayer3.app.Device, x, y);
|
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType]?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||||
/*
|
|
||||||
if (this.nStrジャンルtoNum(strジャンル) == 0)
|
|
||||||
{
|
|
||||||
if (TJAPlayer3.Tx.SongSelect_Bar_Genre[0] != null)
|
|
||||||
TJAPlayer3.Tx.SongSelect_Bar_Genre[0].t2D描画(TJAPlayer3.app.Device, x, y);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
for (int i = 0; i < TJAPlayer3.Skin.SongSelect_GenreName.Length; i++)
|
|
||||||
{
|
|
||||||
if (TJAPlayer3.Skin.SongSelect_GenreName[i] == strジャンル)
|
|
||||||
{
|
|
||||||
if (i + 1 >= TJAPlayer3.Skin.SongSelect_Bar_Genre_Count)
|
|
||||||
{
|
|
||||||
if (TJAPlayer3.Tx.SongSelect_Bar_Genre[0] != null)
|
|
||||||
TJAPlayer3.Tx.SongSelect_Bar_Genre[0].t2D描画(TJAPlayer3.app.Device, x, y);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (TJAPlayer3.Tx.SongSelect_Bar_Genre[i + 1] != null)
|
|
||||||
TJAPlayer3.Tx.SongSelect_Bar_Genre[i + 1].t2D描画(TJAPlayer3.app.Device, x, y);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
if (TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay != null)
|
if (TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay != null)
|
||||||
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.t2D描画(TJAPlayer3.app.Device, x, y);
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
TJAPlayer3.Tx.SongSelect_Bar_Genre_Back.t2D描画(TJAPlayer3.app.Device, x, y);
|
TJAPlayer3.Tx.SongSelect_Bar_Genre_Back?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (eバー種別 == Eバー種別.Score)
|
if (eバー種別 == Eバー種別.Score)
|
||||||
|
@ -678,14 +678,16 @@ namespace TJAPlayer3
|
|||||||
{
|
{
|
||||||
// Maybe auxilliary don select here too ?
|
// Maybe auxilliary don select here too ?
|
||||||
|
|
||||||
if (this.n現在選択中の曲の難易度 == (int)Difficulty.Tower)
|
if (this.n現在選択中の曲の難易度 >= (int)Difficulty.Tower)
|
||||||
{
|
{
|
||||||
if (TJAPlayer3.ConfigIni.nPlayerCount == 1)
|
if (TJAPlayer3.ConfigIni.nPlayerCount == 1)
|
||||||
{
|
{
|
||||||
// Init tower variables
|
// Init tower variables
|
||||||
CFloorManagement.reinitialize(this.r現在選択中の曲.arスコア[(int)Difficulty.Tower].譜面情報.nLife);
|
if (this.n現在選択中の曲の難易度 == (int)Difficulty.Tower)
|
||||||
|
CFloorManagement.reinitialize(this.r現在選択中の曲.arスコア[(int)Difficulty.Tower].譜面情報.nLife);
|
||||||
|
|
||||||
|
TJAPlayer3.Skin.sound曲決定音.t再生する();
|
||||||
|
|
||||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
|
||||||
this.t曲を選択する();
|
this.t曲を選択する();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -728,6 +730,13 @@ namespace TJAPlayer3
|
|||||||
this.ctDonchan_Select.t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Select.Length - 1, 1000 / 45, TJAPlayer3.Timer);
|
this.ctDonchan_Select.t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Select.Length - 1, 1000 / 45, TJAPlayer3.Timer);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case C曲リストノード.Eノード種別.RANDOM:
|
||||||
|
{
|
||||||
|
this.t曲をランダム選択する();
|
||||||
|
|
||||||
|
this.ctDonchan_Select.t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Select.Length - 1, 1000 / 45, TJAPlayer3.Timer);
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
goto Decided;
|
goto Decided;
|
||||||
@ -1366,6 +1375,7 @@ namespace TJAPlayer3
|
|||||||
{
|
{
|
||||||
song.stackランダム演奏番号.Push(numArray[k]);
|
song.stackランダム演奏番号.Push(numArray[k]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (TJAPlayer3.ConfigIni.bLogDTX詳細ログ出力)
|
if (TJAPlayer3.ConfigIni.bLogDTX詳細ログ出力)
|
||||||
{
|
{
|
||||||
StringBuilder builder = new StringBuilder(0x400);
|
StringBuilder builder = new StringBuilder(0x400);
|
||||||
@ -1377,14 +1387,28 @@ namespace TJAPlayer3
|
|||||||
Trace.TraceInformation(builder.ToString());
|
Trace.TraceInformation(builder.ToString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Third assignment
|
// Third assignment
|
||||||
this.r確定された曲 = song.listランダム用ノードリスト[song.stackランダム演奏番号.Pop()];
|
this.r確定された曲 = song.listランダム用ノードリスト[song.stackランダム演奏番号.Pop()];
|
||||||
this.n確定された曲の難易度[0] = this.act曲リスト.n現在のアンカ難易度レベルに最も近い難易度レベルを返す(this.r確定された曲);
|
this.n確定された曲の難易度[0] = this.act曲リスト.n現在のアンカ難易度レベルに最も近い難易度レベルを返す(this.r確定された曲);
|
||||||
|
if (TJAPlayer3.ConfigIni.nPlayerCount > 1)
|
||||||
|
{
|
||||||
|
this.n確定された曲の難易度[1] = this.act曲リスト.n現在のアンカ難易度レベルに最も近い難易度レベルを返す(this.r確定された曲);
|
||||||
|
}
|
||||||
|
|
||||||
this.r確定されたスコア = this.r確定された曲.arスコア[this.n確定された曲の難易度[0]];
|
this.r確定されたスコア = this.r確定された曲.arスコア[this.n確定された曲の難易度[0]];
|
||||||
this.str確定された曲のジャンル = this.r確定された曲.strジャンル;
|
this.str確定された曲のジャンル = this.r確定された曲.strジャンル;
|
||||||
|
|
||||||
|
TJAPlayer3.Skin.sound曲決定音.t再生する();
|
||||||
|
|
||||||
this.eフェードアウト完了時の戻り値 = E戻り値.選曲した;
|
this.eフェードアウト完了時の戻り値 = E戻り値.選曲した;
|
||||||
this.actFOtoNowLoading.tフェードアウト開始(); // #27787 2012.3.10 yyagi 曲決定時の画面フェードアウトの省略
|
this.actFOtoNowLoading.tフェードアウト開始(); // #27787 2012.3.10 yyagi 曲決定時の画面フェードアウトの省略
|
||||||
base.eフェーズID = CStage.Eフェーズ.選曲_NowLoading画面へのフェードアウト;
|
base.eフェーズID = CStage.Eフェーズ.選曲_NowLoading画面へのフェードアウト;
|
||||||
|
|
||||||
|
#region [Log]
|
||||||
|
|
||||||
if (TJAPlayer3.ConfigIni.bLogDTX詳細ログ出力)
|
if (TJAPlayer3.ConfigIni.bLogDTX詳細ログ出力)
|
||||||
{
|
{
|
||||||
int[] numArray2 = song.stackランダム演奏番号.ToArray();
|
int[] numArray2 = song.stackランダム演奏番号.ToArray();
|
||||||
@ -1402,17 +1426,22 @@ namespace TJAPlayer3
|
|||||||
builder2.Append("(なし)");
|
builder2.Append("(なし)");
|
||||||
}
|
}
|
||||||
Trace.TraceInformation(builder2.ToString());
|
Trace.TraceInformation(builder2.ToString());
|
||||||
}
|
}
|
||||||
// TJAPlayer3.Skin.bgm選曲画面.t停止する();
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
CSongSelectSongManager.stopSong();
|
CSongSelectSongManager.stopSong();
|
||||||
|
|
||||||
}
|
}
|
||||||
private void t曲を選択する()
|
private void t曲を選択する()
|
||||||
{
|
{
|
||||||
// First assignation
|
// First assignation
|
||||||
this.r確定された曲 = this.act曲リスト.r現在選択中の曲;
|
this.r確定された曲 = this.act曲リスト.r現在選択中の曲;
|
||||||
this.r確定されたスコア = this.act曲リスト.r現在選択中のスコア;
|
this.r確定されたスコア = this.act曲リスト.r現在選択中のスコア;
|
||||||
|
|
||||||
this.n確定された曲の難易度[0] = this.act曲リスト.n現在選択中の曲の現在の難易度レベル;
|
this.n確定された曲の難易度[0] = this.act曲リスト.n現在選択中の曲の現在の難易度レベル;
|
||||||
this.str確定された曲のジャンル = this.r確定された曲.strジャンル;
|
this.str確定された曲のジャンル = this.r確定された曲.strジャンル;
|
||||||
|
|
||||||
if ((this.r確定された曲 != null) && (this.r確定されたスコア != null))
|
if ((this.r確定された曲 != null) && (this.r確定されたスコア != null))
|
||||||
{
|
{
|
||||||
this.eフェードアウト完了時の戻り値 = E戻り値.選曲した;
|
this.eフェードアウト完了時の戻り値 = E戻り値.選曲した;
|
||||||
@ -1427,8 +1456,10 @@ namespace TJAPlayer3
|
|||||||
// Second assignation
|
// Second assignation
|
||||||
this.r確定された曲 = this.act曲リスト.r現在選択中の曲;
|
this.r確定された曲 = this.act曲リスト.r現在選択中の曲;
|
||||||
this.r確定されたスコア = this.act曲リスト.r現在選択中のスコア;
|
this.r確定されたスコア = this.act曲リスト.r現在選択中のスコア;
|
||||||
|
|
||||||
this.n確定された曲の難易度[player] = nCurrentLevel;
|
this.n確定された曲の難易度[player] = nCurrentLevel;
|
||||||
this.str確定された曲のジャンル = this.r確定された曲.strジャンル;
|
this.str確定された曲のジャンル = this.r確定された曲.strジャンル;
|
||||||
|
|
||||||
if ((this.r確定された曲 != null) && (this.r確定されたスコア != null))
|
if ((this.r確定された曲 != null) && (this.r確定されたスコア != null))
|
||||||
{
|
{
|
||||||
this.eフェードアウト完了時の戻り値 = E戻り値.選曲した;
|
this.eフェードアウト完了時の戻り値 = E戻り値.選曲した;
|
||||||
@ -1439,6 +1470,8 @@ namespace TJAPlayer3
|
|||||||
// TJAPlayer3.Skin.bgm選曲画面.t停止する();
|
// TJAPlayer3.Skin.bgm選曲画面.t停止する();
|
||||||
CSongSelectSongManager.stopSong();
|
CSongSelectSongManager.stopSong();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Foreach randomly selectable songs
|
||||||
private List<C曲リストノード> t指定された曲が存在する場所の曲を列挙する_子リスト含む(C曲リストノード song)
|
private List<C曲リストノード> t指定された曲が存在する場所の曲を列挙する_子リスト含む(C曲リストノード song)
|
||||||
{
|
{
|
||||||
List<C曲リストノード> list = new List<C曲リストノード>();
|
List<C曲リストノード> list = new List<C曲リストノード>();
|
||||||
@ -1449,7 +1482,9 @@ namespace TJAPlayer3
|
|||||||
{
|
{
|
||||||
if ((c曲リストノード.eノード種別 == C曲リストノード.Eノード種別.SCORE) || (c曲リストノード.eノード種別 == C曲リストノード.Eノード種別.SCORE_MIDI))
|
if ((c曲リストノード.eノード種別 == C曲リストノード.Eノード種別.SCORE) || (c曲リストノード.eノード種別 == C曲リストノード.Eノード種別.SCORE_MIDI))
|
||||||
{
|
{
|
||||||
list.Add(c曲リストノード);
|
// Don't add Dan/Tower charts for Random
|
||||||
|
if (c曲リストノード.arスコア[(int)Difficulty.Tower] == null && c曲リストノード.arスコア[(int)Difficulty.Dan] == null)
|
||||||
|
list.Add(c曲リストノード);
|
||||||
}
|
}
|
||||||
if ((c曲リストノード.list子リスト != null) && TJAPlayer3.ConfigIni.bランダムセレクトで子BOXを検索対象とする)
|
if ((c曲リストノード.list子リスト != null) && TJAPlayer3.ConfigIni.bランダムセレクトで子BOXを検索対象とする)
|
||||||
{
|
{
|
||||||
@ -1461,6 +1496,7 @@ namespace TJAPlayer3
|
|||||||
this.t指定された曲の子リストの曲を列挙する_孫リスト含む(song, ref list);
|
this.t指定された曲の子リストの曲を列挙する_孫リスト含む(song, ref list);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void t指定された曲の子リストの曲を列挙する_孫リスト含む(C曲リストノード r親, ref List<C曲リストノード> list)
|
private void t指定された曲の子リストの曲を列挙する_孫リスト含む(C曲リストノード r親, ref List<C曲リストノード> list)
|
||||||
{
|
{
|
||||||
if ((r親 != null) && (r親.list子リスト != null))
|
if ((r親 != null) && (r親.list子リスト != null))
|
||||||
|
@ -1035,7 +1035,7 @@ namespace TJAPlayer3
|
|||||||
{
|
{
|
||||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||||
|
|
||||||
if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan
|
if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] < (int)Difficulty.Tower
|
||||||
&& this.actParameterPanel.ct全体進行.n現在の値 < this.actParameterPanel.MountainAppearValue)
|
&& this.actParameterPanel.ct全体進行.n現在の値 < this.actParameterPanel.MountainAppearValue)
|
||||||
{
|
{
|
||||||
this.actParameterPanel.tSkipResultAnimations();
|
this.actParameterPanel.tSkipResultAnimations();
|
||||||
|
Loading…
Reference in New Issue
Block a user