equal
deleted
inserted
replaced
36 procedure InitSound; |
36 procedure InitSound; |
37 procedure ReleaseSound; |
37 procedure ReleaseSound; |
38 procedure SoundLoad; |
38 procedure SoundLoad; |
39 procedure PlaySound(snd: TSound); |
39 procedure PlaySound(snd: TSound); |
40 procedure PlaySound(snd: TSound; voicepack: PVoicepack); |
40 procedure PlaySound(snd: TSound; voicepack: PVoicepack); |
|
41 procedure PlaySound(snd: TSound; voicepack: PVoicepack; keepPlaying: boolean); |
41 function LoopSound(snd: TSound): LongInt; |
42 function LoopSound(snd: TSound): LongInt; |
42 function LoopSound(snd: TSound; voicepack: PVoicepack): LongInt; |
43 function LoopSound(snd: TSound; voicepack: PVoicepack): LongInt; |
43 procedure PlayMusic; |
44 procedure PlayMusic; |
44 procedure PauseMusic; |
45 procedure PauseMusic; |
45 procedure ResumeMusic; |
46 procedure ResumeMusic; |
160 end; |
161 end; |
161 end; |
162 end; |
162 |
163 |
163 procedure PlaySound(snd: TSound); |
164 procedure PlaySound(snd: TSound); |
164 begin |
165 begin |
165 PlaySound(snd, nil); |
166 PlaySound(snd, nil, false); |
166 end; |
167 end; |
167 |
168 |
168 procedure PlaySound(snd: TSound; voicepack: PVoicepack); |
169 procedure PlaySound(snd: TSound; voicepack: PVoicepack); |
169 begin |
170 begin |
|
171 PlaySound(snd, voicepack, false); |
|
172 end; |
|
173 |
|
174 procedure PlaySound(snd: TSound; voicepack: PVoicepack; keepPlaying: boolean); |
|
175 begin |
170 if (not isSoundEnabled) or fastUntilLag then exit; |
176 if (not isSoundEnabled) or fastUntilLag then exit; |
|
177 |
|
178 if keepPlaying and (lastChan[snd] <> -1) and (Mix_Playing(lastChan[snd]) <> 0) then |
|
179 exit; |
171 |
180 |
172 if (voicepack <> nil) and (voicepack^.chunks[snd] <> nil) then |
181 if (voicepack <> nil) and (voicepack^.chunks[snd] <> nil) then |
173 lastChan[snd]:= Mix_PlayChannelTimed(-1, voicepack^.chunks[snd], 0, -1) |
182 lastChan[snd]:= Mix_PlayChannelTimed(-1, voicepack^.chunks[snd], 0, -1) |
174 else |
183 else |
175 lastChan[snd]:= Mix_PlayChannelTimed(-1, defVoicepack^.chunks[snd], 0, -1) |
184 lastChan[snd]:= Mix_PlayChannelTimed(-1, defVoicepack^.chunks[snd], 0, -1) |