Wieso funktioniert das StopChannel nicht? *wirr*
Übersicht

![]() |
ReLeNtLeSSBetreff: Wieso funktioniert das StopChannel nicht? *wirr* |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also:
Ich ärgere mich damit schon lange rum und frage mich, warum der StopChannel bei mir _NIE_ funktioniert. Ich habe viele Beispiele durchschaut, aber iwie hats keiner anders als ich... Code: [AUSKLAPPEN] If bgsound=1 Then bgsound=0 chn=PlaySound(bg_sound) EndIf [...] If ImagesOverlap(button1,220,200,maus,MouseX(),MouseY()) And MouseDown(1)=True Then Cls If clicksound_zu=1 Then clicksound_zu=0 PlaySound(clicksound) EndIf menu=0 game=1 StopChannel chn EndIf If ImagesOverlap(button2,220,400,maus,MouseX(),MouseY()) And MouseDown(1)=True Then Cls If clicksound_zu=1 Then clicksound_zu=0 PlaySound(clicksound) EndIf menu=0 menusetting=1 StopChannel chn EndIf If ImagesOverlap(button3,220,600,maus,MouseX(),MouseY()) And MouseDown(1)=True Then Cls If clicksound_zu=1 Then clicksound_zu=0 PlaySound(clicksound) EndIf menu=0 credits=1 StopChannel chn EndIf Weis da einer Rat? MfG |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bitte schreit mich nich gleich an wenis ned gerafft hab. ![]() Willst nich einfach Channelvolume auf = 0 setzen ? ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
nein, ozzi, das ist nicht gut, denn dann benutzt du weiter die Ressourcen.
@ topic: Was für ein Soundfile lädst du denn ein ? |
||
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 |
![]() |
ReLeNtLeSS |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der zu ladende Sound ist folgender...
Code: [AUSKLAPPEN] Global bg_sound=LoadSound("data/sound/bg.wav") MfG |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
hm, da muss ich gestehen dass mir erst mal die Ideen ausgehen. | ||
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 |
![]() |
ReLeNtLeSS |
![]() Antworten mit Zitat ![]() |
---|---|---|
Au Verdammt.
Also es ist so, das der Sound einfach weiter spielt. Dabei soll er ja stoppen. Kann es an der Soundkarte liegen? MfG /edit: Ich glaubs ja nich! Bei dem kleinen beispiel hier funzt alles perfekt: Code: [AUSKLAPPEN] Global bg_sound=LoadSound("data/sound/bg.wav") chn=PlaySound(bg_sound) Delay 5000 StopChannel chn WaitKey() |
||
- Zuletzt bearbeitet von ReLeNtLeSS am Do, Dez 06, 2007 16:35, insgesamt einmal bearbeitet
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Funktionieren denn die Beispiele mit StopChannel überhaupt bei dir? | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
ReLeNtLeSS |
![]() Antworten mit Zitat ![]() |
---|---|---|
Siehe Edit ![]() |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dann liegt's zumindest nicht an der Soundkarte...
Dumme Frage: Der Sound ist global geladen, aber ist der Channel das auch? Wenn du den in Verschieden Funktionen ansprichst... |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
ReLeNtLeSS |
![]() Antworten mit Zitat ![]() |
---|---|---|
naja, ich könnts mal versuchen, den stopchannel global zu machen.... meld mich zurück
/edit: nene, geht nicht, "Globals can only appear in a main programm" /edit2: Code: [AUSKLAPPEN] Function menu() If bgsound=1 Then bgsound=0 chn=PlaySound(bg_sound) EndIf DrawImage bg,0,0 DrawImage button1,220,200 DrawImage button2,220,400 DrawImage button3,220,600 If ImagesOverlap(button1,220,200,maus,MouseX(),MouseY()) Then DrawImage button1_a,220,200 If ImagesOverlap(button2,220,400,maus,MouseX(),MouseY()) Then DrawImage button2_a,220,400 If ImagesOverlap(button3,220,600,maus,MouseX(),MouseY()) Then DrawImage button3_a,220,600 If ImagesOverlap(button1,220,200,maus,MouseX(),MouseY()) And MouseDown(1)=True Then Cls If clicksound_zu=1 Then clicksound_zu=0 PlaySound(clicksound) EndIf menu=0 game=1 StopChannel chn EndIf If ImagesOverlap(button2,220,400,maus,MouseX(),MouseY()) And MouseDown(1)=True Then Cls If clicksound_zu=1 Then clicksound_zu=0 PlaySound(clicksound) EndIf menu=0 menusetting=1 StopChannel chn EndIf If ImagesOverlap(button3,220,600,maus,MouseX(),MouseY()) And MouseDown(1)=True Then Cls If clicksound_zu=1 Then clicksound_zu=0 PlaySound(clicksound) EndIf menu=0 credits=1 StopChannel chn EndIf DrawImage maus,MouseX(),MouseY() End Function |
||
Ziggy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
"Globals can only appear in a main programm"
Code: [AUSKLAPPEN] graphics 800,600 setbuffer backbuffer() Global chn Global bgsound Global .....etc.... repeat ...... |
||
"Es gibt 10 Arten von Menschen: Diejenigen die Binär verstehen, und jene die es nicht verstehen."
"Irren ist menschlich, gut dass ich ein Gott bin... xD" letzte Informatik-Note : 1 ... 96% richtig, Thema: C++ switch/case |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aua, so kann das nicht funktionieren.
Du lädst deinen Sound bei jedem Aufruf der Funktion neu, also so ca. 60 mal die sekunde. Klar stoppt der dann nicht. Lade deine Sounds global, ausserhalb der Funktion. |
||
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 |
![]() |
ReLeNtLeSS |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich lade doch ausserhalb und global....:
Code: [AUSKLAPPEN] Graphics 1280,1024,32 ;LoadImage;Loadsound;;INKL. LADEBALKEN Global lade1=LoadImage("data/lade/1 (1).png") MaskImage lade1,255,0,255 DrawImage lade1,400,400 Global lade2=LoadImage("data/lade/1 (2).png") Global lade3=LoadImage("data/lade/1 (3).png") Global crash_s_1=LoadSound("data/sound/crash1.wav") Global crash_end1=LoadSound("data/sound/crash_end1") Global crash_end2=LoadSound("data/sound/crash_end2") MaskImage lade2,255,0,255 DrawImage lade2,400,400 Global lade4=LoadImage("data/lade/1 (4).png") Global lade5=LoadImage("data/lade/1 (5).png") Global bg_sound=LoadSound("data/sound/bg.wav") Global clicksound=LoadSound("data/sound/click.wav") MaskImage lade3,255,0,255 DrawImage lade3,400,400 Global lade6=LoadImage("data/lade/1 (6).png") Global lade7=LoadImage("data/lade/1 (7).png") Global lade8=LoadImage("data/lade/1 (8).png") Global choosesound=LoadSound("data/sound/choose.wav") MaskImage lade4,255,0,255 DrawImage lade4,400,400 Global lade9=LoadImage("data/lade/1 (9).png") Global lade10=LoadImage("data/lade/1 (10).png") Global lade11=LoadImage("data/lade/1.png") Global auto=LoadImage("data/auto.bmp") MaskImage lade5,255,0,255 DrawImage lade5,400,400 Global autoruck=LoadImage("data/autoruck1.bmp") Global crash=LoadImage("data/crash.bmp") Global baum=LoadImage("data/baum.bmp") MaskImage lade6,255,0,255 DrawImage lade6,400,400 Global crash2=LoadImage("data/crash2.bmp") Global bg=LoadImage("data/bg.bmp") Global maus=LoadImage("data/maus.bmp") Global cameltot_s=LoadSound("data/sound/cameltot.wav") MaskImage lade7,255,0,255 DrawImage lade7,400,400 Global camel=LoadImage("data/camel.bmp") Global cameltot=LoadImage("data/cameltot.bmp") MaskImage lade8,255,0,255 DrawImage lade8,400,400 Global button1=LoadImage("data/buttons/buttonstart1.png") Global button1_a=LoadImage("data/buttons/buttonstart2.png") MaskImage lade9,255,0,255 DrawImage lade9,400,400 Global button2=LoadImage("data/buttons/buttonsettings1.png") Global button2_a=LoadImage("data/buttons/buttonsettings2.png") MaskImage lade10,255,0,255 DrawImage lade10,400,400 Global button3=LoadImage("data/buttons/buttonquit1.png") Global button3_a=LoadImage("data/buttons/buttonquit2.png") Global font=LoadFont("Comic Sans MS",40,True) MaskImage lade11,255,0,255 DrawImage lade11,400,400 FreeImage lade1 FreeImage lade2 FreeImage lade3 FreeImage lade4 FreeImage lade5 FreeImage lade6 FreeImage lade7 FreeImage lade8 FreeImage lade9 FreeImage lade10 FreeImage lade11 MaskImage auto,255,0,255 MaskImage autoruck,255,0,255 MaskImage crash,255,0,255 MaskImage baum,255,0,255 MaskImage crash2,255,0,255 MaskImage maus,255,0,255 MaskImage camel,0,0,0 MaskImage button1,255,0,255 MaskImage button1_a,255,0,255 MaskImage button2,255,0,255 MaskImage button2_a,255,0,255 MaskImage button3,255,0,255 MaskImage button3_a,255,0,255 SetBuffer BackBuffer() ;Benötigte festgelegte Zustaende und Vars SetFont font Global y1=100 Global y11=400 Global y21=700 Global autox=750 Global autoy=950 Global counter=0 Global points=0 Global counter_spielzeit=0 Global punkte_timer=0 Global camelcounter=0 Global aut_timer=0 Global by1=-20 Global by2=-180 Global by3=-350 Global by4=0 Global by5=-250 Global by6=-450 Global crashcount=0 Global points_check=0 Global points_camel=0 Global cameldeath=0 Global time4 Global menu=1 Global game=0 Global menusetting=0 Global credits=0 Global time_timer=1 Global ende=0 Global text_c_y=1024 Global clicksound_zu=1 Global bgsound=1 ;usw.... Da lade ich den Sound, und spiele ihn in der Funktion einmal ab...[/code] |
||
![]() |
FireballFlame |
![]() Antworten mit Zitat ![]() |
---|---|---|
Liegen Play und Stop denn immer in derselben Funktion?
Sonst muss chn auch global sein. |
||
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit |
Ziggy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich seh auch kein Code: [AUSKLAPPEN] global chn
Ohne das chn auch global zu machen kannst du das ja nirgends abgreifen. Versuch das einfach mal. Gruß. EDIT: Ich hab das jetzt in meinem Spiel mal getestes, und zwar funktioniert es folgendermaßen: Ich habe 2 globale Variablen kanal und ton, ich lade in einer separaten funktion den ton, Code: [AUSKLAPPEN] ton = loadsound("bla.mp3") ich starte den Ton ganz zu beginn vor der Hauptschleife und stoppe ihn dann beim Aufruf der Funktion startgame() Code: [AUSKLAPPEN] Graphics gfxWidth,gfxHeight,gfxBpp,gfxMode SetBuffer BackBuffer() gamemode = 0 position = 1 weapon = 1 load_gfx() load_snd() kanal = PlaySound(snd_bg1) Repeat Cls HidePointer keys() fps() movement() weapon() [...] Select gamemode Case 0 menu() Case 1 startgame() StopChannel(kanal) Case 2 mainoptions() Case 3 Exit Case 4 pause() End Select So funktioniert das mit dem abbrechen. Gruß. |
||
"Es gibt 10 Arten von Menschen: Diejenigen die Binär verstehen, und jene die es nicht verstehen."
"Irren ist menschlich, gut dass ich ein Gott bin... xD" letzte Informatik-Note : 1 ... 96% richtig, Thema: C++ switch/case |
![]() |
ReLeNtLeSS |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ah, vielen dank, es geht...
es fehlte wirklich nur ein Global chn ^^ |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group