Maus an Fedenkreuz heften

mmhhh

Mitglied
Ich möchte eine First Person Anwendung mit einem Fadenkreuz programmieren, und will die Sichtbarkeit der Maus an und ausswitchen und die Bewegungen direkt übertragen.
Wie ich einen Maus listener mache weis ich, aber nicht wie ich die maus un-/sichtbar mache die position der maus nach dem auslesen wieder in die bild mitte setze(natürlich unsichtbar)

Danke schonmal im voraus.
 
Zuletzt bearbeitet:

mmhhh

Mitglied
wenn ich das tue, mit der robot klasse, wird dann auch der MouseMotionListener aktiviert, weil sonst bräuchte ich eine andere methode
 

dayaftereh

Top Contributor
Ok, ich glaube ich habe nicht verstanden was du vorhast. Also du willst selbst eine First-Person Anwendung machen, bei der keinen Mouse-Cursor gibt? Doch dann willst du selbst die Mouse in die Mitte Bewegen? verstehe ich irgend wie nicht?
 

D4rkscr43m

Bekanntes Mitglied
Maus befindet sich an Bildschirmmitte, der Spieler bewegt die Maus, MausMotionListener wird ausgelöst, Bildausschnitt für das Spiel verschiebt sich entsprechend der Bewegung, Maus wird wieder auf den Bildschirmmittelpunkt gesetz (hier soll der MausMotionListener nicht aufgerufen werden)

So hab ichs verstanden. Dann würde ich einfach überprüfen, ob das Ziel der Mausbewegung der Bildschirmmittelpunkt ist.
 

mmhhh

Mitglied
Ich finde keine funktion für das deaktivieren des MouseMotionListeners, weis jemand, wie ich die aufrufe?
(danke schonmal für alles)
 

dayaftereh

Top Contributor
Hey, könntest natürlich den MouseMotionListener einfach löschen und dann wieder hinzufügen.
Java:
Component#addMouseListener()
Component#removeMouseListener()

Oder du machst dir ein Flag wie folgt:

Java:
boolean flag = false || true
Component#addMouseListener(new MouseMotionListener() {
   public void mouseMoved(MouseEvent e) {
      if(!flag){
         return;
      }
      // Do Logic
   }
});
 
T

trääät

Gast
würde hier auch zum FLAG raten ...

der listener wird ausgelöst in dem die maus bewegt wird ... nun lässt du im listener den code ablaufen der für die veränderung des blickwinkels sorgt ... togglest das flag (was natürlich im listener selbst zu erst geprüft wird) und setzt die maus in die mitte und togglest das flag wieder ...
beim zweiten mal wird also der code im listener ignoriert da ihn das flag von abhält diesen auszuführen ...

ansonsten mal in gaming-foren nachfragen wie es unter normalen ego-"shootern" gemacht wird
 

dayaftereh

Top Contributor
Ich weiß nicht wie deine Architektur ist, aber wenn du je ein Game-Loop hast, dann aktualisiert du nur die Mouse-Position mit dem MouseMotionListener und das verschieben passiert in der eigentlichen Update-Methode deines Game-Loops und musst du dann dein Flag platzieren.

Ich glaube auch das wenn du den MouseMotionListener immer entfernst und dann wieder hinzufügst, verbrauchst du mehr Rechenleistung bzw, ist langsamer, da intern die Methoden Synchronisiert sind und du jedes mal auf eine Sperre Triffst.
 

dayaftereh

Top Contributor
Ich würde es so machen, eine boolean die vor dem Verschieben der Mouse-Positon auf true gesetzt wird, dann verschiebst du deine Mouse-Position mit der Klasse Robot und setzt dann die boolean wieder auf false. In deinem Game-Loop verschiebst du den Viewport nur wenn die boolean auf false gesetzt ist.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Mausbewegungen wie eine echte Maus in 3 dimensionalen Spielen Spiele- und Multimedia-Programmierung 12
N Schüsse in Richtung der Maus Spiele- und Multimedia-Programmierung 5
B GLFW 3D Maus- Input Spiele- und Multimedia-Programmierung 7
Arif Maus-Objekt im Player Klasse implementieren !? Spiele- und Multimedia-Programmierung 2
B Maus Cursor aus/einblenden bei Unity 3d mit .js Spiele- und Multimedia-Programmierung 1
M [JOGL] Maus über einem gezeichnetem Objekt abfragen? Spiele- und Multimedia-Programmierung 5
S Mausklicks innerhalb eines JFrames/SWTBrowser ohne richtige Maus simulieren Spiele- und Multimedia-Programmierung 6
L Bild in Richtung Maus drehen Spiele- und Multimedia-Programmierung 4
M Beim schießen richtet sich die Kugel nach der Maus aus (Quaternion) Spiele- und Multimedia-Programmierung 5
D Sprite zur Maus bewegen Spiele- und Multimedia-Programmierung 9
G Maus springt --> Free-Hand-Zeichnen Spiele- und Multimedia-Programmierung 2
G Zeichnung mit der Maus bewegen Spiele- und Multimedia-Programmierung 3
S Schiff in Richtung der Maus rotieren - Problem :/ Spiele- und Multimedia-Programmierung 5
M Grafikprogramm, zeichnen mit Maus Spiele- und Multimedia-Programmierung 7
S Problem bei Kartenbewegung mit Maus! Spiele- und Multimedia-Programmierung 3
M Exakte Position auf Kugel mit Maus picken , Java3d Spiele- und Multimedia-Programmierung 14
D Bilderpositionierung mit Maus Spiele- und Multimedia-Programmierung 23
T Maus-Cursor-Position manipulieren Spiele- und Multimedia-Programmierung 3
K Ein 3D-Objekt mit Maus auswählen Spiele- und Multimedia-Programmierung 5
T Problem mit Maus und Bildschirm Spiele- und Multimedia-Programmierung 3
C NavigationBehaviour mit Maus und Keyboard Spiele- und Multimedia-Programmierung 5
A Maus im Spiel-Menu oder nicht? Spiele- und Multimedia-Programmierung 5

Ähnliche Java Themen

Neue Themen


Oben