Login

Esqueci minha senha

Últimos assuntos
» Uma estranha noite
por douglas444 Hoje à(s) 11:18 am

» Projeto Ômega
por JoaoVanBlizzard Hoje à(s) 10:47 am

» [Resolvido] Profundidade do Desenho
por matheusco Hoje à(s) 10:45 am

» The Cracker's Nightmare 3D [Versão 0.7.1]
por JoaoVanBlizzard Hoje à(s) 10:26 am

» [Tutorial] Sobre código parte 2 !
por gabriel33245900 Hoje à(s) 9:41 am

» Run Bunny, Run!
por theokof98 Hoje à(s) 9:24 am

» FutQuiz
por theokof98 Hoje à(s) 9:19 am

» Queria sistema de colisão igual ao de tibia....
por FlyAway Hoje à(s) 8:03 am

» Calendário de concursos
por PedroX Hoje à(s) 7:41 am

» Ajuda ao clickar com o mouse selecionar uma cartaa
por gabrielsch Hoje à(s) 6:55 am

» Ajuda Sprite
por gabriel33245900 Hoje à(s) 6:16 am

» Crio Trilha Sonora para Games!
por Sandro Casagrande Jr. Hoje à(s) 2:54 am

» Super Cosmonauts
por Molinware Ontem à(s) 11:08 pm

» Tutorial de Multiplayer/Networking Nativo - GMS
por Isaque Onix Ontem à(s) 9:37 pm

» [duvida] game online com mysql
por Isaque Onix Ontem à(s) 9:31 pm

» Como Cria CutsCenes
por WellingtonBecker Ontem à(s) 7:48 pm

» setas esquerda e direita nao funcionam
por WellingtonBecker Ontem à(s) 5:43 pm

» Mega pacote de recursos, sprites, músicas e códigos-fonte!
por Lizarus Ontem à(s) 3:06 pm

» [Script] Desenhar paths texturizados
por Pai véi Ontem à(s) 3:03 pm

» Como criar uma corda/personagem joga a corda?
por Lauro Ontem à(s) 2:47 pm

» [Nova versão beta disponível] Calabouço Fantasma
por douglas444 Ontem à(s) 2:17 pm

» Ajuda. Jogo de Cartas Simples
por Lauro Ontem à(s) 12:11 pm

» [TUTORIAL] Inclua seu jogo no Facebook
por itarodrigo Ontem à(s) 11:20 am

» (resolvido) nos canto
por Isaque Onix Ontem à(s) 11:07 am

» Help! Alguém acha o erro dessa script?
por gabrielsch Ontem à(s) 10:55 am

» Casa da engine
por Alex FC Ontem à(s) 10:26 am

» [Tutorial] Sobre código parte 1 !
por gabriel33245900 Ontem à(s) 10:23 am

» [Thyago]sprites
por Thyago Qua Out 29, 2014 10:48 pm

» [TUTORIAL] Funções do Facebook
por itarodrigo Qua Out 29, 2014 9:55 pm

» 1nsane Codemasters
por gabriel33245900 Qua Out 29, 2014 6:47 pm

» [Duvida] Novo script de zoom
por Gonzo Qua Out 29, 2014 4:01 pm

» Jogos Mobile a partir do estudo de Jogos Antigos
por douglas444 Qua Out 29, 2014 3:00 pm

» Como conheceu a GMBR ?
por jose rocha Qua Out 29, 2014 1:04 pm

» Duvida em alarmes vs pausa manual
por jose rocha Qua Out 29, 2014 1:00 pm

» Precisa-se de Equipe
por Brenno557 Qua Out 29, 2014 12:19 pm

