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:
Animacao da Colt
Problema com NetworkServer.spawn
[TUTORIAL] FAZENDO UM SITE PROFISSIONAL COMPLETO PARA SEU JOGO GRATIS
Pontos luminosos em objeto 3D
Procuro modelador para projeto similar à My summer Car
[TUTORIAL] Avião Script
Duvida Iluminação
PROCURO ANIMADOR + PROGRAMADOR
O que vocês acham de um jogo com formato de capitulos?
[ATUALIZAÇÃO] Projeto - Girl Blade
Dúvida sobre terrenos em 3D
[Duvida] Problema em relação ao transform.rotate
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
Avaliem (Meu cenário)!!
Ajuda com Script
Verificar cena anterior?
Verificar se game object está habilitado ou desabilitado
Colisão no terreno
[Duvida] - Como criar um botao de sair com mensage?
[RESOLVIDO] DUVIDA COM SCRIPT DE DANO POR TRIGER ENTER
QUER UMA PEQUENA GAMEPLAY DO MEU GAME?
[RESOLVIDO] Instanciar em Posição "Y" Especifica
Shop UI
[Duvida] Como carregar cenas aleatoriamente?
save game
Alguns modelos low poly
Fui mexer denovo na minha lixeira do mediafire e olha no que deu..
(Dúvida) Wheel Joint 2D Rodas saindo do pivo
Faculdade de jogos digitais vale a pena?
GAMEPLAY DO JOGO 171 ESTILO GTA (não sou eu que estou fazendo)
Como Criar uma Loja Virtual e WebSite para Seu Jogo Gratis
[Resolvido]Tocar Audio ao Colidir com Tag Player
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
ESSE EO MEU JOGO QUE EU ESTOU DESENVOLVENDO (VERSAO BETA)
Survive - atualização do jogo
Formação de Equipe Battle of Worlds
Pegar coisas do chao
Site Profissional Completo Gratis para Jogos
[Votação] Melhor sistema de drag na sua opinião ;-;
Como eu faço um "Sprint" para minha nave:
Personagem "Batendo" no limite da camera em 2D
Error No Console
[DÚVIDA] APERTAR 2 VAI PRA PRÓXIMA MÚSICA, APERTAR 1 VOLTA A MÚSICA ANTERIOR
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Site para Baixar Character em 3D
Cut Scene com video player
Só o networkIndetity é o suficiente para o que eu quero fazer? Como ele funciona?
O que acham dos meus modelos? (Prédios)
Como faz para colocar som nos passos do personagem?
[Pack de Modelos 3d] Kit Pau Pra Toda Obra [Low Poly]
Canvas UI
[Dúvida] tiro
Sombra preta
Transformar velocidade em forca
[DUVIDA] Shader
[RESOLVIDO] Mais scripts ou mais linhas de codigo????
Ponto na tela
Photon Duvida
(RESOLVIDO)Ajuda na animação do Mixamo
[Duvida] Como dar play e pausar uma animacao??
Como criar um timer?
Sistema de Sensibilidade Do Mouse X e Y!
Sistema multiplayer por Salas
Vender ideia de jogo para desenvolvedora
FORMAÇÃO DE EQUIPE PARA JOGO MULTIPLAYER DE SOBREVIVENCIA
eu preciso de um script de contagem para o me jogo alguem pode me ajudar?
Unity Congelando
[Resolvido]Como pode ser feito um HUD?
Script sem erro, mas não funciona
Google VR
Ajuda sobre melhorar a Fricção no Wheel Collider
sombrancelha do mixamo
[RESOLVIDO]Oque significa "?"
Dúvida sobre jogo android...
OBJETO INSTANCIANDO EM POSIÇÃO ERRADA
[Duvida] NavMeshAgente se movendo muito rapido!
Alguma alternativa para os JOINT do unity
Projeto B
Script + Direção
Alguem quer ajudar em meu jogo???
[Resolvido] Como chamar uma void ou função, através de um botão.
[RESOLVIDO] Como subir escadas
For lista
[RESOLVIDO] Sistema de recarregamento Precário.
[Duvida] Com NavMesh;
[Duvida] Com LookAt
[Resolvido]Objeto não está sendo instanciado
[DUVIDA] - Pontuação e fim de jogo
Network Manager opção sumiu
PROBLEMA TEXTURA E TELA GAME
[Resolvido] Colisores nao colidem!!
Como colocar dano no inimigo? e vida no player?
O que falta??
QUEM AI TA DISPOSTO A DESENVOLVER UM GAME EM EQUIPE??
[TUTORIAL] FPSController nadar e mergulhar, junto com efeito submerso
Receber tiro(animação)
Limite de tela
[Resolvido]COMO CONSULTAR O PAINEL DE PREFERENÇIAS DA UNITY?
Alguém poderia me dizer o que estou fazendo de errado nesses scripts? (Vuforia SDK).
Hoje à(s) 12:08 pm
Hoje à(s) 12:04 pm
Hoje à(s) 11:06 am
Hoje à(s) 7:45 am
Hoje à(s) 7:41 am
Hoje à(s) 7:40 am
Hoje à(s) 7:39 am
Hoje à(s) 7:38 am
Hoje à(s) 7:31 am
Hoje à(s) 7:26 am
Hoje à(s) 12:08 am
Ontem à(s) 7:17 pm
Ontem à(s) 4:21 pm
Ontem à(s) 2:54 pm
Ontem à(s) 1:56 pm
Ontem à(s) 9:22 am
Ontem à(s) 8:59 am
Sab Maio 27, 2017 11:46 pm
Sab Maio 27, 2017 8:50 pm
Sab Maio 27, 2017 6:49 pm
Sab Maio 27, 2017 6:45 pm
Sab Maio 27, 2017 5:54 pm
Sab Maio 27, 2017 5:39 pm
Sab Maio 27, 2017 5:28 pm
Sab Maio 27, 2017 5:08 pm
Sab Maio 27, 2017 4:52 pm
Sab Maio 27, 2017 4:46 pm
Sab Maio 27, 2017 4:21 pm
Sab Maio 27, 2017 3:05 pm
Sab Maio 27, 2017 2:50 pm
Sab Maio 27, 2017 1:59 pm
Sab Maio 27, 2017 1:45 pm
Sab Maio 27, 2017 12:54 pm
Sab Maio 27, 2017 10:38 am
Sab Maio 27, 2017 1:59 am
Sab Maio 27, 2017 1:29 am
Sab Maio 27, 2017 12:37 am
Sex Maio 26, 2017 11:57 pm
Sex Maio 26, 2017 11:36 pm
Sex Maio 26, 2017 11:13 pm
Sex Maio 26, 2017 10:42 pm
Sex Maio 26, 2017 9:00 pm
Sex Maio 26, 2017 8:56 pm
Sex Maio 26, 2017 8:51 pm
Sex Maio 26, 2017 8:24 pm
Sex Maio 26, 2017 7:53 pm
Sex Maio 26, 2017 7:30 pm
Sex Maio 26, 2017 5:27 pm
Sex Maio 26, 2017 5:17 pm
Sex Maio 26, 2017 5:15 pm
Sex Maio 26, 2017 4:28 pm
Sex Maio 26, 2017 4:13 pm
Sex Maio 26, 2017 3:53 pm
Sex Maio 26, 2017 3:27 pm
Sex Maio 26, 2017 2:42 pm
Sex Maio 26, 2017 1:57 pm
Sex Maio 26, 2017 1:57 pm
Sex Maio 26, 2017 1:50 pm
Sex Maio 26, 2017 11:59 am
Sex Maio 26, 2017 11:49 am
Sex Maio 26, 2017 11:38 am
Sex Maio 26, 2017 10:08 am
Sex Maio 26, 2017 9:26 am
Sex Maio 26, 2017 2:49 am
Sex Maio 26, 2017 2:35 am
Sex Maio 26, 2017 12:58 am
Sex Maio 26, 2017 12:54 am
Qui Maio 25, 2017 10:49 pm
Qui Maio 25, 2017 10:39 pm
Qui Maio 25, 2017 10:03 pm
Qui Maio 25, 2017 8:55 pm
Qui Maio 25, 2017 8:51 pm
Qui Maio 25, 2017 8:46 pm
Qui Maio 25, 2017 7:31 pm
Qui Maio 25, 2017 6:15 pm
Qui Maio 25, 2017 5:54 pm
Qui Maio 25, 2017 5:48 pm
Qui Maio 25, 2017 5:17 pm
Qui Maio 25, 2017 3:08 pm
Qui Maio 25, 2017 1:08 pm
Qui Maio 25, 2017 11:51 am
Qui Maio 25, 2017 10:49 am
Qui Maio 25, 2017 10:08 am
Qui Maio 25, 2017 9:39 am
Qui Maio 25, 2017 9:00 am
Qua Maio 24, 2017 11:31 pm
Qua Maio 24, 2017 10:13 pm
Qua Maio 24, 2017 9:57 pm
Qua Maio 24, 2017 9:38 pm
Qua Maio 24, 2017 8:25 pm
Qua Maio 24, 2017 8:23 pm
Qua Maio 24, 2017 8:00 pm
Qua Maio 24, 2017 6:24 pm
Qua Maio 24, 2017 5:51 pm
Qua Maio 24, 2017 5:50 pm
Qua Maio 24, 2017 4:40 pm
Qua Maio 24, 2017 3:43 pm
Qua Maio 24, 2017 3:15 pm
Qua Maio 24, 2017 2:44 pm
Ramon Davidson
als260502
Mic4el
dstaroski
dstaroski
dstaroski
dstaroski
dstaroski
dstaroski
dstaroski
Marc7
DuViDoSo34
Mic4el
Zecandy
thiagograssi
weslleyFx
zZAndersonZz
PauloFR
dstaroski
Unidade3d5
Gabriel César O
thiagograssi
bruxamissi
PauloFR
Callyde Jr
Mic4el
Mic4el
rafaelllsd
julioou
julioou
fecirineu
bruxamissi
marcos4503
glauco
thiagograssi
Dom3000
Mikeofcoji
fecirineu
aleksander700
rafaelllsd
Ghosthy
PauloFR
PauloFR
marcos4503
AndyShow
hrr23
thiagograssi
DuViDoSo34
Gabriel César O
DuViDoSo34
Weverton Borges da Silva
aleksander700
aleksander700
dazentt55
Xurupitinha
dazentt55
John Rambo
LuizFixa3D
Zecandy
PauloFR
Callyde Jr
bruxamissi
weslleyFx
JoelMJunior
hen000
rafaelllsd
rafaelllsd
thiagograssi
wender
Henrique Ramires
dazentt55
916anderson
Matrirxp
marcos4503
bruxamissi
DuViDoSo34
dazentt55
julioou
Madness
felipefell
DuViDoSo34
DuViDoSo34
Chilinger
DuViDoSo34
DuViDoSo34
DuViDoSo34
thiagograssi
PauloFR
thiagograssi
Miss Talon
Junim
Manawydan
MarcosSchultz
Junim
JCLEON
aleksander700
Xurupitinha
marcos4503
WolfTheZelda

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

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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 470
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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 470
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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 470
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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 569
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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 569
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 weslleyFx em Seg Maio 02, 2016 12:41 pm

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

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 569
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 weslleyFx em Seg Maio 02, 2016 1:42 pm

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

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 569
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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 1022
REPUTAÇÃO : 6
Idade : 15
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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 214
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 : 1085
REPUTAÇÃO : 42
Áreas de atuação : SketchUp, Unity, Design.
Respeito as regras :

Ver perfil do usuário http://www.joltflipgames.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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 255
REPUTAÇÃO : 0
Idade : 21
Á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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 255
REPUTAÇÃO : 0
Idade : 21
Á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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 386
REPUTAÇÃO : 4
Idade : 16
Á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 : 1022
REPUTAÇÃO : 6
Idade : 15
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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 1022
REPUTAÇÃO : 6
Idade : 15
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 : 1035
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 weslleyFx em Qua Nov 30, 2016 11:42 pm

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

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 185
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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 1022
REPUTAÇÃO : 6
Idade : 15
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 : 185
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 weslleyFx 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
weslleyFx
Moderador

Masculino PONTOS : 2453
REPUTAÇÃO : 540
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 : 829
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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 67
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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 67
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 : 67
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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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 : 398
REPUTAÇÃO : 13
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 : 1317
REPUTAÇÃO : 337
Idade : 27
Áreas de atuação : Téc. Hardware e Redes, Programação C#, Desenvolvimento Android

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 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 : 398
REPUTAÇÃO : 13
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 : 398
REPUTAÇÃO : 13
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 : 8739
REPUTAÇÃO : 1350
Idade : 20
Á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

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