GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Retorno da GMBR!!!
por Isquilo_Roedor Sex 16 Fev 2024, 16:58

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16

» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05

» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55

» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39

» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28

» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01

» !AJUDA Como fazer um cronometro
por Cerf Dom 26 Nov 2023, 11:58

» Inimigo atira
por Galinho Qui 23 Nov 2023, 14:57

» Evoluship [0.1.4.3] (DevLog)
por JOZ. Qua 22 Nov 2023, 11:17

» [Resolvido]Erro na máquina de estados
por GabrielXavier Ter 21 Nov 2023, 15:26


Save e Load Json

2 participantes

Ir para baixo

Save e Load Json Empty Save e Load Json

Mensagem por Klinton Rodrigues Qui 25 Jan 2024, 08:48

Oi gente de boas? to com uma duvida aqui em relação ao save, eu cria todo um código via Json, porém eu notei q o meu player ele não existe no meu menu, ou seja não tem como o save achar ele. eu até criei o botão de continuar para que ele pudesse voltar ao jogo, porem ele não existe ou seja a função não é chamada.





salvar_jogo = function(){
var _dados =
{
player :
{
minha_room : room,
meu_player : global.player,
meu_x : obj_player.x,
meu_y : obj_player.y
},
}
var _string = json_stringify(_dados)
var _file = file_text_open_write("meu_save.json")
file_text_write_string(_file, _string)
file_text_close(_file)

}
carrega_jogo = function(){
var _file = file_text_open_read("meu_save.json")
var _string =file_text_read_string(_file)
file_text_close(_file)
var _dados = json_parse(_string)
room = _dados.player.minha_room
global.player = _dados.player.meu_player
obj_player.x = _dados.player.meu_x
obj_player.y = _dados.player.meu_y
}

Klinton Rodrigues
Klinton Rodrigues

Games Ranking : Sem avaliações

Data de inscrição : 17/03/2023
Reputação : 0
Número de Mensagens : 7
Prêmios : Save e Load Json Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Save e Load Json Empty Re: Save e Load Json

Mensagem por GabrielXavier Qui 25 Jan 2024, 10:48

Ao carregar o seu save, você deve usar a função room_goto() para ir para a room que foi carregada do save, e se o objeto player não estiver na sala você deve cria-ló, e após ter certeza que o objeto player está na sala você deve reposicioná-lo conforme os dados do save.


Código:


// Salva o jogo
salvar_jogo = function() {
    var dados = {
        player: {
            minha_room: room,
            meu_player: global.player.object_index,
            meu_x: obj_player.x,
            meu_y: obj_player.y
        }
    };

    var string_dados = json_stringify(dados);
    var file = file_text_open_write("meu_save.json");

    if (file != -1) {
        file_text_write_string(file, string_dados);
        file_text_close(file);
    } else {
        show_error("Erro ao abrir o arquivo para escrita.");
    }
}

// Carrega o jogo
carrega_jogo = function() {
    var file = file_text_open_read("meu_save.json");

    if (file != -1) {
        var string_dados = file_text_read_string(file);
        file_text_close(file);

        var dados = json_parse(string_dados);
 
 // Salva os dados carregados
 global.dados = {
 rm: dados.player.minha_room,
 player: dados.player.meu_player,
 player_x: dados.player.meu_x,
 player_y: dados.player.meu_y
 }
 
 // Vai para a room que foi salva anteriormente
 room_goto(global.dados.rm);
 
    } else {
        show_error("Erro ao abrir o arquivo para leitura.");
    }
}


// Em um objeto controlador que for marcado como persistente
// No create dele crie a variavel global.dados

// E no evento Room Start você checa se é a room que foi carregada e recria o objeto player

if(room == global.dados.rm){
 
 instance_create_layer(global.dados.player_x, global.dados.player_y, "Instances", global.dados.player)
 
}



Não sei todo o contexto do seu jogo em relação ao salvar e carregar, mas imagino que a solução seja algo relacionado ao que mencionei acima, qualquer duvida especifique mais sobre seu sistema que posso ajudar mais!
GabrielXavier
GabrielXavier

Games Ranking : Nota A

Notas recebidas : A
Data de inscrição : 25/02/2012
Reputação : 40
Número de Mensagens : 399
Prêmios : Save e Load Json Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker Studio 2.0


Klinton Rodrigues gosta desta mensagem

Ir para o topo Ir para baixo

Save e Load Json Empty Re: Save e Load Json

Mensagem por Klinton Rodrigues Qui 25 Jan 2024, 11:12

então, vou testar aqui, to tentando fazer com que o jogador possa fazer um modo carreira com dois personagens, e ai o load do game precisaria carregar todas as info do personagem escolhido, exemplo, a posição do personagem, o veiculo que ele possui, e o restante das informações.https://drive.google.com/file/d/1Ea9hah9adNwkKTfjo98imjxcQb1gfPPb/view?usp=sharing

deixei aqui o projeto pra vc ver.
Klinton Rodrigues
Klinton Rodrigues

Games Ranking : Sem avaliações

Data de inscrição : 17/03/2023
Reputação : 0
Número de Mensagens : 7
Prêmios : Save e Load Json Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Save e Load Json Empty Re: Save e Load Json

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos