SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Arrumar erros
Sistema de Dialogs + Assets
[____SUJESTÕES PARA O FÓRUM____]
Cenário
[TUTORIAL] SISTEMA DE CHUVA COM PARTICULAS.
(DUVIDA) Acessar um valor de outro Script em c#
Mostrar Pontuação No Game Over
Inventario e craft estilo ark
Mudar de scene multiplayer?
Como eu faço um ontrigger "invertido"?
Raycast em circulos(point to ckick)
COMO FAZ PARA FAZER 2 TERRAINS TOTALMENTE DIFERENTES DO OUTRO?
Unity não reconhece meu celular
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
MultiPlayer Unity Para Android!
Props Animations Asset
Mostrar Pontuação no game over
Meu script de ser morto atropelado não funciona
Terminei o meu jogo, mas algo deu errado.
[ASSET] Facilitação de controle de objetos
Problema em listar salas
Ranking com nome
Novo jogo - Stackx
Segurança no Unity
Tem um modo facil para esperar tanto tempo e ocorrer uma açao?
[TUTORIAL] Entrar no carro estilo GTA
[RESOLVIDO] Tem como melhorar a colisao? os objetos entram nos outros, caem do chao ,etc..
[DEVLOG] Projeto - Girl Blade (download Pré-Alpha)
DÚVIDA RECRIAR EFEITO NA UNITY
Me ofereço como escritor
Como adicionar uma força oposta a colisão no rigidbody?
Ajuda com script
[Dúvida]Erro error CS1525: Unexpected symbol 'u' em script
[Resolvido] É possível usar a unity com outros programas ? (config do pc na dúvida ;-; )
Dano no inimigo
[Dúvida]Erro "UnityEngine.AI.NavMeshAgent.Stop()' is obsolete" como resolver ?
[Dúvida]Erro "Building to the assets folder is not allowed" ao tentar fazer build
[Equipe]Preciso de ajuda de um programador
CAMERA ENTRANDO NA PAREDE
como posso fazer um corpo perder a animação
Teste De Multiplayer
Como adicionar uma força oposta a colisão no rigidbody?
Usar o unity sem internet
Cenário jogo Endless Running
Photon Unity como funcina?
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
UM FANTASMA APARECEU NO MEU JOGO.
Como mudar cor do botao UI
[TUTORIAL] FPSController nadar e mergulhar, junto com efeito submerso
Como sincronizar objetos do client para o host
Em breve EDU_animal-controle
Preciso de level designers com conhecimento avançado no Blender
[TUTORIAL] Como criar um HUD MULTIPLAYER personalizavel
[Duvida] Script pegar itens
Um processador de 2 nucleos versus um de 8 nucleos tem diferença na Unity?
[TUTORIAL] SALVAR JOGO AUTOMATICAMENTE
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
Como faço para deixar o objeto transparente ao passar atraz?
Shader Standart - Fade . Fica transparente / Bugado (Paredes Semi-Transparentes)
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
Existe Alguma VOID que atualize menos que a update
Movimento dos seios e cabelo
[TUTORIAL] Barra de VIDA / HP contínua
[Modelo]Modelo Com osso[Modelo]
[TUTORIAL] Mensagem aparecer na tela conforme a distância do jogador (Unity 5)
[TUTORIAL] MENU PRINCIPAL - UNITY 5 (5.3 ou superior) (Com UI)
Não aparece os eixos na animação
Tutorial de Achar coisas no projeto por script e poder setalas nos scripts
Da para fazer anti-hack com o photon??
Como achar um item no projeto ?
Será que um dia,vai existir uma versão em PT-BR da unity?
Movimentação igual ao do battlerite
Existe um limite da quantidade de scripts que você poder fazer na unity?
aVork - Física realista para veículos
Script continua funcionando mesmo depois de desabilitado
procurar jogador por nome da string
[FPSController]Verificar a velocidade de um rigidbody
Erro com script de inventario.
BoxCollidernão acompanha Animação
Mudar o SetActive ao clicar em um GameObject.
[RESOLVIDO]Multiplayer Life?
Sistema de jogo interativo
Programador de inventario e craft.
RigidBody2D not found?
Passar de estado no meio da animação
como mudar as distancias dos lodGrup por script?
[BUG] Laucher da unity aparece algumas pastas!
Erro de script de lobby photon.
Como achar um item no projeto ?
Sistema de troca de equipamento
Tem como fazer imagens andando pela tela?
Impulso com Swipe
Sistema de telefone
audiosource minima distancia e maxima distancia nao funciona
[MODELO]--ARMA--[3D MODEL]
Metodos/comandos/referencia desaparecem.
Sistema de dia e noite bugando outras coisas quando fica anoite
Como faço fontes novas para letras na unity?
duvida WayPoints (ou qualquer outra coisa que me ajude)
Hoje à(s) 4:10 am
Hoje à(s) 2:00 am
Hoje à(s) 1:57 am
Hoje à(s) 12:48 am
Ontem à(s) 11:56 pm
Ontem à(s) 11:19 pm
Ontem à(s) 10:35 pm
Ontem à(s) 9:13 pm
Ontem à(s) 6:32 pm
Ontem à(s) 5:50 pm
Ontem à(s) 3:24 pm
Ontem à(s) 1:30 pm
Ontem à(s) 12:41 pm
Ontem à(s) 11:29 am
Ontem à(s) 10:30 am
Ontem à(s) 7:29 am
Sex Nov 17, 2017 10:05 pm
Sex Nov 17, 2017 7:22 pm
Sex Nov 17, 2017 5:10 pm
Sex Nov 17, 2017 4:43 pm
Sex Nov 17, 2017 3:20 pm
Sex Nov 17, 2017 2:01 pm
Sex Nov 17, 2017 11:46 am
Sex Nov 17, 2017 8:33 am
Sex Nov 17, 2017 12:40 am
Sex Nov 17, 2017 12:31 am
Qui Nov 16, 2017 11:18 pm
Qui Nov 16, 2017 11:12 pm
Qui Nov 16, 2017 10:48 pm
Qui Nov 16, 2017 10:47 pm
Qui Nov 16, 2017 10:46 pm
Qui Nov 16, 2017 10:20 pm
Qui Nov 16, 2017 10:15 pm
Qui Nov 16, 2017 10:09 pm
Qui Nov 16, 2017 9:52 pm
Qui Nov 16, 2017 8:13 pm
Qui Nov 16, 2017 8:10 pm
Qui Nov 16, 2017 8:07 pm
Qui Nov 16, 2017 7:56 pm
Qui Nov 16, 2017 5:39 pm
Qui Nov 16, 2017 5:21 pm
Qui Nov 16, 2017 3:33 pm
Qui Nov 16, 2017 2:56 pm
Qui Nov 16, 2017 1:37 pm
Qui Nov 16, 2017 1:20 pm
Qui Nov 16, 2017 11:26 am
Qui Nov 16, 2017 11:24 am
Qua Nov 15, 2017 9:32 pm
Qua Nov 15, 2017 9:00 pm
Qua Nov 15, 2017 7:05 pm
Qua Nov 15, 2017 6:05 pm
Qua Nov 15, 2017 2:09 pm
Qua Nov 15, 2017 10:35 am
Qua Nov 15, 2017 2:24 am
Ter Nov 14, 2017 9:54 pm
Ter Nov 14, 2017 9:53 pm
Ter Nov 14, 2017 6:41 pm
Ter Nov 14, 2017 2:25 pm
Ter Nov 14, 2017 2:25 pm
Ter Nov 14, 2017 1:45 pm
Ter Nov 14, 2017 12:00 pm
Seg Nov 13, 2017 3:12 pm
Seg Nov 13, 2017 8:27 am
Dom Nov 12, 2017 10:09 pm
Dom Nov 12, 2017 9:55 pm
Dom Nov 12, 2017 8:52 pm
Dom Nov 12, 2017 6:43 pm
Dom Nov 12, 2017 5:02 pm
Dom Nov 12, 2017 3:23 pm
Dom Nov 12, 2017 2:15 pm
Dom Nov 12, 2017 1:43 pm
Dom Nov 12, 2017 1:25 pm
Dom Nov 12, 2017 11:35 am
Dom Nov 12, 2017 12:13 am
Sab Nov 11, 2017 10:11 pm
Sab Nov 11, 2017 9:44 pm
Sab Nov 11, 2017 9:40 am
Sex Nov 10, 2017 7:52 pm
Sex Nov 10, 2017 7:08 pm
Sex Nov 10, 2017 6:59 pm
Sex Nov 10, 2017 6:58 pm
Sex Nov 10, 2017 6:09 pm
Sex Nov 10, 2017 6:00 pm
Sex Nov 10, 2017 5:22 pm
Sex Nov 10, 2017 2:58 pm
Sex Nov 10, 2017 2:31 pm
Sex Nov 10, 2017 12:29 pm
Sex Nov 10, 2017 12:00 pm
Qui Nov 09, 2017 11:47 pm
Qui Nov 09, 2017 11:28 pm
Qui Nov 09, 2017 8:46 pm
Qui Nov 09, 2017 8:26 pm
Qui Nov 09, 2017 8:08 pm
Qui Nov 09, 2017 5:59 pm
Qui Nov 09, 2017 5:29 pm
Qui Nov 09, 2017 1:58 pm
Qui Nov 09, 2017 12:39 pm
Qui Nov 09, 2017 12:29 pm
Qui Nov 09, 2017 11:16 am
jamaisfiih
dimmuo
guimaraf
jamaisfiih
NyanHeavyBR
felipehobs1
jamaisfiih
PatifeCraft
Callyde Jr
Zecandy
Ronnisz
DUT
recagonlei
Phph09
Phph09
Phph09
jamaisfiih
Zecandy
Josivaldo Augusto
BRGC
MRX
recagonlei
recagonlei
sabbath
recagonlei
recagonlei
luiz12345
dstaroski
rafaelllsd
recagonlei
rafaelllsd
recagonlei
recagonlei
recagonlei
recagonlei
PauloFR
PauloFR
PauloFR
Diego Felix
ronito
ronito
Phph09
recagonlei
jamaisfiih
MRX
dstaroski
dstaroski
rafaelllsd
ronito
Phph09
Unidade3d5
AnderGames
Phph09
Giwn
DUT
Zecandy
Callyde Jr
natanael.olimpio
natanael.olimpio
Jonny
recagonlei
stratengine
Phph09
felipehobs1
Unoog
HPGBR
felipehobs1
rafaelllsd
PatifeCraft
rafaelllsd
Phph09
Phph09
Encracker
dimmuo
Encracker
Unidade3d5
BRGC
Callyde Jr
Phph09
raulframos
Callyde Jr
GameLACK
Fagner
niovery
BRGC
Dom3000
fabriciorsz34
PatifeCraft
Dom3000
Arqueiro Deckster
Phph09
Phph09
richardson
felipehobs1
joabr
Phph09
DUT
DUT
Zecandy

