Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local player = game.Players.LocalPlayer
- local CreateDialogueEvent = game.ReplicatedStorage.CreateDialogueEvent
- local DialogueFrame = player.PlayerGui.DialogueGui.DialogueFrame
- local function playSound(sound_id) -- Plays typing sound
- local sound = Instance.new("Sound",game.ReplicatedStorage)
- sound.SoundId = sound_id
- sound.Volume = .1
- sound.PlayOnRemove = true
- sound:Destroy()
- end
- local function textAnimate(content) -- Animates each letter
- for i=1,string.len(content) do
- DialogueFrame.TextLabel.Text = string.sub(content,1,i)
- playSound("rbxassetid://915576050")
- if string.sub(content,i,i) == "!" or string.sub(content,i,i) == "." or string.sub(content,i,i) == "?" then
- wait(1)
- elseif string.sub(content,i,i) == "," then
- wait(.5)
- else
- wait(.05)
- end
- end
- end
- CreateDialogueEvent.OnClientEvent:Connect(function(name, image_id, content) -- activates when called from the Server
- if not player:findFirstChild("secretEnding") then
- DialogueFrame.nameLabel.Text = name
- DialogueFrame.ImageLabel.Image = image_id
- DialogueFrame.TextLabel.Text = ""
- DialogueFrame.Visible = true
- textAnimate(content)
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement