Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Mausposition in einem Spiel ändern (https://www.delphipraxis.net/98303-mausposition-einem-spiel-aendern.html)

superguenni 24. Aug 2007 16:28


Mausposition in einem Spiel ändern
 
Hallo,

ich versuche gerade für das Computerspiel Emergency 4 ein Hintergrundprogramm zu schreiben, damit ich mit einem Tastendruck den Mauscursor auf die Position eines Buttons wechseln kann der immer im Spiel erscheint und von vielen als störend empfunden wird. Dieser Button muss aber im Multiplayer ständig geklickt werden damit die anderen an der Reihe sind (bis zu 10 mal pro Minute).

Das Problem ist, dass man mit Mouse.CursorPos := Point(x, y); die Mausposition Ingame nicht verändern kann (außerhalb des Spiels funktioniert das Programm wie es soll), daher meine Frage ob es noch andere Möglichkeiten gibt die Mausposition zu ändern.

shmia 24. Aug 2007 16:32

Re: Mausposition in einem Spiel ändern
 
Delphi-Quellcode:
if not SetCursorPos(10, 30) then
   raiseLastWin32Error;

superguenni 24. Aug 2007 18:56

Re: Mausposition in einem Spiel ändern
 
Zitat:

Zitat von shmia
Delphi-Quellcode:
if not SetCursorPos(10, 30) then
   raiseLastWin32Error;

Leider bringt das nicht die gewünschte Änderung der Cursorposition :(

3_of_8 24. Aug 2007 18:59

Re: Mausposition in einem Spiel ändern
 
Möglicherweise greift das Spiel irgendwie anders auf die Maus zu und zeichnet seinen eigenen Cursor. Dann wird es wahrscheinlich kaum möglich sein, die Mausposition zu ändern.

superguenni 24. Aug 2007 20:12

Re: Mausposition in einem Spiel ändern
 
kann man sonst vielleicht eine Bewegung der Maus simulieren? Also z.B. 100 Pixel nach rechts oder so?

Sunlight7 24. Aug 2007 23:32

Re: Mausposition in einem Spiel ändern
 
MSDN-Library durchsuchenmouse_event

Namenloser 25. Aug 2007 00:05

Re: Mausposition in einem Spiel ändern
 
Zitat:

Zitat von 3_of_8
Möglicherweise greift das Spiel irgendwie anders auf die Maus zu und zeichnet seinen eigenen Cursor. Dann wird es wahrscheinlich kaum möglich sein, die Mausposition zu ändern.

Ich vermute mal, die Speichern ihre eignen X und Y Werte für den Cursor und setzen den echten Cursor in die Mitte des Bildschirms. In jedem Frame wird dann die horizontale und vertikale Differenz des Cursor zum Mittelpunkt ausgerechnet und zu den internen Werten hinuzaddiert. Danach wird der Cursor wieder in die Mitte gesetzt. Gar nicht dumm, eigentlich...

FAlter 25. Aug 2007 16:36

Re: Mausposition in einem Spiel ändern
 
Hi,

Zitat:

Zitat von NamenLozer
Ich vermute mal, die Speichern ihre eignen X und Y Werte für den Cursor und setzen den echten Cursor in die Mitte des Bildschirms. In jedem Frame wird dann die horizontale und vertikale Differenz des Cursor zum Mittelpunkt ausgerechnet und zu den internen Werten hinuzaddiert. Danach wird der Cursor wieder in die Mitte gesetzt. Gar nicht dumm, eigentlich...

Mach ich so, um innen 3D-Programm den Cursor in Z-Richtung statt Y-Richtung zu verschieben.

Mfg
FAlter


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz