-- Decompiled with the Synapse X Luau decompiler.


client = nil;
cPcall = nil;
Pcall = nil;
Routine = nil;
service = nil;
gTable = nil;
return function(p1)
	local l__Parent__1 = script.Parent.Parent;
	local l__PlayerGui__2 = service.PlayerGui;
	local l__Message__3 = p1.Message;
	if p1.Time then

	end;
	local v4 = {
		Type = "Hint", 
		Title = "Hint", 
		Message = l__Message__3, 
		Icon = "rbxassetid://7501175708", 
		Time = os.date("%X"), 
		Function = nil
	};
	table.insert(client.Variables.CommunicationsHistory, v4);
	service.Events.CommsCenter:Fire(v4);
	local v5 = client.UI.Get("HintHolder", nil, true);
	if not v5 then
		local v6 = service.New("ScreenGui");
		local v7 = client.UI.Register(v6);
		local v8 = service.New("ScrollingFrame", v6);
		client.UI.Prepare(v6);
		v7.Name = "HintHolder";
		v8.Name = "Frame";
		v8.BackgroundTransparency = 1;
		v8.Size = UDim2.new(1, 0, 0, 150);
		v8.CanvasSize = UDim2.new(0, 0, 0, 0);
		v8.ChildAdded:Connect(function(p2)
			if #v8:GetChildren() == 0 then
				v8.Visible = false;
				return;
			end;
			v8.Visible = true;
		end);
		v8.ChildRemoved:Connect(function(p3)
			if #v8:GetChildren() == 0 then
				v8.Visible = false;
				return;
			end;
			v8.Visible = true;
		end);
		v5 = v7;
		v7:Ready();
	end;
	local l__Frame__9 = v5.Object.Frame;
	if client.UI.Get("Notif") then
		local v10 = 30;
	else
		v10 = 0;
	end;
	if client.UI.Get("TopBar") then
		local v11 = 40;
	else
		v11 = 0;
	end;
	l__Frame__9.Position = UDim2.new(0, 0, 0, v10 + v11 - 35);
	local v12 = l__Frame__9:GetChildren();
	l__Parent__1.Position = UDim2.new(0, 0, 0, -100);
	l__Parent__1.Frame.msg.Text = l__Message__3;
	local l__X__13 = l__Parent__1.Frame.msg.TextBounds.X;
	local function v14(p4, p5)
		p4 = p4 and 0;
		local v15 = #l__Frame__9:GetChildren();
		for v16, v17 in pairs(l__Frame__9:GetChildren()) do
			if v17 ~= p5 then
				v17.Position = UDim2.new(0, 0, 0, (v16 + p4) * 28);
				if v16 ~= v15 then
					v17.Size = UDim2.new(1, 0, 0, 28);
				end;
			end;
		end;
	end;
	local v18 = -1;
	v14(-1);
	l__Parent__1.Parent = l__Frame__9;
	if #l__Frame__9:GetChildren() > 5 then
		v18 = -2;
	end;
	UDim2.new(0, 0, 0, (#l__Frame__9:GetChildren() + v18) * 28);
	v14(-1);
	if #l__Frame__9:GetChildren() > 5 then
		local v19 = l__Frame__9:GetChildren()[1];
		v14(-2, v19);
		v19:Destroy();
	end;
	wait(p1.Time and 5);
	if l__Parent__1 and l__Parent__1.Parent then
		v14(-2, l__Parent__1);
		l__Parent__1:Destroy();
	end;
end;
