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 Remota 5, sem reação.
Como Faz pra barra de vida aparecer de uma cena pra outra?
Salvar e carregar dados json player pref
Problema com cenário infinito ou algum tipo de bug na Unity?
Blander ao juntar algumas partes ficam mais escuro
Problema com Esqueleto do personagem
{Possível Projeto para Unity} Buscando membros para formar uma Equipe...
[TUTORIAL] Como spawnar inimigos [Tutorial simples]
Não consigo fazer o box collider descer junto com o personagem.
iniciar jogo com uma cena desativada e ativá-la ao colidir com bloco desativando as outras
BUG UNITY 3D ROSA A SCENE E GAME
Sistema de Grau Realista - Jogo de Moto
(Dúvida) Encontrar o objeto mais próximo partindo do ponto inicial ao final.
Programação Unity android 2D
(UNITY) Erro ao compilar a Build Android
Erro na sincronização dos player no Photon
[TUTORIAL] Barra de vida usando a UI da Unity(Slider)
[Projeto] Line Battle
Procuro Equipe Para Criação de Jogo [PAGO]
[TUTORIAL] Desbloqueio e Escolha de Personagens.
[RESOLVIDO] Problema com o navmesh agent
[RESOLVIDO] Registro cadrastando uma vez?
Vaga de modelador 3D, com remuneração...
Problemas com Colisores
[____ENQUETE____] Eleições para presidente 2018 (2º turno)
Como criar Atlas de textura com modelos exportados do Sketchup?
Unity - Sistema de Pagamento
[RESOLVIDO] iniciar áudio ao passar por uma área da cena
[RESOLVIDO] como envia asset para asset store
[TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS
codigo não deleta prefab e não respeita o if
[TUTORIAL] Filtros de áudio para AudioListner (Low pass filter, High pass filter, etc)
[____CICLO DE TRABALHO DA UNITY____]
Meu jogo não está abrindo em outro PC
[TUTORIAL] DANO POR QUEDA e BARRA DE VIDA CONTÍNUA no mesmo script
[TUTORIAL] Sistema de vida,morte,dano
Discord para desenvolvimento de jogos
FAB in WWII (Novo jogo na Play Storee é Free :D)
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[TUTORIAL] Sistema de PORTAS e CHAVES
Criar uma Array ou List com as resoluções suportadas
Alguem traz esse tutorial pro forum?
Realistic fps prefab tenho esses erros ao tentar colocar um script de entrar sair do carro
[RESOLVIDO] Alguem pode me ajudar? tenho esse erro aqui em um script
[RESOLVIDO] Personagem 2d batendo na borda e voando.
[RESOLVIDO] Não consigo usar o Sphere collider.
[RESOLVIDO] Como usa o UI.Text do unity?
Como criar botão de nova tentativa
[RESOLVIDO] Duvida em Jogo de tiro 2D
[TUTORIAL] Barra de VIDA / HP contínua
[RESOLVIDO] duvida com PlayerPrefs
Iniciar animação em determinado frame
Sistema De Troca De Armas 2D
[TUTORIAL] Script de arma completo! [FREE]
[TUTORIAL] Ordenar valores de uma array[] em ordem CRESCENTE OU DECRESCENTE
Meu jogo de runner em primeira pessoa !
[RESOLVIDO] Timer pra mudar de cena na unity 2018
Atualizar Build
[TUTORIAL] 42 ÓTIMAS DICAS DE OTIMIZAÇÃO PARA JOGOS MOBILE (Android)
Como usar Vector3.Angles para detectar que algo está na frente de outro objeto?
[TUTORIAL] Como fazer porta malas do carro abrir atravez de um botão?
Script nao funciona
Como desativar scripts em objetos distantes
[RESOLVIDO] Bug Da Unity ?
[AULA] HTML - Aula 1: Introdução
Raycast
[TUTORIAL]"Morte" do personagem (Unity 5.3 ou Superior)
Problema com a unity ads
como eu faço para a camera orbitar um objeto atraves de um joystick?????
[PROJETO MOBILE] Defeat the Illuminatis
XML, suporte e utilização.
Arrastar objetos em plano 2D (ArrastarT).
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Participe da Game Jam - Jaaj do canal Amdré Young!
Criar sistema de arrastar e soltar objetos em determinado lugar
AWM Champions I
[RESOLVIDO] Como verificar se o objeto é diferente de null
COMO FAÇO PARA FAZER UM SISTEMA DE SKIN PARA ANDROID ESTILO HEAVY BUS, PROTON BUS, ETC
[TUTORIAL] Snake com Unity + C#
Sobre Som (Ouvir som do sistema , duas caixas de som ... )
Configurar NPCs
[RESOLVIDO] Script Carta
[TUTORIAL] Texto Legenda Character Por Character Para Uso Básico
Ajuda com script movimento por Grid Tile no Navmesh
[Devlog] Lost in the world 05/10
[___COMO UTILIZAR O FÓRUM___] Principais botões e suas funções
inimigo nao persegue player
[RESOLVIDO] Build setting não entra
[RESOLVIDO] Player Sair Da animaçao
[RESOLVIDO] Erro colider
Dúvida sobre Resolução
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[____ENQUETE____] Eleições para presidente 2018
[Plugin dll] DigData basico save data Para Unity
Conquistas Steam? Adicionar
Montando equipe! [Game survival]
[TUTORIAL] Banco de dados || MySQL
[RESOLVIDO] Rotação com Mouse Vídeo 360
Problema com a velocidade do objeto
Hoje à(s) 8:19 am
Hoje à(s) 8:00 am
Hoje à(s) 2:30 am
Hoje à(s) 12:04 am
Ontem à(s) 11:45 pm
Ontem à(s) 11:17 pm
Ontem à(s) 10:14 pm
Ontem à(s) 9:49 pm
Ontem à(s) 8:32 pm
Ontem à(s) 5:21 pm
Ontem à(s) 5:18 pm
Ontem à(s) 5:16 pm
Ontem à(s) 5:13 pm
Ontem à(s) 5:13 pm
Ontem à(s) 5:10 pm
Ontem à(s) 4:35 pm
Ontem à(s) 3:13 pm
Ontem à(s) 7:28 am
Ter Out 16, 2018 9:56 pm
Ter Out 16, 2018 3:34 pm
Ter Out 16, 2018 12:41 pm
Ter Out 16, 2018 11:48 am
Seg Out 15, 2018 5:34 pm
Seg Out 15, 2018 5:03 pm
Seg Out 15, 2018 2:46 pm
Seg Out 15, 2018 1:19 pm
Seg Out 15, 2018 12:56 pm
Seg Out 15, 2018 11:34 am
Seg Out 15, 2018 6:17 am
Seg Out 15, 2018 12:30 am
Seg Out 15, 2018 12:18 am
Dom Out 14, 2018 12:52 am
Sab Out 13, 2018 9:08 pm
Sab Out 13, 2018 5:24 pm
Sab Out 13, 2018 4:00 pm
Sex Out 12, 2018 10:42 pm
Sex Out 12, 2018 6:00 pm
Sex Out 12, 2018 2:56 pm
Sex Out 12, 2018 2:55 pm
Sex Out 12, 2018 2:42 pm
Qui Out 11, 2018 8:59 pm
Qui Out 11, 2018 8:32 pm
Qui Out 11, 2018 3:09 pm
Qui Out 11, 2018 2:32 pm
Qui Out 11, 2018 12:15 pm
Qui Out 11, 2018 11:35 am
Qui Out 11, 2018 10:50 am
Qui Out 11, 2018 8:24 am
Qua Out 10, 2018 11:31 pm
Qua Out 10, 2018 11:11 pm
Qua Out 10, 2018 10:43 pm
Qua Out 10, 2018 8:22 pm
Qua Out 10, 2018 4:53 pm
Qua Out 10, 2018 4:44 pm
Qua Out 10, 2018 3:48 pm
Qua Out 10, 2018 12:40 pm
Ter Out 09, 2018 9:51 pm
Ter Out 09, 2018 8:16 pm
Ter Out 09, 2018 8:16 pm
Ter Out 09, 2018 8:10 pm
Ter Out 09, 2018 8:09 pm
Ter Out 09, 2018 7:38 pm
Ter Out 09, 2018 2:55 pm
Seg Out 08, 2018 6:13 pm
Seg Out 08, 2018 4:40 pm
Seg Out 08, 2018 2:39 pm
Seg Out 08, 2018 12:52 pm
Seg Out 08, 2018 12:16 pm
Seg Out 08, 2018 10:33 am
Seg Out 08, 2018 9:22 am
Dom Out 07, 2018 1:59 pm
Dom Out 07, 2018 11:53 am
Dom Out 07, 2018 10:53 am
Sab Out 06, 2018 11:14 pm
Sab Out 06, 2018 10:55 pm
Sab Out 06, 2018 8:50 pm
Sab Out 06, 2018 8:41 pm
Sab Out 06, 2018 2:21 pm
Sab Out 06, 2018 1:33 pm
Sab Out 06, 2018 2:04 am
Sex Out 05, 2018 8:22 pm
Sex Out 05, 2018 7:39 pm
Sex Out 05, 2018 6:35 pm
Sex Out 05, 2018 11:27 am
Sex Out 05, 2018 11:22 am
Sex Out 05, 2018 9:35 am
Sex Out 05, 2018 12:53 am
Qui Out 04, 2018 11:40 pm
Qui Out 04, 2018 10:43 pm
Qui Out 04, 2018 6:23 pm
Qui Out 04, 2018 3:36 pm
Qui Out 04, 2018 3:12 pm
Qui Out 04, 2018 3:11 pm
Qui Out 04, 2018 3:11 pm
Qui Out 04, 2018 3:07 pm
Qui Out 04, 2018 12:45 am
Qua Out 03, 2018 10:50 pm
Qua Out 03, 2018 7:15 pm
Qua Out 03, 2018 4:18 pm
Tegh
francisco barroso
JuR
MarcosSchultz
DominicDK
DominicDK
NoctisLucis
francisco barroso
MayLeone
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
francisco barroso
hao3726
dstaroski
dstaroski
MRX
ismarspn
Jmspp
Callyde Jr
igorobm
conceptfac
Dom3000
Isabela
Callyde Jr
Daniel Dória
diegopds
MarcosSchultz
igorobm
MarcosSchultz
MarcosSchultz
Flávio
francisco barroso
Callyde Jr
SuperGamer
SoullSec
SoullSec
SoullSec
Flávio
francisco barroso
Samuelostgamer
Samuelostgamer
gurgelg752
luansantos
guimaraf
theus.mors
TecnoGames
francisco barroso
Eduardoro39
QueriaStarMorto
QueriaStarMorto
mecjo
NyanHeavyBR
CaioItz
RodriGO3477
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
FelipeSouza11
FelipeSouza11
QueriaStarMorto
Tegh
Jmspp
Callyde Jr
Jmspp
Gabryellx007
dstaroski
Tegh
Tegh
SuperGamer
Luizdanhp
MarcosSchultz
TioUV
QueriaStarMorto
KAYKETHEO27
NKKF
MarcosSchultz
Callyde Jr
francisco barroso
FelipeSouza11
Nowsfeky
Mateus2583
FelipeSouza11
Callyde Jr
Daniel Dória
marcosdanielnerydasilva
francisco barroso
NKKF
dstaroski
dstaroski
dstaroski
dstaroski
PedroSilva
igorobm
natanael.olimpio
Socates

Como criar um sistema de Ranking simples.

Ir em baixo

DÚVIDA Como criar um sistema de Ranking simples.

Mensagem por luansantos em Dom Maio 20, 2018 4:40 pm

Bom  estou tendo muita dificuldade para fazer um sistema de ranking para o meu jogo, queria fazer um offiline simples que mostrasse apenas as 5 melhores pontuações, já vi vários vídeos ensinando más não deu certo nenhum, vários deles usavam mysql só que não tenho muito conhecimento sobre isso, que me atrapalha bastante. Se alguém tiver algum tutorial que me ajudasse ou algo que pudesse me ajudar agradeceria muito.
avatar
luansantos
Iniciante
Iniciante

Masculino PONTOS : 254
REPUTAÇÃO : 1
Idade : 21
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Callyde Jr em Seg Maio 21, 2018 7:14 pm

Tenho esse aqui para voce textar e ter ideias.
Em 1 object vaziu coloque esses 2 scripts
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class GameController : MonoBehaviour {

   public Text clickCounterText, timeRemainingText;//Textos de clicks e tempo
   public InputField playerName;//Input

   int totalClicks = 0;
   int timeRemaining = 10;
   bool gameInPlay = true;

   void Start ()
   {
      StartCoroutine (OneSecond ());
   }
   
   IEnumerator OneSecond()
   {
      while (1==1)
      {
         yield return new WaitForSeconds (1.0f);
         timeRemaining--;
         timeRemainingText.text = "Time: " + timeRemaining;
         if (timeRemaining == 0)
         {
            EndGame();
            break;
         }
      }      
   }

   void EndGame()
   {
      gameInPlay = false;
   
   }

   public void InitialsEntered()//Para mostrar
   {
      GetComponent<RankingController>().CheckForHighScore(totalClicks,playerName.text);
   }

   void Update()
   {
      if (!gameInPlay) return;
      if(Input.GetKeyDown(KeyCode.Space))//Aperte para adicionar os clicks
      {
         totalClicks++;
         clickCounterText.text = "Clicks: " + totalClicks;
      }
   }
}

Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class RankingController : MonoBehaviour
{

   public Text[] highScores;//Adicione a quantidade de textos para mostrar, eu coloco 5
   int[] highScoreValues;
   string[] highScoreNames;

   void Start ()
   {
      highScoreValues = new int[highScores.Length];
      highScoreNames = new string[highScores.Length];

      for (int x = 0; x < highScores.Length; x++)
      {
         highScoreValues[x] = PlayerPrefs.GetInt("highScoresValues" + x);
         highScoreNames[x] = PlayerPrefs.GetString("highScoresNames" + x);
      }

      DrawScores();
   }

   void SaveScores()//Salvar scores
   {
      for (int x = 0; x < highScores.Length; x++)
      {
         PlayerPrefs.SetInt("highScoresValues" + x, highScoreValues[x]);
         PlayerPrefs.SetString("highScoresNames" + x, highScoreNames[x]);
      }
   }

   public void CheckForHighScore(int _value, string _userName)//Checar scores
   {
      for (int x = 0; x < highScores.Length; x++)
      {
         if(_value > highScoreValues[x])
         {
            for(int y = highScores.Length - 1; y>x; y--)
            {
               highScoreValues [y] = highScoreValues [y - 1];
               highScoreNames [y] = highScoreNames [y - 1];
            }
            highScoreValues [x] = _value;
            highScoreNames [x] = _userName;

            DrawScores();
            SaveScores();
            break;
         }
      }
   }

   void DrawScores()
   {
      for (int x = 0; x < highScores.Length; x++)
      {
         highScores[x].text = highScoreNames[x] + ": " + highScoreValues[x].ToString();
      }
   }
   public void DeleteSave()//Deletar scores
   
   {
      //PlayerPrefs.DeleteKey("Nome da Chave(key)");
       PlayerPrefs.DeleteAll();
      
   }

}
Adicione o canvas texts,input o que pede no script
No primeiro script adicione 2 texts para clicks e tempo
No sgundo coloque uma quantidade de text dentro de um panel e coloque no segundo
script,
Adicione 2 butoes um para salva e outro para deletar
avatar
Callyde Jr
Programador

Masculino PONTOS : 2675
REPUTAÇÃO : 363
Idade : 39
Áreas de atuação : Iniciante em modelagem Blender,ScketSHUP
Progamador
Ideialista

Meu Canal
https://www.youtube.com/ch
Respeito as regras :

Ver perfil do usuário http://unnygames.000webhostapp.com/

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por luansantos em Seg Maio 21, 2018 8:58 pm

Cara obrigado pela ajuda, mas não tive sucesso em usa-lo pois não funcionou, não salvou os dados.
avatar
luansantos
Iniciante
Iniciante

Masculino PONTOS : 254
REPUTAÇÃO : 1
Idade : 21
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Phph09 em Seg Maio 21, 2018 9:49 pm

Ja tentou chamar a void SaveScore no update()?
avatar
Phph09
ProgramadorMaster

Masculino PONTOS : 1581
REPUTAÇÃO : 233
Idade : 13
Áreas de atuação :

Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Callyde Jr em Ter Maio 22, 2018 5:47 am

Essa funçao voce coloca em um  botao para salvar
Código:
void SaveScores()
Essa funçao voce colocar em outro butao

Código:
DeleteSave()
No input voce colocar um nome,
No botao de Space quanto mais apertar vai adicionar pontos
avatar
Callyde Jr
Programador

Masculino PONTOS : 2675
REPUTAÇÃO : 363
Idade : 39
Áreas de atuação : Iniciante em modelagem Blender,ScketSHUP
Progamador
Ideialista

Meu Canal
https://www.youtube.com/ch
Respeito as regras :

Ver perfil do usuário http://unnygames.000webhostapp.com/

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por luansantos em Ter Maio 22, 2018 10:28 am

Eu alterei umas coisas para  adaptar-se com o jogo que estou fazendo, estou tentando fazer quando o player colidir aumente o meu score, o score aumenta mas na hora de mostrar o ranking não aparece o nome e nem os pontos apenas uns números aleatórios (25,26).
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class controller : MonoBehaviour {

 public Text clickCounterText, timeRemainingText;
 public InputField playerName;

 int totalScores = 0;

 bool gameInPlay = true;

 void Start ()
 {
 
 }





 public void InitialsEntered()
 {
 GetComponent<RankingController>().CheckForHighScore(totalScores,playerName.text);
 }

 void Update()
 {
         SaveScores();

 }

 void OnTriggerEnter(Collider other){

 if (other.tag == "latinha") {

 totalScores++;
 clickCounterText.text = "Clicks: " + totalScores;
 }

 }
}


ficou assim
avatar
luansantos
Iniciante
Iniciante

Masculino PONTOS : 254
REPUTAÇÃO : 1
Idade : 21
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Callyde Jr em Ter Maio 22, 2018 12:20 pm

Ficou faltando o nome do player
Código:
 public InputField playerName;
Voce pode usalo de outro script e enviar para uma string invez de input nesse script.
Código:
public string playerName
avatar
Callyde Jr
Programador

Masculino PONTOS : 2675
REPUTAÇÃO : 363
Idade : 39
Áreas de atuação : Iniciante em modelagem Blender,ScketSHUP
Progamador
Ideialista

Meu Canal
https://www.youtube.com/ch
Respeito as regras :

Ver perfil do usuário http://unnygames.000webhostapp.com/

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por luansantos em Ter Maio 22, 2018 11:27 pm

Muito obrigado pela ajuda, finalmente consegui fazer o ranking, modifiquei e joguei o script no personagem do meu game. Vou deixar aqui os scripts que modifiquei para talvez ajudar outra pessoa  ^^
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class RankingController : MonoBehaviour
{

   public Text[] highScores;
   int[] highScoreValues;
   string[] highScoreNames;

   void Start ()
   {
      highScoreValues = new int[highScores.Length];
      highScoreNames = new string[highScores.Length];

      for (int x = 0; x < highScores.Length; x++)
      {
         highScoreValues[x] = PlayerPrefs.GetInt("highScoresValues" + x);
         highScoreNames[x] = PlayerPrefs.GetString("highScoresNames" + x);
      }

      DrawScores();
   }

   void SaveScores()
   {
      for (int x = 0; x < highScores.Length; x++)
      {
         PlayerPrefs.SetInt("highScoresValues" + x, highScoreValues[x]);
         PlayerPrefs.SetString("highScoresNames" + x, highScoreNames[x]);
      }
   }

   public void CheckForHighScore(int _value, string _userName)
   {
      for (int x = 0; x < highScores.Length; x++)
      {
         if(_value > highScoreValues[x])
         {
            for(int y = highScores.Length - 1; y>x; y--)
            {
               highScoreValues [y] = highScoreValues [y - 1];
               highScoreNames [y] = highScoreNames [y - 1];
            }
            highScoreValues [x] = _value;
            highScoreNames [x] = _userName;

            DrawScores();
            SaveScores();
            break;
         }
      }
   }

   void DrawScores()
   {


      for (int x = 0; x < highScores.Length; x++)
      {
         highScores[x].text = highScoreNames[x] + ": " + highScoreValues[x].ToString();
      }
   }

}

Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class controller : MonoBehaviour {

   public Text clickCounterText, timeRemainingText;
   public InputField playerName;

   int totalScores = 0;

   bool gameInPlay = true;

   void Start ()
   {
      
   }





   public void InitialsEntered()
   {
      GetComponent<RankingController>().CheckForHighScore(totalScores,playerName.text);
   }

   void Update()
   {


   }

   void OnTriggerEnter(Collider other){

      if (other.tag == "latinha") {

         totalScores++;
         clickCounterText.text = "Clicks: " + totalScores;
      }

   }
}
avatar
luansantos
Iniciante
Iniciante

Masculino PONTOS : 254
REPUTAÇÃO : 1
Idade : 21
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Flávio em Qua Jun 06, 2018 3:03 pm

vou pegar uma carona aqui, estou querendo fazer um ranking offline com 20 colocações.
no meu jogo no fim do ultimo stage, vai aparecer um input para escrever o nome do jogador e salvar esse nome, que vai ter 7 caracteres no máximo. Quero fazer esse input para o nome igual nesse jogo aqui, vejam o tempo entre 1:00:55 a 1:03:04



no jogo o input tem 3 caracteres mas vou fazer com 7.
quero tambem que à medida que varias pessoas forem jogando e fazendo novas pontuações recordes, os maiores pontos vão sendo salvos e mesmo que a pessoa ligue o jogo de novo depois de fecha-lo, as maiores pontuações estarão lá.

com os scripts acima do luansantos consigo isso?
o que devo alterar nos scripts?
ainda não sei bem como fazer esse sistema de ranking se alguém puder me ajudar agradeço muito!!
avatar
Flávio
Avançado
Avançado

Masculino PONTOS : 490
REPUTAÇÃO : 13
Áreas de atuação : Aprendizagem em: programação C#; Pixelart
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Flávio em Sex Jun 15, 2018 1:13 pm

Na primeira vez que a pessoa instalar o jogo no computador, o jogo vai ter uma memória definida com 10 colocações no ranking de 1 a 10, com as pontuações 10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000, 90000 e 100000 respectivamernte do ultimo colocado até o primeiro, e com os nomes ficticios ANA, PEDRO, VIVIANE, BRUNO, CLAUDIA, JONAS, KAIQUE, MARINA, PAULO e JOAO respectivamente.


Quando a pessoa jogar pela primeira vez, se o score que ela conseguir for menor que 10000, vai permancer esse ranking da memória acima com os mesmos nomes; mas se a pessoa conseguir mais de 10000, o nome que ela digitar agora vai entrar no ranking e a colocação será aquela conforme a quantidade de pontos conseguidos.
E de agora em diante, à medida que a pessoa for jogando, os novos nomes que ela for escrevendo e scores conseguidos vai sendo gravados no lugar daquela memória lá em cima.

esses dois scripts faz isso ou seria algo mais complexo? alguem pode me ajudar? porque sistema de ranking tá sendo dificil
avatar
Flávio
Avançado
Avançado

Masculino PONTOS : 490
REPUTAÇÃO : 13
Áreas de atuação : Aprendizagem em: programação C#; Pixelart
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por BRGC em Sex Jun 15, 2018 2:46 pm

Usa o DreamIo: Link

Ele e online em tempo real e de graça

Tutorial:
avatar
BRGC
Programador

Masculino PONTOS : 765
REPUTAÇÃO : 43
Idade : 14
Áreas de atuação : C# intermediário.
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Flávio em Qui Jun 21, 2018 1:50 pm

BRGC achei interessante esse sistema de ranking guardado em nuvem
meu ranking vai ficar dessa forma:
https://imgur.com/a/gdESTIb

a coluna 'RANK' que vai de 1ST a 10TH vai ficar desse jeito, nada vai mudar aí.
os demis subtitulos 'NAME', 'ST', 'SCORE' e 'LEVEL' também ficam no lugar em que estão.
os traços ------- , o numero '1' , os '00000000' e a palavra NORMAL eu digitei só para mostrar o tamanho do campo e numero de caracteres.


usei esse sistema de ranking que ensina no video mas acontece que na hora que dou play fica dessa forma:
https://imgur.com/a/1u9kXaW

fica tudo no campo do score onde tem os 00000000
eu poderia expandir os campos do score mas os nomes e os st nao ficam alinhados, como na iamgem:
https://imgur.com/a/6Ea4J5C

só os scores ficam alinhados

eu queria saber o que dá para mudar nos scripts para que os nomes, os st, os scores e o level ficam cada um em seu campo.
tambem quero que apareça no ranking o LEVEL escolhido pelo jogador no inicio do jogo. o que preciso alterar nos scripts?

script Highscores
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Highscores : MonoBehaviour {

    const string privateCode = "7waH-2m5a0GJS2cpLMaYxA8quMXq695UOMNpOoAmjIqA";
    const string publicCode = "5b2450fd191a8a0bcc7c3a7c";
    const string webURL = "http://dreamlo.com/lb/";

    DisplayHighscores highscoreDisplay;
    public Highscore[] highscoresList;
    static Highscores instance;

    void Awake() {
        /*AddNewHighscore("B.K.V", 100000);
        AddNewHighscore("M.A.K", 90000);
        AddNewHighscore("T.E.V", 80000);
        AddNewHighscore("Y.D.X", 70000);
        AddNewHighscore("S.A.Y", 60000);
        AddNewHighscore("D.I.K", 50000);
        AddNewHighscore("W.O.Z", 40000);
        AddNewHighscore("X.T.N", 30000);
        AddNewHighscore("B.O.B", 20000);
        AddNewHighscore("T.R.E", 10000);*/

        highscoreDisplay = GetComponent<DisplayHighscores>();
        instance = this;
    }

    public static void AddNewHighscore(string username, int score) {
        instance.StartCoroutine(instance.UploadNewHighscore(username, score));
    }

    IEnumerator UploadNewHighscore(string username, int score) {
        WWW www = new WWW(webURL + privateCode + "/add/" + WWW.EscapeURL(username) + "/" + score);
        yield return www;

        if (string.IsNullOrEmpty(www.error)) {
            print("Upload Successful");
            DownloadHighscores();
        }
        else {
            print("Error uploading: " + www.error);
        }
    }

    public void DownloadHighscores() {
        StartCoroutine("DownloadHighscoresFromDatabase");
    }

    IEnumerator DownloadHighscoresFromDatabase() {
        WWW www = new WWW(webURL + publicCode + "/pipe/");
        yield return www;

        if (string.IsNullOrEmpty(www.error)) {
            FormatHighscores(www.text);
            highscoreDisplay.OnHighscoresDownloaded(highscoresList);
        }
        else {
            print("Error Downloading: " + www.error);
        }
    }

    void FormatHighscores(string textStream) {
        string[] entries = textStream.Split(new char[] { '\n' }, System.StringSplitOptions.RemoveEmptyEntries);
        highscoresList = new Highscore[entries.Length];

        for (int i = 0; i < entries.Length; i++) {
            string[] entryInfo = entries[i].Split(new char[] { '|' });
            string username = entryInfo[0];
            int score = int.Parse(entryInfo[1]);
            highscoresList[i] = new Highscore(username, score);
            print(highscoresList[i].username + ": " + highscoresList[i].score);
        }
    }
}

public struct Highscore {
    public string username;
    public int score;
   
    public Highscore(string _username, int _score) {
        username = _username;
        score = _score;
    }
}


script DisplayHighscores
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class DisplayHighscores : MonoBehaviour {

    public Text[] camposDeHighscore;
    private Highscores scriptHighscores;

    void Start() {
        scriptHighscores = GetComponent<Highscores>();
        AtualizarHighscores();
    }

    public void OnHighscoresDownloaded(Highscore[] highscoreList) {
        for (int i = 0; i < camposDeHighscore.Length; i++) {
            camposDeHighscore[i].text = "";

            if (i < highscoreList.Length) {
                camposDeHighscore[i].text += highscoreList[i].username + "  " + 1 + "  " + highscoreList[i].score;
            }
        }
    }

    void AtualizarHighscores() {
        scriptHighscores.DownloadHighscores();
    }
}

fiz algumas alterações nos scripts originais para o ranking aparecer conforme nas imagens
avatar
Flávio
Avançado
Avançado

Masculino PONTOS : 490
REPUTAÇÃO : 13
Áreas de atuação : Aprendizagem em: programação C#; Pixelart
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como criar um sistema de Ranking simples.

Mensagem por Flávio em Sex Jun 29, 2018 3:35 pm

alguem pode me dar uma dica conforme o que pretendo fazer acima? sistema ranking tá meio dificil p mim ainda porque envolve muito codigo com for e foreach que eu ainda nao dominei muito

agradeço quem puder me ajudar
avatar
Flávio
Avançado
Avançado

Masculino PONTOS : 490
REPUTAÇÃO : 13
Áreas de atuação : Aprendizagem em: programação C#; Pixelart
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