SHOW:
|
|
- or go back to the newest paste.
1 | ---[[ Cloud "Visualizer", Rushed out and made by Zuu_Roku, Credits to Cass for being a cool dood]]--- | |
2 | ||
3 | print("Made by Zuu_Roku, Commands are !play !snow !rain !multiplier and !volume") | |
4 | ||
5 | print("Credits to Cass / PPATTA for being a cool dood") | |
6 | ||
7 | ||
8 | - | local Player = game.Players.LocalPlayer |
8 | + | local Player = owner |
9 | ||
10 | local Character = Player.Character | |
11 | ||
12 | local H = Character["Head"] | |
13 | ||
14 | local multiplier = 4 | |
15 | ||
16 | local Cloud = Instance.new('Part',Character) | |
17 | Cloud.Name = "Cloud" | |
18 | ||
19 | Cloud.Size = Vector3.new(20,15,20) | |
20 | ||
21 | Cloud.Anchored = true | |
22 | ||
23 | Cloud.CanCollide = false | |
24 | ||
25 | Cloud.Transparency = 0 | |
26 | ||
27 | ||
28 | PlaybackLoudness = 0 | |
29 | remote = Instance.new("RemoteEvent",owner.Character) | |
30 | remote.Name = "RemoteEventREEE" | |
31 | remote.OnServerEvent:Connect(function(player,playbackl) | |
32 | PlaybackLoudness = playbackl | |
33 | end) | |
34 | NLS([==[wait(3) | |
35 | local sound = owner.Character.Cloud:WaitForChild("CloudSound") | |
36 | local remote = owner.Character:WaitForChild("RemoteEventREEE") | |
37 | game:GetService("RunService").Stepped:connect(function() | |
38 | remote:FireServer(sound.PlaybackLoudness) | |
39 | end) | |
40 | ]==],owner.Character) | |
41 | local CloudMesh = Instance.new('SpecialMesh',Cloud) | |
42 | ||
43 | CloudMesh.Scale = Vector3.new(25,10,25) | |
44 | ||
45 | CloudMesh.MeshId = "http://www.roblox.com/asset/?id=1095708" | |
46 | ||
47 | CloudMesh.Offset = Vector3.new(0,10,0) | |
48 | ||
49 | -- https://pastebin.com/pPdM5dEL | |
50 | local loudness = 0 | |
51 | ||
52 | ||
53 | ||
54 | local S = Instance.new('Sound',Cloud) | |
55 | ||
56 | S.SoundId = "rbxassetid://911100428" | |
57 | ||
58 | S.Name = "CloudSound" | |
59 | ||
60 | S.Looped = true | |
61 | ||
62 | S.Volume = 8 | |
63 | ||
64 | S.MaxDistance = 100 | |
65 | ||
66 | S:Play() | |
67 | ||
68 | ||
69 | ||
70 | local Rain = Instance.new('ParticleEmitter',Cloud) | |
71 | ||
72 | Rain.Color = ColorSequence.new(Color3.new(1,1,1),Color3.fromRGB(175,255,255)) | |
73 | ||
74 | Rain.Size = NumberSequence.new(.5) | |
75 | ||
76 | Rain.Texture = "http://www.roblox.com/asset/?id=241876428" | |
77 | ||
78 | Rain.Transparency = NumberSequence.new(0,.6) | |
79 | ||
80 | Rain.Acceleration = Vector3.new(0,-150,0) | |
81 | ||
82 | Rain.Lifetime = NumberRange.new(5,10) | |
83 | ||
84 | Rain.Rate = 100 | |
85 | ||
86 | local rad = math.rad | |
87 | ||
88 | local sin = math.sin | |
89 | ||
90 | local tan = math.tan | |
91 | ||
92 | local cos = math.cos | |
93 | ||
94 | Player.Chatted:connect(function(m) | |
95 | ||
96 | if m:match("!play%s%d+") then | |
97 | ||
98 | S:Stop() | |
99 | ||
100 | S.SoundId = "rbxassetid://"..m:match("!play%s(%d+)") | |
101 | ||
102 | S:Play() | |
103 | ||
104 | elseif m:match("!volume%s%d+") then | |
105 | ||
106 | S.Volume = m:match("!volume%s(%d+)") | |
107 | ||
108 | elseif m:match("!pitch%s%d+") then | |
109 | ||
110 | S.Pitch = m:match("!volume%s(%d+)") | |
111 | ||
112 | elseif m:match("!snow") then | |
113 | ||
114 | Rain.Texture = "http://www.roblox.com/asset/?id=605668174" | |
115 | ||
116 | Rain.Acceleration = Vector3.new(0,-10,0) | |
117 | ||
118 | Rain.Lifetime = NumberRange.new(15,20) | |
119 | ||
120 | Rain.Size = NumberSequence.new(.2) | |
121 | ||
122 | elseif m:match("!rain") then | |
123 | ||
124 | Rain.Texture = "http://www.roblox.com/asset/?id=241876428" | |
125 | ||
126 | Rain.Acceleration = Vector3.new(0,-150,0) | |
127 | ||
128 | Rain.Lifetime = NumberRange.new(5,10) | |
129 | ||
130 | Rain.Size = NumberSequence.new(.5) | |
131 | ||
132 | elseif m:match("!multiplier%s%d+") then | |
133 | ||
134 | multiplier = m:match("!multiplier%s(%d+)") | |
135 | ||
136 | elseif m:match("!rr") then | |
137 | ||
138 | print(Rain.Rate) | |
139 | ||
140 | end | |
141 | end) | |
142 | ||
143 | ||
144 | ||
145 | function Weld(x,y) | |
146 | ||
147 | local w = Instance.new("Weld") | |
148 | ||
149 | w.Part0 = x | |
150 | ||
151 | w.Part1 = y | |
152 | ||
153 | w.Name = tostring(y.Name).."_Weld" | |
154 | ||
155 | w.Parent = x | |
156 | ||
157 | return w | |
158 | ||
159 | end | |
160 | ||
161 | ||
162 | ||
163 | function Clerp(start,destination,increment) | |
164 | ||
165 | local function slerp(a,b,c)return (1-c)*a+(c*b)end | |
166 | - | Rain.Rate = (S.PlaybackLoudness + 50) * multiplier |
166 | + | |
167 | local c1 = {start.X,start.Y,start.Z,start:toEulerAnglesXYZ()} | |
168 | - | game:GetService('RunService').RenderStepped:wait() |
168 | + | |
169 | local c2 = {destination.X,destination.Y,destination.Z,destination:toEulerAnglesXYZ()} | |
170 | ||
171 | for i,v in pairs(c1)do c1[i] = slerp(v,c2[i],increment)end | |
172 | - | local sizer = S.PlaybackLoudness/50 + 15 |
172 | + | |
173 | return CFrame.new(c1[1],c1[2],c1[3])*CFrame.Angles(c1[4],c1[5],c1[6]) | |
174 | ||
175 | end | |
176 | ||
177 | ||
178 | ||
179 | while true do | |
180 | - | Cloud.BrickColor = BrickColor.new(Color3.fromRGB(255 - S.PlaybackLoudness*1.1, 255-S.PlaybackLoudness*1.1, 255-S.PlaybackLoudness*1.1)) |
180 | + | |
181 | Rain.Rate = (PlaybackLoudness + 50) * multiplier | |
182 | ||
183 | game:GetService('RunService').Stepped:wait() | |
184 | ||
185 | local HP = H.CFrame.p | |
186 | ||
187 | local sizer = PlaybackLoudness/50 + 15 | |
188 | ||
189 | Cloud.Size = Vector3.new(sizer,15,sizer) | |
190 | ||
191 | CloudMesh.Scale = Vector3.new(sizer,10,sizer) | |
192 | ||
193 | Cloud.CFrame = Clerp(Cloud.CFrame, CFrame.new(HP + Vector3.new(0,4,0))*CFrame.Angles(0,rad(90),0), .1) | |
194 | ||
195 | Cloud.BrickColor = BrickColor.new(Color3.fromRGB(255 - PlaybackLoudness*1.1, 255-PlaybackLoudness*1.1, 255-PlaybackLoudness*1.1)) | |
196 | end |