using UnityEngine;
using System.Collections;
public class enemyDamage : MonoBehaviour {
public float Damage;
public float DamageRate;
public float PuskBackForce;
float nextDamage;
bool PlayerInRange = false;
GameObject thePlayer;
PlayerHealth thePlayerHealth;
void Start () {
nextDamage = Time.time;
thePlayer = GameObject.FindGameObjectWithTag ("Player");
thePlayerHealth = thePlayer.GetComponent<PlayerHealth>();
}
// Update is called once per frame
void Update () {
if(PlayerInRange) Attack ();
}
void OnTriggerEnter (Collider other){
if (other.tag == "Player") {
PlayerInRange = true;
}
}
void OnTriggerExit (Collider other) {
if (other.tag == "PLayer"){
PlayerInRange = false;
}
}
void Attack(){
if (nextDamage <= Time.time ){
thePlayerHealth.addDamage(Damage);
nextDamage = Time.time + DamageRate;
PushBack (thePlayer.transform);
}
}
void PushBack (Transform pushedobject){
Vector3 pushDirection = new Vector3 (0, (pushedobject.position.y - transform.position.y), 0).normalized;
pushDirection *= PuskBackForce;
Rigidbody pushedRB = pushedobject.GetComponent <Rigidbody> ();
pushedRB.velocity = Vector3.zero;
pushedRB.AddForce (pushDirection, ForceMode.Impulse);
}
}