using MyUniverse.Shared.Behaviours; using Engine.Core; using Engine.Integration.MonoGame; using Engine.Systems.Tween; namespace MyUniverse.Shared; public static class UniverseSource { public static void ApplyCore(IUniverse universe) { universe.InstantiateUniverseObject().SetUniverseObject("Core Managers") .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour(); MonoGameCamera2D camera = universe.InstantiateUniverseObject().SetUniverseObject("Camera") .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour(); camera.Zoom = 20f; } public static void ApplyUniverse(IUniverse universe) { ApplyCore(universe); IUniverseObject exampleObject = universe.InstantiateUniverseObject().SetUniverseObject("Example Object"); ExampleBehaviour exampleBehaviour = exampleObject.BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject() .SetUniverseObject("Rotating Triangle") .BehaviourController.AddBehaviour().SetTransform(position: new(10f, 6f), scale: Vector2D.One * 5) .BehaviourController.AddBehaviour(Shape2D.Triangle, new ColorRGB(0, 128, 128)) .BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject() .SetUniverseObject("Rotating Pentagon") .BehaviourController.AddBehaviour().SetTransform(position: new(10f, -6f), scale: Vector2D.One * 5) .BehaviourController.AddBehaviour(Shape2D.Pentagon, new ColorRGB(128, 0, 128)) .BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject() .SetUniverseObject("Rotating Triangle") .BehaviourController.AddBehaviour().SetTransform(position: new(-10f, 6f), scale: Vector2D.One * 5) .BehaviourController.AddBehaviour(Shape2D.Triangle, new ColorRGB(0, 128, 128)) .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject() .SetUniverseObject("Rotating Pentagon") .BehaviourController.AddBehaviour().SetTransform(position: new(-10f, -6f), scale: Vector2D.One * 5) .BehaviourController.AddBehaviour(Shape2D.Pentagon, new ColorRGB(128, 0, 128)) .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour(); } }