Esempio n. 1
0
    new void Start()
    {
        base.Start();
        holdingPoint    = characterController.ItemHoldingTransform;
        toCenterRotator = GetComponent <FaceAxis>();

        rb = GetComponent <Rigidbody2D>();
        physicsCollider = Array.Find(GetComponents <Collider2D>(), x => x.isTrigger == false);

        Assert.IsNotNull(rb);
        Assert.IsNotNull(physicsCollider);

        pickupCollider = Array.Find(GetComponents <Collider2D>(), x => x.isTrigger == true);
        if (!pickupCollider)
        {
            pickupCollider = this.gameObject.AddComponent <CircleCollider2D>();
            ((CircleCollider2D)pickupCollider).radius *= Mathf.Sqrt(2f);// * (1f + autoColliderSizeIncrement);
            ((CircleCollider2D)pickupCollider).radius += autoColliderSizeIncrement;
            pickupCollider.offset    = physicsCollider.offset;
            pickupCollider.isTrigger = true;
        }
    }
Esempio n. 2
0
    void SpawnGhost(Vector3 pos)
    {
        GameObject newGhost = (GameObject)Instantiate(Resources.Load("Editor/Block", typeof(GameObject)), pos, FaceAxis.GetRotator(pos));

        newGhost.AddComponent <LevelEditorObject>().PrefabName = "Editor/Block";
        foreach (Collider2D coll in newGhost.GetComponents <Collider2D>())
        {
            coll.enabled = false;
        }
        ghosts.Add(newGhost);
    }
Esempio n. 3
0
    void PlaceRing()
    {
        Vector3    pos        = GetPos();
        float      deltaAngle = 360 / angularGridDensity;
        Quaternion rotator    = Quaternion.Euler(0, 0, deltaAngle);

        for (int i = 0; i < angularGridDensity; i++)
        {
            pos = rotator * pos;
            GameObject        newObject = (GameObject)Instantiate(Resources.Load("Editor/Block", typeof(GameObject)), pos, FaceAxis.GetRotator(pos));
            LevelEditorObject leo       = newObject.AddComponent <LevelEditorObject>();
            leo.PrefabName             = "Editor/Block";
            leo.IsPlaced               = true;
            newObject.transform.parent = root.transform;
            //newObject.layer = layer;
            //objects.Add(newObject);
        }
    }
Esempio n. 4
0
    void SpawnRing()
    {
        Vector3    pos        = GetPos();
        float      deltaAngle = 360 / angularGridDensity;
        Quaternion rotator    = Quaternion.Euler(0, 0, deltaAngle);

        for (int i = 0; i < angularGridDensity; i++)
        {
            pos = rotator * pos;
            GameObject        newGhost = (GameObject)Instantiate(Resources.Load("Editor/Block", typeof(GameObject)), pos, FaceAxis.GetRotator(pos));
            LevelEditorObject leo      = newGhost.AddComponent <LevelEditorObject>();
            leo.PrefabName = "Editor/Block";
            leo.IsPlaced   = false;
            foreach (Collider2D coll in newGhost.GetComponents <Collider2D>())
            {
                coll.enabled = false;
            }
            ghosts.Add(newGhost);
            //newObject.transform.parent = root.transform;
            //newObject.layer = layer;
            //objects.Add(newObject);
        }
    }