Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

Como quebrar strings em pontos determinados?

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
Mysterious Stranger
Artista
Artista
Reações: 0
Mensagens: 62
Localização: BH

Contato:

Como quebrar strings em pontos determinados?

Mensagem por Mysterious Stranger » Sex Dez 18, 2020 1:37 pm

Tarde, galera.

Seguinte, eu estou fazendo um sistema de save que vai salvar uma quantidade grande de informações de uma única entidade. Para otimizar o tempo de salvamento e do tamanho do arquivo gerado, eu queria substituir os dados por códigos simples de números. Por exemplo:
0000.00.000 onde -> 0000 (nome), 00 (local onde está), 000 (cor da roupa), etc... é só um exemplo.

Minha dúvida é a seguinte: qual função posso usar para quebrar essa string na parte dos pontos? Depois de quebrar, posso pegar os pedaços e substituir pelos verdadeiros dados.

Avatar do usuário
Chuaschinai
Colaborador
Colaborador
Reações: 5
Mensagens: 198

Re: Como quebrar strings em pontos determinados?

Mensagem por Chuaschinai » Sex Dez 18, 2020 6:57 pm

Fiz um pequeno exemplo com base no que você disse, onde você pode dividir a string modifica-la e então retornar essa modificação feita novamente para texto.
Fiz na versão 1.4.9999, mas se estiver na versão 2 do Gamemaker, e só importar que ele converte tudo automaticamente.

Há 3 scripts no exemplo:
- StringSplit que divide em array um determinada string com base no símbolo
- StringReplaceInArray que substitui o valor desse array em relação ao index especificado
- ArrayToString que converte o array modificado ou qualquer outro para string, inserindo algum símbolo entre eles
[Exemplo]

Avatar do usuário
Mysterious Stranger
Artista
Artista
Reações: 0
Mensagens: 62
Localização: BH

Contato:

Re: Como quebrar strings em pontos determinados?

Mensagem por Mysterious Stranger » Sáb Dez 19, 2020 12:03 pm

grononmc escreveu:Fiz um pequeno exemplo com base no que você disse, onde você pode dividir a string modifica-la e então retornar essa modificação feita novamente para texto.
Fiz na versão 1.4.9999, mas se estiver na versão 2 do Gamemaker, e só importar que ele converte tudo automaticamente.

Há 3 scripts no exemplo:
- StringSplit que divide em array um determinada string com base no símbolo
- StringReplaceInArray que substitui o valor desse array em relação ao index especificado
- ArrayToString que converte o array modificado ou qualquer outro para string, inserindo algum símbolo entre eles
[Exemplo]
Valeu, grononmc.
Eu fui fuçando ontem e achei um código e adaptei para minhas necessidades na parte do split. A lógica ficou similar. Gostei desse código de conversão array to string. Vou usar parte dele. Valeu!
Agora e testar e ver se vai otimizar bem a tarefa de save/load e do tamanho do arquivo.

----------------------

Implementei os códigos. Ficou maravilhoso! Estava demorando 1 minuto para salvar o arquivo. Agora tá levando 9 segundos! E o arquivo baixou de 850kb pra 120kb.

Valeu demais! :blz:

Responder

Quem está online

Usuários navegando neste fórum: Ahrefs [Bot] e 4 visitantes