From 964b48c008aa0dc059d63be4b765ff613104db52 Mon Sep 17 00:00:00 2001 From: Takkkom <76614532+Takkkom@users.noreply.github.com> Date: Tue, 16 Apr 2024 18:38:12 +0900 Subject: [PATCH] =?UTF-8?q?=E3=82=B5=E3=83=96=E3=83=95=E3=82=A9=E3=83=AB?= =?UTF-8?q?=E3=83=80=E3=81=AE=E5=B1=95=E9=96=8B=E3=81=A8=E5=8B=95=E7=94=BB?= =?UTF-8?q?=E3=81=AE=E4=B8=8D=E5=85=B7=E5=90=88=E3=82=92=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=20(#598)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * フォルダの不具合を修正 * 動画のクラッシュと表示の問題を修正 --- FDK/src/04.Graphics/CVideoDecoder.cs | 13 +++++++++---- .../src/Stages/05.SongSelect/CActSelect曲リスト.cs | 11 +++++++---- OpenTaiko/src/Stages/07.Game/CAct演奏AVI.cs | 4 ++-- OpenTaiko/src/Stages/07.Game/CStage演奏画面共通.cs | 4 +++- 4 files changed, 21 insertions(+), 11 deletions(-) diff --git a/FDK/src/04.Graphics/CVideoDecoder.cs b/FDK/src/04.Graphics/CVideoDecoder.cs index 56bfa909..6871c922 100644 --- a/FDK/src/04.Graphics/CVideoDecoder.cs +++ b/FDK/src/04.Graphics/CVideoDecoder.cs @@ -78,7 +78,8 @@ namespace FDK public void Dispose() { - close = true; + bDrawing = false; + close = true; cts?.Cancel(); while (DS != DecodingState.Stopped) ; frameconv.Dispose(); @@ -102,7 +103,9 @@ namespace FDK CTimer.Reset(); CTimer.Resume(); this.bPlaying = true; - } + bDrawing = true; + + } public void PauseControl() { @@ -122,7 +125,8 @@ namespace FDK { CTimer.Pause(); this.bPlaying = false; - } + bDrawing = false; + } public void InitRead() { @@ -329,7 +333,8 @@ namespace FDK //for play public bool bPlaying { get; private set; } = false; - private CTimer CTimer; + public bool bDrawing { get; private set; } = false; + private CTimer CTimer; private AVRational Framerate; private CTexture lastTexture; private bool bqueueinitialized = false; diff --git a/OpenTaiko/src/Stages/05.SongSelect/CActSelect曲リスト.cs b/OpenTaiko/src/Stages/05.SongSelect/CActSelect曲リスト.cs index 7a762acc..fe07b1d3 100644 --- a/OpenTaiko/src/Stages/05.SongSelect/CActSelect曲リスト.cs +++ b/OpenTaiko/src/Stages/05.SongSelect/CActSelect曲リスト.cs @@ -391,11 +391,14 @@ namespace TJAPlayer3 } else { - this.rCurrentlySelectedSong.rParentNode.bIsOpenFolder = false; // Reindex the parent node - this.rCurrentlySelectedSong.rParentNode.Openindex = rCurrentlySelectedSong.rParentNode.list子リスト.IndexOf(this.rCurrentlySelectedSong); - tChangeSong(-this.rCurrentlySelectedSong.rParentNode.Openindex); - } + List currentSongList = flattenList(TJAPlayer3.Songs管理.list曲ルート, true); + this.rCurrentlySelectedSong.rParentNode.Openindex = currentSongList.IndexOf(this.rCurrentlySelectedSong) - currentSongList.IndexOf(this.rCurrentlySelectedSong.rParentNode.list子リスト[0]); + this.rCurrentlySelectedSong.rParentNode.bIsOpenFolder = false; + tChangeSong(-this.rCurrentlySelectedSong.rParentNode.Openindex); + + + } this.t現在選択中の曲を元に曲バーを再構成する(); this.t選択曲が変更された(false); // #27648 項目数変更を反映させる diff --git a/OpenTaiko/src/Stages/07.Game/CAct演奏AVI.cs b/OpenTaiko/src/Stages/07.Game/CAct演奏AVI.cs index 70189793..b3a87792 100644 --- a/OpenTaiko/src/Stages/07.Game/CAct演奏AVI.cs +++ b/OpenTaiko/src/Stages/07.Game/CAct演奏AVI.cs @@ -44,9 +44,9 @@ namespace TJAPlayer3 public unsafe int t進行描画( int x, int y ) { - if ( !base.IsDeActivated ) + if ( !base.IsDeActivated) { - if (this.rVD == null) + if (this.rVD == null || !rVD.bDrawing) return 0; this.rVD.GetNowFrame(ref this.tx描画用); diff --git a/OpenTaiko/src/Stages/07.Game/CStage演奏画面共通.cs b/OpenTaiko/src/Stages/07.Game/CStage演奏画面共通.cs index b77770f3..f9f50089 100644 --- a/OpenTaiko/src/Stages/07.Game/CStage演奏画面共通.cs +++ b/OpenTaiko/src/Stages/07.Game/CStage演奏画面共通.cs @@ -7,6 +7,7 @@ using FDK; using FDK.ExtensionMethods; using TJAPlayer3; using System.Linq; +using Silk.NET.Core; namespace TJAPlayer3 { @@ -5575,7 +5576,8 @@ namespace TJAPlayer3 else { this.actAVI.Seek(0); - } + } + break; } } }