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 :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Aparecer uma caixinha em algum tempo do jogo.
MySql Unity(2018.2.14F1)
problemas com rigidbody
keystore Android
animator duvidas
Rodas de tanque
Formação de equipe (projeto já em andamento)
Unity Network, isServer, IsLocalPlayer..
Como executar uma animação atraves de um botão?
[TUTORIAL] Sistema de Oficina de Carros
[TUTORIAL] Unity 5 - Botão contínuo usando UI (Manter pressionado)
[PEDIDO] Script de Atirar
[TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
[RESOLVIDO] Erro de Prefab quando realiza o Build de um projeto 3D
[____ADMINISTRAÇÃO____] Alterações IMPORTANTES no fórum.
Renderizar apenas algumas partes do mapa.
[RESOLVIDO] Água à noite?
[___COMO UTILIZAR O FÓRUM___] Principais botões e suas funções
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[PACOTE 2D GRATUITO] Pacote com 17 sprites de alta qualidade para baixar!
eixos X e Z nao rotaciona junto com o play
Erro na unity
Drop Shadows
Senha jogo schultz
Como fazer um sistema para conectar objetos?
Help!!! Criarção de Shader.
Projeto Estilo DD Tank
Duvidas com ADS
[TUTORIAL] Unity 5 - Sistema básico de jogo estilo ANGRY BIRDS
problema com giro na realidade aumentada
Sistema stealth
FreezeRotation e FreezePosition RigidBody Unity
[RESOLVIDO] Instanciar randômicamente prefab acima do terreno. Unity.
Gravidade para objetos selecionados
Procura-se Modelador para Mapas
Mudar ícone do jogo pelo script
[TUTORIAL] Plants VS Zombies na Unity!
A possibilidade de importar uma Biblioteca (dll) numa classe (MonoBehavior) da Unity?
IAP e ADS: plugins obsoletos
Raycast ponto a ponto
[Em Desenvolvimento] Battles of Worlds
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[RESOLVIDO] Linkar Script do inimigo quando o player entrar no collider dele
Ajuda sobre script para abir e fechar porta malas
site pra modelos 3d de armas
[RESOLVIDO] alguem que saiba fazer um jogo de fps pode ajuda?
Compilação do Game
[TUTORIAL] Escolher a quantos FPS (fixos) o seu jogo deverá rodar.
Snake Game - JavaScript + SVG
(Dúvida) Como acessar o sensor de movimento do Android?
[TUTORIAL] Gerenciamento de idiomas para o jogo ou app
[RESOLVIDO] Menu de um jogo com vários mapas
[TUTORIAL] Criando jogo de cartas com I.A (C# e Visual Studio) - Parte 01
USSecurity
Sawed off (Modelo 3D)
Direito autoral
Contar objetos clones
Dividir uma mesh em dois.
Procura se level designer ou diretor de arte ( REMUNERADO )
[TUTORIAL] Sistema COMPLETO de câmeras
[RESOLVIDO] Animaçao só funciona uma vez
[RESOLVIDO] Eu não consigo abrir o monodevelop
Novo Asset Sistema de Portas e Chaves
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
[RESOLVIDO] Como fazer a animação executar so uma vez
[JOGO] Mega BombermOn - Pokémon + Bomberman
Meu personagem na Realidade Aumentada fica tremendo
Carregar arquivos da biblioteca
Jogo de Tabuada
ik nao funciona
DUVIDA EM SCRIPT
Cores nos materiais sem criar material
[Projeto] Line Battle
[TUTORIAL] Controle de personagem em primeira pessoa + pulo para android!
SkyBox Com qualidade Horrivel!
[RESOLVIDO] Bug/Erro da unity?
(ARQUIVO) Leia aqui como obter sucesso com seu jogo independente?
erro unity para android
MENU DE SELEÇÃO DE FASES
[PROJETO CONCLUÍDO] Defeat the Illuminatis
sombras para jogos mobile
Corcle (Mobile) - Um jogo simples com um nome estranho.
[TUTORIAL] Jogo da forca em C#
[RESOLVIDO] Dúvida com relação à "Escopo" e "Namespace" entre pastas na Unity
Problema ao rotacionar valores negativos.
Importe objeto do blender
Monodevelop
Equipe RedSkyGames Studio
Blender ao juntar algumas partes ficam mais escuro
new Vector3 (o que ele ta fazendo de errado??)(iniciante)
[TUTORIAL] Sistema de Controlador De Primeira Pessoa Com Som De Passos Aleatorios
[TUTORIAL] AI Enemy ( Jogos de terror )
[RESOLVIDO] Retornar um resultado de pagina PHP com texto formatado
[RESOLVIDO] Como Voltar o Player para o Início usando Trigger? C#
Unity - Deslizar Para Rotacionar o 'Personagem'
Como criar um poligono dinamicamente?
Instantiate
Em busca de um modelador 3D para plataforma educacional (Já ganhamos apoio de faculdades)
Armazenar as informações de um botão e duplica-lo
Hoje à(s) 4:28 pm
Hoje à(s) 1:03 pm
Hoje à(s) 12:40 pm
Hoje à(s) 1:40 am
Ontem à(s) 5:54 pm
Ontem à(s) 4:07 pm
Dom Dez 09, 2018 8:02 pm
Dom Dez 09, 2018 6:31 pm
Dom Dez 09, 2018 6:19 pm
Sab Dez 08, 2018 11:28 pm
Sab Dez 08, 2018 9:42 pm
Sab Dez 08, 2018 3:20 pm
Sex Dez 07, 2018 6:04 pm
Sex Dez 07, 2018 12:11 pm
Sex Dez 07, 2018 5:03 am
Qui Dez 06, 2018 11:02 pm
Qui Dez 06, 2018 8:17 pm
Qui Dez 06, 2018 6:30 pm
Qui Dez 06, 2018 6:30 pm
Qui Dez 06, 2018 6:26 pm
Qui Dez 06, 2018 5:59 pm
Qui Dez 06, 2018 1:28 pm
Qua Dez 05, 2018 8:53 pm
Qua Dez 05, 2018 11:31 am
Ter Dez 04, 2018 6:57 pm
Ter Dez 04, 2018 3:24 pm
Ter Dez 04, 2018 1:37 pm
Ter Dez 04, 2018 8:02 am
Ter Dez 04, 2018 7:50 am
Ter Dez 04, 2018 4:10 am
Ter Dez 04, 2018 3:57 am
Ter Dez 04, 2018 3:39 am
Seg Dez 03, 2018 10:45 pm
Seg Dez 03, 2018 8:47 pm
Seg Dez 03, 2018 12:11 pm
Seg Dez 03, 2018 12:08 pm
Seg Dez 03, 2018 9:09 am
Seg Dez 03, 2018 9:00 am
Seg Dez 03, 2018 5:12 am
Seg Dez 03, 2018 1:42 am
Dom Dez 02, 2018 11:32 pm
Dom Dez 02, 2018 11:31 pm
Dom Dez 02, 2018 11:29 am
Dom Dez 02, 2018 1:51 am
Dom Dez 02, 2018 12:42 am
Sab Dez 01, 2018 9:24 pm
Sab Dez 01, 2018 9:11 pm
Sab Dez 01, 2018 1:37 pm
Sab Dez 01, 2018 1:22 pm
Sex Nov 30, 2018 4:10 pm
Sex Nov 30, 2018 10:28 am
Qui Nov 29, 2018 2:02 am
Qui Nov 29, 2018 1:11 am
Qui Nov 29, 2018 1:08 am
Qua Nov 28, 2018 3:03 pm
Qua Nov 28, 2018 3:00 pm
Qua Nov 28, 2018 1:29 pm
Qua Nov 28, 2018 4:09 am
Qua Nov 28, 2018 3:03 am
Ter Nov 27, 2018 8:49 pm
Ter Nov 27, 2018 5:50 pm
Ter Nov 27, 2018 1:46 pm
Seg Nov 26, 2018 8:29 pm
Seg Nov 26, 2018 2:56 pm
Seg Nov 26, 2018 2:55 pm
Seg Nov 26, 2018 12:43 pm
Seg Nov 26, 2018 9:33 am
Seg Nov 26, 2018 9:28 am
Dom Nov 25, 2018 11:06 pm
Dom Nov 25, 2018 9:21 am
Dom Nov 25, 2018 5:04 am
Sab Nov 24, 2018 8:41 pm
Sab Nov 24, 2018 4:52 pm
Sab Nov 24, 2018 4:03 pm
Sab Nov 24, 2018 2:33 pm
Sab Nov 24, 2018 8:49 am
Sab Nov 24, 2018 6:54 am
Sex Nov 23, 2018 4:28 pm
Sex Nov 23, 2018 1:58 pm
Sex Nov 23, 2018 1:29 pm
Sex Nov 23, 2018 12:49 pm
Sex Nov 23, 2018 12:42 pm
Qui Nov 22, 2018 7:21 pm
Qui Nov 22, 2018 12:59 pm
Qui Nov 22, 2018 10:53 am
Qui Nov 22, 2018 10:33 am
Qua Nov 21, 2018 7:41 pm
Qua Nov 21, 2018 11:09 am
Qua Nov 21, 2018 7:30 am
Ter Nov 20, 2018 10:58 pm
Ter Nov 20, 2018 4:07 pm
Ter Nov 20, 2018 2:37 pm
Ter Nov 20, 2018 12:58 pm
Seg Nov 19, 2018 11:11 pm
Seg Nov 19, 2018 7:47 pm
Seg Nov 19, 2018 7:42 pm
Seg Nov 19, 2018 2:46 pm
Seg Nov 19, 2018 1:48 pm
Seg Nov 19, 2018 11:40 am
MayLeone
zZAndersonZz
francisco barroso
natanael.olimpio
gilgsjr
NKKF
BRGC
Callyde Jr
luis45
Jp.Game
ueslei16
gcs
dstaroski
McbDJ
MarcosSchultz
Isabela
gilgsjr
dstaroski
dstaroski
dstaroski
francisco barroso
yVIEIRA
NKKF
francisco barroso
henriquegames501
gilgsjr
Manawydan
Zack2
yanayana
MarcosSchultz
MarcosSchultz
MarcosSchultz
Emerson Rebouças
lesgoy
Opiz
NKKF
Tegh
Tegh
Zack2
MarcosSchultz
Dom3000
Dom3000
Luizdanhp
ffabim
gutozardy
diegopds
gilgsjr
Joab Artes Gráficas
SuperGamer
glauco
dstaroski
Valdir dos Santos
igorobm
igorobm
TioUV
TioUV
dstaroski
conceptfac
rZwr
Erivan
francisco barroso
tonCosta3939
Simplizãum S
ninjagamergabriel
Hube
Mago
natanael.olimpio
natanael.olimpio
MarcosSchultz
diegopds
KAYKETHEO27
NKKF
MRX
tonCosta3939
Joab Artes Gráficas
Zack2
Joab Artes Gráficas
francisco barroso
Callyde Jr
dstaroski
Joab Artes Gráficas
Joab Artes Gráficas
clroberto2005
Insurgente
diegopds
diegopds
Tegh
Samuelostgamer
TioUV
NKKF
Simplizãum S
ArysonSantos
Jmspp
gonzaga
Magnatah
conceptfac
francisco barroso
rZwr
MayLeone

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

Página 1 de 2 1, 2  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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 :D

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

Masculino PONTOS : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1031
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1031
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 :D

Budyw
Membro
Membro

Masculino PONTOS : 1031
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 :D

:D
avatar
Weslley
Moderador

Masculino PONTOS : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1130
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1130
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1130
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1130
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 1607
REPUTAÇÃO : 9
Idade : 17
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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 775
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
Mestre
Mestre

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

Ver perfil do usuário http://www.joltflip.ga

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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 816
REPUTAÇÃO : 0
Idade : 23
Á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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 816
REPUTAÇÃO : 0
Idade : 23
Á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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 :D
avatar
Moa
Membro
Membro

Masculino PONTOS : 947
REPUTAÇÃO : 4
Idade : 18
Á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 : 1607
REPUTAÇÃO : 9
Idade : 17
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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 :D

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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 1607
REPUTAÇÃO : 9
Idade : 17
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
Avançado
Avançado

Masculino PONTOS : 1609
REPUTAÇÃO : 39
Idade : 20
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 747
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1607
REPUTAÇÃO : 9
Idade : 17
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 : 747
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 : 3270
REPUTAÇÃO : 640
Idade : 20
Á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 : 1390
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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 628
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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 628
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 : 628
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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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 : 1057
REPUTAÇÃO : 17
Idade : 18
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 : 3864
REPUTAÇÃO : 1006
Idade : 29
Áreas de atuação : Téc. Hardware e Redes, Programação C#.

Respeito as regras :

Ver perfil do usuário https://gamejolt.com/games/defeattheilluminatis/347786

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 : 1057
REPUTAÇÃO : 17
Idade : 18
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 : 1057
REPUTAÇÃO : 17
Idade : 18
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 : 61205
REPUTAÇÃO : 2101
Idade : 22
Á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

Voltar ao Topo

- Tópicos similares

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