Esempio n. 1
0
        public override MyObjectBuilder_ComponentBase Serialize(bool copy = false)
        {
            MyObjectBuilder_TriggerBase base2 = base.Serialize(false) as MyObjectBuilder_TriggerBase;

            if (base2 != null)
            {
                base2.AABB           = this.m_AABB;
                base2.BoundingSphere = this.m_boundingSphere;
                base2.Type           = (int)this.m_triggerType;
                base2.Offset         = this.DefaultTranslation;
            }
            return(base2);
        }
Esempio n. 2
0
        public override void Deserialize(MyObjectBuilder_ComponentBase builder)
        {
            base.Deserialize(builder);
            MyObjectBuilder_TriggerBase base2 = builder as MyObjectBuilder_TriggerBase;

            if (base2 != null)
            {
                this.m_AABB             = (BoundingBoxD)base2.AABB;
                this.m_boundingSphere   = (BoundingSphereD)base2.BoundingSphere;
                this.m_triggerType      = (base2.Type == -1) ? TriggerType.AABB : ((TriggerType)base2.Type);
                this.DefaultTranslation = (Vector3D)base2.Offset;
            }
        }
        public override MyObjectBuilder_ComponentBase Serialize(bool copy = false)
        {
            var ob = base.Serialize() as MyObjectBuilder_TriggerAggregate;

            var reader = m_children.Reader;

            if (reader.Count > 0)
            {
                ob.AreaTriggers = new List <MyObjectBuilder_TriggerBase>(reader.Count);
                foreach (var trigger in reader)
                {
                    MyObjectBuilder_TriggerBase triggerOb = trigger.Serialize() as MyObjectBuilder_TriggerBase;
                    if (triggerOb != null)
                    {
                        ob.AreaTriggers.Add(triggerOb);
                    }
                }
            }

            return(ob);
        }
Esempio n. 4
0
        public override MyObjectBuilder_ComponentBase Serialize(bool copy = false)
        {
            MyObjectBuilder_TriggerAggregate aggregate = base.Serialize(false) as MyObjectBuilder_TriggerAggregate;
            ListReader <MyComponentBase>     reader    = this.m_children.Reader;

            if (reader.Count > 0)
            {
                aggregate.AreaTriggers = new List <MyObjectBuilder_TriggerBase>(reader.Count);
                using (List <MyComponentBase> .Enumerator enumerator = reader.GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        MyObjectBuilder_TriggerBase item = enumerator.Current.Serialize(false) as MyObjectBuilder_TriggerBase;
                        if (item != null)
                        {
                            aggregate.AreaTriggers.Add(item);
                        }
                    }
                }
            }
            return(aggregate);
        }