16 lines
813 B
C#
16 lines
813 B
C#
using System;
|
|
using Godot;
|
|
using OwofGames.GodotLume;
|
|
|
|
namespace GodotHostTest.AetherBind;
|
|
|
|
public interface ISceneInstantiator
|
|
{
|
|
/// <summary>
|
|
/// Instantiate a packed scene, just like <see cref="PackedScene.Instantiate"/>, but also looks for a scope between the top level children of the instantiated scene and triggers the dependency injection mechanism when found.
|
|
/// </summary>
|
|
/// <param name="packedScene">The packed scene to instantiate.</param>
|
|
/// <param name="onScopeCreated">An optional callback invoked once the scope has been created, but before instantiating the scene, with the provider as argument.</param>
|
|
/// <returns>The created node, with its dependencies satisfied.</returns>
|
|
Node Instantiate(PackedScene packedScene, Action<IProvider>? onScopeCreated = null);
|
|
} |