Exemple #1
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        CircleGravity2D gravityRegion =
            other.gameObject.GetComponent <CircleGravity2D>();

        if (gravityRegion != null &&
            !_activeGravityRegions.ContainsKey(
                other.gameObject.GetInstanceID()))
        {
            _activeGravityRegions.Add(other.gameObject.GetInstanceID(),
                                      gravityRegion);
        }
    }
        private void SetUpScene()
        {
            _gravityReceiverObject =
                new GameObject(
                    "Gravity Receiver",
                    new System.Type[] { typeof(Rigidbody2D),
                                        typeof(CircleCollider2D),
                                        typeof(SpacialGravityReceiver) });
            _gravityReceiverObject.transform.position = new Vector3(0.0f,
                                                                    100.0f,
                                                                    0.0f);
            _rigidbody = _gravityReceiverObject.GetComponent <Rigidbody2D>();
            _rigidbody.gravityScale = 0.0f;
            _rigidbody.drag         = 0.0f;
            _rigidbody.mass         = 1.0f;
            CircleCollider2D circleCollider =
                _gravityReceiverObject.GetComponent <CircleCollider2D>();

            circleCollider.radius = 1.0f;
            SpacialGravityReceiver gravityReceiver =
                _gravityReceiverObject.GetComponent <SpacialGravityReceiver>();

            _gravityPlanet0 =
                new GameObject("Planet 0",
                               new System.Type[] { typeof(CircleCollider2D),
                                                   typeof(CircleGravity2D) });
            _gravityPlanet0.transform.position = (Vector3)_planet0Position;
            CircleCollider2D gravityRegion0 =
                _gravityPlanet0.GetComponent <CircleCollider2D>();

            gravityRegion0.radius = 30.0f;
            CircleGravity2D gravity0 =
                _gravityPlanet0.GetComponent <CircleGravity2D>();

            gravity0.mass = 1.0f;

            _gravityPlanet1 =
                new GameObject("Planet 1",
                               new System.Type[] { typeof(CircleCollider2D),
                                                   typeof(CircleGravity2D) });
            _gravityPlanet1.transform.position = (Vector3)_planet1Position;
            CircleCollider2D gravityRegion1 =
                _gravityPlanet1.GetComponent <CircleCollider2D>();

            gravityRegion1.radius = 30.0f;
            CircleGravity2D gravity1 =
                _gravityPlanet1.GetComponent <CircleGravity2D>();

            gravity1.mass = 1.0f;
        }
Exemple #3
0
        private void SetUpScene()
        {
            _testObject = new GameObject("Test Object");

            _gravityPlanet =
                new GameObject("Planet",
                               new System.Type[] { typeof(CircleCollider2D),
                                                   typeof(CircleGravity2D) });
            _gravityPlanet.transform.position = (Vector3)_planetPosition;
            CircleCollider2D _gravityRegion =
                _gravityPlanet.GetComponent <CircleCollider2D>();

            _gravityRegion.radius = 30.0f;
            _gravity      = _gravityPlanet.GetComponent <CircleGravity2D>();
            _gravity.mass = 1.0f;
        }