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:
Arquivo jar não encontrado
OBJETO sendo detruído imediatamente mesmo com o...
Meu site de Modelos 3D
DÚVIDA - ao pressionar andar, o player parece cancelar a gravidade (VÍDEO)
[RESLVIDO] Unity - "transform.SetParent()" em 2 objetos move outros objetos
Dúvida sobre resoluções de tela
Duvida na AppleStore
pressionando a tecla abaixar, o player continua andando abaixado (2D).
Fala Pessoal! Saiu mais um trailer do jogo que venho desenvolvendo
[RESOLVIDO] passar de uma animação para a outra rapidamente pelo animator
Unity - PlayerPrefs n são apagados no Celular mesmo Reiniciando o Aparelho
Modeloes 3D do Site Sketchfab
Blender - Modelos Importados transparentes
[PEDIDO]Cololar jogo na loja play store
Como pegar um objeto e fazer ele aparecer em forma de Estamina no Inspector
Procuro Pessoas para Projeto
Algum tutorial de como fazer um app que receba fotos e q fiqu armazenado no
Procuro um time para um jogo de corrida
[RESOLVIDO] Botões de Ataque e Pular carrega duas animações ao mesmo tempo
DEATH ISLAND 0.2.5 SURVIVAL GAME 4 ANOS EM DESENVOLVIMENTO
Player travando na colisão com o chão Unity 2D
Como resolver vazamento de memoria?
Instanciar uma classe nos atributos de outra classe é uma boa prática?
Jogo multiplayer com steam
Unity - Renderizção com Câmera Jogo Lento e travando. Alguém pfv?!
Mini Quarteirão com Texturas 3D VENDA
Controle do braço e cabeça no fps
PRECISO FAZER QUE MEU GAME FIQUE ONLINE
Ativar o objeto correto em Clones.
[TUTORIAL] Como fazer um interruptor simples (Unity 2018)
Preciso de 20 testadores jogo mobile
O Labirinto II - Trailer Oficial
Ue posso divulgar meu game que ainda esta em criaçao aqui no forum?
[RESOLVIDO] Inverter o sprite para a direçao que o personagem anda.
Set Active não a reabiilitado C#
Build APK VR Google Cardbord com video.
[PROGRAMADOR FREELA] $$
Mais Um jogo!
Collider (mesh?)
[TUTORIAL] Deformar mesh com batidas (para objetos, veículos, etc)
WW2 Low poly Pack (Free)
Procuro freelancer
Novo Teaser do jogo Dark Age
Unity Admob Erro
Sombras estão quadradas na build
nao consigo fazer o player sentar no sofa alguem me ajuda
Unity - Ao mudar de scene, todas as Lights são deletadas
210 Linhas de código para inimigo é muito grande?
modelar avatar e skins para um jogo web
ShapeKeys do Blender para a Unity altera áreas próximas
COMO EVITAR QUE UM OBJETO (PLAYER,ITEM ETC...) ATRAVESSE UMA PAREDE.
Ajuda em Script de Verificação de Ação e Reação
unity Failed to load PlayerSettings (internal index #0). Most likely data f
Materiais do Blander não aparecem no MeshRendere do Objeto na Unity
Repetiçoes de Textura no Terreno
SERVER IS DOWN - UNITY+MSQL
Procuro programadores - Novo jogo
Problema com o MS VEHICLES
Preciso de ajuda com a Unity
Problema com vídeo em 360° na Unity
Problemas no MS Vehicles
unity- eventos na Animação com Armature/Bones vinda do blender não funciona
ajuda exibir resultados simulados em uma liga Game Unity
Unity - ParticleSystem não é redirecionado no rawimage no canvas
Como resolver o problema de "face orientation" no Blender.
[DÚVIDA] Tive um problema com meu Canvas
erro na Directional Light
Problemas com o Directional Light da Unity 3D
Novo jogo da franquia Sphere game em desenvolvimento
malha da roda não girando com wheel collider unity
Problemas com ambiguidade
Touch mobile
INVALID TOKEN
Como acessar o "HD Render Pipeline" do HDRP por script?
CHAT GPT PRA JOGO DE TIRO? comentem
Tutorial script inimigo segue e foge do player
Ainda vale a pena lançar Asset na Asset Store?
Ajuda com tabela de historico de pontuaçao.
[TUTORIAL] Entrar no carro estilo GTA
Como derrapar um Whell Collider
Como altertar o valor do "Asymptote Value" do Whell Collider via Script
Preciso de ajuda para substituir valor de variavel em outro script
Ajuda com Top Down Shooter utilizando Photon
Duvida com Netcode
[RESOLVIDO] Unity - Movendo a Câmera na Horizontal/Vertical com Touch
Alguém me ajuda com os anúncios pfv
Segundo Trailer do jogo Dark Age, Feliz Natal a todos!
Unity - ScrollRect, Viewport, Content - O Conteúdo ñ inicia no topo
Coleta de itens
Unity - Cadastro do email do jogador
[GRATIS] PACK DE MODELOS 3D PARA JOGO DE TERROR
Onde Conseguir músicas para meu Jogo?
error CS0246 em Script
Alguem teve ja esse problema?
[Projeto em Andamento] Draug, um jogo de hordas
DISPONIVEL PARA FAZER MODELOS 3D
Unity-Loja.Como os Jogadores terão acesso aos ítens comprados na PlayStore?
Bugando depois do Build.
Primeiro Trailer do jogo Dark Age
Qua Out 23, 2024 8:39 pm
Sex Out 18, 2024 4:05 pm
Dom Out 06, 2024 6:02 pm
Sáb Out 05, 2024 6:37 am
Qui Out 03, 2024 10:09 pm
Seg Set 30, 2024 9:25 am
Sáb Set 28, 2024 11:39 am
Seg Set 09, 2024 7:33 am
Dom Set 08, 2024 10:08 pm
Ter Set 03, 2024 11:59 am
Qua Ago 28, 2024 7:45 pm
Qua Ago 28, 2024 7:18 pm
Qua Ago 28, 2024 8:34 am
Dom Ago 25, 2024 8:37 pm
Sáb Ago 24, 2024 1:58 pm
Sex Ago 23, 2024 3:30 pm
Sex Ago 23, 2024 3:23 pm
Qua Ago 21, 2024 5:48 pm
Dom Ago 18, 2024 8:51 pm
Sex Ago 16, 2024 12:59 pm
Qua Ago 14, 2024 10:57 am
Sáb Ago 10, 2024 8:03 pm
Sex Ago 09, 2024 7:37 pm
Dom Ago 04, 2024 4:41 pm
Dom Ago 04, 2024 3:16 pm
Qui Jul 25, 2024 2:48 pm
Dom Jul 21, 2024 7:07 pm
Dom Jul 21, 2024 12:07 am
Sáb Jul 13, 2024 12:33 am
Qui Jun 27, 2024 5:49 pm
Qui Jun 20, 2024 12:30 pm
Dom Jun 09, 2024 7:43 pm
Dom Jun 09, 2024 2:16 pm
Seg Jun 03, 2024 11:39 am
Seg maio 27, 2024 12:45 pm
Seg maio 20, 2024 9:01 pm
Dom maio 19, 2024 3:08 pm
Sáb maio 18, 2024 11:46 am
Sáb maio 11, 2024 8:55 am
Qui maio 09, 2024 11:33 pm
Seg Abr 29, 2024 9:34 pm
Qui Abr 25, 2024 3:34 pm
Seg Abr 22, 2024 5:15 pm
Seg Abr 15, 2024 12:23 pm
Seg Abr 08, 2024 9:27 pm
Seg Abr 08, 2024 8:01 am
Sáb Abr 06, 2024 8:05 pm
Qui Abr 04, 2024 11:34 pm
Qui Abr 04, 2024 11:13 pm
Sex Mar 22, 2024 2:41 pm
Dom Mar 10, 2024 2:30 pm
Sex Mar 01, 2024 1:27 pm
Qui Fev 22, 2024 9:57 pm
Ter Fev 20, 2024 12:15 am
Seg Fev 19, 2024 1:06 pm
Seg Fev 12, 2024 1:56 pm
Seg Fev 12, 2024 1:17 pm
Dom Fev 11, 2024 8:55 pm
Dom Fev 11, 2024 11:16 am
Seg Fev 05, 2024 4:18 pm
Dom Fev 04, 2024 9:39 pm
Qua Jan 31, 2024 11:59 pm
Ter Jan 30, 2024 7:37 pm
Ter Jan 23, 2024 6:33 pm
Dom Jan 21, 2024 6:03 pm
Sáb Jan 20, 2024 7:03 pm
Sáb Jan 20, 2024 6:58 pm
Sáb Jan 20, 2024 6:39 pm
Sex Jan 19, 2024 8:40 am
Dom Jan 14, 2024 5:30 pm
Qua Jan 10, 2024 10:29 pm
Qua Jan 10, 2024 8:55 pm
Qua Jan 10, 2024 7:14 pm
Ter Jan 09, 2024 3:55 pm
Ter Jan 09, 2024 8:04 am
Sáb Jan 06, 2024 8:02 pm
Sex Jan 05, 2024 7:01 am
Sex Jan 05, 2024 12:12 am
Qui Jan 04, 2024 6:55 pm
Qui Jan 04, 2024 12:52 pm
Qui Jan 04, 2024 4:34 am
Ter Jan 02, 2024 11:48 pm
Dom Dez 31, 2023 7:25 pm
Qua Dez 27, 2023 5:44 pm
Qua Dez 27, 2023 3:08 pm
Sáb Dez 23, 2023 7:27 pm
Sáb Dez 23, 2023 5:06 pm
Qui Dez 21, 2023 8:10 pm
Seg Dez 18, 2023 2:04 pm
Sex Dez 15, 2023 5:11 pm
Qui Dez 14, 2023 9:13 pm
Qui Dez 14, 2023 2:47 pm
Qui Dez 14, 2023 1:48 pm
Qua Dez 13, 2023 8:58 pm
Ter Dez 12, 2023 2:32 pm
Seg Dez 11, 2023 1:53 pm
Qua Dez 06, 2023 8:13 pm
Sáb Dez 02, 2023 8:06 pm
Qui Nov 30, 2023 7:49 am



































































































[TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

+9
Édipo
thiagograssi
Eduardoro39
Weslley
matsuismael
Hardencio
dinho
darkz
MarcosSchultz
13 participantes

Página 1 de 2 1, 2  Seguinte

Ir para baixo

TUTORIAL [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Qua Mar 16, 2016 3:03 pm

Fala galera, elaborei este script simples que permite mover o seu jogador com Touch, como também com o Mouse, no estilo subway surfers... para jogos do tipo infinity runner

Basta criar um Script em C# com o nome "Mover", com o código abaixo, e jogar no seu jogador.

Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Mover : MonoBehaviour {//NESTE SCRIPT O PERSONAGEM DEVE SE MOVER PARA FRENTE NO EIXO Z(AZUL)
 private float ponteiroX, ponteiroY, novaPosicX;
 private int indicePosic;
 private bool podeMover, estaNoChao, pulouR;
 private Vector3 posicInicial;
 [Range(0.01f,1)]public float TempoParaMover = 0.15f;
 [Range(1,5)]public int QuantoMover = 1;
 [Range(1,20)]public float forcaDoPulo = 5.0f;
 [Range(0,20)]public float velocidadeJogador = 5.0f;
 public bool podePular = true;
 public LayerMask LayersNaoIgnoradas = -1;
 private Rigidbody corpoRigido;

 void Start(){
 corpoRigido = GetComponent<Rigidbody> ();
 corpoRigido.constraints = RigidbodyConstraints.FreezeRotation;
 posicInicial = transform.position;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 indicePosic = 0;
 pulouR = false;
 podeMover = true;
 }

 void Update () {
 estaNoChao = Physics.Linecast (transform.position, transform.position - Vector3.up, LayersNaoIgnoradas);
 if (podeMover) {
 DetectarMovimento ();
 }
 }

 IEnumerator EsperarParaMover(float tempo) {
 yield return new WaitForSeconds(tempo);
 podeMover = true;
 }
 IEnumerator EsperarParaPular(float tempo) {
 yield return new WaitForSeconds(tempo);
 pulouR = false;
 }

 void DetectarMovimento(){
 podeMover = false;
 StartCoroutine (EsperarParaMover(TempoParaMover));

 ponteiroX = ponteiroY = 0;
 if (Input.GetMouseButton (0)) {
 ponteiroX = Input.GetAxis ("Mouse X");
 ponteiroY = Input.GetAxis ("Mouse Y");
 }
 if (Input.touchCount > 0){
 ponteiroX = Input.touches[0].deltaPosition.x;
 ponteiroY = Input.touches[0].deltaPosition.y;
 }
 //DETECTAR EIXO X
 if (ponteiroX > 0 && indicePosic < 1) {
 indicePosic ++;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }
 else if (ponteiroX < 0 && indicePosic > -1) {
 indicePosic --;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }
 //DETECTAR EIXO Y
 if (ponteiroY > 0.1f && podePular) {
 Pular ();
 }
 }

 void FixedUpdate(){
 Vector3 proximaPosic = new Vector3 (novaPosicX, transform.position.y, transform.position.z);
 transform.position = Vector3.Lerp (transform.position, proximaPosic, Time.deltaTime * 5);
 corpoRigido.velocity = new Vector3 (corpoRigido.velocity.x, corpoRigido.velocity.y, velocidadeJogador);
 }

 void Pular(){
 if(estaNoChao == true && pulouR == false){
 corpoRigido.AddForce(Vector3.up * forcaDoPulo, ForceMode.Impulse);
 pulouR = true;
 StartCoroutine (EsperarParaPular(0.5f));
 }
 }
}

este script funcionará se o seu personagem se mover para frente no eixo Z


Última edição por MarcosSchultz em Seg Ago 12, 2019 3:29 am, editado 3 vez(es)
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Qua Mar 16, 2016 5:59 pm

Poxa Marcos, valeu mesmo pelo tutorial era oque estava precisando pro meu jogo!!
Agora só preciso mudar umas coisas pq meu jogo é em 2D e a câmera é de cima, e tirar o pulo.. Com esse script já é um grande avanço!

Obrigado cara!
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Qui Mar 17, 2016 3:39 pm

darkz escreveu:Poxa Marcos, valeu mesmo pelo tutorial era oque estava precisando pro meu jogo!!
Agora só preciso mudar umas coisas pq meu jogo é em 2D e a câmera é de cima, e tirar o pulo.. Com esse script já é um grande avanço!

Obrigado cara!

Tem algum vídeo mostrando um exemplo de gameplay do sistema que você está tentando fazer???

Posso ajustar o sistema para 2D
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Qui Mar 17, 2016 6:34 pm

MarcosSchultz escreveu:
Tem algum vídeo mostrando um exemplo de gameplay do sistema que você está tentando fazer???

Posso ajustar o sistema para 2D

Não conheço nenhum vídeo com esse sistema que to tentando fazer...

Mas a pista e o movimento para a direita e a esquerda é estilo Subway Surfers, vai pra lá e pra cá, só que eu tava pensando em usar botões direito e esquerdo que pra mim parece mais fácil de programar.
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Qui Mar 17, 2016 11:07 pm

da para fazer isto facilmente, basta colocar o comando dos:

if(ponteiroX > 0 && indicePosic < 1){}, etc

como se fossem botões, dentro de voids, e ai tira o if. Depois basta implementar nos botões. Consegue?
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Sex Mar 18, 2016 1:37 am

Código:

public void Direita {
 (ponteiroX > 0 && indicePosic < 1) // aqui mostra "acessador get ou set esperado"
 indicePosic ++;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }
public void Esquerda {
 (ponteiroX < 0 && indicePosic > -1) // aqui mostra "acessador get ou set esperado"
 indicePosic --;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }

Pelo oque entendi é assim? Não sei programar, sei o básico mesmo das coisas.
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Sáb Mar 19, 2016 12:23 pm

Código:
public void Direita {
      indicePosic ++;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }
   public void Esquerda {
      indicePosic --;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }


E para configurar os botões, basta seguir este tutorial:

MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Dom Mar 20, 2016 12:38 am

mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS 15wc3uu

Está dando o mesmo problema.. Sad
Tentei colocar set {}, mas aparece outro erro no void, falando que "Esquerda"/"Direita": a propriedade ou o indexador não pode ter o tipo void.
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Dom Mar 20, 2016 11:07 pm

você declarou esta variável pelo menos?
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Dom Mar 20, 2016 11:23 pm

MarcosSchultz escreveu:você declarou esta variável pelo menos?

Sim, declarei.

Código:
private int indicePosic;
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Seg Mar 21, 2016 2:23 pm

poste o seu script completo ai
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Seg Mar 21, 2016 2:52 pm

Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Mover : MonoBehaviour {
   private float ponteiroX, ponteiroY, novaPosicX;
   private int indicePosic;
   private bool podeMover, estaNoChao, pulouR;
   private Vector3 posicInicial;
   [Range(0.01f,1)]public float TempoParaMover = 0.15f;
   [Range(1,5)]public int QuantoMover = 1;
   public LayerMask LayersNaoIgnoradas = -1;
   private Rigidbody corpoRigido;

   void Start(){
      corpoRigido = GetComponent<Rigidbody> ();
      corpoRigido.constraints = RigidbodyConstraints.FreezeRotation;
      posicInicial = transform.position;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
      indicePosic = 0;
      podeMover = true;
   }

   void Update () {
      estaNoChao = Physics.Linecast (transform.position, transform.position - Vector3.up, LayersNaoIgnoradas);
      if (podeMover) {
         DetectarMovimento ();
      }
   }

   IEnumerator EsperarParaMover(float tempo) {
      yield return new WaitForSeconds(tempo);
      podeMover = true;
   }

   void DetectarMovimento(){
      podeMover = false;
      StartCoroutine (EsperarParaMover (TempoParaMover));

      ponteiroX = ponteiroY = 0;
      if (Input.GetMouseButton (0)) {
         ponteiroX = Input.GetAxis ("Mouse X");
         ponteiroY = Input.GetAxis ("Mouse Y");
      }
      if (Input.touchCount > 0) {
         ponteiroX = Input.touches [0].deltaPosition.x;
         ponteiroY = Input.touches [0].deltaPosition.y;
      }
   }
      //DETECTAR EIXO X
   public void Direita {
      indicePosic ++;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }
   public void Esquerda {
      indicePosic --;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }

   void FixedUpdate(){
      Vector3 proximaPosic = new Vector3 (novaPosicX, transform.position.y, transform.position.z);
      transform.position = Vector3.Lerp (transform.position, proximaPosic, Time.deltaTime * 5);
   }
}
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Qua Mar 23, 2016 1:40 pm

Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Mover : MonoBehaviour {
   private float novaPosicX;
   [HideInInspector]public int indicePosic;
   private bool podeMover;
   private Vector3 posicInicial;
   [Range(0.01f,1)]public float TempoParaMover = 0.15f;
   [Range(1,5)]public int QuantoMover = 1;
   public LayerMask LayersNaoIgnoradas = -1;
   private Rigidbody corpoRigido;

   void Start(){
      corpoRigido = GetComponent<Rigidbody> ();
      corpoRigido.constraints = RigidbodyConstraints.FreezeRotation;
      posicInicial = transform.position;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
      indicePosic = 0;
      podeMover = true;
   }
   IEnumerator EsperarParaMover(float tempo) {
      yield return new WaitForSeconds(tempo);
      podeMover = true;
   }
   void FixedUpdate(){
      Vector3 proximaPosic = new Vector3 (novaPosicX, transform.position.y, transform.position.z);
      transform.position = Vector3.Lerp (transform.position, proximaPosic, Time.deltaTime * 5);
   }
   public void Direita(){
      if (podeMover && indicePosic < 1) {
         podeMover = false;
         indicePosic++;
         novaPosicX = posicInicial.x + indicePosic * QuantoMover;
         StartCoroutine (EsperarParaMover (TempoParaMover));
      }
   }
   public void Esquerda(){
      if (podeMover && indicePosic > -1) {
         podeMover = false;
         indicePosic--;
         novaPosicX = posicInicial.x + indicePosic * QuantoMover;
         StartCoroutine (EsperarParaMover (TempoParaMover));
      }
   }
}
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Qua Mar 23, 2016 10:29 pm

Poxa cara, você é top dms, ajudou bastante!!! É isso que estava precisando, muito obrigado!! Cheers

Agora o resto do jogo tem tutorias no seu canal que vai me ajudar.

Valeu!
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Qua Mar 23, 2016 10:52 pm

qualquer coisa, posta ai... se quiser implementar mais movimentos, etc :D
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz Qui Mar 24, 2016 9:35 am

Beleza! :D
darkz
darkz
Iniciante
Iniciante

Masculino PONTOS : 3321
REPUTAÇÃO : 0
Idade : 27
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por dinho Qui Mar 24, 2016 11:12 am

Marcos vc é o Cara!!! Gostaria que vc fizesse um tutorial de movimentação com Touch de personagem em 360 graus , tipo aqueles de apresentação. Ficaria bem legal.
dinho
dinho
Membro
Membro

Masculino PONTOS : 3414
REPUTAÇÃO : 5
Áreas de atuação : Desenhista e Modelador 3D.
Modelagem em Blender.
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

http://www.andersondesigner.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio Seg Mar 28, 2016 4:06 pm

Muito obrigado Marcos!! Ajudou de mais, tava quebrando a cabeça pra fazer essa parte do touch! Acho que seria bacana você fazer um tuto em seu canal sobre touch em geral. Iria ajudar muita gente.

Continue assim!
Abraço!
Hardencio
Hardencio
Avançado
Avançado

Masculino PONTOS : 3722
REPUTAÇÃO : 25
Áreas de atuação : Advergames and Casual Games
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio Ter Mar 29, 2016 4:33 pm

Na verdade Marcos seu script não funcionou da maneira que eu queria no meu jogo, pois as dependendo da maneira como eu aplico o touch (sendo na unity, com o mouse ou direto do celular) o player avança mais do que deveria.

Queria que me ajudasse a implementar o sistema de touch swipe no meu script que estou usando agora, pois ele esta funcionando do modo que eu quero. Se puder me ajudar, criei um tópico mais cedo titulado como "Implementação de Touch em script modo Swipe", lá postei screenshot e o script que estou usando

Hardencio
Hardencio
Avançado
Avançado

Masculino PONTOS : 3722
REPUTAÇÃO : 25
Áreas de atuação : Advergames and Casual Games
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Ter Mar 29, 2016 4:59 pm

Como exatamente está andando mais do que deveria??? Basta você ajustar a distancia na variável ué O.o

poderia especificar mais o problema?
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio Ter Mar 29, 2016 5:38 pm

Não andando mais do que deveria na questão de distancia...hahaha

O script esta definido para cada deslize na tela o objeto movimente o valor 1 em tal eixo correto?
O problema é que quando eu deslizo muito sobre a tela ele pula um movimento, ou seja é como ele fosse pro segundo movimento. Por exemplo: Existem 3 lugares pro player se mover na posição 0, -1, e 1..Se eu estou na -1 e deslizo muito sobre a tela o player passa pela posição 0 e vai para a 1 direto.

Eu quero que a cada deslize de dedo, dependente se for um deslize pequeno ou um deslize maior o pleyer se movimente apenas uma vez. Não sei se entendeu, vou colar aqui um print do game pra clarear melhor a ideia: https://i.imgur.com/X4k9dFO.png
Hardencio
Hardencio
Avançado
Avançado

Masculino PONTOS : 3722
REPUTAÇÃO : 25
Áreas de atuação : Advergames and Casual Games
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Ter Mar 29, 2016 11:54 pm

Hardencio escreveu:Não andando mais do que deveria na questão de distancia...hahaha

O script esta definido para cada deslize na tela o objeto movimente o valor 1 em tal eixo correto?
O problema é que quando eu deslizo muito sobre a tela ele pula um movimento, ou seja é como ele fosse pro segundo movimento. Por exemplo: Existem 3 lugares pro player se mover na posição 0, -1, e 1..Se eu estou na -1 e deslizo muito sobre a tela o player passa pela posição 0 e vai para a 1 direto.

Eu quero que a cada deslize de dedo, dependente se for um deslize pequeno ou um deslize maior o pleyer se movimente apenas uma vez. Não sei se entendeu, vou colar aqui um print do game pra clarear melhor a ideia: https://i.imgur.com/X4k9dFO.png

Testei aqui de novo e não obtive o erro O.o

Tem esta variável: TempoParaMover

que diz quanto tempo vai esperar entre cada movimento... talvez deva aumentar o valor dela
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio Qua Mar 30, 2016 12:25 am

Pois é Marcos, eu tentei mexer nessa variável e é possivel chegar em um bom resultado, mas não na ideal, eu prezo bastante uma boa jogabilidade nos jogos...até mesmo antes da arte. xD

Mas obrigado pela ajuda que vem dando.
Hardencio
Hardencio
Avançado
Avançado

Masculino PONTOS : 3722
REPUTAÇÃO : 25
Áreas de atuação : Advergames and Casual Games
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por matsuismael Sáb maio 28, 2016 1:45 pm

Valeu Marcos, esse script e fantástico, com um ajusto ficou perfeito. 
Mas queria sabe se e possível aplicar o touch Screen a uma certa area da tela e não na tela todo?
matsuismael
matsuismael
Membro
Membro

PONTOS : 3153
REPUTAÇÃO : 0
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Weslley Sáb maio 28, 2016 1:56 pm

Sim e possível vc pode usar o Rect.Contains

saiba mais
http://docs.unity3d.com/ScriptReference/Rect.Contains.html
Weslley
Weslley
Moderador

Masculino PONTOS : 5729
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por matsuismael Sáb maio 28, 2016 2:35 pm

weslleyFx escreveu:Sim e possível vc pode usar o Rect.Contains

saiba mais
http://docs.unity3d.com/ScriptReference/Rect.Contains.html
Valeu, vou estuda como fazer isso.  Smile
matsuismael
matsuismael
Membro
Membro

PONTOS : 3153
REPUTAÇÃO : 0
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 Dom Set 04, 2016 1:59 pm

queria saber como voce fes para arastar o dedo pra cima e o player pular? sei que é com tochCount mais como fes pra ir para o lado que deseja?

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 3260
REPUTAÇÃO : 11
Idade : 24
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Dom Set 04, 2016 11:31 pm

Eduardoro39 escreveu:queria saber como voce fes para arastar o dedo pra cima e o player pular? sei que é com tochCount mais como fes pra ir para o lado que deseja?

Ué, eu simplesmente separei o input do touch em X e Y, já que é um vector2.

O input é feito e retorna uma coordenada (X,Y). depois, eu apenas chequei se o deslocamento em Y era positivo ou negativo... X é o eixo horizontal, e Y é o eixo vertical.
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 Seg Set 05, 2016 12:16 am

Pode me mostrar isso em um script em não entendi

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 3260
REPUTAÇÃO : 11
Idade : 24
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi Seg Set 05, 2016 10:51 am

galera quando meu personagem vai para a parede ta pra parte do cenario q nao ta em uso como resolvo esse problema com a camera ?
thiagograssi
thiagograssi
MembroAvançado

Masculino PONTOS : 3376
REPUTAÇÃO : 43
Idade : 20
Áreas de atuação : Photoshop;
SketchUp;
C#(Learning);

Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 Seg Set 05, 2016 8:52 pm

thiagograssi escreveu:galera quando meu personagem vai para a parede ta pra parte do cenario q nao ta em uso como resolvo esse problema com a camera ?
a camera pega uma parte que nao é do cenario tipo a parede tente mover a camera mais para o lado contrario da parede que a camera esta pegando

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 3260
REPUTAÇÃO : 11
Idade : 24
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi Seg Set 05, 2016 9:22 pm

so que meu boneco tem que ficar no meio  da camera e se eu mover o beneco se destralizar se eu  mover o bruneco junto com a camera ai mostra por fora a outra parede
thiagograssi
thiagograssi
MembroAvançado

Masculino PONTOS : 3376
REPUTAÇÃO : 43
Idade : 20
Áreas de atuação : Photoshop;
SketchUp;
C#(Learning);

Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 Seg Set 05, 2016 10:33 pm

Marcos vou mostrar o meu problema quando eu arrasto para o lado esquerdo ele vai pra tras e quando arrasto para direita ele vai para frente como mostra nesse link = http://prntscr.com/cemp6q = Parado ,  http://prntscr.com/cemq5r = Arrastando para Esquerda 

ele vai para frente enves de ir para o Lado sabe resolver aqui o script 
Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody2D))]
public class Mover : MonoBehaviour
{//NESTE SCRIPT O PERSONAGEM DEVE SE MOVER PARA FRENTE NO EIXO Z(AZUL), PARA TIRAR DÚVIDAS, CONTATE WWW.SCHULTZGAMES.COM
    private float ponteiroX, ponteiroY, novaPosicX;
    private int indicePosic;
    private bool podeMover, estaNoChao, pulouR;
    private Vector3 posicInicial;
    [Range(0.01f, 1)]
    public float TempoParaMover = 0.15f;
    [Range(1, 5)]
    public int QuantoMover = 1;
    [Range(1, 20)]
    public float forcaDoPulo = 5.0f;
    [Range(0, 20)]
    public float velocidadeJogador = 5.0f;
    public bool podePular = true;
    public LayerMask LayersNaoIgnoradas = -1;
    private Rigidbody2D corpoRigido;

    void Start()
    {
        corpoRigido = GetComponent<Rigidbody2D>();
       
        posicInicial = transform.position;
        novaPosicX = posicInicial.x + indicePosic * QuantoMover;
        indicePosic = 0;
        pulouR = false;
        podeMover = true;
    }

    void Update()
    {
        estaNoChao = Physics.Linecast(transform.position, transform.position - Vector3.up, LayersNaoIgnoradas);
        if (podeMover)
        {
            DetectarMovimento();
        }
    }

    IEnumerator EsperarParaMover(float tempo)
    {
        yield return new WaitForSeconds(tempo);
        podeMover = true;
    }
    IEnumerator EsperarParaPular(float tempo)
    {
        yield return new WaitForSeconds(tempo);
        pulouR = false;
    }

    void DetectarMovimento()
    {
        podeMover = false;
        StartCoroutine(EsperarParaMover(TempoParaMover));

        ponteiroX = ponteiroY = 0;
        if (Input.GetMouseButton(0))
        {
            ponteiroX = Input.GetAxis("Mouse X");
            ponteiroY = Input.GetAxis("Mouse Y");
        }
        if (Input.touchCount > 0)
        {
            ponteiroX = Input.touches[0].deltaPosition.x;
            ponteiroY = Input.touches[0].deltaPosition.y;
        }
        //DETECTAR EIXO X
        if (ponteiroX > 0 && indicePosic < 1)
        {
            indicePosic++;
            novaPosicX = posicInicial.x + indicePosic * QuantoMover;
        }
        else if (ponteiroX < 0 && indicePosic > -1)
        {
            indicePosic--;
            novaPosicX = posicInicial.x + indicePosic * QuantoMover;
        }
        //DETECTAR EIXO Y
        if (ponteiroY > 0.1f && podePular)
        {
           
        }
    }

    void FixedUpdate()
    {
        Vector3 proximaPosic = new Vector3(novaPosicX, transform.position.y, transform.position.z);
        transform.position = Vector3.Lerp(transform.position, proximaPosic, Time.deltaTime * 5);
        corpoRigido.velocity = new Vector3(corpoRigido.velocity.x, corpoRigido.velocity.y, velocidadeJogador);
    }




}

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 3260
REPUTAÇÃO : 11
Idade : 24
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi Seg Set 05, 2016 10:43 pm

Eduardoro39 escreveu:Marcos vou mostrar o meu problema quando eu arrasto para o lado esquerdo ele vai pra tras e quando arrasto para direita ele vai para frente como mostra nesse link = http://prntscr.com/cemp6q = Parado ,  http://prntscr.com/cemq5r = Arrastando para Esquerda 

ele vai para frente enves de ir para o Lado sabe resolver aqui o script 
Código:
cara muda os eixos Y X Z até achar a posição correta ex: onde tá ponteiroY tenta mudar pro x nao funciona muda pro Z até achar a letra correnta
thiagograssi
thiagograssi
MembroAvançado

Masculino PONTOS : 3376
REPUTAÇÃO : 43
Idade : 20
Áreas de atuação : Photoshop;
SketchUp;
C#(Learning);

Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Ter Set 06, 2016 3:44 am

Eduardoro39, você não está seguindo o tutorial.

Nele eu deixo restritamente especificado que o personagem deve mover-se para frente no eixo Z, isto fará a rotação ficar correta para os demais eixos.
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 Ter Set 06, 2016 10:13 am

Sim eu fis mais o cenario que esta sendo instanciado ta indo para direçao contraria 
quando instancia os Obstaculos ele vai para >> e o player nao
Esse aqui

Código:
#pragma strict

var VetorPlataformas: GameObject[];
var PlataformaAtual: GameObject;

var QntFilhos: int;
var i: int;

var PosicaoFim: Vector3;

var indicePlataforma: int;
var indicePlataformaAtual: int;

var n: int;

function Start () {

    PlataformaAtual = Instantiate(PlataformaAtual,transform.position+transform.up*-3+transform.forward *-3,Quaternion.identity);

    indicePlataformaAtual = 0;
    indicePlataforma = 0;
    n =0;
}

function Update () {

    if (Vector3.Distance(PlataformaAtual.transform.position,transform.position)<120)
    {
        PlataformaAtual.transform.name = "p"+n;
        QntFilhos = PlataformaAtual.transform.GetChildCount();
        for (i=0; i<QntFilhos; i++)
        {
            if (PlataformaAtual.transform.GetChild(i).name == "Fim")
            {
                PosicaoFim = PlataformaAtual.transform.GetChild(i).position;
                break;
            }
        }
        while (indicePlataformaAtual == indicePlataforma)
        {
            indicePlataforma = Random.Range(0,VetorPlataformas.Length);
        }
        indicePlataformaAtual = indicePlataforma;
 
        PlataformaAtual = Instantiate(VetorPlataformas[indicePlataforma],
                        PosicaoFim,
                        Quaternion.identity);
        n++;
    }
}

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 3260
REPUTAÇÃO : 11
Idade : 24
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Qua Set 07, 2016 12:26 am

Cara, refaça este script de spawn, só que em C#. 

Trabalhar em um projeto de infinity runner misturando C# com java não vai dar muito certo não, principalmente por que este script precisará se comunicar diretamente com o player em momentos de colisão ou coisas do tipo.
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi Qua Set 07, 2016 12:08 pm

marcos como eu faço para colocar animaçoes nesse script pq o meu a unica animação q tem é dele pulando
thiagograssi
thiagograssi
MembroAvançado

Masculino PONTOS : 3376
REPUTAÇÃO : 43
Idade : 20
Áreas de atuação : Photoshop;
SketchUp;
C#(Learning);

Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Qui Set 08, 2016 11:31 pm

thiagograssi escreveu:marcos como eu faço para colocar animaçoes nesse script pq o meu a unica animação q tem é  dele pulando

MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Édipo Qua Nov 02, 2016 6:51 pm

ola marcos, boa noite, tenho uma duvida, teria como colocar o comando

corpoRigido.AddForce(Vector3.up * forcaDoPulo, ForceMode.Impulse);

apenas para ele mover para cima, sem ser para os lados, pois queria que ele movesse para os lados apenas quando estiver no chão.
e do jeito que esta ele pula para os lados sabe, e eu queria que ele só fosse pra cima

Édipo
MembroAvançado

