Develop and Download Open Source Software

Browse Subversion Repository

Diff of /trunk/DTXManiaプロジェクト/コード/ステージ/05.選曲/CActSelect曲リスト.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 196 by kairera0467, Thu Dec 26 06:45:08 2013 UTC revision 197 by kairera0467, Sun Dec 29 00:29:57 2013 UTC
# Line 242  namespace DTXMania Line 242  namespace DTXMania
242              if( this.tx選択されている曲の曲名 != null )              if( this.tx選択されている曲の曲名 != null )
243              {                {  
244                  this.tx選択されている曲の曲名.Dispose();                  this.tx選択されている曲の曲名.Dispose();
                 this.tx選択されている曲のアーティスト名.Dispose();  
245                  this.tx選択されている曲の曲名 = null;                  this.tx選択されている曲の曲名 = null;
246                }
247                if( this.tx選択されている曲のアーティスト名 != null )
248                {
249                    this.tx選択されている曲のアーティスト名.Dispose();
250                  this.tx選択されている曲のアーティスト名 = null;                  this.tx選択されている曲のアーティスト名 = null;
251              }              }
252                          if( ( this.r現在選択中の曲.list子リスト != null ) && ( this.r現在選択中の曲.list子リスト.Count > 0 ) )                          if( ( this.r現在選択中の曲.list子リスト != null ) && ( this.r現在選択中の曲.list子リスト.Count > 0 ) )
# Line 282  namespace DTXMania Line 285  namespace DTXMania
285              if( this.tx選択されている曲の曲名 != null )              if( this.tx選択されている曲の曲名 != null )
286              {                {  
287                  this.tx選択されている曲の曲名.Dispose();                  this.tx選択されている曲の曲名.Dispose();
                 this.tx選択されている曲のアーティスト名.Dispose();  
288                  this.tx選択されている曲の曲名 = null;                  this.tx選択されている曲の曲名 = null;
289                }
290                if( this.tx選択されている曲のアーティスト名 != null )
291                {
292                    this.tx選択されている曲のアーティスト名.Dispose();
293                  this.tx選択されている曲のアーティスト名 = null;                  this.tx選択されている曲のアーティスト名 = null;
294              }              }
295              if ( this.r現在選択中の曲.r親ノード != null )              if ( this.r現在選択中の曲.r親ノード != null )
# Line 531  namespace DTXMania Line 537  namespace DTXMania
537                                  nCurrentPosition = index;                                  nCurrentPosition = index;
538                                  nNumOfItems = list.Count;                                  nNumOfItems = list.Count;
539                          }                          }
540                CDTXMania.tテクスチャの解放( ref this.tx選択されている曲の曲名 );
541                CDTXMania.tテクスチャの解放( ref this.tx選択されている曲のアーティスト名 );
542                  }                  }
543    
544                  // CActivity 実装                  // CActivity 実装
# Line 575  namespace DTXMania Line 583  namespace DTXMania
583                                  return;                                  return;
584    
585                          CDTXMania.t安全にDisposeする( ref this.ft曲リスト用フォント );                          CDTXMania.t安全にDisposeする( ref this.ft曲リスト用フォント );
586              this.prvFont.Dispose();              if( this.prvFont != null )
587                    this.prvFont.Dispose();
588    
589                          for( int i = 0; i < 13; i++ )                          for( int i = 0; i < 13; i++ )
590                                  this.ct登場アニメ用[ i ] = null;                                  this.ct登場アニメ用[ i ] = null;
# Line 601  namespace DTXMania Line 610  namespace DTXMania
610              this.tx帯 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\5_backpanel.png" ) );              this.tx帯 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\5_backpanel.png" ) );
611              this.tx色帯 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\5_ColorBar.png" ) );              this.tx色帯 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\5_ColorBar.png" ) );
612              this.txランプ用帯 = CDTXMania.tテクスチャの生成( CSkin.Path(@"Graphics\5_lamppanel.png" ));              this.txランプ用帯 = CDTXMania.tテクスチャの生成( CSkin.Path(@"Graphics\5_lamppanel.png" ));
613                
614              this.txクリアランプ = CDTXMania.tテクスチャの生成( CSkin.Path(@"Graphics\5_Clearlamp.png") );              this.txクリアランプ = CDTXMania.tテクスチャの生成( CSkin.Path(@"Graphics\5_Clearlamp.png") );
615              #region[ テクスチャの復元 ]              #region[ テクスチャの復元 ]
616              int nKeys = this.dicThumbnail.Count;              int nKeys = this.dicThumbnail.Count;
# Line 701  namespace DTXMania Line 711  namespace DTXMania
711                  CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txアーティスト名 );                  CDTXMania.t安全にDisposeする( ref this.stバー情報[ i ].txアーティスト名 );
712              }              }
713    
714              if( this.tx選択されている曲の曲名 != null )              if( this.tx選択されている曲の曲名 != null || this.tx選択されている曲のアーティスト名 != null )
715              {                {  
716                  this.tx選択されている曲の曲名.Dispose();                  CDTXMania.tテクスチャの解放( ref this.tx選択されている曲の曲名 );
717                  this.tx選択されている曲のアーティスト名.Dispose();                  CDTXMania.tテクスチャの解放( ref this.tx選択されている曲のアーティスト名 );
718                  this.tx選択されている曲の曲名 = null;                  this.tx選択されている曲の曲名 = null;
719                  this.tx選択されている曲のアーティスト名 = null;                  this.tx選択されている曲のアーティスト名 = null;
720              }              }
# Line 1172  namespace DTXMania Line 1182  namespace DTXMania
1182                              //-----------------                              //-----------------
1183                              for( int la = 0; la < 5 ; la++ )                              for( int la = 0; la < 5 ; la++ )
1184                              {                              {
1185                                  if( CDTXMania.stage選曲.r現在選択中の曲.ar難易度ラベル[ la ] != null && CDTXMania.stage選曲.r現在選択中の曲.arスコア != null )                                  if( this.txクリアランプ != null && CDTXMania.stage選曲.r現在選択中の曲.ar難易度ラベル[ la ] != null && CDTXMania.stage選曲.r現在選択中の曲.arスコア[ la ] != null )
1186                                      this.txクリアランプ.t2D描画(CDTXMania.app.Device, 506, 292 - la * 13, new Rectangle((CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.最大スキル.Drums != 0 ? 11 + la * 11 : 0), ( CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.フルコンボ.Drums ? 10 : 0), 11, 10));                                      this.txクリアランプ.t2D描画(CDTXMania.app.Device, 506, 292 - la * 13, new Rectangle((CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.最大スキル.Drums != 0 ? 11 + la * 11 : 0), ( CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.フルコンボ.Drums ? 10 : 0), 11, 10));
1187                              }                              }
1188                              if( this.txTumbnail[ nパネル番号 ] != null )                              if( this.txTumbnail[ nパネル番号 ] != null )
# Line 1187  namespace DTXMania Line 1197  namespace DTXMania
1197                              #endregion                              #endregion
1198                                                          #region [ タイトル名テクスチャを描画。]                                                          #region [ タイトル名テクスチャを描画。]
1199                                                          //-----------------                                                          //-----------------
1200                              this.tx選択されている曲の曲名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strタイトル文字列 );                              if( this.stバー情報[ nパネル番号 ].strタイトル文字列 != "" && this.stバー情報[ nパネル番号 ].strタイトル文字列 != null )
1201                              this.tx選択されている曲のアーティスト名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strアーティスト名 );                                  this.tx選択されている曲の曲名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strタイトル文字列 );
1202                                if( this.stバー情報[ nパネル番号 ].strアーティスト名 != "" && this.stバー情報[ nパネル番号 ].strアーティスト名 != null )
1203                                    this.tx選択されている曲のアーティスト名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strアーティスト名 );
1204    
1205                                                      if( this.tx選択されている曲の曲名 != null )                                                      if( this.tx選択されている曲の曲名 != null )
1206                                                              this.tx選択されている曲の曲名.t2D描画( CDTXMania.app.Device, 552, 210 );                                                              this.tx選択されている曲の曲名.t2D描画( CDTXMania.app.Device, 552, 210 );
1207                              if (this.tx選択されている曲のアーティスト名 != null)                              if( this.tx選択されている曲のアーティスト名 != null )
1208                                  this.tx選択されている曲のアーティスト名.t2D描画(CDTXMania.app.Device, 770 - this.stバー情報[ nパネル番号 ].nアーティスト名テクスチャの長さdot, 470);                                  this.tx選択されている曲のアーティスト名.t2D描画(CDTXMania.app.Device, 770 - this.stバー情報[ nパネル番号 ].nアーティスト名テクスチャの長さdot, 470);
1209                              //if( this.stバー情報[ nパネル番号 ].txタイトル名 != null )                              //if( this.stバー情報[ nパネル番号 ].txタイトル名 != null )
1210                                                          //      this.stバー情報[ nパネル番号 ].txタイトル名.t2D描画( CDTXMania.app.Device, 556, 210 );                                                          //      this.stバー情報[ nパネル番号 ].txタイトル名.t2D描画( CDTXMania.app.Device, 556, 210 );
# Line 1351  namespace DTXMania Line 1364  namespace DTXMania
1364                      {                      {
1365                          if( this.txランプ用帯 != null )                          if( this.txランプ用帯 != null )
1366                              this.txランプ用帯.t3D描画( CDTXMania.app.Device, barL );   //右の帯。                              this.txランプ用帯.t3D描画( CDTXMania.app.Device, barL );   //右の帯。
1367                          for (int la = 0; la < 5; la++)                          //for (int la = 0; la < 5; la++)
1368                          {                          {
1369                              //if( this.stバー情報[ 6 ].ar難易度ラベル[ la ] != null )                              //if( this.stバー情報[ 6 ].ar難易度ラベル[ la ] != null )
1370                              {                              {
1371                                  var lamp = SlimDX.Matrix.Identity;                                  //var lamp = SlimDX.Matrix.Identity;
1372                                  lamp *= SlimDX.Matrix.Translation(                                  //lamp *= SlimDX.Matrix.Translation(
1373                                  ( this.stマトリックス座標[i].x + (int)((this.stマトリックス座標[i].x - this.stマトリックス座標[i].x ) )) * CTexture.f画面比率,                                  //( this.stマトリックス座標[i].x + (int)((this.stマトリックス座標[i].x - this.stマトリックス座標[i].x ) )) * CTexture.f画面比率,
1374                                  ( this.stマトリックス座標[i].y + (int)((this.stマトリックス座標[i].y - this.stマトリックス座標[i].y ) ) ) * CTexture.f画面比率 - 1f - la * 13f,                                  //( this.stマトリックス座標[i].y + (int)((this.stマトリックス座標[i].y - this.stマトリックス座標[i].y ) ) ) * CTexture.f画面比率 - 1f - la * 13f,
1375                                  ( this.stマトリックス座標[i].z + (int)((this.stマトリックス座標[i].z - this.stマトリックス座標[i].z ) ) ) * CTexture.f画面比率);                                  //( this.stマトリックス座標[i].z + (int)((this.stマトリックス座標[i].z - this.stマトリックス座標[i].z ) ) ) * CTexture.f画面比率);
1376    
1377                                  //this.txクリアランプ.t3D描画( CDTXMania.app.Device, lamp, new Rectangle((CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.最大スキル.Drums != 0 ? 11 + la * 11 : 0), (CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.フルコンボ.Drums ? 10 : 0), 11, 10));                                  //this.txクリアランプ.t3D描画( CDTXMania.app.Device, lamp, new Rectangle((CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.最大スキル.Drums != 0 ? 11 + la * 11 : 0), (CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.フルコンボ.Drums ? 10 : 0), 11, 10));
1378                              }                              }
# Line 1385  namespace DTXMania Line 1398  namespace DTXMania
1398    
1399                          for( int la = 0; la < 5 ; la++ )                          for( int la = 0; la < 5 ; la++ )
1400                          {                          {
1401                              if( CDTXMania.stage選曲.r現在選択中の曲.ar難易度ラベル[ la ] != null && CDTXMania.stage選曲.r現在選択中の曲.arスコア != null )                              if( this.txクリアランプ != null && CDTXMania.stage選曲.r現在選択中の曲.ar難易度ラベル[ la ] != null && CDTXMania.stage選曲.r現在選択中の曲.arスコア[ la ] != null )
1402                                  this.txクリアランプ.t2D描画(CDTXMania.app.Device, 506, 292 - la * 13, new Rectangle((CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.最大スキル.Drums != 0 ? 11 + la * 11 : 0), ( CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.フルコンボ.Drums ? 10 : 0), 11, 10));                                  this.txクリアランプ.t2D描画(CDTXMania.app.Device, 506, 292 - la * 13, new Rectangle((CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.最大スキル.Drums != 0 ? 11 + la * 11 : 0), ( CDTXMania.stage選曲.r現在選択中の曲.arスコア[la].譜面情報.フルコンボ.Drums ? 10 : 0), 11, 10));
1403                          }                          }
1404                          if( this.txTumbnail[ nパネル番号 ] != null )                          if( this.txTumbnail[ nパネル番号 ] != null )
# Line 1400  namespace DTXMania Line 1413  namespace DTXMania
1413                          #endregion                          #endregion
1414                                                  #region [ タイトル名テクスチャを描画。]                                                  #region [ タイトル名テクスチャを描画。]
1415                                                  //-----------------                                                  //-----------------
1416                          if( this.tx選択されている曲の曲名 == null )                          if( this.stバー情報[ nパネル番号 ].strタイトル文字列 != "" && this.stバー情報[ nパネル番号 ].strタイトル文字列 != null )
                         {  
1417                              this.tx選択されている曲の曲名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strタイトル文字列 );                              this.tx選択されている曲の曲名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strタイトル文字列 );
1418                            if( this.stバー情報[ nパネル番号 ].strアーティスト名 != "" && this.stバー情報[ nパネル番号 ].strアーティスト名 != null )
1419                              this.tx選択されている曲のアーティスト名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strアーティスト名 );                              this.tx選択されている曲のアーティスト名 = this.t指定された文字テクスチャを生成する( this.stバー情報[ nパネル番号 ].strアーティスト名 );
1420                          }  
1421                                                  if( this.tx選択されている曲の曲名 != null )                                                  if( this.tx選択されている曲の曲名 != null )
1422                                                          this.tx選択されている曲の曲名.t2D描画( CDTXMania.app.Device, 552, 210 );                                                          this.tx選択されている曲の曲名.t2D描画( CDTXMania.app.Device, 552, 210 );
1423                          if( this.tx選択されている曲のアーティスト名 != null )                          if( this.tx選択されている曲のアーティスト名 != null )
# Line 1426  namespace DTXMania Line 1439  namespace DTXMania
1439                              this.txランプ用帯.t3D描画( CDTXMania.app.Device, bar );   //右の帯。                              this.txランプ用帯.t3D描画( CDTXMania.app.Device, bar );   //右の帯。
1440                          if( this.tx選曲パネル != null )                          if( this.tx選曲パネル != null )
1441                              this.tx選曲パネル.t2D描画(CDTXMania.app.Device, 761, 233, new Rectangle(304, 70, 59, 242));                              this.tx選曲パネル.t2D描画(CDTXMania.app.Device, 761, 233, new Rectangle(304, 70, 59, 242));
1442    
1443                          #region [ ジャケット画像の描画 ]                          #region [ ジャケット画像の描画 ]
1444                          //-----------------                          //-----------------
1445                          if( this.txパネル != null )                          if( this.txパネル != null )
# Line 2039  namespace DTXMania Line 2053  namespace DTXMania
2053              //PrivateFontの試験運転も兼ねて。              //PrivateFontの試験運転も兼ねて。
2054              //CPrivateFastFont              //CPrivateFastFont
2055              prvFont = new CPrivateFastFont( new FontFamily( CDTXMania.ConfigIni.str選曲リストフォント ), 28, FontStyle.Regular );              prvFont = new CPrivateFastFont( new FontFamily( CDTXMania.ConfigIni.str選曲リストフォント ), 28, FontStyle.Regular );
2056              Bitmap bmp = prvFont.DrawPrivateFont( str文字, Color.Black, Color.Transparent );              Bitmap bmp;
2057                
2058                bmp = prvFont.DrawPrivateFont( str文字, Color.Black, Color.Transparent );
2059    
2060              SizeF sz曲名;              SizeF sz曲名;
2061    
# Line 2074  namespace DTXMania Line 2090  namespace DTXMania
2090          {          {
2091              //t3D描画の仕様上左詰や右詰が面倒になってしまうので、              //t3D描画の仕様上左詰や右詰が面倒になってしまうので、
2092              //パネルにあらかじめ曲名とアーティスト名を埋め込んでおく。              //パネルにあらかじめ曲名とアーティスト名を埋め込んでおく。
2093                /*
2094              if( nバー番号 < 0 || nバー番号 > 12 )              if( nバー番号 < 0 || nバー番号 > 12 )
2095                                  return;                                  return;
2096              try              try
# Line 2137  namespace DTXMania Line 2154  namespace DTXMania
2154                                  Trace.TraceError( "曲名テクスチャの作成に失敗しました。[{0}]", str曲名 );                                  Trace.TraceError( "曲名テクスチャの作成に失敗しました。[{0}]", str曲名 );
2155                                  this.stバー情報[ nバー番号 ].txタイトル名 = null;                                  this.stバー情報[ nバー番号 ].txタイトル名 = null;
2156                          }                          }
2157                */
2158          }          }
2159                  private void t曲名バーの生成( int nバー番号, string str曲名, Color color )                  private void t曲名バーの生成( int nバー番号, string str曲名, Color color )
2160                  {                  {

Legend:
Removed from v.196  
changed lines
  Added in v.197

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26