[ Duvida Unity 5.3 ] Exibir score
4 participantes
Página 1 de 1
[ Duvida Unity 5.3 ] Exibir score
Meu projeto atualmente tem a pontuação pronta com game over e recorde, a Pontuação na tela do jogo começa em 0 como esta na imagem, porem gostaria de adicionar Moedas na tela de jogo, pensei em adicionar da mesma forma que a Pontuação, mas assim iria iniciar em 0, porem e eu gostaria que iniciasse ja com a quantidade de moedas que a pessoa coletou durante o anteriormente, tentei algumas coisas com PlayerPrefs. mas não deu muito certo, sempre inicia em 0. Se alguém puder ajudar!
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
conheço um tutuorial legal aki
perai deixa eu procurar
perai deixa eu procurar
danyllo106- Avançado
- PONTOS : 3335
REPUTAÇÃO : 7
Idade : 26
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
mi enganei
nao era um tutorial
era algo q eu tinha criado
manda o seu script de pontos ai
para eu adaptar com o playerprefabs
nao era um tutorial
era algo q eu tinha criado
manda o seu script de pontos ai
para eu adaptar com o playerprefabs
danyllo106- Avançado
- PONTOS : 3335
REPUTAÇÃO : 7
Idade : 26
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Estes são os scripts relacionado aos pontos, esta meio bagunçado.
Script do player.
Script do game over.
Script dos pontos.
Script do player.
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
using System.Linq;
public class playerController : MonoBehaviour {
public Rigidbody2D playerRigidbody2D;
public Text moedas;
private int qntMoeda;
// Use this for initialization
void Start () {
qntMoeda = 0;
playerRigidbody2D = GetComponent<Rigidbody2D>();
GetComponent<Rigidbody2D>().isKinematic = true;
}
// Update is called once per frame
void Update () {
moedas.text = "Moedas: " + qntMoeda;
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.tag == "Moeda")
{
other.gameObject.SetActive(false);
qntMoeda = qntMoeda + 1;
}
else
{
SceneManager.LoadScene("GameOver");
print("Perdeu");
}
}
}
Script do game over.
- Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class GameOver : MonoBehaviour {
public UnityEngine.UI.Text pontos;
public UnityEngine.UI.Text recorde;
public Renderer[] medals;
public static int pontuacao;
public GameObject newScore;
// Use this for initialization
void Start () {
if (PlayerPrefs.GetInt("pontuacao") > PlayerPrefs.GetInt("recorde"))
{
newScore.SetActive(true);
}
else { newScore.SetActive(false); }
pontos.text = PlayerPrefs.GetInt("pontuacao").ToString();
recorde.text = PlayerPrefs.GetInt("recorde").ToString();
foreach (Renderer m in medals)
{
m.enabled = false;
}
if (PlayerPrefs.GetInt("pontuacao") >= 5 && PlayerPrefs.GetInt("pontuacao") < 9)
{
medals[0].enabled = true;
}
else if (PlayerPrefs.GetInt("pontuacao") >= 10 && PlayerPrefs.GetInt("pontuacao") < 14)
{
medals[1].enabled = true;
}
else if (PlayerPrefs.GetInt("pontuacao") >= 15)
{
medals[2].enabled = true;
}
}
// Update is called once per frame
void Update () {
}
}
Script dos pontos.
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Score : MonoBehaviour {
//Pontos
public Text txtPontos;
public static int pontuacao;
// Use this for initialization
void Start () {
pontuacao = 0;
PlayerPrefs.SetInt("pontuacao", pontuacao);
}
// Update is called once per frame
void Update () {
txtPontos.text = pontuacao.ToString();
PlayerPrefs.SetInt("pontuacao", pontuacao);
if (pontuacao > PlayerPrefs.GetInt("recorde"))
{
PlayerPrefs.SetInt("recorde", pontuacao);
}
}
}
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
bom oque vc tem que fazer e salvar no PlayerPrefs da mesma forma
e no Start vc usa o get
e no Start vc usa o get
Weslley- Moderador
- PONTOS : 5540
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Não funcionou, continua inciando do 0.
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
tente isso
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using System.Collections.Generic;
using System.Linq;
public class playerController : MonoBehaviour
{
public Rigidbody2D playerRigidbody2D;
public Text moedas;
private int qntMoeda;
void Start()
{
playerRigidbody2D = GetComponent<Rigidbody2D>();
GetComponent<Rigidbody2D>().isKinematic = true;
PegarMoedas();
}
private void PegarMoedas()
{
if (PlayerPrefs.HasKey("Moedas"))// pergutando se algo salvo na memoria
{
moedas = PlayerPrefs.GetInt(Moedas);
}
}
void Update()
{
moedas.text = "Moedas: " + qntMoeda;
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.tag == "Moeda")
{
other.gameObject.SetActive(false);
qntMoeda++;
PlayerPrefs.SetInt("Moedas", qntMoeda);
}
else
{
SceneManager.LoadScene("GameOver");
print("Perdeu");
}
}
}
Weslley- Moderador
- PONTOS : 5540
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Eu apliquei essas mesmas modificações mas continua iniciando em 0
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Budyw escreveu:Eu apliquei essas mesmas modificações mas continua iniciando em 0
Coloca um debug pra ver o que esta acontecendo
- Código:
private void PegarMoedas()
{
if (PlayerPrefs.HasKey("Moedas"))// pergutando se algo salvo na memoria
{
moedas = PlayerPrefs.GetInt(Moedas);
Debug.Log("contem Moedas na memoria ");
}
else
{
Debug.Log("NÃO contem Moedas na memoria ");
}
}
Weslley- Moderador
- PONTOS : 5540
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
- Código:
moedas = PlayerPrefs.GetInt(Moedas);
Esta dando erro, Não tem que ter aspas?
- Código:
moedas.text = PlayerPrefs.GetInt("Moedas").ToString();
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Budyw escreveu:
- Código:
moedas = PlayerPrefs.GetInt(Moedas);
Esta dando erro, Não tem que ter aspas?
- Código:
moedas.text = PlayerPrefs.GetInt("Moedas").ToString();
Sim achei que tinha colocado :/ tem que conter aspas
Weslley- Moderador
- PONTOS : 5540
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Fiquei confuso agora, ele inicia o jogo falando que "contem Moedas na memoria"
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Budyw escreveu:Fiquei confuso agora, ele inicia o jogo falando que "contem Moedas na memoria"
vc ja coletou moedas ?
teste de novo
- Código:
Debug.Log("contem Moedas na memoria " +
PlayerPrefs.GetInt("Moedas").ToString());
Weslley- Moderador
- PONTOS : 5540
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Coletei sim, eu testei e apareceu no console a quantidade de moedas que eu coletei no jogo anterior que foi 1, ai jogo mais e coleto por exemplo 3 e fecho o jogo, ai no jogo seguinte só aparece o que eu coletei no jogo anterior que foram 3, não aparece a soma dos dois jogos anteriores (3 + 4).... e no text da cena do jogo não apareceu, iniciou em 0 ainda..
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Weslley- Moderador
- PONTOS : 5540
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
É, bem estranho
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Re: [ Duvida Unity 5.3 ] Exibir score
Agora funcionou, muito bom o tutorial, valeu.
Budyw- Membro
- PONTOS : 3017
REPUTAÇÃO : 4
Respeito as regras :
Tópicos semelhantes
» ajuda exibir resultados simulados em uma liga Game Unity
» (DUVIDA) Não consigo salvar o score atual, somente o melhor.
» Unity 5 Duvida
» Preciso de ajuda para implementação do sistema de score no jogo na unity
» Eu estou com dúvida de como instalar a unity com Unity Hub
» (DUVIDA) Não consigo salvar o score atual, somente o melhor.
» Unity 5 Duvida
» Preciso de ajuda para implementação do sistema de score no jogo na unity
» Eu estou com dúvida de como instalar a unity com Unity Hub
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos