using Godot; using PositionalEntity = Babushka.scripts.CSharp.GameEntity.Entities.PositionalEntity; namespace Babushka.scripts.CSharp.GameEntity.Management; public static class EntityManagerUtil { public static void AddIfNeeded(this EntitySceneContainer? self, PositionalEntity entity) { if(self == null) return; if(self.sceneName != entity.sceneName) return; self.AddEntity(entity); } public static bool IsValid(this T? node) where T : GodotObject { return node != null && GodotObject.IsInstanceValid(node) && !node.IsQueuedForDeletion(); } }