X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=StrokeStyleT%2F%E3%82%B9%E3%83%86%E3%83%BC%E3%82%B8%2F%E8%B5%B7%E5%8B%95%2F%E8%B5%B7%E5%8B%95%E3%82%B9%E3%83%86%E3%83%BC%E3%82%B8.cs;h=e481644078363228d4aac8ac3e95b96e7235f5f8;hb=01832467638571af25418dd9d197d5066222901d;hp=c7ff0f1c5d9f9954c848c19d141b633adcd13e54;hpb=7ef07f6c216ac26028c929acbe7c6d8bb2144ed3;p=strokestylet%2FCsWin10Desktop3.git diff --git a/StrokeStyleT/ステージ/起動/起動ステージ.cs b/StrokeStyleT/ステージ/起動/起動ステージ.cs index c7ff0f1..e481644 100644 --- a/StrokeStyleT/ステージ/起動/起動ステージ.cs +++ b/StrokeStyleT/ステージ/起動/起動ステージ.cs @@ -57,9 +57,12 @@ namespace SST.ステージ.起動 } } - public override void 高速進行する() + public override void 進行描画する( グラフィックデバイス gd ) { Debug.Assert( this.活性化している ); + Debug.Assert( null != gd ); + + retry: switch( this.現在のフェーズ ) { @@ -70,28 +73,41 @@ namespace SST.ステージ.起動 break; case フェーズ.フェードイン: - this._フェードイン.進行する(); if( this._フェードイン.完了した ) { this._フェーズカウンタ.開始する( 最初の値: 0, 最後の値: 2, 値をひとつ増加させるのにかける時間ms: 1000 ); this.現在のフェーズ = フェーズ.表示; + goto retry; + } + else + { + this._背景画像.描画する( gd, 0f, 0f ); + this._フェードイン.進行描画する( gd, this._フェードインアウト用パネル ); } break; case フェーズ.表示: if( this._フェーズカウンタ.終了値に達した ) { - this.現在のフェーズ = フェーズ.フェードアウト; this._フェードアウト.開始する(); + this.現在のフェーズ = フェーズ.フェードアウト; + goto retry; + } + else + { + this._背景画像.描画する( gd, 0f, 0f ); } break; case フェーズ.フェードアウト: - this._フェードアウト.進行する(); if( this._フェードアウト.完了した ) { this.現在のフェーズ = フェーズ.完了; + //goto retry; --> ちらつきが起きるのでコメントアウト } + this._背景画像.描画する( gd, 0f, 0f ); + this._フェードアウト.進行描画する( gd, this._フェードインアウト用パネル ); + break; case フェーズ.完了: @@ -112,35 +128,6 @@ namespace SST.ステージ.起動 } } - public override void 描画する( グラフィックデバイス gd ) - { - Debug.Assert( this.活性化している ); - Debug.Assert( null != gd ); - - switch( this.現在のフェーズ ) - { - case フェーズ.開始: - break; - - case フェーズ.フェードイン: - this._背景画像.描画する( gd, 0f, 0f ); - this._フェードイン.描画する( gd, this._フェードインアウト用パネル ); - break; - - case フェーズ.表示: - this._背景画像.描画する( gd, 0f, 0f ); - break; - - case フェーズ.フェードアウト: - this._背景画像.描画する( gd, 0f, 0f ); - this._フェードアウト.描画する( gd, this._フェードインアウト用パネル ); - break; - - case フェーズ.完了: - break; - } - } - private 画像 _背景画像;