El problema es el siguiente.
Tengo dos objetos. El obj_mouse, que seria un objeto que sigue el cursor en el juego y el obj_mouse_acc que es un accesorio que rota alrededor del raton. Algo asi como un llavero.
Pense en usar:
phy_position_x=obj_mouse.x
phy_position_y=obj_mouse.y
Pero hace que el obj_mouse_acc que tiene fisicas deja de tenerla, quedandose estatico siguiendo al obj_mouse.
Querria que el obj_mouse_acc tuviera fisicas mientras siguiera el raton.
Os mando ilustracion de un pequeño "croquis".
(https://i.ibb.co/vQyvqfK/Screenshot-1428.png)
El manual dice que no es bueno modificar las variables phy_position directamente porque se interrumpe la simulación.
Para seguir el puntero del mouse puedes aplicar una fuerza o modificar la velocidad
[gml]
instMouse.phy_speed_x = mouse_x - instMouse.phy_position_x;
instMouse.phy_speed_y = mouse_y - instMouse.phy_position_y;
[/gml]
El accesorio se puede pegar con una unión rotatoria
[gml]
physics_joint_revolute_create(
instMouse, instAcc, //instancias involucradas
420, 220, //coordenadas de la unión
0, 0, false, //no hay ángulo límite
0, 0, false, //no hay motor
false //las inancias no colisionan
);
[/gml]
Ejemplo en GMLIve (https://yal.cc/r/gml/?mode=2d&tabs_lz=NobwRAdghgtgpmAXGA6nANgYwPbwApQDmCANGDgCYLID0NABAMIBOcUALnPQKIBucEdgB1mQiCLF16ASwjTM0qOmkAvKM3owArhArYJEZtlwB9AM4AHOHAr0AvPQBsABgDcBiwAsAnmflmTAHdsZnQKE0xWDjgACgBGGgAmZ2cASndRCC9ffyCQsJNCZiheaXZvGOcSegBWdIMDKQAzaQAPdi1WegsdTiMDFtb7bp8-TADBjtYIqM4Y+szssYm2qbhzOHYTKgg-cpjB6ucAOjqMsSXcyc71s02TKAhCLXR1bdgLWUIDtqPjgE4FhdRldVjcNltWGZ2GUtDDsBAfq0-mlzlkQeMTNdpnctjh0Mo-AjCkYtBYkdU4kD0TlMdjbvcAEbYVrmTxQKwU+jJarJdL0OhNEIwKD0ViYdiPZ6vUSZOiM2S2dieLj0gyyaEAWWwWjuww1kogmHWkTYcwALCleVb6NhGQArExUtGXOlg6YK3Rcg3a3VwamulbtcFUdCbWKDfl0byiiDYeh6iBwY17KANOUMen0AklOBGGhQTApkLSfSZQbDQNY90m2axAMYoNrCHbAR7CqHegnZxnDyN6vBnH3KUvN4UD5fLknQEu-v0ltQmEdeGIzvdhu0pvg3ERbAE6REiAknXkzvOvubgfNnfM1lmdmczs1Kq1KM0IXMEVi5OG6XqRo0J6SoqvQaqZAaACCRb6rshrGjMZqxOaAAcL6JDytoOk6G7LFe4JAd6sFQZgOGgoO6yhuGSJvjG9BxgmXBJimZRppkAH0Do0gaIWxbMKW9Cij0gh5mWwKXva2CyJCcC8HucK1ohMQGPQKkyLBvp3NUkFFtUdAGo8ChQGYamyegWiRFA45mMpqnmhh6EvnQOAhDsllGfQVDZqKnEAM-iJkqldkc1RNEomkCjQ9Hst49AAIdPC88boAAtzAZRwDZKkvi+oXoOFdBRVAMUwNg7AhJloFhVwdCvMZsgGYoxn0fiB6ltA-liNS7HMswnmea8YrGDAAxtIw7KyJWc41gh0TzK49AXrh847vihJtceZJImNUCyJSpFuuRLaYONR73hyEajSd1TsMwWj+midCWbYFiSYI1mLFNh1PSYL1SVtV21NUvYfZe87fb9gj-TtEDVKhL7A2JS3TeDr3sFDu30HDQMpPtW7TCjf2DNtGM1NjqIAUB9DKqqNbqrBxMQDB0IGQps3ZdUdqOueINI4dBFEwDBoM11mQAMRUC0SYJpwFjsXczxcd0vQiR5GCaDqdx01qGtwMc2TmFYNgmEMDglX6xv0AAtGp2t+nrPg-dgezra0aI+jr9veAb1jhDFps6yYMXW+7dv6y9zvEt4aIGOLcCS1wFDFIEi25MEoThInUCBK2jJaN8FV0PrVC54QJisLoeYPFAjKMvQAA+Bc0EXcAl2XAhUMwu77oeP07cwxkNwFqmFw7xd523FedzgMAD43zet+XHe7jiD5wLPQ8qfP4+L5XElSevYiBSPXtj6XO+d3ateD4fqlb2f7eV2dVjvZ1D00Jn2fKEmMSWuz9C-2TakdAP4mC-rENCNosbchxq4MAABfAAukAA)