Need Help With Video Extension

Peace Unto you!

Thank you for all of your help we are very grateful.

After straightening out a few things of other parts of my game, i’m curious of the video player situation. Below is the script of, my video player.

We appreciate all of the help!

:sun_with_face:

Here is the video player script:


local function log(msg)
print(msg)
end

local function video_callback(self, video, event, data)
log(string.format("VIDEO CALLBACK: video %d evt: %d ", video, event))

if event == videoplayer.VIDEO_EVENT_READY then
log("videoplayer.VIDEO_EVENT_READY")
videoplayer.start(video)
elseif event == videoplayer.VIDEO_EVENT_FINISHED then
log("videoplayer.VIDEO_EVENT_FINISHED")
[msg.post](http://msg.post/)(".", "video_end") -- Trigger message for video ending
elseif event == videoplayer.VIDEO_EVENT_FAILED then
log("videoplayer.VIDEO_EVENT_FAILED")
[msg.post](http://msg.post/)(".", "video_end") -- Handle failure case via message
else
log("Unexpected event")
end
end

function video_begin(self)
if videoplayer then
log("Loading video...")

local videos = {"Intro.mp4"} -- Ensure this matches your file name exactly
self.video = videoplayer.create(videos[1], {play_sound = true}, video_callback)

if not self.video then
log("Can't create another video")
[msg.post](http://msg.post/)(".", "video_end")
else
log("Video created successfully: " .. self.video)
end
else
log("Could not initialize fullscreen videoplayer (on this platform?)")
end
end

function video_end(self, video)
log("Ending Video")
[msg.post](http://msg.post/)("loader:/go#loader", "load_menu")

-- Wait 2 seconds, then destroy the video player
timer.delay(2, false, function()
log("Destroying video player after delay.")
if video ~= nil then
print("Calling videoplayer.destroy", video)
videoplayer.destroy(video)
end

self.video = nil;
end)
end

function init(self)
[msg.post](http://msg.post/)(".", "acquire_input_focus")
self.video = nil
video_begin(self) -- Start the video as soon as the game initializes
end

function on_message(self, message_id, message, sender)
if message_id == hash("video_end") then
video_end(self)
end
end