#pragma warning disable IDE0130 using Godot; using Polonium.Attributes; // ReSharper disable once CheckNamespace namespace GlobalClasses; [ProxyNode] [GlobalClass] [Tool] public partial class DissolveScene : Scene { [Export] public Scene NextScene { get; set; } private bool Finished { get; set; } = false; private bool Terminated { get; set; } = false; public sealed override void _Process(double delta) { if(Finished && !Terminated) { Terminated = true; GlobalRegistry.RootScene.SwitchScene(NextScene); return; } __Process(delta); base._Process(delta); } [ProxyMethod] public virtual void __Enter() { } [ProxyMethod] public virtual void __Process(double delta) { } public sealed override void _EnterTree() { Finished = false; Terminated = false; __Enter(); base._EnterTree(); } } #pragma warning restore IDE0130