Пример #1
0
 private void EventLogic(object obj, CollisionType type, TriggerStyle style,
                         CollisionResolutionData data = new CollisionResolutionData())
 {
     OnCollision?.Invoke(obj, new CollisionEventArgs("")
     {
         CType = type, TStyle = style, CData = data
     });
 }
Пример #2
0
 protected BasePhysObject()
 {
     Shape = PhysicShape.None;
     Type  = CollisionType.None;
     _currentCollisions = new List <BasePhysObject>();
     _prevCollisions    = new List <BasePhysObject>();
     Style = TriggerStyle.None;
     CollisionObjectType = CollisionObjectType.Static;
     ParentPhysics       = null;
 }
Пример #3
0
 protected void SetTriggerStyle(TriggerStyle style)
 {
     CollisionObjects[TRIGGER_INDEX].Style = style;
 }
Пример #4
0
        public override void XmlDeserialize(XElement element)
        {
            if (element != null)
            {
                var enabledAtt = element.Attribute("isEnabled");
                if (enabledAtt != null)
                {
                    this.IsEnabled = bool.Parse(enabledAtt.Value);
                }

                var reuseableAtt = element.Attribute("isReuseable");
                if (reuseableAtt != null)
                {
                    this.IsReusable = bool.Parse(reuseableAtt.Value);
                }

                var styleAtt = element.Attribute("style");
                if (styleAtt != null)
                {
                    this.Style = (TriggerStyle)Enum.Parse(typeof(TriggerStyle), styleAtt.Value);
                }

                foreach (TriggerMode mode in Enum.GetValues(typeof(TriggerMode)))
                {
                    var modeEle = element.Element(mode.ToString());
                    if (modeEle != null)
                    {
                        foreach (var modifierEle in modeEle.Elements("Modifier"))
                        {
                            this.modifiers[mode].Add(modifierEle.Attribute("name").Value, null);
                        }
                    }
                }
            }
        }