Exemple #1
0
        protected void Init(RangeGameObjectV2 RangeGameObjectV2, RangeObjectInitialization RangeObjectInitialization)
        {
            this.RangeGameObjectV2         = RangeGameObjectV2;
            this.RangeObjectInitialization = RangeObjectInitialization;

            this.RangeIntersectionV2System = new RangeIntersectionV2System(this);
            this.RangeExternalPhysicsOnlyListenersSystem = new RangeExternalPhysicsOnlyListenersSystem(this, this.RangeGameObjectV2.InteractiveInteractiveObjectPhysicsListener);
            if (RangeObjectInitialization.IsTakingIntoAccountObstacles)
            {
                this.RangeObstacleListenerSystem = new RangeObstacleListenerSystem(this, this.RangeGameObjectV2.InteractiveInteractiveObjectPhysicsListener);
            }

            this.RangeEventsManager.OnRangeObjectCreated(this);
        }
Exemple #2
0
        public static RangeObjectV2 Build(GameObject AssociatedGameObject, RangeObjectInitialization RangeObjectInitialization, CoreInteractiveObject AssociatedInteractiveObject, string objectName = "")
        {
            switch (RangeObjectInitialization)
            {
            case SphereRangeObjectInitialization SphereRangeObjectInitialization:
                return(new SphereRangeObjectV2(AssociatedGameObject, SphereRangeObjectInitialization, AssociatedInteractiveObject, objectName));

            case BoxRangeObjectInitialization BoxRangeObjectInitialization:
                return(new BoxRangeObjectV2(AssociatedGameObject, BoxRangeObjectInitialization, AssociatedInteractiveObject, objectName));

            case FrustumRangeObjectInitialization FrustumRangeObjectInitialization:
                return(new FrustumRangeObjectV2(AssociatedGameObject, FrustumRangeObjectInitialization, AssociatedInteractiveObject, objectName));

            case RoundedFrustumRangeObjectInitialization RoundedFrustumRangeObjectInitialization:
                return(new RoundedFrustumRangeObjectV2(AssociatedGameObject, RoundedFrustumRangeObjectInitialization, AssociatedInteractiveObject, objectName));
            }

            return(null);
        }
Exemple #3
0
        private void CommontInit(RangeObjectInitialization RangeObjectInitialization, RangeObjectV2 RangeObjectV2, CoreInteractiveObject AssociatedInteractiveObject, string objectName)
        {
            this.assocaitedRangeObject = RangeObjectV2;
            this.RangeGameObject       = new GameObject(objectName);
            if (this.attachedGameObject != null)
            {
                this.RangeGameObject.transform.parent = this.attachedGameObject.transform;
            }

            this.RangeGameObject.transform.localRotation = Quaternion.identity;
            this.RangeGameObject.transform.localPosition = Vector3.zero;

            var rigidbody = this.RangeGameObject.AddComponent <Rigidbody>();

            rigidbody.useGravity  = false;
            rigidbody.isKinematic = true;

            this.InteractiveInteractiveObjectPhysicsListener = this.RangeGameObject.AddComponent <InteractiveInteractiveObjectPhysicsListener>();
            this.InteractiveInteractiveObjectPhysicsListener.Init(AssociatedInteractiveObject);
        }
Exemple #4
0
        public static RangeObjectV2 FromRangeObjectInitialization(RangeObjectInitialization RangeObjectInitialization, GameObject parent)
        {
            RangeObjectV2 rangeObjectV2 = null;

            if (RangeObjectInitialization.GetType() == typeof(SphereRangeObjectInitialization))
            {
                rangeObjectV2 = new SphereRangeObjectV2(parent, (SphereRangeObjectInitialization)RangeObjectInitialization, null);
            }
            else if (RangeObjectInitialization.GetType() == typeof(BoxRangeObjectInitialization))
            {
                rangeObjectV2 = new BoxRangeObjectV2(parent, (BoxRangeObjectInitialization)RangeObjectInitialization, null);
            }
            else if (RangeObjectInitialization.GetType() == typeof(FrustumRangeObjectInitialization))
            {
                rangeObjectV2 = new FrustumRangeObjectV2(parent, (FrustumRangeObjectInitialization)RangeObjectInitialization, null);
            }
            else if (RangeObjectInitialization.GetType() == typeof(RoundedFrustumRangeObjectInitialization))
            {
                rangeObjectV2 = new RoundedFrustumRangeObjectV2(parent, (RoundedFrustumRangeObjectInitialization)RangeObjectInitialization, null);
            }

            return(rangeObjectV2);
        }