Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: jorge_ihc en Octubre 28, 2010, 03:37:12 AM

Título: Mouse seguir m?s r?pido
Publicado por: jorge_ihc en Octubre 28, 2010, 03:37:12 AM
Hola, he creado un objeto(puntero) que sigue al mouse por el "step" y dentro una acci?n "execute code" x=mouse_x; y=mouse_y;,ademas cree el otro objeto(cuadrado) para que sea arrastrado por el mouse/puntero... lo hice por el evento "left button" con la acci?n "execute code"x=mouse_x; y=mouse_y;

El problema esta en que al arrastrarlo muy r?pidamente se queda en el camino el cuadrado(si lo hago lentamente si funciona)... como har?a para que el cuadrado siga al objeto m?s r?pido o no se quede en el camino... en caso que no se pueda, saber de alg?n script para reducir la velocidad del mouse del computador y luego de terminar el juego se restablezca..
:(
Título: Re: Mouse seguir m?s r?pido
Publicado por: Hackware en Octubre 28, 2010, 06:16:25 AM
P?sanos el editable, la verdad est? muy confuso...
Título: Re: Mouse seguir m?s r?pido
Publicado por: brunoxzx en Octubre 28, 2010, 06:20:37 AM
Yo si lo entendi, el problema es que cuando mueves el mouse muy rapido y como tu objeto deve de estar en el mismo lugar que el mouse se ve como si se, tele-transportara mmm intenta con esto
[gml]move_towards_point(mouse_x,mouse_y,5)// cambia la velocidad si te parece que se mueve muy lento[/gml]
edit: me falto poner la velocidad
Título: Re: Mouse seguir m?s r?pido
Publicado por: Hackware en Octubre 28, 2010, 06:24:39 AM
Es que yo confundo la acci?n "execute code" con la funci?n "execute_string()". XD
Título: Re: Mouse seguir m?s r?pido
Publicado por: brunoxzx en Octubre 28, 2010, 06:32:57 AM
XD si es que lo menciono como si fuera una funcion
Título: Re: Mouse seguir m?s r?pido
Publicado por: jorge_ihc en Octubre 28, 2010, 06:55:12 AM
Hola nuevamente, intente lo que dijiste o.o, parece como si el cuadrado temblara cuando lo cojo con el puntero.. y cuando lo muevo.. lo sigue, pero se ve como si corriera al puntero xD(como quien dice.."no me dejes puntero T.T") y no como si lo arrastrara :(, gracias de todos modos, espero que me puedan ayudar... aun sigo pensando que tal vez haya alg?n modo de reducir la velocidad del mouse =/, porque de ese modo funciona de lujo, casi perfecto xD
Título: Re: Mouse seguir m?s r?pido
Publicado por: brunoxzx en Octubre 28, 2010, 07:38:05 AM
mmm y que tal as?
[gml]move_towards_point(mouse_x,mouse_y,distance_to_point(mouse_x,mouse_y))[/gml]
Título: Re: Mouse seguir m?s r?pido
Publicado por: Gerardo en Octubre 28, 2010, 07:56:38 AM
que te parece si intentas esto?

en el evento de mouse left pressed:
[gml]arrastre=true
initx=mouse_x-x
inity=mouse_y-y[/gml]
en steep:
[gml]if arrastre=true
{
x=mouse_x-initx
y=mouse_y-inity
}[/gml]
y por ultimo en global mouse global left released:
[gml]arrastre=false[/gml]

creo que deber?a funcionar bien, espero te ayude.


edit: te agrego un ejemplo pa' que veas como funciona
Título: Re: Mouse seguir m?s r?pido
Publicado por: hernis en Octubre 28, 2010, 07:59:19 AM
no, eso se debe a la velocidad del juego
ponle en 150 o mas si kieres  8) y estara exactamente en la misma posicion del raton
Título: Re: Mouse seguir m?s r?pido
Publicado por: Hackware en Octubre 28, 2010, 09:07:34 AM
Yo me inclino m?s por la respuesta de Gerardo. As? como lo menciona ?l queda id?ntico a como si arrastraras un icono desde el Explorer.
Título: Re: Mouse seguir m?s r?pido
Publicado por: SP_Christian en Octubre 28, 2010, 12:58:06 PM
Prueba con esto:
inicializa una variable global.objeto_a_arrastrar = noone;

Evento 'mouse_left_pressed' de cualquier objeto arrastrable:

[gml]global.objeto_a_arrastrar = id;[/gml]

Evento 'mouse_left_release'
[gml]global.objeto_a_arrastrar=noone;[/gml]

Y en otro objeto controlador, que ejecute a cada step:

[gml]if global.objeto_a_arrastrar!=noone {
global.objeto_a_arrastrar.x = mouse_x
global.objeto_a_arrastrar.y = mouse_y
}[/gml]

Eso deberia funcionar bien, supuestamente...

Título: Re: Mouse seguir m?s r?pido
Publicado por: brunoxzx en Octubre 28, 2010, 03:42:39 PM
Cita de: Gerardo en Octubre 28, 2010, 07:56:38 AM
que te parece si intentas esto?

en el evento de mouse left pressed:
[gml]arrastre=true
initx=mouse_x-x
inity=mouse_y-y[/gml]
en steep:
[gml]if arrastre=true
{
x=mouse_x-initx
y=mouse_y-inity
}[/gml]
y por ultimo en global mouse global left released:
[gml]arrastre=false[/gml]

creo que deber?a funcionar bien, espero te ayude.


edit: te agrego un ejemplo pa' que veas como funciona

MMM si pero por lo que yo entendi lo que el quiere no es eso, lo que el quiere es que su personaje se mueva a la misma velocidad que el mouse, sin que se vea que se teletransporte, tambien la opcion que da hernis es buena pero 150  :o a esa velocidad la mayoria de los monitores no lo podr?an percibir creo que con 60 esta bien  :D
Título: Re: Mouse seguir m?s r?pido
Publicado por: Gerardo en Octubre 28, 2010, 11:23:12 PM
Cita de: brunoxzx en Octubre 28, 2010, 03:42:39 PM
MMM si pero por lo que yo entendi lo que el quiere no es eso, lo que el quiere es que su personaje se mueva a la misma velocidad que el mouse, sin que se vea que se teletransporte, tambien la opcion que da hernis es buena pero 150  :o a esa velocidad la mayoria de los monitores no lo podr?an percibir creo que con 60 esta bien  :D

bueno, es que con ese c?digo el objeto no se teletransporta, de verdad sigue al mouse aun si va muy r?pido ;D
Me pareci? mas bien que solo quiere poder arrastrarlo sin que el objeto se quede en el camino :P
Título: Re: Mouse seguir m?s r?pido
Publicado por: Zeneke en Octubre 28, 2010, 11:39:23 PM
Que tal si en el evento Draw del objeto que tiene seguir al rat?n pones esto:
[gml]draw_sprite(sprite_index,0,mouse_x,mouse_y);[/gml]

La velocidad del rat?n no se puede modificar y lo de poner la velocidad del juego a 150??? Que habeis fumao? xD


Saludos!
Título: Re: Mouse seguir m?s r?pido
Publicado por: jorge_ihc en Octubre 29, 2010, 06:28:30 AM
Hola, prob? lo que dijo "Gerardo" o.o, al inicio no me funcion? >.<, pero luego en el evento "Create" le puse la acci?n "set variable" variable=arrastre y value=false xD y reci?n funciono =D, funciona de maravilla!!! muchas gracias =D!!! T.T, les estoy muy agradecido =), y gracias tambi?n a los dem?s aportes =).

