Search Unity

Take damage when hitting a object

Discussion in 'Scripting' started by Henkem79, May 30, 2016.

  1. Henkem79

    Henkem79

    Joined:
    May 19, 2016
    Posts:
    2
    I have a object (bush) with this script.
    And I whant the car (Player1 or Player2) that hit the bush to take damage.
    As it is now both cars take damage.

    /Henrik


    using UnityEngine;
    using System.Collections;

    public class Bush : MonoBehaviour
    {

    public int healthValue;
    public DamageHandler damageHandler;
    public DamageHandler2 damageHandler2;

    void Start()
    {
    {
    GameObject damageHandlerObject = GameObject.FindWithTag("Player1");
    if (damageHandlerObject != null)
    {
    damageHandler = damageHandlerObject.GetComponent<DamageHandler>();
    }
    if (damageHandler == null)
    {
    Debug.Log("Fail!");
    }
    }

    {
    GameObject damageHandler2Object = GameObject.FindWithTag("Player2");
    if (damageHandler2Object != null)
    {
    damageHandler2 = damageHandler2Object.GetComponent<DamageHandler2>();
    }
    if (damageHandler == null)
    {
    Debug.Log("Fail!");
    }
    }
    }

    void OnCollisionEnter2D()
    {

    if (GameObject.FindWithTag("Player1"))
    damageHandler.AddHealth(-1);


    GameObject.FindWithTag("Player2");
    damageHandler2.AddHealth(-1);


    }

    }