Masculino PONTOS : 4009
REPUTAÇÃO : 62
Idade : 36
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Sex Nov 04, 2016 12:34 am

Édipo escreveu:ola marcos, boa noite, tenho uma duvida, teria como colocar o comando

corpoRigido.AddForce(Vector3.up * forcaDoPulo, ForceMode.Impulse);

apenas para ele mover para cima, sem ser para os lados, pois queria que ele movesse para os lados apenas quando estiver no chão.
e do jeito que esta ele pula para os lados sabe, e eu queria que ele só fosse pra cima

Da sim, basta fazer um comando de "isGrounded" e permitir o deslocamento horizontal apenas quando este ground for true, mas isto vai se aplicar ao seu jogo?

Olhe o subway por exemplo, tem muitas situações aonde é necessário ir para o lado ainda estando no ar... MUITAS MESMO
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Édipo Sex Nov 04, 2016 7:27 pm

-entendo o que vc disse, e vc tem razão na questão do jogo subway surfers, mas tipo a minha questão é que nesse script que vc compartilhou com a gente, se vc arrastar o dedo de um canto para o outro da tela na horizintal, e só ir um pouquinho pra cima, ele ja pula indo pro lado, e eu queria tipo restringir mais isso, tipo se eu arrastar para o lado e levantar um pouco o dedo ele vai somente para o lado, e pular somente quando eu arrastar o dedo para cima mesmo, tipo restringir o angulo de arrasto do dedo entende??
eu tentei fazer essa restrição de angulo do swap para os lados e deu certo que foi uma beleza, eu fiz assim...
Código:
if (ponteiroX > 0 && indicePosic < 1) {
         if (ponteiroY < 0.5f)
         {
            indicePosic ++;
            novaPosicX = posicInicial.x + indicePosic*QuantoMover;
         }
      }
      else if (ponteiroX < 0 && indicePosic > -1) {
         if (ponteiroY < 0.5f)
         {
               indicePosic --;
               novaPosicX = posicInicial.x + indicePosic*QuantoMover;
         }
      }
 
mas pra cima (pulando) ta uma canceira viu, nada de resultado positivo até agora :\
hehehe
vlw

Édipo
MembroAvançado

Masculino PONTOS : 4009
REPUTAÇÃO : 62
Idade : 36
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Ter Nov 08, 2016 1:37 am

cara, difícil... basicamente o sistema teria que ser quase todo reformulado, para seguir outras regras de Input.

Usando o AddForce você simplesmente faz a adição do impulso no momento do toque... para dar este efeito que você quer, o Input tem que ser extremamente limitado, mas pelo que eu testei aqui, acaba comprometendo muito a "fluidez" com que os comandos são aceitos.

Talvez você deva aumentar o tempo que é passado para o IENumerator de DetectarMovimento

Código:
StartCoroutine (EsperarParaPular(0.5f));

Troque de 0.5 para 1, 1.5, etc...
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por lelouchsdky Dom Jul 02, 2017 3:08 pm

Marcos, tem como fazer esse tutorial mas o personagem movendo no eixo x, um jogo 2D

lelouchsdky
Avançado
Avançado

Masculino PONTOS : 2970
REPUTAÇÃO : 21
Áreas de atuação : Cursando Licenciatura em computação
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Gabriel César O Dom Jul 02, 2017 9:56 pm

MarcosSchultz escreveu:Fala galera, elaborei este script simples que permite mover o seu jogador com Touch, como também com o Mouse, no estilo subway surfers... para jogos do tipo infinity runner

Basta criar um Script em C# com o nome "Mover", com o código abaixo, e jogar no seu jogador.

Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Mover : MonoBehaviour {//NESTE SCRIPT O PERSONAGEM DEVE SE MOVER PARA FRENTE NO EIXO Z(AZUL), PARA TIRAR DÚVIDAS, CONTATE WWW.SCHULTZGAMES.COM
 private float ponteiroX, ponteiroY, novaPosicX;
 private int indicePosic;
 private bool podeMover, estaNoChao, pulouR;
 private Vector3 posicInicial;
 [Range(0.01f,1)]public float TempoParaMover = 0.15f;
 [Range(1,5)]public int QuantoMover = 1;
 [Range(1,20)]public float forcaDoPulo = 5.0f;
 [Range(0,20)]public float velocidadeJogador = 5.0f;
 public bool podePular = true;
 public LayerMask LayersNaoIgnoradas = -1;
 private Rigidbody corpoRigido;

 void Start(){
 corpoRigido = GetComponent<Rigidbody> ();
 corpoRigido.constraints = RigidbodyConstraints.FreezeRotation;
 posicInicial = transform.position;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 indicePosic = 0;
 pulouR = false;
 podeMover = true;
 }

 void Update () {
 estaNoChao = Physics.Linecast (transform.position, transform.position - Vector3.up, LayersNaoIgnoradas);
 if (podeMover) {
 DetectarMovimento ();
 }
 }

 IEnumerator EsperarParaMover(float tempo) {
 yield return new WaitForSeconds(tempo);
 podeMover = true;
 }
 IEnumerator EsperarParaPular(float tempo) {
 yield return new WaitForSeconds(tempo);
 pulouR = false;
 }

 void DetectarMovimento(){
 podeMover = false;
 StartCoroutine (EsperarParaMover(TempoParaMover));

 ponteiroX = ponteiroY = 0;
 if (Input.GetMouseButton (0)) {
 ponteiroX = Input.GetAxis ("Mouse X");
 ponteiroY = Input.GetAxis ("Mouse Y");
 }
 if (Input.touchCount > 0){
 ponteiroX = Input.touches[0].deltaPosition.x;
 ponteiroY = Input.touches[0].deltaPosition.y;
 }
 //DETECTAR EIXO X
 if (ponteiroX > 0 && indicePosic < 1) {
 indicePosic ++;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }
 else if (ponteiroX < 0 && indicePosic > -1) {
 indicePosic --;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }
 //DETECTAR EIXO Y
 if (ponteiroY > 0.1f && podePular) {
 Pular ();
 }
 }

 void FixedUpdate(){
 Vector3 proximaPosic = new Vector3 (novaPosicX, transform.position.y, transform.position.z);
 transform.position = Vector3.Lerp (transform.position, proximaPosic, Time.deltaTime * 5);
 corpoRigido.velocity = new Vector3 (corpoRigido.velocity.x, corpoRigido.velocity.y, velocidadeJogador);
 }

 void Pular(){
 if(estaNoChao == true && pulouR == false){
 corpoRigido.AddForce(Vector3.up * forcaDoPulo, ForceMode.Impulse);
 pulouR = true;
 StartCoroutine (EsperarParaPular(0.5f));
 }
 }
}

este script funcionará se o seu personagem se mover para frente no eixo Z
UOU! PARABÉNS MARCOS! MUITO LEGAL E TOPER! SUCESSO!  Piscadinha :affraid: Cheers :lol!:
Gabriel César O
Gabriel César O
Profissional
Profissional

Masculino PONTOS : 3988
REPUTAÇÃO : 217
Idade : 23
Áreas de atuação : (ESTUDANDO SEGUNDO GRAU), (FUÇANDO NO UNITY)){
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Gabriel César O Ter Jul 04, 2017 5:46 pm

PESSOAL PARA COMPLEMENTAR AQUI TEM UM SCRIPT PARA FAZER O SEU OBJETO SE MOVER PARA FRENTE NO EIXO AZUL! O SCRIPT É EM Java Script
de o nome de "Frente" copie, cole e jogue em seu objeto! pronto!

Código:
#pragma strict
var velocidadeObjeto: float;


function Start () {

}

function Update () {
velocidadeObjeto = 1*Time.deltaTime;
transform.Translate(0,0,velocidadeObjeto);

}
Gabriel César O
Gabriel César O
Profissional
Profissional

Masculino PONTOS : 3988
REPUTAÇÃO : 217
Idade : 23
Áreas de atuação : (ESTUDANDO SEGUNDO GRAU), (FUÇANDO NO UNITY)){
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Como retirar movimentos nas diagonais?

Mensagem por FabioBRPA Dom Set 09, 2018 9:21 pm

Como eu faço para que o personagem não vá para cima e para um do lados ao mesmo tempo? Porque nesse scripteu posso mover na diagonal e o personagem segue pro lado e pula. Só que eu preciso que se eu puxar muito pra cima, mesmo que puxe pro lado também, ele só pule. Igual subway surfers. Ou o cara pula ou muda a posição. Não acontece as duas coisas ao mesmo tempo. Alguém pode me ajudar?

FabioBRPA
Iniciante
Iniciante

PONTOS : 2919
REPUTAÇÃO : 3
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz Dom Set 09, 2018 11:35 pm

FabioBRPA escreveu: Como eu faço para que o personagem não vá para cima e para um do lados ao mesmo tempo? Porque nesse scripteu posso mover na diagonal e o personagem segue pro lado e pula. Só que eu preciso que se eu puxar muito pra cima, mesmo que puxe pro lado também, ele só pule. Igual subway surfers. Ou o cara pula ou muda a posição. Não acontece as duas coisas ao mesmo tempo. Alguém pode me ajudar?

Você pode lidar com o input "Up" do dedo no touch... fazendo alguma ação acontecer só quando o dedo sai da tela.

Quando o dedo sair da tela, você compara quanto deslocou em X e quanto deslocou em Y... o eixo que tiver o maior deslocamento, será a ação do jogador.

Sabe fazer isto?
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 64987
REPUTAÇÃO : 2654
Idade : 28
Áreas de atuação : Administrador do fórum
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS Aad8pUi

https://www.schultzgames.com

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por FabioBRPA Seg Set 10, 2018 8:27 am

Já fiz isso, só que não fica legal ter que soltar para poder mover, fica muito demorado, ai eu baixei o subway surfers e percebi que nele não pecisava soltar após arrastar pra movimentar. Apenas arrasta e o carinha já pula. Fica bem mais fácil de jogar. E ai chega a minha dúvida... pq já tentei comprar se x > y . Só que não deu certo Mas talvez eu fiz da forma errada. Poderia me ajudar com esse script? Obrigado

FabioBRPA
Iniciante
Iniciante

PONTOS : 2919
REPUTAÇÃO : 3
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por FabioBRPA Seg Set 10, 2018 9:07 am

Ah acabei de resolver o problema! Eu criei duas variáveis bool: pular = ( absY > AbsX ) usei o Mathf.Abs(float value). Bool andar = ( X > Y) ai eu coloquei no if de detectar o movimento de andar e coloquei a variável pra verificar, também na de pular ai prestou muito bem! Espero que ajude alguém! Vlw

FabioBRPA
Iniciante
Iniciante

PONTOS : 2919
REPUTAÇÃO : 3
Respeito as regras : mover - [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS WvDYdlf

Ir para o topo Ir para baixo

Página 1 de 2 1, 2  Seguinte

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos