Conectar-se
Quem está conectado
28 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 28 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota B
Notas recebidas : B
Data de inscrição : 25/04/2011
Número de Mensagens : 111
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

[Resolvido] Apertou "P" pausou o jogo e deixou um sombreado preto no jogo inteiro...

em Qui 02 Jun 2011, 11:27
Como eu faço pra quando clicar P no teclado o jogo vai parar (ja consigo parar o jogo) e vai ficar tudo quase preto, não totalmente.

Alguem sabe?


Última edição por gifah em Qui 02 Jun 2011, 12:06, editado 1 vez(es)
avatar
Ranking : Sem avaliações
Data de inscrição : 11/10/2009
Número de Mensagens : 2184
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 106

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] Apertou "P" pausou o jogo e deixou um sombreado preto no jogo inteiro...

em Qui 02 Jun 2011, 11:52
Você usa views ou rooms inteiras? Bom, o que você pode fazer é desenhar um retângulo preenchido com uma certa opacidade na tela, usando a função draw_rectangle(x1,y1,x2,y2,contorno - true se sim, false se não);

x1: Primeiro ponto da coordenada x. Em outras palavras, é o canto esquerdo superior da forma.
y1: Primeiro ponto da coordenada y. Em outras palavras, é o canto esquerdo inferior da forma.
x2: Segundo ponto da coordenada x. Em outras palavras, é o canto direito superior da forma.
y2: Segundo ponto da coordenada y. Em outras palavras, é o canto direito inferior da forma.

Eis aqui uma imagem para ilustrar:


Definimos a opacidade com a função draw_set_alpha(opacidade). A opacidade vai de 0 até 1, ou seja, se quisermos especificar 64% de opacidade, iremos usar números decimais: 0.64; basicamente, é a porcentagem da opacidade dividido por 100 (lembre-se de que a vírgula no GM é um ponto). Então, se usar views, quando pausar faça isso:
Código:
draw_set_color(c_black) // Cor preta - sim, essa função define  a cor
draw_set_alpha(0.90) // Uma opacidade que deixe tudo escuro
draw_rectangle(view_xview,view_yview,view_wview,view_hview,false); // Retângulo
Se usar rooms inteiras, sem views:
Código:
draw_set_color(c_black) // Cor preta - sim, essa função define  a cor
draw_set_alpha(0.90) // Uma opacidade que deixe tudo escuro
draw_rectangle(0,0,room_width,room_height,false); // Retângulo
Lembre-se de que, se no pause você desenhe algum texto ou alguma sprite, é totalmente fundamental você colocar o código do fundo atrás do código que desenha o texto/sprite. Esses códigos irão no evento Draw, então se você ativar o pause em outro lugar, não se esqueça de usar uma variável para controlar isso, por exemplo:
Código:
if pausou = true
{
// Código que desenha o fundo
// Código que desenha o texto/sprite
}
Espero não ter sido complexo para a tua compreensão. Qualquer coisa, me dou ao trabalho de te explicar novamente.
avatar
Ranking : Nota B
Notas recebidas : B
Data de inscrição : 25/04/2011
Número de Mensagens : 111
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: [Resolvido] Apertou "P" pausou o jogo e deixou um sombreado preto no jogo inteiro...

em Qui 02 Jun 2011, 12:05
@Markituh escreveu:Você usa views ou rooms inteiras? Bom, o que você pode fazer é desenhar um retângulo preenchido com uma certa opacidade na tela, usando a função draw_rectangle(x1,y1,x2,y2,contorno - true se sim, false se não);

x1: Primeiro ponto da coordenada x. Em outras palavras, é o canto esquerdo superior da forma.
y1: Primeiro ponto da coordenada y. Em outras palavras, é o canto esquerdo inferior da forma.
x2: Segundo ponto da coordenada x. Em outras palavras, é o canto direito superior da forma.
y2: Segundo ponto da coordenada y. Em outras palavras, é o canto direito inferior da forma.

Eis aqui uma imagem para ilustrar:


Definimos a opacidade com a função draw_set_alpha(opacidade). A opacidade vai de 0 até 1, ou seja, se quisermos especificar 64% de opacidade, iremos usar números decimais: 0.64; basicamente, é a porcentagem da opacidade dividido por 100 (lembre-se de que a vírgula no GM é um ponto). Então, se usar views, quando pausar faça isso:
Código:
draw_set_color(c_black) // Cor preta - sim, essa função define  a cor
draw_set_alpha(0.90) // Uma opacidade que deixe tudo escuro
draw_rectangle(view_xview,view_yview,view_wview,view_hview,false); // Retângulo
Se usar rooms inteiras, sem views:
Código:
draw_set_color(c_black) // Cor preta - sim, essa função define  a cor
draw_set_alpha(0.90) // Uma opacidade que deixe tudo escuro
draw_rectangle(0,0,room_width,room_height,false); // Retângulo
Lembre-se de que, se no pause você desenhe algum texto ou alguma sprite, é totalmente fundamental você colocar o código do fundo atrás do código que desenha o texto/sprite. Esses códigos irão no evento Draw, então se você ativar o pause em outro lugar, não se esqueça de usar uma variável para controlar isso, por exemplo:
Código:
if pausou = true
{
// Código que desenha o fundo
// Código que desenha o texto/sprite
}
Espero não ter sido complexo para a tua compreensão. Qualquer coisa, me dou ao trabalho de te explicar novamente.

perfeito, ja funcionando. muito obrigado.
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum