Exports & API
Core Cinematics exposes a small set of state-query exports so other resources can detect when the user is inside the editor and suppress their own input handling (scroll-wheel binds, keymaps, target prompts, HUD elements, etc.) while a cinematic is being composed, recorded, or played back.
Catch-all
If you just want one check to disable your resource's input while the user is doing anything in Core Cinematics, use IsEditorActive. The granular probes below are there for resources that only need to react to a specific state.
Client Exports
client
exports['core_cinematics']:IsEditorActive()Catch-all — returns true whenever the user is in any cinematics state: editor UI open, positioning mode, playback running, preview playing, or a solo/vehicle recording in progress. Use this to disable your resource's input handling for the full duration of any cinematic activity.
Returns:
booleanExample
lua
-- Suppress a scroll-wheel keymap while the user is in the editor
CreateThread(function()
while true do
Wait(0)
if not exports['core_cinematics']:IsEditorActive() then
-- your normal input logic here
end
end
end)client
exports['core_cinematics']:IsEditorUIOpen()Returns true while the cinematic editor NUI is open (the main project / timeline interface).
Returns:
booleanExample
lua
if exports['core_cinematics']:IsEditorUIOpen() then
-- hide your HUD overlay while the editor is taking the screen
endclient
exports['core_cinematics']:IsInPositionMode()Returns true while the user is placing or moving an in-world element (camera, marker, text-DUI, etc.) via the editor's position mode.
Returns:
booleanExample
lua
if exports['core_cinematics']:IsInPositionMode() then
-- don't fire your own raycast / placement binds
endclient
exports['core_cinematics']:IsPlaybackActive()Returns true while a project is playing back — either a full timeline playback or a single-clip preview.
Returns:
booleanExample
lua
if exports['core_cinematics']:IsPlaybackActive() then
-- pause your own ambient timers / notifications so they don't appear mid-shot
endclient
exports['core_cinematics']:IsRecording()Returns true while a solo or vehicle recording is being captured.
Returns:
booleanExample
lua
if exports['core_cinematics']:IsRecording() then
-- skip non-essential UI prompts so they don't end up in the recording
endAnimation Provider API
Core Cinematics also exposes an open contract that any animation / emote / walking-style resource can implement so its anims are captured during recordings and replayed on puppet peds. This is a separate integration layer — the recorder calls into the provider's exports, not the other way around.
For the full provider contract (required exports, state bag, discovery), see the Animations page.
