Tengo un botón que arrastro en el eje X con el mouse; obviamente haciendo algo como:
if (mouse_check_button(mb_left){x = mouse_x}
Pero el problema es que necesito que la posición de ese botón sea relativa a otro objeto, pero como siempre toma la posición X del mouse, nunca es relativo al otro objeto, ¿Alguna idea de como podría hacer el botón relativo al otro objeto aún cambiando de posición con el mouse? :-\
Si quieres arrastrar el botón con el mouse tienes que usar las coordenadas del mouse, ¿por qué quieres que la posición del botón sea relativa a la posición del otro objeto? Si usas la posición de otro objeto, entonces no respondería al mouse, a menos que tomes en cuenta la posición del mouse y del objeto y saques un promedio, lo que produciría un comportamiento raro
Cita de: penumbra en Diciembre 21, 2014, 01:22:17 AM
Si quieres arrastrar el botón con el mouse tienes que usar las coordenadas del mouse, ¿por qué quieres que la posición del botón sea relativa a la posición del otro objeto? Si usas la posición de otro objeto, entonces no respondería al mouse, a menos que tomes en cuenta la posición del mouse y del objeto y saques un promedio, lo que produciría un comportamiento raro
Porque el botón va encima de un objeto base, y si el objeto base se mueve, el botón debería moverse con el :-\
¿No hay forma de que al soltar el botón, la posición en que se encuentra se vuelva relativa a la del otro objeto? ???
Cita de: Ynfiniti en Diciembre 21, 2014, 01:29:08 AM
Porque el botón va encima de un objeto base, y si el objeto base se mueve, el botón debería moverse con el :-\
¿Y por qué no mueves el objeto base mediante el ratón, y haces que el botón siga al objeto base? En el objeto base:
[gml]
if (mouse_check_button(mb_left)
{
x = mouse_x
obj_boton.x = x + offset
}[/gml]
offset seria una distancia de separación si es que el botón no está exactamente alineado con el origen del objeto base (puede ser negativa, dependiendo de dónde se quiera colocar el botón respecto al objeto base)
Obvio que también se puede al revés, mover el botón y hacer que el objeto base lo siga
Cita de: Ynfiniti en Diciembre 21, 2014, 01:31:36 AM
¿No hay forma de que al soltar el botón, la posición en que se encuentra se vuelva relativa a la del otro objeto? ???
La verdad no entiendo el comportamiento que quieres lograr. Pero el código anterior hace lo que mencionaste antes: si el objeto base se mueve, el botón se mueve con él (en x)
Es para algo como esto:
(http://img110.xooimage.com/files/d/6/9/barra-491efd9.jpg)
El botón deslizable de una barra, pero el objeto de la base gris se moverá horizontalmente y el botón debería quedarse justo donde se deje relativamente con el objeto base :-\
Ya veo. Aqui dejo un ejemplo. El objeto del botón circular (obj_slider) usa la función draw_rectangle para dibujar la barra central
http://www.mediafire.com/download/34yf6oqn36bsfqr/control_deslizante.gmz (http://www.mediafire.com/download/34yf6oqn36bsfqr/control_deslizante.gmz)
[spoiler](http://sia1.subirimagenes.net/img/2014/12/21/141221045324129394.gif)[/spoiler]