Seite 1 von 1

Maus-Sprite Kollision

Verfasst: 24.12.2012 22:41
von ProgOldie
Hallo,
ich beschäftige mich mit wachsender Begeisterung u.a. mit Sprites. Nun habe ich mehrere Sprites auf dem Bildschirm und möchte wissen, über welchem Sprite sich ggf. die Maus befindet. Mein Problem:Ich sehe noch nicht einmal die Maus. Meine Idee, einen Mauszeiger als Sprite zu konstruieren und dann mit Spritekollision zu testen, ist vielleicht zu aufwändig.

Code: Alles auswählen

If InitMouse() = 0 Or InitSprite() = 0 Or InitKeyboard() = 0
  MessageRequester("Error", "Can't open DirectX 7", 0)
  End
EndIf


If OpenScreen(800, 600, 32, "Mouse") = 0
  MessageRequester("Error", "Impossible to open a 800*600 32 bit screen",0)
EndIf

;Hier Sprite 0 und Sprite 1 laden 

Repeat
  FlipBuffers()                    
  ClearScreen(RGB(255,255,255))                  
  ExamineKeyboard()
  ExamineMouse()                      
  DisplaySprite(1, 100,100)
  DisplaySprite(0, 200,500)
Until MouseButton(#PB_MouseButton_Left) Or MouseButton(#PB_MouseButton_Right)

End 
Also: Wie sehe ich den Mauszeiger und wie erfahre ich, wenn er über einem Sprite steht (und über welchem?)

Auf jeden Fall: Frohe Weihnachten!

Re: Maus-Sprite Kollision

Verfasst: 24.12.2012 23:21
von captain_hesse
Du kannst die Maus nicht sehen weil sie von Pure Basic blockiert (locked) ist, mit dem Befehl ReleaseMouse() kannst du das ändern.
ProgOldie hat geschrieben:Meine Idee, einen Mauszeiger als Sprite zu konstruieren und dann mit Spritekollision zu testen, ist vielleicht zu aufwändig.
finde ich nicht, ich denke das dies eine gute Methode ist um eine Maus-Sprite Kollision zu ermitteln ich würde es wohl auch so machen.