Example #1
0
    bool CheckTriggers()
    {
        bool state = false;

        SphereCollider collider = GetComponent <SphereCollider>();

        GameObject[] magicObjects = GameObject.FindGameObjectsWithTag("MagicObject");

        foreach (GameObject obj in magicObjects)
        {
            if (collider.bounds.Contains(obj.transform.position))
            {
                if (sigils.Contains(Sigil.Fire))
                {
                    FlameObject flameScript = obj.GetComponent <FlameObject>();
                    if (flameScript != null && flameScript.IsLit == false)
                    {
                        flameScript.IsLit = true;
                        state             = true;
                    }
                }

                if (sigils.Contains(Sigil.Earth))
                {
                    DoorTrigger doorScript = obj.GetComponent <DoorTrigger>();
                    if (doorScript != null)
                    {
                        doorScript.Trigger();
                    }
                }
            }
        }

        return(state);
    }
Example #2
0
    void CheckForFlameObject(Collider other)
    {
        if (!other.isTrigger)
        {
            return;
        }

        FlameObject flameObject = other.GetComponentInParent <FlameObject>();

        if (flameObject == null)
        {
            return;
        }

        if (!isLit || flameObject.IsLit || !flameObject.isLightable || !canTransferFlame)
        {
            return;
        }

        flameObject.IsLit = true;
    }
 private void Start()
 {
     flameObject          = GetComponent <FlameObject>();
     flameObject.OnLight += DoOnLight;
 }