Salu2   :D
Título: Re: Mouse seguir m?s r?pido
Publicado por: Hackware en Octubre 29, 2010, 06:39:28 AM
Jejeje, sab?a que eso era lo que necesitabas, por eso yo vot? por Gerardo ?Bravo Gerardo! XD
Título: Re: Mouse seguir m?s r?pido
Publicado por: brunoxzx en Octubre 29, 2010, 06:49:25 AM
Hmmmm Bueno segun yo el codigo de gerardo lo que hacia era que el objeto se arrastrar exactamente por la parte en la que le dio click  :-[ pero bueno ?BRAVO GERARDO!
Título: Re: Mouse seguir m?s r?pido
Publicado por: Gerardo en Octubre 29, 2010, 11:05:33 PM
Cita de: jorge_ihc en Octubre 29, 2010, 06:28:30 AM
Hola, prob? lo que dijo "Gerardo" o.o, al inicio no me funcion? >.<, pero luego en el evento "Create" le puse la acci?n "set variable" variable=arrastre y value=false xD y reci?n funciono =D, funciona de maravilla!!! muchas gracias =D!!! T.T, les estoy muy agradecido =), y gracias tambi?n a los dem?s aportes =).

Salu2   :D

ah es que siempre tengo eso de 'treat unitialized variables as value 0' en opciones, asi que suelo olvidar iniciar las variables en create, perdon  ;D

Me alegra mucho que te haya servido.
y gracias a todos  ;D