Seguir o Mouse

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

Seguir o Mouse

Mensagem por jp_away em Sab 14 Nov 2009, 09:15

como faz para o "obj_x" seguir o mouse, sem clicar???

jp_away

Ranking : Nota D
Número de Mensagens : 859
Data de inscrição : 05/09/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.jpgamesweb.xpg.com.br/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por shatterhand2 em Sab 14 Nov 2009, 09:34

maneira simples, porca e rápida, pra você "pescar" a idéia e achar uma maneira melhor de fazer

no step do obj


Código:

begin
if x > mouse_x then x-=4 else x +=4
if y > mouse_y then y-=4 else y+=4
end

shatterhand2

Número de Mensagens : 645
Idade : 33
Data de inscrição : 21/10/2009
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://shatterhand.beatthegame.net

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Denis Lemos em Sab 14 Nov 2009, 13:52

Só que desse jeito "shatterhand2", quando o mouse ficar parado o "obj_X" vai alcançá-lo e ficar tremendo, pois no código você colocou para que se o "obj_X" estiver a direita do mouse, ele ir para esquerda " senão" ir para direita... Só que aí, quando o x do "obj_X" for igual ao x do mouse, ele não será maior e será puxado para direita, e logo depois será maior e será puxado para esquerda, e vai ficar nisso sempre :

Então se coloca assim para resolver esse problema:
Código:

if x > mouse_x { x-=4}
if x < mouse_x { x+=4}
if y > mouse_y {y-=4}
if y < mouse_y {y+=4}
Dá um pouco mais de códigos , mas fica bom, o melhor seria ousar "move_towards_point, só que ocorre o mesmo erro de tremedeira !

Denis Lemos

Número de Mensagens : 938
Idade : 28
Data de inscrição : 17/05/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por stlingt em Sab 14 Nov 2009, 14:08

quando eu naum tinha o gm pro eu usava esse código pra fazer o mouse mais dah certo tbm em objs(se tiver algo errado comente)

Código:

x=mouse_x
y=mouse_y
x+=10 //se o obj_x estiver um pouco longe do mouse altere esse 10 para o seu n
y+=10

stlingt

Número de Mensagens : 200
Idade : 18
Data de inscrição : 01/03/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Kevin em Sab 14 Nov 2009, 14:19

bem.. não entendi muito bem... mais você pode colocar isso no STEP do objeto...

Código:
x=mouse_x
y=mouse_y

se você quer um código sem tremedeira o código à cima é 10...

só que se vc quiser que o objeto siga devagar o mouse faça assim:

Código:
move_towards_point(mouse_x,mouse_y,3)
if distance_to_point(mouse_x,mouse_y) < 0.1{move_towards_point(mouse_x,mouse_y,0)}

assim ele não tremerá... e o objeto não ficará no centro do objeto como geralmente fica Happy... ou seja... a centralização do objeto não afetará muito nessa situação Happy...

FLWs

Keké Games© Surprised

Kevin

Ranking : Nota C
Número de Mensagens : 1166
Idade : 22
Data de inscrição : 14/11/2008
Notas recebidas : C - C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

http://www.programaCODM.webs.com/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Denis Lemos em Sab 14 Nov 2009, 14:27

stlingt... Você não precisa colocar aquele "x+=10" e o "y+=10" no seu código, basta abrir a sua sprite do mouse e apertar o botão de centralizar, assim o "x" e o "y" dela ficam bem no centro e se ajustará certinho com o mouse !

Só que não deu para saber se ele quer que o "obj_X" siga o mouse ou seja o mouse... Se for a primeira opição, é só usar os códigos do "shatterhand2" ou do "kekegames" se for a segunda, usar o código do "stlingt" !

Denis Lemos

Número de Mensagens : 938
Idade : 28
Data de inscrição : 17/05/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por jp_away em Sab 14 Nov 2009, 16:11

Bem eu cometi um erro, me esprecei mal, eu quero que o objeto seja o mouse. depois testo o código do [b]stlingt[/], tô meio com pressa... desculpem-me

jp_away

Ranking : Nota D
Número de Mensagens : 859
Data de inscrição : 05/09/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.jpgamesweb.xpg.com.br/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Kevin em Sab 14 Nov 2009, 16:20

é só usar o código q te mandei...

Código:
x=mouse_x
y=mouse_y

bem.. mais se vc querer colocar uma figura no mouse... como esse do dedo quando vc ta em cima dum link e etc... isso é da versão pro

Código:
cursor_sprite = // aqui coloque o nome da sprite que vc quer trocar.. ou seja ... qual imagem vc quer colocar no cursor

bem é isuu

flws

Kevin

Ranking : Nota C
Número de Mensagens : 1166
Idade : 22
Data de inscrição : 14/11/2008
Notas recebidas : C - C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

http://www.programaCODM.webs.com/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por ieu em Sab 14 Nov 2009, 17:37

