2017-05-26 17 views
0

私は最初のゲームを作っています。私はサウンドスクリプティングにいくつか問題があります。私がしたいことは、GameObjectの "キー"が階層内でアクティブなときに、サウンドを一度再生したいということです。あなたが現在クリップにAudioSource放尿している`UnityEngine.AudioSource '式を` UnityEngine.AudioClip'に変換することはできません

public static void PlayClipAtPoint(AudioClip clip, Vector3 position, float volume = 1.0F); 

Assets/Scripts/keyUnlock.cs(17,16): error CS1502: The best overloaded  method match for `UnityEngine.AudioSource.PlayClipAtPoint(UnityEngine.AudioClip, UnityEngine.Vector3)' has some invalid arguments 
Assets/Scripts/keyUnlock.cs(17,33): error CS1503: Argument `#1' cannot convert `UnityEngine.AudioSource' expression to type `UnityEngine.AudioClip' 

答えて

1

ThisAudioSource.PlayClipAtPoint機能の青写真である:私はこれらの2つのエラーを取得しUnityEngineでとても

using System.Collections; 
using System.Collections.Generic; 
using UnityEngine; 

public class keyUnlock : MonoBehaviour 
{ 
    public GameObject key; 
    public AudioSource clip; 

    int keySoundsTotalCount = 1; 
    int keySoundsPlayed = 0; 

    public void KeyUnlocks() 
    { 
     if (key.activeInHierarchy == true) 
     { 
      AudioSource.PlayClipAtPoint (clip, transform.position); // <---here 
      keySoundsPlayed++; 
     } 
    } 
} 

:ここで私のスクリプトですパラメータはAudioClipです。

public AudioSource clip;からpublic AudioClip clip;に変更するだけです。

関連する問題