RaycastHit это структура, у которой нет метода GetComponent. Такой метод есть у
RaycastHit.transform:
private void Attack()
{
if (Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(new Vector2(Input.mousePosition.x, Input.mousePosition.y));
RaycastHit _hit;
if (Physics.Raycast(ray, out _hit))
{
if (_hit.collider.tag == "tree")
{
Hp tt = _hit.transform.GetComponent<Hp>();
if (tt != null)
{
tt._curHealth -= 1;
}
Debug.Log("Этот объект с тэгом tree");
}
}
}
}
И лучше не пользуйтесь GetComponent с аргументом-строкой, используйте универсальный метод как в примере выше, иначе ваш код сломается, если вы решите переименовать класс.