Intro logo skip

This commit is contained in:
Marco 2025-03-10 11:01:12 +01:00
commit cf708c58f4
7 changed files with 141 additions and 1 deletions

38
Scripts/UI/IntroLogos.cs Normal file
View file

@ -0,0 +1,38 @@
using System.Threading.Tasks;
using Godot;
namespace Cirno.Scripts.UI;
public partial class IntroLogos : CanvasLayer
{
[Export]
public float TransitionTime = 4f;
[Export]
public StringName IntroScenePath;
private bool _isTransitioning = false;
public override void _Ready()
{
_ = AutoTransition();
}
public override void _Process(double delta)
{
if (_isTransitioning) return;
if (Input.IsAnythingPressed())
{
_isTransitioning = true;
GlobalState.Instance.GotoScene(IntroScenePath);
}
}
private async Task AutoTransition()
{
await Task.Delay((int)(TransitionTime * 1000));
if (_isTransitioning) return;
_isTransitioning = true;
GlobalState.Instance.GotoScene(IntroScenePath);
}
}