Resumes movie playback from paused position (sets playing=true, paused=false, adjusts startTime for elapsed frames).
Takes handle (movie handle from b2dLoadMovie, integer).
Returns nothing.
2D Overlay
Parameters & Returns
Parameters
handleInt
Returns
Void
Quick Summary
Resumes movie playback from paused position (sets playing=true, paused=false, adjusts startTime for elapsed frames).
Takes handle (movie handle from b2dLoadMovie, integer).
Returns nothing.
Technical Exegesis...
Resumes movie playback from paused position (sets playing=true, paused=false, adjusts startTime for elapsed frames). Takes handle (movie handle from b2dLoadMovie, integer). Returns nothing.
Resumes movie playback from paused position (sets playing=true, paused=false, adjusts startTime for elapsed frames). Takes handle (movie handle from b2dLoadMovie, integer). Returns nothing. Only resumes if paused and not finished (checks movie->paused && !movie->finished), sets playing=true (resume frame advancement), sets paused=false (clear paused state), adjusts startTime to account for pause duration (new startTime = now - (currentFrame / fps), ensures seamless continuation), sets g_activeMovieHandle=handle (marks as active movie). Use to resume paused movie (continue playback after user pause), unpause cutscene (exit pause menu, continue video), or continue after freeze (resume after holding on specific frame). Resume mechanics: preserves frame position (currentFrame from pause is maintained, playback continues from that frame), adjusts timing (recalculates startTime so elapsed time matches currentFrame, prevents frame jump), seamless playback (no visible stutter or skip when resuming, appears as if time was simply paused). Use cases: (1) Unpause cutscene (If KeyHit(KEY_P) Then b2dResumeMovie(cutscene) unpause), (2) Exit pause menu (b2dResumeMovie(movie): hide pause UI: continue playback), (3) Toggle pause (If paused Then b2dResumeMovie(movie) Else b2dPauseMovie(movie)), (4) Timed pause (pause for 3 seconds, then auto-resume with b2dResumeMovie). Common patterns: resume = b2dResumeMovie(movie) continue from paused frame; conditional resume = If b2dIsMoviePaused(movie) Then b2dResumeMovie(movie); toggle = If paused Then resume Else pause. StartTime adjustment: elapsed frames (elapsedFrames = currentFrame, frame where movie was paused), frame duration (frameTime = 1.0 / fps, time per frame in seconds), adjusted start (startTime = now - (elapsedFrames x frameTime), calculates when playback "should have" started), seamless continuation (next frame calculation uses adjusted startTime, appears as if pause never happened). Performance: cost zero (only sets state variables and calculates startTime, no GPU/IO operations), immediate (no frame processing required), lightweight (safe to call even if not paused, does nothing if not paused). Validation: silently ignores if handle<=0 or not found (negative, zero, or invalid handle), only resumes if paused and not finished (checks movie->paused && !movie->finished, does nothing otherwise), safe to call multiple times (idempotent if already playing). Related: b2dPauseMovie pauses playback (use before resume, preserves currentFrame position), b2dPlayMovie starts playback (use after stop, not after pause, b2dResumeMovie correct for paused movies), b2dStopMovie stops playback (use to stop instead of resume, resets to beginning), b2dIsMoviePaused queries paused state (check before resume), b2dMoviePlaying queries playing state (returns 1 after resume, was 1 during pause too).