SHOW:
|
|
- or go back to the newest paste.
1 | - | owner,name = "TheMoonlightGlows","Dancer" |
1 | + | owner,name = "TheProNoob2004","Dancer" |
2 | ply = game.Players[owner] | |
3 | char = ply.Character | |
4 | pcall(function() char:FindFirstChild("legetd"):Remove() char:FindFirstChild("Belt"):Remove() end) | |
5 | m = Instance.new("Model",char) m.Name = "legetd" | |
6 | if script.Parent.className ~= 'HopperBin' then | |
7 | hop = Instance.new("HopperBin",game.Players[owner].Backpack) | |
8 | hop.Name = name | |
9 | script.Parent = hop | |
10 | script.Name = "Function" | |
11 | end | |
12 | hop = script.Parent | |
13 | ||
14 | debris = game:GetService("Debris") | |
15 | ||
16 | cfn,ang,v3n,ud2n,V2 = CFrame.new,CFrame.Angles,Vector3.new,UDim2.new,Vector2.new | |
17 | floatforce = 196.25 | |
18 | ||
19 | torso = char.Torso | |
20 | attacking = false | |
21 | track = false | |
22 | ||
23 | rs = torso["Right Shoulder"] | |
24 | ls = torso["Left Shoulder"] | |
25 | rh = torso["Right Hip"] | |
26 | lh = torso["Right Hip"] | |
27 | neck = torso["Neck"] | |
28 | rw,lw = nil,nil | |
29 | rhw,lhw = nil,nil | |
30 | local orgc1 = rs.C1 | |
31 | ||
32 | rarm = char["Right Arm"] | |
33 | larm = char["Left Arm"] | |
34 | rleg = char["Right Leg"] | |
35 | lleg = char["Left Leg"] | |
36 | ||
37 | normposr = cfn(1.5,.5,0) | |
38 | normposl = cfn(-1.5,.5,0) | |
39 | normposr2 = cfn(.5,-1.5,0) | |
40 | normposl2 = cfn(-.5,-1.5,0) | |
41 | normposn = CFrame.new(0,1,0,-1,-0,-0,0,0,1,0,1,0) | |
42 | ||
43 | holdpos = normposr*ang(math.pi/2,0,0) | |
44 | holdpos2 = normposl*ang(math.pi/2,0,0) | |
45 | ||
46 | ||
47 | T = {["P"] = function(x,y,z,color,transparency,cancollide,anchored,parent,typee) | |
48 | if typee ~= nil then | |
49 | c = Instance.new("WedgePart",m) | |
50 | else | |
51 | c = Instance.new("Part",m) | |
52 | end | |
53 | c.TopSurface,c.BottomSurface = 0,0 | |
54 | c.Locked = true | |
55 | c.formFactor = "Custom" | |
56 | c.Size = Vector3.new(x,y,z) | |
57 | if color ~= "random" then | |
58 | c.BrickColor = BrickColor.new(color) | |
59 | else c.BrickColor = BrickColor:random() end | |
60 | c.Transparency = transparency | |
61 | c.CanCollide = cancollide | |
62 | if anchored ~= nil then c.Anchored = anchored end | |
63 | if parent ~= nil then c.Parent = parent end | |
64 | return c | |
65 | ||
66 | end | |
67 | , | |
68 | ["C"] = function(func) coroutine.resume(coroutine.create(func)) end | |
69 | , | |
70 | ["W"] = function(part0,part1,x,y,z,rx,ry,rz,parent) | |
71 | w = Instance.new("Motor",m) | |
72 | if parent ~= nil then w.Parent = parent end | |
73 | w.Part0,w.Part1 = part0,part1 | |
74 | w.C1 = CFrame.new(x,y,z) * CFrame.Angles(rx,ry,rz) | |
75 | return w | |
76 | end | |
77 | , | |
78 | ["BG"] = function(parent) | |
79 | local c = Instance.new("BodyGyro",parent) | |
80 | c.P = 20e+003 | |
81 | c.cframe = parent.CFrame | |
82 | c.maxTorque = Vector3.new(c.P,c.P,c.P) | |
83 | return c | |
84 | end | |
85 | , | |
86 | ["BP"] = function(parent,position) | |
87 | local bp = Instance.new("BodyPosition",parent) | |
88 | bp.maxForce = Vector3.new()*math.huge | |
89 | bp.position = position | |
90 | return bp | |
91 | end | |
92 | , | |
93 | ["F"] = function(parent,size,heat,color,secondcolor,enabled) | |
94 | f = Instance.new("Fire",parent) | |
95 | f.Size = size | |
96 | f.Heat = heat | |
97 | if enabled ~= nil then f.Enabled = enabled end | |
98 | if color ~= nil then f.Color = BrickColor.new(color).Color end | |
99 | if secondcolor ~= nil then f.SecondaryColor = BrickColor.new(secondcolor).Color end | |
100 | return f | |
101 | end | |
102 | , | |
103 | ["FM"] = function(parent,meshid,x,y,z,meshtexture) | |
104 | if meshid == "cylinder" then | |
105 | mesh = Instance.new("CylinderMesh",parent) | |
106 | mesh.Scale = Vector3.new(x,y,z) | |
107 | return mesh | |
108 | else | |
109 | mesh = Instance.new("SpecialMesh",parent) | |
110 | ||
111 | if meshid ~= "sphere" then | |
112 | if type(meshid) == "number" then mesh.MeshId = "rbxassetid://"..meshid else | |
113 | mesh.MeshId = "rbxassetid://"..meshids[meshid] | |
114 | end | |
115 | ||
116 | else mesh.MeshType = 3 end | |
117 | ||
118 | mesh.Scale = Vector3.new(x,y,z) | |
119 | ||
120 | if meshtexture ~= nil then | |
121 | if type(meshtexture) == "number" then mesh.TextureId = "rbxassetid://"..meshtexture else | |
122 | mesh.TextureId = "rbxassetid://"..textureids[meshtexture] end | |
123 | ||
124 | end | |
125 | ||
126 | return mesh | |
127 | end | |
128 | end, | |
129 | ["Dec"] = function(parent,face,id,transparency) | |
130 | c = Instance.new("Decal",parent) | |
131 | c.Face = face | |
132 | c.Texture = id | |
133 | if transparency then c.Transparency = transparency end | |
134 | return c | |
135 | end, | |
136 | ["S"] = function(id,pitch,volume) | |
137 | found = false | |
138 | for i,v in pairs(char.Head:children()) do | |
139 | if v:IsA("Sound") and v.Name == id and not found then | |
140 | v.Pitch = pitch | |
141 | if volume then v.Volume = volume end | |
142 | v:Play() | |
143 | found = true | |
144 | return v | |
145 | end | |
146 | end | |
147 | end | |
148 | } | |
149 | ||
150 | ------MESHIDS--- | |
151 | meshids = {["penguin"] = 15853464, ["ring"] = 3270017, | |
152 | ["spike"] = 1033714,["cone"] = 1082802,["crown"] = 20329976,["crossbow"] = 15886761, | |
153 | ["cloud"] = 1095708,["mjolnir"] = 1279013,["diamond"] = 9756362, ["hand"] = 37241605, | |
154 | ["fist"] = 65322375,["skull"] = 36869983,["totem"] = 35624068,["spikeb"] = 9982590,["dragon"] = 58430372,["fish"] = 31221717, ["coffee"] = 15929962,["spiral"] = 1051557, | |
155 | ["ramen"] = 19380188,["lightning"] = 72583597,["bullet"]=2697549}---some meshids | |
156 | textureids = {["cone"] = 1082804,["rainbow"] = 28488599,["fish"] = 31221733, ["coffee"] = 24181455,["monster"] = 33366441,["ramen"] = 19380153} | |
157 | ----------------- | |
158 | soundids = {["bell"] = 20005706,["flintlock"] = 13510352,["falcon"] = 1387390,['sensa'] = 4700455, | |
159 | ['midas'] = 17385513,['splut'] = 16950449,['guitar'] = 1089407,['spark'] = 12555594,['knife'] = 1369159, | |
160 | ['awakenking'] = 8610025,['entertainer'] = 27697267,['chrono'] = 1280463 | |
161 | } | |
162 | for i,v in pairs(char.Head:children()) do for _,q in pairs(soundids) do if v.Name == q then v:Remove() end end end | |
163 | for i,v in pairs(soundids) do | |
164 | sound = Instance.new("Sound") | |
165 | sound.SoundId = "http://www.roblox.com/asset/?id="..v | |
166 | sound.Name = i | |
167 | sound.Parent = char.Head | |
168 | end | |
169 | ||
170 | lock = {["R"] = | |
171 | function(a) | |
172 | if a == 1 then | |
173 | rabrick = T.P(1,1,1,"White",1,false,false) | |
174 | rw = T.W(rabrick,torso,1.5,.5,0,0,0,0) | |
175 | T.W(rarm,rabrick,0,-.5,0,0,0,0) | |
176 | elseif a == 2 then | |
177 | rlbrick = T.P(1,1,1,"White",1,false,false) | |
178 | rhw = T.W(rlbrick,torso,-.5,-1.5,0,0,0,0) | |
179 | T.W(rleg,rlbrick,0,-.5,0,0,0,0) | |
180 | elseif a == 0 then | |
181 | rs.Parent = torso | |
182 | rw.Parent = nil | |
183 | rabrick:Destroy() rabrick = nil | |
184 | elseif a == -1 then | |
185 | rhw.Parent = nil | |
186 | rh.Parent = torso | |
187 | rlbrick:Destroy() rlbrick = nil | |
188 | end | |
189 | end | |
190 | , ["L"] = function(a) | |
191 | if a == 1 then | |
192 | labrick = T.P(1,1,1,"White",1,false,false) | |
193 | lw = T.W(labrick,torso,-1.5,.5,0,0,0,0) | |
194 | T.W(larm,labrick,0,-.5,0,0,0,0) | |
195 | elseif a == 2 then | |
196 | llbrick = T.P(1,1,1,"White",1,false,false) | |
197 | lhw = T.W(llbrick,torso,.5,-1.5,0,0,0,0) | |
198 | T.W(lleg,llbrick,0,-.5,0,0,0,0) | |
199 | elseif a == 0 then | |
200 | ls.Parent = torso | |
201 | lw.Parent = nil | |
202 | labrick:Destroy() labrick = nil | |
203 | elseif a == -1 then | |
204 | lhw.Parent = nil | |
205 | lh.Parent = torso | |
206 | llbrick:Destroy() llbrick = nil | |
207 | end | |
208 | end} | |
209 | ||
210 | ||
211 | M = {["R"] = function(a,b) return math.random(a,b) end, | |
212 | ["Cos"] = function(a) return math.cos(a) end, | |
213 | ["Sin"] = function(a) return math.sin(a) end, | |
214 | ["D"] = function(a) return math.rad(a) end | |
215 | } | |
216 | ||
217 | r = .5 | |
218 | ||
219 | function spin() | |
220 | lock.R(1) lock.L(1) | |
221 | ||
222 | for i = -90,50,25 do | |
223 | wait() | |
224 | rw.C1 = holdpos*ang(M.D(i),0,0) | |
225 | lw.C1 = holdpos2*ang(M.D(i),0,0) | |
226 | end | |
227 | snd = T.S('chrono',1,100) | |
228 | holding = true | |
229 | selectbox = Instance.new("SelectionBox",ply.PlayerGui) | |
230 | while holding do | |
231 | for i = 310,50,-25 do | |
232 | wait() | |
233 | rw.C1 = holdpos*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
234 | lw.C1 = holdpos2*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
235 | end | |
236 | ||
237 | for i = 50,310,25 do | |
238 | wait() | |
239 | rw.C1 = holdpos*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
240 | lw.C1 = holdpos2*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
241 | end | |
242 | end | |
243 | ||
244 | for i = 310,0,-25 do | |
245 | wait() | |
246 | rw.C1 = holdpos*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
247 | lw.C1 = holdpos2*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
248 | end | |
249 | for i = 50,-90,25 do | |
250 | wait() | |
251 | rw.C1 = holdpos*ang(M.D(i),0,0) | |
252 | lw.C1 = holdpos2*ang(M.D(i),0,0) | |
253 | end | |
254 | lock.R(0) lock.L(0) | |
255 | snd:Stop() | |
256 | end | |
257 | ||
258 | wspeed = char.Humanoid.WalkSpeed | |
259 | ||
260 | r = .7 r2 = .3 | |
261 | function spin2() | |
262 | T.S('sensa',2) | |
263 | lock.R(1) lock.L(1) lock.R(2) lock.L(2) | |
264 | lhw.C1 = normposl2*ang(M.D(-30),0,0) | |
265 | rhw.C1 = normposr2*ang(M.D(-30),0,0) | |
266 | char.Humanoid.WalkSpeed = 50 | |
267 | neck.C0 = normposn*ang(M.D(-40),0,0) | |
268 | for i = -90,50,25 do | |
269 | wait() | |
270 | rw.C1 = holdpos*ang(M.D(i),0,0) | |
271 | lw.C1 = holdpos2*ang(M.D(i),0,0) | |
272 | end | |
273 | holding = true | |
274 | ||
275 | local cons = {rarm.Touched:connect(function() T.S('splut',1.8) end), | |
276 | larm.Touched:connect(function() T.S('splut',1.8) end)} | |
277 | ||
278 | -------LOOP--- | |
279 | while holding do | |
280 | for i = 310,0,-60 do | |
281 | wait() | |
282 | rw.C1 = holdpos*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
283 | lw.C1 = holdpos2*ang(-M.Cos(M.D(i))*r,0,-M.Sin(M.D(i))*r) | |
284 | end | |
285 | for i = 0,310,60 do | |
286 | wait() | |
287 | rw.C1 = holdpos*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
288 | lw.C1 = holdpos2*ang(-M.Cos(M.D(i))*r,0,-M.Sin(M.D(i))*r) | |
289 | end | |
290 | ||
291 | end | |
292 | -------LOOP--- | |
293 | neck.C0 = normposn | |
294 | char.Humanoid.WalkSpeed = wspeed | |
295 | lock.R(-1) lock.L(-1) | |
296 | for i = 310,0,-25 do | |
297 | wait() | |
298 | rw.C1 = holdpos*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
299 | lw.C1 = holdpos2*ang(M.Cos(M.D(i))*r,0,M.Sin(M.D(i))*r) | |
300 | end | |
301 | for i = 50,-90,25 do | |
302 | wait() | |
303 | rw.C1 = holdpos*ang(M.D(i),0,0) | |
304 | lw.C1 = holdpos2*ang(M.D(i),0,0) | |
305 | end | |
306 | for i,v in pairs(cons) do v:disconnect() end | |
307 | lock.R(0) lock.L(0) | |
308 | end | |
309 | ||
310 | prev,prev2 = holdpos*ang(math.pi/2,0,M.D(40)),holdpos2*ang(math.pi/2,0,M.D(-40)) | |
311 | ||
312 | function jump() | |
313 | -------JUMP----- | |
314 | lock.R(2) lock.L(2) | |
315 | char.Humanoid.Jump = true | |
316 | lhw.C1 = normposl2*ang(0,0,M.D(-40)) rhw.C1 = normposr2*ang(0,0,M.D(40)) | |
317 | bd = Instance.new("BodyForce",torso) bd.force = v3n(0,floatforce+3,0) | |
318 | wait(1) | |
319 | lock.R(-1) lock.L(-1) | |
320 | bd:Remove() | |
321 | -------JUMP----- | |
322 | end | |
323 | function headbang() | |
324 | lock.R(1) lock.L(1) | |
325 | holding = true | |
326 | while holding do | |
327 | for i = 0,40,10 do | |
328 | wait() | |
329 | neck.C0 = normposn*ang(M.D(i),0,0) | |
330 | rw.C1 = prev*ang(M.D(-i),0,0) | |
331 | lw.C1 = prev2*ang(M.D(-i),0,0) | |
332 | end | |
333 | T.S('guitar',1) | |
334 | local p = T.P(1,1,1,'New Yeller',0,false,false) | |
335 | p.CFrame = cfn(char.Head.Position+torso.CFrame.lookVector*1,char.Head.Position+torso.CFrame.lookVector*2) | |
336 | T.FM(p,'ring',3,3,1) | |
337 | Instance.new("BodyForce",p).force = torso.CFrame.lookVector*30 + v3n(0,p:GetMass()*floatforce,0) | |
338 | delay(.5,function() for i = 3,30 do wait() p.Mesh.Scale = v3n(i,i,1) p.Transparency = i/30 end p:Remove() end) | |
339 | for i = 40,0,-10 do | |
340 | wait() | |
341 | neck.C0 = normposn*ang(M.D(i),0,0) | |
342 | rw.C1 = prev*ang(M.D(-i),0,0) | |
343 | lw.C1 = prev2*ang(M.D(-i),0,0) | |
344 | end | |
345 | end | |
346 | lock.R(0) lock.L(0) | |
347 | end | |
348 | hum = char.Humanoid | |
349 | restbp = nil | |
350 | restbg = nil | |
351 | function rest() | |
352 | if not restbp then | |
353 | lock.R(1) lock.L(1) lock.R(2) lock.L(2) | |
354 | tyu = cfn(.2,.2,-.2) | |
355 | tyu1 = cfn(-.2,.2,-.2) | |
356 | tyu2 = cfn(-.1,.2,-.2) | |
357 | rw.C1 = (holdpos*tyu1)*ang(M.D(100),0,M.D(-30)) | |
358 | lw.C1 = (holdpos2*tyu)*ang(M.D(100),0,M.D(30)) | |
359 | neck.C0 = normposn*ang(M.D(20),0,0) | |
360 | lhw.C1 = (normposr2*tyu2)*ang(M.D(20),0,M.D(-20)) | |
361 | rhw.C1 = (normposl2)*ang(M.D(5),0,M.D(10)) | |
362 | ||
363 | pos = torso.CFrame | |
364 | restbp = T.BP(torso,pos.p) | |
365 | cloud = T.P(5,2,5,'White',.5,false,false) T.FM(cloud,'cloud',5,2,5) | |
366 | cloud.Position = pos.p | |
367 | T.W(cloud,torso,0,0,.8,-math.pi/2,0,0) | |
368 | ||
369 | T.C(function() | |
370 | while wait() do | |
371 | for i = 0,.5,.05 do | |
372 | restbp.position = pos.p+v3n(0,i,0) | |
373 | wait(.2) | |
374 | end | |
375 | for i = .5,0,-.05 do | |
376 | restbp.position = pos.p+v3n(0,i,0) | |
377 | wait(.2) | |
378 | end | |
379 | end | |
380 | end) | |
381 | ||
382 | restbg = T.BG(torso) | |
383 | restbg.cframe = pos*ang(math.pi/2,0,0) | |
384 | hum.PlatformStand = true | |
385 | else | |
386 | hum.PlatformStand = false | |
387 | for i = -1,0 do lock.R(i) lock.L(i) end | |
388 | cloud:Remove() | |
389 | restbp:Remove() | |
390 | restbg:Remove() | |
391 | neck.C0 = normposn | |
392 | torso.CFrame = pos | |
393 | restbp,restbg = nil,nil | |
394 | ||
395 | end | |
396 | end | |
397 | ||
398 | function spaas(position,radius,number,color) | |
399 | ||
400 | mode = Instance.new("Model",m) | |
401 | for i = 1,3 do | |
402 | pos = position+v3n(M.R(-radius,radius),M.R(-radius,radius),M.R(-radius,radius)) | |
403 | mag = (position-pos).magnitude | |
404 | ||
405 | col = color or 'Toothpaste' | |
406 | local laz = T.P(.1,mag,.1,col,0,false,true,mode) | |
407 | ||
408 | T.FM(laz,'cylinder',.3,1,.3) | |
409 | laz.CFrame = (cfn(position,pos)*cfn(0,0,-mag/2))*ang(math.pi/2,0,0) | |
410 | ||
411 | cframe = (laz.CFrame*cfn(0,-mag/2,0)).p | |
412 | pos2 = cframe+v3n(M.R(-radius,radius),M.R(-radius,radius),M.R(-radius,radius)) | |
413 | mag2 = (cframe-pos2).magnitude | |
414 | local laz2 = T.P(.1,mag2,.1,col,0,false,true,mode) | |
415 | T.FM(laz2,'cylinder',.3,1,.3) | |
416 | laz2.CFrame = (cfn(cframe,pos2)*cfn(0,0,-mag2/2))*ang(math.pi/2,0,0) | |
417 | ||
418 | previo = laz2 | |
419 | for i = 1,number do | |
420 | cframe = (previo.CFrame*cfn(0,-mag/2,0)).p | |
421 | pos2 = cframe+v3n(M.R(-radius,radius),M.R(-radius,radius),M.R(-radius,radius)) | |
422 | mag2 = (cframe-pos2).magnitude | |
423 | ||
424 | local laz2 = T.P(.1,mag2,.1,col,0,false,true,mode) | |
425 | T.FM(laz2,'cylinder',.3,1,.3) | |
426 | laz2.CFrame = (cfn(cframe,pos2)*cfn(0,0,-mag2/2))*ang(math.pi/2,0,0) | |
427 | ||
428 | previo = laz2 | |
429 | end | |
430 | ||
431 | end | |
432 | debris:AddItem(mode,.1) | |
433 | end | |
434 | ||
435 | function lazors() | |
436 | holding = true | |
437 | ||
438 | while holding do | |
439 | T.S('spark',1) | |
440 | spaas(torso.Position,1,3) | |
441 | wait() | |
442 | end | |
443 | end | |
444 | ||
445 | dolls = {} | |
446 | function doll() | |
447 | local doll = Instance.new("Model",m) | |
448 | doll.Name = 'Claydoll' | |
449 | table.insert(dolls,doll) | |
450 | col = 'White' | |
451 | ||
452 | p = T.P(2,2,1,col,0,true,false,doll) p.Position = torso.Position+torso.CFrame.lookVector*5 p.Name = 'Torso' | |
453 | p2 = T.P(1,2,1,col,0,true,false,doll) p2.Name = 'Left Arm' | |
454 | T.W(p2,p,1.5,0,0,0,0,0) | |
455 | p2 = T.P(1,2,1,col,0,true,false,doll) p2.Name = 'Right Arm' | |
456 | T.W(p2,p,-1.5,0,0,0,0,0) | |
457 | p2 = T.P(1,2,1,col,0,true,false,doll) p2.Name = 'Right Leg' | |
458 | T.W(p2,p,-.5,-2,0,0,0,0) | |
459 | p2 = T.P(1,2,1,col,0,true,false,doll) p2.Name = 'Left Leg' | |
460 | T.W(p2,p,.5,-2,0,0,0,0) | |
461 | p2 = T.P(1,1,1,col,0,true,false,doll) p2.Name = 'Head' | |
462 | T.W(p2,p,0,1.5,0,0,0,0) Instance.new("SpecialMesh",p2).Scale = v3n(1.25,1.25,1.25) | |
463 | end | |
464 | ||
465 | function spare() | |
466 | lock.R(1) | |
467 | local ball = T.P(1,1,1,'Deep blue',1,true,false) ball.Shape = 0 | |
468 | ball.Touched:connect(function(hit) | |
469 | for i,v in pairs(dolls) do if hit.Parent == v then | |
470 | ball:BreakJoints() | |
471 | T.W(ball,v.Torso,0,0,0,0,0,0) | |
472 | Instance.new("Humanoid",v) | |
473 | T.S('midas',1) | |
474 | T.C(function() | |
475 | local ef = T.P(1,1,1,'New Yeller',0,false,true) | |
476 | ef.CFrame = ball.CFrame | |
477 | local msh = T.FM(ef,'sphere',1,1,1) | |
478 | for i = 1,30 do | |
479 | msh.Scale = v3n(i,i,i) | |
480 | ef.Transparency = i/30 | |
481 | wait() | |
482 | end | |
483 | ef:Remove() | |
484 | end) | |
485 | end end | |
486 | end) | |
487 | ||
488 | wld = T.W(ball,rarm,0,-1,0,0,0,0) | |
489 | rw.C1 = holdpos*cfn(0,.5,0) | |
490 | for i = 1,0,-.05 do wait() ball.Transparency = i end | |
491 | rw.C1 = holdpos*cfn(0,-.3,0) | |
492 | wait() | |
493 | wld:Remove() | |
494 | Instance.new("BodyForce",ball).force = torso.CFrame.lookVector*4 + v3n(0,ball:GetMass()*floatforce,0) | |
495 | T.C(function(hit) | |
496 | while wait(.5) do | |
497 | if ball.Parent == nil then break end | |
498 | for i = 1,3 do | |
499 | spaas(ball.Position,1,3,'New Yeller') | |
500 | wait() | |
501 | end | |
502 | end | |
503 | end) | |
504 | wait(.3) lock.R(0) | |
505 | end | |
506 | ||
507 | function grab(a,b,speed) | |
508 | if speed then c = speed else c = 5 end | |
509 | local er,er2,er3 | |
510 | if b == 1 then er,er2,er3 = 0,40,c | |
511 | elseif b == 0 then er,er2,er3 = 40,0,-c | |
512 | end | |
513 | ||
514 | for i = er,er2,er3 do | |
515 | wait() | |
516 | ||
517 | if a == 1 then | |
518 | lw.C1 = normposl*ang(M.D(-i),0,M.D(i/(50/40))) | |
519 | elseif a == 2 then | |
520 | rw.C1 = normposr*ang(M.D(-i),0,M.D(-i/(50/40))) | |
521 | elseif a == 3 then | |
522 | lw.C1 = normposl*ang(M.D(-i),0,M.D(i/(50/40))) | |
523 | rw.C1 = normposr*ang(M.D(-i),0,M.D(-i/(50/40))) | |
524 | end | |
525 | ||
526 | end | |
527 | end | |
528 | ||
529 | afro = nil | |
530 | function disco() | |
531 | foundhat = false | |
532 | for i,v in pairs(char:children()) do if v:IsA("Hat") then foundhat = true end end | |
533 | lock.R(1) lock.L(1) | |
534 | if foundhat or afro then | |
535 | for i = 0,180,20 do | |
536 | wait() | |
537 | rw.C1 = normposr*ang(M.D(i),0,M.D(i/(180/-20))) | |
538 | neck.C0 = normposn*ang(0,M.D(i/(180/-20)),0) | |
539 | end | |
540 | wait(.1) | |
541 | neck.C0 = normposn | |
542 | if afro then | |
543 | headweld = afroweld | |
544 | headweld.Part1 = rarm | |
545 | ||
546 | headweld.C1 = cfn(0,-1.5,0) | |
547 | else | |
548 | headweld = char.Head.HeadWeld | |
549 | headweld.Part0 = rarm | |
550 | ||
551 | headweld.C0 = cfn(0,-1.5,0) | |
552 | end | |
553 | for i = 180,0,-20 do | |
554 | wait() | |
555 | rw.C1 = normposr*ang(M.D(i),0,M.D(i/(180/-20))) | |
556 | neck.C0 = normposn*ang(0,M.D(i/(180/-20)),0) | |
557 | end | |
558 | grab(2,1,10) | |
559 | headweld:Remove() | |
560 | wait(.3) | |
561 | grab(2,0,10) | |
562 | if afro then afro = nil lock.R(0) lock.L(0) return end | |
563 | end | |
564 | if not afro then | |
565 | grab(2,1,10) | |
566 | afro = T.P(1,1,1,'Brown',0,false,false) | |
567 | msh = T.FM(afro,11412443,1,1,1,55078516) | |
568 | afroweld = T.W(afro,rarm,0,-1.5,0,0,math.pi,0) | |
569 | grab(2,0,10) | |
570 | ||
571 | for i = 0,180,20 do | |
572 | wait() | |
573 | rw.C1 = normposr*ang(M.D(i),0,M.D(i/(180/-20))) | |
574 | neck.C0 = normposn*ang(0,M.D(i/(180/-20)),0) | |
575 | end | |
576 | ||
577 | afroweld.Part1 = char.Head | |
578 | afroweld.C1 = cfn(0,.9,0) | |
579 | rw.C1 = holdpos*ang(M.D(90),0,0) | |
580 | for i = 180,0,-20 do | |
581 | wait() | |
582 | rw.C1 = normposr*ang(M.D(i),0,M.D(i/(180/-20))) | |
583 | neck.C0 = normposn*ang(0,M.D(i/(180/-20)),0) | |
584 | end | |
585 | end | |
586 | lock.R(0) lock.L(0) | |
587 | end | |
588 | ||
589 | function teleport(mouse) | |
590 | char:MoveTo(mouse.hit.p) | |
591 | end | |
592 | ||
593 | klist = { | |
594 | {'f',function() headbang() end,''}, | |
595 | {'q',function() spin2() end,''}, | |
596 | {'e',function() spin() end,''}, | |
597 | {'c',function() rest() end}, | |
598 | {'r',function() lazors() end,''}, | |
599 | {'g',function() spare() end}, | |
600 | {'v',function() disco() end}, | |
601 | {'t',function(a) teleport(a) end}, | |
602 | {'h',function() doll() end} | |
603 | } | |
604 | ||
605 | function bowl() return end | |
606 | ||
607 | hop.Deselected:connect(function() lock.R(0) lock.L(0) end) | |
608 | hop.Selected:connect(function(mouse) | |
609 | mouse.Button1Up:connect(function() holding = false end) | |
610 | mouse.KeyUp:connect(function(a) for i,v in pairs(klist) do if a == v[1] and v[3] ~= nil then holding = false end end end) | |
611 | mouse.KeyDown:connect(function(key) if attacking then return end | |
612 | for i,v in pairs(klist) do | |
613 | if key == v[1] then attacking = true v[2](mouse) attacking = false end | |
614 | end | |
615 | end) | |
616 | ||
617 | mouse.Button1Down:connect(function() if attacking then return end attacking = true bowl(mouse) attacking = false end) | |
618 | end) | |
619 | --medifire |