void Start()
 {
     flame          = GetComponentInChildren <FlameBehaviour>();
     flame.vitality = 0;
     isChanging     = false;
     isRunning      = false;
     wayPoints      = FindObjectOfType <WayPoints>();
     target         = wayPoints.points [0];
     rb             = GetComponent <Rigidbody>();
 }
    private void Update()
    {
        if (pickedUp)
        {
            //lit.enabled = false;
            gameObject.layer = pickedUpLayer;
            rb.isKinematic   = true;
            col.enabled      = false;
            sway.enabled     = true;
            Collider[] inRange = Physics.OverlapSphere(transform.position, 1f);

            for (int i = 0; i < inRange.Length; i++)
            {
                FlameBehaviour flame = inRange[i].GetComponentInChildren <FlameBehaviour>();
                if (flame)
                {
                    Instantiate(flame.healParticles, flame.transform);
                    flame.vitality += restoration;
                    flame.vitality  = Mathf.Clamp(flame.vitality, 0, 100);
                    GetComponentInParent <PlayerController>().isHolding = false;
                    Destroy(gameObject);
                }
            }
        }
        else
        {
            gameObject.layer = 0;
            lit.enabled      = true;
            col.enabled      = true;
            sway.enabled     = false;

            Collider[] playerInRange = Physics.OverlapSphere(transform.position, 2f, playerLayer);

            if (playerInRange.Length > 0 && playerInRange[0].GetComponent <PlayerController>() && Input.GetMouseButtonDown(0))
            {
                PickUp(playerInRange[0].GetComponent <PlayerController>());
            }
        }
    }
Exemple #3
0
 // Use this for initialization
 void Start()
 {
     flame          = GetComponentInChildren <FlameBehaviour>();
     flame.vitality = 100;
 }
Exemple #4
0
 //Waypoint events are called whenever the energy source reaches the waypoint. Abstract, so must be overridden.
 public abstract void Execute(FlameBehaviour flame);