Obrigado por visitar a The Game Makers Brasil Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais. |
mouse_check_button duvidas
mouse_check_button duvidas
Porque quando uso o evento do mouse left button ele se comporta diferente do codigo usando mouse_check_button(mb_left)?
Quando uso mouse left button, ele verifica se eu cliquei sobre o obj que está usando este evento, mas se usar mouse_check_button(mb_left) em um step, ele verifica se o botão esquerdo do mouse foi apertado, independente de ter sido clicado neste obj ou não, ou seja, funciona como um global mouse left button. Como fazer um mouse left button por código em um step?
Quando uso mouse left button, ele verifica se eu cliquei sobre o obj que está usando este evento, mas se usar mouse_check_button(mb_left) em um step, ele verifica se o botão esquerdo do mouse foi apertado, independente de ter sido clicado neste obj ou não, ou seja, funciona como um global mouse left button. Como fazer um mouse left button por código em um step?
- Chuaschinai
- Colaborador
- Reações: 6
- Mensagens: 198
-
Re: mouse_check_button duvidas
Bom é porque o evento Mouse Pressed que você cria no objeto e dele mesmo então ele se refere a somente ele, agora quando você coloca algum codigo no step do objeto ele não se limita a eles da mesma forma que o Global mouse tambem não porque ele é global, mas a sim uma forma simples de fazer isto, veja que é possível você delimitar uma área de checagem para que ele detecte o objeto ou botão:
Espero que te entendido fiz e nem testei, mas o creio que seja isso que você esteja procurando, qualquer coisa tamo ae...
Código: Selecionar todos
/// CREATE
mouse_enter = false; // checa se o mouse este dentro do botão ou não ect...
Código: Selecionar todos
/// STEP
var bt_height, bt_width;
bt_height = 64; // altura do botão
bt_width = 256; // largura do botão
if(mouse_check_button_pressed(mb_left)){ // caso botão esquerdo do mouse seja pressionado
if(mouse_x > x-bt_width/2 && mouse_x < x+bt_width/2 && mouse_y > y-bt_height/2 && mouse_y < y+bt_height/2){ // faz a checagem nos eixos x e y do objeto a ser checado
mouse_enter = true; // caso esteja dentro do objeto determina o valor da var do create em verdadeiro;
} else mouse_enter = false; // caso não continua determinando em falso
}
- Superbomber
- Programador
- Reações: 0
- Mensagens: 283
- Localização: Natal-RN
-
Re: mouse_check_button duvidas
Apenas corrigindo a informacao:
- No [local] Mouse Check, alem de verificar o mouse esta sendo pressionado tambem verifica se o ponto na posicao do Mouse colide com a mascara do objeto.
- O Global Mouse Check, apenas verifica se o Mouse esta sendo pressionado.
Uma maneira pratica e simples de reproduzir isso:
O resultado e identico ao evento (Mouse > Left button).
Leia no docs sobre as funcoes mouse_check_* e collision_*.
Bye.
- No [local] Mouse Check, alem de verificar o mouse esta sendo pressionado tambem verifica se o ponto na posicao do Mouse colide com a mascara do objeto.
- O Global Mouse Check, apenas verifica se o Mouse esta sendo pressionado.
Uma maneira pratica e simples de reproduzir isso:
Código: Selecionar todos
if( collision_point(mouse_x, mouse_y, id, true, false) && mouse_check_button(mb_left) ){
// Codigo aqui
}
Leia no docs sobre as funcoes mouse_check_* e collision_*.
Bye.
Entrem neste link com o JavaScript desabilitado e vejam a mágica: https://tgmbrasil.com.br/?PageSpeed=n0script
Re: mouse_check_button duvidas
to usando esse collision_point, mas achei que tivesse algum comando específico. Obg pessoal :D
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 0 visitante