Dúvida, como transferir dados para outra cena (Iniciante)
3 participantes
Página 1 de 1
Dúvida, como transferir dados para outra cena (Iniciante)
Olá pessoal, sou iniciante na unity e estou fazendo um jogo simples em 2D. Estou seguindo um tutorial para a pontuação e recorde, mas ele não ensina a mostrar a pontuação em outra cena(o recorde aparece). Tentei seguir este tópico: https://www.schultzgames.com/t599-sistema-de-pontuacao-duvida mas não entendi direito o que tenho que fazer. Estou usando este script, poderiam modificá-lo e me explicar o que foi feito para eu entender a lógica?
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Manager : MonoBehaviour {
public Text Highscore;
public Text Score;
public int score = 0;
// Use this for initialization
void Start () {
Highscore.text = " " + PlayerPrefs.GetInt ("Highscore");
Score.text = " " + score;
}
// Update is called once per frame
void Update () {
if (score > PlayerPrefs.GetInt ("Highscore")) {
PlayerPrefs.SetInt("Highscore", score);
}
Score.text = " " + score;
}
}
JohnnyKills- Membro
- PONTOS : 3381
REPUTAÇÃO : 1
Respeito as regras :
Re: Dúvida, como transferir dados para outra cena (Iniciante)
Infelizmente este é um conceito não tão básico, más que precisa ser aprendido para transferir dados de uma cena para outra...
Tenho 2 vídeos que podem ajudar...
Para esta situação, o segundo é mais útil... pois você transfere o seu banco de dados de uma cena para outra de maneira simples
Tenho 2 vídeos que podem ajudar...
Para esta situação, o segundo é mais útil... pois você transfere o seu banco de dados de uma cena para outra de maneira simples
Re: Dúvida, como transferir dados para outra cena (Iniciante)
obrigado, vou assistir
JohnnyKills- Membro
- PONTOS : 3381
REPUTAÇÃO : 1
Respeito as regras :
Re: Dúvida, como transferir dados para outra cena (Iniciante)
Marcos, tentei usar/alterar o que você az nos scripts dos vídeos, mas não deu certo. Tem como me explicar de uma maneira mais simples?
JohnnyKills- Membro
- PONTOS : 3381
REPUTAÇÃO : 1
Respeito as regras :
Re: Dúvida, como transferir dados para outra cena (Iniciante)
Vou resumir para você então
Tenha um objeto vazio em sua primeira cena com este script
Este objeto deve ter a tag "DATA" para ser detectado onde for.
ele já irá salvar o seu score e transferi-lo de cena em cena.
Se quiser consultar o score e transferi-lo para uma "int" em outro script, use isto:
desta maneira você irá pegar o valor atual da variavel "score" que está no script banco de dados.
se quiser salvar o valor do score, apenas faça isto:
desta maneira o banco de dados fará um PlayerPrefs para salvar o valor que está na variavel score
simples assim.
E quando você iniciar o jogo, o Banco de dados resgatará automaticamente o valor do score já salvo
Tenha um objeto vazio em sua primeira cena com este script
- Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class BancoDeDados : MonoBehaviour {
public static bool SalvarScore;
public static int score;
private GameObject[] Datas;
void Awake (){
Datas = GameObject.FindGameObjectsWithTag ("DATA");
if (Datas.Length >= 2) {
Destroy(Datas[0]);
}
DontDestroyOnLoad (transform.gameObject);
}
void Start () {
SalvarScore = false;
score = PlayerPrefs.GetInt("savScore");
}
void Update () {
if (SalvarScore == true) {
PlayerPrefs.SetInt ("savScore", score);
SalvarScore = false;
}
}
}
Este objeto deve ter a tag "DATA" para ser detectado onde for.
ele já irá salvar o seu score e transferi-lo de cena em cena.
Se quiser consultar o score e transferi-lo para uma "int" em outro script, use isto:
- Código:
varInt = BancoDeDados.score;
desta maneira você irá pegar o valor atual da variavel "score" que está no script banco de dados.
se quiser salvar o valor do score, apenas faça isto:
- Código:
varInt = BancoDeDados.SalvarScore = true;
desta maneira o banco de dados fará um PlayerPrefs para salvar o valor que está na variavel score
simples assim.
E quando você iniciar o jogo, o Banco de dados resgatará automaticamente o valor do score já salvo
Re: Dúvida, como transferir dados para outra cena (Iniciante)
NAO ENTENDI MARCOS
cafezinho71- Avançado
- PONTOS : 1627
REPUTAÇÃO : 5
Áreas de atuação : unity c# e musica
Respeito as regras :
Re: Dúvida, como transferir dados para outra cena (Iniciante)
PQ EU COLOQUEI UM OBJETO VAZIO E COLOQUEI O SCRIPT DENTRO DELE E COLOQUEI A TAG DE DATA DENTRO DELE E COLQUEI O SCRIPT EM OUTRA CENA E TBM COLOQUEI OA TAG DATA NO TEXTO DA OUTRA CENA E NÃO FUNCIONOU QU EU FAÇO @MarcosSchultzcafezinho71 escreveu:NAO ENTENDI MARCOSSCR
cafezinho71- Avançado
- PONTOS : 1627
REPUTAÇÃO : 5
Áreas de atuação : unity c# e musica
Respeito as regras :
Tópicos semelhantes
» [DÚVIDA]Como fazer um botão para mudar de cena
» Skript para atravessar uma area e ir para outra cena já como personagem
» Como faço para desativar o pós-processamento em outra cena
» Como faço pra carregar os itens de uma Cena Para outra?
» [Duvida] Collab Excedeu o Seu Limite : Como posso transferir o projeto entre a equipe?
» Skript para atravessar uma area e ir para outra cena já como personagem
» Como faço para desativar o pós-processamento em outra cena
» Como faço pra carregar os itens de uma Cena Para outra?
» [Duvida] Collab Excedeu o Seu Limite : Como posso transferir o projeto entre a equipe?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos