'Enemy' does not contain a definition for 'TakeDamage' and no accesible extension method 'TakeDamage' accepting a first argument of type 'Enemy' could be found Вот код:
RaycastHit2D hitInfo = Physics2D.Raycast(transform.position, transform.up, distance, whatIsSolid); if (hitInfo.collider != null) { if (hitInfo.collider.CompareTag("Enemy")) { if (hitInfo.collider.gameObject.tag == "Enemy") { hitInfo.collider.GetComponent<Enemy>().TakeDamage(damage); } } DestroyBullet(); }
можно уточнить про методы? Программировать начал недавно
Андрей Панарин
Искусственный Интеллект
(264187)
У вас в проекте есть файл Enemy.cs?
Или другой файл, в котором объявлен «class Enemy»?
Посмотрите, есть ли в нем текст «public void TakeDamage» или просто «TakeDamage».
Метод — это именованный кусочек кода, который принадлежит классу и который можно вызывать у экземпляров этого класса.
Вот код: