Como poço fazer um sistema de salvar pontuação?
3 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Como poço fazer um sistema de salvar pontuação?
Esse é o script do HUD:
Quando o personagem morrer,depois de 10 segundos o jogo carrega novamente a fase 1,mas a pontuação é zerada,como poço adicionar um sisteminha de salvar somente a pontuação que chamo de "Kataras",não importa quantas vezes morrer?
- Código:
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Coletaveis : MonoBehaviour {
private Animator ControlAgachar;
public Text kataras;
public Text comida;
public Text TextoVida;
public float Vida = 100,Fome = 100;
private int Kataras = 0;
private int Comida = 0;
private string saude = "Cheia";
public AudioSource SomDeMorte;
public GameObject Luz;
public string Cena;
public float Time;//tempo do temporizador
float CTemp;
public string fase1;
//ooooooo
public GameObject raposaNormalCollider;
public GameObject raposaAbaixadoCollider;
public AudioSource ComerMaca;
public AudioSource ComerUva;
public AudioSource ComerCarnePodre;
void Start(){
StartCoroutine("Contador");
ControlAgachar = GetComponent<Animator> ();
}
void Update (){
kataras.text = "Kataras: " + Kataras;
comida.text = "Comida: " + Comida;
if (Fome <= 0) {
Vida -= 0.1f;
if (Vida <= 0) {
Vida = 0;
}
}
if (Fome <= 0) {
Fome = 0;
}
if (Vida >= 100) {
TextoVida.text = "Cheia"; //100%
if (Vida == 51) {
}
}
if (Vida <= 80) {
TextoVida.text = "Saudavel"; //80%
}
if (Vida <= 50) {
TextoVida.text = "Estavel"; //50%
if (Vida == 31) {
}
}
if (Vida <= 30) {
TextoVida.text = "Baixa"; //30%
}
if (Vida <= 15) {
TextoVida.text = "Sensivel"; //15%
}
if (Vida <= 0) {
TextoVida.text = "Morto"; //0%
}
//Extras
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.D)) {
Fome -= 0.2f;
}
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.A)) {
Fome -= 0.2f;
}
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.W)) {
Fome -= 0.2f;
}
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.S)) {
Fome -= 0.2f;
}
//Extras 2
if (TextoVida.text == "Morto") {
raposaAbaixadoCollider.SetActive (false);
raposaNormalCollider.SetActive (false);
transform.Translate (0.0f, -1, 0.0f);
ControlAgachar.SetInteger ("Condição", 27);
Luz.GetComponent<Light> ().color = new Color (255, 0, 0, 0.3f);
RenderSettings.ambientSkyColor = new Color (0, 0, 0, 128);
CTemp += 1;
if (CTemp >= 1) {
Time -= 1;
CTemp = 0;
}
if (Time <= 0) {
SceneManager.LoadScene (fase1);
}
}
}
void OnTriggerEnter (Collider other){
if (other.tag == "Maça") {
other.gameObject.SetActive (false);
ComerMaca.Play ();
Kataras = Kataras + 4;
kataras.text = "Pontos: " + Kataras;
Comida = Comida + 1;
comida.text = "Comida: " + Comida;
Fome = Fome + 6;
}
if (other.tag == "Uva") {
other.gameObject.SetActive (false);
ComerUva.Play ();
Kataras = Kataras + 3;
kataras.text = "Pontos: " + Kataras;
Comida = Comida + 1;
comida.text = "Comida: " + Comida;
Fome = Fome + 3;
}
if (other.tag == "CarnePodre") {
other.gameObject.SetActive (false);
ComerCarnePodre.Play ();
Kataras = Kataras - 4;
kataras.text = "Pontos: " + Kataras;
Comida = Comida + 1;
comida.text = "Comida: " + Comida;
Fome = Fome + 1;
}
if (Comida >= 155) {
Comida = 155;
}
if (Kataras >= 650) {
Kataras = 650;
}
if (other.tag == "Nivel2") {
SceneManager.LoadScene (Cena);
}
}
IEnumerator Contador () {
yield return new WaitForSecondsRealtime (4);
Fome -= 7;
yield return new WaitForSecondsRealtime (4);
StartCoroutine ("Contador");
}
}
Quando o personagem morrer,depois de 10 segundos o jogo carrega novamente a fase 1,mas a pontuação é zerada,como poço adicionar um sisteminha de salvar somente a pontuação que chamo de "Kataras",não importa quantas vezes morrer?
Re: Como poço fazer um sistema de salvar pontuação?
se esta perdido,esse aqui é o pedaço de se o personagem morrer:
- Código:
if (TextoVida.text == "Morto") {[size=14][/size] [size=14][/size][size=14][/size] raposaAbaixadoCollider.SetActive (false);[size=14][/size] raposaNormalCollider.SetActive (false);[size=14][/size] transform.Translate (0.0f, -1, 0.0f);[size=14][/size] ControlAgachar.SetInteger ("Condição", 27);[size=14][/size] Luz.GetComponent<Light> ().color = new Color (255, 0, 0, 0.3f);[size=14][/size] RenderSettings.ambientSkyColor = new Color (0, 0, 0, 128);[size=14][/size] CTemp += 1;[size=14][/size] if (CTemp >= 1) {[size=14][/size] Time -= 1;[size=14][/size] CTemp = 0;[size=14][/size] }[size=14][/size][size=14][/size] if (Time <= 0) {[size=14][/size][size=14][/size] SceneManager.LoadScene (fase1);[size=14][/size][size=14][/size][size=14][/size][size=14][/size][size=14][/size][size=14][/size] }[size=14][/size] }
Re: Como poço fazer um sistema de salvar pontuação?
Usar O PlayerPrefs
Bruno- ProgramadorMaster
- PONTOS : 3415
REPUTAÇÃO : 142
Idade : 22
Áreas de atuação : C# Avançado, SQL Intermediário, Unity3D Intermediário, HTML Iniciante, CSS Iniciante e ASP.NET
Respeito as regras :
Re: Como poço fazer um sistema de salvar pontuação?
Ver Se Fuciona Pq Não Testei
- Código:
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Coletaveis : MonoBehaviour {
private Animator ControlAgachar;
public Text kataras;
public Text comida;
public Text TextoVida;
public float Vida = 100,Fome = 100;
private int Kataras = 0;
private int Comida = 0;
private string saude = "Cheia";
public AudioSource SomDeMorte;
public GameObject Luz;
public string Cena;
public float Time;//tempo do temporizador
float CTemp;
public string fase1;
//ooooooo
public GameObject raposaNormalCollider;
public GameObject raposaAbaixadoCollider;
public AudioSource ComerMaca;
public AudioSource ComerUva;
public AudioSource ComerCarnePodre;
void Awake(){
StartCoroutine("Contador");
ControlAgachar = GetComponent<Animator> ();
if (PlayerPrefs.HasKey ("Kataras")) {
Kataras = PlayerPrefs.GetInt ("Kataras");
}
}
void Update (){
PlayerPrefs.SetInt ("Kataras", Kataras);
kataras.text = "Kataras: " + Kataras;
comida.text = "Comida: " + Comida;
if (Fome <= 0) {
Vida -= 0.1f;
if (Vida <= 0) {
Vida = 0;
}
}
if (Fome <= 0) {
Fome = 0;
}
if (Vida >= 100) {
TextoVida.text = "Cheia"; //100%
if (Vida == 51) {
}
}
if (Vida <= 80) {
TextoVida.text = "Saudavel"; //80%
}
if (Vida <= 50) {
TextoVida.text = "Estavel"; //50%
if (Vida == 31) {
}
}
if (Vida <= 30) {
TextoVida.text = "Baixa"; //30%
}
if (Vida <= 15) {
TextoVida.text = "Sensivel"; //15%
}
if (Vida <= 0) {
TextoVida.text = "Morto"; //0%
}
//Extras
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.D)) {
Fome -= 0.2f;
}
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.A)) {
Fome -= 0.2f;
}
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.W)) {
Fome -= 0.2f;
}
if (Input.GetKey (KeyCode.LeftShift) && Input.GetKey (KeyCode.S)) {
Fome -= 0.2f;
}
//Extras 2
if (TextoVida.text == "Morto") {
raposaAbaixadoCollider.SetActive (false);
raposaNormalCollider.SetActive (false);
transform.Translate (0.0f, -1, 0.0f);
ControlAgachar.SetInteger ("Condição", 27);
Luz.GetComponent<Light> ().color = new Color (255, 0, 0, 0.3f);
RenderSettings.ambientSkyColor = new Color (0, 0, 0, 128);
CTemp += 1;
if (CTemp >= 1) {
Time -= 1;
CTemp = 0;
}
if (Time <= 0) {
SceneManager.LoadScene (fase1);
}
}
}
void OnTriggerEnter (Collider other){
if (other.tag == "Maça") {
other.gameObject.SetActive (false);
ComerMaca.Play ();
Kataras = Kataras + 4;
kataras.text = "Pontos: " + Kataras;
Comida = Comida + 1;
comida.text = "Comida: " + Comida;
Fome = Fome + 6;
}
if (other.tag == "Uva") {
other.gameObject.SetActive (false);
ComerUva.Play ();
Kataras = Kataras + 3;
kataras.text = "Pontos: " + Kataras;
Comida = Comida + 1;
comida.text = "Comida: " + Comida;
Fome = Fome + 3;
}
if (other.tag == "CarnePodre") {
other.gameObject.SetActive (false);
ComerCarnePodre.Play ();
Kataras = Kataras - 4;
kataras.text = "Pontos: " + Kataras;
Comida = Comida + 1;
comida.text = "Comida: " + Comida;
Fome = Fome + 1;
}
if (Comida >= 155) {
Comida = 155;
}
if (Kataras >= 650) {
Kataras = 650;
}
if (other.tag == "Nivel2") {
SceneManager.LoadScene (Cena);
}
}
IEnumerator Contador () {
yield return new WaitForSecondsRealtime (4);
Fome -= 7;
yield return new WaitForSecondsRealtime (4);
StartCoroutine ("Contador");
}
}
Bruno- ProgramadorMaster
- PONTOS : 3415
REPUTAÇÃO : 142
Idade : 22
Áreas de atuação : C# Avançado, SQL Intermediário, Unity3D Intermediário, HTML Iniciante, CSS Iniciante e ASP.NET
Respeito as regras :
Re: Como poço fazer um sistema de salvar pontuação?
DUT escreveu:pode me dar um exemplo desse playerprefs?
Re: Como poço fazer um sistema de salvar pontuação?
DUT escreveu:Funcionou obrigado :D
Bruno- ProgramadorMaster
- PONTOS : 3415
REPUTAÇÃO : 142
Idade : 22
Áreas de atuação : C# Avançado, SQL Intermediário, Unity3D Intermediário, HTML Iniciante, CSS Iniciante e ASP.NET
Respeito as regras :
Re: Como poço fazer um sistema de salvar pontuação?
quando eu dou play e pego as comidas,e depois saio ele salva,ai quando do play dinovo,a quantidade de pontos pegos ainda esta la,isso atrapalha quando eu for dar o build?tipo,vai salvar o que peguei na unity no jogo depois de ter feito o build?
Re: Como poço fazer um sistema de salvar pontuação?
Vc Pode Criar Um Botão Pra Deleta O PlayerPrefs
- Código:
PlayerPrefs.DeleteAll ();
- Código:
PlayerPrefs.DeleteKey ("Kataras");
Bruno- ProgramadorMaster
- PONTOS : 3415
REPUTAÇÃO : 142
Idade : 22
Áreas de atuação : C# Avançado, SQL Intermediário, Unity3D Intermediário, HTML Iniciante, CSS Iniciante e ASP.NET
Respeito as regras :
Re: Como poço fazer um sistema de salvar pontuação?
Onde e como poço colocar exatamente este codigo ai?
Re: Como poço fazer um sistema de salvar pontuação?
Qual? O
- Código:
PlayerPrefs.DeleteAll ();
Bruno- ProgramadorMaster
- PONTOS : 3415
REPUTAÇÃO : 142
Idade : 22
Áreas de atuação : C# Avançado, SQL Intermediário, Unity3D Intermediário, HTML Iniciante, CSS Iniciante e ASP.NET
Respeito as regras :
Re: Como poço fazer um sistema de salvar pontuação?
sim,mas eu acho que nao vai precisar,por1ue fiz a build e testei e ficou normal,nao salvou o que peguei na unity.........Muito obrigado mesmo por responder :D
Tópicos semelhantes
» Como salvar e carregar pontuação de um banco de dados
» Como fazer a pontuação aparecer no menu?
» Como fazer Sistema Dia e Noite Segui o sistema de Hora
» Alguém poderia fazer uma aula de como criar um sistema de fazer o personagem trocar de equipamento?
» Como fazer um script salvar o estado de um gameobject
» Como fazer a pontuação aparecer no menu?
» Como fazer Sistema Dia e Noite Segui o sistema de Hora
» Alguém poderia fazer uma aula de como criar um sistema de fazer o personagem trocar de equipamento?
» Como fazer um script salvar o estado de um gameobject
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos