Mouse Position festlegen bestimmen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Mouse Position festlegen bestimmen

    Hallo

    Ich möchte die Mausposition am anfang eines Rooms selbst bestimmen.

    Mit:

    GML-Quellcode

    1. window_mouse_set(x,y)

    funzt es leider nicht, kann mir jemand sagen wie ich das machen kann.

    Danke im voraus
    lg Vectorhead
  • GM: Studio scheint da ein generelles Problem zu haben, bei dem die Mausfunktionen (insbesondere window_mouse_set() ) manchmal einfach nicht funktionieren wollen.
    Bei mir hatte ich beispielsweise das problem, dass die Funktion die Maus einfach nicht an die besagte stelle positioniert haben. Um eine FPS steuerung zu realisieren, plaziere ich die Maus (in jedem Step) in die Bildschirmmitte, was nur dann im nächsten Step ermöglich die Mausbewegung (durch erneutes auslesen der Koordinaten) zu bestimmen. (das alles 60 mal i ndeer sekunde.)

    Nun, wenn man das Spiel startet und während des Starts der Fokus des GMs oder des Spiels kurz verloren geht, funktionieren die window_mouse_set aufrufe garnicht mehr. (da kann man noch so oft versuchen den Focus zu ändern.) > da rührt sich nichts. (Man muss dann die exe neustarten bzw. das Spiel nochmal vom GM aus starten und hoffen dass der Focus aufrechterhalten bleibt und der Bug nicht ausgelöst wird...)

    Ist auch ein (mehr oder weniger) bekanntes Problem bei Yoyogames. (Hoffe ich zumindest mal...)
    > Die Lösung: Eine DLL verwenden die die Maus direkt durch die Windows-Api manipuliert.

    /Edit: Dies trifft (oder traf damals... k.a. ob das schon gefixt wurde...) auch auf die Mouse_wheel funktionen zu. Die haben auch ab und zu gerne mal den geist aufgegeben...

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von LEWA ()

  • GM: Studio scheint da ein generelles Problem zu haben, bei dem die Mausfunktionen (insbesondere window_mouse_set() ) manchmal einfach nicht funktionieren wollen.


    Danke für die Info, hmmm mal schaun wie ich das anders lösen kann pffff ;(
    lg Vectorhead
  • LEWA schrieb:

    Nun, wenn man das Spiel startet und während des Starts der Fokus des GMs oder des Spiels kurz verloren geht, funktionieren die window_mouse_set aufrufe garnicht mehr. (da kann man noch so oft versuchen den Focus zu ändern.) > da rührt sich nichts. (Man muss dann die exe neustarten bzw. das Spiel nochmal vom GM aus starten und hoffen dass der Focus aufrechterhalten bleibt und der Bug nicht ausgelöst wird...)


    Ich hab window_mouse_set() gerade mal getestet und muss feststellen, dass bei mir alles funktioniert wie es soll.. Allerdings ist der Start-Bug bisher nicht wieder aufgetreten. Aber ich habe per Alt+Tab den Fokus ein paar mal gewechselt. Wenn ich wieder das Spiel fokussiere, dann funktioniert window_mouse_set() weiterhin wie es soll.

    @ Vectorhead: Welche GM:S Version nutzt du?
  • Ok, dann haben wir die gleiche Version.

    GML-Quellcode

    1. window_mouse_set(window_get_x()+window_get_width()*0.5,
    2. window_get_y() + window_get_height()*0.5);

    Das ist der Code den ich ins Step-Event getestet hab.

    Edit: Für welchen Zweck möchtest du die Mausposition setzen?