I have made a script there I make damage to enemy, but when I kill one enemy I getting “Missing Object”.
Do I need to loop instead?
My code it’s:
public class playerDamage : MonoBehaviour
{
public int melee = 25;
public GameObject player;
public GameObject enemy;
private enemyHealth enemyHealthScript;
private float dist;
void Awake()
{
player = GameObject.Find ("Player");
enemy = GameObject.FindGameObjectWithTag ("Enemy");
enemyHealthScript = enemy.GetComponent<enemyHealth> ();
}
void Start() {
}
void Update()
{
MeleeDamage ();
}
void MeleeDamage()
{
if (Input.GetKeyDown (KeyCode.Alpha1))
{
if (player)
{
dist = Vector3.Distance (player.transform.position, enemy.transform.position);
if (dist < 2)
{
enemyHealthScript.eHealth -= melee;
}
}
}
}
}
The reason I suggested SphereCastAll is because of situations where the circle kick hits multiple enemies. So in such situations, you would get back an array of all the hits, then you can check them to see which enemies were hit.
– DungeonBrickStudios