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
» player não consegue andar
por 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


checar palavras duplicadas num array

3 participantes

Ir para baixo

checar palavras duplicadas num array Empty checar palavras duplicadas num array

Mensagem por 7hiagomp Sex 18 Jul 2014, 20:03

Opa,
esse acho que é um pedido de engine praticamente, ou de link pra tutorial de quem conhecer;

Estou querendo checar a existência de palavras duplicadas na mesma linha ou coluna, num array de 5 linhas e 4 colunas;
o código abaixo é o que a célula 0,0 checaria se fosse feito manualmente;

Código:
if array_name[0,0] == "noone"  
   {array_check[0,0] = "empty" //se estiver vazio
   }else if array_name[0,0] == array_name[0,1] ||
            array_name[0,0] == array_name[0,2] ||
            array_name[0,0] == array_name[0,3] ||
            array_name[0,0] == array_name[1,0] ||
            array_name[0,0] == array_name[2,0] ||
            array_name[0,0] == array_name[3,0] ||                        
            array_name[0,0] == array_name[4,0]
            {
             array_check[0,0] = "invalid" // encontrou uma repetição
            }else array_check[0,0] = "valid" //nenhuma repetição

a questão é que gostaria de fazer isso de maneira automática para;

4.0, 4.1, 4.2, 4.3
3.0, 3.1, 3.2, 3.3
2.0, 2.1, 2.2, 2.3
1.0, 1.1, 1.2, 1.3
0.0, 0.1, 0.2, 0.3

de forma que cada célula checasse apenas sua linha e coluna e não checasse a si mesma.
quem puder me ajudar, ou der uma orientação por favor.  flws.
7hiagomp
7hiagomp

Data de inscrição : 21/04/2014
Reputação : 24
Número de Mensagens : 124
Prêmios : checar palavras duplicadas num array 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

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por PedroX Sex 18 Jul 2014, 20:08

Use dois loops for.

Código:
linha = linha_celula;
coluna = coluna_celula;
for(col=0; col<total_colunas; col+=1)
if (array[linha, col]==valor_desejado)
{}

for(lin=0; lin<total_linhas; lin+=1)
if (array[coluna, lin]==valor_desejado)
{}

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : checar palavras duplicadas num array Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por 7hiagomp Sex 18 Jul 2014, 20:19

Opa, Pedro valeu a ajuda, mas não entendi exatamente onde ficou a checagem do próprio array. Em "valor desejado" entendi que vou apenas achar 1 palavra específica e na verdade eu não tenho a informação de qual palavra vai ser repetida.

O que estou tentando é comparar cada célula com todas as outras na mesma linha e coluna, e ver se existe repetição ou não.
7hiagomp
7hiagomp

Data de inscrição : 21/04/2014
Reputação : 24
Número de Mensagens : 124
Prêmios : checar palavras duplicadas num array 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

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por PedroX Sex 18 Jul 2014, 20:29

Então, valor_desejado pode ser trocado por array[linha, coluna].

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : checar palavras duplicadas num array Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por 7hiagomp Sex 18 Jul 2014, 20:36

Mas aí vai gerar um problema que é se auto conferir, gerando um falso resultado de palavra repetida.
7hiagomp
7hiagomp

Data de inscrição : 21/04/2014
Reputação : 24
Número de Mensagens : 124
Prêmios : checar palavras duplicadas num array 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

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por PedroX Sex 18 Jul 2014, 20:57

Dentro da condição do if, coloque um and:

if (array[col, linha]==valor_desejado and col!=coluna)
e também
if (array[coluna, lin]==valor_desejado and lin!=linha)

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : checar palavras duplicadas num array Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por 7hiagomp Sex 18 Jul 2014, 21:47

Eu to aplicando tentando fazer funcionar aqui lek, daqui a pouco ja dou retorno.
7hiagomp
7hiagomp

Data de inscrição : 21/04/2014
Reputação : 24
Número de Mensagens : 124
Prêmios : checar palavras duplicadas num array 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

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por Kapoty Sex 18 Jul 2014, 22:49

Fiz uma engine aqui que faz exatamente oque você deseja:

Dropbox

Essa imagem explica oque ela faz:

checar palavras duplicadas num array Sprite0_strip3

O verde é a célula atual, o azul é por onde ela começara a checar se seu valor é o mesmo que o da célula atual (célula verde), os azuis claros são os próximos a serem checados, a próxima célula faz a mesma coisa, mas não checa as celulas que já passaram.
Kapoty
Kapoty

Games Ranking : Nota B

Notas recebidas : E + D + C + B + D +B + A
Data de inscrição : 05/11/2011
Reputação : 22
Número de Mensagens : 635
Prêmios : checar palavras duplicadas num array Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

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

Ir para o topo Ir para baixo

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por 7hiagomp Sex 18 Jul 2014, 23:09

Eu to aplicando tentando fazer funcionar aqui lek, daqui a pouco ja dou retorno.

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

Bem, eu não consegui adaptar de maneira apropriada. Então vou por aqui como está;
Esse é o objeto que mapeia a matrix 5x4, ele desenha e mapeia; O código atual desenha a matrix
recebe o nome do objeto nas posições determinadas, então fica uma matriz assim;
como as caixas estão no jogo, e como fica a matriz
checar palavras duplicadas num array 6g8qxychecar palavras duplicadas num array Foouja

o array_name recebe o nome dos objetos na posição e se vc troca o objeto(essa é dinamica do jogo)
ele troca o nome no array;  tem um exemplo do jogo online aqui; mprado.info/sudocarga

o array_check recebe "vazio", "repetido", "ok", na mesma posição da caixa que ele checou,  sendo os nomes auto-explicativos.

Essa foi uma breve explicação, então agora ao código;

Create:

Step:

problemas;
1 - qualquer caixa em qualquer posição recebe "repetido";
result:

2 - olhando o step devagar, percebi que o valor está sobrescrevendo. Por exemplo, quando ele encontra uma ocorrencia de repetição no código, ele alerta, mas como ele continua checando, se na próxima checagem ele está "Ok" ele apaga a condição "repetição" anterior.
7hiagomp
7hiagomp

Data de inscrição : 21/04/2014
Reputação : 24
Número de Mensagens : 124
Prêmios : checar palavras duplicadas num array 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

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por Kapoty Sáb 19 Jul 2014, 01:26

Adaptei seu código e fiz um exemplo usando ele:

Dropbox
Kapoty
Kapoty

Games Ranking : Nota B

Notas recebidas : E + D + C + B + D +B + A
Data de inscrição : 05/11/2011
Reputação : 22
Número de Mensagens : 635
Prêmios : checar palavras duplicadas num array Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

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

Ir para o topo Ir para baixo

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

Mensagem por 7hiagomp Sáb 19 Jul 2014, 09:18

CAARAAAAAA! TA funcionando perfeitamente, muuuito obrigado. Salvou p semmpre kk
7hiagomp
7hiagomp

Data de inscrição : 21/04/2014
Reputação : 24
Número de Mensagens : 124
Prêmios : checar palavras duplicadas num array 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

checar palavras duplicadas num array Empty Re: checar palavras duplicadas num array

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