kekegames uma obsevação antes do
Código:
cursor_sprite = // aqui coloque o nome da sprite que vc quer trocar.. ou seja ... qual imagem vc quer colocar no cursor
tem que colocar:
Código:
window_set_cursor(cr_none)
e eu acho que ele tambem quer checar coliso~es com o mouse se for coloca
Código:
 if position_meeting(mouse_x,mouse_y,obj)
{
//executar algo
}
trocando o obj pelo o objeto que vai colidir com o mouse
espero ter ajudado
vlw

ieu

Número de Mensagens : 122
Data de inscrição : 26/09/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Kevin em Sab 14 Nov 2009, 17:43

Bem.. Serve Também Happy...
mais o modo com o objeto seria melhor.. porque é só ele fazer os eventos com o objeto... ou seja... colisão com o objeto que segue o mouse..

e sobre o window_set_cursor(cr_none) esqueci de po :S

VLW ieu (rsrs)

Até +

Fui
KKG© Surprised

Kevin

Ranking : Nota C
Número de Mensagens : 1166
Idade : 22
Data de inscrição : 14/11/2008
Notas recebidas : C - C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

http://www.programaCODM.webs.com/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por jp_away em Sab 14 Nov 2009, 17:55

como faço para começar ali onde tah mostrando a imagem e dps que eu por o mouse ele vira a bolinha..


jp_away

Ranking : Nota D
Número de Mensagens : 859
Data de inscrição : 05/09/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.jpgamesweb.xpg.com.br/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por ieu em Sab 14 Nov 2009, 18:03

tem um codigo simples
no create:
Código:
seguir=false
no step:
Código:
if position_meeting(mouse_x,mouse_y,self)
{
seguir=true
}
if seguir=true
{
x=mouse_x
y=mouse_y
}
não testei mas axo que funciona
espero ter ajudado
vlw

ieu

Número de Mensagens : 122
Data de inscrição : 26/09/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Kevin em Sab 14 Nov 2009, 18:12

bem agora intendi oq ele quer Happy (acho)

ele quer movimentar a bolinha por código...
então faça assim:

no create da bola:

Código:
seguir=false

no STEP da bola:

Código:
if position_meeting(mouse_x,mouse_y,self){seguir=true}

if seguir=true{move_towards_point(mouse_x,mouse_y,2)}

FLWs

KKG©

Kevin

Ranking : Nota C
Número de Mensagens : 1166
Idade : 22
Data de inscrição : 14/11/2008
Notas recebidas : C - C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

http://www.programaCODM.webs.com/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por ieu em Sab 14 Nov 2009, 18:16

bem agora intendi oq ele quer (acho)

ele quer movimentar a bolinha por código...
então faça assim:

no create da bola:


Código:
seguir=false


no STEP da bola:


Código:
if position_meeting(mouse_x,mouse_y,self){seguir=true}

if seguir=true{move_towards_point(mouse_x,mouse_y,2)}


FLWs

KKG©
eu axo que eu dise algo igualsinho não? Shocked bem mais em toda ocsião cade ele que não responde ?

ieu

Número de Mensagens : 122
Data de inscrição : 26/09/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Kevin em Sab 14 Nov 2009, 18:23

quem não responde????

õÔ

Kevin

Ranking : Nota C
Número de Mensagens : 1166
Idade : 22
Data de inscrição : 14/11/2008
Notas recebidas : C - C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

http://www.programaCODM.webs.com/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por jp_away em Sab 14 Nov 2009, 20:35

vamos dizer que é o que eu quero e que não é. até aí tudo jóia, mais o mouse tem que somir(a setinha) se me ajudarem aki eu juro que parô Happy

jp_away

Ranking : Nota D
Número de Mensagens : 859
Data de inscrição : 05/09/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.jpgamesweb.xpg.com.br/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Igor KinGamer em Sab 14 Nov 2009, 20:43

É só acrescentar ali onde a bola começa a seguir o mouse:

Código:
window_set_cursor(cr_none);

Se quiser que a seta reapareça:

Código:
window_set_cursor(cr_default);
(cr_default ou cr_arrow, os dois darão na mesma)

Igor KinGamer

Número de Mensagens : 890
Idade : 21
Data de inscrição : 26/09/2008
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por jp_away em Sab 14 Nov 2009, 20:52

tipow eu queria quando o mouse tiver em cima da bola, ele desaparecece... e deixar a bolinha sem tremeer

jp_away

Ranking : Nota D
Número de Mensagens : 859
Data de inscrição : 05/09/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.jpgamesweb.xpg.com.br/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por ieu em Sab 14 Nov 2009, 20:57

troca aquela parte do step por isso:
Código:
if position_meeting(mouse_x,mouse_y,self)
{
seguir=true
}
if seguir=true
{
window_set_cursor(cr_none);
x=mouse_x;
y=mouse_y;
}

