CCCPaste

New MainScript (SungExetior13RBLX Style)

--- Sungmingamerpro13

-- Services
PlayerService = game:GetService('Players')
TweenService = game:GetService('TweenService')

-- Variables
DefaultMessageDelayTime = 4
LetterInvertal = 0.05
MessageWaitSigns = {',', '?', '.'}
MessageWaitSignDelay = 1

MessageValue = game.ReplicatedStorage.Message
SpeakerValue = game.ReplicatedStorage.Message.Speaker
HideDialogueEvent = game.ReplicatedStorage.Message.HideDialogueEvent

-- randomPlayer or NPC

local randomPlayer

-- Functions

function BroadCastMessage(Text, MessageDelayTime)
	for i = 1,#Text,1 do
		MessageValue.Value = string.sub(Text,1,i)
		for _, L in pairs(MessageWaitSigns) do
			if string.sub(Text,i,i) == L then
				wait(MessageWaitSignDelay)
			end
		end
		wait(LetterInvertal)
	end
	if tonumber(MessageDelayTime) ~= nil then
		wait(MessageDelayTime)
	else
		wait(DefaultMessageDelayTime)
	end
end

function HideCastMessage()
	HideDialogueEvent:FireAllClients()
end

function SetMessageSpeaker(Name, Model)
	if Name == randomPlayer then
		randomPlayer = game.Players:GetChildren()[math.random(1,#game.Players:GetChildren())]
		Name = randomPlayer.Name
	end
	SpeakerValue.Value = Name or Model
end

---- MainScript ----

wait(10)

SetMessageSpeaker(randomPlayer)

BroadCastMessage("Hello, World")