Esempio n. 1
0
    public void RemoveLadder()
    {
        PhysicsColliderEnabled = true;
        if (LadderBlock == this)
        {
            LadderBlock = null;
        }

        Destroy(_ladderOverlay);
        _ladderOverlay = null;
    }
Esempio n. 2
0
    void SetHazardBlocksEnabled(bool enable)
    {
        Vector3 startPos = transform.position;
        Vector3 endPos   = destination.transform.position;
        float   distance = Vector3.Distance(startPos, endPos);

        RaycastHit[] hits = Physics.RaycastAll(startPos, endPos - startPos, distance);
        foreach (var hit in hits)
        {
            HazardBlock hb = hit.collider.GetComponent <HazardBlock>();
            if (hb != null)
            {
                hb.PhysicsColliderEnabled = enable;
            }
        }
    }
Esempio n. 3
0
    void LayDownLadder(Vector3 rotation)
    {
        if (LadderBlock != null)
        {
            LadderBlock.RemoveLadder();
        }

        PhysicsColliderEnabled = false;
        LadderBlock            = this;

        _ladderOverlay = Instantiate(ladderOverlayPrefab) as GameObject;

        Transform t = _ladderOverlay.transform;

        t.SetParent(transform);
        t.localPosition = 0.05f * Vector3.up;
        t.Rotate(rotation);
    }