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 Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Tem como eu Salvar os Dados de Um Terreno?
Package character
Adicionar uma camera apenas em um client [Multiplayer]
gostaria de saber se o que é o Photon ?
Criar Chuva?
Como faço para este item aparecer no meu inventário de forma correta?
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[Resolvido] duvida sobre prefab, object e gameobject
Como Editar um tópico ;---; (tópico desse site mesmo)
Otimizacoa por Colisor - (Desativar/Ativar)
enumerators
Como arrumar camera atravessando paredes?
Problema com script para captura de texto
Dúvidas Sobre OnCollider
Error NullReferenceException: Object reference not set to an instance of an object
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Qual versão da unity é recomendada HOJE?
Unity crashando depois que eu tento abrir
Como fazer skins completa de battle Royale
Unity Banco de Dados
Meu primeiro projeto
photonnetwork vale a pena ?
[RESOLVIDO] Como ajustar o volume em todo o jogo
Desativar butão de acordo valor em seu script [Avançado]
Controle de Personagem
[TUTORIAL] DEBUG DE TEMPO
[Alpha Android] - Winthia Chronicles (Alpha Devlog, 20 de fevereiro de 2018). Lançamento!
FantasyDragon Online - Formação de Equipe (P.A / Designer Gráfico )
Como "grudar" objetos no unity?
Slime Shop: Multiplayer (Teste De Jogo :D )
Monitorar Usuarios
Dúvida sobre animação
Alpha Fossil
Configuração de efeitos com água na Unity
Dúvida sobre o uso da Unity em fonte de 47-63hz
Como fazer 1 gerador
[TUTORIAL] Explodir Mesh "Explodir Objeto"
[Asset]Terreno .dae
[Asset] Personagem 3d basico sem uso
Erro ai importar
[Duvida] Menu Input
[RESOLVIDO] Adaptar o script para mostrar o erro
Objetos girando em órbita de outro
Erro Build Android
[RESOLVIDO] Não consigo alterar o shader de modelo feito no makehuman
[TUTORIAL]Sistema de Pet Virtual -AULA 3 NOVO[20/02/2018]
Pack de animações para jogos de Luta
GamePad Android!
Mudar um .TXT usando um site
"Simular" uma VPS
Velocimetro de Ponteiro!
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
Formação de Equipe
[ENCERRADO] Preciso de Programadores para equipe
GC.Collect
[Duvida] Como acessar uma variavel nãa estatica(static).
Inserir Trigger
Fps Caindo Instanteneamente
LoadSceneAsync em varias cenas e escolher qual chamar
Script de Semaforo
duvida de desempenho ao Instanciar Gameobject
[RESOLVIDO] Bug provavelmente pivot
[TUTORIAL]Sistema de Pet Virtual -AULA 2 [Tamagotchi](ANDROID/PC)
[TUTORAIL] Loja Virtual Fácil e Grátis
Fiz esse jogo a bastante tempo que tipo de mecanica eu poderia adicionar?
Carregar um prefab usando byte[]
[RESOLVIDO] Tem como Um Script rodar antes de Outro
Procuro modelador
Duvida com velocidade X e velocidade Z
Problemas para criar um BackGround
[TUTORIAL] Calculando distância entre gameObjects
Restringir InpultField!
Preciso Modelador com experiencia em Modelar Veículos
Script inimigo x Player
Novo Jogo (BETA ~ Sem Nome)
Multiplayer Unet: no meio da partida os client saem do nada(sistema de Checar conexão)
[RESOLVIDO] Não Consigo Acessar meus Materiais do Modelo !
como alterar o Rect Transform?
[WIP] Projeto ainda sem título
Mudar a densidade de Pixels na tela
O que fazer para ser um programador
[TUTORIAL] Capturar Imagem da WebCam e Salvar No seu Pc
tem como criar Uma Imagem no Canvas?
Membro Avançado
Tem como fazer um cube 3d invisível?
Player não acompanha plataforma
Jogo de plataforma que eu fiz
Alguém para testar alguns jogos meus (Saber se estão legais, se tem bugs e tals)
(Duvida) Como criar um sistema de dialogos?
Equipe para criação de jogo de terror.
Espelho Realista
[TUTORIAL]Sistema de Pet Virtual [Tamagotchi] Completo (ANDROID/PC)
Equipe para criação de assets
Procuro Modelador Low Poly
Unity não reconhece meu celular
[TUTORIAL]Sistema Basico de Combustivel (PC e Android)
[ Run Sara, run ! ] Em desenvolvimento para android.
[SCRIPT] Controle Simples com movimento e rotação
Hoje à(s) 3:36 pm
Hoje à(s) 3:35 pm
Hoje à(s) 3:27 pm
Hoje à(s) 3:01 pm
Hoje à(s) 2:35 pm
Hoje à(s) 2:33 pm
Hoje à(s) 2:32 pm
Hoje à(s) 2:19 pm
Hoje à(s) 2:19 pm
Hoje à(s) 2:17 pm
Hoje à(s) 1:36 pm
Hoje à(s) 3:11 am
Hoje à(s) 1:13 am
Hoje à(s) 1:12 am
Hoje à(s) 12:04 am
Ontem à(s) 11:50 pm
Ontem à(s) 11:49 pm
Ontem à(s) 11:26 pm
Ontem à(s) 9:45 pm
Ontem à(s) 9:33 pm
Ontem à(s) 6:21 pm
Ontem à(s) 5:19 pm
Ontem à(s) 4:31 pm
Ontem à(s) 5:29 am
Qui Fev 22, 2018 11:13 pm
Qui Fev 22, 2018 8:49 pm
Qui Fev 22, 2018 7:29 pm
Qui Fev 22, 2018 5:42 pm
Qui Fev 22, 2018 5:36 pm
Qui Fev 22, 2018 4:50 am
Qui Fev 22, 2018 1:36 am
Qua Fev 21, 2018 11:53 pm
Qua Fev 21, 2018 11:35 pm
Qua Fev 21, 2018 10:55 pm
Qua Fev 21, 2018 10:37 pm
Qua Fev 21, 2018 10:00 pm
Qua Fev 21, 2018 9:33 pm
Qua Fev 21, 2018 8:58 pm
Qua Fev 21, 2018 6:55 pm
Qua Fev 21, 2018 6:21 pm
Qua Fev 21, 2018 5:57 pm
Qua Fev 21, 2018 5:35 pm
Qua Fev 21, 2018 3:46 pm
Qua Fev 21, 2018 2:40 pm
Qua Fev 21, 2018 1:32 pm
Qua Fev 21, 2018 1:03 pm
Qua Fev 21, 2018 2:43 am
Ter Fev 20, 2018 11:55 pm
Ter Fev 20, 2018 10:51 pm
Ter Fev 20, 2018 10:48 pm
Ter Fev 20, 2018 10:20 pm
Ter Fev 20, 2018 10:12 pm
Ter Fev 20, 2018 10:11 pm
Ter Fev 20, 2018 9:54 pm
Ter Fev 20, 2018 9:15 pm
Ter Fev 20, 2018 8:52 pm
Ter Fev 20, 2018 8:14 pm
Ter Fev 20, 2018 7:49 pm
Ter Fev 20, 2018 7:48 pm
Ter Fev 20, 2018 7:42 pm
Ter Fev 20, 2018 7:38 pm
Ter Fev 20, 2018 7:30 pm
Ter Fev 20, 2018 7:25 pm
Ter Fev 20, 2018 4:31 pm
Ter Fev 20, 2018 3:20 pm
Ter Fev 20, 2018 3:56 am
Ter Fev 20, 2018 3:21 am
Seg Fev 19, 2018 11:29 pm
Seg Fev 19, 2018 3:19 pm
Seg Fev 19, 2018 12:23 pm
Seg Fev 19, 2018 3:35 am
Seg Fev 19, 2018 12:57 am
Dom Fev 18, 2018 10:51 pm
Dom Fev 18, 2018 8:03 pm
Dom Fev 18, 2018 6:56 pm
Dom Fev 18, 2018 5:41 pm
Dom Fev 18, 2018 4:21 pm
Dom Fev 18, 2018 3:09 pm
Dom Fev 18, 2018 2:45 pm
Dom Fev 18, 2018 6:03 am
Dom Fev 18, 2018 5:24 am
Dom Fev 18, 2018 12:41 am
Sab Fev 17, 2018 9:25 pm
Sab Fev 17, 2018 9:09 pm
Sab Fev 17, 2018 8:58 pm
Sab Fev 17, 2018 7:35 pm
Sab Fev 17, 2018 6:37 pm
Sab Fev 17, 2018 5:15 pm
Sab Fev 17, 2018 4:52 pm
Sab Fev 17, 2018 3:23 pm
Sab Fev 17, 2018 1:43 am
Sab Fev 17, 2018 1:15 am
Sab Fev 17, 2018 12:54 am
Sab Fev 17, 2018 12:18 am
Sab Fev 17, 2018 12:17 am
Sex Fev 16, 2018 8:27 pm
Sex Fev 16, 2018 8:09 pm
Sex Fev 16, 2018 7:18 pm
Sex Fev 16, 2018 6:56 pm
Souris
Souris
dazentt55
Dom3000
Dom3000
Dom3000
recagonlei
marcos4503
marcos4503
marcos4503
felipehobs1
Extreme Craft
otavio00augusto
ffabim
junior93
dstaroski
dstaroski
ÁguaMineral
Souris
Callyde Jr
natanael.olimpio
Souris
marcos4503
Samuelsk
Felipe Costa
felipehobs1
luKkaSs
marcos4503
Dom3000
rafaelllsd
marcos4503
natanael.olimpio
Souris
Édipo
dstaroski
dstaroski
Souris
Samuelsk
Dom3000
felipehobs1
Dom3000
marcos4503
marcos4503
Phph09
maxwell111
Gilberto555
marcos4503
GameLACK
felipehobs1
Souris
Souris
Souris
Zack2
Zack2
marcos4503
Duarte
MarcosSchultz
michelly
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
marcos4503
fecirineu
felipehobs1
Zecker
Dom3000
alexs
AlvaroWalker
felipehobs1
recagonlei
Weslley
Jhonatham1
dstaroski
fabriciorsz34
recagonlei
nicolasfive
Dom3000
rafaelllsd
rafaelllsd
marcos4503
felipehobs1
Phph09
Phph09
Daniel Dória
Simplizãum S
Daniel Pires da Silva
GamersBR
Bruno
ÁguaMineral
Souris
fecirineu
minosso
minosso
otavio00augusto
fecirineu
ruanzikaad
Simplizãum S

[TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Ir em baixo

TUTORIAL [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por RenanMSV em Ter Maio 10, 2016 9:56 pm


Olá, a pouco tempo fiz um tutorial sobre como salvar dados em um banco de dados. Este método é o mais recomendado porém salvar dados em arquivos de texto talvez seja o mais recomendado para configurações do seu jogo. Assim, um usuario pode compartilhar o arquivo com outros usuarios.
Elaborei um script simples ( e quando eu digo simples é simples mesmo ).


Código:

using UnityEngine;
using System.Collections;
using System.IO;

// Padrão de nossos arquivos !

// Tela Cheia : Linha 1.
// Graficos : Linha 2.
// Resolução X : Linha 3.
// Resolucao Y : Linha 4.

public class INI : MonoBehaviour {
 public string[] CFG; // Declaramos nossa variavel que irá conter as configurações do usuario.
 private string linha; // Aqui declaramos uma variavel que irá receber o valor de cada linha do arquivo
 private StreamReader sr; // Aqui declaramos um leitor de arquivos para ser usado em todas funções
 private StreamWriter sw; // Aqui declaramos um escritor de arquivos para ser usado em todas funções

 void Reset(){
 CFG = new string[4]; // Declarando o tamanho da Array, aqui deve ser colocado o tamanho de configurações que seu arquivo deve ter. No caso deste exemplo é 4.
 }
 void Start () {
 if (!File.Exists(Application.dataPath + "/CFG.ini")) CriarArquivoDeCFG(); // Se o arquivo de configuração não existir você CHAMA A FUNÇÃO que irá criar ele e ja escrever valores padroes.
 LerArquivoDeCFG (); // Iremos ler e salvar as configuracoes do arquivo
 MostrarValoresDeCFG (); // Iremos mostrar em um log essas configuracoes
 UtilizarValoresDeCFG (); // Iremos usar algumas destas configuracoes
 //Debug.Log("Pronto!");
 }
 public void CriarArquivoDeCFG(){
 //File.Create (Application.dataPath + "/CFG.ini");
 StreamWriter sw = new StreamWriter (Application.dataPath + "/CFG.ini"); // Iremos declarar qual arquivo queremos criar (escrever)
 sw.WriteLine ("true"); // Linha 1. Aqui é bem simples, apenas chamamos a funcao WriteLine. Ela irá escrever linhas embaixo de linhas. Então o arquivo será escrito na ordem que voce quiser.
 sw.WriteLine ("1"); // Linha 2. Valores padrão!
 sw.WriteLine ("1024"); // Linha 3
 sw.WriteLine ("768"); // Linha 4
 sw.Close (); // Fechamos o arquivo (o salvando). Ja poderemos encontrar o arquivo na pasta do jogo
 }
 public void LerArquivoDeCFG(){
 StreamReader sr = new StreamReader(Application.dataPath + "/CFG.ini"); // Declaramos qual arquivo queremos ler.
 int t = 0; // Declaramos um index para ser usado no while.
 while ((linha = sr.ReadLine()) != null){ // Enquanto linha for diferente de null ou seja a linha existe  iremos
 CFG[t] = linha; //  Setamos os valores em nossa array.
 t++; // Aumentamos o indice em 1.
 }
 sr.Close (); // Fechamos o arquivo.
 }
 public void MostrarValoresDeCFG(){
 Debug.Log ("Tela Cheia: " + CFG[0] + ". Graficos: " + CFG[1] + ". Resolução: " + CFG[2] + "x" + CFG[3] + ".");
 }
 public void UtilizarValoresDeCFG(){
 bool tlcheia = (CFG [0] == "true"); // Verificamos se a variavel de tela cheia está true no arquivo
 Screen.SetResolution (int.Parse (CFG [2]), int.Parse (CFG [3]), tlcheia); // Setamos a resolucao e se tem tela cheia ou não.
 }
}


Última edição por RenanMSV em Ter Maio 10, 2016 10:01 pm, editado 1 vez(es)
avatar
RenanMSV
Instrutor

Masculino PONTOS : 2018
REPUTAÇÃO : 330
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por Weslley em Ter Maio 10, 2016 10:00 pm

RenanMSV escreveu:

Olá, a pouco tempo fiz um tutorial sobre como salvar dados em um banco de dados. Este método é o mais recomendado porém salvar dados em arquivos de texto talvez seja o mais recomendado para configurações do seu jogo. Assim, um usuario pode compartilhar o arquivo com outros usuarios.
Elaborei um script simples ( e quando eu digo simples é simples mesmo ).


Código:

using UnityEngine;
using System.Collections;
using System.IO;

// Padrão de nossos arquivos !

// Tela Cheia : Linha 1.
// Graficos : Linha 2.
// Resolução X : Linha 3.
// Resolucao Y : Linha 4.

public class INI : MonoBehaviour {
 public string[] CFG; // Declaramos nossa variavel que irá conter as configurações do usuario.
 private string linha; // Aqui declaramos uma variavel que irá receber o valor de cada linha do arquivo
 private StreamReader sr; // Aqui declaramos um leitor de arquivos para ser usado em todas funções
 private StreamWriter sw; // Aqui declaramos um escritor de arquivos para ser usado em todas funções

 void Reset(){
 CFG = new string[4]; // Declarando o tamanho da Array, aqui deve ser colocado o tamanho de configurações que seu arquivo deve ter. No caso deste exemplo é 4.
 }
 void Start () {
 if (!File.Exists(Application.dataPath + "/CFG.ini")) CriarArquivoDeCFG(); // Se o arquivo de configuração não existir você CHAMA A FUNÇÃO que irá criar ele e ja escrever valores padroes.
 LerArquivoDeCFG (); // Iremos ler e salvar as configuracoes do arquivo
 MostrarValoresDeCFG (); // Iremos mostrar em um log essas configuracoes
 UtilizarValoresDeCFG (); // Iremos usar algumas destas configuracoes
 //Debug.Log("Pronto!");
 }
 public void CriarArquivoDeCFG(){
 //File.Create (Application.dataPath + "/CFG.ini");
 StreamWriter sw = new StreamWriter (Application.dataPath + "/CFG.ini"); // Iremos declarar qual arquivo queremos criar (escrever)
 sw.WriteLine ("true"); // Linha 1. Aqui é bem simples, apenas chamamos a funcao WriteLine. Ela irá escrever linhas embaixo de linhas. Então o arquivo será escrito na ordem que voce quiser.
 sw.WriteLine ("1"); // Linha 2. Valores padrão!
 sw.WriteLine ("1024"); // Linha 3
 sw.WriteLine ("768"); // Linha 4
 sw.Close (); // Fechamos o arquivo (o salvando). Ja poderemos encontrar o arquivo na pasta do jogo
 }
 public void LerArquivoDeCFG(){
 //string Readfile = new string[File.ReadAllLines(Application.dataPath + "/CFG.ini").Length];
 StreamReader sr = new StreamReader(Application.dataPath + "/CFG.ini"); // Declaramos qual arquivo queremos ler.
 int t = 0; // Declaramos um index para ser usado no while.
 while ((linha = sr.ReadLine()) != null){ // Enquanto linha for diferente de null ou seja a linha existe  iremos
 CFG[t] = linha; //  Setamos os valores em nossa array.
 t++; // Aumentamos o indice em 1.
 }
 sr.Close (); // Fechamos o arquivo.
 }
 public void MostrarValoresDeCFG(){
 Debug.Log ("Tela Cheia: " + CFG[0] + ". Graficos: " + CFG[1] + ". Resolução: " + CFG[2] + "x" + CFG[3] + ".");
 }
 public void UtilizarValoresDeCFG(){
 bool tlcheia = (CFG [0] == "true"); // Verificamos se a variavel de tela cheia está true no arquivo
 Screen.SetResolution (int.Parse (CFG [2]), int.Parse (CFG [3]), tlcheia); // Setamos a resolucao e se tem tela cheia ou não.
 }
}


Muito bom
avatar
Weslley
Moderador

Masculino PONTOS : 2946
REPUTAÇÃO : 606
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por luKkaSs em Sex Maio 13, 2016 12:08 pm

Muito bom msm esse script! 
mais ai vei a duvida, como ler algo assim?
Código:
id, valor
0, 15
1, 54
ou seja acessar o valor de um id dentro do arquivo, ou melhor ler(escreve) um arquivo com mais de uma coluna
avatar
luKkaSs
MembroAvançado

Masculino PONTOS : 889
REPUTAÇÃO : 18
Idade : 21
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por RenanMSV em Sex Maio 13, 2016 8:46 pm

Vamos considerar que escrevemos este arquivo aqui:

Código:

fullscreen : true
graphicslevel : 1
width : 1024
height : 768

Para fazer a leitura correta basta:

Ao recuperar a linha utilizar o método Split e o Trim. Assim:

Código:

string[] value = linha.Split(':');
value [0] = value [0].Trim ();
value [1] = value [1].Trim ();
print(value[0] + value[1]);

Perceba que com o método Split separamos a string da linha de nosso arquivo pelo char ":", ou seja em cada linha de seu arquivo value[0] vai guardar o ID e value[1] vai guardar o valor!.
Perceba que usamos o método Trim. Ele vai tirar os espaços desnecessários da string. É necessário pois nosso arquivo foi salvo usando espaços entre ":" para ficar melhor pra ler e entender o arquivo.

Resultado exemplo:
Código:

value[0] = "fullscreen"; //ID
value[1] = "true"; //valor

Agora voce só precisa verificar o ID e guardar o valor em uma variavel compativel com o id.


PS: Eu usei o ID como string porque pra mim é mais amigavel. Mas voce pode usar numeros tambem, use o Parse para transformar a string em inteiro.
avatar
RenanMSV
Instrutor

Masculino PONTOS : 2018
REPUTAÇÃO : 330
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por DuViDoSo em Sex Abr 21, 2017 12:53 am

E se eu quisesse apenas salvar uma int dinheiro e usa-la sempre que a pessoa entrasse no jogo?
avatar
DuViDoSo
Modelador

Masculino PONTOS : 1232
REPUTAÇÃO : 145
Idade : 18
Áreas de atuação : Programador em C#, Desenvolvedor Indie.
Respeito as regras :

Ver perfil do usuário http://www.naotenho.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por RenanMSV em Sex Abr 21, 2017 1:36 am

Ai é melhor usar PlayerPrefs
avatar
RenanMSV
Instrutor

Masculino PONTOS : 2018
REPUTAÇÃO : 330
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por DuViDoSo em Sex Abr 21, 2017 2:32 pm

ei sei só usei "dinheiro" como exemplo são muitas variáveis para salvar no playerPrefs isso iria travar o jogo. nn tem como salvar em um arquivo de um jeito seguro e criptografado?
avatar
DuViDoSo
Modelador

Masculino PONTOS : 1232
REPUTAÇÃO : 145
Idade : 18
Áreas de atuação : Programador em C#, Desenvolvedor Indie.
Respeito as regras :

Ver perfil do usuário http://www.naotenho.com.br

Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum