View difference between Paste ID: aU3dGnyX and eyhGzEWP
SHOW: | | - or go back to the newest paste.
1
--==//==--
2
local Player = game:service("Players").LocalPlayer
3
local Char = Player.Character
4
local mouse = Player:GetMouse()
5
local Humanoid = Char:findFirstChild("Humanoid")
6
local Torso = Char:findFirstChild("Torso")
7
----------------------------------------------------------
8
z = Instance.new("Sound", Torso)
9-
z.SoundId = "rbxassetid://363431287" -- Put Music ID Here.
9+
z.SoundId = "rbxassetid://444584538" -- Put Music ID Here.
10
z.Looped = true
11
z.Volume = 10
12
wait(.1)
13
z:Play()
14
15
script.Parent = nil
16
17
function fly()
18
19
for i,v in pairs(script:GetChildren()) do
20
21
        pcall(function() v.Value = "" end)
22
23
        game:GetService("Debris"):AddItem(v,.1)
24
25
end
26
27
function weld(p0,p1,c0,c1,par)
28
29
        local w = Instance.new("Weld",p0 or par)
30
31
        w.Part0 = p0
32
33
        w.Part1 = p1
34
35
        w.C0 = c0 or CFrame.new()
36
37
        w.C1 = c1 or CFrame.new()
38
39
        return w
40
41
end
42
43
local motors = {}
44
45
function motor(p0,p1,c0,c1,des,vel,par)
46
47
        local w = Instance.new("Motor6D",p0 or par)
48
49
        w.Part0 = p0
50
51
        w.Part1 = p1
52
53
        w.C0 = c0 or CFrame.new()
54
55
        w.C1 = c1 or CFrame.new()
56
57
        w.MaxVelocity = tonumber(vel) or .05
58
59
        w.DesiredAngle = tonumber(des) or 0
60
61
        return w
62
63
end
64
65
function lerp(a,b,c)
66
67
    return a+(b-a)*c
68
69
end
70
71
function clerp(c1,c2,al)
72
73
        local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
74
75
        local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
76
77
        for i,v in pairs(com1) do
78
79
                com1[i] = lerp(v,com2[i],al)
80
81
        end
82
83
        return CFrame.new(com1[1],com1[2],com1[3]) * CFrame.Angles(select(4,unpack(com1)))
84
85
end
86
87
function ccomplerp(c1,c2,al)
88
89
        local com1 = {c1:components()}
90
91
        local com2 = {c2:components()}
92
93
        for i,v in pairs(com1) do
94
95
                com1[i] = lerp(v,com2[i],al)
96
97
        end
98
99
        return CFrame.new(unpack(com1))
100
101
end
102
103
function tickwave(time,length,offset)
104
105
        return (math.abs((tick()+(offset or 0))%time-time/2)*2-time/2)/time/2*length
106
107
end
108
109
function invcol(c)
110
111
        c = c.Color
112
113
        return BrickColor.new(Color3.new(1-c.b,1-c.g,1-c.r))
114
115
end
116
117
local oc = oc or function(...) return ... end
118
119
local plr = game.Players.LocalPlayer
120
121
local char = plr.Character
122
123
local tor = char.Torso
124
125
local hum = char.Humanoid
126
127
hum.PlatformStand = false
128
129
pcall(function()
130
131
        char.Wings:Destroy()
132
133
end)
134
135
pcall(function()
136
137
        char.Angel:Destroy() -- hat
138
139
end)
140
141
local mod = Instance.new("Model",char)
142
143
mod.Name = "Wings"
144
145
local special = {
146
147
        --antiboomz0r = {"Really black","Institutional white",0,0,false,Color3.new(1,1,.95),Color3.new(1,1,.6)},
148
149
        antiboomz0r = {"New Yeller",nil,0.4,0.7,true,Color3.new(1,1,.95),Color3.new(1,1,.6)},
150
151
        --antiboomz0r = {"Cyan","Toothpaste",0,0,false,Color3.new(1,0,0),Color3.new(0,0,0)},
152
153
        taart = {"Royal purple",nil,.4,.4,true},
154
155
        mitta = {"Black",nil,0,0,false},
156
157
        penjuin3 = {"White",nil,0,0,false},
158
159
        thepc8110 = {"Black","Bright red",.5,0,false,Color3.new(1,0,0),Color3.new(0,0,0)},
160
161
        nonspeaker = {"Cyan","Toothpaste",0,0,false,Color3.new(1,0,0),Color3.new(0,0,0)},
162
163
        littleau999 = {"Reddish brown",1030,0,0,false},
164
165
        unscripter = {"Really black","Really black",.2,0,true,Color3.new(0,0,0),Color3.new(0,0,0)},
166
167
        oxcool1 = {"Really black","White",.2,0,false,Color3.new(0,0,0),Color3.new(0,0,0)},
168
169
        krodmiss = {"Really black",nil,0,0,false},
170
171
}
172
173
local topcolor = invcol(char.Torso.BrickColor)
174
175
local feacolor = char.Torso.BrickColor
176
177
local ptrans = 0
178
179
local pref = 0
180
181
local fire = false
182
183
local fmcol = Color3.new()
184
185
local fscol = Color3.new()
186
187
local spec = special[plr.Name:lower()]
188
189
if spec then
190
191
        topcolor,feacolor,ptrans,pref,fire,fmcol,fscol = spec[1] and BrickColor.new(spec[1]) or topcolor,spec[2] and BrickColor.new(spec[2]) or feacolor,spec[3],spec[4],spec[5],spec[6],spec[7]
192
193
end
194
195
local part = Instance.new("Part")
196
197
part.FormFactor = "Custom"
198
199
part.Size = Vector3.new(.2,.2,.2)
200
201
part.TopSurface,part.BottomSurface = 0,0
202
203
part.CanCollide = false
204
205
part.BrickColor = topcolor
206
207
part.Transparency = ptrans
208
209
part.Reflectance = pref
210
211
local ef = Instance.new("Fire",fire and part or nil)
212
213
ef.Size = .15
214
215
ef.Color = fmcol or Color3.new()
216
217
ef.SecondaryColor = fscol or Color3.new()
218
219
part:BreakJoints()
220
221
222
function newpart()
223
224
        local clone = part:Clone()
225
226
        clone.Parent = mod
227
228
        clone:BreakJoints()
229
230
        return clone
231
232
end
233
234
local feath = newpart()
235
236
feath.BrickColor = feacolor
237
238
feath.Transparency = 0
239
240
Instance.new("SpecialMesh",feath).MeshType = "Sphere"
241
242
function newfeather()
243
244
        local clone = feath:Clone()
245
246
        clone.Parent = mod
247
248
        clone:BreakJoints()
249
250
        return clone
251
252
end
253
254
255
---------- RIGHT WING
256
257
local r1 = newpart()
258
259
r1.Size = Vector3.new(.3,1.5,.3)*1.2
260
261
local rm1 = motor(tor,r1,CFrame.new(.35,.6,.4) * CFrame.Angles(0,0,math.rad(-60)) * CFrame.Angles(math.rad(30),math.rad(-25),0),CFrame.new(0,-.8,0),.1)
262
263
local r2 = newpart()
264
265
r2.Size = Vector3.new(.4,1.8,.4)*1.2
266
267
local rm2 = motor(r1,r2,CFrame.new(0,.75,0) * CFrame.Angles(0,0,math.rad(50)) * CFrame.Angles(math.rad(-30),math.rad(15),0),CFrame.new(0,-.9,0),.1)
268
269
local r3 = newpart()
270
271
r3.Size = Vector3.new(.3,2.2,.3)*1.2
272
273
local rm3 = motor(r2,r3,CFrame.new(.1,.9,0) * CFrame.Angles(0,0,math.rad(-140)) * CFrame.Angles(math.rad(-3),0,0),CFrame.new(0,-1.1,0),.1)
274
275
local r4 = newpart()
276
277
r4.Size = Vector3.new(.25,1.2,.25)*1.2
278
279
local rm4 = motor(r3,r4,CFrame.new(0,1.1,0) * CFrame.Angles(0,0,math.rad(-10)) * CFrame.Angles(math.rad(-3),0,0),CFrame.new(0,-.6,0),.1)
280
281
local feather = newfeather()
282
283
feather.Mesh.Scale = Vector3.new(1,1,1)
284
285
feather.Size = Vector3.new(.4,3,.3)
286
287
weld(r4,feather,CFrame.new(-.1,-.3,0),CFrame.new(0,-1.5,0))
288
289
feather = newfeather()
290
291
feather.Mesh.Scale = Vector3.new(1,1,1)
292
293
feather.Size = Vector3.new(.4,2.3,.3)
294
295
weld(r4,feather,CFrame.new(.1,-.1,0) * CFrame.Angles(0,math.random()*.1,0),CFrame.new(0,-1.1,0))
296
297
feather = newfeather()
298
299
feather.Mesh.Scale = Vector3.new(1,1,1)
300
301
feather.Size = Vector3.new(.35,2.2,.25)
302
303
weld(r4,feather,CFrame.new(.1,-.3,0) * CFrame.Angles(0,math.random()*.1,math.rad(-10)),CFrame.new(0,-1.1,0))
304
305
local rf3 = {}
306
307
for i=0,7 do
308
309
        feather = newfeather()
310
311
        feather.Mesh.Scale = Vector3.new(1,1,1)
312
313
        feather.Size = Vector3.new(.45,2.2,.35)
314
315
        table.insert(rf3,motor(r3,feather,CFrame.new(.05,1-i*.285,0) * CFrame.Angles(0,math.random()*.1,math.rad(-25-i*2)),CFrame.new(0,-feather.Size.Y/2,0)))
316
317
end
318
319
local rf2 = {}
320
321
for i=0,6 do
322
323
        feather = newfeather()
324
325
        feather.Mesh.Scale = Vector3.new(1,1,1)
326
327
        feather.Size = Vector3.new(.45,2.2-i*.08,.3)
328
329
        table.insert(rf2,motor(r2,feather,CFrame.new(.05,.75-i*.26,0) * CFrame.Angles(0,math.random()*.1,math.rad(-75-i*4)),CFrame.new(0,-feather.Size.Y/2,0)))
330
331
end
332
333
local rf1 = {}
334
335
for i=0,6 do
336
337
        feather = newfeather()
338
339
        feather.Mesh.Scale = Vector3.new(1,1,1)
340
341
        feather.Size = Vector3.new(.37,1.65-i*.06,.25)
342
343
        table.insert(rf1,motor(r1,feather,CFrame.new(.05,.63-i*.21,0) * CFrame.Angles(0,math.random()*.05,math.rad(-75)),CFrame.new(0,-feather.Size.Y/2,0)))
344
345
end
346
347
---------- LEFT WING
348
349
local l1 = newpart()
350
351
l1.Size = Vector3.new(.3,1.5,.3)*1.2
352
353
local lm1 = motor(tor,l1,CFrame.new(-.35,.6,.4) * CFrame.Angles(0,0,math.rad(60)) * CFrame.Angles(math.rad(30),math.rad(25),0) * CFrame.Angles(0,-math.pi,0),CFrame.new(0,-.8,0) ,.1)
354
355
local l2 = newpart()
356
357
l2.Size = Vector3.new(.4,1.8,.4)*1.2
358
359
local lm2 = motor(l1,l2,CFrame.new(0,.75,0) * CFrame.Angles(0,0,math.rad(50)) * CFrame.Angles(math.rad(30),math.rad(-15),0),CFrame.new(0,-.9,0),.1)
360
361
local l3 = newpart()
362
363
l3.Size = Vector3.new(.3,2.2,.3)*1.2
364
365
local lm3 = motor(l2,l3,CFrame.new(.1,.9,0) * CFrame.Angles(0,0,math.rad(-140)) * CFrame.Angles(math.rad(3),0,0),CFrame.new(0,-1.1,0),.1)
366
367
local l4 = newpart()
368
369
l4.Size = Vector3.new(.25,1.2,.25)*1.2
370
371
local lm4 = motor(l3,l4,CFrame.new(0,1.1,0) * CFrame.Angles(0,0,math.rad(-10)) * CFrame.Angles(math.rad(3),0,0),CFrame.new(0,-.6,0),.1)
372
373
local feather = newfeather()
374
375
feather.Mesh.Scale = Vector3.new(1,1,1)
376
377
feather.Size = Vector3.new(.4,3,.3)
378
379
weld(l4,feather,CFrame.new(-.1,-.3,0),CFrame.new(0,-1.5,0))
380
381
feather = newfeather()
382
383
feather.Mesh.Scale = Vector3.new(1,1,1)
384
385
feather.Size = Vector3.new(.4,2.3,.3)
386
387
weld(l4,feather,CFrame.new(.1,-.1,0) * CFrame.Angles(0,math.random()*.1,0),CFrame.new(0,-1.1,0))
388
389
feather = newfeather()
390
391
feather.Mesh.Scale = Vector3.new(1,1,1)
392
393
feather.Size = Vector3.new(.35,2.2,.25)
394
395
weld(l4,feather,CFrame.new(.1,-.3,0) * CFrame.Angles(0,math.random()*.1,math.rad(-10)),CFrame.new(0,-1.1,0))
396
397
local lf3 = {}
398
399
for i=0,7 do
400
401
        feather = newfeather()
402
403
        feather.Mesh.Scale = Vector3.new(1,1,1)
404
405
        feather.Size = Vector3.new(.45,2.2,.35)
406
407
        table.insert(lf3,motor(l3,feather,CFrame.new(.05,1-i*.285,0) * CFrame.Angles(0,math.random()*.1,math.rad(-25-i*2)),CFrame.new(0,-feather.Size.Y/2,0)))
408
409
end
410
411
local lf2 = {}
412
413
for i=0,6 do
414
415
        feather = newfeather()
416
417
        feather.Mesh.Scale = Vector3.new(1,1,1)
418
419
        feather.Size = Vector3.new(.45,2.2-i*.08,.3)
420
421
        table.insert(lf2,motor(l2,feather,CFrame.new(.05,.75-i*.26,0) * CFrame.Angles(0,math.random()*.1,math.rad(-75-i*4)),CFrame.new(0,-feather.Size.Y/2,0)))
422
423
end
424
425
local lf1 = {}
426
427
for i=0,6 do
428
429
        feather = newfeather()
430
431
        feather.Mesh.Scale = Vector3.new(1,1,1)
432
433
        feather.Size = Vector3.new(.37,1.65-i*.06,.25)
434
435
        table.insert(lf1,motor(l1,feather,CFrame.new(.05,.63-i*.21,0) * CFrame.Angles(0,math.random()*.05,math.rad(-75)),CFrame.new(0,-feather.Size.Y/2,0)))
436
437
end
438
439
local rwing = {rm1,rm2,rm3,rm4}
440
441
local lwing = {lm1,lm2,lm3,lm4}
442
443
local oc0 = {}
444
445
for i,v in pairs(rwing) do
446
447
        oc0[v] = v.C0
448
449
end
450
451
for i,v in pairs(lwing) do
452
453
        oc0[v] = v.C0
454
455
end
456
457
function gotResized()
458
459
        if lastsize then
460
461
                if tor.Size == lastsize then return end -- This shouldn't happen?
462
463
                local scaleVec = tor.Size/lastsize
464
465
                for i,v in pairs(oc0) do
466
467
                        oc0[i] = v-v.p+scaleVec*v.p
468
469
                end
470
471
                lastsize = tor.Size
472
473
        end
474
475
        lastsize = tor.Size
476
477
end
478
479
tor.Changed:connect(function(p)
480
481
        if p == "Size" then
482
483
                gotResized()
484
485
        end
486
487
end)
488
489
gotResized()
490
491
local idle = {0,0.5,-.2,0; .05,.05,.1,.05; -.6,-1.5,.1,0;}--0,.3,0,0
492
493
local outlow = {-.7,-.2,1.8,0; .3,.05,.1,.05; .2,0,0,0}
494
495
local outhigh = {.5,-.2,1.8,0; .3,.05,.1,.05; .2,0,0,0}
496
497
local veryhigh = {.9,-.3,1.9,0; .3,.05,.1,.05; .2,0,0,0}
498
499
local flap1 = {-.3,.3,1.1,-.2; .3,.05,.1,.05; .2,-.6,0,0}
500
501
local divebomb = {0,.2,.4,-.7; .3,.05,.1,.05; 0,-.5,-.6,0}
502
503
504
function setwings(tab,time)
505
506
        time = time or 10
507
508
        for i=1,4 do
509
510
                rwing[i].DesiredAngle = tab[i]
511
512
                lwing[i].DesiredAngle = tab[i]
513
514
                rwing[i].MaxVelocity = math.abs(tab[i]-rwing[i].CurrentAngle)/time
515
516
                lwing[i].MaxVelocity = math.abs(tab[i]-lwing[i].CurrentAngle)/time
517
518
                local rcf = oc0[rwing[i]] * (tab[12+i] or CFrame.new())
519
520
                local lcf = oc0[lwing[i]] * (tab[12+i] or CFrame.new())
521
522
        end
523
524
        for i,v in pairs(rf1) do
525
526
                v.DesiredAngle = tab[9]
527
528
                v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
529
530
        end
531
532
        for i,v in pairs(lf1) do
533
534
                v.DesiredAngle = tab[9]
535
536
                v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
537
538
        end
539
540
        for i,v in pairs(rf2) do
541
542
                v.DesiredAngle = tab[10]
543
544
                v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
545
546
        end
547
548
        for i,v in pairs(lf2) do
549
550
                v.DesiredAngle = tab[10]
551
552
                v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
553
554
        end
555
556
        for i,v in pairs(rf3) do
557
558
                v.DesiredAngle = tab[11]
559
560
                v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
561
562
        end
563
564
        for i,v in pairs(lf3) do
565
566
                v.DesiredAngle = tab[11]
567
568
                v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
569
570
        end
571
572
end
573
574
setwings(outhigh,1)
575
576
flying = false
577
578
moving = false
579
580
for i,v in pairs(tor:GetChildren()) do
581
582
        if v.ClassName:lower():match("body") then
583
584
                v:Destroy()
585
586
        end
587
588
end
589
590
local ctor = tor:Clone()
591
592
ctor:ClearAllChildren()
593
594
ctor.Name = "cTorso"
595
596
ctor.Transparency = 1
597
598
ctor.CanCollide = false
599
600
ctor.FormFactor = "Custom"
601
602
ctor.Size = Vector3.new(.2,.2,.2)
603
604
ctor.Parent = mod
605
606
weld(tor,ctor)
607
608
local bg = Instance.new("BodyGyro",ctor)
609
610
bg.maxTorque = Vector3.new()
611
612
bg.P = 15000
613
614
bg.D = 1000
615
616
local bv = Instance.new("BodyVelocity",ctor)
617
618
bv.maxForce = Vector3.new()
619
620
bv.P = 15000
621
622
vel = Vector3.new()
623
624
cf = CFrame.new()
625
626
flspd = 0
627
628
629
keysdown = {}
630
631
keypressed = {}
632
633
ktime = {}
634
635
descendtimer = 0
636
637
jumptime = tick()
638
639
hum.Jumping:connect(function()
640
641
        jumptime = tick()
642
643
end)
644
645
cam = workspace.CurrentCamera
646
647
kd = plr:GetMouse().KeyDown:connect(oc(function(key) 
648
649
        keysdown[key] = true 
650
651
        keypressed[key] = true 
652
653
        if key == "q" then 
654
655
                descendtimer = tick() 
656
657
        elseif key == " " and not hum.Jump then 
658
659
                jumptime = tick()
660
661
        elseif (key == "a" or key == "d") and ktime[key] and tick()-ktime[key] < .3 and math.abs(reqrotx) < .3 then
662
663
                reqrotx = key == "a" and math.pi*2 or -math.pi*2
664
665
        end
666
667
        ktime[key] = tick() 
668
669
end))
670
671
ku = plr:GetMouse().KeyUp:connect(function(key) 
672
673
        keysdown[key] = false 
674
675
        if key == " " then 
676
677
                descendtimer = tick() 
678
679
        end 
680
681
end)
682
683
function mid(a,b,c)
684
685
        return math.max(a,math.min(b,c or -a))
