Beispiel #1
0
        private static void ReregisterHierarchy(MyEntity entity, bool top = true)
        {
            if (entity.Hierarchy == null)
            {
                return;
            }

            RemovedGrids.Remove(entity.EntityId);

            foreach (var child in entity.Hierarchy.Children)
            {
                MyEntity childEntity = (MyEntity)child.Container.Entity;
                ReregisterHierarchy(childEntity, false);
                MyEntities.RegisterForUpdate(childEntity);
                //childEntity.AddToGamePruningStructure();

                //child.Container.Entity.InScene = true;
            }
            if (!top)
            {
                return;
            }

            MyEntities.RegisterForUpdate(entity);
            entity.AddToGamePruningStructure();

            /*
             * if ( !PluginSettings.Instance.DynamicConcealPhysics )
             *  return;
             *
             * if ( entity.Physics != null )
             *  entity.Physics.Enabled = true;
             */
            //UnregisteredEntities.Remove( entity );
        }
        private static void ReregisterHierarchy( MyEntity entity, bool top = true )
        {
            if ( entity.Hierarchy == null )
                return;

            RemovedGrids.Remove( entity.EntityId );

            foreach ( var child in entity.Hierarchy.Children )
            {
                MyEntity childEntity = (MyEntity)child.Container.Entity;
                ReregisterHierarchy( childEntity, false );
                MyEntities.RegisterForUpdate( childEntity );
                //childEntity.AddToGamePruningStructure();

                //child.Container.Entity.InScene = true;

            }
            if ( !top )
                return;

            MyEntities.RegisterForUpdate( entity );
            entity.AddToGamePruningStructure();
            /*
            if ( !PluginSettings.Instance.DynamicConcealPhysics )
                return;

            if ( entity.Physics != null )
                entity.Physics.Enabled = true;
                */
            //UnregisteredEntities.Remove( entity );
        }