Probleme mit ImageRectCollide und Mousehit(1)
Übersicht

Gray FoxBetreff: Probleme mit ImageRectCollide und Mousehit(1) |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich bastel grad an einem kleinen Kartenspiel, nun habe ich folgendes Problem:
Wenn die Maus über eine Karte fährt und der Spieler die Maus betätigt soll die Karte "gespielt" werden, ich habe das so gelöst: Code: [AUSKLAPPEN] If ImageRectCollide(maus,mx,my,0,xp1(1),yp1(1),rect_width,rect_height) Then
If handp1(1) > 0 Then bild_aktiv = 2 If MouseHit(1) Then karte_spielen End If End If Klicke ich nun "irgendwo" hin und fahre dann über die Karte, wird sie trotzdem gespielt, ich habe es schon mit einem "Flushmouse()" am Ende des Programms versucht (vor Flip) - mit dem Resulat, dass nix mehr ging. (Macht doch keinen Unterschied, wenn ich diesen Code einfach sechsmal für jede Karte kopiert habe (und xp1(1) bzw. yp1(1) anpasse)? Es muss doch eine Lösung für das Problem geben ![]() |
||
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Anscheinend habe ich die Antwort hier gefunden:
https://www.blitzforum.de/foru...hp?t=19202 Zitat: Zitat: Probiers mal so,
einmal ind der Hauptschleife Mousehit einer Variable zuweisen. mouse = mousehit(1) und dann bei der abfrage "mouse" verwenden. Aber warum geht es so und warum nicht beim "normalen" Mousehit(1)? |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Weil MouseHit die Anzahl MouseHits seit dem letzten Aufruf von MouseHit ausgibt. Wenn es mehr als 1x pro Schleifendurchlauf aufgerufen wird ist es fast unmöglich das ein neuer Hit stattgefunden hat.
Ganz im Unterschied zu MouseDown das nur sagt ob die Maus zu dem Zeitpunkt gedrückt war oder nicht. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Dreamora hat Folgendes geschrieben: Weil MouseHit die Anzahl MouseHits seit dem letzten Aufruf von MouseHit ausgibt. Wenn es mehr als 1x pro Schleifendurchlauf aufgerufen wird ist es fast unmöglich das ein neuer Hit stattgefunden hat.
Ganz im Unterschied zu MouseDown das nur sagt ob die Maus zu dem Zeitpunkt gedrückt war oder nicht. Wieder was gelernt ![]() Aber sag mal, gibt es irgendwo ein Lexikon/Datenbank, in der manche solche "Besonderheiten" nachlesen kann? |
||
![]() |
Cardonic |
![]() Antworten mit Zitat ![]() |
---|---|---|
In der Hilfe, auf www.blitzbase.de oder du saugst dir die Onlinehilfe.
Übrigens ist dies keine Besonderheit, sondern die primäre Funktion dieses Befehls. mfg Cardonic |
||
If you should go skating on the thin ice of modern life, dragging behind you the silent reproach of a million tear-stained eyes, don't be surprised when a crack in the ice appears under your feet. |
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Cardonic hat Folgendes geschrieben: In der Hilfe, auf www.blitzbase.de oder du saugst dir die Onlinehilfe.
Übrigens ist dies keine Besonderheit, sondern die primäre Funktion dieses Befehls. mfg Cardonic Mist steht ja da ![]() Aber danke für die Info ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group