collide Problem!!!!!!!
Übersicht

SvolfBetreff: collide Problem!!!!!!! |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi,...ich wollte frage ob mir eine rerklären kann wie das mit dem Collidieren geht mit den 2 Bildern das man jetzt ein Menu hat mit BUttoms und wenn man mit der MAusdrüber geht der Buttom eindrückt (also 2 Bild) und dann linke maustase drückt etwas passieren kann wie z.B. näxte menu zu gehen,..btte eine ausführliche erklärung wäre echt cool,...danke im vorraus,.. | ||
![]() |
Kryan |
![]() Antworten mit Zitat ![]() |
---|---|---|
die einfachste methode:
If ImagesOverlap(button,x,y,maus,MouseX(),MouseY()) THen DoWhatYouWant End If |
||
Webspaceanbieter?
Klick hier! Kultige Spieleschmiede? Klick hier! |
HW |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zunächst mal speicherst du in der Hauptschleife, ob die Maustaste gedrückt wurde (ql:mousehit). Dann prüfst du danach, ob die Maus über einem Button ist. Das ginge z.B. mit ql:imagerectcollide. Wenn ja, änderst du den Frame vom Button. Wenn auch noch die Maustaste gedrückt wurde, gehst du ins nächste Menü.
Der Code sähe dann etwa so aus: Code: [AUSKLAPPEN] Repeat
mouseh=MouseHit(1) ... If ImageRectCollide(button,buttonx,buttony,MouseX(),MouseY(),1,1) ;Buttonframe ändern If mouseh Then ;Ins nächste Menü gehen. EndIf Until KeyHit(1) |
||
Svolf |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also würde es für ein Menu dann so ausehen ,...
Graphics 800,600,16 SetBuffer BackBuffer() Bild=LoadImage ("Menu.jpg") ;laden der Bilder; Repeat mouseh=MouseHit(1) If ImageRectCollide(button,buttonx,buttony,MouseX(),MouseY(),1,1) If mouseh Then goto 1menu EndIf Until KeyHit(1) .1menu ;hier komemn die nächsten anweisungen hinein,... Aber mit dem script kann ich garnicht meherer Buttoms erstellen, da ich nur die var mouseh habe und wenn ich dann mache if mouseh=1 then,.... abe rmöchte doch das man ich verschiedenen menus kommen kann,.... und könnte mir noch jemand erklären wie man eine mOuse mit einbinden kann,.... |
||
HW |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich verstehe nicht, was dein Problem ist. Du kannst mit dem Code durchaus mehrere Buttons haben. Du musst den Buttoncode nur eben für jeden Button separat schreiben, wobei der einzige Unterschied in den Koordinaten des Buttons liegt. Dann gibt es doch eigentlich keine Probleme.
In dem Code, den du gepostet hast (solltest du übrigens besser in [code] schreiben), solltest du natürlich auch den Button zeichnen und Koordinaten dafür definieren. |
||
Svolf |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Könntest du mir ein Beispielschreiben ich habe echt kein Paln,..=( und ich möchte es auch so machen, dass wenn man mit der Maus über ein Buttom geht der eingefrückt wird also ein 2 image und das man dann durch drücken wo anders hinkommt,...Könnte mir bitte einer ein Beispiel schreiben mit maus einfügung uind mindestens 2 Buttoms,..wäre echt nett | ||
![]() |
Geeecko |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aber besser wäre es du würdest alle buttons in eine bild stekcne.
Dann könntest du hinterher in einer for schleuife for i=1 to 4 ;4Buttons x=i*32 ;button sind immer in 32pixel abständen If ImageRectCollide(button,x,buttony,MouseX(),MouseY(),1,1) then print "aua, drück mcih nciht xD" endif next |
||
Svolf |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Es geht nicht,...
Code: [AUSKLAPPEN] mouseh=MouseHit(1)
If ImagesCollide(defiant, MouseX(), MouseY(), 0, ds9, 1, 1, 0) If mouseh Then Print "hallo" EndIf ; --- Flip End EndIf Until KeyHit(1) ; Bis man Esc drückt. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group