| 486 |
} |
} |
| 487 |
this.On非活性化(); |
this.On非活性化(); |
| 488 |
this.r現在選択中の曲 = null; |
this.r現在選択中の曲 = null; |
| 489 |
this.On活性化(); |
//this.On活性化(); |
| 490 |
} |
#region[ 再度活性化処理を行う ] |
| 491 |
|
this.b登場アニメ全部完了 = false; |
| 492 |
|
this.n目標のスクロールカウンタ = 0; |
| 493 |
|
this.n現在のスクロールカウンタ = 0; |
| 494 |
|
this.nスクロールタイマ = -1; |
| 495 |
|
|
| 496 |
|
// フォント作成。 |
| 497 |
|
// 曲リスト文字は2倍(面積4倍)でテクスチャに描画してから縮小表示するので、フォントサイズは2倍とする。 |
| 498 |
|
if( this.ft曲リスト用フォント == null ) |
| 499 |
|
{ |
| 500 |
|
FontStyle regular = FontStyle.Regular; |
| 501 |
|
if( CDTXMania.ConfigIni.b選曲リストフォントを太字にする ) regular |= FontStyle.Bold; |
| 502 |
|
this.ft曲リスト用フォント = new Font( CDTXMania.ConfigIni.str選曲リストフォント, (float) ( CDTXMania.ConfigIni.n選曲リストフォントのサイズdot * 2 ), regular, GraphicsUnit.Pixel ); |
| 503 |
|
//this.prvFont = new CPrivateFont( new FontFamily( CDTXMania.ConfigIni.str選曲リストフォント ), 28, FontStyle.Regular ); |
| 504 |
|
} |
| 505 |
|
|
| 506 |
|
if( ( this.r現在選択中の曲 == null ) && ( CDTXMania.Songs管理.list曲ルート.Count > 0 ) ) |
| 507 |
|
this.r現在選択中の曲 = CDTXMania.Songs管理.list曲ルート[ 0 ]; |
| 508 |
|
if( CDTXMania.r現在のステージ.eステージID == CStage.Eステージ.選曲 ) |
| 509 |
|
this.tバーの初期化(); |
| 510 |
|
|
| 511 |
|
//base.On活性化(); |
| 512 |
|
|
| 513 |
|
this.t選択曲が変更された(true); // #27648 2012.3.31 yyagi 選曲画面に入った直後の 現在位置/全アイテム数 の表示を正しく行うため |
| 514 |
|
#endregion |
| 515 |
|
} |
| 516 |
|
|
| 517 |
|
|
| 518 |
/// <summary> |
/// <summary> |
| 589 |
|
|
| 590 |
// フォント作成。 |
// フォント作成。 |
| 591 |
// 曲リスト文字は2倍(面積4倍)でテクスチャに描画してから縮小表示するので、フォントサイズは2倍とする。 |
// 曲リスト文字は2倍(面積4倍)でテクスチャに描画してから縮小表示するので、フォントサイズは2倍とする。 |
| 592 |
|
if( this.ft曲リスト用フォント == null ) |
| 593 |
FontStyle regular = FontStyle.Regular; |
{ |
| 594 |
if( CDTXMania.ConfigIni.b選曲リストフォントを太字にする ) regular |= FontStyle.Bold; |
FontStyle regular = FontStyle.Regular; |
| 595 |
this.ft曲リスト用フォント = new Font( CDTXMania.ConfigIni.str選曲リストフォント, (float) ( CDTXMania.ConfigIni.n選曲リストフォントのサイズdot * 2 ), regular, GraphicsUnit.Pixel ); |
if( CDTXMania.ConfigIni.b選曲リストフォントを太字にする ) regular |= FontStyle.Bold; |
| 596 |
//this.prvFont = new CPrivateFont( new FontFamily( CDTXMania.ConfigIni.str選曲リストフォント ), 28, FontStyle.Regular ); |
this.ft曲リスト用フォント = new Font( CDTXMania.ConfigIni.str選曲リストフォント, (float) ( CDTXMania.ConfigIni.n選曲リストフォントのサイズdot * 2 ), regular, GraphicsUnit.Pixel ); |
| 597 |
|
//this.prvFont = new CPrivateFont( new FontFamily( CDTXMania.ConfigIni.str選曲リストフォント ), 28, FontStyle.Regular ); |
| 598 |
|
} |
| 599 |
|
|
| 600 |
// 現在選択中の曲がない(=はじめての活性化)なら、現在選択中の曲をルートの先頭ノードに設定する。 |
// 現在選択中の曲がない(=はじめての活性化)なら、現在選択中の曲をルートの先頭ノードに設定する。 |
| 601 |
|
|
| 630 |
if( this.b活性化してない ) |
if( this.b活性化してない ) |
| 631 |
return; |
return; |
| 632 |
|
|
| 633 |
this.tx選曲パネル = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\5_image_panel_guitar.png" ) ); |
if ( this.tx選曲パネル == null && CDTXMania.ConfigIni.bDrums有効 ) |
| 634 |
|
this.tx選曲パネル = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\5_image_panel.png" ) ); |
| 635 |
if ( this.tx選曲パネル == null || CDTXMania.ConfigIni.bDrums有効 ) |
else if( this.tx選曲パネル == null && CDTXMania.ConfigIni.bGuitar有効 ) |
| 636 |
this.tx選曲パネル = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_image_panel.png")); |
this.tx選曲パネル = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\5_image_panel_guitar.png" ) ); |
| 637 |
|
|
| 638 |
this.txパネル = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_music panel.png")); |
this.txパネル = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_music panel.png")); |
| 639 |
//this.tx帯 = CDTXMania.tテクスチャの生成Af( CSkin.Path( @"Graphics\5_backpanel.png" ) ); |
//this.tx帯 = CDTXMania.tテクスチャの生成Af( CSkin.Path( @"Graphics\5_backpanel.png" ) ); |
| 654 |
{ |
{ |
| 655 |
//this.t曲名バーの生成(i, this.stバー情報[i].strタイトル文字列, this.stバー情報[i].col文字色); |
//this.t曲名バーの生成(i, this.stバー情報[i].strタイトル文字列, this.stバー情報[i].col文字色); |
| 656 |
this.tアーティスト名テクスチャの生成( i, this.stバー情報[ i ].strアーティスト名 ); |
this.tアーティスト名テクスチャの生成( i, this.stバー情報[ i ].strアーティスト名 ); |
| 657 |
this.tパネルの生成( i, this.stバー情報[ i ].strタイトル文字列, this.stバー情報[ i ].strアーティスト名, this.stバー情報[ i ].col文字色 ); |
//this.tパネルの生成( i, this.stバー情報[ i ].strタイトル文字列, this.stバー情報[ i ].strアーティスト名, this.stバー情報[ i ].col文字色 ); |
| 658 |
//this.tパスを指定してサムネイル画像を生成する(i, this.stバー情報[i].strDTXフォルダのパス, this.stバー情報[i].eバー種別); |
//this.tパスを指定してサムネイル画像を生成する(i, this.stバー情報[i].strDTXフォルダのパス, this.stバー情報[i].eバー種別); |
| 659 |
if( this.stバー情報[ i ].strPreimageのパス != null ) |
if( this.stバー情報[ i ].strPreimageのパス != null ) |
| 660 |
{ |
{ |
| 737 |
|
|
| 738 |
for ( int i = 0; i < 15; i++ ) |
for ( int i = 0; i < 15; i++ ) |
| 739 |
{ |
{ |
| 740 |
|
CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txパネル ); |
| 741 |
CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txタイトル名 ); |
CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txタイトル名 ); |
| 742 |
CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txアーティスト名 ); |
CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txアーティスト名 ); |
| 743 |
CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txカスタム曲名テクスチャ ); |
CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txカスタム曲名テクスチャ ); |
| 946 |
this.n目標のスクロールカウンタ -= 100; |
this.n目標のスクロールカウンタ -= 100; |
| 947 |
|
|
| 948 |
this.t選択曲が変更された( false ); // スクロールバー用に今何番目を選択しているかを更新 |
this.t選択曲が変更された( false ); // スクロールバー用に今何番目を選択しているかを更新 |
| 949 |
if( this.tx選択されている曲の曲名 != null ) |
CDTXMania.t安全にDisposeする( ref this.tx選択されている曲の曲名 ); |
| 950 |
{ |
CDTXMania.t安全にDisposeする( ref this.tx選択されている曲のアーティスト名 ); |
|
this.tx選択されている曲の曲名.Dispose(); |
|
|
this.tx選択されている曲の曲名 = null; |
|
|
} |
|
|
if( this.tx選択されている曲のアーティスト名 != null ) |
|
|
{ |
|
|
this.tx選択されている曲のアーティスト名.Dispose(); |
|
|
this.tx選択されている曲のアーティスト名 = null; |
|
|
} |
|
| 951 |
|
|
| 952 |
if( this.n目標のスクロールカウンタ == 0 ) |
if( this.n目標のスクロールカウンタ == 0 ) |
| 953 |
CDTXMania.stage選曲.t選択曲変更通知(); // スクロール完了=選択曲変更! |
CDTXMania.stage選曲.t選択曲変更通知(); // スクロール完了=選択曲変更! |
| 1017 |
|
|
| 1018 |
|
|
| 1019 |
this.t選択曲が変更された( false ); // スクロールバー用に今何番目を選択しているかを更新 |
this.t選択曲が変更された( false ); // スクロールバー用に今何番目を選択しているかを更新 |
| 1020 |
if( this.tx選択されている曲の曲名 != null ) |
CDTXMania.t安全にDisposeする( ref this.tx選択されている曲の曲名 ); |
| 1021 |
{ |
CDTXMania.t安全にDisposeする( ref this.tx選択されている曲のアーティスト名 ); |
|
this.tx選択されている曲の曲名.Dispose(); |
|
|
this.tx選択されている曲の曲名 = null; |
|
|
} |
|
|
if( this.tx選択されている曲のアーティスト名 != null ) |
|
|
{ |
|
|
this.tx選択されている曲のアーティスト名.Dispose(); |
|
|
this.tx選択されている曲のアーティスト名 = null; |
|
|
} |
|
| 1022 |
|
|
| 1023 |
if( this.n目標のスクロールカウンタ == 0 ) |
if( this.n目標のスクロールカウンタ == 0 ) |
| 1024 |
CDTXMania.stage選曲.t選択曲変更通知(); // スクロール完了=選択曲変更! |
CDTXMania.stage選曲.t選択曲変更通知(); // スクロール完了=選択曲変更! |
| 1852 |
|
|
| 1853 |
this.stバー情報[ i ].strDTXフォルダのパス = song.arスコア[ this.n現在のアンカ難易度レベルに最も近い難易度レベルを返す( song ) ].ファイル情報.フォルダの絶対パス; |
this.stバー情報[ i ].strDTXフォルダのパス = song.arスコア[ this.n現在のアンカ難易度レベルに最も近い難易度レベルを返す( song ) ].ファイル情報.フォルダの絶対パス; |
| 1854 |
this.stバー情報[ i ].strPreimageのパス = song.arスコア[ this.n現在のアンカ難易度レベルに最も近い難易度レベルを返す( song ) ].ファイル情報.フォルダの絶対パス + song.arスコア[ this.n現在のアンカ難易度レベルに最も近い難易度レベルを返す( song ) ].譜面情報.Preimage; |
this.stバー情報[ i ].strPreimageのパス = song.arスコア[ this.n現在のアンカ難易度レベルに最も近い難易度レベルを返す( song ) ].ファイル情報.フォルダの絶対パス + song.arスコア[ this.n現在のアンカ難易度レベルに最も近い難易度レベルを返す( song ) ].譜面情報.Preimage; |
| 1855 |
this.tパネルの生成(i, song.strタイトル, this.stバー情報[ i ].strアーティスト名, song.col文字色); |
|
| 1856 |
|
// 2019.4.26 kairera0467 バーの初期化は複数回行われる場合があるので、再構築する時には一度解放してから構築するほうが解放漏れは少なくなるはず。 |
| 1857 |
|
CDTXMania.tテクスチャの解放( ref this.stバー情報[ i ].txパネル ); |
| 1858 |
|
CDTXMania.tテクスチャの解放( ref this.txTumbnail[ i ] ); |
| 1859 |
|
|
| 1860 |
|
this.tパネルの生成( i, song.strタイトル, this.stバー情報[ i ].strアーティスト名, song.col文字色 ); |
| 1861 |
if( this.stバー情報[ i ].strPreimageのパス != null ) |
if( this.stバー情報[ i ].strPreimageのパス != null ) |
| 1862 |
{ |
{ |
| 1863 |
if( !this.dicThumbnail.ContainsKey( this.stバー情報[ i ].strPreimageのパス ) ) |
if( !this.dicThumbnail.ContainsKey( this.stバー情報[ i ].strPreimageのパス ) ) |
| 1886 |
{ |
{ |
| 1887 |
//if ( this.stバー情報[ nバー番号 ].eバー種別 == Eバー種別.Score || this.stバー情報[ nバー番号 ].eバー種別 == Eバー種別.Box) |
//if ( this.stバー情報[ nバー番号 ].eバー種別 == Eバー種別.Score || this.stバー情報[ nバー番号 ].eバー種別 == Eバー種別.Box) |
| 1888 |
{ |
{ |
| 1889 |
if (!File.Exists(strDTXPath)) |
// 2019.04.27 kairera0467 使っていないようなのでコメントアウト |
| 1890 |
{ |
//if (!File.Exists(strDTXPath)) |
| 1891 |
this.txTumbnail[nバー番号] = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_preimage default.png"), false); |
//{ |
| 1892 |
} |
// this.txTumbnail[nバー番号] = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_preimage default.png"), false); |
| 1893 |
else |
//} |
| 1894 |
{ |
//else |
| 1895 |
this.txTumbnail[nバー番号] = CDTXMania.tテクスチャの生成(strDTXPath); |
//{ |
| 1896 |
} |
// this.txTumbnail[nバー番号] = CDTXMania.tテクスチャの生成(strDTXPath); |
| 1897 |
|
//} |
| 1898 |
} |
} |
| 1899 |
//else if( this.stバー情報[ nバー番号 ].eバー種別 == Eバー種別.Random) |
//else if( this.stバー情報[ nバー番号 ].eバー種別 == Eバー種別.Random) |
| 1900 |
//{ |
//{ |