Level Complete Message

Script for Part

local levelPart = script.Parent


local ReplicatedStorage = game:GetService('ReplicatedStorage')

local remoteEvent = ReplicatedStorage:WaitForChild('RemoteEvent')


local function complete(otherPart)

local humanoid = otherPart.Parent:FindFirstChild('Humanoid')

if humanoid then

local player = game.Players:FindFirstChild(otherPart.Parent.Name)

local completeTag = player:FindFirstChild('Level_1')

if player and not completeTag then

local completeTag = Instance.new('BoolValue')

completeTag.Name = 'Level_1'

completeTag.Value = true

completeTag.Parent = player

remoteEvent:FireAllClients(player.Name, levelPart.Name)

end

end

end


levelPart.Touched:Connect(complete)

LocalScript (StarterPlayerScripts)

local ReplicatedStorage = game:GetService('ReplicatedStorage')

local remoteEvent = ReplicatedStorage:WaitForChild('RemoteEvent')


textColor = BrickColor.new('Lime green')


local function complete(playerName, partName)

game.StarterGui:SetCore('ChatMakeSystemMessage', {

Text = playerName..' completed '..partName;

Font = Enum.Font.SourceSansBold;

Color = textColor.Color;

FontSize = Enum.FontSize.Size24;

})

end


remoteEvent.OnClientEvent:Connect(complete)

Color Update

Script

local levelPart = script.Parent


local ReplicatedStorage = game:GetService('ReplicatedStorage')

local remoteEvent = ReplicatedStorage:WaitForChild('RemoteEvent')


local function complete(otherPart)

local humanoid = otherPart.Parent:FindFirstChild('Humanoid')

if humanoid then

local player = game.Players:FindFirstChild(otherPart.Parent.Name)

local completeTag = player:FindFirstChild(levelPart.Name)

if player and not completeTag then

local completeTag = Instance.new('BoolValue')

completeTag.Name = levelPart.Name

completeTag.Value = true

completeTag.Parent = player

remoteEvent:FireAllClients(player.Name, levelPart.Name, levelPart.BrickColor)

end

end

end


levelPart.Touched:Connect(complete)

LocalScript (StarterPlayerScripts)

local ReplicatedStorage = game:GetService('ReplicatedStorage')

local remoteEvent = ReplicatedStorage:WaitForChild('RemoteEvent')


local function complete(playerName, partName, partColor)

game.StarterGui:SetCore('ChatMakeSystemMessage', {

Text = playerName..' completed '..partName;

Font = Enum.Font.SourceSansBold;

Color = partColor.Color;

FontSize = Enum.FontSize.Size24;

})

end


remoteEvent.OnClientEvent:Connect(complete)