So What it does it Puts it on another Part.
Heres the script.
repeat wait() until script.Parent.Parent == game.Players.LocalPlayer.PlayerGui
local main = script.Parent.Main
main:TweenSizeAndPosition(UDim2.new(0, 300, 0, 180),UDim2.new(0.4, 0, 0.35, 0),"Out","Quad",0.5)
main.Broadcast.MouseButton1Click:connect(function()
if main.MessageBox.Text ~= "> Insert Message Here <" then
if main.TitleBox.Text ~= "> Insert Title / Subject Here <" then
for i,v in pairs(game.Workspace:GetChildren()) do
if v.Name == "RoTV" then
if v:FindFirstChild("Title") then
v.Player.Value = game.Players.LocalPlayer.Name
v.Title.Value = main.TitleBox.Text
v.Message.Value = main.MessageBox.Text
end
end
end
end
end
end)
Make sure you send the text through a remote event and that you filter the text on the Server otherwise your game could get taken down for not filtering text.
Try setting the Surface GUI from the Server when you fire to a remote event.
local t = script.Parent.Parent.Parent.Title
local m = t.Parent.Message
local p = t.Parent.Player
function Message()
script.Parent.Title.Text = t.Value
script.Parent.Body.Text = m.Value
script.Parent.From.Text = p.Value
for i = 1,0,-0.1 do
script.Parent.Body.TextTransparency = i
script.Parent.Body.TextStrokeTransparency = i
script.Parent.Title.TextTransparency = i
script.Parent.Title.TextStrokeTransparency = i
script.Parent.From.TextTransparency = i
script.Parent.From.TextStrokeTransparency = i
wait()
end
end
t.Changed:connect(function()
Message()
end)
m.Changed:connect(function()
Message()
end)
This is whats in the one in the part is there maybe done something wrong with that.