Mensagem não transparente! | message_background

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

Resolvido Mensagem não transparente! | message_background

Mensagem por gabrielsch em Sex 14 Out 2011, 13:12

Olá pessoal, tenho um BG que irá servir como a mensagem do jogo, ou seja, quando eu mandar mostrar uma mensagem irá aparecer esse BG, ele é meio trnaslucido e tem bordas arrendodadas e um espaço transparente de 16px para os lados.

Depois de eu definir o BG com o code:
Código:
message_background(bg_message)

Eu vou testar o jogo, mas ao mostrar a mensagem, ela fica quadrada e sem as bordas arredondas...

Alguém poderia me ajudar com isso?

___________


Acesse: http://foxen.com.br/



gabrielsch

Ranking : Nota A
Número de Mensagens : 1229
Idade : 21
Data de inscrição : 06/12/2009
Notas recebidas : D + A + A
Reputação : 28
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por MatheusReis em Sex 14 Out 2011, 13:18

show_message não dá suporte a backgrounds com 'tons de alpha'. Ele desenha tudo com alpha=1, exceto a cor localizada na parte inferior esquerda do background, que será considerada transparente.

ex: se o background tiver a cor rosa nessa posição, todo tom igual a esse rosa será considerado transparente(alpha=0)

MatheusReis

Ranking : Nota A
Número de Mensagens : 1087
Idade : 23
Data de inscrição : 13/01/2010
Notas recebidas : B-A-A
Reputação : 30
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 0

http://www.mathaeuz.deviantart.com

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por gabrielsch em Sex 14 Out 2011, 13:27

MatheusReis escreveu:show_message não dá suporte a backgrounds com 'tons de alpha'. Ele desenha tudo com alpha=1, exceto a cor localizada na parte inferior esquerda do background, que será considerada transparente.

ex: se o background tiver a cor rosa nessa posição, todo tom igual a esse rosa será considerado transparente(alpha=0)

Sendo assim, ha outro jeito de fazer uma mensagem usando opacidade?
Sem usar o show_message? Com algum tipo de script entre outros?

___________


Acesse: http://foxen.com.br/



gabrielsch

Ranking : Nota A
Número de Mensagens : 1229
Idade : 21
Data de inscrição : 06/12/2009
Notas recebidas : D + A + A
Reputação : 28
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por Super Games em Sex 14 Out 2011, 13:35

Então veja os tutoriais de Janelas Dinâmicas do Fuzenrad, elas explicam como faz isto direitinho, caso queira ver procure no fórum ou veja o guia de tutoriais do fórum.

Super Games

Ranking : Nota D
Número de Mensagens : 2704
Idade : 18
Data de inscrição : 10/06/2010
Notas recebidas : D
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por MatheusReis em Sex 14 Out 2011, 13:41

Eu quando preciso pausar o jogo eu crio um ciclo 'eterno'. Nele eu tenho funções de desenho e funções que vão atualizar a tela para mim. Vamos criar um novo script chamado new_message.
Nele, insira o código:
Código:
Tela_atual=background_create_from_screen(0,0,largura_da_tela,altura_da_tela,0,0);
//Isto tira uma espécie de screen shot da tela, e salva em um background
ciclo=true;
//isto irá controlar o loop
while(ciclo=true){
//enquanto ciclo for verdadeiro
io_handle();
//atualiza os estatus de tecla a mouse
draw_background(Tela_atual,0,0);
//desenha a tela salva anteriormente
//
draw_set_color(c_white);
draw_text(320,240,argument0+"
[Aperte enter para continuar]");
//irá escrever o texto inserido no script mais uma linha dizendo "[Aperte enter para continuar]"
//ex: new_message("Olá");
//Você pode formatar o texto como quizer aqui (cor, fonte, etc)
//E tambem pode desenhar outros backgrounds ou sprites por cima. como desejar
//
if keyboard_check_pressed(vk_enter) {ciclo=false};
//termina o ciclo, fechando a mensagem e voltando para onde o jogo estava
io_clear();
//limpa os estatus de tecla e mouse;
screen_refresh();
//atualiza o desenho na tela
screen_wait_vsync();
//espera a sincronia de vídeo para desenhar na tela novamente
};
Em resumo, ele trava o jogo num ciclo enquanto desenha informações e aguarda a tecla enter ser pressionada.


Última edição por MatheusReis em Sex 14 Out 2011, 13:41, editado 1 vez(es)

MatheusReis

Ranking : Nota A
Número de Mensagens : 1087
Idade : 23
Data de inscrição : 13/01/2010
Notas recebidas : B-A-A
Reputação : 30
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 0

http://www.mathaeuz.deviantart.com

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por Luca$ em Sex 14 Out 2011, 13:41

Tem um jeito sim,com a função:

Código:
image_alpha(alpha)

Mas se você colocar 0,a mensagem nao irá aparecer,entao ponha um valor maior.
Como o Super Games sugeriu,procure os tutoriais de Janelas Dinamicas do Fuzenrad.

Luca$

Ranking : Nota D
Número de Mensagens : 582
Data de inscrição : 10/10/2010
Notas recebidas : D-C
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por gabrielsch em Sex 14 Out 2011, 13:46

Muito bem!
Consegui resolver meu problema, antes de ver o tutorial do Fuzenrad eu estava tentaando fazer a mesma coisa que ele fez no tutorial dele. Só depois que eu vi que era praticamente igual.

Mesmo assim vi que o Game Maker tem que melhorar bastante nesse ponto de mensagens entre outros.

TÓPICO RESOLVIDO!

gabrielsch

Ranking : Nota A
Número de Mensagens : 1229
Idade : 21
Data de inscrição : 06/12/2009
Notas recebidas : D + A + A
Reputação : 28
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por luiz_eldorado em Sex 14 Out 2011, 13:48

Se você quiser que TODA a mensagem fique sem opacidade parcialmente, da pra usar este código:
Código:
message_alpha(alpha)
E retirar a transparência do Background. E no alpha, você coloca 0.9 ou 0.8, sei lá.

Até mais!


EDIT
Opa, alguém já postou antes XD

luiz_eldorado

Ranking : Nota C
Número de Mensagens : 928
Idade : 17
Data de inscrição : 30/07/2011
Notas recebidas : C
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://luizpontes.tk/

Voltar ao Topo Ir em baixo

Resolvido Re: Mensagem não transparente! | message_background

Mensagem por Conteúdo patrocinado Hoje à(s) 16:21


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