MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / xCutscene_SetSpeed

Function xCutscene_SetSpeed

src/SB/Core/x/xCutscene.cpp:250–281  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

248}
249
250void xCutscene_SetSpeed(xCutscene* csn, F32 speed)
251{
252 if (csn->BadReadPause)
253 return;
254
255 if (speed > 4.0f)
256 {
257 speed = 4.0f;
258 }
259
260 if (speed < 0.001f)
261 {
262 speed = 0.0f;
263 }
264
265 csn->PlaybackSpeed = speed;
266
267 F32 semitones;
268 if (speed)
269 {
270 semitones = xlog(speed) / 0.057762269f;
271 }
272 else
273 {
274 semitones = -99999.0f;
275 }
276
277 for (S32 i = 0; i < (S32)csn->SndNumChannel; i++)
278 {
279 xSndSetPitch(csn->SndHandle[i], semitones);
280 }
281}
282
283F32 xlog(F32 x)
284{

Callers 1

xCutscene_UpdateFunction · 0.70

Calls 2

xlogFunction · 0.85
xSndSetPitchFunction · 0.85

Tested by

no test coverage detected