» [CQ#21] Run For Music - Alpha 2.5.1
por theguitarmester Qua Out 29, 2014 7:24 am

» Apresentando-me Sou Kloson
por theguitarmester Qua Out 29, 2014 6:56 am

» Enquetes
por gabriel33245900 Ter Out 28, 2014 8:49 pm

» Gui interativo e randomizar
por Isaque Onix Ter Out 28, 2014 7:36 pm

» [Projeto]Super Mario 75
por douglas444 Ter Out 28, 2014 7:33 pm

» [3D]Como fazer um pause
por DJDAVYD Ter Out 28, 2014 5:54 pm

» Preciso de Spriter(Sprite Maker) Artista grafico
por Lizarus Ter Out 28, 2014 5:49 pm

» GmJ#01 - Participe!
por Droka Ter Out 28, 2014 5:22 pm

» BOMBER TADS 2014
por PedroIgor Ter Out 28, 2014 9:29 am

» problemas com mp_grid_create
por Chingling152 Seg Out 27, 2014 9:46 pm

» [PEDIDO] Sprite papai noel
por guamaral Seg Out 27, 2014 7:19 pm

» Concurso Preferido
por Lauro Seg Out 27, 2014 6:03 pm

» [CQ#21] Resultados
por douglas444 Seg Out 27, 2014 12:54 pm

» Mary-A endless cursed bloody night
por douglas444 Seg Out 27, 2014 12:23 pm

» [ideia]Xadrez Moderno
por Thomaz Seg Out 27, 2014 11:22 am

» Como fazer Um Obj Fica A Uma Certa Distancia
por gabriel33245900 Dom Out 26, 2014 10:34 pm

» (resolvido) problemas com IA
por Thyago Dom Out 26, 2014 5:02 pm

» Criação de Equipe
por Brenno557 Dom Out 26, 2014 4:10 pm

» Sumiu a parte do codigo oO
por jose rocha Dom Out 26, 2014 1:35 pm

» CBNA Light Engine - Sombra Solar
por Black Studio Dom Out 26, 2014 12:59 pm

» engine balão de fala
por JoaoVanBlizzard Dom Out 26, 2014 12:21 pm

» Criação de Equipe de Desenvolvedores
por dharrison Dom Out 26, 2014 10:45 am

» Bug quando Colide com inimigo
por Vini Dom Out 26, 2014 10:33 am

» Acham que devo criar este projeto em versão GM?
por Vini Dom Out 26, 2014 10:15 am

» formaçao de equipe
por Brenno557 Dom Out 26, 2014 9:39 am

» O que acham dessa simulação de 3d?
por Brenno557 Dom Out 26, 2014 9:18 am

» [Resolvido] Bug com a DS_LIST
por Black Studio Sab Out 25, 2014 11:33 pm

» [Arte] Personagens do meu novo projeto
por JOZ. Sab Out 25, 2014 11:00 pm

» Problema estranho de gm
por gabriel33245900 Sab Out 25, 2014 9:42 pm

» Como Criar Um Objeto Que Siga O Player
por Gonçalves Sab Out 25, 2014 9:35 pm

» MapGen - Pt.1
por Gonçalves Sab Out 25, 2014 7:12 pm

» Exposição de consoles
por Gonzo Sab Out 25, 2014 6:22 pm

» [Recrutamento] Team Magma
por Skay Galaxte Sab Out 25, 2014 6:19 pm

» Problema de onde sai o tiro
por Vini Sab Out 25, 2014 4:53 pm

» [Engine] Som 3D
por gabrielsch Sab Out 25, 2014 4:16 pm

» Topógrafo Perdido 2 Alpha 0.1
por Skay Galaxte Sab Out 25, 2014 4:11 pm

» Como Resolver Este Bug Bizarro
por Gonçalves Sab Out 25, 2014 2:04 pm

» Ajuda Pra Código!!!!
por Skay Galaxte Sab Out 25, 2014 11:55 am

» Plobema com o gms
por WellingtonBecker Sab Out 25, 2014 11:54 am

» O que acham do meu 1x1 online?
por gabriel33245900 Sab Out 25, 2014 11:36 am

» [Apresentação] Cool Green 2.0 - Dark Version
por Alex FC Sab Out 25, 2014 10:35 am

» Match the Color
por allan_machado49 Sab Out 25, 2014 12:32 am

» Erro no exemplo Google Mobile ads
por fabiomwm Sex Out 24, 2014 11:36 pm

» Halloween 3d
por JoaoVanBlizzard Sex Out 24, 2014 10:46 pm

» Erro ao abrir executável do GMS
por Lauro Sex Out 24, 2014 2:01 pm

» Pergunta sobre o mouse em cima dos botoes
por guamaral Sex Out 24, 2014 1:59 pm

» Minha galeria de desenhos (douglas444)
por douglas444 Sex Out 24, 2014 1:35 pm

» troco engines uahuaahu
por Gonzo Sex Out 24, 2014 1:32 pm

» Criar templates e templates de templates
por Fledeber Sex Out 24, 2014 1:16 pm

» [TUTORIAL] Função facebook_graph_request
por Gonzo Sex Out 24, 2014 12:00 pm

» Island.pdf
por Tiger Qui Out 23, 2014 10:28 pm

» sprite sofre distorção
por Dotted Chaos Qui Out 23, 2014 7:06 pm

» [Grafico e programaçao] Bons?
por Isaque Onix Qui Out 23, 2014 3:42 pm

» Como fazer ir para uma room aleatoria?
por Thyago Qui Out 23, 2014 1:43 pm

» Dúvidas de como personalizar o meu load game
por Isaque Onix Qui Out 23, 2014 1:31 pm

» [CQ#22] GUERRA! O Ultimo CQ de 2014
por dharrison Qui Out 23, 2014 1:29 pm

» [Resolvido][ajuda] valor unico
por Isaque Onix Qui Out 23, 2014 12:55 pm

» Dúvida Estranha sobre Port on Screen/View in Room
por matheusco Qui Out 23, 2014 12:04 pm

» Como colidir,mas sem grudar na parede?
por vitorfernandes13 Qua Out 22, 2014 9:41 pm

» [Demo] Submundo 3D
por douglas444 Qua Out 22, 2014 8:48 pm

» [Como Faz?] Contador de jogo de corrida 3.2.1
por WellingtonBecker Qua Out 22, 2014 5:42 pm

» Splash_web no Game Maker
por Lauro Qua Out 22, 2014 2:38 pm

» Artes de conceito
por gabrielgeazi2 Qua Out 22, 2014 2:05 pm

» (Resolvido) game de tiro com visão isométrica?
por manobrother Qua Out 22, 2014 12:58 pm


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

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


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