ein und ausschalten geht nicht
Übersicht

AffjeBetreff: ein und ausschalten geht nicht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hi
ich habe einen button, mit dem man den sound an und austellen kann. nur eben das geht nicht ![]() wenn man einmal auf den button klickt, soll der ton aus gehen, wenn man wieder draufdrückt, soll er wieder angehen. damit habe ich probleme, hier mal der komplette code: Code: [AUSKLAPPEN] ;*Ilendurs Vermächtnis, ein Spiel für die Drachengarde* Graphics 1024, 768, 32, 1 SetBuffer BackBuffer() ;Laden der Bilder und des Sounds Hintergrundbild = LoadImage("Daten\Bilder\Menu.jpg") Cursor = LoadImage("Daten\Bilder\Cursor.bmp") Beenden = LoadImage("Daten\Bilder\Beenden.jpg") Beenden_Over = LoadImage("Daten\Bilder\Beenden_Over.jpg") Credits = LoadImage("Daten\Bilder\Credits.jpg") Credits_Over = LoadImage("Daten\Bilder\Credits_Over.jpg") Intro = LoadImage("Daten\Bilder\Intro.jpg") Intro_Over = LoadImage("Daten\Bilder\Intro_Over.jpg") Beginnen = LoadImage("Daten\Bilder\Beginnen.jpg") Beginnen_Over = LoadImage("Daten\Bilder\Beginnen_Over.jpg") Soundbutton = LoadImage("Daten\Bilder\Soundbutton.jpg") Soundbutton_Over = LoadImage("Daten\Bilder\Soundbutton_Over.jpg") Sound = LoadSound("Daten\Musik.mp3") Soundkanal = PlaySound(Sound) ;das Hauptmenü .Hauptmenu While Not KeyHit(1) DrawImage Hintergrundbild, 0, 0 DrawImage Beenden, 580, 654 DrawImage Credits, 644, 513 DrawImage Intro, 710, 372 DrawImage Beginnen, 785, 230 If ChannelPlaying(Soundkanal) = 1 Then DrawImage Soundbutton, 105, 638 ElseIf ChannelPlaying(Soundkanal) = 0 Then DrawImage Soundbutton_Over, 105, 638 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Beenden, 580, 654) Then If MouseHit(1) = 1 Then End EndIf DrawImage Beenden_Over, 580, 654 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Credits, 644, 513) Then DrawImage Credits_Over, 644, 513 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Intro, 710, 372) Then DrawImage Intro_Over, 710, 372 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Beginnen, 785, 230) Then DrawImage Beginnen_Over, 785, 230 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Soundbutton, 105, 638) And MouseHit(1) = 1 And ChannelPlaying(Soundkanal) = 1 Then DrawImage Soundbutton_Over, 105, 638 StopChannel(Soundkanal) EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Soundbutton_Over, 105, 638) And MouseHit(1) = 1 And ChannelPlaying(Soundkanal) = 0 Then PlaySound(Sound) DrawImage Soundbutton, 105, 638 EndIf DrawImage Cursor, MouseX(), MouseY() Flip Wend |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das Problem ist das MouseHit() den Buffer leert. Speicher zu Beginn der While-Schleife dessen Wert in einer Variable (z.B. mh=MouseHit(1)) und prüfe dann auf diese Variable:
Code: [AUSKLAPPEN] While ...
mh=MouseHit(1) If ImagesOverLap(bla,...) And mh=1 Then ; Code EndIf |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
Affje |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hmmm, geht irgendwie nicht, wenn ich auf den button drücke, ändert sich zwar das bild, aber er spielt das lied gleich wieder ab....
Code: [AUSKLAPPEN] ;*Ilendurs Vermächtnis, ein Spiel für die Drachengarde* Graphics 1024, 768, 32, 1 SetBuffer BackBuffer() ;Laden der Bilder und des Sounds Hintergrundbild = LoadImage("Daten\Bilder\Menu.jpg") Cursor = LoadImage("Daten\Bilder\Cursor.bmp") Beenden = LoadImage("Daten\Bilder\Beenden.jpg") Beenden_Over = LoadImage("Daten\Bilder\Beenden_Over.jpg") Credits = LoadImage("Daten\Bilder\Credits.jpg") Credits_Over = LoadImage("Daten\Bilder\Credits_Over.jpg") Intro = LoadImage("Daten\Bilder\Intro.jpg") Intro_Over = LoadImage("Daten\Bilder\Intro_Over.jpg") Beginnen = LoadImage("Daten\Bilder\Beginnen.jpg") Beginnen_Over = LoadImage("Daten\Bilder\Beginnen_Over.jpg") Soundbutton = LoadImage("Daten\Bilder\Soundbutton.jpg") Soundbutton_Over = LoadImage("Daten\Bilder\Soundbutton_Over.jpg") Sound = LoadSound("Daten\Musik.mp3") Soundkanal = PlaySound(Sound) ;das Hauptmenü .Hauptmenu While Not KeyHit(1) Maustaste = MouseHit(1) DrawImage Hintergrundbild, 0, 0 DrawImage Beenden, 580, 654 DrawImage Credits, 644, 513 DrawImage Intro, 710, 372 DrawImage Beginnen, 785, 230 If ChannelPlaying(Soundkanal) = 1 Then DrawImage Soundbutton, 105, 638 ElseIf ChannelPlaying(Soundkanal) = 0 Then DrawImage Soundbutton_Over, 105, 638 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Beenden, 580, 654) Then If MouseHit(1) = 1 Then End EndIf DrawImage Beenden_Over, 580, 654 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Credits, 644, 513) Then DrawImage Credits_Over, 644, 513 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Intro, 710, 372) Then DrawImage Intro_Over, 710, 372 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Beginnen, 785, 230) Then DrawImage Beginnen_Over, 785, 230 EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Soundbutton, 105, 638) And Maustaste = 1 And ChannelPlaying(Soundkanal) = 1 Then DrawImage Soundbutton_Over, 105, 638 StopChannel(Soundkanal) EndIf If ImagesOverlap(Cursor, MouseX(), MouseY(), Soundbutton_Over, 105, 638) And Maustaste = 1 And ChannelPlaying(Soundkanal) = 0 Then PlaySound(Sound) DrawImage Soundbutton, 105, 638 EndIf DrawImage Cursor, MouseX(), MouseY() Flip Wend kann mir mal jemand seinen code in meinen einfügen?? |
||
![]() |
soli |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich denke du solltest die Variable Maustaste auf Null zurückstellen,
nachdem du Sie benutzt hast. soli |
||
solitaire |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group