Login

Esqueci minha senha

Últimos assuntos
» [Dúvida GM:S] - Resolução
por luan.alc Hoje à(s) 5:17 pm

» Passar de Fases
por Mestre Rá Hoje à(s) 4:29 pm

» Sprite virar conforme a posição do mouse
por Mateus O de Andrade Hoje à(s) 3:17 pm

» [#CQ20] Sobrevivência
por PedroX Hoje à(s) 2:25 pm

» Help! - Show message
por tha.sribeiro Hoje à(s) 12:37 pm

» [ajuda]carregar script externo
por Isaque Onix Hoje à(s) 12:32 pm

» Usando as Funções Random
por AxeInLine Hoje à(s) 11:52 am

» Avaliação - Animação
por Kabeção Hoje à(s) 10:50 am

» [CQ#20] Monkey EVOlution
por leocc Hoje à(s) 10:18 am

» Gomez vs Aliens[CQ-20]
por luix_337 Hoje à(s) 12:59 am

» [#CQ20] Robot Survivor
por DieBoy Ontem à(s) 11:55 pm

» [#CQ-20] Uddy Eagle Escape
por dharrison Ontem à(s) 11:34 pm

» Ajuda com animação
por dharrison Ontem à(s) 11:28 pm

» [ATIVA] Pixel Place 2014
por PedroMatoso Ontem à(s) 10:24 pm

» [Tutorial] Tratando strings recebidas do servidor
por GabrielXavier Ontem à(s) 9:36 pm

» como alterar o codigo fonte de um jogo??
por blackman Ontem à(s) 8:53 pm

» (resolvido) animar com spriter
por manobrother Ontem à(s) 8:33 pm

» [CQ-20]Ataque a torre
por Tanker GT Ontem à(s) 7:23 pm

» Ajuda com keyboard_check_direct_pressed()
por Igor KinGamer Ontem à(s) 7:21 pm

» Criar instancia de acordo com angulo do canhão
por matheusco Ontem à(s) 6:57 pm

» [#CQ20] The diamond of my life
por AxeInLine Ontem à(s) 4:44 pm

» Como fazer uma pause
por guamaral Ontem à(s) 4:12 pm

» Física
por Willy Ontem à(s) 3:13 pm

» Calendário de concursos
por dharrison Ontem à(s) 12:46 pm

» Erro bizarro.
por PedroX Ontem à(s) 12:41 pm

» [THYAGO]Mega soccer
por Thyago Ontem à(s) 12:25 pm

» [CQ#20] Bob snow - Avalanche downhill
por cascavelo Ontem à(s) 12:08 pm

» [CQ#20]Mary-A endless cursed bloody night -atualiz
por JoaoVanBlizzard Ontem à(s) 12:05 pm

» Novos administradores
por isaac138 Ontem à(s) 11:46 am

» [Sugestão] Botão "Curtir" igual esse aqui (foto)
por superrafao Ontem à(s) 10:25 am

» Como se aprende Inglês? Como você aprendeu?
por mrHarris Ontem à(s) 1:46 am

» É possível criar um editor de mapa?
por Camin Sab Ago 30, 2014 11:56 pm

» Projeto Escolar - Criação de jogos eletrônicos
por ChicoGamer Sab Ago 30, 2014 5:43 pm

» [CQ#20] ALAN PSYCHO [completo+download]
por dharrison Sab Ago 30, 2014 9:17 am

» Sistema parecido com o do google ideias pf
por itarodrigo Sex Ago 29, 2014 7:50 pm

» [Ajuda] Erro Android
por itarodrigo Sex Ago 29, 2014 7:48 pm

» Como fazer a aceleração do player
por guamaral Sex Ago 29, 2014 7:45 pm

» [SUGESTÃO] Tutoriais acerca de extensões e Dlls
por AlexBosquin Sex Ago 29, 2014 4:35 pm

» Zshot(Zombie shot)
por dharrison Sex Ago 29, 2014 4:33 pm

» [Extensão] LoadExt
por Lauro Sex Ago 29, 2014 3:27 pm

» Dúvida com Score
por fabert Sex Ago 29, 2014 3:11 pm

» [Resolvido] Mouse Pressed e Draw
por Isaque Onix Sex Ago 29, 2014 11:09 am

» como disparar projeteis??
por Isaque Onix Sex Ago 29, 2014 1:40 am

» [Video aula]Criando mapas facilmente(scripts)
por Isaque Onix Qui Ago 28, 2014 11:35 pm

» [Resolvido]Despertador
por dharrison Qui Ago 28, 2014 10:39 pm

» Como criar um mapa da room
por Isaque Onix Qui Ago 28, 2014 5:23 pm

» Ajuda com grafico...
por Isaque Onix Qui Ago 28, 2014 3:21 pm

» Pesquisa sobre mercado de jogos
por DieBoy Qui Ago 28, 2014 2:56 pm

» Como Criar Um IA
por Susano Qui Ago 28, 2014 2:49 pm

» Erro com game Maker server!!
por superrafao Qui Ago 28, 2014 2:15 pm

» Igualar variaveis
por uilson Qui Ago 28, 2014 1:28 pm

» [RESOLVIDO] Como Abrir arquivo de txt online
por GabrielXavier Qui Ago 28, 2014 11:35 am

» Como fazer uma barra de vida em cima do player
por dharrison Qua Ago 27, 2014 8:35 pm

» duvida com sistema de sprite diferente
por Isaque Onix Qua Ago 27, 2014 4:56 pm

» Meus Efeitos sonoros
por Mateus O de Andrade Qua Ago 27, 2014 1:16 pm

» Game Maker - Aula 9 - Instrução While
por Isaque Onix Qua Ago 27, 2014 11:50 am

» [resolvido]Mudar Torque ingame -physics-
por alexfuziokaandrade7 Ter Ago 26, 2014 9:29 pm

» Sistema de microtransação
por tiotolas Ter Ago 26, 2014 6:22 pm

» como desabilitar um objeto sem que ele suma
por etogodoy Ter Ago 26, 2014 6:18 pm

» Acentos GMS
por ChicoGamer Ter Ago 26, 2014 5:35 pm

» Clone de Boot Hill
por kodmaster Ter Ago 26, 2014 5:22 pm

» Como Ocultar Um Objeto Drawn Em Uma View
por Mateus O de Andrade Ter Ago 26, 2014 4:19 pm

» [Projeto] Space Clash
por Mateus O de Andrade Ter Ago 26, 2014 12:36 pm

» [ajuda] Barra representando uma porcentagem
por dharrison Ter Ago 26, 2014 11:40 am

» Vocês comprariam engines?
por Willy Ter Ago 26, 2014 12:18 am

» Game Maker Studio ler arquivos externos
por AlexBosquin Seg Ago 25, 2014 10:20 pm

» matriz em ordem numérica
por diassis Seg Ago 25, 2014 2:47 pm

» Sprites, Tiles e Gráficos Isometricos Pintados
por diassis Seg Ago 25, 2014 1:46 pm

» Menu De Upgrades, Fases, Itens e Pausa
por Mestre Rá Seg Ago 25, 2014 8:29 am

» Duvida com detecção de cores
por Willy Dom Ago 24, 2014 8:34 pm

» [Resolvido]Como fazer a instancia "sugar" outra instancia?
por |AoX|-richard Dom Ago 24, 2014 7:25 pm

» Posso criar jogos com os graficos Action/RPG Maker
por ChicoGamer Dom Ago 24, 2014 6:57 pm

» Um simples treinamento
por Kabeção Dom Ago 24, 2014 6:17 pm

» [Entrevista] Tanker GT
por PedroX Dom Ago 24, 2014 3:31 pm

» [Resolvido]duvida com colisões por lados
por AlexBosquin Dom Ago 24, 2014 12:47 pm

» Pulo top down
por Thyago Sab Ago 23, 2014 10:18 pm

» Gemtheo
por theclay Sab Ago 23, 2014 10:05 pm

» [CQ#20] Sobrevivendo na Terra [jogo completo]
por allan_machado49 Sab Ago 23, 2014 8:17 pm

» Problema com keyboard_check_pressed
por itarodrigo Sab Ago 23, 2014 7:29 pm

» Too Many Gears
por dharrison Sab Ago 23, 2014 3:43 pm

» mira com o mouse
por Dotted Chaos Sab Ago 23, 2014 2:10 pm

» Crio Trilha Sonora para Games!
por Isaias Malafaia Sex Ago 22, 2014 11:40 pm

» [CQ#20] Tower of Challenge
por PedroX Sex Ago 22, 2014 7:17 pm

» Sozinho na selva [#CQ-20] download disponivel
por PedroX Sex Ago 22, 2014 7:16 pm

» Playing Dead
por Eudes - Hyo Sex Ago 22, 2014 3:37 pm

» 7 dicas para melhorar o desempenho dos seus jogos
por Kabeção Sex Ago 22, 2014 3:27 pm

» Calabouço Fantasma
por JoaoVanBlizzard Sex Ago 22, 2014 2:41 pm

» [Campeão CQ-19]À arca
por Tanker GT Sex Ago 22, 2014 12:23 am

» [CQ#20] Apocalipse Z'
por JoaoVanBlizzard Qui Ago 21, 2014 7:58 pm

» duvida instance_nearest()
por alexfuziokaandrade7 Qui Ago 21, 2014 6:20 pm

» [RESOLVIDO] Problema com código, Collision_line()
por Mateus O de Andrade Qui Ago 21, 2014 12:47 pm

» Meu Primeiro Jogo - Flappy Plane
por paulovmdutra Qui Ago 21, 2014 12:44 pm

» duvida towerfall
por matheusco Qua Ago 20, 2014 11:54 pm

» Game Maker Studio Steam - completo com exporters
por makgamer Qua Ago 20, 2014 9:38 pm

» Ajuda
por Isaque Onix Qua Ago 20, 2014 6:01 pm

» Água e ar
por matheusco Qua Ago 20, 2014 5:31 pm

» Rain of Fire and Meteors [#CQ-20]
por Fagner Qua Ago 20, 2014 5:14 pm

» [Pedido Script]Mandar e-mail pelo GMS
por Gabreel Qua Ago 20, 2014 3:40 pm

» Novo na área
por Bregantino Qua Ago 20, 2014 2:23 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: 2939
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: 116

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: 2939
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: 116

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: 2939
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: 116

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: 2939
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: 116

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: 2939
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: 116

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: 2939
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: 116

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: 2939
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: 116

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

- Tópicos similares

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