Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
[Resolvido] Erro letras aleatórias em uma string
2 participantes
Página 1 de 1
[Resolvido] Erro letras aleatórias em uma string
Bom Dia!
Caramba! Quanto tempo, amigos.
Sou o antigo "CyraxX" aqui do fórum, como vocês estão?
Bom, estou longe do GM á mesma quantia de tempo que estou longe do fórum e enquanto preparava um projeto para pedir minha futura namorada em namoro (?) tive um problema que esta me atrapalhando bastante nessa longa jornada do amor. Hahaha
Seguinte: Em um projeto parecido com um Fruit Ninja da vida (sim, usando o Fruit Veg do GMS) cada coração (Que previsível) que ela "cortar" vai adicionar uma letra aleatória em uma variável (frase_incompleta) e ao desenhar na tela vai formando uma frase com o pedido em sí. "Top! Beleza! Que cara romântico, estou chorando rios, Rodrigo."
Nesta parte que eu choro também: antes de escolher a letra que vai ser adicionada eu faço uma verificação com o string_pos e verifico se já tem essa letra na frase incompleta e escolho outra, para não repetir. Só que em uma frase eu tenho varias letras.
Tentando deixar mais claro: Na palavra "Aceita" eu tenho dois "A's", correto? beleza. Se eu não limitar antes de adicionar a letra aleatória na frase incompleta corro o risco de surgir cinco "T's", dezoito "A's" e quarenta e cinco "E's" antes de ter a palavra "Aceita" completa.
Para escolher e adicionar:
Entenderam? Espero que sim.
Desde já agradeço muito a todos!
Vallew [:¬D]
Caramba! Quanto tempo, amigos.
Sou o antigo "CyraxX" aqui do fórum, como vocês estão?
Bom, estou longe do GM á mesma quantia de tempo que estou longe do fórum e enquanto preparava um projeto para pedir minha futura namorada em namoro (?) tive um problema que esta me atrapalhando bastante nessa longa jornada do amor. Hahaha
Seguinte: Em um projeto parecido com um Fruit Ninja da vida (sim, usando o Fruit Veg do GMS) cada coração (Que previsível) que ela "cortar" vai adicionar uma letra aleatória em uma variável (frase_incompleta) e ao desenhar na tela vai formando uma frase com o pedido em sí. "Top! Beleza! Que cara romântico, estou chorando rios, Rodrigo."
Nesta parte que eu choro também: antes de escolher a letra que vai ser adicionada eu faço uma verificação com o string_pos e verifico se já tem essa letra na frase incompleta e escolho outra, para não repetir. Só que em uma frase eu tenho varias letras.
Tentando deixar mais claro: Na palavra "Aceita" eu tenho dois "A's", correto? beleza. Se eu não limitar antes de adicionar a letra aleatória na frase incompleta corro o risco de surgir cinco "T's", dezoito "A's" e quarenta e cinco "E's" antes de ter a palavra "Aceita" completa.
Para escolher e adicionar:
- Código:
if string_pos(letra,frase_incompleta) // Verificando se não é letra repetida
{
letra = choose("P","e","d","i","d","o")
} else {
popup(string(letra))
//adiciono cada letra na posição certinha de cada letra da frase real
frase_incompleta = string_insert(letra,frase_incompleta,string_pos(letra,frase_real))
}
Entenderam? Espero que sim.
Desde já agradeço muito a todos!
Vallew [:¬D]
Última edição por RodrigoM. em Qua 06 Ago 2014, 23:57, editado 1 vez(es)
RodrigoM.- Data de inscrição : 06/08/2009
Reputação : 5
Número de Mensagens : 569
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido] Erro letras aleatórias em uma string
Refiz o sistema, até porque você só deu parte dele. Crie um novo objeto e faça o teste, depois adapte ao teu código. Faça o seguinte no novo objeto:
- Create:
- Step:
- Draw GUI:
Basta ir teclando para completar a frase. Espero que ajude.
FLWS!
- Create:
- Código:
//Frase completa
frase = "RodrigoM xonado";
//Frase que perderá letras
frase_lose = frase;
//Frase incompleta com simbolos (underlines), pois espaços contam numa frase
frasei = "";
repeat(string_length(frase))
{
frasei = frasei + "_";
}
- Step:
- Código:
//Ao apertar qualquer tecla vai completando a frase
if keyboard_check_pressed(vk_anykey) and string_count("_", frasei)
{
//Seleciona letra aleatóriamente
do
{
var p = irandom_range(1, string_length(frase_lose));
var l = string_char_at(frase_lose, p);
}
until l != "_";
//Apaga letra selecionada da variavel e substitui por
frase_lose = string_delete(frase_lose, p, 1);
frase_lose = string_insert("_", frase_lose, p);
//Adiciona letra na frase 'vazia', apagando antes o '_'
frasei = string_delete(frasei, p, 1);
frasei = string_insert(l, frasei, p);
}
- Draw GUI:
- Código:
draw_text(20, 20,
"Aperte qualquer tecla para adicionar uma letra: #"+
"#Frase completa: " + string(frase)+
"#Frase incompleta: " + string(frasei)+
"#Frase perde: " + string(frase_lose));
Basta ir teclando para completar a frase. Espero que ajude.
FLWS!
Re: [Resolvido] Erro letras aleatórias em uma string
Deitou Alex, vallew mesmo cara! Já adaptei ao meus códigos!
Caramba o pessoal continuou evoluindo mesmo! Top!
Caramba o pessoal continuou evoluindo mesmo! Top!
RodrigoM.- Data de inscrição : 06/08/2009
Reputação : 5
Número de Mensagens : 569
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [Resolvido]Gm ler string, captar letras e editar? Tem como?
» [Resolvido] Limitar número de letras no keyboard string.
» variável+string erro ao concatenar!
» [RESOLVIDO]Gerar objetos em posições aleatórias dentro de um círculo
» [Resolvido]Qual o erro aqui? Erro no código
» [Resolvido] Limitar número de letras no keyboard string.
» variável+string erro ao concatenar!
» [RESOLVIDO]Gerar objetos em posições aleatórias dentro de um círculo
» [Resolvido]Qual o erro aqui? Erro no código
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos