Ajuda em programar jogo da memória

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Ajuda em programar jogo da memória

Mensagem por Supersonic933 em Ter 12 Abr 2011, 14:13

Tõ fazendo um jogo da memória pro concurso, mas deu problemas:

O jogo tem um obj_Controller que define duas variáveis:

Código:
global.igual=0
global.clicke=0

O resto dos objetos são obj-carta com esses codes, sendo que o step é sempre mudado (ele define o sprite que aparece depois do clique):

Create

Código:
selecionado=false igual=false um_clicke=0 global.selecionar=0
alarm[0]=1

Alarm 0

Código:
if global.selecionar<2 {alarm[0]=1}if global.selecionar=2 {alarm[1]=15}

Alarm 1


Código:
instance_destroy()

Alarm 2

Código:
if global.igual<2
{global.clicke=0 selecionado=false um_clicke=0 global.selecionar=0}


Step


Código:
if selecionado=true {sprite_index=carta1}else{sprite_index=sprite0 global.igual=0}

Left Button

Código:
if um_clicke=0 and global.clicke<2 {global.clicke+=1 global.igual+=1 selecionado=true alarm[2]=35 um_clicke=1 global.selecionar+=1}

Não sei porque, mas sempre que clico em duas cartas, a tela fica cinza! Alguém me ajuda?


Supersonic933

Ranking : Nota E
Número de Mensagens : 396
Data de inscrição : 14/02/2011
Notas recebidas : E
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://planetaanalisandogames.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por saim em Qua 13 Abr 2011, 09:43

me parece que ao clicar na segunda carta, você SEMPRE vai ativar o alarm[1] para todas as instâncias, deletando TODAS as cartas. Quer dizer, o alarm[0], que ativa o alarm[1], depende de uma global. A global é igual a 2 para todas as instâncias, não importa se as duas cartas abertas são iguais ou se a carta com o alarm sendo ativado jamais foi clicada.
Suponho que o background ainda esteja cinza, certo?

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por Supersonic933 em Qua 13 Abr 2011, 16:03

saim escreveu:me parece que ao clicar na segunda carta, você SEMPRE vai ativar o alarm[1] para todas as instâncias, deletando TODAS as cartas. Quer dizer, o alarm[0], que ativa o alarm[1], depende de uma global. A global é igual a 2 para todas as instâncias, não importa se as duas cartas abertas são iguais ou se a carta com o alarm sendo ativado jamais foi clicada.
Suponho que o background ainda esteja cinza, certo?

Sim, o BG é cinza. Desculpe por demorar a responder.

Supersonic933

Ranking : Nota E
Número de Mensagens : 396
Data de inscrição : 14/02/2011
Notas recebidas : E
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://planetaanalisandogames.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por saim em Qua 13 Abr 2011, 17:07

Sem problema.
Então, o problema é esse mesmo? Quer dizer, o fato do alarm depender de uma global está deletando todas as instâncias?

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por Supersonic933 em Qua 13 Abr 2011, 17:19

saim escreveu:Sem problema.
Então, o problema é esse mesmo? Quer dizer, o fato do alarm depender de uma global está deletando todas as instâncias?

Deve ser sim. Para você entender tudo, vou mandar a engine por mp.

Supersonic933

Ranking : Nota E
Número de Mensagens : 396
Data de inscrição : 14/02/2011
Notas recebidas : E
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://planetaanalisandogames.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por saim em Qui 14 Abr 2011, 09:02

Cara, não vou poder mexer na sua engine pelo menos até maio...
O que eu acho que está acontecendo é que você:
- está checando se existem duas cartas virada, quando deveria estar checando se existem duas cartas IGUAIS viradas
- está deletando todas as cartas, quando deveria estar deletando apenas as cartas viradas (que, após a correção acima, serão iguais).
Realmente, pra te dizer como corrigir, eu teria que ver sua engine. Mas o computador com o game maker está um pouco congestionado, no momento. A previsão é que em maio a coisa melhore, mas não posso prometer nada. De qualquer forma, já recebi o link. Se sobrar uma brechinha, eu dou uma olhada.
Tente usar o debug. Através do debug mode, você tem acesso a todas as variáveis, sejam elas globais ou locais. Pras variáveis locais, ao passar o mouse sobre uma instância, a id dele aparece na parte de baixo da janela de debug, aí você pode verivicar, por exemplo, o valor de (100022).alarm[1], onde "(100022)" é a id de alguma instância.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por Supersonic933 em Qui 14 Abr 2011, 22:37

Bem pessoal, consegui corrigir o bug de deletar tudo, era só colocar uma variável pra cada carta...

Aproveitando o tópico, não sei por que...mas destrói cartas que não quero mesmo não sendo iguais!

Me ajudem! Engine do game:

"Jogo da memória_2.gmk"

Supersonic933

Ranking : Nota E
Número de Mensagens : 396
Data de inscrição : 14/02/2011
Notas recebidas : E
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://planetaanalisandogames.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por Mannoroth em Sex 15 Abr 2011, 00:04

Sua engine consertada por mim:
http://www.megaupload.com/?d=E11G88OE
eu apaguei TODAS variáveis da engine, deixei apenas uma variável q eu fiz.
Mas criei mais objetos, são dois objetos pra tipo de carta, quando os dois objetos de mesmo sprite forem desvirados, desaparecem. Se desvirar 2 diferentes, ambos viram de novo(sprite0).

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por Supersonic933 em Sex 15 Abr 2011, 17:05

Mannoroth escreveu:Sua engine consertada por mim:
http://www.megaupload.com/?d=E11G88OE
eu apaguei TODAS variáveis da engine, deixei apenas uma variável q eu fiz.
Mas criei mais objetos, são dois objetos pra tipo de carta, quando os dois objetos de mesmo sprite forem desvirados, desaparecem. Se desvirar 2 diferentes, ambos viram de novo(sprite0).

Obrigado...podem fechar!
Trancado a pedido do autor.

Supersonic933

Ranking : Nota E
Número de Mensagens : 396
Data de inscrição : 14/02/2011
Notas recebidas : E
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://planetaanalisandogames.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Ajuda em programar jogo da memória

Mensagem por Conteúdo patrocinado Hoje à(s) 04:02


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum