imagescollide und mousehit problem

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Asobi

Betreff: imagescollide und mousehit problem

BeitragDo, Mai 15, 2008 16:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Der gewollte Teil des Codes funktioniert.

Hier erstmal der Code:

Code: [AUSKLAPPEN]
If ImagesCollide(pfeil, MouseX(), MouseY(), 0, bild1, bild1_x, bild1_y, 0) Then
   DrawImage bild2,bild2_x,bild2_y
   If MouseHit(1) Then
                ;code
   End If
Else
   DrawImage bild1,bild1_x,bild1_y
End If


Aber wenn ich auserhalb des Bildes an irgendeiner Stelle mit der Maus Linksklicke,
und mit dem Cursor über das Bild gehe, spielt dich der Code direkt ab - ohne das ich klicken muss.

Hat einer ne Idee wo der Fehler liegen könnte ?
<@Exorzist> Die Intilligenz von Menschen lässt sich an ihren Fragen feststellen <@huhu> Hä?
 

Tritium

BeitragDo, Mai 15, 2008 16:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Aus dem Code kann ich nicht sonderlich viel entnehmen, aber schreib doch mal ein FlushMouse da rein.
 

Dreamora

BeitragDo, Mai 15, 2008 16:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Benutz NIEMALS mousehit so. Mousehit gibt dir immer die anzahl klicks seit dem letzten mal mousehit an, nicht ob grad gedrückt wird, dafür ist MouseDown da!
MouseHit speichert man normalerweise am anfang der logik schleife in eine variable und lässt es danach denn wenn du 2x mousehit drin machst wird das zweite mal nie erfüllt sein, niemand kann innerhalb von 16ms 2x klicken oder nur die wenigsten und 16ms ist vermutlich noch sehr optimistisch lange (16ms -> 60 FPS)
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Asobi

BeitragDo, Mai 15, 2008 16:29
Antworten mit Zitat
Benutzer-Profile anzeigen
ok Danke, hab ich wieder mal was neues gelernt ^^
Problem bei MouseDown is nur die Reaktionszeit beim klicken..
Ich bin dabei nen Music Manager zu machen und wenn man zb auf Play klicken will,
muss man bei der Mousedown Funktion die Maustaste etwas länger gedrückt halten,
damit der Code aktiv wird.
<@Exorzist> Die Intilligenz von Menschen lässt sich an ihren Fragen feststellen <@huhu> Hä?

BladeRunner

Moderator

BeitragDo, Mai 15, 2008 16:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Mach zu Beginn deiner Hauptschleife mh = mousehit(1)
und mach in der Abfrage if mh then ...
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Asobi

BeitragDo, Mai 15, 2008 16:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok klappt alles Super, Danke ^^
<@Exorzist> Die Intilligenz von Menschen lässt sich an ihren Fragen feststellen <@huhu> Hä?

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group