/// <summary>
 /// Adds a entity to the scene.
 /// </summary>
 /// <param name="entity">The entity.</param>
 public void Add(Entity entity)
 {
     if (entity == null) return;
     entity.Scene = scene;
     entities.Add(entity.Id, entity);
     entity.Initialize();
     EntityAdded?.Invoke(this, new EntityEventArgs(entity));
 }
Beispiel #2
0
        /// <summary>
        /// Adds an entity to the manager
        /// </summary>
        /// <param name="aEntity"></param>
        public static void AddEntity(Entity aEntity)
        {
            //add entity to the master list
            if (!_masterList.Contains(aEntity))
            {
                //TODO: Double check this, essentially in order to perform this operation I have to temporarily cast
                //the master list to a list of game objects
                //GameObject.AddToList(_masterList, aEntity);
                _masterList.Add(aEntity);
            }

            if (_isInitialized)
            {
                aEntity.Initialize();
            }
        }
Beispiel #3
0
        public static void ComponentTest()
        {
            XEngineComponentTest testGame = new XEngineComponentTest();

            ScenegraphManager scenegraph = new ScenegraphManager( testGame ); ;
            Entity entity1 = null;
            Entity entity2 = null;
            Entity entity3 = null;
            testGame.InitDelegate = delegate {
                scenegraph.Initialize();

                entity1 = new Entity();
                PrimitiveRenderComponent.AddTestComponent( entity1, GeometricPrimitiveType.Sphere, 1.0f);
                MoveComponent.AddTestComponent( entity1 );
                entity1.Initialize();
                scenegraph.AddEntity( entity1, null );

                entity2 = new Entity();
                PrimitiveRenderComponent.AddTestComponent( entity2, GeometricPrimitiveType.Cube, 1.0f );
                entity2.Initialize();
                Transform transform2 = entity2.GetAttribute<Transform>( Attributes.TRANSFORM );
                transform2.Position = new Vector3( 0, 1.0f, 0 );
                transform2.Rotation = Matrix.CreateRotationY( MathHelper.PiOver4 );
                transform2.Scale = new Vector3( 0.5f );
                scenegraph.AddEntity( entity2, entity1 );

                entity3 = new Entity();
                PrimitiveRenderComponent.AddTestComponent( entity3, GeometricPrimitiveType.Cube, 1.0f );
                entity3.Initialize();
                Transform transform3 = entity3.GetAttribute<Transform>( Attributes.TRANSFORM );
                transform3.Position = new Vector3( 1.5f, 0, 0 );
                scenegraph.AddEntity( entity3, entity2 );

            };
            testGame.UpdateDelegate = delegate( GameTime gameTime ) {
                entity1.Update( gameTime );
                entity2.Update( gameTime );
                entity3.Update( gameTime );
                scenegraph.Update( gameTime );
            };
            testGame.DrawDelegate = delegate( GameTime gameTime ) {
                entity1.Draw( gameTime );
                entity2.Draw( gameTime );
                entity3.Draw( gameTime );
            };
            testGame.Run();
        }
Beispiel #4
0
        public static void ComponentTest()
        {
            XEngineComponentTest testGame = new XEngineComponentTest();

            Entity entity = null;
            testGame.InitDelegate = delegate {
                entity = new Entity();
                ModelRenderComponent.AddShipTestComponent( entity );
                AddTestComponent( entity );
                entity.Initialize();
            };
            testGame.UpdateDelegate = delegate( GameTime gameTime ) {
                entity.Update( gameTime );
            };
            testGame.DrawDelegate = delegate( GameTime gameTime ) {
                entity.Draw( gameTime );
            };
            testGame.Run();
        }
        public static void ComponentTest()
        {
            XEngineComponentTest testGame = new XEngineComponentTest();

            Entity entity1 = null;
            Entity entity2 = null;
            testGame.InitDelegate = delegate {
                entity1 = new Entity();
                AddTestComponent( entity1, GeometricPrimitiveType.Sphere, 2.0f );
                entity1.Initialize();

                entity2 = new Entity();
                AddTestComponent( entity2, GeometricPrimitiveType.Cube, 1.0f );
                Transform transform = entity2.GetAttribute<Transform>( Attributes.TRANSFORM );
                transform.Position = new Vector3( 5.0f, 0, 0 );
                transform.UpdateWorld(null);
                entity2.Initialize();
            };
            testGame.DrawDelegate = delegate( GameTime gameTime ) {
                entity1.Draw( gameTime );
                entity2.Draw( gameTime );
            };
            testGame.Run();
        }
Beispiel #6
0
 public override void Initialize()
 {
     fond_transition = new Entity();
     fond_transition.Initialize(new Pos(fond_transition.Pos.X ,fond_transition.Pos.Y));
     fond_transition.LoadContent("transition", "spirale");
 }
Beispiel #7
0
        public override void Initialize()
        {
            fond_interact = new Entity();
            fond_interact.Initialize(new Pos(fond_interact.Pos.X, fond_interact.Pos.Y + 470));
            fond_interact.LoadContent("interact", "bis");
            fond_interact.Opacity = 0.8f;

            talk = "";
            _idtext = 1;
            color_font = Color.White;
            vect.X = 30;
            vect.Y = 500;
            choice = 1;
            random = 0;
            ask = false;
        }
        public static void ComponentTest()
        {
            XEngineComponentTest testGame = new XEngineComponentTest();

            Entity entity1 = null;
            Entity entity2 = null;
            testGame.InitDelegate = delegate {
                entity1 = new Entity();
                AddShipTestComponent( entity1 );
                entity1.AddAttribute( Attributes.TRANSFORM, new Transform( new Vector3( 0, 1.0f, 0 ) ) );
                entity1.Initialize();

                entity2 = new Entity();
                AddGridTestComponent( entity2 );
                entity2.Initialize();
            };
            testGame.DrawDelegate = delegate( GameTime gameTime ) {
                entity1.Draw( gameTime );
                entity2.Draw( gameTime );
            };
            testGame.Run();
        }
 public void Add(Entity e)
 {
     if (m_enumeratingActiveSet) {
         m_addedEntities.Add (e);
     } else {
         e.LoadContent (Content);
         m_entities.Add (e);
         e.Initialize ();
     }
 }