ieu

Número de Mensagens : 122
Data de inscrição : 26/09/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por jp_away em Sab 14 Nov 2009, 20:59

aleluia... vlw a todos.. em breve eu colocarei o jogo que eu estou usando isto. muito obrigado!

jp_away

Ranking : Nota D
Número de Mensagens : 859
Data de inscrição : 05/09/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.jpgamesweb.xpg.com.br/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por shatterhand2 em Sab 14 Nov 2009, 21:39

Denis, o seu código vai dar a tremedeira tambem...

Digamos que você esteja na posixao 10, e o mouse na 12

como vc soma 4, voce ira pra 14.... e na proxima vc diminuira 4, e irá pra 10... e isso se repetirá infinitamente.

Eu sei a maneira certa de fazer isso sem nenhuma dificuldade, eu só acho que é mais válido dar os primeiros passos e deixar o cara pensar sozinho depois....



Código:


if x > mouse_x-4 and x < mouse_x+4 then x = mouse_x else
if if x <= mouse_x+ 4 then x+=4 else x-=4

depois só repetir o mesmo raciocinio com Y

pra sumir, é só colocar

Código:

if x = mouse_x and y = mouse_y then instance_destroy()  // (ou visible = false se for o caso)

Junte esse código com o código para fazer a bolinha seguir só depois de ser enconstada pelo ponteiro do mouse, e você deve ter o que precisa.


Quando eu falar que fiz um código rápido, porco e simples, acredite que não é pq eu não posso fazer melhor Smile Smile Smile


Move_towards_point é uma das funções que considero redundante no Game Maker... você pode programar essa função "na mão" com uma facilidade absurda, ela não precisava existir. É como existir uma função " add_numbers (n1,n2) " que retorne a soma de N1 com N2 ....

Edit - Duh... estupido eu, agora que vi que voce nao quer que a bolinha simplesmente siga, e sim que a bolinha se TORNE o ponteiro do mouse. Bem, se algum dia vc quiser que a bolinha siga o mouse mais lentamente, tai uma maneira de fazer.

shatterhand2

Número de Mensagens : 645
Idade : 33
Data de inscrição : 21/10/2009
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://shatterhand.beatthegame.net

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por jp_away em Sab 14 Nov 2009, 21:42

shatterhand2 o do denis deu certo e nao deu tremedeira, brigado mesmo assim

jp_away

Ranking : Nota D
Número de Mensagens : 859
Data de inscrição : 05/09/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.jpgamesweb.xpg.com.br/

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por shatterhand2 em Sab 14 Nov 2009, 21:50

Se voce destruir o objeto qdo ele encosta na bola, nenhum dos dois vai dar tremedeira, pq o objeto vai ser destruido antes de começar a tremer.

No caso do codigo do Denis, nao vai dar se a distancia entre a bola e o mouse for um multiplo de 4. Se nao for, x nunca vai ser igual mouse_x e y nunca vai ser igual mouse_y, fazendo o objeto ir e voltar em cima de uma mesma posicao.

Se tudo se mover sempre com velocidade de 4 pixels pra todas as direcoes, o problema nunca vai acontecer.... se bem q nao tem muito como controlar a velocidade do ponteiro do mouse dessa forma.

shatterhand2

Número de Mensagens : 645
Idade : 33
Data de inscrição : 21/10/2009
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://shatterhand.beatthegame.net

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Denis Lemos em Sab 14 Nov 2009, 22:05

Denis, o seu código vai dar a tremedeira tambem...

Digamos que você esteja na posixao 10, e o mouse na 12

como vc soma 4, voce ira pra 14.... e na proxima vc diminuira 4, e irá pra 10... e isso se repetirá infinitamente.

Não dá tremedeira não, pois eu testei antes e funcionou certinho,e isso sem destruir nenhum objeto ! Se não acreditar, copie o meu código e teste vc também e verá oque acontece !


Quando eu falar que fiz um código rápido, porco e simples, acredite que não é pq eu não posso fazer melhor
Eu sei disso, eu só quiz ajudar o JP_away, e peguei o seu código como base !
Em nenhum momento quiz te ofender ou fazer parecer que vc não sabe fazer !
Move_towards_point é uma das funções que considero redundante no Game Maker... você pode programar essa função "na mão" com uma facilidade absurda, ela não precisava existir. É como existir uma função " add_numbers (n1,n2) " que retorne a soma de N1 com N2 ....
Concordo plenamente, e tem muitas mais que se pode fazer na mão mesmo, por exemplo: GRAVITY e FRICTION que são as mais barbadas até para mim que estou aprendendo á programar !

Denis Lemos

Número de Mensagens : 938
Idade : 28
Data de inscrição : 17/05/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Seguir o Mouse

Mensagem por Conteúdo patrocinado Hoje à(s) 22:26


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