请帮我解决问题 c# unity 2d

问题描述 投票:0回答:2

我要求 chat gpt 为我创建一个攻击脚本,它想出了这个但是它抛出了一个错误

找不到类型或名称空间名称“Enemy”(是否缺少 using 指令或程序集引用?)

using UnityEngine;

public class Attack : MonoBehaviour
{
    public float damageAmount = 10f;
    public float attackRange = 1f;
    public LayerMask enemyLayer;
    public GameObject Enemy;

    //private Animator animator;

    void Start()
    {
        //animator = GetComponent<Animator>();
    }

    void Update()
    {
        if (Input.GetButtonDown("Fire1"))
        {
            Attack();
        }
    }

    void Attack()
    {
        //animator.SetTrigger("Attack");

        Collider2D[] hitEnemies = Physics2D.OverlapCircleAll(transform.position, attackRange, enemyLayer);

        foreach (Collider2D enemy in hitEnemies)
        {
            enemy.GetComponent<Enemy>().TakeDamage(damageAmount);
        }
    }

    void OnDrawGizmosSelected()
    {
        Gizmos.color = Color.red;
        Gizmos.DrawWireSphere(transform.position, attackRange);
    }
}

我需要创建攻击脚本

c# unity3d game-development unityscript
2个回答
0
投票

这可能是因为在 unity 中,你的脚本被命名为 Enemy,但在 visual studio 中,它被称为 Attack 尝试更改其中一个以使其匹配。


0
投票

创建一个游戏对象作为“敌人”。转到检查器面板并将“敌人”游戏对象附加到缺少的字段。

© www.soinside.com 2019 - 2024. All rights reserved.