unity3d - “PlaySounds.audio”隐藏继承的成员 'Component.audio'。如果打算进行隐藏,请使用new关键字

标签 unity3d audio playsound

我看到了与此类似的错误,但对于视频,却找不到任何可以解释当前错误的地方。

我将在下面附加我的代码以供引用,有人知道错误在这里意味着什么吗?

using UnityEngine;
using System.Collections;

public class PlaySounds : MonoBehaviour {

public AudioClip SoundToPlay;
public float Volume;
AudioSource audio;
public bool alreadyPlayed = false;
void Start()
{
    audio = GetComponent<AudioSource>();
}

void OnTriggerEnter2D(Collider2D other)
{
    if (!alreadyPlayed)
    {
        audio.PlayOneShot(SoundToPlay, Volume);
        alreadyPlayed = true;
    }
}

}

最佳答案

MonoBehaviour类已经提供了一个名为“音频”的成员,因此您的PlaySounds类已经具有该成员。如果要忽略基类中的一个,则应这样声明:

private new AudioSource audio;

但是,如果您希望继承的成员以及您类的那个成员都可用,则只需为其命名,而不是“音频”。老实说,除非您有特殊原因要覆盖继承的成员,否则我会做。

关于unity3d - “PlaySounds.audio”隐藏继承的成员 'Component.audio'。如果打算进行隐藏,请使用new关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61121147/

相关文章:

c++ - 如何使用 Windows API 在 C++ 中播放声音?

c# - 如何停止从 UnityAds 和 Vungle 自动获取/加载广告?

algorithm - 按心情匹配下一首歌曲的库

audio - 使用类选择音频元素并播放它们

iphone - iPhone 上预建音频播放器 UI?

javascript - 随着文件大小的增加播放 wav 文件的音频

C++ PlaySound() 给出错误

c# - 原生 C/C++ 代码的 C++/CLI 包装器,无法在 Unity3D 中加载

c# - 如何在Unity Editor中运行两个游戏窗口

c# - 仅当特定攻击动画完成查询时才使对象实例化