Sistema de alavancas com som
3 participantes
Página 1 de 1
Sistema de alavancas com som
Olá
Comprei um sistema de alavancas na loja da Unity, funciona perfeito, apenas não tem som de nada e a alavanca parece bem leve haha e queria colocar um som na alavanca quando mudar de posição e um no objeto, como uma parede, ou fosso se abrirem, posso ceder o projeto para seu site completo sem problemas se me ajudar como cooperação
Teria como me ajudar? como faço? colo aqui o script? mando por e-mail?
Obrigado desde já
Comprei um sistema de alavancas na loja da Unity, funciona perfeito, apenas não tem som de nada e a alavanca parece bem leve haha e queria colocar um som na alavanca quando mudar de posição e um no objeto, como uma parede, ou fosso se abrirem, posso ceder o projeto para seu site completo sem problemas se me ajudar como cooperação
Teria como me ajudar? como faço? colo aqui o script? mando por e-mail?
Obrigado desde já
suportesouza- Iniciante
- PONTOS : 3063
REPUTAÇÃO : 0
Respeito as regras :
Re: Sistema de alavancas com som
suportesouza escreveu:Olá
Comprei um sistema de alavancas na loja da Unity, funciona perfeito, apenas não tem som de nada e a alavanca parece bem leve haha e queria colocar um som na alavanca quando mudar de posição e um no objeto, como uma parede, ou fosso se abrirem, posso ceder o projeto para seu site completo sem problemas se me ajudar como cooperação
Teria como me ajudar? como faço? colo aqui o script? mando por e-mail?
Obrigado desde já
Eduardoro39- Avançado
- PONTOS : 3258
REPUTAÇÃO : 11
Idade : 24
Respeito as regras :
Re: Sistema de alavancas com som
Um simples Audio.Play com um loop acredito que já resolva.
Tem como postar os scripts ai?
Tem como postar os scripts ai?
Re: Sistema de alavancas com som
Tem vários scripts, to tentando montar aqui com o que to vendo no site como adaptar, vou tentar mais um pouco se não conseguir vou pedir água haha
Colocar apenas audioplay não resolveu, ele faz uma ação com o botão esquerdo do mouse para movimenta-la, e não identifica o clique no script.
De qualquer forma, conseguindo ou não eu vou postar aqui os scripts pra ajudar na comunidade, é muito bacana.
Colocar apenas audioplay não resolveu, ele faz uma ação com o botão esquerdo do mouse para movimenta-la, e não identifica o clique no script.
De qualquer forma, conseguindo ou não eu vou postar aqui os scripts pra ajudar na comunidade, é muito bacana.
suportesouza- Iniciante
- PONTOS : 3063
REPUTAÇÃO : 0
Respeito as regras :
Re: Sistema de alavancas com som
Poste os scripts, ai podemos identificar qual comando que gera a animação, e fazer o áudio partir dali :D
Re: Sistema de alavancas com som
Se puderem me ajudar então, passei o dia nisso tentando ver vídeos daqui e tentar encaixar mas não funfa haha
O projeto é este:
Web Demo:
http://www.lylekgames.com/demo_dungeonlevers
Link na asset store
https://www.assetstore.unity3d.com/en/#!/content/19707
--------------------------------------------------
Pelo compreendi tem um sistema de controle central, ele fica separado das alavancas
Touch Imput
Standalone Imput módule
Animation Switch (event system)
Depois tem script somente na alavanca em um todo:
Que são os seguintes scripts:
MoveTowards.js
Animation Switch
E por último, essa configuração em mais uma parte, mas não tem script
A estrutura básica é esta:
Se faltou mais alguma coisa posso ir complementando, não ví nada de mais na pasta.
O projeto é este:
Web Demo:
http://www.lylekgames.com/demo_dungeonlevers
Link na asset store
https://www.assetstore.unity3d.com/en/#!/content/19707
--------------------------------------------------
Pelo compreendi tem um sistema de controle central, ele fica separado das alavancas
Touch Imput
- Código:
#pragma strict
//This script plays the levers' animations, when activated.
var animations : String[]; //name of animations to play
private var interval : int = 0; //which animation we're on
//set starting animation to end | lever will sit idle, instead of playing animation at start
function Start () {
var anim : String = GetComponent.<Animation>().clip.name;
GetComponent.<Animation>()[anim].time = GetComponent.<Animation>()[anim].length;
}
function Activate() {
//play next animation
GetComponent.<Animation>().CrossFade(animations[interval]);
interval += 1;
//reset to first animation
if(interval >= animations.length) {
interval = 0;
}
}
Standalone Imput módule
- Código:
#pragma strict
//This script plays the levers' animations, when activated.
var animations : String[]; //name of animations to play
private var interval : int = 0; //which animation we're on
//set starting animation to end | lever will sit idle, instead of playing animation at start
function Start () {
var anim : String = GetComponent.<Animation>().clip.name;
GetComponent.<Animation>()[anim].time = GetComponent.<Animation>()[anim].length;
}
function Activate() {
//play next animation
GetComponent.<Animation>().CrossFade(animations[interval]);
interval += 1;
//reset to first animation
if(interval >= animations.length) {
interval = 0;
}
}
Animation Switch (event system)
- Código:
#pragma strict
//This script plays the levers' animations, when activated.
var animations : String[]; //name of animations to play
private var interval : int = 0; //which animation we're on
//set starting animation to end | lever will sit idle, instead of playing animation at start
function Start () {
var anim : String = GetComponent.<Animation>().clip.name;
GetComponent.<Animation>()[anim].time = GetComponent.<Animation>()[anim].length;
}
function Activate() {
//play next animation
GetComponent.<Animation>().CrossFade(animations[interval]);
interval += 1;
//reset to first animation
if(interval >= animations.length) {
interval = 0;
}
}
Depois tem script somente na alavanca em um todo:
Que são os seguintes scripts:
MoveTowards.js
- Código:
#pragma strict
//This script moves an object from one position to another, and if activated again, will move it back
var myObject : Transform; //object to move
var speed : float = 5; //how fast the objects moves
var newPos : Vector3; //where we want the object to move to
private var startPos : Vector3; //object's starting position
private var moved = false; //whether or not object should move to newPos or startPos
private var endLoop = true; //stop moving object
function Start() {
//get object's starting position
startPos = myObject.transform.position;
}
function Activate() {
if(moved == false) {
endLoop = true;
//wait 1 frame | if object is still trying to move somewhere, let it know to stop
yield;
//tell object to move to newPos
MoveToNew();
}
else {
endLoop = true;
//wait 1 frame | if object is still trying to move somewhere, let it know to stop
yield;
//tell object to move to startPos
MoveToStart();
}
//moved is true or false
moved = !moved;
}
function MoveToNew() {
endLoop = false;
while(endLoop == false) {
//Move object to newPos
myObject.transform.position = Vector3.MoveTowards(myObject.transform.position, newPos, speed * Time.deltaTime);
//if object is close enough to newPos, make sure while loop ends
var distanceBetween = Vector3.Distance(myObject.transform.position, newPos);
if(distanceBetween < 0.1) {
myObject.transform.position = newPos;
endLoop = true;
}
yield;
}
}
function MoveToStart() {
endLoop = false;
while(endLoop == false) {
//Move object to startPos
myObject.transform.position = Vector3.MoveTowards(myObject.transform.position, startPos, speed * Time.deltaTime);
//if object is close enough to startPos, make sure while loop ends
var distanceBetween = Vector3.Distance(myObject.transform.position, startPos);
if(distanceBetween < 0.1) {
myObject.transform.position = startPos;
endLoop = true;
}
yield;
}
}
Animation Switch
- Código:
#pragma strict
//This script plays the levers' animations, when activated.
var animations : String[]; //name of animations to play
private var interval : int = 0; //which animation we're on
//set starting animation to end | lever will sit idle, instead of playing animation at start
function Start () {
var anim : String = GetComponent.<Animation>().clip.name;
GetComponent.<Animation>()[anim].time = GetComponent.<Animation>()[anim].length;
}
function Activate() {
//play next animation
GetComponent.<Animation>().CrossFade(animations[interval]);
interval += 1;
//reset to first animation
if(interval >= animations.length) {
interval = 0;
}
}
E por último, essa configuração em mais uma parte, mas não tem script
A estrutura básica é esta:
Se faltou mais alguma coisa posso ir complementando, não ví nada de mais na pasta.
suportesouza- Iniciante
- PONTOS : 3063
REPUTAÇÃO : 0
Respeito as regras :
Re: Sistema de alavancas com som
Haa e detalhe, colocar som também no objeto que for levantar, se for uma parede por exemplo. Se não der tudo bem, eu coloco o som na própria alavanca depois do som dela vem o som da parede no mesmo áudio haha
suportesouza- Iniciante
- PONTOS : 3063
REPUTAÇÃO : 0
Respeito as regras :
Re: Sistema de alavancas com som
Da para colocar som no objeto também, eh fácil também.
O que estou tentando entender é como este comando é ativado... Por estes scripts que você passou, não há nada que ative os comandos. Eles devem estar sendo ativados por algum outro script, que talvez esteja na camera do jogador ou no jogador em si... Tem como você conferir?
O que estou tentando entender é como este comando é ativado... Por estes scripts que você passou, não há nada que ative os comandos. Eles devem estar sendo ativados por algum outro script, que talvez esteja na camera do jogador ou no jogador em si... Tem como você conferir?
Re: Sistema de alavancas com som
verdade, desculpa...
O ativador é activation Script
O ativador é activation Script
- Código:
#pragma strict
//This script is used for the player to activate objects, by looking at the object and pressing the left mouse button | recommended for first or third person view
var hit : RaycastHit; //used to detect interactable objects
private var activationDistance : int = 5; //must be at least this distance from object to activate it
function Update() {
//When Left-Mouse-Button is clicked
if(Input.GetMouseButtonDown(0)) {
//Raycast outward
if(Physics.Raycast(transform.position, transform.forward, hit, activationDistance)) {
//if there is an object tagged as "Interact"
if(hit.transform.tag == "Interact") {
//call activate | this will call the activate function on whichever script is attached to the lever, as long as it has an Activate() function
hit.transform.gameObject.SendMessage("Activate");
}
}
}
}
suportesouza- Iniciante
- PONTOS : 3063
REPUTAÇÃO : 0
Respeito as regras :
Re: Sistema de alavancas com som
Cara, odeio trabalhar em JavaScript, se fosse eu, convertia tudo isso ai pra C#... mas como o asset já está em java, vou tentar ajudar.
Em todos os scripts, você tem algo meio parecido, por exemplo:
Pode perceber que tem uma void "Activate", que chama os comandos, e você pode chamar os audios por ai...
Primeiramente você declara um AudioClip em cada script, exemplo:
Mas este áudio não será tocado sozinho, então é necessário que você adicione o componente 'AudioSource' em todo o objeto que irá emitir algum som.
Depois no script, você precisa setar um AudioSource também, exemplo:
Agora, basta fazer o seu som tocar 1 vez, quando a void "Activate" for chamada:
Tomando o script inicial como base, ficaria algo meio que assim:
Basta jogar o audio na variável, e lembrar de adicionar um AudioSource (no mesmo objeto que contem o script)
Não sei se é isto que você procurava, mas ta ai :D
Em todos os scripts, você tem algo meio parecido, por exemplo:
- Código:
var animations : String[];
private var interval : int = 0;
function Start () {
var anim : String = GetComponent.<Animation>().clip.name;
GetComponent.<Animation>()[anim].time = GetComponent.<Animation>()[anim].length;
}
function Activate() {
GetComponent.<Animation>().CrossFade(animations[interval]);
interval += 1;
if(interval >= animations.length) {
interval = 0;
}
}
Pode perceber que tem uma void "Activate", que chama os comandos, e você pode chamar os audios por ai...
Primeiramente você declara um AudioClip em cada script, exemplo:
- Código:
var audio : AudioClip;
Mas este áudio não será tocado sozinho, então é necessário que você adicione o componente 'AudioSource' em todo o objeto que irá emitir algum som.
Depois no script, você precisa setar um AudioSource também, exemplo:
- Código:
private var emissorSom : AudioSource;
function Start () {
emissorSom = GetComponent.<AudioSource>();
}
Agora, basta fazer o seu som tocar 1 vez, quando a void "Activate" for chamada:
- Código:
function Activate() {
emissorSom.PlayOneShot(_audio);
}
Tomando o script inicial como base, ficaria algo meio que assim:
- Código:
var animations : String[];
private var interval : int = 0;
var _audio : AudioClip;
private var emissorSom : AudioSource;
function Start () {
emissorSom = GetComponent.<AudioSource>();
var anim : String = GetComponent.<Animation>().clip.name;
GetComponent.<Animation>()[anim].time = GetComponent.<Animation>()[anim].length;
}
function Activate() {
emissorSom.PlayOneShot(_audio);
GetComponent.<Animation>().CrossFade(animations[interval]);
interval += 1;
if(interval >= animations.length) {
interval = 0;
}
}
Basta jogar o audio na variável, e lembrar de adicionar um AudioSource (no mesmo objeto que contem o script)
Não sei se é isto que você procurava, mas ta ai :D
Re: Sistema de alavancas com som
cara... Ficou espetacular... Queria colaborar agora com a página, se eu te mandar o projeto todo ajuda? não sei se tem outra forma, tenho diversos scripts aqui que estou fazendo a algum tempo ou botão de doação haha ficou fantástico, muito obrigado
suportesouza- Iniciante
- PONTOS : 3063
REPUTAÇÃO : 0
Respeito as regras :
Re: Sistema de alavancas com som
A principal ajuda ou colaboração eh usando o fórum e espalhando por ai para pessoas que tenham dúvidas sobre Unity, assim a comunidade cresce :D
Quanto ao projeto, poste apenas se quiser... Existe a área "Tutoriais dos membros" e "Arquivos/mods/packs" que são mais destinadas a isto
Quanto ao projeto, poste apenas se quiser... Existe a área "Tutoriais dos membros" e "Arquivos/mods/packs" que são mais destinadas a isto
Tópicos semelhantes
» Como criar sistema de Habilidades (Skills) para o personagem 2D / e sistema de batalha 2D
» como fazer sistema de partículas apagar outro sistema de partículas
» Posso usar o sistema de marcas de derrapagem como base para outro sistema?
» Qual o melhor sistema sistema de anuncios para android?
» Como fazer Sistema Dia e Noite Segui o sistema de Hora
» como fazer sistema de partículas apagar outro sistema de partículas
» Posso usar o sistema de marcas de derrapagem como base para outro sistema?
» Qual o melhor sistema sistema de anuncios para android?
» Como fazer Sistema Dia e Noite Segui o sistema de Hora
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos