i know im doing this really wrong help if possible (trying to set the target automatically on start up to the player (PC)
but unsure how i know every thing i has work when i drag the object to the target but i need to auto target
///
/// EnemyAttack.cs
/// Oct 20, 2010
///
/// This is a very basic Mob Attack script that we are going to use to get use to coding in C# and Unity
///
/// This script is ment to be attached to a mob, or a mob prefab
///
using UnityEngine;
using System.Collections;
public class EnemyAttack : MonoBehaviour {
public GameObject target;
public float attackTimer;
public float coolDown;
public string playertarget;
// Use this for initialization
void Start () {
attackTimer = 0;
coolDown = 2.5f;
PC = GameObject.FindGameObjectWithTag("PC");
}
// Update is called once per frame
void Update () {
if(attackTimer > 0)
attackTimer -= Time.deltaTime;
if(attackTimer < 0)
attackTimer = 0;
if(attackTimer == 0) {
Attack();
attackTimer = coolDown;
PC.PLAYER_TAG("PC")// i know im doing this really wrong help if possible (trying to set the target automaticly on start up to the player (PC)
//but unsure how i know every thing i has work when i drag the object to the target but i need to auto target
}
}
private void Attack() {
float distance = Vector3.Distance(target.transform.position, transform.position);
Vector3 dir = (target.transform.position - transform.position).normalized;
float direction = Vector3.Dot(dir, transform.forward);
if(distance < 2.5f) {
if(direction > 0) {
PlayerHealth eh = (PlayerHealth)target.GetComponent("PlayerHealth");
eh.AddjustCurrentHealth(-10);
}
}
}
}