[RESOLVIDO] Como colocar som na arma quando eu disparo?
3 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] Como colocar som na arma quando eu disparo?
Eu tentei fazer um som de disparo para a arma no meu jogo de fps.
Criei uma void shoot para executar quando eu clicasse no botao de disparo e as balas fossem maiores que 0. Assim:
if (Input.GetButtonDown("Fire1") && ammo > 0)
{
Shoot();
}
Aí na void shoot botei para reproduzir o som:
void Shoot()
{
if (ammo > 0)
{
ammo -= 1;
ammoParticles.Play();
GetComponent<AudioSource>.Play();
RaycastHit hit;
}
}
(abreviei o script aqui na mensagem para nao ficar longo)
Mas aí deu um erro que dizia:
'Component.GetComponent<T>()' is a method, which is not valid in the given context Assembly-CSharp D:\Project ShortSleep\Assets\Scripts\GunBehaviour.cs 78 Active
O que isso significa? Como posso resolver?
Criei uma void shoot para executar quando eu clicasse no botao de disparo e as balas fossem maiores que 0. Assim:
if (Input.GetButtonDown("Fire1") && ammo > 0)
{
Shoot();
}
Aí na void shoot botei para reproduzir o som:
void Shoot()
{
if (ammo > 0)
{
ammo -= 1;
ammoParticles.Play();
GetComponent<AudioSource>.Play();
RaycastHit hit;
}
}
(abreviei o script aqui na mensagem para nao ficar longo)
Mas aí deu um erro que dizia:
'Component.GetComponent<T>()' is a method, which is not valid in the given context Assembly-CSharp D:\Project ShortSleep\Assets\Scripts\GunBehaviour.cs 78 Active
O que isso significa? Como posso resolver?
ShutUpIAmSnow- Iniciante
- PONTOS : 1742
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
mas provavelmente vc vai ter que adicionar o seu GetComponent<AudioSource> à uma variável, e depois tentar dar play no audio dentro da void.
alefe c oliveira- Membro
- PONTOS : 1781
REPUTAÇÃO : 8
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
alefe c oliveira escreveu:tente trocar .play por .PlayOneShot();
alefe c oliveira- Membro
- PONTOS : 1781
REPUTAÇÃO : 8
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
- Código:
if (Input.GetButtonDown("Fire1"))
{
GetComponent<AudioSource>().Play();
}
o meu funcionou assim.
vou tentar simular o que vc fez pra ver qual erro.
alefe c oliveira- Membro
- PONTOS : 1781
REPUTAÇÃO : 8
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
bom amigo, testei aqui, está funcionando, tanto da forma como falei quanto da sua. unica coisa que mudei foi o if(input.getkeydown("fire1") && ammo > 0), porque não há necessidade ja que no segundo if vc ja testa se a variavel ammo é maior que 0.
segue script:
segue script:
- Código:
using UnityEngine;
public class playAudio : MonoBehaviour
{
public int ammo = 5;
void Update()
{
if (Input.GetButtonDown("Fire1"))
{
Shoot();
}
}
void Shoot()
{
if (ammo > 0)
{
ammo -= 1;
http://ammoParticles.Play();
GetComponent<AudioSource>().Play();
//RaycastHit hit;
}
}
}
alefe c oliveira- Membro
- PONTOS : 1781
REPUTAÇÃO : 8
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
lembrando que o script deve estar no mesmo objeto que o audio source.
alefe c oliveira- Membro
- PONTOS : 1781
REPUTAÇÃO : 8
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
Agora que vi. Tem um erro de sintaxe no seu codigo, ao inves de "GetComponent<AudioSource>().Play();", você colocou "GetComponent<AudioSource>.Play();".faltou "()" depois do "<AudioSource>".ShutUpIAmSnow escreveu:Eu tentei fazer um som de disparo para a arma no meu jogo de fps.
Criei uma void shoot para executar quando eu clicasse no botao de disparo e as balas fossem maiores que 0. Assim:
if (Input.GetButtonDown("Fire1") && ammo > 0)
{
Shoot();
}
Aí na void shoot botei para reproduzir o som:
void Shoot()
{
if (ammo > 0)
{
ammo -= 1;
ammoParticles.Play();
GetComponent<AudioSource>.Play();
RaycastHit hit;
}
}
(abreviei o script aqui na mensagem para nao ficar longo)
Mas aí deu um erro que dizia:
'Component.GetComponent<T>()' is a method, which is not valid in the given context Assembly-CSharp D:\Project ShortSleep\Assets\Scripts\GunBehaviour.cs 78 Active
O que isso significa? Como posso resolver?
alefe c oliveira- Membro
- PONTOS : 1781
REPUTAÇÃO : 8
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
alefe c oliveira escreveu:Agora que vi. Tem um erro de sintaxe no seu codigo, ao inves de "GetComponent<AudioSource>().Play();", você colocou "GetComponent<AudioSource>.Play();".faltou "()" depois do "<AudioSource>".ShutUpIAmSnow escreveu:Eu tentei fazer um som de disparo para a arma no meu jogo de fps.
Criei uma void shoot para executar quando eu clicasse no botao de disparo e as balas fossem maiores que 0. Assim:
if (Input.GetButtonDown("Fire1") && ammo > 0)
{
Shoot();
}
Aí na void shoot botei para reproduzir o som:
void Shoot()
{
if (ammo > 0)
{
ammo -= 1;
ammoParticles.Play();
GetComponent<AudioSource>.Play();
RaycastHit hit;
}
}
(abreviei o script aqui na mensagem para nao ficar longo)
Mas aí deu um erro que dizia:
'Component.GetComponent<T>()' is a method, which is not valid in the given context Assembly-CSharp D:\Project ShortSleep\Assets\Scripts\GunBehaviour.cs 78 Active
O que isso significa? Como posso resolver?
Amigo, de uma olhada nas regras do fórum, especialmente a de número 3:
3- Não é permitido postar novamente em um tópico mais de três vezes seguidas. Caso queira adicionar algo depois de três posts consecutivos, aguarde 24h.
a regra limita a quantidade de postagens seguidas em 3, você postou 7 vezes seguidas. Evite isto, para mantermos a organização do tópico e do fórum em si
JohnRambo- Moderador
- PONTOS : 5171
REPUTAÇÃO : 661
Idade : 24
Áreas de atuação : Unity;
Programação;
Música e Sonorização;
Graduado em Análise e Desenvolvimento de Sistemas;
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
ok, desculpe.JohnRambo escreveu:alefe c oliveira escreveu:Agora que vi. Tem um erro de sintaxe no seu codigo, ao inves de "GetComponent<AudioSource>().Play();", você colocou "GetComponent<AudioSource>.Play();".faltou "()" depois do "<AudioSource>".ShutUpIAmSnow escreveu:Eu tentei fazer um som de disparo para a arma no meu jogo de fps.
Criei uma void shoot para executar quando eu clicasse no botao de disparo e as balas fossem maiores que 0. Assim:
if (Input.GetButtonDown("Fire1") && ammo > 0)
{
Shoot();
}
Aí na void shoot botei para reproduzir o som:
void Shoot()
{
if (ammo > 0)
{
ammo -= 1;
ammoParticles.Play();
GetComponent<AudioSource>.Play();
RaycastHit hit;
}
}
(abreviei o script aqui na mensagem para nao ficar longo)
Mas aí deu um erro que dizia:
'Component.GetComponent<T>()' is a method, which is not valid in the given context Assembly-CSharp D:\Project ShortSleep\Assets\Scripts\GunBehaviour.cs 78 Active
O que isso significa? Como posso resolver?
Amigo, de uma olhada nas regras do fórum, especialmente a de número 3:
3- Não é permitido postar novamente em um tópico mais de três vezes seguidas. Caso queira adicionar algo depois de três posts consecutivos, aguarde 24h.
a regra limita a quantidade de postagens seguidas em 3, você postou 7 vezes seguidas. Evite isto, para mantermos a organização do tópico e do fórum em si
alefe c oliveira- Membro
- PONTOS : 1781
REPUTAÇÃO : 8
Respeito as regras :
Re: [RESOLVIDO] Como colocar som na arma quando eu disparo?
alefe c oliveira escreveu:Agora que vi. Tem um erro de sintaxe no seu codigo, ao inves de "GetComponent<AudioSource>().Play();", você colocou "GetComponent<AudioSource>.Play();".faltou "()" depois do "<AudioSource>".ShutUpIAmSnow escreveu:Eu tentei fazer um som de disparo para a arma no meu jogo de fps.
Criei uma void shoot para executar quando eu clicasse no botao de disparo e as balas fossem maiores que 0. Assim:
if (Input.GetButtonDown("Fire1") && ammo > 0)
{
Shoot();
}
Aí na void shoot botei para reproduzir o som:
void Shoot()
{
if (ammo > 0)
{
ammo -= 1;
ammoParticles.Play();
GetComponent<AudioSource>.Play();
RaycastHit hit;
}
}
(abreviei o script aqui na mensagem para nao ficar longo)
Mas aí deu um erro que dizia:
'Component.GetComponent<T>()' is a method, which is not valid in the given context Assembly-CSharp D:\Project ShortSleep\Assets\Scripts\GunBehaviour.cs 78 Active
O que isso significa? Como posso resolver?
Obrigado! Era isso mesmo, o erro de sintaxe!
ShutUpIAmSnow- Iniciante
- PONTOS : 1742
REPUTAÇÃO : 0
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] Como fazer para colocar um objeto Parente do outro?
» Como colocar o personagem a piscar quando bate num espinho por exemplo e perde vida???
» [RESOLVIDO] Como faço para colocar modo de 'Criação de Personagem'?
» [RESOLVIDO] COMO EXECUTAR AUDIO QUANDO PLAYER MORRE
» [RESOLVIDO]TEM COMO COLOCAR UM OBJETO 3D NO CANVAS?
» Como colocar o personagem a piscar quando bate num espinho por exemplo e perde vida???
» [RESOLVIDO] Como faço para colocar modo de 'Criação de Personagem'?
» [RESOLVIDO] COMO EXECUTAR AUDIO QUANDO PLAYER MORRE
» [RESOLVIDO]TEM COMO COLOCAR UM OBJETO 3D NO CANVAS?
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos