//esta função sera chamada apenas uma vez, ela servira para criar o arquivo Json no sistema public void preencherJsonSimples() { ListaPontosJogador listaPontos = new ListaPontosJogador(); PontosJogador pontosJogador = new PontosJogador(); pontosJogador.nomePlayer = "Exemplo"; pontosJogador.pontosPlayer = 10; listaPontos.listaPontuacao.Add(pontosJogador); this.Create(listaPontos); }
public InputField nome, pontuacao; //campos de coleta public void salvar() { ListaPontosJogador listaDeDadosJogadores = new ListaPontosJogador(); //Lista que recebera os dados do Json PontosJogador novoDadoJogador = new PontosJogador(); //objeto que usaremos para salvar os novos dados JsonSerializador serializador = new JsonSerializador(); //classe que contem o metodo de save e retriev bool playerExiste = false; //flag para indicar se o player existe ou nao //Obtem os dados do Json listaDeDadosJogadores = serializador.Retrieve(); //se algum campo estiver vazio então envie mensagem de erro if (nome.text.Equals("") || pontuacao.text.Equals("")) { status.text = "Nome ou pontuação estão em branco!"; } else { //salva a nova entrada novoDadoJogador.nomePlayer = nome.text; novoDadoJogador.pontosPlayer = int.Parse(pontuacao.text); //se alista estiver vazia significa que não há nenhum player salvo no Json ou que o arquivo não foi criado if (listaDeDadosJogadores == null) { //sava a nova entrada e exibe mensagem de sucesso listaDeDadosJogadores.listaPontuacao.Add(novoDadoJogador); serializador.Create(listaDeDadosJogadores); status.text = nome.text + " cadastrado com sucesso!"; } else { foreach (PontosJogador dados in listaDeDadosJogadores.listaPontuacao) //varre a lista que obtemos do Json { //se ja existir esse nome na lista então ele deve avisar o jogador if (dados.nomePlayer.Equals(novoDadoJogador.nomePlayer)) { playerExiste = true; break; } } //se o player existe então mostre uma mensagem de erro if (playerExiste) { status.text = "Erro. Esse jogador já foi cadastrado entre com um novo ou vá no menu EDITAR para alterar os dados"; } //se o player não existe então salve-o no Json else { listaDeDadosJogadores.listaPontuacao.Add(novoDadoJogador); serializador.Create(listaDeDadosJogadores); status.text = nome.text + " cadastrado com sucesso"; } } } }
public void editar() { string quem = ""; //quem vai ser editado PontosJogador novosDados = new PontosJogador(); //para coletar os novos dados quem = opDropDown.selecionarItemDpd(dpdPlayes); //se os campos estiverem vazios, então monstra mensagem de erro if (novoNome.text.Equals("") || novaPontuacao.text.Equals("")) { status.text = "Novo nome e/ou nova pontuação estão em branco!"; } else { //edita o item selecionado novosDados.nomePlayer = novoNome.text; novosDados.pontosPlayer = int.Parse(novaPontuacao.text); serializador.Update(novosDados, quem); //realiza o update no nome selecionado opDropDown.popularDropDown(dpdPlayes); //atualiza o combobox status.text = quem + " alterado para " + novoNome.text; } }
//metodo para realizar Update no jogador selecionado public bool Update(PontosJogador jogador, string quem) { bool playerExiste = false; ListaPontosJogador listaPontos = new ListaPontosJogador(); listaPontos = this.Retrieve(); //varre a lista de players araz de quem será editado foreach (PontosJogador jogadorE in listaPontos.listaPontuacao) { if (jogadorE.nomePlayer.Equals(quem)) { playerExiste = true; listaPontos.listaPontuacao.Remove(jogadorE); //remove o dado antigo listaPontos.listaPontuacao.Add(jogador); //adciona o novo dado break; } } if (playerExiste) { this.Create(listaPontos); } return(playerExiste); }