1
0
mirror of synced 2025-01-31 03:53:44 +01:00

(Pre. v0.5.0) Song select screen Boxes and Backgrounds are now fully skinnable and interchangeable (Added #BOXTYPE, #BGTYPE and #BGCOLOR on the box.def file)

This commit is contained in:
0aubsq 2021-10-19 03:54:45 +02:00
parent fee9c5d5c0
commit a3463ff958
7 changed files with 270 additions and 51 deletions

View File

@ -30,9 +30,9 @@ Discord以外で配布しておりません。
例:
旧: #NEXTSONG Calculator,M-O-T-U,ナムコオリジナル,Calculator.ogg,920,330
旧: #NEXTSONG [TITLE],[SUBTITLE],[GENRE],[WAVE],[SCOREINIT],[SCOREDIFF]
(簡単☆4): #NEXTSONG Calculator,M-O-T-U,ナムコオリジナル,Calculator.ogg,920,330,4,0
#NEXTSONG [TITLE],[SUBTITLE],[GENRE],[WAVE],[SCOREINIT],[SCOREDIFF],[LEVEL],[COURSE]
```
- 「太鼓叩いてスタート」と言える画面を通り過ぎれません

View File

@ -21,6 +21,12 @@ namespace TJAPlayer3
public bool IsChangedBackColor;
public Color BoxColor;
public bool IsChangedBoxColor;
public Color BgColor;
public bool IsChangedBgColor;
public int BoxType;
public int BgType;
public bool IsChangedBoxType;
public bool IsChangedBgType;
// コンストラクタ
@ -33,6 +39,9 @@ namespace TJAPlayer3
ForeColor = Color.White;
BackColor = Color.Black;
BoxColor = Color.White;
BoxType = 0;
BgType = 0;
BgColor = Color.White;
}
public CBoxDef( string boxdefファイル名 )
: this()
@ -89,9 +98,24 @@ namespace TJAPlayer3
}
else if (str.StartsWith("#BOXCOLOR", StringComparison.OrdinalIgnoreCase))
{
this.BoxColor = ColorTranslator.FromHtml(str.Substring(10).Trim(ignoreChars));
this.BoxColor = ColorTranslator.FromHtml(str.Substring(9).Trim(ignoreChars));
IsChangedBoxColor = true;
}
else if (str.StartsWith("#BGCOLOR", StringComparison.OrdinalIgnoreCase))
{
this.BgColor = ColorTranslator.FromHtml(str.Substring(8).Trim(ignoreChars));
IsChangedBgColor = true;
}
else if (str.StartsWith("#BGTYPE", StringComparison.OrdinalIgnoreCase))
{
this.BgType = int.Parse(str.Substring(7).Trim(ignoreChars));
IsChangedBgType = true;
}
else if (str.StartsWith("#BOXTYPE", StringComparison.OrdinalIgnoreCase))
{
this.BoxType = int.Parse(str.Substring(8).Trim(ignoreChars));
IsChangedBoxType = true;
}
else
{
for(int i = 0; i < 3; i++)
@ -114,6 +138,20 @@ namespace TJAPlayer3
}
}
reader.Close();
/*
if (!IsChangedBoxType)
{
this.BoxType = this.nStrジャンルtoNum(this.Genre);
}
if (!IsChangedBgType)
{
this.BgType = this.nStrジャンルtoNum(this.Genre);
}
*/
}
}
}

View File

@ -381,7 +381,22 @@ namespace TJAPlayer3
c曲リストード.BoxColor = c曲リストード.r親ード.BoxColor;
c曲リストード.isChangedBoxColor = true;
}
}
if (c曲リストード.r親ード.isChangedBgColor)
{
c曲リストード.BgColor = c曲リストード.r親ード.BgColor;
c曲リストード.isChangedBgColor = true;
}
if (c曲リストード.r親ード.isChangedBgType)
{
c曲リストード.BgType = c曲リストード.r親ード.BgType;
c曲リストード.isChangedBgType = true;
}
if (c曲リストード.r親ード.isChangedBoxType)
{
c曲リストード.BoxType = c曲リストード.r親ード.BoxType;
c曲リストード.isChangedBoxType = true;
}
}
switch (CStrジャンルtoNum.ForAC15(c曲リストード.strジャンル))
@ -543,7 +558,19 @@ namespace TJAPlayer3
{
c曲リストード.BoxColor = boxdef.BoxColor;
}
}
if (boxdef.IsChangedBgColor)
{
c曲リストード.BgColor = boxdef.BgColor;
}
if (boxdef.IsChangedBgType)
{
c曲リストード.BgType = boxdef.BgType;
}
if (boxdef.IsChangedBoxType)
{
c曲リストード.BoxType = boxdef.BoxType;
}
}
switch (c曲リストード.strジャンル)
{
@ -632,6 +659,22 @@ namespace TJAPlayer3
c曲リストード.BoxColor = boxdef.BoxColor;
c曲リストード.isChangedBoxColor = true;
}
if (boxdef.IsChangedBgColor)
{
c曲リストード.BgColor = boxdef.BgColor;
c曲リストード.isChangedBgColor = true;
}
if (boxdef.IsChangedBgType)
{
c曲リストード.BgType = boxdef.BgType;
c曲リストード.isChangedBgType = true;
}
if (boxdef.IsChangedBoxType)
{
c曲リストード.BoxType = boxdef.BoxType;
c曲リストード.isChangedBoxType = true;
}
for (int i = 0; i < 3; i++)
{
@ -726,7 +769,19 @@ namespace TJAPlayer3
{
sb.Append(", BoxColor=" + c曲リストード.BoxColor.ToString());
}
Trace.TraceInformation( sb.ToString() );
if (c曲リストード.isChangedBgColor)
{
sb.Append(", BgColor=" + c曲リストード.BgColor.ToString());
}
if (c曲リストード.isChangedBoxType)
{
sb.Append(", BoxType=" + c曲リストード.BoxType.ToString());
}
if (c曲リストード.isChangedBgType)
{
sb.Append(", BgType=" + c曲リストード.BgType.ToString());
}
Trace.TraceInformation( sb.ToString() );
}
finally
{
@ -1099,6 +1154,7 @@ namespace TJAPlayer3
crecentryplaysong.list子リスト = new List<C曲リストード>();
crecentryplaysong.BackColor = ColorTranslator.FromHtml("#164748");
crecentryplaysong.BoxColor = Color.White;
crecentryplaysong.BgColor = Color.White;
crecentryplaysong.arスコア[0] = new Cスコア();
crecentryplaysong.arスコア[0].. = "";
@ -1119,6 +1175,7 @@ namespace TJAPlayer3
{
if(c曲リストード.eード種別 == C曲リストード.Eード種別.BOX)
{
// Dojo node removed here
if (c曲リストード.strタイトル == "段位道場")
{
list曲ルート.Remove(c曲リストード);
@ -1192,6 +1249,11 @@ namespace TJAPlayer3
itemBack.BackColor = ColorTranslator.FromHtml("#513009");
itemBack.BoxColor = Color.White;
itemBack.BgColor = c曲リストード.BgColor;
itemBack.isChangedBgColor = c曲リストード.isChangedBgColor;
itemBack.BgType = c曲リストード.BgType;
itemBack.isChangedBgType = c曲リストード.isChangedBgType;
itemBack.strジャンル = c曲リストード.strジャンル;
itemBack.nスコア数 = 1;
itemBack.r親ード = c曲リストード;
@ -1846,15 +1908,16 @@ Debug.WriteLine( dBPM + ":" + c曲リストード.strタイトル );
Trace.TraceError( e.ToString() );
Trace.TraceError( "例外が発生しましたが処理を継続します。 (801f823d-a952-4809-a1bb-cf6a56194f5c)" );
}
}
//-----------------
}
//-----------------
#endregion
// その他
// その他
#region [ private ]
//-----------------
//private const string SONGSDB_VERSION = "SongsDB5";
//-----------------
//private const string SONGSDB_VERSION = "SongsDB5";
private List<string> listStrBoxDefSkinSubfolderFullName;
/// <summary>

View File

@ -38,6 +38,14 @@ namespace TJAPlayer3
public Color ForeColor = Color.White;
public Color BackColor = Color.Black;
public Color BoxColor = Color.White;
public Color BgColor = Color.White;
public bool isChangedBgColor;
public bool isChangedBgType;
public bool isChangedBoxType;
public int BoxType;
public int BgType;
public bool IsChangedForeColor;
public bool IsChangedBackColor;
public bool isChangedBoxColor;

View File

@ -919,6 +919,15 @@ namespace TJAPlayer3
this.stバー情報[index].ForeColor = song.ForeColor;
this.stバー情報[index].BackColor = song.BackColor;
this.stバー情報[index].BoxColor = song.BoxColor;
this.stバー情報[index].BgColor = song.BgColor;
// Set default if unchanged here
this.stバー情報[index].BoxType = song.BoxType;
this.stバー情報[index].BgType = song.BgType;
this.stバー情報[index].BgTypeChanged = song.isChangedBgType;
this.stバー情報[index].BoxTypeChanged = song.isChangedBoxType;
this.stバー情報[index].strジャンル = song.strジャンル;
this.stバー情報[index].strサブタイトル = song.strサブタイトル;
this.stバー情報[index].ar難易度 = song.nLevel;
@ -977,7 +986,15 @@ namespace TJAPlayer3
{
TJAPlayer3.stage選曲.t選択曲変更通知(); // スクロール完了=選択曲変更!
ctBarOpen.t開始(0, 260, 2, TJAPlayer3.Timer);
TJAPlayer3.stage選曲.NowGenre = this.r現在選択中の曲.strジャンル;
TJAPlayer3.stage選曲.NowBg = this.r現在選択中の曲.BgType;
TJAPlayer3.stage選曲.NowBgColor = this.r現在選択中の曲.BgColor;
TJAPlayer3.stage選曲.NowUseGenre = !this.r現在選択中の曲.isChangedBgType;
ctScoreFrameAnime.t開始(0, 6000, 1, TJAPlayer3.Timer);
}
@ -1006,6 +1023,15 @@ namespace TJAPlayer3
this.stバー情報[index].ForeColor = song.ForeColor;
this.stバー情報[index].BackColor = song.BackColor;
this.stバー情報[index].BoxColor = song.BoxColor;
this.stバー情報[index].BgColor = song.BgColor;
// Set default if unchanged here
this.stバー情報[index].BoxType = song.BoxType;
this.stバー情報[index].BgType = song.BgType;
this.stバー情報[index].BgTypeChanged = song.isChangedBgType;
this.stバー情報[index].BoxTypeChanged = song.isChangedBoxType;
this.stバー情報[index].strサブタイトル = song.strサブタイトル;
this.stバー情報[index].strジャンル = song.strジャンル;
this.stバー情報[index].ar難易度 = song.nLevel;
@ -1065,6 +1091,9 @@ namespace TJAPlayer3
TJAPlayer3.stage選曲.t選択曲変更通知(); // スクロール完了=選択曲変更!
ctBarOpen.t開始(0, 260, 2, TJAPlayer3.Timer);
TJAPlayer3.stage選曲.NowGenre = this.r現在選択中の曲.strジャンル;
TJAPlayer3.stage選曲.NowBg = this.r現在選択中の曲.BgType;
TJAPlayer3.stage選曲.NowBgColor = this.r現在選択中の曲.BgColor;
TJAPlayer3.stage選曲.NowUseGenre = !this.r現在選択中の曲.isChangedBgType;
ctScoreFrameAnime.t開始(0, 6000, 1, TJAPlayer3.Timer);
}
//-----------------
@ -1230,16 +1259,22 @@ namespace TJAPlayer3
#region [ ]
//-----------------
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(stバー情報[nパネル番号].strジャンル)].color4 = stバー情報[nパネル番号].BoxColor;
// int boxType = nStrジャンルtoNum(stバー情報[nパネル番号].strジャンル);
int boxType = stバー情報[nパネル番号].BoxType;
if (!stバー情報[nパネル番号].BoxTypeChanged)
boxType = nStrジャンルtoNum(stバー情報[nパネル番号].strジャンル);
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].color4 = stバー情報[nパネル番号].BoxColor;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(stバー情報[nパネル番号].strジャンル)].vc拡大縮小倍率.X = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.X = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.vc拡大縮小倍率.X = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre_Back.vc拡大縮小倍率.X = 1.0f;
if (n現在のスクロールカウンタ != 0)
this.tジャンル別選択されていない曲バーの描画(xAnime - (int)Box, y - ((int)Box * 3), this.stバー情報[nパネル番号].strジャンル, stバー情報[nパネル番号].eバー種別, stバー情報[nパネル番号].nクリア, stバー情報[nパネル番号].nスコアランク);
this.tジャンル別選択されていない曲バーの描画(xAnime - (int)Box, y - ((int)Box * 3), this.stバー情報[nパネル番号].strジャンル, stバー情報[nパネル番号].eバー種別, stバー情報[nパネル番号].nクリア, stバー情報[nパネル番号].nスコアランク, boxType);
else if (n見た目の行番号 != 4)
this.tジャンル別選択されていない曲バーの描画(xAnime - (int)Box, y - ((int)Box * 3), this.stバー情報[nパネル番号].strジャンル, stバー情報[nパネル番号].eバー種別, stバー情報[nパネル番号].nクリア, stバー情報[nパネル番号].nスコアランク);
this.tジャンル別選択されていない曲バーの描画(xAnime - (int)Box, y - ((int)Box * 3), this.stバー情報[nパネル番号].strジャンル, stバー情報[nパネル番号].eバー種別, stバー情報[nパネル番号].nクリア, stバー情報[nパネル番号].nスコアランク, boxType);
//-----------------
#endregion
@ -1317,26 +1352,32 @@ namespace TJAPlayer3
#region [ Bar ]
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].color4 = r現在選択中の曲.BoxColor;
//int boxType = nStrジャンルtoNum(r現在選択中の曲.strジャンル);
int boxType = r現在選択中の曲.BoxType;
if (!r現在選択中の曲.isChangedBoxType)
boxType = nStrジャンルtoNum(r現在選択中の曲.strジャンル);
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].color4 = r現在選択中の曲.BoxColor;
if (ctBoxOpen.n現在の値 >= 1300 && ctBoxOpen.n現在の値 <= 1940)
{
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.vc拡大縮小倍率.X = 1.0f - (float)Math.Sin(((ctBoxOpen.n現在の値 - 1300) * 0.28125f) * (Math.PI / 180)) * 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.X = 1.0f - (float)Math.Sin(((ctBoxOpen.n現在の値 - 1300) * 0.28125f) * (Math.PI / 180)) * 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.X = 1.0f - (float)Math.Sin(((ctBoxOpen.n現在の値 - 1300) * 0.28125f) * (Math.PI / 180)) * 1.0f;
}
else
{
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.vc拡大縮小倍率.X = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.X = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.X = 1.0f;
}
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 326 - BarAnimeCount, new Rectangle(0, 0, 632, 21));
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 326 - BarAnimeCount, new Rectangle(0, 0, 632, 21));
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.Y = BarAnimeCount == 0 ? 1.0f : 1.0f + (float)(BarAnimeCount) / 23.6f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 360, new Rectangle(0, 21, 632, 48));
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.Y = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.Y = BarAnimeCount == 0 ? 1.0f : 1.0f + (float)(BarAnimeCount) / 23.6f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 360, new Rectangle(0, 21, 632, 48));
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.Y = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 394 + BarAnimeCount, new Rectangle(0, 69, 632, 23));
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 394 + BarAnimeCount, new Rectangle(0, 69, 632, 23));
if (BarAnimeCount != 0)
{
@ -1396,26 +1437,32 @@ namespace TJAPlayer3
{
#region [ Box ]
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].color4 = r現在選択中の曲.BoxColor;
//int boxType = nStrジャンルtoNum(r現在選択中の曲.strジャンル);
int boxType = r現在選択中の曲.BoxType;
if (!r現在選択中の曲.isChangedBoxType)
boxType = nStrジャンルtoNum(r現在選択中の曲.strジャンル);
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].color4 = r現在選択中の曲.BoxColor;
if (ctBoxOpen.n現在の値 >= 1300 && ctBoxOpen.n現在の値 <= 1940)
{
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.vc拡大縮小倍率.X = 1.0f - (float)Math.Sin(((ctBoxOpen.n現在の値 - 1300) * 0.28125f) * (Math.PI / 180)) * 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.X = 1.0f - (float)Math.Sin(((ctBoxOpen.n現在の値 - 1300) * 0.28125f) * (Math.PI / 180)) * 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.X = 1.0f - (float)Math.Sin(((ctBoxOpen.n現在の値 - 1300) * 0.28125f) * (Math.PI / 180)) * 1.0f;
}
else
{
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.vc拡大縮小倍率.X = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.X = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.X = 1.0f;
}
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 326 - BarAnimeCount, new Rectangle(0, 0, 632, 21));
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 326 - BarAnimeCount, new Rectangle(0, 0, 632, 21));
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.Y = BarAnimeCount == 0 ? 1.0f : 1.0f + (float)(BarAnimeCount) / 23.6f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 360, new Rectangle(0, 21, 632, 48));
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].vc拡大縮小倍率.Y = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.Y = BarAnimeCount == 0 ? 1.0f : 1.0f + (float)(BarAnimeCount) / 23.6f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 360, new Rectangle(0, 21, 632, 48));
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].vc拡大縮小倍率.Y = 1.0f;
TJAPlayer3.Tx.SongSelect_Bar_Genre[nStrジャンルtoNum(r現在選択中の曲.strジャンル)].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 394 + BarAnimeCount, new Rectangle(0, 69, 632, 23));
TJAPlayer3.Tx.SongSelect_Bar_Genre[boxType].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640, 394 + BarAnimeCount, new Rectangle(0, 69, 632, 23));
if (BarAnimeCount != 0)
{
@ -1595,6 +1642,8 @@ namespace TJAPlayer3
this.txBoxText[j].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, 640 + TJAPlayer3.Skin.SongSelect_BoxExplanation_X, 360 + j * TJAPlayer3.Skin.SongSelect_BoxExplanation_Interval + TJAPlayer3.Skin.SongSelect_BoxExplanation_Y);
}
// Chara here
if (!ctBoxOpen.b終了値に達した)
TJAPlayer3.Tx.SongSelect_Box_Chara[this.nStrジャンルtoNumBox(r現在選択中の曲.strジャンル)].Opacity = (int)(ctBoxOpen.n現在の値 >= 1200 && ctBoxOpen.n現在の値 <= 1620 ? 255 - (ctBoxOpen.n現在の値 - 1200) * 2.55f :
ctBoxOpen.n現在の値 >= 2000 ? (ctBoxOpen.n現在の値 - 2000) * 2.55f : ctBoxOpen.n現在の値 <= 1200 ? 255 : 0);
@ -1809,7 +1858,16 @@ namespace TJAPlayer3
public Color ForeColor;
public Color BackColor;
public Color BoxColor;
public int[] ar難易度;
public Color BgColor;
public int BoxType;
public int BgType;
public bool BoxTypeChanged;
public bool BgTypeChanged;
public int[] ar難易度;
public bool[] b分岐;
public string strジャンル;
public string strサブタイトル;
@ -1992,7 +2050,16 @@ namespace TJAPlayer3
this.stバー情報[ i ].col文字色 = song.col文字色;
this.stバー情報[i].ForeColor = song.ForeColor;
this.stバー情報[i].BackColor = song.BackColor;
this.stバー情報[i].BoxColor = song.BoxColor;
this.stバー情報[i].BgColor = song.BgColor;
this.stバー情報[i].BoxType = song.BoxType;
this.stバー情報[i].BgType = song.BgType;
this.stバー情報[i].BgTypeChanged = song.isChangedBgType;
this.stバー情報[i].BoxTypeChanged = song.isChangedBoxType;
this.stバー情報[ i ].eバー種別 = this.e曲のバー種別を返す( song );
this.stバー情報[ i ].strサブタイトル = song.strサブタイトル;
this.stバー情報[ i ].ar難易度 = song.nLevel;
@ -2021,7 +2088,6 @@ namespace TJAPlayer3
}
}
// To investigate
for ( int j = 0; j < 3; j++ )
this.stバー情報[ i ].nスキル値[ j ] = (int) song.arスコア[ this.n現在のアンカ難易度レベルに最も近い難易度レベルを返す( song ) ]..[ j ];
@ -2033,7 +2099,7 @@ namespace TJAPlayer3
this.n現在の選択行 = 4;
}
private void tジャンル別選択されていない曲バーの描画(int x, int y, string strジャンル, Eバー種別 eバー種別, int[] , int[] )
private void tジャンル別選択されていない曲バーの描画(int x, int y, string strジャンル, Eバー種別 eバー種別, int[] , int[] , int boxType)
{
if (x >= SampleFramework.GameWindowSize.Width || y >= SampleFramework.GameWindowSize.Height)
return;
@ -2072,6 +2138,8 @@ namespace TJAPlayer3
if (eバー種別 != Eバー種別.BackBox)
{
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)
@ -2097,8 +2165,10 @@ namespace TJAPlayer3
}
}
}
}
}
*/
if (TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay != null)
TJAPlayer3.Tx.SongSelect_Bar_Genre_Overlay.t2D描画(TJAPlayer3.app.Device, x, y);
}

View File

@ -292,7 +292,12 @@ namespace TJAPlayer3
#region [ ]
TJAPlayer3.Tx.Difficulty_Back[nStrジャンルtoNum(TJAPlayer3.stage選曲.r現在選択中の曲.strジャンル)].Opacity =
// int boxType = nStrジャンルtoNum(TJAPlayer3.stage選曲.r現在選択中の曲.strジャンル);
int boxType = TJAPlayer3.stage選曲.r現在選択中の曲.BoxType;
TJAPlayer3.Tx.Difficulty_Back[boxType].Opacity =
(TJAPlayer3.stage選曲.act曲リスト.ctDifficultyIn.n現在の値 - 1255);
TJAPlayer3.Tx.Difficulty_Bar.Opacity = (TJAPlayer3.stage選曲.act曲リスト.ctDifficultyIn.n現在の値 - 1255);
TJAPlayer3.Tx.Difficulty_Number.Opacity = (TJAPlayer3.stage選曲.act曲リスト.ctDifficultyIn.n現在の値 - 1255);
@ -302,9 +307,9 @@ namespace TJAPlayer3
TJAPlayer3.Tx.SongSelect_ScoreRank.Opacity = (TJAPlayer3.stage選曲.act曲リスト.ctDifficultyIn.n現在の値 - 1255);
TJAPlayer3.Tx.Difficulty_Star.Opacity = (TJAPlayer3.stage選曲.act曲リスト.ctDifficultyIn.n現在の値 - 1255);
TJAPlayer3.Tx.Difficulty_Back[nStrジャンルtoNum(TJAPlayer3.stage選曲.r現在選択中の曲.strジャンル)].color4 = TJAPlayer3.stage選曲.r現在選択中の曲.BoxColor;
TJAPlayer3.Tx.Difficulty_Back[boxType].color4 = TJAPlayer3.stage選曲.r現在選択中の曲.BoxColor;
TJAPlayer3.Tx.Difficulty_Back[nStrジャンルtoNum(TJAPlayer3.stage選曲.r現在選択中の曲.strジャンル)].t2D中心基準描画(TJAPlayer3.app.Device, 640, 290);
TJAPlayer3.Tx.Difficulty_Back[boxType].t2D中心基準描画(TJAPlayer3.app.Device, 640, 290);
for(int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
{

View File

@ -417,22 +417,31 @@ namespace TJAPlayer3
if (this.r現在選択中の曲 != null)
{
if (this.nStrジャンルtoNum(this.r現在選択中の曲.strジャンル) != 0 || r現在選択中の曲.eード種別 == C曲リストード.Eード種別.BOX || r現在選択中の曲.eード種別 == C曲リストード.Eード種別.SCORE)
{
nGenreBack = this.nStrジャンルtoNum(this.NowGenre);
nOldGenreBack = this.nStrジャンルtoNum(this.OldGenre);
}
// if (this.nStrジャンルtoNum(this.r現在選択中の曲.strジャンル) != 0 || r現在選択中の曲.eード種別 == C曲リストード.Eード種別.BOX || r現在選択中の曲.eード種別 == C曲リストード.Eード種別.SCORE)
// {
if (this.NowUseGenre)
nGenreBack = this.nStrジャンルtoNum(this.NowGenre);
else
nGenreBack = this.NowBg;
if (this.OldUseGenre)
nOldGenreBack = this.nStrジャンルtoNum(this.OldGenre);
else
nOldGenreBack = this.OldBg;
// }
if (TJAPlayer3.Tx.SongSelect_GenreBack[nGenreBack] != null)
{
for (int i = 0; i < (1280 / TJAPlayer3.Tx.SongSelect_Background.szテクスチャサイズ.Width) + 2; i++)
{
if (TJAPlayer3.Tx.SongSelect_GenreBack[nGenreBack] != null)
{
TJAPlayer3.Tx.SongSelect_GenreBack[nGenreBack].color4 = this.NowBgColor;
TJAPlayer3.Tx.SongSelect_GenreBack[nGenreBack].Opacity = 255;
TJAPlayer3.Tx.SongSelect_GenreBack[nGenreBack].t2D描画(TJAPlayer3.app.Device, -(int)ct背景スクロール用タイマー.n現在の値 + TJAPlayer3.Tx.SongSelect_Background.szテクスチャサイズ.Width * i, 0);
}
if (TJAPlayer3.Tx.SongSelect_GenreBack[nOldGenreBack] != null)
{
TJAPlayer3.Tx.SongSelect_GenreBack[nOldGenreBack].color4 = this.OldBgColor;
TJAPlayer3.Tx.SongSelect_GenreBack[nOldGenreBack].Opacity = 600 - ctBackgroundFade.n現在の値;
TJAPlayer3.Tx.SongSelect_GenreBack[nOldGenreBack].t2D描画(TJAPlayer3.app.Device, -(int)ct背景スクロール用タイマー.n現在の値 + TJAPlayer3.Tx.SongSelect_Background.szテクスチャサイズ.Width * i, 0);
}
@ -666,6 +675,8 @@ namespace TJAPlayer3
{
case C曲リストード.Eード種別.SCORE:
{
// Maybe auxilliary don select here too ?
if (this.n現在選択中の曲の難易度 == (int)Difficulty.Tower)
{
if (TJAPlayer3.ConfigIni.nPlayerCount == 1)
@ -986,6 +997,12 @@ namespace TJAPlayer3
public CCounter ctBackgroundFade;
public string NowGenre;
public string OldGenre;
public int NowBg;
public int OldBg;
public Color NowBgColor = Color.White;
public Color OldBgColor = Color.White;
public bool NowUseGenre;
public bool OldUseGenre;
private CActSelectArtistComment actArtistComment;
private CActFIFOBlack actFIFO;
private CActFIFOBlack actFIfrom結果画面;
@ -1215,8 +1232,14 @@ namespace TJAPlayer3
CSongSelectSongManager.playSongIfPossible();
}
this.ctBackgroundFade.t開始(0, 600, 1, TJAPlayer3.Timer);
if (this.act曲リスト.ctBarOpen.n現在の値 >= 200 || this.ctBackgroundFade.n現在の値 >= 600 - 255)
TJAPlayer3.stage選曲.OldGenre = this.r現在選択中の曲.strジャンル;
if (this.act曲リスト.ctBarOpen.n現在の値 >= 200 || this.ctBackgroundFade.n現在の値 >= 600 - 255)
{
TJAPlayer3.stage選曲.OldGenre = this.r現在選択中の曲.strジャンル;
TJAPlayer3.stage選曲.OldUseGenre = !this.r現在選択中の曲.isChangedBgType;
TJAPlayer3.stage選曲.OldBg = this.r現在選択中の曲.BgType;
TJAPlayer3.stage選曲.OldBgColor = this.r現在選択中の曲.BgColor;
}
this.act曲リスト.t次に移動();
TJAPlayer3.Skin.soundカーソル移動音.t再生する();
}
@ -1247,16 +1270,28 @@ namespace TJAPlayer3
}
this.ctBackgroundFade.t開始(0, 600, 1, TJAPlayer3.Timer);
if (this.act曲リスト.ctBarOpen.n現在の値 >= 200 || this.ctBackgroundFade.n現在の値 >= 600 - 255)
TJAPlayer3.stage選曲.OldGenre = this.r現在選択中の曲.strジャンル;
if (this.act曲リスト.ctBarOpen.n現在の値 >= 200 || this.ctBackgroundFade.n現在の値 >= 600 - 255)
{
TJAPlayer3.stage選曲.OldGenre = this.r現在選択中の曲.strジャンル;
TJAPlayer3.stage選曲.OldUseGenre = !this.r現在選択中の曲.isChangedBgType;
TJAPlayer3.stage選曲.OldBg = this.r現在選択中の曲.BgType;
TJAPlayer3.stage選曲.OldBgColor = this.r現在選択中の曲.BgColor;
}
this.act曲リスト.t前に移動();
TJAPlayer3.Skin.soundカーソル移動音.t再生する();
}
private void tカーソルスキップ(bool Up)
{
this.ctBackgroundFade.t開始(0, 600, 1, TJAPlayer3.Timer);
if (this.act曲リスト.ctBarOpen.n現在の値 >= 200 || this.ctBackgroundFade.n現在の値 >= 600 - 255)
TJAPlayer3.stage選曲.OldGenre = this.r現在選択中の曲.strジャンル;
if (this.act曲リスト.ctBarOpen.n現在の値 >= 200 || this.ctBackgroundFade.n現在の値 >= 600 - 255)
{
TJAPlayer3.stage選曲.OldGenre = this.r現在選択中の曲.strジャンル;
TJAPlayer3.stage選曲.OldUseGenre = !this.r現在選択中の曲.isChangedBgType;
TJAPlayer3.stage選曲.OldBg = this.r現在選択中の曲.BgType;
TJAPlayer3.stage選曲.OldBgColor = this.r現在選択中の曲.BgColor;
}
if (Up) this.act曲リスト.t前に移動();
else this.act曲リスト.t次に移動();