Login

Esqueci minha senha

Últimos assuntos
» [TUTORIAL] Função facebook_graph_request
por Isaque Onix Ontem à(s) 11:56 pm

» Como Resolver Este Bug
por Isaque Onix Ontem à(s) 11:00 pm

» [CQ#22] GUERRA! O Ultimo CQ de 2014
por Rodrigo Santiago Ontem à(s) 10:28 pm

» Pixel Art - Avaliem meus tilesets
por VanMall Ontem à(s) 10:11 pm

» Criação de Equipe
por AG Games Ontem à(s) 9:57 pm

» [CQ#21] Resultados
por dharrison Ontem à(s) 9:12 pm

» Cartão Pré pago internacional
por cascavelo Ontem à(s) 4:37 pm

» Block Buster
por JoaoVanBlizzard Ontem à(s) 2:35 pm

» Como criar uma rampa?
por TRFN Ontem à(s) 1:46 pm

» Marketplace da GMBR
por VanMall Dom Out 19, 2014 9:59 pm

» [Resolvido] Problema com draw_sprite_ext
por matheusco Dom Out 19, 2014 9:39 pm

» [Como Faz?] Barra com Contador estilo Doodle Jump
por vitorfernandes13 Dom Out 19, 2014 7:00 pm

» [Projeto]Super Mario 75
por Lizarus Dom Out 19, 2014 5:38 pm

» League of Legends Update 19-10-2014
por Markituh Dom Out 19, 2014 10:04 am

» [CQ#21] Votação Pública - Participe!
por dharrison Sab Out 18, 2014 7:56 pm

» Dúvidas de como personalizar o meu load game
por Markituh Sab Out 18, 2014 3:37 pm

» O perigoso Projeto! v 1.0.1
por Alex FC Sab Out 18, 2014 2:41 pm

» Projeto F1
por Lighter Sab Out 18, 2014 2:11 pm

» HERÓIS do ESPAÇO
por Lucas Farias Sab Out 18, 2014 1:54 pm

» [Duvida] Leitura de arquivo (gm8)
por Tedi Ripper Sab Out 18, 2014 1:44 pm

» Level Editor, user criar background
por ralk2 Sab Out 18, 2014 10:31 am

» Função não para!
por vinians Sex Out 17, 2014 9:30 pm

» [Resolvido]problemas com audio
por GustavoPix Sex Out 17, 2014 5:05 pm

» Pedido de sprite.
por gabriel33245900 Sex Out 17, 2014 3:47 pm

» Resetar valor inserido
por Isaque Onix Sex Out 17, 2014 3:33 pm

» Problemas ao realizar a concatenação
por Felipe Reis Magno 2 Sex Out 17, 2014 1:07 pm

» Halloween 3d
por JoaoVanBlizzard Sex Out 17, 2014 12:45 pm

» Procura-se voluntarios
por Isaque Onix Sex Out 17, 2014 12:32 pm

» Uma Ajudinha Com Spawns
por matheusco Sex Out 17, 2014 11:46 am

» Tutorial de Multiplayer/Networking Nativo - GMS
por vinians Sex Out 17, 2014 11:28 am

» Inimigo quando esta na tela ativa certa ação
por gabriel33245900 Sex Out 17, 2014 7:40 am

» Mplay impact it
por Isaque Onix Sex Out 17, 2014 3:50 am

» D.O.V.E. Alpha Demo [PC/Android]
por DooMan Qui Out 16, 2014 11:58 pm

» Tela de Load
por matheusco Qui Out 16, 2014 9:29 pm

» Primeira Atualização
por Homer J Simpson Qui Out 16, 2014 6:53 pm

» [Resolvido]Full Screen e Windowed por código
por galavernaa Qui Out 16, 2014 5:12 pm

» Desempenho do seu jogo no android
por Gonzo Qui Out 16, 2014 2:10 pm

» Engine simples cheia de codigos para Plataforma!
por gabriel33245900 Qui Out 16, 2014 12:59 pm

» Criando uma transição no GMS
por ekuhnen Qui Out 16, 2014 11:30 am

» CA#5 Sons em MIDI
por theguitarmester Qui Out 16, 2014 9:36 am

» Galeria de arte - GABRIELGEAZI2
por gabrielgeazi2 Qui Out 16, 2014 8:46 am

» [Android] Ajuda com resolução e tamanho da room
por aminaro Qua Out 15, 2014 11:20 pm

» [Duvida] redirecionando
por Gonzo Qua Out 15, 2014 10:22 pm

» [pedido] dicas para graficos
por Isaque Onix Qua Out 15, 2014 8:59 pm

» Sprites, Tiles e Gráficos Isometricos Pintados
por Kabeção Qua Out 15, 2014 8:31 pm

» Como colidir,mas sem grudar na parede?
por WellingtonBecker Qua Out 15, 2014 8:15 pm

» Como fazer 1 checador de som
por willcraft2 Qua Out 15, 2014 8:14 pm

» Tabelas saindo cortadas
por PedroX Qua Out 15, 2014 2:55 pm

» [XCREATOR] XRunner
por vinians Qua Out 15, 2014 2:38 pm

» [Duvida] A procura do zoom padrão
por Isaque Onix Qua Out 15, 2014 2:19 pm

» Checar room?
por Isaque Onix Qua Out 15, 2014 12:25 pm

» Como Encurtar Este Script (Se Possivel)
por theguitarmester Qua Out 15, 2014 11:10 am

» Fade out in em fonte
por Isaque Onix Qua Out 15, 2014 10:09 am

» [CQ#21] Run For Music - Alpha 2.5.1
por theguitarmester Qua Out 15, 2014 9:49 am

» Spyre
por Isaque Onix Ter Out 14, 2014 10:56 pm

» [pedido ajuda] gms
por Isaque Onix Ter Out 14, 2014 10:24 pm

» Precisa-se programador urgente (até 18/09/2014)
por kammer_black Ter Out 14, 2014 10:05 pm

» † Lucid Dreaming † (ALMA 2)
por Vikintor Ter Out 14, 2014 9:09 pm

» Massive multiplayer online - parte 3
por DevMinuzzo Ter Out 14, 2014 8:46 pm

» Principios básicos de mmo.
por WellingtonBecker Ter Out 14, 2014 8:19 pm

» Alguem tem interesse em fazer um jogo desse?
por ohmpsy Ter Out 14, 2014 8:11 pm

» [Android] Maria World COMPLETO
por willyruduit Ter Out 14, 2014 7:21 pm

» virtual key help!
por willyruduit Ter Out 14, 2014 7:17 pm

» Criar um objeto com 2 sprites
por Isaque Onix Ter Out 14, 2014 7:03 pm

» HERÓIS do ESPAÇO
por douglas444 Ter Out 14, 2014 6:59 pm

» NoOte!
por VanMall Ter Out 14, 2014 6:40 pm

» Ricardo III- Ajuda por favor!
por galavernaa Ter Out 14, 2014 4:57 pm

» [Resolvido]Duvida para colocar jogo Windows Store
por Gonzo Ter Out 14, 2014 4:23 pm

» [Ajuda] Historia para jogo de zumbis
por hfantacussi Ter Out 14, 2014 3:01 pm

» Preciso de uma mente fértil + desmontração do jogo
por hfantacussi Ter Out 14, 2014 3:00 pm

» Como colocar o nome do jogo na janela de execução?
por douglas444 Ter Out 14, 2014 12:46 pm

» Como usar Notificações de Push Android
por Gonzo Ter Out 14, 2014 12:17 pm

» [ Video Aula / PDF ]Tutorial MMORPG
por DevMinuzzo Ter Out 14, 2014 12:14 pm

» Problemao de pulo andando
por gabriel33245900 Ter Out 14, 2014 11:49 am

» Ajuda com surfaces
por Isaque Onix Ter Out 14, 2014 3:43 am

» [Duvida]Move wrap
por WellingtonBecker Seg Out 13, 2014 10:36 pm

» Curso GM Online - 3º Lição - Comunicação entre Clients -> Chat
por DevMinuzzo Seg Out 13, 2014 8:35 pm

» Evento de colisão com vilão?
por Lizarus Seg Out 13, 2014 8:28 pm

» Servidor enviar dados ao cliente GM:S Online
por fredcobain Seg Out 13, 2014 1:51 pm

» Desenvolvimento no forum
por mako182 Seg Out 13, 2014 12:01 pm

» [Update: 13/10/14] Pixel Place 2014
por VanMall Seg Out 13, 2014 11:52 am

» Ajuda
por theguitarmester Seg Out 13, 2014 11:40 am

» [CQ#21]Dubber Land
por theguitarmester Seg Out 13, 2014 10:56 am

» Erro de shader D3D (usando shaders)
por thiago.b.dealmeida Seg Out 13, 2014 1:48 am

» Como Criar Uma I.A Para Zumbi
por matheusco Dom Out 12, 2014 11:22 pm

» Bug Bizarro com meu game
por Willy Dom Out 12, 2014 10:30 pm

» duvida escolha de peças
por Lyon Dom Out 12, 2014 8:42 pm

» [CQ#21] Harvest Nectar! Before Winter Arrives V2.1
por douglas444 Dom Out 12, 2014 7:29 pm

» [CQ#21] Memories From Yesterday 3D
por Markituh Dom Out 12, 2014 3:51 pm

» Procura-se engines p/ mobile
por Gonzo Dom Out 12, 2014 3:13 pm

» Sobre "get_string"
por Willy Dom Out 12, 2014 1:52 pm

» A espada de Akain
por Tiago Lima Dom Out 12, 2014 11:42 am

» FutQuiz
por theokof98 Dom Out 12, 2014 11:05 am

» Match the Color
por unaldobrito Dom Out 12, 2014 10:53 am

» Qual o codigo?
por Gonzo Sab Out 11, 2014 9:24 pm

» [CQ#21] Sprinters
por WellingtonBecker Sab Out 11, 2014 3:42 pm

» Super Br Bros - O Projeto
por querempaz Sab Out 11, 2014 12:40 pm

» Match the Color
por unaldobrito Sab Out 11, 2014 11:13 am

» Como centralizar banner do AdMob
por unaldobrito Sab Out 11, 2014 10:53 am


Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Novo Tópico   Responder ao tópico

Página 1 de 2 1, 2  Seguinte

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

Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Knonick em Qui Jun 09, 2011 11:07 pm

Como eu faço para em 3 segundos a tela ficar toda preta, e onde eu clicar, somente onde eu clicar, essa parte da tela (um círculo com raio de 8 pixels) ficar como estava antes de ficar preta?


Última edição por Knonick em Sex Jun 10, 2011 12:00 am, editado 1 vez(es)

Knonick

Número de Mensagens: 92
Idade: 16
Data de inscrição: 10/05/2011
Reputação: 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Carlos L. em Qui Jun 09, 2011 11:24 pm

Crie um background preto com qualquer dimensão.
Agora vá na aba background na room e marque a opção 'visible when room starts' e a opção 'Stretch', não selecione o background criado.
Agora crie um objeto e coloque o seguinte script.
//CREATE
alarm[0] = room_speed * 3;
//ALARM [0]
background_index[0] = nome_background_criado;
//DRAW
if (mouse_check_button(mb_left))
{
if (background_index[0] == nome_background_criado)
{
draw_circle_color(mouse_x,mouse_y,16,background_color,background_color,0);
}
}

Pronto agora teste e enquanto você estiver clicando ele irá mostrar um circulo onde terá a cor do background.
flw

Carlos L.

Ranking: Nota C
Número de Mensagens: 270
Data de inscrição: 26/09/2010
Notas recebidas: C
Reputação: 8

Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por saim em Qui Jun 09, 2011 11:27 pm

Desenha uma surface do tamanho da tela, toda preta, num objeto de depth mais baixa. Desenhe ela em alpha crescente, de modo que leve 3 segundos pra chegar a 1 (a velocidade deverá ser 1/(3*room_speed)). Depois, onde clicar, você altera essa surface, subtraindo um círculo de raio 16.
Informações mais aprofundadas no meu tutorial de surfaces (link na assinatura).

saim

Ranking: Nota B
Número de Mensagens: 2944
Idade: 36
Data de inscrição: 14/01/2011
Versão:
  • Game Maker 8.0
  • Game Maker Studio: Professional

Notas recebidas: C-D-A
Reputação: 117

Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Knonick em Qui Jun 09, 2011 11:59 pm

Carlos, o seu funcionou, mas não do jeito que eu queria. Queria que o preto ficasse em cima de tudo na tela, até os objetos. E outra coisa, a room tem background que é uma imagem, e o círculo só é criado, se o background da room for uma só cor. E por último, queria que o circulo criado não sumisse quando eu soltasse o botão esquerdo do mouse. E uma pequena correção, o círculo que quero não tem raio de 16 pixels, e sim 8 pixels (escrevi errado no tópico).

Saim, li o tutorial, mas não entendi direito o que é uma surface.

Knonick

Número de Mensagens: 92
Idade: 16
Data de inscrição: 10/05/2011
Reputação: 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por saim em Sex Jun 10, 2011 8:35 am

Ou, em outras palavras, "seu tutorial não serve pra nada!". Tudo bem, vamos por partes.
Uma surface é uma pintura. Tipo uma sprite, mas fácil de alterar. Ela pode ser do tamanho que você quiser e você quer ela do tamanho da tela. Ela pode conter o que você quiser e você quer que ela contenha um retângulo preto com uns buracos transparentes.
Primeiro, você cria a surface e dá um nome pra ela. Eu adoro chamar surfaces de "Surf". Depois você deixa ela toda preta.
create:
Código:
Surf=surface_create(room_width, room_height)
surface_set_target(Surf)
draw_clear_alpha(c_black, 1)
surface_reset_target()
Daí, toda vez que você clica, abre um buraco nela. Pode ser feito no global_mouse_pressed ou no step. Eu gosto do step:
Código:
if mouse_check_button_pressed(mb_left){
   surface_set_target(Surf)
   draw_set_blend_mode(bm_subtract) //passa a remover ao invés de desenhar
   draw_circle_color(mouse_x, mouse_y, 8, c_white, c_white, 0)//verifique a ordem dos argumentos
   draw_set_blend_mode(bm_normal) //volta a desenhar ao invés de remover
   surface_reset_target()
   }
E, claro, desenha a surface no draw:
Código:
draw_surface(0, 0, Surf)

saim

Ranking: Nota B
Número de Mensagens: 2944
Idade: 36
Data de inscrição: 14/01/2011
Versão:
  • Game Maker 8.0
  • Game Maker Studio: Professional

Notas recebidas: C-D-A
Reputação: 117

Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Knonick em Sex Jun 10, 2011 9:59 am

Eu não quis falar mal do seu tutorial, só quis dizer que ficou um pouco confuso para mim (não sei se foi porque eu estava com sono).
E sobre essa mini explicação (que eu entendi), funcionou perfeitamente, só preciso que quando eu arrastar o mouse segurando o botão, continuasse criando os círculos transparentes.

---EDIT---

Já consegui, mudei o mouse_check_button_pressed para mouse_check_button, mas quando eu arrasto o mouse rapidamente, os círculos criados ficam separados, queria que ficassem juntos. Créditos garantidos no meu jogo.

Knonick

Número de Mensagens: 92
Idade: 16
Data de inscrição: 10/05/2011
Reputação: 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por saim em Sex Jun 10, 2011 10:48 am

Knonick escreveu:Eu não quis falar mal do seu tutorial, só quis dizer que ficou um pouco confuso para mim (não sei se foi porque eu estava com sono).
E eu não estava reclamando também. É que eu esqueço que teclado não tem tom de voz. Eu estava fazendo piada. Tá, eu não sou muito bom nisso...
Agora, quanto aos círculos separados... O problema é mais complexo. O lance é que o mouse não faz um caminho que passa por todos os pontos, ele pula de onde ele estava pra onde ele está, o que dá essa impressão de surface com catapora. Você poderia interpolar entre esses pontos e repetir o círculo um número suficientemente grande de vezes pra dar a impressão de que o movimento é contínuo, mas pra isso, você precisa armazenar uma variável pra onde o mouse estava no step anterior. E ao clicar o mouse (evento mouse_check_button_pressed), essa variável tem que ser modificada pra onde o mouse está nesse instante, senão vai dar uma zicazinha.
Posso fazer uma enginezinha, se você quiser.

saim

Ranking: Nota B
Número de Mensagens: 2944
Idade: 36
Data de inscrição: 14/01/2011
Versão:
  • Game Maker 8.0
  • Game Maker Studio: Professional

Notas recebidas: C-D-A
Reputação: 117

Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Knonick em Sex Jun 10, 2011 10:56 am

saim escreveu:E eu não estava reclamando também. É que eu esqueço que teclado não tem tom de voz. Eu estava fazendo piada.
Ah bom, então assim sim.

E quanto ao que você falou, é melhor fazer uma engine mesmo, pois ainda sou muito novato para entender tudo que você disse.

Knonick

Número de Mensagens: 92
Idade: 16
Data de inscrição: 10/05/2011
Reputação: 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por saim em Sex Jun 10, 2011 11:02 am

Ei-la!

create:
Código:
mxp=mouse_x //mouse_x_previous
myp=mouse_y //mouse_y_previous
int=10 //número de interpolações
//cria a surface preta, como antes
step alternativa 1 (mais fácil de programar e mais pesada pro computador):
Código:

if mouse_check_button(mb_left){
   surface_set_target(Surf)
   draw_set_blend_mode(bm_subtract)
   var i, dir, dist;
   dir =point_direction(mxp, myp, mouse_x, mouse_y)
   dist=point_distance (mxp, myp, mouse_x, mouse_y)/int
   for(i=0; i<=int; i+=1){ //não tenho certeza se é <= ou só <
      draw_circle_color(mxp+lengthdir_x(dist*i, dir), myp+lengthdir_y(dist*i, dir), 8, c_white, c_white, 0)
      }
   draw_set_blend_mode(bm_normal)
   surface_reset_target()
   }
//agora, no final do step, atualiza o mxp/myp
mxp=mouse_x
myp=mouse_y
step alternativa 2 (levemente mais duro de programar e um pouquinho de nada mais leve pro computador):
Código:
if mouse_check_button_pressed(mb_left){
   mxp=mouse_x
   myp=mouse_y
   }
if mouse_check_button(mb_left){
   surface_set_target(Surf)
   draw_set_blend_mode(bm_subtract)
   var i, dir, dist;
   dir =point_direction(mxp, myp, mouse_x, mouse_y)
   dist=point_distance (mxp, myp, mouse_x, mouse_y)/int
   for(i=0; i<=int; i+=1){ //não tenho certeza se é <= ou só <
      draw_circle_color(mxp+lengthdir_x(dist*i, dir), myp+lengthdir_y(dist*i, dir), 8, c_white, c_white, 0)
      }
   draw_set_blend_mode(bm_normal)
   surface_reset_target()
   //atualiza mxp/myp só se o mouse estiver apertado
   mxp=mouse_x
   myp=mouse_y
   }

Edit: Hei, testei aqui, o efeito é bem legal!


Última edição por saim em Sex Jun 10, 2011 11:17 am, editado 1 vez(es)

saim

Ranking: Nota B
Número de Mensagens: 2944
Idade: 36
Data de inscrição: 14/01/2011
Versão:
  • Game Maker 8.0
  • Game Maker Studio: Professional

Notas recebidas: C-D-A
Reputação: 117

Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Knonick em Sex Jun 10, 2011 11:16 am

Não funcionou. A tela não fica preta, e quando eu clico na tela dá erro.

Knonick

Número de Mensagens: 92
Idade: 16
Data de inscrição: 10/05/2011
Reputação: 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por saim em Sex Jun 10, 2011 11:19 am

Veja o último comentário no create event. Você criou a surface? (só pegar o create event anterior e copiar/colar em algum lugar do novo create event).Ah, precisa manter o draw event, também!

saim

Ranking: Nota B
Número de Mensagens: 2944
Idade: 36
Data de inscrição: 14/01/2011
Versão:
  • Game Maker 8.0
  • Game Maker Studio: Professional

Notas recebidas: C-D-A
Reputação: 117

Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Knonick em Sex Jun 10, 2011 7:29 pm

Funcionou! Ainda fica bolinhas separadas algumas vezes, mas tem que arrastar rápido para isso acontecer. Se desse para arrumar ficaria melhor. E outra coisa, queria que a tela só ficasse preta depois de 3 segundos.

Knonick

Número de Mensagens: 92
Idade: 16
Data de inscrição: 10/05/2011
Reputação: 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por saim em Sex Jun 10, 2011 7:53 pm

Pra resolver o problema da velocidade, aumente a interpolação. Eu usei int=10, você pode usar 20, 30, 100, o que quiser.
Como assim, "a tela só ficasse preta depois de 3 segundos"? Ela vai escurecendo aos poucos ou leva um tempo pra aparecer a surface?
Lembre-se que você pode desenhar uma surface com alpha diferenciado usando draw_surface_ext.

saim

Ranking: Nota B
Número de Mensagens: 2944
Idade: 36
Data de inscrição: 14/01/2011
Versão:
  • Game Maker 8.0
  • Game Maker Studio: Professional

Notas recebidas: C-D-A
Reputação: 117

Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por Knonick em Sex Jun 10, 2011 8:06 pm

O bug da interpolação eu arrumei, e a tela é pra ir escurecendo e demorar 3 segundos para ficar preta.

Knonick

Número de Mensagens: 92
Idade: 16
Data de inscrição: 10/05/2011
Reputação: 0

Voltar ao Topo Ir em baixo

Re: Como fazer a tela ficar toda preta e voltar ao normal onde clica?

Mensagem por saim em Sab Jun 11, 2011 11:29 am

vai aumentando o alpha aos poucos. Começa com alpha=0 e a cada step, aumente1/(3*room_speed).

saim

Ranking: Nota B
Número de Mensagens: 2944
Idade: 36
Data de inscrição: 14/01/2011
Versão:
  • Game Maker 8.0
  • Game Maker Studio: Professional

Notas recebidas: C-D-A
Reputação: 117

Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Página 1 de 2 1, 2  Seguinte

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


Novo Tópico   Responder ao tópico
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum