SHOW:
|
|
- or go back to the newest paste.
1 | local mult = 1 | |
2 | local real = Instance.new("SpawnLocation" , Instance.new("WorldModel" , script)) | |
3 | real.CanCollide = false | |
4 | real.Parent = script | |
5 | real.Size = Vector3.new(3.5,7,3.5) * mult | |
6 | real.CanTouch = false | |
7 | real.Enabled = false | |
8 | pcall(function() | |
9 | real.CFrame = owner.Character.Head.CFrame * CFrame.new(0,0,-8) | |
10 | end) | |
11 | real.Anchored = true | |
12 | real.CanQuery = false | |
13 | local mesh = Instance.new("SpecialMesh" , real) | |
14 | - | mesh.MeshId = 'rbxassetid://553782681' |
14 | + | mesh.MeshId = 'rbxassetid://3054461843' |
15 | - | mesh.TextureId = 'rbxassetid://553782697' |
15 | + | mesh.TextureId = 'rbxassetid://3054461863' |
16 | mesh.Scale = Vector3.new(.15,.15,.15) | |
17 | local yes = Instance.new("Sound" , real) | |
18 | yes.EmitterSize = 25 + (mult/10) | |
19 | - | yes.SoundId = 'rbxassetid://6687560452' |
19 | + | yes.SoundId = 'rbxassetid://6855412882' |
20 | yes.Volume = 2 | |
21 | yes.Looped = true | |
22 | function chatfunc(text) | |
23 | local chat = coroutine.wrap(function() | |
24 | pcall(function() | |
25 | real:FindFirstChild("TalkingBillBoard"):Destroy() | |
26 | end) | |
27 | local naeeym2 = Instance.new("BillboardGui" , real) | |
28 | naeeym2.Size = UDim2.new(0, 250, 0, 250) | |
29 | naeeym2.StudsOffset = Vector3.new(0,3 * mult,0) | |
30 | naeeym2.Name = "TalkingBillBoard" | |
31 | local tecks2 = Instance.new("TextBox",naeeym2) | |
32 | tecks2.BackgroundTransparency = 1 | |
33 | tecks2.BorderSizePixel = 0 | |
34 | tecks2.Text = "" | |
35 | tecks2.Font = "Bodoni" | |
36 | tecks2.TextScaled = true | |
37 | tecks2.TextSize = 25 | |
38 | tecks2.TextStrokeTransparency = 0 | |
39 | tecks2.TextColor3 = Color3.fromRGB(255,255,255) | |
40 | tecks2.TextStrokeColor3 = Color3.fromRGB(0,0,0) | |
41 | tecks2.Size = UDim2.new(1,0,0.5,0) | |
42 | coroutine.wrap(function() | |
43 | for c = 1,string.len(text),1 do | |
44 | tecks2.Text = string.sub(text,1,c) | |
45 | task.wait(.03) | |
46 | end | |
47 | end)() | |
48 | end) | |
49 | chat() | |
50 | end | |
51 | local re = Instance.new("RemoteEvent" , real) | |
52 | re.Name = "NoMoreSayingCussWordsEvent" | |
53 | re.OnServerEvent:Connect(function(plr, ld) | |
54 | mesh.Scale = (Vector3.new(.15,.15,.15) * mult) * (ld/500) | |
55 | end) | |
56 | NLS([[ | |
57 | local re = workspace:FindFirstChild("NoMoreSayingCussWordsEvent", true) | |
58 | local sound = re.Parent.Sound | |
59 | re.Name = "RemoteEvent" | |
60 | while task.wait() do | |
61 | pcall(function() | |
62 | if sound.isPlaying == true then | |
63 | re:FireServer(sound.PlaybackLoudness) | |
64 | end | |
65 | end) | |
66 | end | |
67 | ]], owner.PlayerGui) | |
68 | yes:Play() | |
69 | local ignore = {} | |
70 | local function FindNearestPlayer(position, range, ignorelist) | |
71 | local found | |
72 | local maxdistance = range | |
73 | for _,plyr in pairs(game:GetService("Players"):GetPlayers()) do | |
74 | coroutine.wrap(function() | |
75 | pcall(function() | |
76 | if not table.find(ignorelist, plyr) then | |
77 | local distance = (position - plyr.Character:FindFirstChildWhichIsA("BasePart").Position).Magnitude | |
78 | if distance < maxdistance then | |
79 | found = plyr | |
80 | maxdistance = distance | |
81 | end | |
82 | end | |
83 | end) | |
84 | end)() | |
85 | end | |
86 | return found | |
87 | end | |
88 | ||
89 | coroutine.wrap(function() | |
90 | while task.wait() do | |
91 | pcall(function() | |
92 | local g = FindNearestPlayer(real.CFrame.p, 1000, ignore) | |
93 | if g then | |
94 | local targ = g.Character:FindFirstChildWhichIsA("BasePart") | |
95 | real.CFrame = real.CFrame:Lerp(targ.CFrame * CFrame.new(-3,0,-10 * mult), .05) | |
96 | real.CFrame = CFrame.new(real.CFrame.p, targ.CFrame.p) * CFrame.Angles(0,math.rad(180),0) | |
97 | end | |
98 | end) | |
99 | end | |
100 | end)() |