Hello there. I am trying to add a play button to my cutscene when it's in its final scene.
I would like to add a fade to the screen once the cutscene's play button is clicked.
Anyone know how to do this?
Also here are my cutscene scripts:
local cscript = script:WaitForChild("CutsceneScript")
if script:findFirstChild("SkipCutsceneGuiValue") then
script.SkipCutsceneGuiValue.Parent = cscript
script.SkipCutsceneGui.Parent = cscript
end
function onPlayerEntered(player)
repeat wait () until player.Character
local new_script = script.CutsceneScript:clone()
new_script.Parent = player.Character
new_script.Disabled = false
end
game.Players.PlayerAdded:connect(onPlayerEntered)
onPlayerEntered(game.Players:WaitForChild("Player1")) -- Has to be done since it doesn't work offline for some reason.
repeat wait () until game.Workspace.CurrentCamera ~= nil
Sound=game.Workspace.Epic_Music
SoundC=Sound:clone()
SoundC.Parent=game.Players.LocalPlayer.PlayerGui
SoundC:Play()
local c = game.Workspace.CurrentCamera
local data = LoadLibrary("RbxUtility").DecodeJSON(script.CutsceneData.Value)
local rs = game:GetService("RunService").RenderStepped
function tweenCam(c1,f1,time,fov,roll)
local c0,f0,fv0,r0,frames = c.CoordinateFrame,c.Focus,c.FieldOfView,c:GetRoll(),time/0.015
for i = 1,frames do
c.CameraType = "Scriptable"
c.CoordinateFrame = CFrame.new(c0.p:lerp(c1.p,i/frames),f0.p:lerp(f1.p,i/frames))
c.FieldOfView = (fv0+(fov-fv0)*(i*(1/frames)))
c:SetRoll(r0+(roll-r0)*(i*(1/frames)))
rs:wait()
end
end
print("Running")
c.CameraSubject = nil
c.CameraType = "Scriptable"
c.CoordinateFrame = CFrame.new(unpack(data[1].c1))
c.Focus = CFrame.new(unpack(data[1].f1))
c.FieldOfView = data[1].FOV
c:SetRoll(data[1].Roll)
if script:findFirstChild("SkipCutsceneGuiValue") then
local gui = script.SkipCutsceneGui:clone()
gui.Parent = game.Players.LocalPlayer.PlayerGui
gui.Cutscene.Value = script
gui.Main.Debug.Disabled = false
script.SkipCutsceneGuiValue.Value = gui
end
for i = 2,#data do
tweenCam(CFrame.new(unpack(data[i].c1)),CFrame.new(unpack(data[i].f1)),data[i].step,data[i].FOV,data[i].Roll)
end
c.CameraSubject = game.Players.LocalPlayer.Character.Humanoid
c.CameraType = "Custom"
c.FieldOfView = 70
if script:findFirstChild("SkipCutsceneGuiValue") then
if script.SkipCutsceneGuiValue.Value ~= nil then
script.SkipCutsceneGuiValue.Value:Destroy()
end
end
SoundC:remove()
script:Destroy()
