using System.Diagnostics;\r
using System.IO;\r
using System.Drawing;\r
-using SlimDX;\r
-using SlimDX.Direct3D9;\r
+using SharpDX;\r
+using SharpDX.Direct3D9;\r
using FDK;\r
\r
+using Rectangle = System.Drawing.Rectangle;\r
+\r
namespace DTXMania\r
{\r
internal class CActResultImage : CActivity\r
{\r
- // コンストラクタ\r
-\r
- public CActResultImage()\r
- {\r
- base.b活性化してない = true;\r
- }\r
-\r
-\r
- // メソッド\r
+ CDTX.CAVI rAVI;\r
+ CCounter ct登場用;\r
+ int n本体X;\r
+ int n本体Y;\r
+ CTexture r表示するリザルト画像;\r
+ string strAVIファイル名;\r
+ CTexture txパネル本体;\r
+ CTexture txリザルト画像;\r
+ CTexture txリザルト画像がないときの画像;\r
\r
public void tアニメを完了させる()\r
{\r
- this.ct登場用.n現在の値 = this.ct登場用.n終了値;\r
+ ct登場用.n現在の値 = ct登場用.n終了値;\r
}\r
public CAct演奏AVI actAVI\r
{\r
set;\r
}\r
\r
-\r
- // CActivity 実装\r
-\r
public override void On活性化()\r
{\r
- this.n本体X = 4;\r
- this.n本体Y = 0x3f;\r
- base.On活性化();\r
- this.actAVI.bIsPreviewMovie = true;\r
- this.actAVI.On活性化();\r
+ if (b活性化してない)\r
+ {\r
+ n本体X = 4;\r
+ n本体Y = 0x3f;\r
+ base.On活性化();\r
+ actAVI.bIsPreviewMovie = true;\r
+ actAVI.On活性化();\r
+ }\r
}\r
public override void On非活性化()\r
{\r
- if (this.ct登場用 != null)\r
+ if (b活性化してる)\r
{\r
- this.ct登場用 = null;\r
- }\r
- if (this.rAVI != null)\r
- {\r
- this.rAVI.Dispose();\r
- this.rAVI = null;\r
+ if (ct登場用 != null)\r
+ {\r
+ ct登場用 = null;\r
+ }\r
+ if (rAVI != null)\r
+ {\r
+ rAVI.Dispose();\r
+ rAVI = null;\r
+ }\r
+ base.On非活性化();\r
+ actAVI.On非活性化();\r
}\r
- base.On非活性化();\r
- this.actAVI.On非活性化();\r
-\r
}\r
+\r
public override void OnManagedリソースの作成()\r
{\r
- if (!base.b活性化してない)\r
+ if (b活性化してる)\r
{\r
- this.txパネル本体 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenResult resultimage panel.png"));\r
- this.txリザルト画像がないときの画像 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenSelect preimage default.png"));\r
- //this.sfリザルトAVI画像 = Surface.CreateOffscreenPlain( CDTXMania.Instance.app.Device, 0xcc, 0x10d, CDTXMania.Instance.app.GraphicsDeviceManager.CurrentSettings.BackBufferFormat, Pool.Default );\r
- //this.sfリザルトAVI画像 = Surface.CreateOffscreenPlain( CDTXMania.Instance.app.Device, 192, 269, CDTXMania.Instance.app.GraphicsDeviceManager.CurrentSettings.BackBufferFormat, Pool.Default );\r
- //this.nAVI再生開始時刻 = -1;\r
- //this.n前回描画したフレーム番号 = -1;\r
- //this.b動画フレームを作成した = false;\r
- //this.pAVIBmp = IntPtr.Zero;\r
+ txパネル本体 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenResult resultimage panel.png"));\r
+ txリザルト画像がないときの画像 = TextureFactory.tテクスチャの生成(CSkin.Path(@"Graphics\ScreenSelect preimage default.png"));\r
base.OnManagedリソースの作成();\r
- this.actAVI.OnManagedリソースの作成();\r
+ actAVI.OnManagedリソースの作成();\r
}\r
}\r
+\r
public override void OnManagedリソースの解放()\r
{\r
- if (!base.b活性化してない)\r
+ if (b活性化してる)\r
{\r
- TextureFactory.tテクスチャの解放(ref this.txパネル本体);\r
- TextureFactory.tテクスチャの解放(ref this.txリザルト画像);\r
- TextureFactory.tテクスチャの解放(ref this.txリザルト画像がないときの画像);\r
- //if( this.sfリザルトAVI画像 != null )\r
- //{\r
- // this.sfリザルトAVI画像.Dispose();\r
- // this.sfリザルトAVI画像 = null;\r
- //}\r
+ TextureFactory.tテクスチャの解放(ref txパネル本体);\r
+ TextureFactory.tテクスチャの解放(ref txリザルト画像);\r
+ TextureFactory.tテクスチャの解放(ref txリザルト画像がないときの画像);\r
base.OnManagedリソースの解放();\r
- this.actAVI.OnManagedリソースの解放();\r
+ actAVI.OnManagedリソースの解放();\r
}\r
}\r
public override unsafe int On進行描画()\r
{\r
- if (base.b活性化してない)\r
- {\r
- return 0;\r
- }\r
- if (base.b初めての進行描画)\r
+ if (b活性化してる)\r
{\r
- if (CDTXMania.Instance.ConfigIni.bストイックモード)\r
+ if (b初めての進行描画)\r
+ {\r
+ if (CDTXMania.Instance.ConfigIni.bStoicMode)\r
+ {\r
+ r表示するリザルト画像 = txリザルト画像がないときの画像;\r
+ }\r
+ else if (!tリザルト動画の指定があれば構築する() &&\r
+ !tリザルト画像の指定があれば構築する() &&\r
+ !tプレビュー動画の指定があれば構築する() &&\r
+ !tプレビュー画像の指定があれば構築する() &&\r
+ !t背景画像があればその一部からリザルト画像を構築する())\r
+ {\r
+ r表示するリザルト画像 = txリザルト画像がないときの画像;\r
+ }\r
+\r
+ ct登場用 = new CCounter(0, 100, 5, CDTXMania.Instance.Timer);\r
+ b初めての進行描画 = false;\r
+ }\r
+ ct登場用.t進行();\r
+ if (ct登場用.b終了値に達した)\r
+ {\r
+ n本体X = 4;\r
+ n本体Y = 0x3f;\r
+ }\r
+ else\r
{\r
- this.r表示するリザルト画像 = this.txリザルト画像がないときの画像;\r
+ double num3 = ((double)ct登場用.n現在の値) / 100.0;\r
+ double num4 = Math.Cos((1.5 + (0.5 * num3)) * Math.PI);\r
+ n本体X = 4;\r
+ n本体Y = 0x3f - ((int)(((txパネル本体 != null) ?\r
+ ((double)txパネル本体.sz画像サイズ.Height) : ((double)0)) * (1.0 - (num4 * num4))));\r
}\r
- else if (((!this.tリザルト動画の指定があれば構築する() && !this.tリザルト画像の指定があれば構築する()) && (!this.tプレビュー動画の指定があれば構築する() && !this.tプレビュー画像の指定があれば構築する())) && !this.t背景画像があればその一部からリザルト画像を構築する())\r
+ if (txパネル本体 != null)\r
{\r
- this.r表示するリザルト画像 = this.txリザルト画像がないときの画像;\r
+ txパネル本体.t2D描画(\r
+ CDTXMania.Instance.Device,\r
+ n本体X * Scale.X,\r
+ n本体Y * Scale.Y\r
+ );\r
}\r
+ int x = (int)((n本体X + 17) * Scale.X);\r
+ int y = (int)((n本体Y + 16) * Scale.Y);\r
+ if (rAVI != null)\r
+ {\r
+ actAVI.t進行描画(x, y, 612, 605);\r
+ }\r
+ #region [ プレビュー画像表示 ]\r
+ else if (r表示するリザルト画像 != null)\r
+ {\r
+ CPreviewMagnifier cmg = new CPreviewMagnifier(CPreviewMagnifier.EPreviewType.MusicSelect);\r
+ cmg.GetMagnifier(r表示するリザルト画像.sz画像サイズ.Width, r表示するリザルト画像.sz画像サイズ.Height, 1.0f, 1.0f);\r
\r
- this.ct登場用 = new CCounter(0, 100, 5, CDTXMania.Instance.Timer);\r
- base.b初めての進行描画 = false;\r
- }\r
- this.ct登場用.t進行();\r
- //if ( ( ( this.avi != null ) && ( this.sfリザルトAVI画像 != null ) ) && ( this.nAVI再生開始時刻 != -1 ) )\r
- //if ( ( this.avi != null ) && ( this.nAVI再生開始時刻 != -1 ) )\r
- //{\r
- // int time = (int) ( ( CDTXMania.Instance.Timer.n現在時刻 - this.nAVI再生開始時刻 ) * ( ( (double) CDTXMania.Instance.ConfigIni.n演奏速度 ) / 20.0 ) );\r
- // int frameNoFromTime = this.avi.GetFrameNoFromTime( time );\r
- // if( frameNoFromTime >= this.avi.GetMaxFrameCount() )\r
- // {\r
- // this.nAVI再生開始時刻 = CDTXMania.Instance.Timer.n現在時刻;\r
- // }\r
- // else if( ( this.n前回描画したフレーム番号 != frameNoFromTime ) && !this.b動画フレームを作成した )\r
- // {\r
- // this.b動画フレームを作成した = true;\r
- // this.n前回描画したフレーム番号 = frameNoFromTime;\r
- // //this.pAVIBmp = this.avi.GetFramePtr( frameNoFromTime );\r
- // }\r
- //}\r
- if (this.ct登場用.b終了値に達した)\r
- {\r
- this.n本体X = 4;\r
- this.n本体Y = 0x3f;\r
- }\r
- else\r
- {\r
- double num3 = ((double)this.ct登場用.n現在の値) / 100.0;\r
- double num4 = Math.Cos((1.5 + (0.5 * num3)) * Math.PI);\r
- this.n本体X = 4;\r
- this.n本体Y = 0x3f - ((int)(((this.txパネル本体 != null) ? ((double)this.txパネル本体.sz画像サイズ.Height) : ((double)0)) * (1.0 - (num4 * num4))));\r
- }\r
- if (this.txパネル本体 != null)\r
- {\r
- this.txパネル本体.t2D描画(\r
- CDTXMania.Instance.Device,\r
- this.n本体X * Scale.X,\r
- this.n本体Y * Scale.Y\r
- );\r
- }\r
- int x = this.n本体X + 0x11;\r
- int y = this.n本体Y + 0x10;\r
- //if ( ( ( this.nAVI再生開始時刻 != -1 ) && ( this.avi != null ) ) && ( this.sfリザルトAVI画像 != null ) )\r
- if (this.rAVI != null)\r
- {\r
- this.actAVI.t進行描画((int)(x * Scale.X), (int)(y * Scale.Y), 612, 605);\r
- }\r
- #region [ プレビュー画像表示 ]\r
- else if (this.r表示するリザルト画像 != null)\r
- {\r
- CPreviewMagnifier cmg = new CPreviewMagnifier();\r
- cmg.GetMagnifier(this.r表示するリザルト画像.sz画像サイズ.Width, this.r表示するリザルト画像.sz画像サイズ.Height, 1.0f, 1.0f, true);\r
+ r表示するリザルト画像.vc拡大縮小倍率.X = cmg.magX;\r
+ r表示するリザルト画像.vc拡大縮小倍率.Y = cmg.magY;\r
+ r表示するリザルト画像.vc拡大縮小倍率.Z = 1f;\r
+ x += (int)((612 - cmg.width * cmg.magX) / 2);\r
+ y += (int)((605 - cmg.height * cmg.magY) / 2);\r
+ r表示するリザルト画像.t2D描画(CDTXMania.Instance.Device, x, y);\r
\r
- if (cmg.width < 0xcc) x += (204 - cmg.width) / 2;\r
- if (cmg.height < 269) y += (269 - cmg.height) / 2;\r
- this.r表示するリザルト画像.vc拡大縮小倍率.X = cmg.magX;\r
- this.r表示するリザルト画像.vc拡大縮小倍率.Y = cmg.magY;\r
- this.r表示するリザルト画像.vc拡大縮小倍率.Z = 1f;\r
- this.r表示するリザルト画像.t2D描画(CDTXMania.Instance.Device, x * Scale.X, y * Scale.Y);\r
- }\r
- #endregion\r
- if ((CDTXMania.Instance.DTX.GENRE != null) && (CDTXMania.Instance.DTX.GENRE.Length > 0))\r
- {\r
- CDTXMania.Instance.act文字コンソール.tPrint(\r
- (int)((this.n本体X + 0x12) * Scale.X),\r
- (int)((this.n本体Y - 1) * Scale.Y),\r
- C文字コンソール.Eフォント種別.赤細,\r
- CDTXMania.Instance.DTX.GENRE\r
- );\r
- }\r
- if (!this.ct登場用.b終了値に達した)\r
- {\r
- return 0;\r
+\r
+ }\r
+ #endregion\r
+ if ((CDTXMania.Instance.DTX.GENRE != null) && (CDTXMania.Instance.DTX.GENRE.Length > 0))\r
+ {\r
+ CDTXMania.Instance.act文字コンソール.tPrint(\r
+ (int)((n本体X + 0x12) * Scale.X),\r
+ (int)((n本体Y - 1) * Scale.Y),\r
+ C文字コンソール.Eフォント種別.赤細,\r
+ CDTXMania.Instance.DTX.GENRE\r
+ );\r
+ }\r
+ if (!ct登場用.b終了値に達した)\r
+ {\r
+ return 0;\r
+ }\r
+ return 1;\r
}\r
- return 1;\r
+ return 0;\r
}\r
\r
-\r
- // その他\r
-\r
- #region [ private ]\r
- //-----------------\r
- //private CAvi avi;\r
- private CDTX.CAVI rAVI;\r
- //private bool b動画フレームを作成した;\r
- private CCounter ct登場用;\r
- //private long nAVI再生開始時刻;\r
- //private int n前回描画したフレーム番号;\r
- private int n本体X;\r
- private int n本体Y;\r
- //private IntPtr pAVIBmp;\r
- private CTexture r表示するリザルト画像;\r
- //private Surface sfリザルトAVI画像;\r
- private string strAVIファイル名;\r
- private CTexture txパネル本体;\r
- private CTexture txリザルト画像;\r
- private CTexture txリザルト画像がないときの画像;\r
-\r
private bool t背景画像があればその一部からリザルト画像を構築する()\r
{\r
- string bACKGROUND;\r
- if ((CDTXMania.Instance.ConfigIni.bギタレボモード && (CDTXMania.Instance.DTX.BACKGROUND_GR != null)) && (CDTXMania.Instance.DTX.BACKGROUND_GR.Length > 0))\r
+ string strBackground = CDTXMania.Instance.DTX.BACKGROUND;\r
+ if (string.IsNullOrEmpty(strBackground))\r
{\r
- bACKGROUND = CDTXMania.Instance.DTX.BACKGROUND_GR;\r
+ strBackground = CDTXMania.Instance.DTX.BACKGROUND_GR;\r
}\r
- else\r
+ if (string.IsNullOrEmpty(strBackground))\r
{\r
- bACKGROUND = CDTXMania.Instance.DTX.BACKGROUND;\r
+ return false;\r
}\r
- if (string.IsNullOrEmpty(bACKGROUND))\r
+ TextureFactory.tテクスチャの解放(ref txリザルト画像);\r
+ r表示するリザルト画像 = null;\r
+ strBackground = CDTXMania.Instance.DTX.strフォルダ名 + strBackground;\r
+ if (!File.Exists(strBackground))\r
{\r
return false;\r
}\r
- TextureFactory.tテクスチャの解放(ref this.txリザルト画像);\r
- this.r表示するリザルト画像 = null;\r
- bACKGROUND = CDTXMania.Instance.DTX.strフォルダ名 + bACKGROUND;\r
- Bitmap image = null;\r
- Bitmap bitmap2 = null;\r
- Bitmap bitmap3 = null;\r
- try\r
+ using (Bitmap image = new Bitmap(strBackground))\r
{\r
- image = new Bitmap(bACKGROUND);\r
- bitmap2 = new Bitmap(SampleFramework.GameWindowSize.Width, SampleFramework.GameWindowSize.Height);\r
- Graphics graphics = Graphics.FromImage(bitmap2);\r
- int x = 0;\r
- for (int i = 0; i < SampleFramework.GameWindowSize.Height; i += image.Height)\r
+ using (Bitmap bitmap2 = new Bitmap(SampleFramework.GameWindowSize.Width, SampleFramework.GameWindowSize.Height))\r
{\r
- for (x = 0; x < SampleFramework.GameWindowSize.Width; x += image.Width)\r
+ using (Graphics graphics = Graphics.FromImage(bitmap2))\r
{\r
- graphics.DrawImage(image, x, i, image.Width, image.Height);\r
+ int x = 0;\r
+ for (int i = 0; i < SampleFramework.GameWindowSize.Height; i += image.Height)\r
+ {\r
+ for (x = 0; x < SampleFramework.GameWindowSize.Width; x += image.Width)\r
+ {\r
+ graphics.DrawImage(image, x, i, image.Width, image.Height);\r
+ }\r
+ }\r
+ }\r
+ using (Bitmap bitmap3 = new Bitmap(0xcc, 0x10d))\r
+ {\r
+ using (Graphics graphics = Graphics.FromImage(bitmap3))\r
+ {\r
+ graphics.DrawImage(bitmap2, 5, 5, new Rectangle(0x157, 0x6d, 0xcc, 0x10d), GraphicsUnit.Pixel);\r
+ }\r
+ txリザルト画像 = new CTexture(CDTXMania.Instance.Device, bitmap3, CDTXMania.Instance.TextureFormat);\r
}\r
}\r
- graphics.Dispose();\r
- bitmap3 = new Bitmap(0xcc, 0x10d);\r
- graphics = Graphics.FromImage(bitmap3);\r
- graphics.DrawImage(bitmap2, 5, 5, new Rectangle(0x157, 0x6d, 0xcc, 0x10d), GraphicsUnit.Pixel);\r
- graphics.Dispose();\r
- this.txリザルト画像 = new CTexture(CDTXMania.Instance.Device, bitmap3, CDTXMania.Instance.TextureFormat);\r
- this.r表示するリザルト画像 = this.txリザルト画像;\r
- }\r
- catch\r
- {\r
- Trace.TraceError("背景画像の読み込みに失敗しました。({0})", new object[] { bACKGROUND });\r
- this.txリザルト画像 = null;\r
- return false;\r
- }\r
- finally\r
- {\r
- if (image != null)\r
- {\r
- image.Dispose();\r
- }\r
- if (bitmap2 != null)\r
- {\r
- bitmap2.Dispose();\r
- }\r
- if (bitmap3 != null)\r
- {\r
- bitmap3.Dispose();\r
- }\r
+ r表示するリザルト画像 = txリザルト画像;\r
}\r
return true;\r
}\r
- //private unsafe void tサーフェイスをクリアする( Surface sf )\r
- //{\r
- // DataRectangle rectangle = sf.LockRectangle( LockFlags.None );\r
- // DataStream data = rectangle.Data;\r
- // switch ( ( rectangle.Pitch / sf.Description.Width ) )\r
- // {\r
- // case 4:\r
- // {\r
- // uint* numPtr = (uint*) data.DataPointer.ToPointer();\r
- // for ( int i = 0; i < sf.Description.Height; i++ )\r
- // {\r
- // for ( int j = 0; j < sf.Description.Width; j++ )\r
- // {\r
- // ( numPtr + ( i * sf.Description.Width ) )[ j ] = 0;\r
- // }\r
- // }\r
- // break;\r
- // }\r
- // case 2:\r
- // {\r
- // ushort* numPtr2 = (ushort*) data.DataPointer.ToPointer();\r
- // for ( int k = 0; k < sf.Description.Height; k++ )\r
- // {\r
- // for ( int m = 0; m < sf.Description.Width; m++ )\r
- // {\r
- // ( numPtr2 + ( k * sf.Description.Width ) )[ m ] = 0;\r
- // }\r
- // }\r
- // break;\r
- // }\r
- // }\r
- // sf.UnlockRectangle();\r
- //}\r
+\r
private bool tプレビュー画像の指定があれば構築する()\r
{\r
if (string.IsNullOrEmpty(CDTXMania.Instance.DTX.PREIMAGE))\r
{\r
return false;\r
}\r
- TextureFactory.tテクスチャの解放(ref this.txリザルト画像);\r
- this.r表示するリザルト画像 = null;\r
+ TextureFactory.tテクスチャの解放(ref txリザルト画像);\r
+ r表示するリザルト画像 = null;\r
string path = CDTXMania.Instance.DTX.strフォルダ名 + CDTXMania.Instance.DTX.PREIMAGE;\r
if (!File.Exists(path))\r
{\r
Trace.TraceWarning("ファイルが存在しません。({0})", new object[] { path });\r
return false;\r
}\r
- this.txリザルト画像 = TextureFactory.tテクスチャの生成(path);\r
- this.r表示するリザルト画像 = this.txリザルト画像;\r
- return (this.r表示するリザルト画像 != null);\r
+ txリザルト画像 = TextureFactory.tテクスチャの生成(path);\r
+ r表示するリザルト画像 = txリザルト画像;\r
+ return (r表示するリザルト画像 != null);\r
}\r
+\r
private bool tプレビュー動画の指定があれば構築する()\r
{\r
- if (!CDTXMania.Instance.ConfigIni.bAVI有効)\r
+ if (!CDTXMania.Instance.ConfigIni.bAVI)\r
{\r
return false;\r
}\r
- this.actAVI.Stop();\r
+ actAVI.Stop();\r
if (string.IsNullOrEmpty(CDTXMania.Instance.DTX.PREMOVIE))\r
{\r
return false;\r
}\r
- this.strAVIファイル名 = CDTXMania.Instance.DTX.strフォルダ名 + CDTXMania.Instance.DTX.PREMOVIE;\r
+ strAVIファイル名 = CDTXMania.Instance.DTX.strフォルダ名 + CDTXMania.Instance.DTX.PREMOVIE;\r
if (!File.Exists(this.strAVIファイル名))\r
{\r
- Trace.TraceWarning("プレビュー動画のファイルが存在しません。({0})", this.strAVIファイル名);\r
+ Trace.TraceWarning("プレビュー動画のファイルが存在しません。({0})", strAVIファイル名);\r
return false;\r
}\r
- if (this.rAVI != null)\r
+ if (rAVI != null)\r
{\r
- this.rAVI.Dispose();\r
- this.rAVI = null;\r
+ rAVI.Dispose();\r
+ rAVI = null;\r
}\r
try\r
{\r
- this.rAVI = new CDTX.CAVI(00, this.strAVIファイル名, "", CDTXMania.Instance.ConfigIni.n演奏速度);\r
- this.rAVI.OnDeviceCreated();\r
- this.actAVI.Start(Ech定義.Movie, rAVI, 204, 269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1);\r
-\r
- //this.avi = new CAvi( this.strAVIファイル名 );\r
- //this.nAVI再生開始時刻 = CDTXMania.Instance.Timer.n現在時刻;\r
- //this.n前回描画したフレーム番号 = -1;\r
- //this.b動画フレームを作成した = false;\r
- //this.tサーフェイスをクリアする( this.sfリザルトAVI画像 );\r
- //Trace.TraceInformation( "プレビュー動画を生成しました。({0})", this.strAVIファイル名 );\r
+ rAVI = new CDTX.CAVI(00, this.strAVIファイル名, "", CDTXMania.Instance.ConfigIni.nPlaySpeed);\r
+ rAVI.OnDeviceCreated();\r
+ actAVI.Start(EChannel.Movie, rAVI, 204, 269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1);\r
}\r
catch\r
{\r
- Trace.TraceError("プレビュー動画の生成に失敗しました。({0})", this.strAVIファイル名);\r
- this.rAVI = null;\r
- //this.nAVI再生開始時刻 = -1;\r
+ Trace.TraceError("プレビュー動画の生成に失敗しました。({0})", strAVIファイル名);\r
+ rAVI = null;\r
}\r
return true;\r
}\r
+\r
private bool tリザルト画像の指定があれば構築する()\r
{\r
- int rank = CScoreIni.t総合ランク値を計算して返す(CDTXMania.Instance.stage結果.st演奏記録);\r
- if (rank == 99) // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす\r
+ CScoreIni.ERANK rank = CScoreIni.t総合ランク値を計算して返す(CDTXMania.Instance.stage結果.st演奏記録);\r
+ if (rank == CScoreIni.ERANK.UNKNOWN) // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす\r
{\r
- rank = 6;\r
+ rank = CScoreIni.ERANK.E;\r
}\r
- if (string.IsNullOrEmpty(CDTXMania.Instance.DTX.RESULTIMAGE[rank]))\r
+ if (string.IsNullOrEmpty(CDTXMania.Instance.DTX.RESULTIMAGE[(int)rank]))\r
{\r
return false;\r
}\r
- TextureFactory.tテクスチャの解放(ref this.txリザルト画像);\r
- this.r表示するリザルト画像 = null;\r
- string path = CDTXMania.Instance.DTX.strフォルダ名 + CDTXMania.Instance.DTX.RESULTIMAGE[rank];\r
+ TextureFactory.tテクスチャの解放(ref txリザルト画像);\r
+ r表示するリザルト画像 = null;\r
+ string path = CDTXMania.Instance.DTX.strフォルダ名 + CDTXMania.Instance.DTX.RESULTIMAGE[(int)rank];\r
if (!File.Exists(path))\r
{\r
Trace.TraceWarning("ファイルが存在しません。({0})", new object[] { path });\r
return false;\r
}\r
- this.txリザルト画像 = TextureFactory.tテクスチャの生成(path);\r
- this.r表示するリザルト画像 = this.txリザルト画像;\r
+ txリザルト画像 = TextureFactory.tテクスチャの生成(path);\r
+ r表示するリザルト画像 = this.txリザルト画像;\r
return (this.r表示するリザルト画像 != null);\r
}\r
+\r
private bool tリザルト動画の指定があれば構築する()\r
{\r
- if (!CDTXMania.Instance.ConfigIni.bAVI有効)\r
+ if (!CDTXMania.Instance.ConfigIni.bAVI)\r
{\r
return false;\r
}\r
- int rank = CScoreIni.t総合ランク値を計算して返す(CDTXMania.Instance.stage結果.st演奏記録);\r
- if (rank == 99) // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす\r
+ CScoreIni.ERANK rank = CScoreIni.t総合ランク値を計算して返す(CDTXMania.Instance.stage結果.st演奏記録);\r
+ // #23534 2010.10.28 yyagi: 演奏チップが0個のときは、rankEと見なす\r
+ if (rank == CScoreIni.ERANK.UNKNOWN)\r
{\r
- rank = 6;\r
+ rank = CScoreIni.ERANK.E;\r
}\r
\r
- if (string.IsNullOrEmpty(CDTXMania.Instance.DTX.RESULTMOVIE[rank]))\r
+ if (string.IsNullOrEmpty(CDTXMania.Instance.DTX.RESULTMOVIE[(int)rank]))\r
{\r
return false;\r
}\r
- this.strAVIファイル名 = CDTXMania.Instance.DTX.strフォルダ名 + CDTXMania.Instance.DTX.RESULTMOVIE[rank];\r
+ strAVIファイル名 = CDTXMania.Instance.DTX.strフォルダ名 + CDTXMania.Instance.DTX.RESULTMOVIE[(int)rank];\r
if (!File.Exists(this.strAVIファイル名))\r
{\r
Trace.TraceWarning("リザルト動画のファイルが存在しません。({0})", this.strAVIファイル名);\r
return false;\r
}\r
- if (this.rAVI != null)\r
+ if (rAVI != null)\r
{\r
- this.rAVI.Dispose();\r
- this.rAVI = null;\r
+ rAVI.Dispose();\r
+ rAVI = null;\r
}\r
try\r
{\r
- this.rAVI = new CDTX.CAVI(00, this.strAVIファイル名, "", CDTXMania.Instance.ConfigIni.n演奏速度);\r
- this.rAVI.OnDeviceCreated();\r
- this.actAVI.Start(Ech定義.Movie, rAVI, 204, 269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1);\r
-\r
- //this.avi = new CAvi( this.strAVIファイル名 );\r
- //this.nAVI再生開始時刻 = CDTXMania.Instance.Timer.n現在時刻;\r
- //this.n前回描画したフレーム番号 = -1;\r
- //this.b動画フレームを作成した = false;\r
- //this.tサーフェイスをクリアする( this.sfリザルトAVI画像 );\r
- //Trace.TraceInformation( "リザルト動画を生成しました。({0})", this.strAVIファイル名 );\r
+ rAVI = new CDTX.CAVI(00, this.strAVIファイル名, "", CDTXMania.Instance.ConfigIni.nPlaySpeed);\r
+ rAVI.OnDeviceCreated();\r
+ actAVI.Start(EChannel.Movie, rAVI, 204, 269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1);\r
}\r
catch\r
{\r
Trace.TraceError("リザルト動画の生成に失敗しました。({0})", this.strAVIファイル名);\r
- this.rAVI = null;\r
- //this.nAVI再生開始時刻 = -1;\r
+ rAVI = null;\r
}\r
return true;\r
}\r
- //-----------------\r
- #endregion\r
}\r
}\r