[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Página 1 de 2 1, 2  Seguinte

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

TUTORIAL [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Sex Abr 22, 2016 2:58 pm

É importantíssimo ver o vídeo para entender como utilizar o script

Vídeo:



Script:
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityStandardAssets.Characters.FirstPerson;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
using System.Linq;
[RequireComponent(typeof(FirstPersonController))]
public class MenuPause : MonoBehaviour {
   public Button BotaoRetornarAoJogo,BotaoOpcoes,BotaoVoltarAoMenu;
   [Space(20)]
   public Slider BarraVolume;
   public Toggle CaixaModoJanela;
   public Dropdown Resolucoes, Qualidades;
   public Button BotaoVoltar, BotaoSalvarPref;
   [Space(20)]
   public Text textoVol;
   public string nomeCenaMenu = "Menu";
   private float VOLUME;
   private int qualidadeGrafica, modoJanelaAtivo, resolucaoSalveIndex;
   private bool telaCheiaAtivada, menuParte1Ativo, menuParte2Ativo;
   private Resolution[] resolucoesSuportadas;
   private FirstPersonController controlador;

   void Awake(){
      resolucoesSuportadas = Screen.resolutions;
      controlador = GetComponent<FirstPersonController> ();
   }

   void Start () {
      Opcoes (false,false);
      ChecarResolucoes ();
      AjustarQualidades ();
      Time.timeScale = 1;
      AudioListener.volume = 1;
      BarraVolume.minValue = 0;
      BarraVolume.maxValue = 1;
      menuParte1Ativo = menuParte2Ativo = false;
      if (PlayerPrefs.HasKey ("RESOLUCAO")) {
         int numResoluc = PlayerPrefs.GetInt ("RESOLUCAO");
         if (resolucoesSuportadas.Length <= numResoluc) {
            PlayerPrefs.DeleteKey ("RESOLUCAO");
         }
      }
      //=============== SAVES===========//
      if (PlayerPrefs.HasKey ("VOLUME")) {
         VOLUME = PlayerPrefs.GetFloat ("VOLUME");
         BarraVolume.value = VOLUME;
      } else {
         PlayerPrefs.SetFloat ("VOLUME", 1);
         BarraVolume.value = 1;
      }
      //=============MODO JANELA===========//
      if (PlayerPrefs.HasKey ("modoJanela")) {
         modoJanelaAtivo = PlayerPrefs.GetInt ("modoJanela");
         if (modoJanelaAtivo == 1) {
            Screen.fullScreen = false;
            CaixaModoJanela.isOn = true;
         } else {
            Screen.fullScreen = true;
            CaixaModoJanela.isOn = false;
         }
      } else {
         modoJanelaAtivo = 0;
         PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
         CaixaModoJanela.isOn = false;
         Screen.fullScreen = true;
      }
      //========RESOLUCOES========//
      if (modoJanelaAtivo == 1) {
         telaCheiaAtivada = false;
      } else {
         telaCheiaAtivada = true;
      }
      if (PlayerPrefs.HasKey ("RESOLUCAO")) {
         resolucaoSalveIndex = PlayerPrefs.GetInt ("RESOLUCAO");
         Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
         Resolucoes.value = resolucaoSalveIndex;
      } else {
         resolucaoSalveIndex = (resolucoesSuportadas.Length -1);
         Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
         PlayerPrefs.SetInt ("RESOLUCAO", resolucaoSalveIndex);
         Resolucoes.value = resolucaoSalveIndex;
      }
      //=========QUALIDADES=========//
      if (PlayerPrefs.HasKey ("qualidadeGrafica")) {
         qualidadeGrafica = PlayerPrefs.GetInt ("qualidadeGrafica");
         QualitySettings.SetQualityLevel(qualidadeGrafica);
         Qualidades.value = qualidadeGrafica;
      } else {
         QualitySettings.SetQualityLevel((QualitySettings.names.Length-1));
         qualidadeGrafica = (QualitySettings.names.Length-1);
         PlayerPrefs.SetInt ("qualidadeGrafica", qualidadeGrafica);
         Qualidades.value = qualidadeGrafica;
      }
      // =========SETAR BOTOES==========//
      BotaoVoltarAoMenu.onClick = new Button.ButtonClickedEvent();
      BotaoOpcoes.onClick = new Button.ButtonClickedEvent();
      BotaoRetornarAoJogo.onClick = new Button.ButtonClickedEvent();
      BotaoVoltar.onClick = new Button.ButtonClickedEvent();
      BotaoSalvarPref.onClick = new Button.ButtonClickedEvent();
      //
      BotaoVoltarAoMenu.onClick.AddListener(() => VoltarAoMenu());
      BotaoOpcoes.onClick.AddListener(() => Opcoes(false,true));
      BotaoRetornarAoJogo.onClick.AddListener(() => Opcoes(false,false));
      BotaoVoltar.onClick.AddListener(() => Opcoes(true,false));
      BotaoSalvarPref.onClick.AddListener(() => SalvarPreferencias());
   }
   void Update(){
      if (Input.GetKeyDown (KeyCode.Escape)) {
         if (menuParte1Ativo == false && menuParte2Ativo == false) {
            menuParte1Ativo = true;
            menuParte2Ativo = false;
            Opcoes (true, false);
            Time.timeScale = 0;
            AudioListener.volume = 0;
         } else if (menuParte1Ativo == true && menuParte2Ativo == false) {
            menuParte1Ativo = menuParte2Ativo = false;
            Opcoes (false, false);
            Time.timeScale = 1;
            AudioListener.volume = VOLUME;
         }
         else if (menuParte1Ativo == false && menuParte2Ativo == true) {
            menuParte1Ativo = true;
            menuParte2Ativo = false;
            Opcoes (true, false);
            Time.timeScale = 0;
            AudioListener.volume = 0;
         }
      }
      if (menuParte1Ativo == true || menuParte2Ativo == true) {
         Cursor.visible = true;
         controlador.enabled = false;
      } else {
         Cursor.visible = false;
         controlador.enabled = true;
      }
   }
   //=========VOIDS DE CHECAGEM==========//
   private void ChecarResolucoes(){
      Resolution[] resolucoesSuportadas = Screen.resolutions;
      Resolucoes.options.Clear ();
      for(int y = 0; y < resolucoesSuportadas.Length; y++){
         Resolucoes.options.Add(new Dropdown.OptionData() { text = resolucoesSuportadas[y].width + "x" + resolucoesSuportadas[y].height });
      }
      Resolucoes.captionText.text = "Resolucao";
   }
   private void AjustarQualidades(){
      string[] nomes = QualitySettings.names;
      Qualidades.options.Clear ();
      for(int y = 0; y < nomes.Length; y++){
         Qualidades.options.Add(new Dropdown.OptionData() { text = nomes[y] });
      }
      Qualidades.captionText.text = "Qualidade";
   }
   private void Opcoes(bool ativarOP, bool ativarOP2){
      BotaoVoltarAoMenu.gameObject.SetActive (ativarOP);
      BotaoOpcoes.gameObject.SetActive (ativarOP);
      BotaoRetornarAoJogo.gameObject.SetActive (ativarOP);
      //
      textoVol.gameObject.SetActive (ativarOP2);
      BarraVolume.gameObject.SetActive (ativarOP2);
      CaixaModoJanela.gameObject.SetActive (ativarOP2);
      Resolucoes.gameObject.SetActive (ativarOP2);
      Qualidades.gameObject.SetActive (ativarOP2);
      BotaoVoltar.gameObject.SetActive (ativarOP2);
      BotaoSalvarPref.gameObject.SetActive (ativarOP2);
      if (ativarOP == true && ativarOP2 == false) {
         menuParte1Ativo = true;
         menuParte2Ativo = false;
      }
      else if (ativarOP == false && ativarOP2 == true) {
         menuParte1Ativo = false;
         menuParte2Ativo = true;
      }
      else if (ativarOP == false && ativarOP2 == false) {
         menuParte1Ativo = false;
         menuParte2Ativo = false;
         Time.timeScale = 1;
         AudioListener.volume = VOLUME;
      }
   }
   //=========VOIDS DE SALVAMENTO==========//
   private void SalvarPreferencias(){
      if (CaixaModoJanela.isOn == true) {
         modoJanelaAtivo = 1;
         telaCheiaAtivada = false;
      } else {
         modoJanelaAtivo = 0;
         telaCheiaAtivada = true;
      }
      PlayerPrefs.SetFloat ("VOLUME", BarraVolume.value);
      PlayerPrefs.SetInt ("qualidadeGrafica", Qualidades.value);
      PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
      PlayerPrefs.SetInt ("RESOLUCAO", Resolucoes.value);
      resolucaoSalveIndex = Resolucoes.value;
      AplicarPreferencias ();
   }
   private void AplicarPreferencias(){
      VOLUME = PlayerPrefs.GetFloat ("VOLUME");
      QualitySettings.SetQualityLevel(PlayerPrefs.GetInt ("qualidadeGrafica"));
      Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
   }
   private void VoltarAoMenu(){
      SceneManager.LoadScene (nomeCenaMenu);
   }
}


Última edição por MarcosSchultz em Dom Jun 12, 2016 3:23 pm, editado 2 vez(es)
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Sex Abr 22, 2016 3:21 pm

legal vai servir de ajuda pra muita gente Very Happy

aborde algo sobre expressão lambda Very Happy
pra quem que saber mais sobre expressão lambda https://msdn.microsoft.com/pt-br/library/bb397687.aspx
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Budyw em Qua Abr 27, 2016 7:43 pm

Como implementar um text ou imagem escrito "SALVO!" depois de clicar no botão salvar??

Eu consegui implementar um txt, mas fica tipo aparece e desaparece rapido sem efeito nenhum, não consegui colocar um FadeOut, ou algum efeito de desaparecer lentamente.

Budyw
Membro
Membro

Masculino PONTOS : 644
REPUTAÇÃO : 4
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Qua Abr 27, 2016 7:57 pm

Budyw escreveu:Como implementar um text ou imagem escrito "SALVO!" depois de clicar no botão salvar??

Eu consegui implementar um txt, mas fica tipo aparece e desaparece rapido sem efeito nenhum, não consegui colocar um FadeOut, ou algum efeito de desaparecer lentamente.

use um método IEnumerator

algo parecido com isso
Código:


    public Text saveText;

    IEnumerator SaveText()
    {
        saveText.enabled = true;
        saveText.CrossFadeAlpha(0, 1, false);
        yield return new WaitForSeconds(1.5f);
        saveText.enabled = false;
    }
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Budyw em Qua Abr 27, 2016 8:28 pm

Não estou conseguindo aplicar esse script, eu adiciono o texto, coloco ele no saveText; depois chamo IEnumerator SaveText() na void SalvarPreferencias() que é o botão de Salvar, mas o texto fica la parado nem some nem aparece.

Budyw
Membro
Membro

Masculino PONTOS : 644
REPUTAÇÃO : 4
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Qua Abr 27, 2016 8:55 pm

Budyw escreveu:Não estou conseguindo aplicar esse script, eu adiciono o texto, coloco ele no saveText; depois chamo IEnumerator SaveText() na void SalvarPreferencias() que é o botão de Salvar, mas o texto fica la parado nem some nem aparece.

Bom para chamar o metodo do tipo IEnumerator no unity vc usa StartCoroutine(SaveText());

Código:

StartCoroutine(SaveText());
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Budyw em Qua Abr 27, 2016 9:48 pm

Deu certo weslleyFx, funcionou como o que eu queria! Valeu Very Happy

Budyw
Membro
Membro

Masculino PONTOS : 644
REPUTAÇÃO : 4
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Qua Abr 27, 2016 9:51 pm

Budyw escreveu:Deu certo weslleyFx, funcionou como o que eu queria! Valeu Very Happy

Very Happy
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Matheus Fiori em Seg Maio 02, 2016 11:19 am

Estou tendo um problema com o som quando eu volto para o menu principal os sons não funcionam mais

Matheus Fiori
Iniciante
Iniciante

PONTOS : 743
REPUTAÇÃO : 1
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Seg Maio 02, 2016 11:47 am

Matheus Fiori escreveu:Estou tendo um problema com o som quando eu volto para o menu principal os sons não funcionam mais

Mostre o que vc fez
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Matheus Fiori em Seg Maio 02, 2016 12:05 pm




Bom é um menu teste pra aplicar no jogo, mas dou play áudios da cena e eles funcionam , mas quando vou e volto da outra cena eles param de funcionar

código do Menu da primeira imagem
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
using System.Linq;

public class volta : MonoBehaviour {

 public string nomedacena = "" ;
 public Button voltacena ;
 // Use this for initialization
 void Start () {

 voltacena.onClick = new Button.ButtonClickedEvent();
 voltacena.onClick.AddListener(() => VoltarAoMenu());

 }

 private void VoltarAoMenu(){
 
 SceneManager.LoadScene (nomedacena);
 }

 // Update is called once per frame
 void Update () {
 
 }
}

código do menu da segunda imagem lá os áudios funcionam mesmo após trocar de cena e voltar
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
using System.Linq;

public class Menu : MonoBehaviour {
 public Button BotaoRetornarAoJogo,BotaoOpcoes,BotaoVoltarAoMenu;
 [Space(20)]
 public Slider BarraVolume;
 public Toggle CaixaModoJanela;
 public Dropdown Resolucoes, Qualidades;
 public Button BotaoVoltar, BotaoSalvarPref;
 [Space(20)]
 public Text textoVol;
 public string nomeCenaMenu = "Menu";
 private float VOLUME;
 private int qualidadeGrafica, modoJanelaAtivo, resolucaoSalveIndex;
 private bool telaCheiaAtivada, menuParte1Ativo, menuParte2Ativo;
 private Resolution[] resolucoesSuportadas;

 void Awake(){
 resolucoesSuportadas = Screen.resolutions;

 }

 void Start () {
 Opcoes (false,false);
 ChecarResolucoes ();
 AjustarQualidades ();
 Time.timeScale = 1;
 AudioListener.volume = 1;
 BarraVolume.minValue = 0;
 BarraVolume.maxValue = 1;
 menuParte1Ativo = menuParte2Ativo = false;
 //=============== SAVES===========//
 if (PlayerPrefs.HasKey ("VOLUME")) {
 VOLUME = PlayerPrefs.GetFloat ("VOLUME");
 BarraVolume.value = VOLUME;
 } else {
 PlayerPrefs.SetFloat ("VOLUME", 1);
 BarraVolume.value = 1;
 }
 //=============MODO JANELA===========//
 if (PlayerPrefs.HasKey ("modoJanela")) {
 modoJanelaAtivo = PlayerPrefs.GetInt ("modoJanela");
 if (modoJanelaAtivo == 1) {
 Screen.fullScreen = false;
 CaixaModoJanela.isOn = true;
 } else {
 Screen.fullScreen = true;
 CaixaModoJanela.isOn = false;
 }
 } else {
 modoJanelaAtivo = 0;
 PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
 CaixaModoJanela.isOn = false;
 Screen.fullScreen = true;
 }
 //========RESOLUCOES========//
 if (modoJanelaAtivo == 1) {
 telaCheiaAtivada = false;
 } else {
 telaCheiaAtivada = true;
 }
 if (PlayerPrefs.HasKey ("RESOLUCAO")) {
 resolucaoSalveIndex = PlayerPrefs.GetInt ("RESOLUCAO");
 Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
 Resolucoes.value = resolucaoSalveIndex;
 } else {
 resolucaoSalveIndex = (resolucoesSuportadas.Length -1);
 Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
 PlayerPrefs.SetInt ("RESOLUCAO", resolucaoSalveIndex);
 Resolucoes.value = resolucaoSalveIndex;
 }
 //=========QUALIDADES=========//
 if (PlayerPrefs.HasKey ("qualidadeGrafica")) {
 qualidadeGrafica = PlayerPrefs.GetInt ("qualidadeGrafica");
 QualitySettings.SetQualityLevel(qualidadeGrafica);
 Qualidades.value = qualidadeGrafica;
 } else {
 QualitySettings.SetQualityLevel((QualitySettings.names.Length-1));
 qualidadeGrafica = (QualitySettings.names.Length-1);
 PlayerPrefs.SetInt ("qualidadeGrafica", qualidadeGrafica);
 Qualidades.value = qualidadeGrafica;
 }
 // =========SETAR BOTOES==========//
 BotaoVoltarAoMenu.onClick = new Button.ButtonClickedEvent();
 BotaoOpcoes.onClick = new Button.ButtonClickedEvent();
 BotaoRetornarAoJogo.onClick = new Button.ButtonClickedEvent();
 BotaoVoltar.onClick = new Button.ButtonClickedEvent();
 BotaoSalvarPref.onClick = new Button.ButtonClickedEvent();
 //
 BotaoVoltarAoMenu.onClick.AddListener(() => VoltarAoMenu());
 BotaoOpcoes.onClick.AddListener(() => Opcoes(false,true));
 BotaoRetornarAoJogo.onClick.AddListener(() => Opcoes(false,false));
 BotaoVoltar.onClick.AddListener(() => Opcoes(true,false));
 BotaoSalvarPref.onClick.AddListener(() => SalvarPreferencias());
 }
 void Update(){
 if (Input.GetKeyDown (KeyCode.Escape)) {
 if (menuParte1Ativo == false && menuParte2Ativo == false) {
 menuParte1Ativo = true;
 menuParte2Ativo = false;
 Opcoes (true, false);
 Time.timeScale = 0;
 AudioListener.volume = 0;
 } else if (menuParte1Ativo == true && menuParte2Ativo == false) {
 menuParte1Ativo = menuParte2Ativo = false;
 Opcoes (false, false);
 Time.timeScale = 1;
 AudioListener.volume = VOLUME;
 }
 else if (menuParte1Ativo == false && menuParte2Ativo == true) {
 menuParte1Ativo = true;
 menuParte2Ativo = false;
 Opcoes (true, false);
 Time.timeScale = 0;
 AudioListener.volume = 0;
 }
 }
 if (menuParte1Ativo == true || menuParte2Ativo == true) {
 Cursor.visible = true;
 } else {
 Cursor.visible = true;
 }
 }
 //=========VOIDS DE CHECAGEM==========//
 private void ChecarResolucoes(){
 Resolution[] resolucoesSuportadas = Screen.resolutions;
 Resolucoes.options.Clear ();
 for(int y = 0; y < resolucoesSuportadas.Length; y++){
 Resolucoes.options.Add(new Dropdown.OptionData() { text = resolucoesSuportadas[y].width + "x" + resolucoesSuportadas[y].height });
 }
 Resolucoes.captionText.text = "Resolucao";
 }
 private void AjustarQualidades(){
 string[] nomes = QualitySettings.names;
 Qualidades.options.Clear ();
 for(int y = 0; y < nomes.Length; y++){
 Qualidades.options.Add(new Dropdown.OptionData() { text = nomes[y] });
 }
 Qualidades.captionText.text = "Qualidade";
 }
 private void Opcoes(bool ativarOP, bool ativarOP2){
 BotaoVoltarAoMenu.gameObject.SetActive (ativarOP);
 BotaoOpcoes.gameObject.SetActive (ativarOP);
 BotaoRetornarAoJogo.gameObject.SetActive (ativarOP);
 //
 textoVol.gameObject.SetActive (ativarOP2);
 BarraVolume.gameObject.SetActive (ativarOP2);
 CaixaModoJanela.gameObject.SetActive (ativarOP2);
 Resolucoes.gameObject.SetActive (ativarOP2);
 Qualidades.gameObject.SetActive (ativarOP2);
 BotaoVoltar.gameObject.SetActive (ativarOP2);
 BotaoSalvarPref.gameObject.SetActive (ativarOP2);
 if (ativarOP == true && ativarOP2 == false) {
 menuParte1Ativo = true;
 menuParte2Ativo = false;
 }
 else if (ativarOP == false && ativarOP2 == true) {
 menuParte1Ativo = false;
 menuParte2Ativo = true;
 }
 else if (ativarOP == false && ativarOP2 == false) {
 menuParte1Ativo = false;
 menuParte2Ativo = false;
 Time.timeScale = 1;
 AudioListener.volume = VOLUME;
 }
 }
 //=========VOIDS DE SALVAMENTO==========//
 private void SalvarPreferencias(){
 if (CaixaModoJanela.isOn == true) {
 modoJanelaAtivo = 1;
 telaCheiaAtivada = false;
 } else {
 modoJanelaAtivo = 0;
 telaCheiaAtivada = true;
 }
 PlayerPrefs.SetFloat ("VOLUME", BarraVolume.value);
 PlayerPrefs.SetInt ("qualidadeGrafica", Qualidades.value);
 PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
 PlayerPrefs.SetInt ("RESOLUCAO", Resolucoes.value);
 resolucaoSalveIndex = Resolucoes.value;
 AplicarPreferencias ();
 }
 private void AplicarPreferencias(){
 VOLUME = PlayerPrefs.GetFloat ("VOLUME");
 QualitySettings.SetQualityLevel(PlayerPrefs.GetInt ("qualidadeGrafica"));
 Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
 }
 private void VoltarAoMenu(){
 SceneManager.LoadScene (nomeCenaMenu);
 }
}

Matheus Fiori
Iniciante
Iniciante

PONTOS : 743
REPUTAÇÃO : 1
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Seg Maio 02, 2016 12:41 pm

vc já tentou da play por script ?
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Matheus Fiori em Seg Maio 02, 2016 12:59 pm

weslleyFx escreveu:vc já tentou da play por script ?
Você diz por cenas separadas ?não entendi muito bem

Matheus Fiori
Iniciante
Iniciante

PONTOS : 743
REPUTAÇÃO : 1
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Seg Maio 02, 2016 1:42 pm

No script do menu da um play no start talvez seja um bug do unity
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Matheus Fiori em Seg Maio 02, 2016 2:38 pm

weslleyFx escreveu:No script do menu da um play no start talvez seja um bug do unity
Bom eu fechei abri o unity startei só o com script menu e mesmo assim continua não funcionando na hora que vai pra uma cena e volta

Matheus Fiori
Iniciante
Iniciante

PONTOS : 743
REPUTAÇÃO : 1
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Seg Maio 02, 2016 5:59 pm

Matheus Fiori escreveu:
weslleyFx escreveu:No script do menu da um play no start talvez seja um bug do unity
Bom eu fechei abri o unity startei só o com script menu e mesmo assim continua não funcionando na hora que vai pra uma cena e volta


Bom eu testei e não tive o problema citado a cima
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Dom Jun 12, 2016 3:23 pm

Script atualizado para evitar erros de resolução
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Lucas Garcia Frade em Qua Nov 02, 2016 8:53 pm

Eae Marcos, blz?
Ta lembrado de mim?
Viu, tem como eu colocar uma mapa no menu?
Tipo tem um mini mapa no jogo normal, ai quando eu abro o menu aparece o mapa do mundo todo.
Seria tipo colocar as imagens da camera no menu
Tem como?

Lucas Garcia Frade
Avançado
Avançado

Masculino PONTOS : 1220
REPUTAÇÃO : 9
Idade : 16
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Sex Nov 04, 2016 12:32 am

Lucas Garcia Frade escreveu:Eae Marcos, blz?
Ta lembrado de mim?
Viu, tem como eu colocar uma mapa no menu?
Tipo tem um mini mapa no jogo normal, ai quando eu abro o menu aparece o mapa do mundo todo.
Seria tipo colocar as imagens da camera no menu
Tem como?

Tem como criar um tópico específico para isto?

Tem como fazer sim, e é bem fácil... da para fazer um plano simples com uma RenderTexture, dentre várias outras coisas.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por darkdrezinho em Dom Nov 06, 2016 7:53 pm

marcos schultz tinha tado error mas fucionou dx pa la

darkdrezinho
Iniciante
Iniciante

PONTOS : 388
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MeverPlays em Sex Nov 11, 2016 2:36 pm

tem um bugzinho nesse script q é bastante chato.
tipo quando da play ele diz q o audio listener inicia em 1, aí se eu salvar em 0 e sair do play, quando eu der play dnv ele inicia com 1 pois no start ta pra iniciar com 1, aí so fica no valor q eu salvei (0) se eu pausar e depois despausar, aí eu queria saber se tem como resolver isso :/

ja tentei isso:
Código:
AudioListener.volume = VOLUME;

pra no caso ele iniciar no valor q tiver sido salvo, porém acontece o contrário do q eu falei acima.. ele inicia em 0.
avatar
MeverPlays
MembroAvançado

Masculino PONTOS : 1259
REPUTAÇÃO : 42
Áreas de atuação : SketchUp, Unity.
Respeito as regras :

Ver perfil do usuário http://www.joltflip-games.ml

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Dom Nov 13, 2016 1:09 am

MeverPlays escreveu:tem um bugzinho nesse script q é bastante chato.
tipo quando da play ele diz q o audio listener inicia em 1, aí se eu salvar em 0 e sair do play, quando eu der play dnv ele inicia com 1 pois no start ta pra iniciar com 1, aí so fica no valor q eu salvei (0) se eu pausar e depois despausar, aí eu queria saber se tem como resolver isso :/

ja tentei isso:
Código:
AudioListener.volume = VOLUME;

pra no caso ele iniciar no valor q tiver sido salvo, porém acontece o contrário do q eu falei acima.. ele inicia em 0.

Tem sim, basta usar um PlayerPrefs, ou ajustar o script de acordo.

Ele é assim por que é feito para ser compatível com um outro tutorial de menu que tenho já feito.

Seria mais interessante você criar um novo tópico para esta dúvida, postando o seu script como está e especificando o que deseja fazer exatamente.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por victoraugusto em Seg Nov 21, 2016 1:13 am

queria saber se é dificil fazer a movimentação desses UI Buttons via teclado.

No meu caso eu preciso mover via joystick do xbox one, mas não consigo fazer, então eu adapto do teclado caso exista.

Tem como fazer a transição via teclado dos paineis (setactive)?

victoraugusto
Iniciante
Iniciante

Masculino PONTOS : 429
REPUTAÇÃO : 0
Idade : 22
Áreas de atuação : programacao
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Seg Nov 21, 2016 3:44 pm

victoraugusto escreveu:queria saber se é dificil fazer a movimentação desses UI Buttons via teclado.

No meu caso eu preciso mover via joystick do xbox one, mas não consigo fazer, então eu adapto do teclado caso exista.

Tem como fazer a transição via teclado dos paineis (setactive)?

Teria como especificar melhor o que está tentando fazer? Se possível, postar alguma print ou algo do tipo
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por victoraugusto em Seg Nov 21, 2016 7:31 pm

Nesta primeira imagem, tem 2 setas, uma indicando um UI button, e outra indicando o UI button como sendo a primeira seleção ao iniciar a cena,consigo movimentar com o controle pra cima e pra baixo normalmente, porem quando clico em por exemplo configurações, não consigo mais selecionar nada


e se eu volto para o menu, não consigo mais selecionar nada via joystick ou teclado.

A duvida seria, quando eu fizer a transição de paineis, como fazer com que o joystick ou teclado continue no comando da seleção e não o mouse.

Código:

public GameObject painelPrincipal;
    public GameObject painelConfiguracoes;
    public GameObject PainelCampanha;
    

 // Use this for initialization
 void Start () {
    
 }
 
 // Update is called once per frame
 void Update () {
 
 }

       public void BotaoMultiplayer()
    {
        painelPrincipal.SetActive(false);
        
    }
    public void botaoConfiguracoes()
    {
        painelPrincipal.SetActive(false);//Desativa o Painel Principal
        painelConfiguracoes.SetActive(true); //Ativa o Painel de Configurações
    }
    public void botaoSair()
    {
        Application.Quit(); //Fecha o jogo
    }

    public void botaoVoltar()
    {
        painelPrincipal.SetActive(true);//Ativa o Painel Principal
        painelConfiguracoes.SetActive(false); //Desativa o Painel de Configurações
        PainelCampanha.SetActive(false);

      
    }

    public void BotaoCampanha()
    {
        painelPrincipal.SetActive(false);
        PainelCampanha.SetActive(true);
        
    }

}
tem algum comando com Event System para que isso ocorra? 

Projeto de fim de bimestre da facul, obrigado pela ajuda q fornecem.

victoraugusto
Iniciante
Iniciante

Masculino PONTOS : 429
REPUTAÇÃO : 0
Idade : 22
Áreas de atuação : programacao
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Qui Nov 24, 2016 2:11 am

Putz, pior que não sei... Tenho 0 de experiência com dispositivos que usem controle, por que sou mais focado em PC/Android O.o

O que acontece é que você está usando o menu da maneira correta, com o InputModule, mas este Menu é feito meio que exclusivamente para jogos PC, pois ele se "auto constrói", deletando as opções que vem como padrão e recriando as configurações para jogar o que existe no PlayerPrefs nos botões. 

Acredito que este menu tenha que ser totalmente recriado para poder funcionar em dispositivos que usem controle para passear pela UI
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Moa em Dom Nov 27, 2016 3:32 pm

Alguém pode me dizer como que faz para parar todas as animações e audio Very Happy
avatar
Moa
Membro
Membro

Masculino PONTOS : 560
REPUTAÇÃO : 4
Idade : 17
Áreas de atuação : Programação

Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Lucas Garcia Frade em Seg Nov 28, 2016 10:15 pm

Ei Marcos, to aki de novo, kkk, quando eu to no menu e aperto ESP pra sair o cursor fica travado no centro, porem visivel, ai preciso clicar pra ele desaparecer, como resolvo?

Lucas Garcia Frade
Avançado
Avançado

Masculino PONTOS : 1220
REPUTAÇÃO : 9
Idade : 16
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Ter Nov 29, 2016 3:27 am

Lucas Garcia Frade escreveu:Ei Marcos, to aki de novo, kkk, quando eu to no menu e aperto ESP pra sair o cursor fica travado no centro, porem visivel, ai preciso clicar pra ele desaparecer, como resolvo?

cursor travado no centro? você tem algum script com o comando lookCursor ?
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Ter Nov 29, 2016 3:28 am

Moa escreveu:Alguém pode me dizer como que faz para parar todas as animações e audio Very Happy

São vários sistemas separados... As animações costumas ser paradas quando deixa o Time.timeScale = 0 nos scripts, mas os audios tem de ser pausados um porum nos AudioSources do cenário.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Lucas Garcia Frade em Ter Nov 29, 2016 8:00 pm

MarcosSchultz escreveu:
Lucas Garcia Frade escreveu:Ei Marcos, to aki de novo, kkk, quando eu to no menu e aperto ESP pra sair o cursor fica travado no centro, porem visivel, ai preciso clicar pra ele desaparecer, como resolvo?

cursor travado no centro? você tem algum script com o comando lookCursor ?
Mas eh pra ele ficar travado no centro msm, tipo, quando to no menu fica normal, mas quando aperto ESC ou Retornar, ele trava no centro (como é pra ser feito msm) mas não desaparece.


Última edição por Lucas Garcia Frade em Dom Dez 04, 2016 3:57 pm, editado 1 vez(es)

Lucas Garcia Frade
Avançado
Avançado

Masculino PONTOS : 1220
REPUTAÇÃO : 9
Idade : 16
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por cosmoplay em Qua Nov 30, 2016 11:40 am

Alguém sabe como colocar um efeito bloom ao entrar no menu ? 
não consigo trabalhar com efeitos no script.
dei uma leve aumentada no script para colocar uma imagem de fundo e para não travar o mouse.

Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityStandardAssets.Characters.FirstPerson;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
using System.Linq;
using UnityStandardAssets.ImageEffects;
[RequireComponent(typeof(FirstPersonController))]
public class MenuPause : MonoBehaviour {
   public Image imagem;
   public Button BotaoRetornarAoJogo,BotaoOpcoes,BotaoVoltarAoMenu;
   [Space(20)]
   public Slider BarraVolume;
   public Toggle CaixaModoJanela;
   public Dropdown Resolucoes, Qualidades;
   public Button BotaoVoltar, BotaoSalvarPref;
   [Space(20)]
   public Text textoVol;
   public string nomeCenaMenu = "Menu";
   private float VOLUME;
   private int qualidadeGrafica, modoJanelaAtivo, resolucaoSalveIndex;
   private bool telaCheiaAtivada, menuParte1Ativo, menuParte2Ativo;
   private Resolution[] resolucoesSuportadas;
   private FirstPersonController controlador;


   void Awake(){
      resolucoesSuportadas = Screen.resolutions;
      controlador = GetComponent<FirstPersonController> ();
   }

   void Start () {
      
      imagem.enabled = !imagem.enabled;
      Opcoes (false,false);
      ChecarResolucoes ();
      AjustarQualidades ();
      Time.timeScale = 1;
      AudioListener.volume = 1;
      BarraVolume.minValue = 0;
      BarraVolume.maxValue = 1;
      menuParte1Ativo = menuParte2Ativo = false;
      if (PlayerPrefs.HasKey ("RESOLUCAO")) {
         int numResoluc = PlayerPrefs.GetInt ("RESOLUCAO");
         if (resolucoesSuportadas.Length <= numResoluc) {
            PlayerPrefs.DeleteKey ("RESOLUCAO");
         }
      }
      //=============== SAVES===========//
      if (PlayerPrefs.HasKey ("VOLUME")) {
         VOLUME = PlayerPrefs.GetFloat ("VOLUME");
         BarraVolume.value = VOLUME;
      } else {
         PlayerPrefs.SetFloat ("VOLUME", 1);
         BarraVolume.value = 1;
      }
      //=============MODO JANELA===========//
      if (PlayerPrefs.HasKey ("modoJanela")) {
         modoJanelaAtivo = PlayerPrefs.GetInt ("modoJanela");
         if (modoJanelaAtivo == 1) {
            Screen.fullScreen = false;
            CaixaModoJanela.isOn = true;
         } else {
            Screen.fullScreen = true;
            CaixaModoJanela.isOn = false;
         }
      } else {
         modoJanelaAtivo = 0;
         PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
         CaixaModoJanela.isOn = false;
         Screen.fullScreen = true;
      }
      //========RESOLUCOES========//
      if (modoJanelaAtivo == 1) {
         telaCheiaAtivada = false;
      } else {
         telaCheiaAtivada = true;
      }
      if (PlayerPrefs.HasKey ("RESOLUCAO")) {
         resolucaoSalveIndex = PlayerPrefs.GetInt ("RESOLUCAO");
         Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
         Resolucoes.value = resolucaoSalveIndex;
      } else {
         resolucaoSalveIndex = (resolucoesSuportadas.Length -1);
         Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
         PlayerPrefs.SetInt ("RESOLUCAO", resolucaoSalveIndex);
         Resolucoes.value = resolucaoSalveIndex;
      }
      //=========QUALIDADES=========//
      if (PlayerPrefs.HasKey ("qualidadeGrafica")) {
         qualidadeGrafica = PlayerPrefs.GetInt ("qualidadeGrafica");
         QualitySettings.SetQualityLevel(qualidadeGrafica);
         Qualidades.value = qualidadeGrafica;
      } else {
         QualitySettings.SetQualityLevel((QualitySettings.names.Length-1));
         qualidadeGrafica = (QualitySettings.names.Length-1);
         PlayerPrefs.SetInt ("qualidadeGrafica", qualidadeGrafica);
         Qualidades.value = qualidadeGrafica;
      }
      // =========SETAR BOTOES==========//
      BotaoVoltarAoMenu.onClick = new Button.ButtonClickedEvent();
      BotaoOpcoes.onClick = new Button.ButtonClickedEvent();
      BotaoRetornarAoJogo.onClick = new Button.ButtonClickedEvent();
      BotaoVoltar.onClick = new Button.ButtonClickedEvent();
      BotaoSalvarPref.onClick = new Button.ButtonClickedEvent();
      //
      BotaoVoltarAoMenu.onClick.AddListener(() => VoltarAoMenu());
      BotaoOpcoes.onClick.AddListener(() => Opcoes(false,true));
      BotaoRetornarAoJogo.onClick.AddListener(() => Opcoes(false,false));
      BotaoVoltar.onClick.AddListener(() => Opcoes(true,false));
      BotaoSalvarPref.onClick.AddListener(() => SalvarPreferencias());
   }
   void Update(){
      if (Input.GetKeyDown (KeyCode.Escape)) {
         if (menuParte1Ativo == false && menuParte2Ativo == false) {
            menuParte1Ativo = true;
            menuParte2Ativo = false;
            Opcoes (true, false);
            Time.timeScale = 0;
            AudioListener.volume = 0;
            imagem.enabled = true;
            Screen.lockCursor = false;
         } else if (menuParte1Ativo == true && menuParte2Ativo == false) {
            menuParte1Ativo = menuParte2Ativo = false;
            Opcoes (false, false);
            Time.timeScale = 1;
            AudioListener.volume = VOLUME;
            imagem.enabled = true;
            Screen.lockCursor = false;
         }
         else if (menuParte1Ativo == false && menuParte2Ativo == true) {
            menuParte1Ativo = true;
            menuParte2Ativo = false;
            Opcoes (true, false);
            Time.timeScale = 0;
            AudioListener.volume = 0;
            imagem.enabled = true;
            Screen.lockCursor = false;
         }
      }
      if (menuParte1Ativo == true || menuParte2Ativo == true) {
         Cursor.visible = true;
         controlador.enabled = false;
      } else {
         Cursor.visible = false;
         controlador.enabled = true;
         imagem.enabled = false;
         Cursor.visible = false;
      }
   }
   //=========VOIDS DE CHECAGEM==========//
   private void ChecarResolucoes(){
      Resolution[] resolucoesSuportadas = Screen.resolutions;
      Resolucoes.options.Clear ();
      for(int y = 0; y < resolucoesSuportadas.Length; y++){
         Resolucoes.options.Add(new Dropdown.OptionData() { text = resolucoesSuportadas[y].width + "x" + resolucoesSuportadas[y].height });
      }
      Resolucoes.captionText.text = "Resolucao";
   }
   private void AjustarQualidades(){
      string[] nomes = QualitySettings.names;
      Qualidades.options.Clear ();
      for(int y = 0; y < nomes.Length; y++){
         Qualidades.options.Add(new Dropdown.OptionData() { text = nomes[y] });
      }
      Qualidades.captionText.text = "Qualidade";
   }
   private void Opcoes(bool ativarOP, bool ativarOP2){
      BotaoVoltarAoMenu.gameObject.SetActive (ativarOP);
      BotaoOpcoes.gameObject.SetActive (ativarOP);
      BotaoRetornarAoJogo.gameObject.SetActive (ativarOP);
      //
      textoVol.gameObject.SetActive (ativarOP2);
      BarraVolume.gameObject.SetActive (ativarOP2);
      CaixaModoJanela.gameObject.SetActive (ativarOP2);
      Resolucoes.gameObject.SetActive (ativarOP2);
      Qualidades.gameObject.SetActive (ativarOP2);
      BotaoVoltar.gameObject.SetActive (ativarOP2);
      BotaoSalvarPref.gameObject.SetActive (ativarOP2);
      if (ativarOP == true && ativarOP2 == false) {
         menuParte1Ativo = true;
         menuParte2Ativo = false;
      }
      else if (ativarOP == false && ativarOP2 == true) {
         menuParte1Ativo = false;
         menuParte2Ativo = true;
      }
      else if (ativarOP == false && ativarOP2 == false) {
         menuParte1Ativo = false;
         menuParte2Ativo = false;
         Time.timeScale = 1;
         AudioListener.volume = VOLUME;
      }
   }
   //=========VOIDS DE SALVAMENTO==========//
   private void SalvarPreferencias(){
      if (CaixaModoJanela.isOn == true) {
         modoJanelaAtivo = 1;
         telaCheiaAtivada = false;
      } else {
         modoJanelaAtivo = 0;
         telaCheiaAtivada = true;
      }
      PlayerPrefs.SetFloat ("VOLUME", BarraVolume.value);
      PlayerPrefs.SetInt ("qualidadeGrafica", Qualidades.value);
      PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
      PlayerPrefs.SetInt ("RESOLUCAO", Resolucoes.value);
      resolucaoSalveIndex = Resolucoes.value;
      AplicarPreferencias ();
   }
   private void AplicarPreferencias(){
      VOLUME = PlayerPrefs.GetFloat ("VOLUME");
      QualitySettings.SetQualityLevel(PlayerPrefs.GetInt ("qualidadeGrafica"));
      Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
   }
   private void VoltarAoMenu(){
      SceneManager.LoadScene (nomeCenaMenu);
   }
}




avatar
cosmoplay
MembroAvançado

Masculino PONTOS : 1209
REPUTAÇÃO : 38
Idade : 19
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Qua Nov 30, 2016 11:42 pm

Não entendi o que você quer
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por stifel em Sab Dez 03, 2016 10:49 pm

Olá, boa noite! Estou com uma dificuldade. Esse script não funcionou no meu projeto de jogo, creio que por que tenho que aplicar esse script num personagem em terceira pessoa e não em primeira pessoa. De que forma posso resolver isso?

stifel
Iniciante
Iniciante

PONTOS : 360
REPUTAÇÃO : 1
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Sab Dez 03, 2016 10:58 pm

se não esta funcionando e porque você esta fazendo algo errado ou você não esta usando a versão 5 da unity
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Lucas Garcia Frade em Dom Dez 04, 2016 3:57 pm

Pode responder a pergunta que fiz ali em cima por favor?

Lucas Garcia Frade
Avançado
Avançado

Masculino PONTOS : 1220
REPUTAÇÃO : 9
Idade : 16
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por stifel em Dom Dez 04, 2016 4:08 pm

weslleyFx escreveu:se não esta funcionando e porque você esta fazendo algo errado ou você não esta usando a versão 5 da unity
Olá, boa tarde ! Estou usando a versão 5 da Unity, entretanto, preciso aplicar esse script em um personagem de 3rd person e quando faço isso, o jogo trava e as animações ficam bugando (o personagem fica flutuando). Como posso compatibilizar esse script para um personagem em terceira pessoa?

Desde já agradeço as respostas...

stifel
Iniciante
Iniciante

PONTOS : 360
REPUTAÇÃO : 1
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Weslley em Dom Dez 04, 2016 6:37 pm

Lucas Garcia Frade escreveu:
MarcosSchultz escreveu:
Lucas Garcia Frade escreveu:Ei Marcos, to aki de novo, kkk, quando eu to no menu e aperto ESP pra sair o cursor fica travado no centro, porem visivel, ai preciso clicar pra ele desaparecer, como resolvo?

cursor travado no centro? você tem algum script com o comando lookCursor ?
Mas eh pra ele ficar travado no centro msm, tipo, quando to no menu fica normal, mas quando aperto ESC ou Retornar, ele trava no centro (como é pra ser feito msm) mas não desaparece.
Código:
Cursor.visible = false;
avatar
Weslley
Moderador

Masculino PONTOS : 2826
REPUTAÇÃO : 600
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por LuizCalegari em Sex Mar 24, 2017 11:11 pm

Quando o script é criado, ao dar o Play, não abre aponta erro para a linha 4, error CS 0246

LuizCalegari
Iniciante
Iniciante

PONTOS : 1003
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Dom Mar 26, 2017 12:39 am

LuizCalegari escreveu:Quando o script é criado, ao dar o Play, não abre aponta erro para a linha 4, error CS 0246

Tem alguma print do erro? Mas acho que tem a ver com a sua versão da Unity.

Este script foi projetado para travar a câmera do FirstPersonController da Unity 5.3... Só que o FPS foi atualizado e acho que mudou a biblioteca. Tem que remover a parte de travar a câmera se pa.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Atiradogamer em Dom Mar 26, 2017 12:49 am

PRECISO DE MUNE MOBILE URGENTEMENTE SE NESSESARIO ME MANDA

Atiradogamer
Iniciante
Iniciante

PONTOS : 241
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Dom Mar 26, 2017 12:51 am

Poderia especificar melhor o que está precisando? dê preferência, crie um tópico na área "Dúvidas em geral" especificando beeeeem a dúvida
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Atiradogamer em Dom Mar 26, 2017 12:56 am

Estou precisando do script do menu mobile só falta isso pra terminar o jogo

Atiradogamer
Iniciante
Iniciante

PONTOS : 241
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por Atiradogamer em Dom Mar 26, 2017 1:37 am

Me mande pelo Gmail rodriguest507@gmail

Atiradogamer
Iniciante
Iniciante

PONTOS : 241
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Qui Mar 30, 2017 7:12 pm

Mas este do tópico deveria funcionar em Mobile... a UI da Unity é compatível com Android.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por bruxamissi em Seg Maio 15, 2017 3:04 pm

Como eu faria para ele da pause no jogo com um Button que ficaria no canto da dela tipo esse:
avatar
bruxamissi
Avançado
Avançado

Masculino PONTOS : 670
REPUTAÇÃO : 17
Idade : 17
Respeito as regras :

Ver perfil do usuário https://www.youtube.com/channel/UCPtkRtiJCQKFVz80fE9kIeA

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por dstaroski em Seg Maio 15, 2017 3:31 pm

Boa tarde cara! Vou fazer um exemplo simples, utilizando como exemplo da documentação da Unity (https://docs.unity3d.com/ScriptReference/UI.Button-onClick.html):
Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class Teste : MonoBehaviour
{
    public Button seuBotao;

    void Start()
    {
        Button btn = seuBotao.GetComponent<Button>();
        btn.onClick.AddListener(FuncaoPause);
    }

    void FuncaoPause()
    {
        Time.timeScale = 0;
    }
}
Coloque esse script em um objeto (pode ser vazio mesmo), link o botão a ele, e não esqueça que o nome do script tem que ser Teste(isso caso se copiar e colar), caso criar um novo, coloque o nome que quiser e somente copie a lógica. Depois pode fazer outro para voltar, é só trocar o "0" do Time.timeScale para "1", embora esse método de pause com o timeScale pode não pausar tudo, dai se teria de desativar determinados scripts e componentes que não pausaram, e reativa-los quando resumir o jogo.

Abraço!
avatar
dstaroski
Instrutor

Masculino PONTOS : 2211
REPUTAÇÃO : 539
Idade : 28
Áreas de atuação : Téc. Hardware e Redes, Programação C#, Daz3D and Gimp

Respeito as regras :

Ver perfil do usuário https://www.daz3d.com/gallery/users/1575361

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por bruxamissi em Seg Maio 15, 2017 4:07 pm

dstaroski escreveu:Boa tarde cara! Vou fazer um exemplo simples, utilizando como exemplo da documentação da Unity (https://docs.unity3d.com/ScriptReference/UI.Button-onClick.html):
Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class Teste : MonoBehaviour
{
    public Button seuBotao;

    void Start()
    {
        Button btn = seuBotao.GetComponent<Button>();
        btn.onClick.AddListener(FuncaoPause);
    }

    void FuncaoPause()
    {
        Time.timeScale = 0;
    }
}
Coloque esse script em um objeto (pode ser vazio mesmo), link o botão a ele, e não esqueça que o nome do script tem que ser Teste(isso caso se copiar e colar), caso criar um novo, coloque o nome que quiser e somente copie a lógica. Depois pode fazer outro para voltar, é só trocar o "0" do Time.timeScale para "1", embora esse método de pause com o timeScale pode não pausar tudo, dai se teria de desativar determinados scripts e componentes que não pausaram, e reativa-los quando resumir o jogo.

Abraço!

EU TINHA FEITO ISSO NO PROPRIO SCRIPT VER SE ESTAR CORRETO: LINHA 11, 99, 106, 114: ESTAO COMENTADA DO LADO
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityStandardAssets.Characters.FirstPerson;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
using System.Linq;
[RequireComponent(typeof(FirstPersonController))]
public class MenuPause : MonoBehaviour {
 public Image imagem;
 public Button BotaoRetornarAoJogo,BotaoOpcoes,BotaoVoltarAoMenu,PausaroJogo; //EU ADICIONEI O "PausaroJogo" Aquiii
 [Space(20)]
 public Slider BarraVolume;
 public Toggle CaixaModoJanela;
 public Dropdown Resolucoes, Qualidades;
 public Button BotaoVoltar, BotaoSalvarPref;
 [Space(20)]
 public Text textoVol;
 public string nomeCenaMenu = "Menu";
 private float VOLUME;
 private int qualidadeGrafica, modoJanelaAtivo, resolucaoSalveIndex;
 private bool telaCheiaAtivada, menuParte1Ativo, menuParte2Ativo;
 private Resolution[] resolucoesSuportadas;
 private FirstPersonController controlador;

 void Awake(){
 resolucoesSuportadas = Screen.resolutions;
 controlador = GetComponent<FirstPersonController> ();
 }

 void Start () {
 imagem.enabled = !imagem.enabled;
 Opcoes (false,false);
 ChecarResolucoes ();
 AjustarQualidades ();
 Time.timeScale = 1;
 AudioListener.volume = 1;
 BarraVolume.minValue = 0;
 BarraVolume.maxValue = 1;
 menuParte1Ativo = menuParte2Ativo = false;
 if (PlayerPrefs.HasKey ("RESOLUCAO")) {
 int numResoluc = PlayerPrefs.GetInt ("RESOLUCAO");
 if (resolucoesSuportadas.Length <= numResoluc) {
 PlayerPrefs.DeleteKey ("RESOLUCAO");
 }
 }
 //=============== SAVES===========//
 if (PlayerPrefs.HasKey ("VOLUME")) {
 VOLUME = PlayerPrefs.GetFloat ("VOLUME");
 BarraVolume.value = VOLUME;
 } else {
 PlayerPrefs.SetFloat ("VOLUME", 1);
 BarraVolume.value = 1;
 }
 //=============MODO JANELA===========//
 if (PlayerPrefs.HasKey ("modoJanela")) {
 modoJanelaAtivo = PlayerPrefs.GetInt ("modoJanela");
 if (modoJanelaAtivo == 1) {
 Screen.fullScreen = false;
 CaixaModoJanela.isOn = true;
 } else {
 Screen.fullScreen = true;
 CaixaModoJanela.isOn = false;
 }
 } else {
 modoJanelaAtivo = 0;
 PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
 CaixaModoJanela.isOn = false;
 Screen.fullScreen = true;
 }
 //========RESOLUCOES========//
 if (modoJanelaAtivo == 1) {
 telaCheiaAtivada = false;
 } else {
 telaCheiaAtivada = true;
 }
 if (PlayerPrefs.HasKey ("RESOLUCAO")) {
 resolucaoSalveIndex = PlayerPrefs.GetInt ("RESOLUCAO");
 Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
 Resolucoes.value = resolucaoSalveIndex;
 } else {
 resolucaoSalveIndex = (resolucoesSuportadas.Length -1);
 Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
 PlayerPrefs.SetInt ("RESOLUCAO", resolucaoSalveIndex);
 Resolucoes.value = resolucaoSalveIndex;
 }
 //=========QUALIDADES=========//
 if (PlayerPrefs.HasKey ("qualidadeGrafica")) {
 qualidadeGrafica = PlayerPrefs.GetInt ("qualidadeGrafica");
 QualitySettings.SetQualityLevel(qualidadeGrafica);
 Qualidades.value = qualidadeGrafica;
 } else {
 QualitySettings.SetQualityLevel((QualitySettings.names.Length-1));
 qualidadeGrafica = (QualitySettings.names.Length-1);
 PlayerPrefs.SetInt ("qualidadeGrafica", qualidadeGrafica);
 Qualidades.value = qualidadeGrafica;
 }
 // =========SETAR BOTOES==========//
 PausaroJogo.onClick = new Button.ButtonClickedEvent();  //ADICIONEI AQUIII
 BotaoVoltarAoMenu.onClick = new Button.ButtonClickedEvent();
 BotaoOpcoes.onClick = new Button.ButtonClickedEvent();
 BotaoRetornarAoJogo.onClick = new Button.ButtonClickedEvent();
 BotaoVoltar.onClick = new Button.ButtonClickedEvent();
 BotaoSalvarPref.onClick = new Button.ButtonClickedEvent();
 //
 PausaroJogo.onClick.AddListener(() => Update());     //ADICIONEI AQUIII
 BotaoVoltarAoMenu.onClick.AddListener(() => VoltarAoMenu());
 BotaoOpcoes.onClick.AddListener(() => Opcoes(false,true));
 BotaoRetornarAoJogo.onClick.AddListener(() => Opcoes(false,false));
 BotaoVoltar.onClick.AddListener(() => Opcoes(true,false));
 BotaoSalvarPref.onClick.AddListener(() => SalvarPreferencias());
 }
 void Update(){
 if (Input.GetKeyDown (KeyCode.Escape)) {     //AGORA COMO FAÇO PARA CHAMAR AQUI??
 if (menuParte1Ativo == false && menuParte2Ativo == false) {
 menuParte1Ativo = true;
 menuParte2Ativo = false;
 Opcoes (true, false);
 Time.timeScale = 0;
 AudioListener.volume = 0;
 imagem.enabled = true;
 } else if (menuParte1Ativo == true && menuParte2Ativo == false) {
 menuParte1Ativo = menuParte2Ativo = false;
 Opcoes (false, false);
 Time.timeScale = 1;
 AudioListener.volume = VOLUME;
 imagem.enabled = true;
 }
 else if (menuParte1Ativo == false && menuParte2Ativo == true) {
 menuParte1Ativo = true;
 menuParte2Ativo = false;
 Opcoes (true, false);
 Time.timeScale = 0;
 AudioListener.volume = 0;
 imagem.enabled = true;
 }
 }
 if (menuParte1Ativo == true || menuParte2Ativo == true) {
 Cursor.visible = true;
 controlador.enabled = false;
 } else {
 Cursor.visible = false;
 controlador.enabled = true;
 imagem.enabled = false;
 }
 }
 //=========VOIDS DE CHECAGEM==========//
 private void ChecarResolucoes(){
 Resolution[] resolucoesSuportadas = Screen.resolutions;
 Resolucoes.options.Clear ();
 for(int y = 0; y < resolucoesSuportadas.Length; y++){
 Resolucoes.options.Add(new Dropdown.OptionData() { text = resolucoesSuportadas[y].width + "x" + resolucoesSuportadas[y].height });
 }
 Resolucoes.captionText.text = "Resolucao";
 }
 private void AjustarQualidades(){
 string[] nomes = QualitySettings.names;
 Qualidades.options.Clear ();
 for(int y = 0; y < nomes.Length; y++){
 Qualidades.options.Add(new Dropdown.OptionData() { text = nomes[y] });
 }
 Qualidades.captionText.text = "Qualidade";
 }
 private void Opcoes(bool ativarOP, bool ativarOP2){
 BotaoVoltarAoMenu.gameObject.SetActive (ativarOP);
 BotaoOpcoes.gameObject.SetActive (ativarOP);
 BotaoRetornarAoJogo.gameObject.SetActive (ativarOP);
 //
 textoVol.gameObject.SetActive (ativarOP2);
 BarraVolume.gameObject.SetActive (ativarOP2);
 CaixaModoJanela.gameObject.SetActive (ativarOP2);
 Resolucoes.gameObject.SetActive (ativarOP2);
 Qualidades.gameObject.SetActive (ativarOP2);
 BotaoVoltar.gameObject.SetActive (ativarOP2);
 BotaoSalvarPref.gameObject.SetActive (ativarOP2);
 if (ativarOP == true && ativarOP2 == false) {
 menuParte1Ativo = true;
 menuParte2Ativo = false;
 }
 else if (ativarOP == false && ativarOP2 == true) {
 menuParte1Ativo = false;
 menuParte2Ativo = true;
 }
 else if (ativarOP == false && ativarOP2 == false) {
 menuParte1Ativo = false;
 menuParte2Ativo = false;
 Time.timeScale = 1;
 AudioListener.volume = VOLUME;
 }
 }
 //=========VOIDS DE SALVAMENTO==========//
 private void SalvarPreferencias(){
 if (CaixaModoJanela.isOn == true) {
 modoJanelaAtivo = 1;
 telaCheiaAtivada = false;
 } else {
 modoJanelaAtivo = 0;
 telaCheiaAtivada = true;
 }
 PlayerPrefs.SetFloat ("VOLUME", BarraVolume.value);
 PlayerPrefs.SetInt ("qualidadeGrafica", Qualidades.value);
 PlayerPrefs.SetInt ("modoJanela", modoJanelaAtivo);
 PlayerPrefs.SetInt ("RESOLUCAO", Resolucoes.value);
 resolucaoSalveIndex = Resolucoes.value;
 AplicarPreferencias ();
 }
 private void AplicarPreferencias(){
 VOLUME = PlayerPrefs.GetFloat ("VOLUME");
 QualitySettings.SetQualityLevel(PlayerPrefs.GetInt ("qualidadeGrafica"));
 Screen.SetResolution(resolucoesSuportadas[resolucaoSalveIndex].width,resolucoesSuportadas[resolucaoSalveIndex].height,telaCheiaAtivada);
 }
 private void VoltarAoMenu(){
 SceneManager.LoadScene (nomeCenaMenu);
 }
}
avatar
bruxamissi
Avançado
Avançado

Masculino PONTOS : 670
REPUTAÇÃO : 17
Idade : 17
Respeito as regras :

Ver perfil do usuário https://www.youtube.com/channel/UCPtkRtiJCQKFVz80fE9kIeA

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por bruxamissi em Seg Maio 15, 2017 6:44 pm

MarcosSchultz escreveu:
Lucas Garcia Frade escreveu:Ei Marcos, to aki de novo, kkk, quando eu to no menu e aperto ESP pra sair o cursor fica travado no centro, porem visivel, ai preciso clicar pra ele desaparecer, como resolvo?

cursor travado no centro? você tem algum script com o comando lookCursor ?
o meu script esta dando erro nessa linha:
Código:
m_MouseLook.LookRotation (transform, m_Camera.transform);

quando eu aperto em jogar e em seguida aparece os error acima
avatar
bruxamissi
Avançado
Avançado

Masculino PONTOS : 670
REPUTAÇÃO : 17
Idade : 17
Respeito as regras :

Ver perfil do usuário https://www.youtube.com/channel/UCPtkRtiJCQKFVz80fE9kIeA

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)

Mensagem por MarcosSchultz em Qui Maio 18, 2017 1:32 pm

é por que você está usando uma versão que não tem mais o FirstPersonController, mas sim o FPSController.

Vou ter que refazer esses tutoriais se pa, por que a Unity atualiza cada pouco sas bagaça
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9785
REPUTAÇÃO : 1685
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

Página 1 de 2 1, 2  Seguinte

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum