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:
Unity - Deslizar Para Rotacionar o 'Personagem'
Como criar um poligono dinamicamente?
[JOGO] Mega BombermOn - Pokémon + Bomberman
Sistema de Controlador De Primeira Pessoa Com Som De Passos Tocando Aleatoriamente
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
História que eu fiz na hora vaga.
Blander ao juntar algumas partes ficam mais escuro
Nao consigo loga no banco de dados no mobile usando Mysql e PHP
Retornar um resultado de pagina PHP com texto formatado
Como Voltar o Player para o Início usando Trigger? C#
[TUTORIAL] Banco de dados || MySQL
IA de turret
Tem como deixar a Layer do objeto branca?
[TUTORIAL] Baixando roupas e alvos para MakeHuman
Drop Shadows
[RESOLVIDO] rotação no exio z
Importe objeto do blender
Erro ao compilar para IOS
Jogo 2D unity - trocar sprite ao apertar botão
Bug/Erro da unity?
Unity + MySQL
Erro de Prefab quando realiza o Build de um projeto 3D
[TUTORIAL] Unity 5 - Sistema Completo de PORTAS E CHAVES
movimento de uma nave
sombras para jogos mobile
o q vcs acham??
[Duvida] Bug ao usar Vector3.Lerp Objeto é teleportado na lata
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Download grátis de ônibus brasileiros - Millennium II Piso Baixo Central
[Devlog] Lost in the world 14/11
Discord para desenvolvimento de jogos
[TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
(UNITY) Erro ao compilar a Build Android
[RESOLVIDO]Como aplicar textura trânsparente na unity
Unity 3D - Desenhos Com Física(Download Projeto)
Como mudar o CONTROLLER do ANIMATOR
[RESOLVIDO] erro no unity
Problema ao rotacionar valores negativos.
Calcular hora ?
Novo estilo de estourar blocos, baixe meu jogo pessoal ... conto com a ajuda de vocês!!!
Jogo que fiz para uma Jam da minha faculdade FATEC Ourinhos.
Não consigo o Android SDK!!
[RESOLVIDO] Como faço para depois de determinado tempo acontecer algo?
CRASH AO ENTRAR NA CENA UNITY
estou procurando um bom tutorial de IA Basica
Erro ao colocar script no botão
Novo jogo em desenvolvimento, 13º andar
Text Dinâmico no botão
[TUTORIAL] Sistema Pdv, Mercado, Padaria, Conveniência, Lojas Em Geral - C# VISUAL STUDIO
[TUTORIAL] - Script de lanterna pra seu jogo de terror e outros...
[RESOLVIDO] Unity - Reproduzir Videos Do Blender No Unity
Ordem de fases
[RESOLVIDO] Tenho algum erro de simbolo no script do carro o que poderia ser?
[RESOLVIDO] Dúvida. Detectar colisões nas instâncias
erro na minha IA
[TUTORIAL] While, como funciona?
Mostrar a contagem em 10K e 100M
[TUTORIAL] AI Enemy 2.0 + animações ( Jogos de terror )
Cores nos materiais sem criar material
Poderia modelar um personagem cartoon para meu projeto
Como coloco modo de criação de personagem?
[Ajuda] Assets
RayCasting + Disparo Um Bom Tipo De Video Aula.
Ajuda de Blender para Unity
Procuro Equipe Para Criação de Jogo [PAGO]
[RESOLVIDO] erro WaterBaseEditor.cs não encontra o caminho do WaterBase
[TUTORIAL] Criar Analógico Virtual UI Para Mobile.
[TUTORIAL] Acessar nomes de arquivos diretamente da pasta
Objeto dentro do player nao ta rotacioando
[TUTORIAL] MENU PRINCIPAL - UNITY 5 (5.3 ou superior) (Com UI)
Array de prefabs
screenshot
instancia item aleatorio em varias posicoes
[TUTORIAL] Mira que fica se movendo (ocilando,tremendo,etc)
Getcomponent de C# para java
Curso barato de C#
Unity - Modelo 3D em Menu 2D
[RESOLVIDO] Camera Estilo Showroom
A um mês com unity bugado sem resposta
[GameJam] Competição organizada pela BitCodeStudios
Pegar strings de "duas em duas"
criar um piano no unity
Movimentação
Instanciar objeto onde cricar com mouse ou touch
Dúvida Sistema de Energia para jogo android
[RESOLVIDO] Inimigo patrulhando constantemente estilo mario
BUG UNITY 3D ROSA A SCENE E GAME
Dúvida. Colliders no Unity3D
Pq a grama do Unity é tao pesada?
Alguem cria uma conta na playstore pra mim? :(
Capture Panorama?
Artistas 3D e Programadores Unity3D (Remunerado)
Input Get Key
SCHULTZ Jogo de terror
(Erro) IndexOutOfRangeException:Array index is out of range
EU QUERIA COLOCAR ANUNCIOS NO MEU JOGO NA MUDANÇA DE CENAS MAS NÃO ACHO UM JEITO
Unity - Duvida Sobre a JDK Que Vocês Usam
Hoje à(s) 7:47 pm
Hoje à(s) 7:42 pm
Hoje à(s) 7:42 pm
Hoje à(s) 6:48 pm
Hoje à(s) 2:46 pm
Hoje à(s) 1:48 pm
Hoje à(s) 11:40 am
Hoje à(s) 1:05 am
Hoje à(s) 12:59 am
Ontem à(s) 11:35 pm
Ontem à(s) 11:28 pm
Ontem à(s) 11:20 pm
Ontem à(s) 11:20 pm
Ontem à(s) 11:18 pm
Ontem à(s) 11:13 pm
Ontem à(s) 2:16 am
Ontem à(s) 12:38 am
Sab Nov 17, 2018 11:31 pm
Sab Nov 17, 2018 11:20 pm
Sab Nov 17, 2018 11:16 pm
Sab Nov 17, 2018 11:13 pm
Sab Nov 17, 2018 11:11 pm
Sab Nov 17, 2018 11:04 pm
Sab Nov 17, 2018 11:03 pm
Sab Nov 17, 2018 11:00 pm
Sab Nov 17, 2018 10:55 pm
Sab Nov 17, 2018 2:50 pm
Sab Nov 17, 2018 1:31 pm
Sab Nov 17, 2018 11:12 am
Sab Nov 17, 2018 10:31 am
Sex Nov 16, 2018 3:50 pm
Sex Nov 16, 2018 11:23 am
Qui Nov 15, 2018 4:59 pm
Qui Nov 15, 2018 3:23 pm
Qua Nov 14, 2018 5:44 pm
Qua Nov 14, 2018 1:25 pm
Qua Nov 14, 2018 10:45 am
Ter Nov 13, 2018 11:25 pm
Ter Nov 13, 2018 11:18 pm
Ter Nov 13, 2018 5:55 pm
Ter Nov 13, 2018 1:30 pm
Ter Nov 13, 2018 11:33 am
Seg Nov 12, 2018 9:52 pm
Seg Nov 12, 2018 3:57 pm
Seg Nov 12, 2018 3:24 pm
Seg Nov 12, 2018 8:13 am
Seg Nov 12, 2018 8:11 am
Dom Nov 11, 2018 6:56 pm
Dom Nov 11, 2018 2:41 pm
Dom Nov 11, 2018 8:12 am
Dom Nov 11, 2018 7:57 am
Sab Nov 10, 2018 8:54 pm
Sab Nov 10, 2018 5:11 pm
Sab Nov 10, 2018 2:52 pm
Sab Nov 10, 2018 2:13 pm
Sab Nov 10, 2018 12:39 am
Sab Nov 10, 2018 12:28 am
Sex Nov 09, 2018 3:56 pm
Qui Nov 08, 2018 11:28 pm
Qui Nov 08, 2018 11:25 pm
Qui Nov 08, 2018 10:01 pm
Qui Nov 08, 2018 7:47 pm
Qui Nov 08, 2018 12:36 pm
Qui Nov 08, 2018 12:31 pm
Qui Nov 08, 2018 12:28 pm
Qui Nov 08, 2018 12:53 am
Qua Nov 07, 2018 5:52 pm
Qua Nov 07, 2018 12:49 pm
Ter Nov 06, 2018 2:05 pm
Ter Nov 06, 2018 12:30 pm
Ter Nov 06, 2018 11:32 am
Ter Nov 06, 2018 1:10 am
Seg Nov 05, 2018 6:57 pm
Seg Nov 05, 2018 3:36 pm
Seg Nov 05, 2018 12:44 am
Dom Nov 04, 2018 5:32 pm
Dom Nov 04, 2018 5:31 pm
Dom Nov 04, 2018 5:30 pm
Dom Nov 04, 2018 1:05 am
Sab Nov 03, 2018 1:36 pm
Sex Nov 02, 2018 11:38 pm
Sex Nov 02, 2018 10:55 pm
Sex Nov 02, 2018 8:16 pm
Sex Nov 02, 2018 7:50 pm
Sex Nov 02, 2018 7:41 pm
Sex Nov 02, 2018 7:27 pm
Sex Nov 02, 2018 6:36 pm
Sex Nov 02, 2018 3:27 pm
Sex Nov 02, 2018 3:35 am
Sex Nov 02, 2018 3:24 am
Qui Nov 01, 2018 3:56 pm
Qui Nov 01, 2018 3:52 pm
Qui Nov 01, 2018 1:18 pm
Qui Nov 01, 2018 7:57 am
Qui Nov 01, 2018 2:26 am
Qui Nov 01, 2018 2:05 am
Qua Out 31, 2018 9:20 pm
Qua Out 31, 2018 6:09 pm
Qua Out 31, 2018 7:17 am
Magnatah
conceptfac
Callyde Jr
Simplizãum S
francisco barroso
rZwr
MayLeone
SuperGamer
MarcosSchultz
sabbath
sabbath
MarcosSchultz
sabbath
MarcosSchultz
MarcosSchultz
Callyde Jr
NKKF
theus.mors
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
marcos4503
Daniel Pires da Silva
francisco barroso
Weslley
SuperGamer
Mateus2583
JohnRambo
francieljesus
sabbath
TioUV
JohnRambo
MarcosSchultz
MarceloYBP
Weslley
Callyde Jr
hamerom
luansantos
francisco barroso
Vitor Paulino
dstaroski
dstaroski
SuperGamer
Patrick
dstaroski
dstaroski
SuperGamer
Magnatah
francisco barroso
Samuelostgamer
GattiMene
MarceloYBP
SuperGamer
Tegh
francisco barroso
NKKF
GameLACK
dstaroski
dstaroski
dstaroski
jack2117
Mathss
Daniel Dória
JohnRambo
gurgelg752
francisco barroso
MarcosSchultz
Nalfam
dstaroski
MarcosSchultz
dstaroski
dstaroski
dstaroski
Magnatah
Teio
Callyde Jr
hetrodo
NKKF
CarlosDT94
MarcosSchultz
MarcosSchultz
Magnatah
MrMattD
MarcosSchultz
MarcosSchultz
francisco barroso
francisco barroso
Callyde Jr
Dom3000
MarcosSchultz
MarcosSchultz
francisco barroso
MATHEUS1233
dstaroski

Travar a camera do FirstPersoController

Ir em baixo

Resolvido Travar a camera do FirstPersoController

Mensagem por Zecandy em Seg Nov 27, 2017 7:51 pm

Galera alguem sabe como travar a camera do firstpersocontroller, ja segui diversos tuto e não consegui, minha Unity é a 5.6.1f


Última edição por Zecandy em Sab Dez 02, 2017 4:18 pm, editado 1 vez(es)
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por JohnRambo em Seg Nov 27, 2017 9:13 pm

Pc ou Android? Se for PC, vc pode desativar os comandos do mouse look. Mas só faça isso se você não for usar os movimentos do mouse.
avatar
JohnRambo
Moderador

Masculino PONTOS : 2622
REPUTAÇÃO : 493
Idade : 18
Áreas de atuação : Unity;
Programação;
Modelagem;
Música e Sonorização;
Cursando Análise e Desenvolvimento de Sistemas;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Seg Nov 27, 2017 9:16 pm

Entao vai ser tipo um inventario no pc, vai ficar desativado so enquanto estiver no inventario.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por JohnRambo em Seg Nov 27, 2017 9:20 pm

Ata. Neste caso vc faz um Script simples que ficará anexado ao player. Crie uma booleana estática que será ativada quando o player sacar o inventário, e crie uma variável do tipo "Mouse look"... Quando a booleana estiver true, o Script do mouse look é desativado, e vice versa.

Se não tiver entendido, eu posso fazer pra vc daqui uns 70 minutos (só acabar de jantar aqui kk)
avatar
JohnRambo
Moderador

Masculino PONTOS : 2622
REPUTAÇÃO : 493
Idade : 18
Áreas de atuação : Unity;
Programação;
Modelagem;
Música e Sonorização;
Cursando Análise e Desenvolvimento de Sistemas;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Ter Nov 28, 2017 9:34 am

Opa john Rambo so vi agora nao consegui desativar o mouse lokk, ajuda sim porfavor Cheers

Tambem segui este procedimento e não deu certo
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Ter Nov 28, 2017 11:09 pm

Alguma ajuda POR FAVOR
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por JohnRambo em Sex Dez 01, 2017 2:45 pm

Opa Voltei amigo, estive meio doente esses últimos dias, desculpa ai. Mas vamos lá. Poste aqui o script que contem o comando para abrir o inventário
avatar
JohnRambo
Moderador

Masculino PONTOS : 2622
REPUTAÇÃO : 493
Idade : 18
Áreas de atuação : Unity;
Programação;
Modelagem;
Música e Sonorização;
Cursando Análise e Desenvolvimento de Sistemas;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sex Dez 01, 2017 6:10 pm

Ta aqui amigo

Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityStandardAssets.Characters.FirstPerson;

public class Inventario_Controller : MonoBehaviour {

 private Player_Controller player;
 private GameObject jogador;
 public GameObject inventario;
 public List<SlotIventario> itensSlot;
 public static Inventario_Controller instance;
 public int MaxSlot;
 public SlotIventario slotPrefab;
 public Transform itensGrid;
 public SlotIventario selectedSlot;
 public GameObject optionOnSelect;
 public GameObject butonUse;
 public GameObject butonRemove;
 public GameObject butonEquip;
 public Vector3 dropItem;


 void Start ()
 {
 jogador = GameObject.FindWithTag("Player");
 player = FindObjectOfType(typeof(Player_Controller))as Player_Controller;
 //dropItem = new Vector3(player.transform.position.x+0.2f,player.transform.position.y,player.transform.position.z);
 instance = this;

 for (int i = 0; i < MaxSlot; i++)
 {
 GameObject tempslot = Instantiate(slotPrefab.gameObject);
 tempslot.transform.SetParent(itensGrid,false);
 //tempslot.transform.localScale =new Vector3(1,1,1);
 itensSlot.Add(tempslot.GetComponent<SlotIventario>());
 }
 }
 
 void Update ()
 {

 if(!inventario.activeSelf)
 {
 selectedSlot = null;
 }
 InventarioActive();

 if(selectedSlot != null && selectedSlot.currentItem != null)
 {
 optionOnSelect.SetActive(true);

 if(selectedSlot.currentItem.podeEquipar)
 {
 butonUse.SetActive(false);
 }else
 {
 butonEquip.SetActive(false);
 }
 }else
 {
 optionOnSelect.SetActive(false);
 }
 }

 public void AddItem_Inventario(ItemBase item)
 {
 bool ItemEncontrado = false;
 SlotIventario slotVazio = ProximoVazio();

 if(item.podeMesclar)
 {
 foreach( SlotIventario slot in itensSlot)
 {
 if(slot.currentItem !=null && slot.currentItem.nomeItem == item.nomeItem)
 {
 slot.currentItem.AddItem();
 ItemEncontrado =true;
 }
 }
 if(!ItemEncontrado && slotVazio !=null)
 {
 slotVazio.currentItem = item;
 }
 }else if(slotVazio!= null)
 {
 slotVazio.currentItem = item;
 }
 item.gameObject.SetActive(false);
 }

 private SlotIventario ProximoVazio()
 {
 SlotIventario slotReturn = null;

 foreach(SlotIventario slot in itensSlot)
 {
 if(slot.currentItem == null)
 {
 slotReturn = slot;
 break;
 }
 }
 return slotReturn;
 }

 private void OnEnable()
 {
 selectedSlot = null;
 butonUse.SetActive(true);
 butonEquip.SetActive(true);
 }

 public void UseItem()
 {
 selectedSlot.currentItem.Use();
 selectedSlot.SetupSlot();
 }
 public void RemoveItem()
 {
 ItemBase item = selectedSlot.currentItem;
 item.gameObject.SetActive(true);
 item.transform.position = player.transform.position + dropItem;
 item.slot.currentItem = null;
 item.slot.SetupSlot();
 item.slot = null;

 }
 public void EquipaItem()
 {
 
 }

 public void InventarioActive()
 {

 if(Input.GetKeyDown(KeyCode.Q))
 {
 inventario.SetActive(!inventario.activeSelf);
 }
 if(inventario.activeSelf)
 {
 Screen.lockCursor = false;
 Time.timeScale =0;
 }else
 {
 Screen.lockCursor = true;
 Time.timeScale =1;
 }
 }
}

E MELHORAS PRA TU AMIGO.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por JohnRambo em Sex Dez 01, 2017 6:47 pm

Quanto ao script de movimentação do player e de MouseLook, você está usando os que já vem com unity?
avatar
JohnRambo
Moderador

Masculino PONTOS : 2622
REPUTAÇÃO : 493
Idade : 18
Áreas de atuação : Unity;
Programação;
Modelagem;
Música e Sonorização;
Cursando Análise e Desenvolvimento de Sistemas;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sex Dez 01, 2017 7:02 pm

Uso o firstPersoController do unity.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por JohnRambo em Sex Dez 01, 2017 7:23 pm

Então Amigo o seu script ficaria assim:

Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityStandardAssets.Characters.FirstPerson;

public class Inventario_Controller : MonoBehaviour {

 private Player_Controller player;
 private GameObject jogador;
 public GameObject inventario;
 public List<SlotIventario> itensSlot;
 public static Inventario_Controller instance;
 public int MaxSlot;
 public SlotIventario slotPrefab;
 public Transform itensGrid;
 public SlotIventario selectedSlot;
 public GameObject optionOnSelect;
 public GameObject butonUse;
 public GameObject butonRemove;
 public GameObject butonEquip;
 public Vector3 dropItem;


 void Start ()
 {
 jogador = GameObject.FindWithTag("Player");
 player = FindObjectOfType(typeof(Player_Controller))as Player_Controller;
 //dropItem = new Vector3(player.transform.position.x+0.2f,player.transform.position.y,player.transform.position.z);
 instance = this;

 for (int i = 0; i < MaxSlot; i++)
 {
 GameObject tempslot = Instantiate(slotPrefab.gameObject);
 tempslot.transform.SetParent(itensGrid,false);
 //tempslot.transform.localScale =new Vector3(1,1,1);
 itensSlot.Add(tempslot.GetComponent<SlotIventario>());
 }
 }

 void Update ()
 {

 if(!inventario.activeSelf)
 {
 selectedSlot = null;
 }
 InventarioActive();

 if(selectedSlot != null && selectedSlot.currentItem != null)
 {
 optionOnSelect.SetActive(true);

 if(selectedSlot.currentItem.podeEquipar)
 {
 butonUse.SetActive(false);
 }else
 {
 butonEquip.SetActive(false);
 }
 }else
 {
 optionOnSelect.SetActive(false);
 }
 }

 public void AddItem_Inventario(ItemBase item)
 {
 bool ItemEncontrado = false;
 SlotIventario slotVazio = ProximoVazio();

 if(item.podeMesclar)
 {
 foreach( SlotIventario slot in itensSlot)
 {
 if(slot.currentItem !=null && slot.currentItem.nomeItem == item.nomeItem)
 {
 slot.currentItem.AddItem();
 ItemEncontrado =true;
 }
 }
 if(!ItemEncontrado && slotVazio !=null)
 {
 slotVazio.currentItem = item;
 }
 }else if(slotVazio!= null)
 {
 slotVazio.currentItem = item;
 }
 item.gameObject.SetActive(false);
 }

 private SlotIventario ProximoVazio()
 {
 SlotIventario slotReturn = null;

 foreach(SlotIventario slot in itensSlot)
 {
 if(slot.currentItem == null)
 {
 slotReturn = slot;
 break;
 }
 }
 return slotReturn;
 }

 private void OnEnable()
 {
 selectedSlot = null;
 butonUse.SetActive(true);
 butonEquip.SetActive(true);
 }

 public void UseItem()
 {
 selectedSlot.currentItem.Use();
 selectedSlot.SetupSlot();
 }
 public void RemoveItem()
 {
 ItemBase item = selectedSlot.currentItem;
 item.gameObject.SetActive(true);
 item.transform.position = player.transform.position + dropItem;
 item.slot.currentItem = null;
 item.slot.SetupSlot();
 item.slot = null;

 }
 public void EquipaItem()
 {

 }

 public void InventarioActive()
 {

 if(Input.GetKeyDown(KeyCode.Q))
 {
 inventario.SetActive(!inventario.activeSelf);
 }
 if(inventario.activeSelf)
 {
 Screen.lockCursor = false;
 Time.timeScale =0;
 FirstPersonController.InventarioAberto = true;
 }else
 {
 Screen.lockCursor = true;
 Time.timeScale =1;
 FirstPersonController.InventarioAberto = false;
 }
 }
}

Mas ainda não acabou. É necessário que você vá lá no script "FirstPersonController" Do Player e crie uma variável lá. Assim:

Código:
using System;
using UnityEngine;
using UnityStandardAssets.CrossPlatformInput;
using UnityStandardAssets.Utility;
using Random = UnityEngine.Random;

namespace UnityStandardAssets.Characters.FirstPerson
{
    [RequireComponent(typeof (CharacterController))]
    [RequireComponent(typeof (AudioSource))]
    public class FirstPersonController : MonoBehaviour
    {
        [SerializeField] private bool m_IsWalking;
        [SerializeField] private float m_WalkSpeed;
        [SerializeField] private float m_RunSpeed;
        [SerializeField] [Range(0f, 1f)] private float m_RunstepLenghten;
        [SerializeField] private float m_JumpSpeed;
        [SerializeField] private float m_StickToGroundForce;
        [SerializeField] private float m_GravityMultiplier;
        [SerializeField] private MouseLook m_MouseLook;
        [SerializeField] private bool m_UseFovKick;
        [SerializeField] private FOVKick m_FovKick = new FOVKick();
        [SerializeField] private bool m_UseHeadBob;
        [SerializeField] private CurveControlledBob m_HeadBob = new CurveControlledBob();
        [SerializeField] private LerpControlledBob m_JumpBob = new LerpControlledBob();
        [SerializeField] private float m_StepInterval;
        [SerializeField] private AudioClip[] m_FootstepSounds;    // an array of footstep sounds that will be randomly selected from.
        [SerializeField] private AudioClip m_JumpSound;           // the sound played when character leaves the ground.
        [SerializeField] private AudioClip m_LandSound;           // the sound played when character touches back on ground.

        private Camera m_Camera;
 public static bool InventarioAberto = false;
        private bool m_Jump;
        private float m_YRotation;
        private Vector2 m_Input;
        private Vector3 m_MoveDir = Vector3.zero;
        private CharacterController m_CharacterController;
        private CollisionFlags m_CollisionFlags;
        private bool m_PreviouslyGrounded;
        private Vector3 m_OriginalCameraPosition;
        private float m_StepCycle;
        private float m_NextStep;
        private bool m_Jumping;
        private AudioSource m_AudioSource;

        // Use this for initialization
        private void Start()
        {
            m_CharacterController = GetComponent<CharacterController>();
            m_Camera = Camera.main;
            m_OriginalCameraPosition = m_Camera.transform.localPosition;
            m_FovKick.Setup(m_Camera);
            m_HeadBob.Setup(m_Camera, m_StepInterval);
            m_StepCycle = 0f;
            m_NextStep = m_StepCycle/2f;
            m_Jumping = false;
            m_AudioSource = GetComponent<AudioSource>();
 m_MouseLook.Init(transform , m_Camera.transform);
        }


        // Update is called once per frame
        private void Update()
        {
 if (!InventarioAberto) {
 RotateView ();
 }
            // the jump state needs to read here to make sure it is not missed
            if (!m_Jump)
            {
                m_Jump = CrossPlatformInputManager.GetButtonDown("Jump");
            }

            if (!m_PreviouslyGrounded && m_CharacterController.isGrounded)
            {
                StartCoroutine(m_JumpBob.DoBobCycle());
                PlayLandingSound();
                m_MoveDir.y = 0f;
                m_Jumping = false;
            }
            if (!m_CharacterController.isGrounded && !m_Jumping && m_PreviouslyGrounded)
            {
                m_MoveDir.y = 0f;
            }

            m_PreviouslyGrounded = m_CharacterController.isGrounded;
        }


        private void PlayLandingSound()
        {
            m_AudioSource.clip = m_LandSound;
            m_AudioSource.Play();
            m_NextStep = m_StepCycle + .5f;
        }


        private void FixedUpdate()
        {
            float speed;
            GetInput(out speed);
            // always move along the camera forward as it is the direction that it being aimed at
            Vector3 desiredMove = transform.forward*m_Input.y + transform.right*m_Input.x;

            // get a normal for the surface that is being touched to move along it
            RaycastHit hitInfo;
            Physics.SphereCast(transform.position, m_CharacterController.radius, Vector3.down, out hitInfo,
                               m_CharacterController.height/2f, Physics.AllLayers, QueryTriggerInteraction.Ignore);
            desiredMove = Vector3.ProjectOnPlane(desiredMove, hitInfo.normal).normalized;

            m_MoveDir.x = desiredMove.x*speed;
            m_MoveDir.z = desiredMove.z*speed;


            if (m_CharacterController.isGrounded)
            {
                m_MoveDir.y = -m_StickToGroundForce;

                if (m_Jump)
                {
                    m_MoveDir.y = m_JumpSpeed;
                    PlayJumpSound();
                    m_Jump = false;
                    m_Jumping = true;
                }
            }
            else
            {
                m_MoveDir += Physics.gravity*m_GravityMultiplier*Time.fixedDeltaTime;
            }
            m_CollisionFlags = m_CharacterController.Move(m_MoveDir*Time.fixedDeltaTime);

            ProgressStepCycle(speed);
            UpdateCameraPosition(speed);

            m_MouseLook.UpdateCursorLock();
        }


        private void PlayJumpSound()
        {
            m_AudioSource.clip = m_JumpSound;
            m_AudioSource.Play();
        }


        private void ProgressStepCycle(float speed)
        {
            if (m_CharacterController.velocity.sqrMagnitude > 0 && (m_Input.x != 0 || m_Input.y != 0))
            {
                m_StepCycle += (m_CharacterController.velocity.magnitude + (speed*(m_IsWalking ? 1f : m_RunstepLenghten)))*
                             Time.fixedDeltaTime;
            }

            if (!(m_StepCycle > m_NextStep))
            {
                return;
            }

            m_NextStep = m_StepCycle + m_StepInterval;

            PlayFootStepAudio();
        }


        private void PlayFootStepAudio()
        {
            if (!m_CharacterController.isGrounded)
            {
                return;
            }
            // pick & play a random footstep sound from the array,
            // excluding sound at index 0
            int n = Random.Range(1, m_FootstepSounds.Length);
            m_AudioSource.clip = m_FootstepSounds[n];
            m_AudioSource.PlayOneShot(m_AudioSource.clip);
            // move picked sound to index 0 so it's not picked next time
            m_FootstepSounds[n] = m_FootstepSounds[0];
            m_FootstepSounds[0] = m_AudioSource.clip;
        }


        private void UpdateCameraPosition(float speed)
        {
            Vector3 newCameraPosition;
            if (!m_UseHeadBob)
            {
                return;
            }
            if (m_CharacterController.velocity.magnitude > 0 && m_CharacterController.isGrounded)
            {
                m_Camera.transform.localPosition =
                    m_HeadBob.DoHeadBob(m_CharacterController.velocity.magnitude +
                                      (speed*(m_IsWalking ? 1f : m_RunstepLenghten)));
                newCameraPosition = m_Camera.transform.localPosition;
                newCameraPosition.y = m_Camera.transform.localPosition.y - m_JumpBob.Offset();
            }
            else
            {
                newCameraPosition = m_Camera.transform.localPosition;
                newCameraPosition.y = m_OriginalCameraPosition.y - m_JumpBob.Offset();
            }
            m_Camera.transform.localPosition = newCameraPosition;
        }


        private void GetInput(out float speed)
        {
            // Read input
            float horizontal = CrossPlatformInputManager.GetAxis("Horizontal");
            float vertical = CrossPlatformInputManager.GetAxis("Vertical");

            bool waswalking = m_IsWalking;

#if !MOBILE_INPUT
            // On standalone builds, walk/run speed is modified by a key press.
            // keep track of whether or not the character is walking or running
            m_IsWalking = !Input.GetKey(KeyCode.LeftShift);
#endif
            // set the desired speed to be walking or running
            speed = m_IsWalking ? m_WalkSpeed : m_RunSpeed;
            m_Input = new Vector2(horizontal, vertical);

            // normalize input if it exceeds 1 in combined length:
            if (m_Input.sqrMagnitude > 1)
            {
                m_Input.Normalize();
            }

            // handle speed change to give an fov kick
            // only if the player is going to a run, is running and the fovkick is to be used
            if (m_IsWalking != waswalking && m_UseFovKick && m_CharacterController.velocity.sqrMagnitude > 0)
            {
                StopAllCoroutines();
                StartCoroutine(!m_IsWalking ? m_FovKick.FOVKickUp() : m_FovKick.FOVKickDown());
            }
        }


        private void RotateView()
        {
 m_MouseLook.LookRotation (transform, m_Camera.transform);
        }


        private void OnControllerColliderHit(ControllerColliderHit hit)
        {
            Rigidbody body = hit.collider.attachedRigidbody;
            //dont move the rigidbody if the character is on top of it
            if (m_CollisionFlags == CollisionFlags.Below)
            {
                return;
            }

            if (body == null || body.isKinematic)
            {
                return;
            }
            body.AddForceAtPosition(m_CharacterController.velocity*0.1f, hit.point, ForceMode.Impulse);
        }
    }
}

(Linha 32 e uso dela na linha 65).....

Feito isso, deve funcionar (pelo menos eu testei aqui e funcionou kkk)... Testa ai e nos fale :D
avatar
JohnRambo
Moderador

Masculino PONTOS : 2622
REPUTAÇÃO : 493
Idade : 18
Áreas de atuação : Unity;
Programação;
Modelagem;
Música e Sonorização;
Cursando Análise e Desenvolvimento de Sistemas;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sex Dez 01, 2017 7:34 pm

Blz vou ver aqui.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sex Dez 01, 2017 7:44 pm

Assets/Scripts/InventarioPaulo/Inventario_Controller.cs(140,26): error CS0117: `UnityStandardAssets.Characters.FirstPerson.FirstPersonController' does not contain a definition for `InventarioAberto'

Esta dando este erro, como antes meu script do firstpersoCOntroller não aceita ser acessado por outro mesmo com variavel statica.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sex Dez 01, 2017 7:47 pm

OBSERVAÇÃO: só não consigo acessar o do firstpersocontroller.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por recagonlei em Sex Dez 01, 2017 8:19 pm

Faça uma variável em outro script e acesse por ele, no caso...
avatar
recagonlei
MembroAvançado

Masculino PONTOS : 1435
REPUTAÇÃO : 180
Idade : 99
Áreas de atuação :
~Programação (C#, HTML, CSS3)
~Spriter
~Modelagem
~Produtor de rap/hip hop e eletrônico
Respeito as regras :

Ver perfil do usuário http://stwodio.ga

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sex Dez 01, 2017 9:08 pm

@recagonlei escreveu:Faça uma variável em outro script e acesse por ele, no caso...


Tambem ja tentei e ele não reconhece outros scripts e não linka um GameObject na variavel.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por JohnRambo em Sex Dez 01, 2017 10:31 pm

Cara, aqui funciona normal... Você criou a variável no Script do first person? Porque pelo erro que você postou parece que não foi declarada a variável

Do jeito que estão os scripts que eu postei acima, eu testei e funcionou
avatar
JohnRambo
Moderador

Masculino PONTOS : 2622
REPUTAÇÃO : 493
Idade : 18
Áreas de atuação : Unity;
Programação;
Modelagem;
Música e Sonorização;
Cursando Análise e Desenvolvimento de Sistemas;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sab Dez 02, 2017 12:10 am

Declarei sim, não sei se é o unity mas não ta buscando nehuma variavel publica do first 😢
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sab Dez 02, 2017 4:19 pm

Agradeço a todos que me ajudaram neste tópico, infelizmente só resolvi o problema iniciando outro projeto e baixando outro StandardAsset da unity, OBRIGADO GALERA.
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por JohnRambo em Sab Dez 02, 2017 4:21 pm

Bom, pelo menos resolveu né  :roll:
avatar
JohnRambo
Moderador

Masculino PONTOS : 2622
REPUTAÇÃO : 493
Idade : 18
Áreas de atuação : Unity;
Programação;
Modelagem;
Música e Sonorização;
Cursando Análise e Desenvolvimento de Sistemas;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: Travar a camera do FirstPersoController

Mensagem por Zecandy em Sab Dez 02, 2017 4:34 pm

John Rambo escreveu:Bom, pelo menos resolveu né  :roll:


KKK VDD!!
avatar
Zecandy
Programador

Masculino PONTOS : 1309
REPUTAÇÃO : 153
Idade : 36
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

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