Я хочу сделать урон по игроку, всё работает, но урон наносится 2-3 раза, вот код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DamageScript : MonoBehaviour
{
public int damageEnemy = 10;
private void OnCollisionEnter(Collision collision)
{
Debug.Log("Касание игрока!");
PlayerHealth.Damage(damageEnemy);
}
}
И код самого хп игрока:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;
using UnityEngine.SceneManagement;
public class PlayerHealth : MonoBehaviour
{
public static int PlayerHealh;
public static bool GameOver;
public TextMeshProUGUI PlayerHealhText;
public Animator anim;
public GameObject healthText;
public int Health;
void Start()
{
PlayerHealh = Health;
GameOver = false;
}
void Update()
{
PlayerHealhText.text = "" + PlayerHealh;
if(GameOver)
{
anim.SetTrigger("Death");
healthText.SetActive(false);
}
}
public static void Damage (int damageEnemy)
{
PlayerHealh -= damageEnemy;
if(PlayerHealh <= 0)
{
GameOver = true;
}
}
}
Я пытался всунуть туда корутину, но она не работала