Outra dúvida com Tetris...

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

Outra dúvida com Tetris...

Mensagem por Adriel em Ter 03 Jan 2012, 13:28

Agora, o problema é o seguinte, e está me atormentando : minha sprite do tetris tem a mask dela, sendo QUE, no Tetris, nós viramos a peça 90º ao apertar o botão correspondente, certo? Pois então, se ela estiver "virada" a mask dela muda, e a colisão com o chão fica ruim, ou ela não para adequadamente em cima de outras peças, etc, etc. Como resolvo isso? Tô me matando aqui Mad

Adriel

Número de Mensagens : 922
Idade : 18
Data de inscrição : 18/07/2009
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Markituh em Ter 03 Jan 2012, 13:41

Se não me engano, a sprite usada para mask acompanha o image_index do objeto. Outra coisa é checar cada ângulo individualmente, e mudar a mask de acordo com o resultado.

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Adriel em Ter 03 Jan 2012, 13:43

Sim mas, se eu mudar a mask, na hora que ele colide com o chão, para por onde a mask está marcada, sem nem o objeto encostar no chão :|

Adriel

Número de Mensagens : 922
Idade : 18
Data de inscrição : 18/07/2009
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Markituh em Ter 03 Jan 2012, 13:57

What? Vou tentar explicar melhor:
No Step do objeto, faça uma checagem do ângulo do objeto (usando image_angle ou uma variável específica pra isso) e se o resultado for verdadeiro (o ângulo tem o valor daquela condição) muda a mask.
Entendeu agora? Aí vai o algoritmo
Código:
Se o ângulo do meu objeto for 0
{
    mudar a mask do objeto
}
caso contrário, se for 90
{
    também muda a mask
}
Lembrando que a variável da mask é mask_index;

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Adriel em Ter 03 Jan 2012, 14:03

E como usa o mask_index?

Adriel

Número de Mensagens : 922
Idade : 18
Data de inscrição : 18/07/2009
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Markituh em Ter 03 Jan 2012, 14:12

Adriel escreveu:E como usa o mask_index?
Igualzinho a sprite_index:
Código:
mask_index = sprite_da_mask

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Adriel em Ter 03 Jan 2012, 14:53

Valeu Markituh, ainda não consegui, mas obrigado mesmo assim, estou quase lá. Aproveitando o tópico, quero fazer mais uma pergunta sobre tetris : como fazer para que, quando forme uma fileira, ela desapareça?

Adriel

Número de Mensagens : 922
Idade : 18
Data de inscrição : 18/07/2009
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Markituh em Ter 03 Jan 2012, 15:03

Que bom =)

Olha, você pode usar collision_line, mas não iria funcionar muito já que quando isso acontece, os blocos são meio que formados em partículas, e se sobrar um pedaço de uma peça fora do alcance da linha, a peça e divida e o pedaço fica ali. Tem um método mais prático, que é desenhar estas "partículas" separadamente. Não tenho um algoritmo, mas uma ótima aplicação feita pelo vinians:
Uma engine completa de Tetris. Estude-a e guarde-a com sua vida... Laughing Boa sorte.

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Adriel em Ter 03 Jan 2012, 15:47

Caraca, o vinians exagerou na engine, só código doido, mas está me ajudando Very Happy

Tipo, tem coisa lá que eu faço com codes menores e mais simples Laughing

Mesmo assim, vinians, tu é o cara \o/

Adriel

Número de Mensagens : 922
Idade : 18
Data de inscrição : 18/07/2009
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Outra dúvida com Tetris...

Mensagem por Conteúdo patrocinado Hoje à(s) 13:25


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