686
687
end
688
689
function bn(a)
690
691
        return a and 1 or 0
692
693
end
694
695
function gm(tar)
696
697
        local m = 0
698
699
        for i,v in pairs(tar:GetChildren()) do
700
701
                if v:IsA("BasePart") then
702
703
                        m = m + v:GetMass()
704
705
                end
706
707
                        m = m + gm(v)
708
709
        end
710
711
        return m
712
713
end
714
715
reqrotx = 0
716
717
local grav = 196.2
718
719
local con
720
721
con = game:GetService("RunService").Stepped:connect(oc(function()
722
723
        --[[if not mod:IsDescendantOf(workspace) then
724
725
                pcall(function() kd:disconnect() end)
726
727
                pcall(function() ku:disconnect() end)
728
729
                bg:Destroy()
730
731
                bv:Destroy()
732
733
                con:disconnect()
734
735
                script:Destroy()
736
737
                return
738
739
        end]]
740
741
        local obvel = tor.CFrame:vectorToObjectSpace(tor.Velocity)
742
743
        local sspd, uspd,fspd = obvel.X,obvel.Y,obvel.Z
744
745
        if flying then
746
747
                local lfldir = fldir
748
749
                fldir = cam.CoordinateFrame:vectorToWorldSpace(Vector3.new(bn(keysdown.d)-bn(keysdown.a),0,bn(keysdown.s)-bn(keysdown.w))).unit
750
751
                local lmoving = moving
752
753
                moving = fldir.magnitude > .1
754
755
                if lmoving and not moving then
756
757
                        idledir = lfldir*Vector3.new(1,0,1)
758
759
                        descendtimer = tick()
760
761
                end
762
763
                local dbomb = fldir.Y < -.6 or (moving and keysdown["1"])
764
765
                if moving and keysdown["0"] and lmoving then
766
767
                        fldir = (Vector3.new(lfldir.X,math.min(fldir.Y,lfldir.Y+.01)-.1,lfldir.Z)+(fldir*Vector3.new(1,0,1))*.05).unit
768
769
                end
770
771
                local down = tor.CFrame:vectorToWorldSpace(Vector3.new(0,-1,0))
772
773
                local descending = (not moving and keysdown["q"] and not keysdown[" "])
774
775
                cf = ccomplerp(cf,CFrame.new(tor.Position,tor.Position+(not moving and idledir or fldir)),keysdown["0"] and .02 or .07)
776
777
                local gdown = not dbomb and cf.lookVector.Y < -.2 and tor.Velocity.unit.Y < .05
778
779
                hum.PlatformStand = true
780
781
                bg.maxTorque = Vector3.new(1,1,1)*9e5
782
783
                local rotvel = CFrame.new(Vector3.new(),tor.Velocity):toObjectSpace(CFrame.new(Vector3.new(),fldir)).lookVector
784
785
                bg.cframe = cf * CFrame.Angles(not moving and -.1 or -math.pi/2+.2,moving and mid(-2.5,rotvel.X/1.5) + reqrotx or 0,0)
786
787
                reqrotx = reqrotx - reqrotx/10
788
789
                bv.maxForce = Vector3.new(1,1,1)*9e4*.5
790
791
                local anioff =(bn(keysdown[" "])-bn(keysdown["q"]))/2
792
793
                local ani = tickwave(1.5-anioff,1)
794
795
                bv.velocity = bv.velocity:Lerp(Vector3.new(0,bn(not moving)*-ani*15+(descending and math.min(20,tick()-descendtimer)*-8 or bn(keysdown[" "])-bn(keysdown["q"]))*15,0)+vel,.6) 
796
797
                vel = moving and cf.lookVector*flspd or Vector3.new()
798
799
                flspd = math.min(120,lerp(flspd,moving and (fldir.Y<0 and flspd+(-fldir.Y)*grav/60 or math.max(50,flspd-fldir.Y*grav/300)) or 60,.4))
800
801
                setwings(moving and (gdown and outlow or dbomb and divebomb) or (descending and veryhigh or flap1),15)
802
803
                for i=1,4 do
804
805
                        --CFrame.Angles(-.5+bn(i==3)*2.4+bn(i==4)*.5,.1+bn(i==2)*.5-bn(i==3)*1.1,bn(i==3)*.1)
806
807
                        rwing[i].C0 = clerp(rwing[i].C0,oc0[rwing[i]] * (gdown and CFrame.new() or dbomb and CFrame.Angles(-.5+bn(i==3)*.4+bn(i==4)*.5,.1+bn(i==2)*.5-bn(i==3)*1.1,bn(i==3)*.1) or descending and CFrame.Angles(.3,0,0) or CFrame.Angles((i*.1+1.5)*ani,ani*-.5,1*ani)),descending and .8 or .2)
808
809
                        lwing[i].C0 = clerp(lwing[i].C0,oc0[lwing[i]] * (gdown and CFrame.new() or dbomb and CFrame.Angles(-(-.5+bn(i==3)*.4+bn(i==4)*.5),-(.1+bn(i==2)*.5-bn(i==3)*1.1),bn(i==3)*.1) or descending and CFrame.Angles(-.3,0,0) or CFrame.Angles(-(i*.1+1.5)*ani,ani*.5,1*ani)),descending and .8 or .2)
810
811
                end
812
813
                local hit,ray = workspace:FindPartOnRayWithIgnoreList(Ray.new(tor.Position,Vector3.new(0,-3.5+math.min(0,bv.velocity.y)/30,0)),{char})
814
815
                if hit and down.Y < -.85 and tick()-flystart > 1 then
816
817
                        flying = false
818
819
                        hum.PlatformStand = false
820
821
                        tor.Velocity = Vector3.new()
822
823
                end
824
825
        else
826
827
                bg.maxTorque = Vector3.new()
828
829
                bv.maxForce = Vector3.new()
830
831
                local ani = tickwave(walking and .8 or 4.5,1)
832
833
                setwings(idle,10)
834
835
                local x,y,z = fspd/160,uspd/700,sspd/900
836
837
                for i=1,4 do
838
839
                        rwing[i].C0 = clerp(rwing[i].C0,oc0[rwing[i]] * CFrame.Angles(ani*.1 + -mid(-.1,x),0 + -mid(-.1,y) + bn(i==2)*.6,ani*.02 + -mid(-.1,z)),.2)
840
841
                        lwing[i].C0 = clerp(lwing[i].C0,oc0[lwing[i]] * CFrame.Angles(ani*-.05 + mid(-.1,x),0 + mid(-.1,y) + -bn(i==2)*.6,ani*.02 + mid(-.1,z)),.2)
842
843
                end
844
845
                if keypressed[" "] and not flying and (tick()-jumptime > .05 and (tick()-jumptime < 3 or hum.Jump)) then
846
847
                        vel = Vector3.new(0,50,0)
848
849
                        bv.velocity = vel
850
851
                        idledir = cam.CoordinateFrame.lookVector*Vector3.new(1,0,1)
852
853
                        cf = tor.CFrame * CFrame.Angles(-.01,0,0)
854
855
                        tor.CFrame = cf
856
857
                        bg.cframe = cf
858
859
                        flystart = tick()
860
861
                        flying = true
862
863
                end
864
865
        end
866
867
        keypressed = {}
868
869
end))
870
871
872
873-
end fly()
873+
end fly()
874
local Name="deadpoo5666"
875
local workspace=Workspace
876
local player=game.Players[Name]
877
local char=player.Character
878
local Color=BrickColor.new("Pastel brown")
879
880
if script.Parent.className~="HopperBin" then
881
pcall(function() char.Gourd:remove() end)
882
Staff=Instance.new("HopperBin")
883
Staff.Name="Sand"
884
Staff.Parent=player.Backpack
885
m=Instance.new("Model")
886
m.Parent=char
887
m.Name="Gourd"
888
p=Instance.new("Part")
889
p.Locked=true
890
p.BrickColor=BrickColor:Red()
891
p.Material="Concrete"
892
p.Size=Vector3.new(1,1,1)
893
Cent=p
894
me=Instance.new("CylinderMesh")
895
me.Scale=Vector3.new(1.2,0.4,1.2)
896
me.Parent=p
897
p.Parent=m
898
w=Instance.new("Weld")
899
w.Part1=char.Torso
900
w.Part0=p
901
w.Parent=p
902
w.C0=CFrame.new(0,0.25,-1)*CFrame.Angles(0,0,math.rad(35))
903
p=Instance.new("Part")
904
p.Locked=true
905
p.BrickColor=Color
906
p.Material="Concrete"
907
p.Size=Vector3.new(2,2,2)
908
p.Shape="Ball"
909
p.Parent=m
910
w=Instance.new("Weld")
911
w.Part1=Cent
912
w.Part0=p
913
w.Parent=p
914
w.C0=CFrame.new(0,1,0)
915
p=Instance.new("Part")
916
p.Locked=true
917
p.BrickColor=Color
918
p.Material="Concrete"
919
p.Size=Vector3.new(2,2,2)
920
p.Shape="Ball"
921
p.Parent=m
922
w=Instance.new("Weld")
923
w.Part1=Cent
924
w.Part0=p
925
w.Parent=p
926
w.C0=CFrame.new(0,-1,0)
927
Top=p
928
p=Instance.new("Part")
929
p.Locked=true
930
p.BrickColor=Color
931
p.Material="Concrete"
932
p.Size=Vector3.new(1,1,1)
933
p.Parent=m
934
me=Instance.new("CylinderMesh")
935
me.Scale=Vector3.new(0.5,0.15,0.5)
936
me.Parent=p
937
w=Instance.new("Weld")
938
w.Part1=Top
939
w.Part0=p
940
w.Parent=p
941
w.C0=CFrame.new(0,-1,0)
942
p=Instance.new("Part")
943
p.Locked=true
944
p.BrickColor=BrickColor.new("Black")
945
p.Material="Concrete"
946
p.Size=Vector3.new(1,1,1)
947
p.Parent=m
948
me=Instance.new("CylinderMesh")
949
me.Scale=Vector3.new(0.4,0.16,0.4)
950
me.Parent=p
951
w=Instance.new("Weld")
952
w.Part1=Top
953
w.Part0=p
954
w.Parent=p
955
w.C0=CFrame.new(0,-1,0)
956
p=Instance.new("Part")
957
p.Locked=true
958
p.BrickColor=BrickColor:Red()
959
p.Material="Concrete"
960
p.Size=Vector3.new(2,1,1)
961
p.Parent=m
962
me=Instance.new("BlockMesh")
963
me.Scale=Vector3.new(1.1,0.15,1.1)
964
me.Parent=p
965
w=Instance.new("Weld")
966
w.Part1=char.Torso
967
w.Part0=p
968
w.Parent=p
969
w.C0=CFrame.new(0,.75,0)
970
p=Instance.new("Part")
971
p.Locked=true
972
p.BrickColor=BrickColor:Red()
973
p.Material="Concrete"
974
p.Size=Vector3.new(2,1,1)
975
p.Parent=m
976
me=Instance.new("BlockMesh")
977
me.Scale=Vector3.new(1.29,0.15,1.1)
978
me.Parent=p
979
w=Instance.new("Weld")
980
w.Part1=char.Torso
981
w.Part0=p
982
w.Parent=p
983
w.C1=CFrame.new(0,0.1,0)*CFrame.Angles(0,0,math.rad(-40))
984
script.Name="Not A QuickScript"
985
script.Parent=Staff
986
end
987
Sword=script.Parent
988
function hint(msg,de)
989
for _,v in pairs(player:children()) do
990
if v:IsA("Message") then
991
v:remove()
992
end
993
end
994
local h=Instance.new("Hint")
995
h.Text=tostring(msg)
996
h.Parent=player
997
Delay(tonumber(de),function() h:remove() end)
998
end
999
ta={}
1000
for _,v in pairs(player.Backpack:GetChildren()) do
1001
if v.Name=="Sand" then
1002
table.insert(ta,v)
1003
end
1004
end
1005
if #ta==2 or #ta>2 then
1006
ta[1]:remove()
1007
end
1008
Hopper=script.Parent
1009
function Stream(mouse)
1010
local b=Instance.new("Part")
1011
b.BrickColor=Color
1012
b.Reflectance=0
1013
b.Transparency=1
1014
b.Size=Vector3.new(2,2,2)
1015
b.Shape="Ball"
1016
b.CanCollide=false
1017
b.TopSurface="Smooth"
1018
b.Position=char.Head.Position
1019
b.BottomSurface="Smooth"
1020
b.Friction=0
1021
b.Touched:connect(function(h) Hit(h) end)
1022
local bo=Instance.new("BodyVelocity")
1023
bo.maxForce=Vector3.new(9999,9999,9999)
1024
bo.velocity=(mouse.Hit.p-char.Head.Position).unit*60
1025
bo.Parent=b
1026
b.Parent=Gourd
1027
local Bo=b
1028
while Bo.Parent and Up==false do
1029
wait()
1030
if mouse.Target and (Bo.Position-mouse.Target.Position).magnitude<7 then
1031
Hit(mouse.Target)
1032
else
1033
Bo.CFrame=b.CFrame --BodyPosition anti-hax
1034
bo.velocity=(mouse.Hit.p-Bo.Position).unit*150
1035
end
1036
local b=Instance.new("Part")
1037
b.BrickColor=Color
1038
b.Reflectance=0
1039
b.Transparency=0.2
1040
b.Touched:connect(Hit)
1041
b.Size=Vector3.new(2,2,2)
1042
b.CanCollide=false
1043
b.Anchored=true
1044
b.TopSurface="Smooth"
1045
b.Parent=Gourd
1046
b.CFrame=Bo.CFrame*CFrame.Angles(math.rad(math.random(0,360)),math.rad(math.random(0,360)),math.rad(math.random(0,360)))
1047
b.BottomSurface="Smooth"
1048
Delay(0,function()
1049
local p=b
1050
for i=1,5 do
1051
wait(0.05)
1052
p.Transparency=i/5
1053
end
1054
p:remove()
1055
end)
1056
end
1057
pcall(function() Bo:remove() end)
1058
end
1059
function Def(mouse)
1060
local b=Instance.new("Part")
1061
b.BrickColor=Color
1062
b.Reflectance=0
1063
b.Transparency=0.6
1064
b.Size=Vector3.new(15,15,15)
1065
b.Anchored=false
1066
b.Shape="Ball"
1067
b.CanCollide=false
1068
p=Instance.new("BodyPosition")
1069
p.Parent=b
1070
p.maxForce=Vector3.new(math.huge,math.huge,math.huge)
1071
p.position=char.Torso.Position
1072
b.TopSurface="Smooth"
1073
b.Position=char.Torso.Position
1074
b.BottomSurface="Smooth"
1075
b.Touched:connect(function(h)
1076
Hit(h)
1077
end)
1078
b.Parent=Gourd
1079
while Up==false and b.Parent do
1080
b.CFrame=char.Torso.CFrame
1081
p.position=char.Torso.Position
1082
local p=Instance.new("Part")
1083
p.Size=Vector3.new(1,1,1)
1084
p.BrickColor=Color
1085
p.Anchored=true
1086
p.CanCollide=false
1087
p.Parent=Gourd
1088
p.CFrame=char.Torso.CFrame*CFrame.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360))
1089
local m=Instance.new("BlockMesh")
1090
m.Scale=Vector3.new(0.5,0.5,0.5)
1091
m.Parent=p
1092
Delay(0,function()
1093
local p=p
1094
for i=1,5 do
1095
wait(0.05)
1096
p.Transparency=i/5
1097
end
1098
p:remove()
1099
end)
1100
wait()
1101
end
1102
pcall(function() b:remove() end)
1103
end
1104
function Bur(mouse)
1105
if mouse.Target and game.Players:getPlayerFromCharacter(mouse.Target.Parent) then 
1106
local m=mouse.Target.Parent
1107
m.Torso.Anchored=true
1108
for i=1,15 do
1109
local p=Instance.new("Part")
1110
p.Size=Vector3.new(i,1,i)
1111
p.BrickColor=Color
1112
p.Anchored=true
1113
p.Transparency=i/14
1114
p.CanCollide=false
1115
p.Parent=m
1116
local me=Instance.new("CylinderMesh")
1117
me.Scale=Vector3.new(1,1.1,1)
1118
me.Parent=p
1119
p.CFrame=CFrame.new(m.Torso.CFrame.x,m.Torso.CFrame.y-3.5,m.Torso.CFrame.z) 
1120
end
1121
for i=1,10 do
1122
for i=1,6 do
1123
wait()
1124
local p=Instance.new("Part")
1125
p.Size=Vector3.new(1,1,1)
1126
p.BrickColor=Color
1127
p.Anchored=true
1128
p.CanCollide=false
1129
p.Parent=m
1130
p.CFrame=m.Torso.CFrame*CFrame.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360))
1131
local m=Instance.new("BlockMesh")
1132
m.Scale=Vector3.new(0.25,0.25,0.25)
1133
m.Parent=p
1134
Delay(0,function()
1135
local p=p
1136
for i=1,5 do
1137
wait(0.05)
1138
p.Transparency=i/5
1139
end
1140
p:remove()
1141
end)
1142
end
1143
m.Torso.CFrame=CFrame.new(m.Torso.Position)*CFrame.new(0,-0.5,0)
1144
wait()
1145
end
1146
Hit(m.Torso)
1147
Hit(m.Head)
1148
end
1149
end
1150
function Shift(mouse)
1151
if mouse.Target then
1152
local mo=Instance.new("Model",char)
1153
local h=mouse.Hit.p
1154
local m=char
1155
for i=1,15 do
1156
local p=Instance.new("Part")
1157
p.Size=Vector3.new(i,1,i)
1158
p.BrickColor=Color
1159
p.Anchored=true
1160
p.Transparency=i/14
1161
p.CanCollide=false
1162
p.Parent=mo
1163
local me=Instance.new("CylinderMesh")
1164
me.Scale=Vector3.new(1,1.1,1)
1165
me.Parent=p
1166
p.CFrame=CFrame.new(m.Torso.CFrame.x,m.Torso.CFrame.y-3.5,m.Torso.CFrame.z) 
1167
end
1168
for i=1,15 do
1169
local p=Instance.new("Part")
1170
p.Size=Vector3.new(i,1,i)
1171
p.BrickColor=Color
1172
p.Anchored=true
1173
p.Transparency=i/14
1174
p.CanCollide=false
1175
p.Parent=mo
1176
local me=Instance.new("CylinderMesh")
1177
me.Scale=Vector3.new(1,1.1,1)
1178
me.Parent=p
1179
p.CFrame=CFrame.new(h)*CFrame.new(0,-0.5,0)
1180
end
1181
m.Torso.Anchored=true
1182
for i=1,15 do
1183
for i=1,6 do
1184
wait()
1185
local p=Instance.new("Part")
1186
p.Size=Vector3.new(1,1,1)
1187
p.BrickColor=Color
1188
p.Anchored=true
1189
p.CanCollide=false
1190
p.Parent=mo
1191
p.CFrame=m.Torso.CFrame*CFrame.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360))
1192
local m=Instance.new("BlockMesh")
1193
m.Scale=Vector3.new(0.25,0.25,0.25)
1194
m.Parent=p
1195
Delay(0,function()
1196
local p=p
1197
for i=1,5 do
1198
wait(0.05)
1199
p.Transparency=i/5
1200
end
1201
p:remove()
1202
end)
1203
end
1204
m.Torso.CFrame=m.Torso.CFrame*CFrame.new(0,-0.6,0)
1205
wait()
1206
end
1207
m.Torso.CFrame=CFrame.new(h)*CFrame.new(0,-1.5,0)
1208
for i=1,11 do
1209
for i=1,6 do
1210
wait()
1211
local p=Instance.new("Part")
1212
p.Size=Vector3.new(1,1,1)
1213
p.BrickColor=Color
1214
p.Anchored=true
1215
p.CanCollide=false
1216
p.Parent=mo
1217
p.CFrame=m.Torso.CFrame*CFrame.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360))
1218
local m=Instance.new("BlockMesh")
1219
m.Scale=Vector3.new(0.25,0.25,0.25)
1220
m.Parent=p
1221
Delay(0,function()
1222
local p=p
1223
for i=1,5 do
1224
wait(0.05)
1225
p.Transparency=i/5
1226
end
1227
p:remove()
1228
end)
1229
end
1230
m.Torso.CFrame=m.Torso.CFrame*CFrame.new(0,0.5,0)
1231
wait()
1232
end
1233
m.Torso.Anchored=false
1234
mo:remove()
1235
end
1236
end
1237
1238
function Wave(mouse)
1239
if mouse.Hit.p.x>char.Torso.Position.x then
1240
Deg=-2
1241
Fre=-60
1242
else
1243
Deg=2
1244
Fre=60
1245
end
1246
local X=char.Torso.CFrame.x
1247
for i=0,Fre,Deg do
1248
wait()
1249
local p=Instance.new("Part")
1250
p.Parent=Gourd
1251
p.Size=Vector3.new(2,1,workspace.Base.Size.z)
1252
p.BrickColor=Color
1253
p.Anchored=true
1254
p.CFrame=CFrame.new(X,0,workspace.Base.Position.z)*CFrame.new(-i,0,0)
1255
local m=Instance.new("BlockMesh")
1256
m.Parent=p
1257
m.Scale=Vector3.new(1,1.2,1.005)
1258
Delay(0,function()
1259
local p=p
1260
local m=m
1261
for i=1,9,0.25 do
1262
m.Scale=m.Scale+Vector3.new(0,.25,0)
1263
wait()
1264
end
1265
wait()
1266
for i=1,9,0.25 do
1267
m.Scale=m.Scale+Vector3.new(0,-.25,0)
1268
wait()
1269
end
1270
p:remove()
1271
end)
1272
for _,v in pairs(game.Players:GetPlayers()) do
1273
if v.Character and v.Character:findFirstChild("Head") then
1274
if v.Character.Head.Position.y<(workspace.Base.Position.y+9.5) then
1275
if v.Character.Torso.Position.x<p.Position.x+p.Size.x/2 and v.Character.Torso.Position.x>p.Position.x-p.Size.x/2 then
1276
Hit(v.Character.Head)
1277
end
1278
end
1279
end
1280
end
1281
end
1282
end
1283
function Spike(mouse)
1284
local Pos=char.Torso.Position
1285
for ii=8,25,3 do
1286
wait()
1287
for i=0,360,360/12 do 
1288
local x = (ii) * math.sin(i) + Pos.x 
1289
local y = Pos.y-4
1290
local z = (ii)* math.cos (i) + Pos.z
1291
local brick = Instance.new("Part") 
1292
brick.Size=Vector3.new(1,1,1)
1293
brick.Anchored=true
1294
brick.BrickColor=Color
1295
brick.Parent=Gourd
1296
brick.CFrame = CFrame.new(x,y,z) 
1297
brick.Touched:connect(Hit)
1298
local mesh=Instance.new("CylinderMesh")
1299
mesh.Parent=brick
1300
Delay(0,function()
1301
local p=brick
1302
local m=mesh
1303
for i=1,8 do
1304
m.Scale=m.Scale+Vector3.new(0,.25,0)
1305
p.CFrame=p.CFrame*CFrame.new(0,0.25,0)
1306
wait()
1307
end
1308
for i=1,10 do
1309
p.Transparency=i/10
1310
wait(0.05)
1311
end
1312
p:remove()
1313
end)
1314
end
1315
for _,v in pairs(game.Players:GetPlayers()) do
1316
if v.Character and v.Character:findFirstChild("Torso") and (v.Character.Torso.Position-Pos).magnitude<ii then
1317
Hit(v.Character.Torso)
1318
end
1319
end
1320
wait(0.08)
1321
end
1322
end
1323
function Coffin(mouse)
1324
if mouse.Target and game.Players:getPlayerFromCharacter(mouse.Target.Parent) then
1325
me=mouse.Target.Parent
1326
Delay(0,function() 
1327
while me:findFirstChild("Torso") do
1328
wait()
1329
local p=Instance.new("Part")
1330
p.Size=Vector3.new(1,1,1)
1331
p.BrickColor=Color
1332
p.Anchored=true
1333
p.CanCollide=false
1334
p.Parent=me
1335
p.CFrame=me.Torso.CFrame*CFrame.new(math.random(-8,8),math.random(-2,5),math.random(-8,8))*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360))
1336
local m=Instance.new("BlockMesh")
1337
m.Scale=Vector3.new(0.35,0.35,0.35)
1338
m.Parent=p
1339
Delay(0,function()
1340
local p=p
1341
for i=1,5 do
1342
wait(0.05)
1343
p.Transparency=i/5
1344
end
1345
p:remove()
1346
end)
1347
end
1348
end)
1349
BP=Instance.new("BodyPosition")
1350
BP.maxForce=Vector3.new(math.huge,math.huge,math.huge)
1351
BP.position=me.Torso.Position+Vector3.new(0,2,0)
1352
BP.Parent=me.Torso
1353
b=Instance.new("Part")
1354
b.Size=Vector3.new(8,1,8)
1355
b.BottomSurface="Smooth"
1356
b.TopSurface="Smooth"
1357
b.BrickColor=Color
1358
b.CanCollide=false
1359
m=Instance.new("BlockMesh")
1360
m.Parent=b
1361
m.Scale=Vector3.new(1,0.5,1)
1362
b.Parent=me
1363
b:BreakJoints()
1364
w=Instance.new("Weld")
1365
w.Parent=b
1366
w.Part0=me.Torso
1367
w.Part1=b
1368
w.C0=CFrame.new(0,-3.5,0)
1369
for i=1,7,0.25 do
1370
wait(0.075)
1371
m.Scale=m.Scale+Vector3.new(0,0.25,0)
1372
w.C0=w.C0*CFrame.new(0,0.25/2,0)
1373
BP.position=BP.position+Vector3.new(0,.75,0)
1374
end
1375
for i=1,2-(0.5/5),0.25/5 do
1376
m.Scale=m.Scale+Vector3.new(-.25/8,0,-.25/8)
1377
wait(0.05)
1378
end
1379
Hit(me.Head)
1380
Hit(me.Torso)
1381
end
1382
end
1383
function Cage(mouse)
1384
if mouse.Target then
1385
pos=mouse.Hit
1386
for ii=0,360,360/6 do
1387
wait()
1388
for i=0,360/10 do
1389
local p=Instance.new("Part")
1390
p.CFrame=pos*CFrame.new(math.cos(i)*8,math.sin(i)*8*3/i,0)*CFrame.Angles(math.rad(360/ii),math.rad(360/ii),0)
1391
p.Anchored=true
1392
p.BrickColor=Color
1393
p.Parent=Gourd
1394
p.Size=Vector3.new(1,4,4)
1395
Delay(5,function()
1396
p:remove()
1397
end)
1398
end
1399
end
1400
end
1401
end
1402
1403
wep={Stream,Def,Bur,Shift,Wave,Spike,Coffin,Cage}
1404
name={"Sand Stream","Manual Defence","Sand Burial","Sand Shift","Sand Tsunami","Sand Spikes","Sand Coffin","Sand Cage"}
1405
function CheckAdd()
1406
if (Mode+1)~=(#wep+1) then
1407
Mode=Mode+1
1408
Hopper.Name=name[Mode].."("..Mode..")"
1409
elseif (Mode+1)==(#wep+1) then
1410
Mode=1
1411
Hopper.Name=name[Mode].."("..Mode..")"
1412
end
1413
end
1414
function CheckSub()
1415
if (Mode-1)==0 or (Mode-1)<0 then
1416
Mode=#wep
1417
Hopper.Name=name[Mode].."("..Mode..")"
1418
elseif (Mode-1)~=0 then
1419
Mode=Mode-1
1420
Hopper.Name=name[Mode].."("..Mode..")"
1421
end
1422
end
1423
function KeyDown(key)
1424
if key=="c" then
1425
CheckAdd()
1426
elseif key=="x" then
1427
Mode=1
1428
Hopper.Name=name[1].."("..Mode..")"
1429
elseif key=="z" then
1430
CheckSub()
1431
end
1432
end
1433
Mode=0
1434
Up=false
1435
Sand=true
1436
Hopper.Selected:connect(function(mouse)
1437
Sand=true
1438
Gourd=char.Gourd
1439
mouse.KeyDown:connect(KeyDown)
1440
mouse.Button1Down:connect(function()
1441
Up=false
1442
coroutine.resume(coroutine.create(function() wep[Mode](mouse) end))
1443
end)
1444
mouse.Button1Up:connect(function() Up=true  end)
1445
mouse.Icon = "rbxasset://textures\\GunCursor.png"
1446
Kill=char.Humanoid.Died:connect(function()
1447
wait()
1448
if char:findFirstChild("Head") then
1449
m=char.Head
1450
elseif char:findFirstChild("Torso") then
1451
m=char.Torso
1452
else
1453
return 
1454
end
1455
local p=Instance.new("Part")
1456
p.Size=Vector3.new(1,1,1)
1457
p.BrickColor=Color
1458
p.Anchored=true
1459
p.Transparency=1
1460
p.CanCollide=false
1461
p.Parent=char
1462
local me=Instance.new("CylinderMesh")
1463
me.Scale=Vector3.new(1,1.1,1)
1464
me.Parent=p
1465
p.CFrame=CFrame.new(m.CFrame.x,workspace.Base.CFrame.y,m.CFrame.z) 
1466
for i=1,100 do
1467
local me=me
1468
local p=p
1469
wait()
1470
me.Scale=me.Scale+Vector3.new(.5,0,.5)
1471
p.Transparency=i/200 --100?
1472
end
1473
for _,v in pairs(game.Players:GetPlayers()) do
1474
if v.Character and v.Name~=Name and (v.Character.Torso.Position-p.Position).magnitude<51 then
1475
pcall(function() Hit(v.Character.Head) end)
1476
end
1477
end
1478
p:remove()
1479
end)
1480
while Sand do
1481
wait(0.05)
1482
local p=Instance.new("Part")
1483
p.Size=Vector3.new(1,1,1)
1484
p.BrickColor=Color
1485
p.Anchored=true
1486
p.CanCollide=false
1487
p.Parent=char
1488
p.CFrame=char.Torso.CFrame*CFrame.new(math.random(-7,7),math.random(-2,5),math.random(-7,7))*CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360))
1489
p.Touched:connect(Hit)
1490
local m=Instance.new("BlockMesh")
1491
m.Scale=Vector3.new(0.15,0.15,0.15)
1492
m.Parent=p
1493
Delay(0,function()
1494
local p=p
1495
for i=1,5 do
1496
wait(0.05)
1497
p.Transparency=i/5
1498
end
1499
p:remove()
1500
end)
1501
end
1502
end)
1503
Hopper.Deselected:connect(function()
1504
pcall(function() 
1505
Sand=false
1506
Kill:disconnect() 
1507
end)
1508
end)
1509
function Hit(p)
1510
if p.Parent.Name~=Name and p.Parent.Parent.Name~=Name and p.Name~="Base" and p.Name~="Sand" and p.Parent then
1511
Delay(0,function() 
1512
p.Anchored=true
1513
p.Name="Sand"
1514
p.BrickColor=Color
1515
for i=1,5 do
1516
p.Transparency=i/5
1517
wait(0.1)
1518
end
1519
p:remove()
1520
end)
1521
end
1522
end