View difference between Paste ID: 2MDVjB4w and mdXgksz4
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("FE Compatibility code V2 by Mokiros")
7
	local RealPlayer = RealPlayer
8
	script.Parent = RealPlayer.Character
9
10
	--Fake event to make stuff like Mouse.KeyDown work
11
	local Disconnect_Function = function(this)
12
		this[1].Functions[this[2]] = nil
13
	end
14
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15
	local FakeEvent_Metatable = {__index={
16
		Connect = function(this,f)
17
			local i = tostring(math.random(0,10000))
18
			while this.Functions[i] do
19
				i = tostring(math.random(0,10000))
20
			end
21
			this.Functions[i] = f
22
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24
	}}
25
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
26
	local function fakeEvent()
27
		return setmetatable({Functions={}},FakeEvent_Metatable)
28
	end
29
30
	--Creating fake input objects with fake variables
31
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
32
    FakeMouse.keyUp = FakeMouse.KeyUp
33
    FakeMouse.keyDown = FakeMouse.KeyDown
34
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
35
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
36
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
37
	end}
38
	--Merged 2 functions into one by checking amount of arguments
39
	CAS.UnbindAction = CAS.BindAction
40
41
	--This function will trigger the events that have been :Connect()'ed
42
	local function TriggerEvent(self,ev,...)
43
		for _,f in pairs(self[ev].Functions) do
44
			f(...)
45
		end
46
	end
47
	FakeMouse.TriggerEvent = TriggerEvent
48
	UIS.TriggerEvent = TriggerEvent
49
50
	--Client communication
51
	local Event = Instance.new("RemoteEvent")
52
	Event.Name = "UserInput_Event"
53
	Event.OnServerEvent:Connect(function(plr,io)
54
	    if plr~=RealPlayer then return end
55
		FakeMouse.Target = io.Target
56
		FakeMouse.Hit = io.Hit
57
		if not io.isMouse then
58
			local b = io.UserInputState == Enum.UserInputState.Begin
59
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
60
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
61
			end
62
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
63
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
64
			end
65
			for _,t in pairs(CAS.Actions) do
66
				for _,k in pairs(t.Keys) do
67
					if k==io.KeyCode then
68
						t.Function(t.Name,io.UserInputState,io)
69
					end
70
				end
71
			end
72
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
73
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
74
	    end
75
	end)
76
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
77
	local Mouse = owner:GetMouse()
78
	local UIS = game:GetService("UserInputService")
79
	local input = function(io,RobloxHandled)
80
		if RobloxHandled then return end
81
		--Since InputObject is a client-side instance, we create and pass table instead
82
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
83
	end
84
	UIS.InputBegan:Connect(input)
85
	UIS.InputEnded:Connect(input)
86
87
	local h,t
88
	--Give the server mouse data every second frame, but only if the values changed
89
	--If player is not moving their mouse, client won't fire events
90
	local HB = game:GetService("RunService").Heartbeat
91
	while true do
92
		if h~=Mouse.Hit or t~=Mouse.Target then
93
			h,t=Mouse.Hit,Mouse.Target
94
			Event:FireServer({isMouse=true,Target=t,Hit=h})
95
		end
96
		--Wait 2 frames
97
		for i=1,2 do
98
			HB:Wait()
99
		end
100
	end]==],script)
101
102
	----Sandboxed game object that allows the usage of client-side methods and services
103
	--Real game object
104
	local RealGame = game
105
106
	--Metatable for fake service
107
	local FakeService_Metatable = {
108
		__index = function(self,k)
109
			local s = rawget(self,"_RealService")
110
			if s then
111
				return typeof(s[k])=="function"
112
				and function(_,...)return s[k](s,...)end or s[k]
113
			end
114
		end,
115
		__newindex = function(self,k,v)
116
			local s = rawget(self,"_RealService")
117
			if s then s[k]=v end
118
		end
119
	}
120
	local function FakeService(t,RealService)
121
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
122
		return setmetatable(t,FakeService_Metatable)
123
	end
124
125
	--Fake game object
126
	local FakeGame = {
127
		GetService = function(self,s)
128
			return rawget(self,s) or RealGame:GetService(s)
129
		end,
130
		Players = FakeService({
131
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
132
		},"Players"),
133
		UserInputService = FakeService(UIS,"UserInputService"),
134
		ContextActionService = FakeService(CAS,"ContextActionService"),
135
		RunService = FakeService({
136
			_btrs = {},
137
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
138
			BindToRenderStep = function(self,name,_,fun)
139
				self._btrs[name] = self.Heartbeat:Connect(fun)
140
			end,
141
			UnbindFromRenderStep = function(self,name)
142
				self._btrs[name]:Disconnect()
143
			end,
144
		},"RunService")
145
	}
146
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
147
	FakeGame.service = FakeGame.GetService
148
	FakeService(FakeGame,game)
149
	--Changing owner to fake player object to support owner:GetMouse()
150
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
151
end
152
153
Player=game:GetService("Players").LocalPlayer
154
Character=Player.Character 
155
PlayerGui=Player.PlayerGui
156
Backpack=Player.Backpack 
157
Torso=Character.Torso 
158
Head=Character.Head 
159
Humanoid=Character.Humanoid
160
m=Instance.new('Model',Character)
161
LeftArm=Character["Left Arm"] 
162
LeftLeg=Character["Left Leg"] 
163
RightArm=Character["Right Arm"] 
164
RightLeg=Character["Right Leg"] 
165
LS=Torso["Left Shoulder"] 
166
LH=Torso["Left Hip"] 
167
RS=Torso["Right Shoulder"] 
168
RH=Torso["Right Hip"] 
169
Face = Head.face
170
Neck=Torso.Neck
171
it=Instance.new
172
attacktype=1
173
vt=Vector3.new
174
cf=CFrame.new
175
euler=CFrame.fromEulerAnglesXYZ
176
angles=CFrame.Angles
177
cloaked=false
178
necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
179
necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
180
LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
181
LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
182
RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
183
RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
184
RootPart=Character.HumanoidRootPart
185
RootJoint=RootPart.RootJoint
186
RootCF=euler(-1.57,0,3.14)
187
attack = false 
188
attackdebounce = false 
189
deb=false
190
equipped=true
191
hand=false
192
MMouse=nil
193
combo=0
194
mana=0
195
trispeed=.2
196
attackmode='none'
197
local idle=0
198
local Anim="Idle"
199
local Effects={}
200
local gun=false
201
local shoot=false
202
player=nil 
203
mana=0
204
205
mouse=Player:GetMouse()
206
--save shoulders 
207
RSH, LSH=nil, nil 
208
--welds 
209
RW, LW=Instance.new("Weld"), Instance.new("Weld") 
210
RW.Name="Right Shoulder" LW.Name="Left Shoulder"
211
LH=Torso["Left Hip"]
212
RH=Torso["Right Hip"]
213
TorsoColor=Torso.BrickColor
214
function NoOutline(Part)
215
Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
216
end
217
player=Player 
218
ch=Character
219
RSH=ch.Torso["Right Shoulder"] 
220
LSH=ch.Torso["Left Shoulder"] 
221
-- 
222
RSH.Parent=nil 
223
LSH.Parent=nil 
224
-- 
225
RW.Name="Right Shoulder"
226
RW.Part0=ch.Torso 
227
RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) 
228
RW.C1=cf(0, 0.5, 0) 
229
RW.Part1=ch["Right Arm"] 
230
RW.Parent=ch.Torso 
231
-- 
232
LW.Name="Left Shoulder"
233
LW.Part0=ch.Torso 
234
LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8) 
235
LW.C1=cf(0, 0.5, 0) 
236
LW.Part1=ch["Left Arm"] 
237
LW.Parent=ch.Torso 
238
239
        Player=game:GetService('Players').LocalPlayer
240
        Character=Player.Character
241
        Mouse=Player:GetMouse()
242
        m=Instance.new('Model',Character)
243
244
245
        local function weldBetween(a, b)
246
            local weldd = Instance.new("ManualWeld")
247
            weldd.Part0 = a
248
            weldd.Part1 = b
249
            weldd.C0 = CFrame.new()
250
            weldd.C1 = b.CFrame:inverse() * a.CFrame
251
            weldd.Parent = a
252
            return weldd
253
        end
254
        
255
        it=Instance.new
256
        
257
        function nooutline(part)
258
                part.TopSurface,part.BottomSurface,part.LeftSurface,part.RightSurface,part.FrontSurface,part.BackSurface = 10,10,10,10,10,10
259
        end
260
        
261
        function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
262
                local fp=it("Part")
263
                fp.formFactor=formfactor
264
                fp.Parent=parent
265
                fp.Reflectance=reflectance
266
                fp.Transparency=transparency
267
                fp.CanCollide=false
268
                fp.Locked=true
269
                fp.BrickColor=BrickColor.new(tostring(brickcolor))
270
                fp.Name=name
271
                fp.Size=size
272
                fp.Position=Character.Torso.Position
273
                nooutline(fp)
274
                fp.Material=material
275
                fp:BreakJoints()
276
                return fp
277
        end
278
        
279
        function mesh(Mesh,part,meshtype,meshid,offset,scale)
280
                local mesh=it(Mesh)
281
                mesh.Parent=part
282
                if Mesh=="SpecialMesh" then
283
                        mesh.MeshType=meshtype
284
                        mesh.MeshId=meshid
285
                end
286
                mesh.Offset=offset
287
                mesh.Scale=scale
288
                return mesh
289
        end
290
        
291
        function weld(parent,part0,part1,c0,c1)
292
                local weld=it("Weld")
293
                weld.Parent=parent
294
                weld.Part0=part0
295
                weld.Part1=part1
296
                weld.C0=c0
297
                weld.C1=c1
298
                return weld
299
        end    
300
301
302
    Player=game:GetService('Players').LocalPlayer
303
        Character=Player.Character
304
        Mouse=Player:GetMouse()
305
        m=Instance.new('Model',Character)
306
307
308
        local function weldBetween(a, b)
309
            local weldd = Instance.new("ManualWeld")
310
            weldd.Part0 = a
311
            weldd.Part1 = b
312
            weldd.C0 = CFrame.new()
313
            weldd.C1 = b.CFrame:inverse() * a.CFrame
314
            weldd.Parent = a
315
            return weldd
316
        end
317
        
318
        it=Instance.new
319
        
320
        function nooutline(part)
321
                part.TopSurface,part.BottomSurface,part.LeftSurface,part.RightSurface,part.FrontSurface,part.BackSurface = 10,10,10,10,10,10
322
        end
323
        
324
        function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
325
                local fp=it("Part")
326
                fp.formFactor=formfactor
327
                fp.Parent=parent
328
                fp.Reflectance=reflectance
329
                fp.Transparency=transparency
330
                fp.CanCollide=false
331
                fp.Locked=true
332
                fp.BrickColor=BrickColor.new(tostring(brickcolor))
333
                fp.Name=name
334
                fp.Size=size
335
                fp.Position=Character.Torso.Position
336
                nooutline(fp)
337
                fp.Material=material
338
                fp:BreakJoints()
339
                return fp
340
        end
341
        
342
        function swait(num)
343
    if num==0 or num==nil then
344
    game:service'RunService'.Heartbeat:wait(0)
345
    else
346
    for i=0,num do
347
    game:service'RunService'.Heartbeat:wait(0)
348
    end
349
    end
350
    end
351
        
352
        function mesh(Mesh,part,meshtype,meshid,offset,scale)
353
                local mesh=it(Mesh)
354
                mesh.Parent=part
355
                if Mesh=="SpecialMesh" then
356
                        mesh.MeshType=meshtype
357
                        mesh.MeshId=meshid
358
                end
359
                mesh.Offset=offset
360
                mesh.Scale=scale
361
                return mesh
362
        end
363
        
364
        function weld(parent,part0,part1,c0,c1)
365
                local weld=it("Weld")
366
                weld.Parent=parent
367
                weld.Part0=part0
368
                weld.Part1=part1
369
                weld.C0=c0
370
                weld.C1=c1
371
                return weld
372
        end
373
        
374
        
375
local function CFrameFromTopBack(at, top, back)
376
local right = top:Cross(back)
377
return CFrame.new(at.x, at.y, at.z,
378
right.x, top.x, back.x,
379
right.y, top.y, back.y,
380
right.z, top.z, back.z)
381
end
382
383
function Triangle(a, b, c)
384
local edg1 = (c-a):Dot((b-a).unit)
385
local edg2 = (a-b):Dot((c-b).unit)
386
local edg3 = (b-c):Dot((a-c).unit)
387
if edg1 <= (b-a).magnitude and edg1 >= 0 then
388
a, b, c = a, b, c
389
elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
390
a, b, c = b, c, a
391
elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
392
a, b, c = c, a, b
393
else
394
assert(false, "unreachable")
395
end
396
 
397
local len1 = (c-a):Dot((b-a).unit)
398
local len2 = (b-a).magnitude - len1
399
local width = (a + (b-a).unit*len1 - c).magnitude
400
 
401
local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
402
 
403
local list = {}
404
405
local Color = BrickColor.new("Dark grey")
406
 
407
if len1 > 0.01 then
408
local w1 = Instance.new('WedgePart', m)
409
game:GetService("Debris"):AddItem(w1,5)
410
w1.Material = "SmoothPlastic"
411
w1.FormFactor = 'Custom'
412
w1.BrickColor = BrickColor.new(Color)
413
w1.Transparency = 0
414
w1.Reflectance = 0
415
w1.Material = "SmoothPlastic"
416
w1.CanCollide = false
417
NoOutline(w1)
418
local sz = Vector3.new(0.2, width, len1)
419
w1.Size = sz
420
local sp = Instance.new("SpecialMesh",w1)
421
sp.MeshType = "Wedge"
422
sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
423
w1:BreakJoints()
424
w1.Anchored = true
425
w1.Parent = workspace
426
w1.Transparency = 0.7
427
table.insert(Effects,{w1,"Disappear",.01})
428
w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
429
table.insert(list,w1)
430
end
431
 
432
if len2 > 0.01 then
433
local w2 = Instance.new('WedgePart', m)
434
game:GetService("Debris"):AddItem(w2,5)
435
w2.Material = "SmoothPlastic"
436
w2.FormFactor = 'Custom'
437
w2.BrickColor = BrickColor.new(Color)
438
w2.Transparency = 0
439
w2.Reflectance = 0
440
w2.Material = "SmoothPlastic"
441
w2.CanCollide = false
442
NoOutline(w2)
443
local sz = Vector3.new(0.2, width, len2)
444
w2.Size = sz
445
local sp = Instance.new("SpecialMesh",w2)
446
sp.MeshType = "Wedge"
447
sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
448
w2:BreakJoints()
449
w2.Anchored = true
450
w2.Parent = workspace
451
w2.Transparency = 0.7
452
table.insert(Effects,{w2,"Disappear",.01})
453
w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
454
table.insert(list,w2)
455
end
456
return unpack(list)
457
end
458
        
459
        
460
so = function(id,par,vol,pit) 
461
coroutine.resume(coroutine.create(function()
462
local sou = Instance.new("Sound",par or workspace)
463
sou.Volume=vol
464
sou.Pitch=pit or 1
465
sou.SoundId=id
466
swait() 
467
sou:play() 
468
game:GetService("Debris"):AddItem(sou,6)
469
end))
470
end
471
 
472
function clerp(a,b,t) 
473
local qa = {QuaternionFromCFrame(a)}
474
local qb = {QuaternionFromCFrame(b)} 
475
local ax, ay, az = a.x, a.y, a.z 
476
local bx, by, bz = b.x, b.y, b.z
477
local _t = 1-t
478
return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t)) 
479
end 
480
 
481
function QuaternionFromCFrame(cf) 
482
local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components() 
483
local trace = m00 + m11 + m22 
484
if trace > 0 then 
485
local s = math.sqrt(1 + trace) 
486
local recip = 0.5/s 
487
return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5 
488
else 
489
local i = 0 
490
if m11 > m00 then
491
i = 1
492
end
493
if m22 > (i == 0 and m00 or m11) then 
494
i = 2 
495
end 
496
if i == 0 then 
497
local s = math.sqrt(m00-m11-m22+1) 
498
local recip = 0.5/s 
499
return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip 
500
elseif i == 1 then 
501
local s = math.sqrt(m11-m22-m00+1) 
502
local recip = 0.5/s 
503
return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip 
504
elseif i == 2 then 
505
local s = math.sqrt(m22-m00-m11+1) 
506
local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip 
507
end 
508
end 
509
end
510
 
511
function QuaternionToCFrame(px, py, pz, x, y, z, w) 
512
local xs, ys, zs = x + x, y + y, z + z 
513
local wx, wy, wz = w*xs, w*ys, w*zs 
514
local xx = x*xs 
515
local xy = x*ys 
516
local xz = x*zs 
517
local yy = y*ys 
518
local yz = y*zs 
519
local zz = z*zs 
520
return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy)) 
521
end
522
 
523
function QuaternionSlerp(a, b, t) 
524
local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4] 
525
local startInterp, finishInterp; 
526
if cosTheta >= 0.0001 then 
527
if (1 - cosTheta) > 0.0001 then 
528
local theta = math.acos(cosTheta) 
529
local invSinTheta = 1/math.sin(theta) 
530
startInterp = math.sin((1-t)*theta)*invSinTheta 
531
finishInterp = math.sin(t*theta)*invSinTheta  
532
else 
533
startInterp = 1-t 
534
finishInterp = t 
535
end 
536
else 
537
if (1+cosTheta) > 0.0001 then 
538
local theta = math.acos(-cosTheta) 
539
local invSinTheta = 1/math.sin(theta) 
540
startInterp = math.sin((t-1)*theta)*invSinTheta 
541
finishInterp = math.sin(t*theta)*invSinTheta 
542
else 
543
startInterp = t-1 
544
finishInterp = t 
545
end 
546
end 
547
return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp 
548
end
549
550
function rayCast(Pos, Dir, Max, Ignore)  -- Origin Position , Direction, MaxDistance , IgnoreDescendants
551
return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) 
552
end 
553
554
Damagefunc=function(hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,decreaseblock)
555
        if hit.Parent==nil then
556
                return
557
        end
558
        h=hit.Parent:FindFirstChild("Humanoid")
559
        for _,v in pairs(hit.Parent:children()) do
560
        if v:IsA("Humanoid") then
561
        h=v
562
        end
563
        end
564
        if hit.Parent.Parent:FindFirstChild("Torso")~=nil then
565
        h=hit.Parent.Parent:FindFirstChild("Humanoid")
566
        end
567
        if hit.Parent.className=="Hat" then
568
        hit=hit.Parent.Parent:findFirstChild("Head")
569
        end
570
        if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then
571
        if hit.Parent:findFirstChild("DebounceHit")~=nil then if hit.Parent.DebounceHit.Value==true then return end end
572
        --[[                if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
573
                        return
574
                end]]
575
--                        hs(hit,1.2) 
576
                        c=Instance.new("ObjectValue")
577
                        c.Name="creator"
578
                        c.Value=game:service("Players").LocalPlayer
579
                        c.Parent=h
580
                        game:GetService("Debris"):AddItem(c,.5)
581
                Damage=math.random(minim,maxim)
582
--                h:TakeDamage(Damage)
583
                blocked=false
584
                block=hit.Parent:findFirstChild("Block")
585
                if block~=nil then
586
                print(block.className)
587
                if block.className=="NumberValue" then
588
                if block.Value>0 then
589
                blocked=true
590
                if decreaseblock==nil then
591
                block.Value=block.Value-1
592
                end
593
                end
594
                end
595
                if block.className=="IntValue" then
596
                if block.Value>0 then
597
                blocked=true
598
                if decreaseblock~=nil then
599
                block.Value=block.Value-1
600
                end
601
                end
602
                end
603
                end
604
                if blocked==false then
605
--                h:TakeDamage(Damage)
606
                h.Health=h.Health-Damage
607
                showDamage(hit.Parent,Damage,.5,BrickColor.new("Dark stone grey"))
608
                else
609
                h.Health=h.Health-(Damage/2)
610
                showDamage(hit.Parent,Damage/2,.5,BrickColor.new("Bright blue"))
611
                end
612
                if Type=="Knockdown" then
613
                hum=hit.Parent.Humanoid
614
hum.PlatformStand=true
615
coroutine.resume(coroutine.create(function(HHumanoid)
616
swait(1)
617
HHumanoid.PlatformStand=false
618
end),hum)
619
                local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit
620
--hit.CFrame=CFrame.new(hit.Position,Vector3.new(angle.x,hit.Position.y,angle.z))*CFrame.fromEulerAnglesXYZ(math.pi/4,0,0)
621
local bodvol=Instance.new("BodyVelocity")
622
bodvol.velocity=angle*knockback
623
bodvol.P=5000
624
bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
625
bodvol.Parent=hit
626
rl=Instance.new("BodyAngularVelocity")
627
rl.P=3000
628
rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
629
rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10))
630
rl.Parent=hit
631
game:GetService("Debris"):AddItem(bodvol,.5)
632
game:GetService("Debris"):AddItem(rl,.5)
633
                elseif Type=="Normal" then
634
                vp=Instance.new("BodyVelocity")
635
                vp.P=500
636
                vp.maxForce=Vector3.new(math.huge,0,math.huge)
637
--                vp.velocity=Character.Torso.CFrame.lookVector*Knockback
638
                if KnockbackType==1 then
639
                vp.velocity=Property.CFrame.lookVector*knockback+Property.Velocity/1.05
640
                elseif KnockbackType==2 then
641
                vp.velocity=Property.CFrame.lookVector*knockback
642
                end
643
                if knockback>0 then
644
                        vp.Parent=hit.Parent.Torso
645
                end
646
                game:GetService("Debris"):AddItem(vp,.5)
647
                elseif Type=="Up" then
648
                local bodyVelocity=Instance.new("BodyVelocity")
649
                bodyVelocity.velocity=vt(0,60,0)
650
                bodyVelocity.P=5000
651
                bodyVelocity.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
652
                bodyVelocity.Parent=hit
653
                game:GetService("Debris"):AddItem(bodyVelocity,1)
654
                rl=Instance.new("BodyAngularVelocity")
655
                rl.P=3000
656
                rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
657
                rl.angularvelocity=Vector3.new(math.random(-30,30),math.random(-30,30),math.random(-30,30))
658
                rl.Parent=hit
659
                game:GetService("Debris"):AddItem(rl,.5)
660
                elseif Type=="Snare" then
661
                bp=Instance.new("BodyPosition")
662
                bp.P=2000
663
                bp.D=100
664
                bp.maxForce=Vector3.new(math.huge,math.huge,math.huge)
665
                bp.position=hit.Parent.Torso.Position
666
                bp.Parent=hit.Parent.Torso
667
                game:GetService("Debris"):AddItem(bp,1)
668
                elseif Type=="Target" then
669
                if Targetting==false then
670
                ZTarget=hit.Parent.Torso
671
                coroutine.resume(coroutine.create(function(Part) 
672
                so("http://www.roblox.com/asset/?id=15666462",Part,1,1.5) 
673
                swait(5)
674
                so("http://www.roblox.com/asset/?id=15666462",Part,1,1.5) 
675
                end),ZTarget)
676
                TargHum=ZTarget.Parent:findFirstChild("Humanoid")
677
                targetgui=Instance.new("BillboardGui")
678
                targetgui.Parent=ZTarget
679
                targetgui.Size=UDim2.new(10,100,10,100)
680
                targ=Instance.new("ImageLabel")
681
                targ.Parent=targetgui
682
                targ.BackgroundTransparency=1
683
                targ.Image="rbxassetid://4834067"
684
                targ.Size=UDim2.new(1,0,1,0)
685
                cam.CameraType="Scriptable"
686
                cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)
687
                dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z)
688
                workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)
689
                Targetting=true
690
                RocketTarget=ZTarget
691
                for i=1,Property do
692
                --while Targetting==true and Humanoid.Health>0 and Character.Parent~=nil do
693
                if Humanoid.Health>0 and Character.Parent~=nil and TargHum.Health>0 and TargHum.Parent~=nil and Targetting==true then
694
                swait()
695
                end
696
                --workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,Head.CFrame.p+rmdir*100)
697
                cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)
698
                dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z)
699
                cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)*cf(0,5,10)*euler(-0.3,0,0)
700
                end
701
                Targetting=false
702
                RocketTarget=nil
703
                targetgui.Parent=nil
704
                cam.CameraType="Custom"
705
                end
706
                end
707
                        debounce=Instance.new("BoolValue")
708
                        debounce.Name="DebounceHit"
709
                        debounce.Parent=hit.Parent
710
                        debounce.Value=true
711
                        game:GetService("Debris"):AddItem(debounce,Delay)
712
                        c=Instance.new("ObjectValue")
713
                        c.Name="creator"
714
                        c.Value=Player
715
                        c.Parent=h
716
                        game:GetService("Debris"):AddItem(c,.5)
717
                CRIT=false
718
                hitDeb=true
719
                AttackPos=6
720
        end
721
end
722
 
723
showDamage=function(Char,Dealt,du,Color)
724
        m=Instance.new("Model")
725
        m.Name=tostring(Dealt)
726
        h=Instance.new("Humanoid")
727
        h.Health=0
728
        h.MaxHealth=0
729
        h.Parent=m
730
        c=Instance.new("Part")
731
        c.Transparency=0
732
        c.BrickColor=Color
733
        c.Name="Head"
734
        c.TopSurface=0
735
        c.BottomSurface=0
736
        c.formFactor="Plate"
737
        c.Size=Vector3.new(1,.4,1)
738
        ms=Instance.new("CylinderMesh")
739
        ms.Scale=Vector3.new(.8,.8,.8)
740
        if CRIT==true then
741
                ms.Scale=Vector3.new(1,1.25,1)
742
        end
743
        ms.Parent=c
744
        c.Reflectance=0
745
        Instance.new("BodyGyro").Parent=c
746
        c.Parent=m
747
        if Char:findFirstChild("Head")~=nil then
748
        c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0))
749
        elseif Char.Parent:findFirstChild("Head")~=nil then
750
        c.CFrame=CFrame.new(Char.Parent["Head"].CFrame.p+Vector3.new(0,1.5,0))
751
        end
752
        f=Instance.new("BodyPosition")
753
        f.P=2000
754
        f.D=100
755
        f.maxForce=Vector3.new(math.huge,math.huge,math.huge)
756
        f.position=c.Position+Vector3.new(0,3,0)
757
        f.Parent=c
758
        game:GetService("Debris"):AddItem(m,.5+du)
759
        c.CanCollide=false
760
        m.Parent=workspace
761
        c.CanCollide=false
762
end
763
764
handle=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,1,"Dark stone grey","Handle",Vector3.new(0.232000008, 0.812000036, 0.34799999))
765
handleweld=weld(m,Character["Right Arm"],handle,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0146102905, -0.318485737, 0.839184284, 1.00000632, -4.93172472e-008, -0.000935511896, -0.000935515272, -6.51810888e-006, -1.00000536, 4.32263612e-008, 0.999999762, -6.51843266e-006))
766
Hitbox=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,1,"Dark stone grey","Hitbox",Vector3.new(5.11999989, 1.03200006, 0.800000012))
767
Hitboxweld=weld(m,handle,Hitbox,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(2.26914215, -2.28439808, -0.0138931274, 5.5279628e-008, 0.000357966754, -0.999999583, -0.000903482374, 1.00000536, 0.000357964687, 1.00000632, 0.000903477019, 3.78699411e-007))
768
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.200000003, 0.232000008))
769
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0174179077, -4.69187212, -0.754995346, -1.0000025, 0.000546428899, -0.00286973943, -0.00286977179, -2.13581079e-005, 0.999995589, 0.000546361669, 1.00000572, 2.29263151e-005))
770
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
771
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.579999983, 0.927999973))
772
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00373840332, -2.08894491, 2.90544128, 1.00000536, 0.00170327828, -1.6089453e-007, -0.00170328422, 1.00000441, 1.36183207e-005, 1.84098781e-007, -1.36177896e-005, 0.999999642))
773
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
774
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.231999993))
775
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79949474, -0.180219173, -0.227863312, -0.00172967673, 1.00001013, 2.24112646e-005, 6.46309104e-007, 2.24120486e-005, -0.999999523, -1.00001204, -0.00172966474, -6.85080067e-007))
776
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
777
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34799999, 0.200000003, 0.696000099))
778
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.74123478, -0.409946442, 4.40184164, -0.00107316044, 1.00000525, 1.4551938e-005, 1.0000062, 0.00107315509, 7.93131278e-007, 7.77512412e-007, 1.45525482e-005, -0.999999642))
779
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
780
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.579999983, 0.927999914))
781
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000267028809, -0.582561016, -1.50176382, 1.00001347, -3.86033207e-007, -3.92623845e-009, 3.77418473e-007, 1.00001156, 2.45045476e-006, 3.94029254e-009, -2.44983767e-006, 0.999999285))
782
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
783
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00412750244, 1.45268583, -1.05011797, 1.00001216, 0.00172310648, 2.03311345e-007, 0.00172311824, -1.00001025, 6.49886579e-006, 2.14497248e-007, -6.49923504e-006, -0.999999285))
784
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
785
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(3.13199997, 0.231999978, 0.69599998))
786
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.80415058, -0.524322987, -0.00103759766, 9.72363068e-007, 2.15515029e-005, -0.999999285, -0.00172366935, 1.00001025, 2.15501732e-005, 1.00001216, 0.00172365736, 1.0095107e-006))
787
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.231999993, 0.232000008))
788
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00213241577, 0.754931927, -3.58990145, -1.00000894, 0.00341619202, 7.19290369e-007, -0.00341618108, -1.00000799, -2.25470994e-005, 6.42287603e-007, -2.25490967e-005, 0.999999642))
789
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
790
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.231999993))
791
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79969883, -0.180217266, 0.23601532, -0.00172980642, 1.00001013, 2.24137202e-005, 6.46412275e-007, 2.24145024e-005, -0.999999285, -1.00001204, -0.00172979443, -6.85189946e-007))
792
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
793
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
794
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00409317017, 1.45303392, 2.21011066, -1.00001216, -0.00168438489, -1.55491065e-007, 0.00168439688, -1.00001025, 6.03345643e-006, -1.6564087e-007, 6.03390299e-006, 0.999999285))
795
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
796
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.928000152, 0.34799999))
797
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0164337158, 0.00995254517, 0.378734589, 1.00000417, -0.000275396451, 0.000659934303, -0.000271914061, 0.707111299, 0.70709461, -0.000661380531, -0.707101762, 0.707109511))
798
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.463999957, 0.452400029))
799
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0109825134, -0.0555400848, 0.707753658, 1.00001204, 0.00170851196, -1.88033137e-005, -0.0017085236, 1.00001013, 1.71195006e-005, 1.88328195e-005, -1.70869171e-005, 0.999999285))
800
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.812000036, 0.200000003, 0.200000003))
801
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.96466255, -0.414768219, 0.721370459, -0.00134572294, 0.500003576, 0.866025984, 1.00001371, 0.000263436057, 0.00140178087, 0.000472741085, 0.866039276, -0.499996334))
802
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
803
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0.60000002384186,"Pastel Blue","Part",Vector3.new(2.31999993, 0.34799999, 0.200000003))
804
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.2697916, -1.39367867, 0.285621643, 9.60484385e-007, 2.34255967e-005, -0.999999404, -0.00169333746, 1.00001848, 2.34244617e-005, 1.00002027, 0.00169331662, 1.00015268e-006))
805
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
806
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999904, 0.231999978, 0.69599998))
807
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-3.02214336, -0.756259918, -0.00161361694, 9.72405815e-007, 2.15511936e-005, -0.999999046, -0.00172374037, 1.00001574, 2.15500022e-005, 1.00001884, 0.00172372279, 1.00955594e-006))
808
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.812000036, 0.34799999))
809
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0164260864, 0.299938202, -0.537542105, 1.00001764, -0.000275420141, 0.000659916259, -0.000271896773, 0.707119524, 0.707094133, -0.000661385478, -0.707109988, 0.707109034))
810
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.579999983, 0.695999742, 0.463999987))
811
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.39053106, -0.458235741, -0.011390686, -0.000440491422, 1.00001991, 1.48311792e-005, -5.82179155e-007, -1.48307363e-005, 0.999999404, 1.00002158, 0.000440472504, 5.88722855e-007))
812
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
813
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
814
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0137062073, 0.00253915787, -1.46745825, -1.00000048, 0.00355784409, 1.83245029e-005, 0.00355784269, 0.999999583, 2.01142084e-005, -1.82529657e-005, 2.0179079e-005, -0.999999642))
815
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
816
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
817
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0136070251, 0.113649845, 0.986213684, -1.00001204, -0.00167019933, -1.89533148e-005, 0.0016702119, -1.00001013, -2.11289407e-005, -1.89182501e-005, -2.11601837e-005, 0.999999285))
818
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
819
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.812000036, 0.200000003, 0.200000003))
820
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.96466923, 0.397167206, 0.721361637, -0.0013458092, 0.50001061, 0.86602205, 1.00001383, 0.00026367465, 0.00140174653, 0.000472528627, 0.866035402, -0.500003278))
821
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
822
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 0.928000033))
823
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56735134, -0.408821106, 3.24180651, -0.000670250331, 1.00001955, 1.51960503e-005, 1.00002134, 0.000670230889, 6.58439376e-007, 6.48245248e-007, 1.51957993e-005, -0.999999404))
824
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
825
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0.60000002384186,"Pastel Blue","Part",Vector3.new(2.31999993, 0.34799999, 0.200000003))
826
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.26982021, -1.39350224, -0.295120239, 1.08945255e-006, 2.34336403e-005, -0.999999404, -0.00210836693, 1.00001788, 2.34318177e-005, 1.00001955, 0.00210834551, 1.13885642e-006))
827
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
828
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999904, 0.231999978, 0.69599998))
829
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-3.02117348, 1.4526372, 0.0043182373, -8.55062524e-007, -7.5024268e-006, -0.999999642, 0.00172491686, -1.00000417, 7.50057416e-006, -1.00000513, -0.00172491092, 8.67988547e-007))
830
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
831
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.170059204, -2.2058959, 4.45978069, -1.00001419, -0.00135475828, -4.16571709e-007, -0.00135477353, 1.00001323, 4.34294707e-005, 3.57724417e-007, 4.34299582e-005, -0.999999642))
832
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983))
833
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000008, 0.200000003, 0.34800005))
834
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00218582153, -0.812090874, 2.42410946, 1.0000062, -0.000122337253, -0.000491121027, -0.000139618875, 0.866030037, -0.499999434, 0.000486493052, 0.500002682, 0.866024911))
835
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
836
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.34799999, 0.200000003))
837
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00135040283, 0.462905884, 3.42825031, -1.00001216, -0.00170107209, -3.2242329e-007, 0.00170108408, -1.00001025, -4.80908056e-007, -3.21594428e-007, -4.80819381e-007, 0.999999285))
838
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
839
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 1.27600002, 0.69599998))
840
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00625753403, -1.16150713, -0.00413131714, 9.68375389e-007, 2.27232595e-005, -0.999999404, -0.00171916001, 1.00001824, 2.27220989e-005, 1.00002003, 0.00171913893, 1.0074408e-006))
841
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
842
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.174598694, -2.20604086, 4.45978403, -1.0000217, 3.07324808e-006, 3.6950091e-008, 3.05491267e-006, 1.00001991, 4.44986144e-005, -3.68387809e-008, 4.44985162e-005, -0.999999404))
843
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983))
844
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.231999993, 0.34800005))
845
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.7220459e-005, -0.171551704, 2.84820986, 1.00001347, 1.32246059e-005, -1.8708166e-005, -1.32331043e-005, 1.00001156, 9.19823833e-007, 1.87084588e-005, -9.18944352e-007, 0.999999285))
846
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.812000155, 0.200000003, 0.231999993))
847
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.90776682, -1.85868549, -0.00782012939, 1.8466252e-006, 2.3490722e-005, -0.999999404, -0.00454348512, 1.0000093, 2.34826093e-005, 1.00001109, 0.00454345904, 1.95331836e-006))
848
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
849
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.232000038, 0.463999987))
850
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.69186592, -0.987005711, -0.00565719604, 1.16656577e-006, 2.24069317e-005, -0.999999642, -0.0023512831, 1.00000334, 2.24043106e-005, 1.00000429, 0.00235127681, 1.21924631e-006))
851
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 1, 1))
852
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.463999987, 0.34799999))
853
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.008228302, -2.14741659, -0.0642538071, -1.00000715, 0.00357599347, 3.75979994e-007, 0.00357599184, 1.00000525, 2.70939381e-007, -3.75028975e-007, 2.71639692e-007, -0.999999285))
854
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
855
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.200000003))
856
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000347137451, -1.8586607, -0.167779922, 1.00002146, -7.44219869e-006, -3.64530095e-008, 7.4239797e-006, 1.00001967, 2.38242046e-006, 3.6459241e-008, -2.38146504e-006, 0.999999404))
857
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
858
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
859
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0133476257, 0.114125729, -1.46745729, 1.00000048, -0.00355736027, 1.89384191e-005, -0.00355735887, -0.999999583, 2.02438559e-006, 1.8931225e-005, -2.09207792e-006, -0.999999642))
860
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
861
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(1.74000013, 0.232000083, 0.69599998))
862
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(3.64782763, -2.03162193, -0.00580215454, 1.18259686e-006, 2.35495809e-005, -0.999999404, -0.00240779901, 1.00001693, 2.35471889e-005, 1.00001872, 0.00240777642, 1.23929362e-006))
863
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.232000008, 0.463999987))
864
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.26977873, -1.68380308, -0.00464248657, 1.04666037e-006, 2.36031628e-005, -0.999999285, -0.00197039847, 1.00000978, 2.36014093e-005, 1.00001168, 0.00197038613, 1.09316613e-006))
865
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.579999983, 1.15999985))
866
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000141143799, -0.00238656998, -1.38578653, 1.00001347, -2.6228372e-007, -3.18987103e-009, 2.53668986e-007, 1.00001156, 2.2798049e-006, 3.2041374e-009, -2.27918736e-006, 0.999999285))
867
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34800005, 0.200000003, 0.200000003))
868
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.12457228, 0.377754211, -2.04072428, -0.00161815656, 2.28647568e-005, 0.999998331, 1.00000501, -0.000935775577, 0.00161816564, 0.000935807999, 1.00000536, -2.13500443e-005))
869
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
870
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.69599998, 0.34800005))
871
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00218963623, -1.21802139, 2.42397022, 1.00000656, -0.000122337195, -0.000491121318, -0.000139618875, 0.866030455, -0.499999672, 0.000486493111, 0.500002742, 0.866025031))
872
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.59740001))
873
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.012588501, -0.230174541, 1.22678614, 1.00001204, 0.00170156895, -1.85436711e-005, -0.00170158059, 1.00001013, 1.60903783e-005, 1.85713052e-005, -1.60583568e-005, 0.999999285))
874
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
875
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000187, 0.200000003, 0.200000003))
876
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.28582335, -2.20614576, 0.16740036, 1.29392276e-006, 2.35486077e-005, -0.999999285, -0.00276590372, 1.00000787, 2.35452953e-005, 1.00000978, 0.00276589021, 1.3590477e-006))
877
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
878
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Cyan","Part",Vector3.new(0.579999983, 0.927999735, 0.463999987))
879
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.39041233, -1.27023077, -0.011089325, -0.000441556913, 1.00001168, 1.47172686e-005, -5.82458881e-007, -1.47170649e-005, 0.999999285, 1.00001359, 0.0004415476, 5.88964099e-007))
880
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
881
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.200000003, 0.928000033))
882
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56732988, 0.403812408, 3.24179888, -0.000671263493, 1.00000596, 1.39352715e-005, 1.00000691, 0.000671258371, 6.59181296e-007, 6.49824415e-007, 1.39354743e-005, -0.999999642))
883
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
884
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 1.27600002, 0.69599998))
885
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.180254936, -1.16150093, -0.0041885376, 9.68362087e-007, 2.2722732e-005, -0.999999285, -0.00171916536, 1.00001013, 2.27213986e-005, 1.00001204, 0.00171915337, 1.00742602e-006))
886
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 1, 1))
887
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.231999993, 0.916400015))
888
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0164260864, 0.589895248, 0.094648838, 1.00001764, -0.000275413156, 0.000659923593, -0.000271906902, 0.707119524, 0.707094133, -0.000661385711, -0.707109988, 0.707109034))
889
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.34799999, 0.200000003))
890
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00074005127, -0.113721371, 2.02377272, 1.00001466, -2.03231466e-005, 3.07392952e-007, -2.03155214e-005, -1.00001335, -1.85632734e-006, 3.07421914e-007, 1.85568797e-006, -0.999999404))
891
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
892
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.232000008, 0.200000003))
893
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000648498535, 0.523108482, 3.42824936, -1.00001204, -0.00170232763, -3.22026239e-007, 0.00170233962, -1.00001013, -4.4727858e-007, -3.21253964e-007, -4.47188995e-007, 0.999999285))
894
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
895
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.232000008, 0.231999993))
896
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00292205811, -2.03163147, 4.63377762, -1.00001311, -0.000978587777, -2.91069369e-007, -0.000978597905, 1.00001121, 4.45006881e-005, 2.4750986e-007, 4.45008554e-005, -0.999999285))
897
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
898
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(1.62399995, 0.927999794, 0.928000033))
899
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.1038084, 0.702246666, -0.00408935547, -0.00171928364, 1.00001013, 1.46179427e-005, -5.92813478e-007, -1.46185203e-005, 0.999999285, 1.00001204, 0.00171927165, 6.17952878e-007))
900
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
901
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.463999987))
902
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.180233479, -1.85741377, -0.00400161743, 9.68401537e-007, 2.21498412e-005, -0.999999285, -0.00171989296, 1.00001013, 2.2148517e-005, 1.00001204, 0.00171988097, 1.00649675e-006))
903
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.580000103, 1))
904
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.34799999, 0.200000003))
905
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00061416626, 0.113962173, -0.515907764, 1.00000679, 8.48609488e-007, -1.58665658e-009, -8.52916855e-007, 1.00000584, 8.92841399e-007, 1.59491531e-009, -8.9252535e-007, 0.999999642))
906
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
907
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 0.200000003))
908
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.000152587891, 0.350605965, -0.979739666, -1.00001347, 3.24973371e-007, -3.23643548e-007, -3.16358637e-007, -1.00001156, -4.67361169e-005, -3.23648152e-007, -4.67360405e-005, 0.999999285))
909
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
910
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.231999978))
911
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0134773254, -2.03588963, 0.0627288818, 1.0000118, 0.00168008753, -0.000919409504, -0.000919448154, 1.43879734e-005, -0.999998927, -0.00168008532, 1.00001025, 1.59331266e-005))
912
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
913
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.34799999, 0.34799999))
914
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00144577026, 0.465278625, 2.25577259, 1.00000525, -0.00357661862, 2.83521615e-007, -0.00357662095, -1.00000381, -2.32054535e-005, 3.66508516e-007, 2.32040093e-005, -0.999999404))
915
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
916
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.231999993, 0.69599998))
917
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.4577775, -0.755722523, -0.00420379639, 9.68686891e-007, 2.31499107e-005, -0.999999285, -0.00171863148, 1.00001037, 2.31485628e-005, 1.00001228, 0.00171861949, 1.00847365e-006))
918
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.927999914, 0.231999978, 0.69599998))
919
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.63014698, -0.756272316, -0.00161361694, 9.72395696e-007, 2.15512227e-005, -0.999999285, -0.00172371534, 1.00001013, 2.15498931e-005, 1.00001204, 0.00172370335, 1.00954367e-006))
920
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
921
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000984191895, -0.756361485, 0.354147911, 1.00001216, 0.00168376672, -1.40138248e-008, -0.00168377871, 1.00001025, 2.1083024e-005, 4.95281753e-008, -2.10825874e-005, 0.999999285))
922
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
923
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.200000003, 0.231999844))
924
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.19616699e-005, -0.350408554, -0.921793938, 1.00001347, 8.28295015e-008, -2.89782998e-009, -9.14442353e-008, 1.00001156, 2.05126844e-006, 2.91285485e-009, -2.05064771e-006, 0.999999285))
925
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
926
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.463999987))
927
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00622749329, -1.85754061, -0.00392532349, 9.6856877e-007, 2.22277413e-005, -0.999999285, -0.00171961775, 1.00001037, 2.2226408e-005, 1.00001228, 0.00171960576, 1.00679244e-006))
928
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.580000103, 1))
929
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(3.13199997, 0.231999978, 0.69599998))
930
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.804111, 1.68473339, 0.00412750244, -8.36535833e-007, -6.4935798e-006, -0.999999285, 0.00172392465, -1.00001013, 6.49140156e-006, -1.00001204, -0.00172391266, 8.47700733e-007))
931
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
932
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00101089478, -0.756358147, 3.25414419, 1.00001884, 0.00168378535, -1.40127501e-008, -0.00168380293, 1.00001574, 2.10829876e-005, 4.953597e-008, -2.1082411e-005, 0.999999046))
933
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
934
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
935
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00154876709, -0.345762253, -0.747890472, -1.00000513, 0.00184790534, -9.90573952e-008, -0.00184790278, -1.00000417, -3.50944756e-005, -1.63901603e-007, -3.50941227e-005, 0.999999642))
936
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
937
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.231999993))
938
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00116729736, 0.582655907, 0.921771049, 1.0000118, -0.0018872465, 3.00768534e-007, -0.00188724138, -1.00000989, -2.33032779e-006, 3.05155339e-007, 2.32914181e-006, -0.999999285))
939
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
940
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.34799999, 0.69599998))
941
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.26979065, -1.04566193, -0.00424575806, 9.68193035e-007, 2.35501375e-005, -0.999999285, -0.00171805895, 1.00001037, 2.35487987e-005, 1.00001228, 0.00171804742, 1.00865361e-006))
942
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000187, 0.200000003, 0.200000003))
943
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.28582954, -2.20552588, -0.181804657, 1.45761271e-006, 2.37911408e-005, -0.999999285, -0.00329261925, 1.00000644, 2.37865734e-005, 1.00000834, 0.00329260482, 1.53593442e-006))
944
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
945
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 0.928000033))
946
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56748581, 0.403205872, 3.24181366, -0.000669696892, 1.00001156, 1.54301233e-005, 1.00001347, 0.000669687288, 6.58446311e-007, 6.48107061e-007, 1.54301015e-005, -0.999999285))
947
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
948
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.232000008, 0.34799999))
949
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00191497803, -2.03143692, -2.60386896, 1.00001359, 0.000368760899, 2.53006078e-007, -0.000368769979, 1.00001168, 2.77856907e-006, -2.51969908e-007, -2.77804475e-006, 0.999999285))
950
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
951
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.231999993, 0.231999993))
952
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79963732, -0.0062046051, -0.227901459, -0.00172873132, 1.00001025, 2.30093628e-005, 6.45988621e-007, 2.30101468e-005, -0.999999285, -1.00001216, -0.00172871957, -6.85771909e-007))
953
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
954
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
955
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000247955322, -1.85837555, 0.515717983, -1.00001347, 0.00037799112, 1.62256811e-007, 0.000377983262, 1.00001156, 4.46234044e-005, -1.45407441e-007, 4.4623368e-005, -0.999999285))
956
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
957
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.231999993, 0.200000003))
958
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00257110596, -1.6831336, 3.42826033, 1.00001204, 0.00170258048, -1.60158933e-007, -0.00170259248, 1.00001013, 1.46196398e-005, 1.8506725e-007, -1.46188831e-005, 0.999999285))
959
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
960
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.200000003))
961
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000370025635, -1.8587203, -1.44380522, 1.00001359, -8.11205246e-006, -3.67194701e-008, 8.10361234e-006, 1.00001168, 2.74641434e-006, 3.67127662e-008, -2.74579975e-006, 0.999999285))
962
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
963
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.231999993, 0.200000003))
964
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.27035666, -1.68360662, 0.293216705, -6.99449004e-007, 0.000311892974, 0.999999285, -0.00104407989, 1.00001121, -0.000311888987, -1.00001323, -0.00104407, -3.73821621e-007))
965
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
966
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.928000152, 0.464000016, 0.463999987))
967
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.16985369, -0.871246338, -0.0051651001, 1.16509625e-006, 2.38373486e-005, -0.999998808, -0.00235050265, 1.00001895, 2.38351458e-005, 1.00002158, 0.00235049031, 1.22111521e-006))
968
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000008, 0.200000003, 1.04399979))
969
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000732421875, 0.345625401, -1.32782841, 1.00001347, 1.57987233e-006, -3.28700223e-009, -1.58848707e-006, 1.00001156, 1.30031594e-006, 3.30395888e-009, -1.29968794e-006, 0.999999285))
970
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
971
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000172, 0.200000003, 0.231999993))
972
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.341750622, -1.85878611, -0.00778961182, 1.84655323e-006, 2.3751556e-005, -0.999999285, -0.00454270514, 1.00000131, 2.3743276e-005, 1.00000322, 0.00454268791, 1.9544193e-006))
973
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
974
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 1.2759999))
975
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-2.28881836e-005, -0.466629028, -0.399776936, 1.00001347, -3.22703272e-007, -3.16622373e-009, 3.14088538e-007, 1.00001156, 2.64065238e-006, 3.18028226e-009, -2.6400412e-006, 0.999999285))
976
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
977
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
978
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0040397644, 1.45275879, 0.354114056, -1.00001884, -0.00168373343, -1.7531282e-007, 0.00168375147, -1.00001597, 6.02276077e-006, -1.85434587e-007, 6.02347882e-006, 0.999999166))
979
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
980
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.231999993, 0.231999993))
981
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79963207, -0.00620794296, 0.236164093, -0.00172861468, 1.00001025, 2.30448168e-005, 6.46028013e-007, 2.30456026e-005, -0.999999285, -1.00001216, -0.00172860292, -6.85869907e-007))
982
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
983
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(1.62399995, 1.27599967, 0.928000033))
984
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.10384512, 2.7322464, -0.00403213501, -0.00171939307, 1.00001013, 1.46226739e-005, -5.92917615e-007, -1.46232505e-005, 0.999999285, 1.00001204, 0.00171938131, 6.18066792e-007))
985
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
986
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
987
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000701904297, -0.345462322, 1.90779448, 1.00001347, -2.00413051e-005, 3.0602007e-007, -2.00327486e-005, -1.00001156, -2.15015098e-006, 3.06052669e-007, 2.14952706e-006, -0.999999285))
988
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
989
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(1.04400015, 0.811999977, 0.69599998))
990
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.2278223, -1.50939083, -0.00476455688, 1.06762559e-006, 2.37910026e-005, -0.999999285, -0.00203778502, 1.00000966, 2.37891327e-005, 1.00001156, 0.00203777291, 1.11610427e-006))
991
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.200000003, 0.928000033))
992
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56723642, -0.411323547, 3.2417984, -0.000671109243, 1.0000056, 1.40209831e-005, 1.00000656, 0.000671104353, 6.59014859e-007, 6.49602271e-007, 1.40211887e-005, -0.999999642))
993
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
994
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
995
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00456619263, 1.45251989, 3.25319099, -1.00000548, -0.00168398093, -1.74997453e-007, 0.0016839871, -1.00000453, 7.01806357e-006, -1.86809473e-007, 7.01812223e-006, 0.999999642))
996
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
997
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
998
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0012512207, 0.756712437, 0.921786785, 1.00001192, -0.00188787864, 2.99965563e-007, -0.00188787398, -1.00001001, -2.71932527e-006, 3.05087923e-007, 2.71814042e-006, -0.999999285))
999
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1000
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
1001
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00101852417, -0.756660938, -1.05014706, -1.00001204, -0.00172244979, 6.12758271e-008, -0.00172246178, 1.00001013, 2.15474902e-005, -9.84062183e-008, 2.15469754e-005, -0.999999285))
1002
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1003
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.580000103, 2.204))
1004
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00379943848, -2.08976412, 1.34025192, 1.00001204, 0.00171907921, 2.17523793e-005, -0.00171909155, 1.00001013, 1.06986054e-005, -2.17342458e-005, -1.07354717e-005, 0.999999285))
1005
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(1.27600014, 1.04400003, 0.69599998))
1006
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(3.06781864, -1.39336252, -0.00276947021, 6.42567954e-007, 2.37156328e-005, -0.999999285, -0.000670476642, 1.00001156, 2.37155527e-005, 1.00001347, 0.000670467038, 6.58474448e-007))
1007
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.696000159, 0.200000003, 0.232000008))
1008
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.457955837, -0.580825329, -0.0055770874, 1.16664842e-006, 2.21116316e-005, -0.999999642, -0.00235209521, 1.00000632, 2.21090704e-005, 1.00000727, 0.0023520845, 1.21865253e-006))
1009
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
1010
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
1011
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00102996826, -0.756342888, -2.7901454, -1.00001884, -0.00172247365, 6.13245135e-008, -0.001722491, 1.00001574, 2.15474611e-005, -9.84643691e-008, 2.15468062e-005, -0.999999046))
1012
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1013
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.927999973, 0.200000003))
1014
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.35656452, -0.0282249451, -2.04077148, -0.00161817856, 2.2865348e-005, 0.999997616, 1.00001848, -0.000935790653, 0.00161816448, 0.000935816381, 1.00001693, -2.13497078e-005))
1015
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 1, 0.579999983))
1016
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34799999, 0.200000003, 0.696000099))
1017
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.7414937, 0.402587891, 4.40184164, -0.00107212085, 1.00001121, 1.57967261e-005, 1.00001311, 0.00107211061, 7.93275149e-007, 7.76334844e-007, 1.57971135e-005, -0.999999285))
1018
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
1019
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
1020
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0135307312, 0.00276422501, 0.986213207, 1.00001204, 0.00167110038, -1.825656e-005, -0.00167111226, 1.00001013, -1.0784629e-006, 1.82550084e-005, 1.10962583e-006, 0.999999285))
1021
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
1022
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.231999964, 0.200000003))
1023
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0116043091, -0.169836521, 2.03595734, 1.00001204, 0.00170413801, -1.86736106e-005, -0.00170414965, 1.00001013, 1.63084733e-005, 1.87016558e-005, -1.62761844e-005, 0.999999285))
1024
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
1025
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.927999914, 0.231999978, 0.69599998))
1026
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.62992048, 1.45317078, 0.00423812866, -8.35475475e-007, -7.49478841e-006, -0.999999642, 0.00172465458, -1.00001037, 7.49267065e-006, -1.00001204, -0.00172464119, 8.48372508e-007))
1027
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
1028
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0048866272, 1.45256662, -2.78931189, 1.00000513, 0.00172351021, 2.02878823e-007, 0.00172351615, -1.00000417, 7.49809578e-006, 2.15795779e-007, -7.49809897e-006, -0.999999642))
1029
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1030
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
1031
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.175273895, -2.2061739, -4.11187935, 1.00001371, 0.00036665576, 8.8621448e-008, -0.000366665074, 1.0000118, 2.83818667e-006, -8.7566761e-008, -2.8376005e-006, 0.999999285))
1032
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983))
1033
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000008, 0.579999983, 0.200000003))
1034
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000499725342, -0.350563049, -2.02378225, 1.00001347, -5.64614311e-007, -3.58900643e-009, 5.56057785e-007, 1.00001156, 2.58954788e-006, 3.60246588e-009, -2.58893624e-006, 0.999999285))
1035
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
1036
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.463999957, 0.452400029))
1037
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0107460022, -0.0555205345, 1.75172997, 1.00001204, 0.00170685095, -1.87402256e-005, -0.00170686259, 1.00001013, 1.71129595e-005, 1.87696915e-005, -1.7080516e-005, 0.999999285))
1038
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.200000003, 0.200000003))
1039
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000179290771, -0.11830616, -0.515934467, 1.00000679, 1.18016033e-006, -1.49793378e-009, -1.18446769e-006, 1.00000584, 4.800022e-007, 1.50599488e-009, -4.79683422e-007, 0.999999642))
1040
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
1041
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.579999983, 0.695999742, 0.463999987))
1042
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.39072371, -2.08222008, -0.0108184814, -0.000440219301, 1.00001168, 1.49555108e-005, -5.82121402e-007, -1.49553034e-005, 0.999999285, 1.00001359, 0.000440209988, 5.88711941e-007))
1043
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1044
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000038, 0.200000003, 3.59599972))
1045
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000350952148, -0.34586668, 1.57220888, 1.00001347, -8.66054324e-006, -1.0555099e-009, 8.65192851e-006, 1.00001156, 6.67146651e-007, 1.06459686e-009, -6.66510914e-007, 0.999999285))
1046
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
1047
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993))
1048
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000980377197, -0.756362438, 2.21014261, 1.00001216, 0.00168377184, -1.39758196e-008, -0.00168378383, 1.00001025, 2.10831458e-005, 4.94904349e-008, -2.10827075e-005, 0.999999285))
1049
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1050
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003))
1051
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000228881836, -1.85836792, 2.37173796, -1.00001347, 0.000378501718, 1.62424982e-007, 0.000378494151, 1.00001156, 4.46612976e-005, -1.45538479e-007, 4.46612685e-005, -0.999999285))
1052
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
1053
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Cyan","Part",Vector3.new(1.62399995, 0.927999794, 0.928000033))
1054
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.1039381, 1.63024521, -0.0039024353, -0.00172031764, 1.00001013, 1.46122475e-005, -5.72987631e-007, -1.46127904e-005, 0.999999285, 1.00001204, 0.00172030565, 5.98132715e-007))
1055
mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1056
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(2.9000001, 0.232000038, 0.232000008))
1057
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(2.2558732, -0.755105019, -0.005027771, 1.16550927e-006, 2.32517414e-005, -0.999999046, -0.00235130615, 1.00001335, 2.32494094e-005, 1.00001562, 0.00235129381, 1.22017377e-006))
1058
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.812000036, 0.34799999))
1059
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.000499725342, -0.000572681427, -0.399878502, 1.00001347, -3.89991328e-009, -1.60411329e-009, -4.71482053e-009, 1.00001156, 9.86925897e-007, 1.61898139e-009, -9.86294253e-007, 0.999999285))
1060
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.69599998, 0.231999993))
1061
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000854492188, -0.060251236, -0.689863205, 1.00000679, 9.31904651e-008, -2.52386245e-009, -9.7497832e-008, 1.00000584, 1.58413877e-006, 2.53151944e-009, -1.58382682e-006, 0.999999642))
1062
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.34799999, 0.34799996))
1063
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000202178955, -0.698717594, -0.863790989, 1.00001359, -9.37085133e-007, -4.30265912e-009, 9.28586815e-007, 1.00001168, 2.73720707e-006, 4.31539515e-009, -2.73659361e-006, 0.999999285))
1064
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
1065
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.59740001))
1066
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0118713379, 0.117973328, 1.22682953, 1.00001204, 0.00170348049, -1.86220968e-005, -0.00170349213, 1.00001013, 1.60979762e-005, 1.86497764e-005, -1.60657855e-005, 0.999999285))
1067
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
1068
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003))
1069
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.170646667, -2.20620346, -4.11187887, 1.00001299, 0.00135321938, 4.18644504e-007, -0.00135323033, 1.00001109, 2.83407667e-006, -4.147997e-007, -2.83402255e-006, 0.999999285))
1070
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983))
1071
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34800005, 0.200000003, 0.200000003))
1072
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.12456751, -0.434249878, -2.04071569, -0.00161815656, 2.28647568e-005, 0.999998331, 1.00000501, -0.000935775577, 0.00161816564, 0.000935807999, 1.00000536, -2.13500443e-005))
1073
mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983))
1074
Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.231999993, 0.200000003))
1075
Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.27036333, -1.68534136, 0.286766052, 4.37200288e-006, -0.00031248352, -0.999999225, -0.00104415184, 1.00001121, -0.000312483375, 1.00001323, 0.00104414311, 4.04568164e-006))
1076
mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983))
1077
Barrel=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Barrel",Vector3.new(0.695999742, 0.200000003, 0.928000033))
1078
Barrelweld=weld(m,handle,Barrel,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.09376717, 3.31707621, -0.00493240356, -0.00171980122, 1.00000441, 1.36221133e-005, -5.93967741e-007, -1.36229164e-005, 0.999999642, 1.00000536, 0.00171979528, 6.1739911e-007))
1079
mesh("CylinderMesh",Barrel,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1))
1080
1081
LASER_WIDTH = 5
1082
LASER_MAGIC_CIRCLE_DISTANCE = 6.25
1083
laser_data = {}
1084
1085
player=game.Players.localPlayer
1086
char=player.Character
1087
active=false
1088
1089
math = {
1090
abs = math.abs,
1091
acos = math.acos,
1092
asin = math.asin,
1093
atan = math.atan,
1094
atan2 = math.atan2,
1095
ceil = math.ceil,
1096
cos = math.cos,
1097
cosh = math.cosh,
1098
deg = math.deg,
1099
exp = math.exp,
1100
floor = math.floor,
1101
fmod = math.fmod,
1102
frexp = math.frexp,
1103
huge = math.huge,
1104
ldexp = math.ldexp,
1105
log = math.log,
1106
log10 = math.log10,
1107
max = math.max,
1108
min = math.min,
1109
modf = math.modf,
1110
phi = 1.618033988749895,
1111
pi = math.pi,
1112
pow = math.pow,
1113
rad = math.rad,
1114
random = math.random,
1115
randomseed = math.randomseed,
1116
sin = math.sin,
1117
sinh = math.sinh,
1118
sqrt = math.sqrt,
1119
tan = math.tan,
1120
tanh = math.tanh,
1121
tau = 2 * math.pi
1122
}
1123
magicCircleData = {}
1124
MAGIC_CIRCLE_DEFAULT_OFFSET = 6.25
1125
function AnimateMagicCircle(data)
1126
    local frame, direction, magic_circle_model, magic_circle_part, magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, duration, 
1127
1128
stay, magic_circle_adornee_func, magic_circle_offset = unpack(data)
1129
    frame = frame + 1
1130
    data[1] = frame
1131
    local transparency = (frame / duration) ^ stay
1132
    local opacity = 1 - transparency
1133
    if frame == duration then
1134
        pcall(game.Destroy, magic_circle_model)
1135
        magicCircleData[data] = nil
1136
    else
1137
        if magic_circle_model.Parent ~= workspace then
1138
            magic_circle_model.Parent=workspace
1139
        end
1140
        local magic_circle_adornee = magic_circle_adornee_func()
1141
        magic_circle_position = magic_circle_adornee.Position + direction * magic_circle_offset
1142
        local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) * CFrame.Angles(0, 0, math.tau * frame / 
1143
1144
25)
1145
        magic_circle_part.CFrame = magic_circle_cframe
1146
        magic_circle_light.Brightness = opacity
1147
        magic_circle_decal_back.Transparency = transparency
1148
        magic_circle_decal_front.Transparency = transparency
1149
    end
1150
end
1151
function CreateMagicCircle(target, magic_circle_scale, magic_circle_image, light_color, duration, stay, magic_circle_adornee_func, 
1152
1153
magic_circle_offset)
1154
    local magic_circle_adornee = magic_circle_adornee_func()
1155
    if magic_circle_adornee then
1156
        local origin = magic_circle_adornee.Position
1157
        local direction = (target - origin).unit
1158
        local magic_circle_position = origin + direction * magic_circle_offset
1159
        local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction)
1160
        local magic_circle_model = Instance.new("Model")
1161
        local magic_circle_part = Instance.new("Part", magic_circle_model)
1162
        local magic_circle_mesh = Instance.new("BlockMesh", magic_circle_part)
1163
        local magic_circle_light = Instance.new("PointLight", magic_circle_part)
1164
        local magic_circle_decal_back = Instance.new("Decal", magic_circle_part)
1165
        local magic_circle_decal_front = Instance.new("Decal", magic_circle_part)
1166
        magic_circle_model.Archivable = false
1167
        magic_circle_part.Anchored = true
1168
        magic_circle_part.BottomSurface = "Smooth"
1169
        magic_circle_part.CanCollide = false
1170
        magic_circle_part.CFrame = magic_circle_cframe
1171
        magic_circle_part.FormFactor = "Custom"
1172
        magic_circle_part.Locked = true
1173
        magic_circle_part.Size = Vector3.new(0.2, 0.2, 0.2)
1174
        magic_circle_part.TopSurface = "Smooth"
1175
        magic_circle_part.Transparency = 1
1176
        magic_circle_mesh.Scale = Vector3.new(60, 60, 0) * magic_circle_scale
1177
        magic_circle_light.Color = light_color
1178
        magic_circle_light.Range = 16 * magic_circle_scale
1179
        magic_circle_light.Shadows = true
1180
        magic_circle_decal_back.Face = "Back"
1181
        magic_circle_decal_back.Texture = magic_circle_image
1182
        magic_circle_decal_front.Face = "Front"
1183
        magic_circle_decal_front.Texture = magic_circle_image
1184
        magic_circle_model.Parent = workspace
1185
        local data = {0, direction, magic_circle_model, magic_circle_part, magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, 
1186
1187
duration, stay, magic_circle_adornee_func, magic_circle_offset}
1188
        magicCircleData[data] = true
1189
        return data
1190
    end
1191
end
1192
1193
--GraphicalEffects.fragmentation = {}
1194
function AnimateLaserOfDeath(data)
1195
    local frame, directionOrientation, direction, magic_circle_model, laser_part, laser_mesh, magic_circle_part, magic_circle_light, 
1196
1197
magic_circle_decal_back, magic_circle_decal_front, sound, laser_scale, fragmentation_size, duration, laser_lights, laser_effects, stay, light_effects = 
1198
1199
unpack(data)
1200
    local laser_color = laser_part.Color
1201
    frame = frame + 1
1202
    data[1] = frame
1203
    local transparency = (frame / duration) ^ stay
1204
    local opacity = 1 - transparency
1205
    if frame == 2 then
1206
        sound:Play()
1207
    end
1208
    if frame == duration then
1209
        pcall(game.Destroy, magic_circle_model)
1210
        laser_data[data] = nil
1211
    else
1212
        if magic_circle_model.Parent ~= workspace then
1213
            magic_circle_model.Parent=workspace
1214
        end
1215
        local laser_distance = 0
1216
        local origin = Barrel.CFrame
1217
        if not light_effects then
1218
            direction = (origin * directionOrientation - origin.p).unit
1219
        end
1220
        local magic_circle_position = origin.p + direction * LASER_MAGIC_CIRCLE_DISTANCE
1221
        local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) * CFrame.Angles(0, 0, math.tau * frame / 
1222
1223
25)
1224
        local loop_scale = (laser_scale - 1) / 10
1225
        for x_offset = -loop_scale, loop_scale, 2 do
1226
            for y_offset = -loop_scale, loop_scale, 2 do
1227
                local origin_position = magic_circle_cframe * Vector3.new(x_offset, y_offset, 0)
1228
                for index = 1, 8 do
1229
                    local part, position
1230
                    for ray_index = 1, 10 do
1231
                        local ray = Ray.new(origin_position + direction * (999 * (ray_index - 1)), direction * 999)
1232
                        part, position = workspace:FindPartOnRay(ray, magic_circle_model)
1233
                        if part then
1234
                            break
1235
                        end
1236
                    end
1237
                    if part then
1238
                        laser_distance = (position - origin_position).magnitude
1239
                        if frame % 8 == 1 and index == 1 then
1240
                            Instance.new("Explosion", workspace).Position = position
1241
                        end
1242
                        if not part:IsA("Terrain") then
1243
                            pcall(part.BreakJoints, part)
1244
                            local is_block = part:IsA("Part") and part.Shape == Enum.PartType.Block
1245
                            local mass = part:GetMass()
1246
                            local size = part.Size
1247
                            if (is_block and ((size.X < fragmentation_size and size.Y < fragmentation_size and size.Z < 
1248
1249
fragmentation_size) or (not part.Anchored and mass < 750))) or (not is_block and mass < 250000) then
1250
                                local part_transparency = math.max(part.Transparency + 0.007 * fragmentation_size, 0.5)
1251
                                if part_transparency >= 0.5 then -- temporarily to minimize debris
1252
                                    pcall(game.Destroy, part)
1253
                                else
1254
                                    local cframe = part.CFrame
1255
                                    part.Anchored = false
1256
                                    part.BrickColor = BrickColor.new("Medium stone grey")
1257
                                    part.CanCollide = true
1258
                                    if part:IsA("FormFactorPart") then
1259
                                        part.FormFactor = "Custom"
1260
                                    end
1261
                                    part.Size = size - Vector3.new(0.135, 0.135, 0.135) * fragmentation_size
1262
                                    part.Transparency = part_transparency
1263
                                    part.CFrame = cframe + direction * 5
1264
                                    part.Velocity = part.Velocity + direction * 40
1265
                                end
1266
                            elseif is_block then
1267
                                local parts = {part}
1268
                                local model = Instance.new("Model", part.Parent)
1269
                                model.Name = "Fragments"
1270
                                if size.X >= fragmentation_size then
1271
                                    size = Vector3.new(0.5, 1, 1) * size
1272
                                    local archivable = part.Archivable
1273
                                    local cframe = part.CFrame
1274
                                    part.FormFactor = "Custom"
1275
                                    part.Size = size
1276
                                    part.Archivable = true
1277
                                    local part_clone = part:Clone()
1278
                                    part.Archivable = archivable
1279
                                    part_clone.Archivable = archivable
1280
                                    part.CFrame = cframe * CFrame.new(-0.5 * size.X, 0, 0)
1281
                                    part_clone.CFrame = cframe * CFrame.new(0.5 * size.X, 0, 0)
1282
                                    part_clone.Parent = model
1283
                                    parts[2] = part_clone
1284
                                end
1285
                                if size.Y >= fragmentation_size then
1286
                                    size = Vector3.new(1, 0.5, 1) * size
1287
                                    for part_index = 1, #parts do
1288
                                        local part = parts[part_index]
1289
                                        local archivable = part.Archivable
1290
                                        local cframe = part.CFrame
1291
                                        part.FormFactor = "Custom"
1292
                                        part.Size = size
1293
                                        part.Archivable = true
1294
                                        local part_clone = part:Clone()
1295
                                        part.Archivable = archivable
1296
                                        part_clone.Archivable = archivable
1297
                                        part.CFrame = cframe * CFrame.new(0, -0.5 * size.Y, 0)
1298
                                        part_clone.CFrame = cframe * CFrame.new(0, 0.5 * size.Y, 0)
1299
                                        part_clone.Parent = model
1300
                                        table.insert(parts, part_clone)
1301
                                    end
1302
                                end
1303
                                if size.Z >= fragmentation_size then
1304
                                    size = Vector3.new(1, 1, 0.5) * size
1305
                                    for part_index = 1, #parts do
1306
                                        local part = parts[part_index]
1307
                                        local archivable = part.Archivable
1308
                                        local cframe = part.CFrame
1309
                                        part.FormFactor = "Custom"
1310
                                        part.Size = size
1311
                                        part.Archivable = true
1312
                                        local part_clone = part:Clone()
1313
                                        part.Archivable = archivable
1314
                                        part_clone.Archivable = archivable
1315
                                        part.CFrame = cframe * CFrame.new(0, 0, -0.5 * size.Z)
1316
                                        part_clone.CFrame = cframe * CFrame.new(0, 0, 0.5 * size.Z)
1317
                                        part_clone.Parent = model
1318
                                        table.insert(parts, part_clone)
1319
                                    end
1320
                                end
1321
                                for _, part in ipairs(parts) do
1322
                                    part:MakeJoints()
1323
                                end
1324
                            else
1325
                                break
1326
                            end
1327
                        end
1328
                    else
1329
                        laser_distance = 9990
1330
                        break
1331
                    end
1332
                end
1333
            end
1334
        end
1335
        local laser_cframe = magic_circle_cframe * CFrame.Angles(-0.5 * math.pi, 0, 0)
1336
        local laser_width = LASER_WIDTH * opacity * laser_scale
1337
        local laser_mesh_offset = Vector3.new(0, 0.5 * laser_distance, 0)    
1338
        laser_part.CFrame = laser_cframe
1339
        if laser_effects then
1340
            local laser_effect_data_1, laser_effect_data_2 = laser_effects[1], laser_effects[2]
1341
            local laser_effect_1, laser_effect_mesh_1 = laser_effect_data_1[1], laser_effect_data_1[2]
1342
            local laser_effect_2, laser_effect_mesh_2 = laser_effect_data_2[1], laser_effect_data_2[2]
1343
            laser_effect_1.CFrame = laser_cframe
1344
            laser_effect_2.CFrame = laser_cframe
1345
            laser_effect_mesh_1.Offset = laser_mesh_offset
1346
            laser_effect_mesh_2.Offset = laser_mesh_offset
1347
            local game_time = time()
1348
            local effect_scale_1 = 0.5 + 0.5 * math.sin(16 * math.pi * game_time)
1349
            local effect_scale_2 = 0.5 + 0.5 * math.cos(16 * math.pi * game_time)
1350
            laser_effect_mesh_1.Scale = 5 * Vector3.new(laser_width * effect_scale_1, laser_distance, laser_width * effect_scale_1)
1351
            laser_effect_mesh_2.Scale = 5 * Vector3.new(laser_width * effect_scale_2, laser_distance, laser_width * effect_scale_2)
1352
            laser_width = laser_width * 0.25
1353
        end
1354
        laser_mesh.Offset = laser_mesh_offset            
1355
        laser_mesh.Scale = 5 * Vector3.new(laser_width, laser_distance, laser_width)
1356
        magic_circle_part.CFrame = magic_circle_cframe
1357
        magic_circle_light.Brightness = opacity
1358
        magic_circle_decal_back.Transparency = transparency
1359
        magic_circle_decal_front.Transparency = transparency
1360
        if light_effects then
1361
            for index, data in ipairs(laser_lights) do
1362
                local laser_spotlight_part, laser_spotlight = data[1], data[2]
1363
                local laser_spotlight_offset = 30 * (index - 1)
1364
                if laser_spotlight_offset <= laser_distance then
1365
                    laser_spotlight_part.CFrame = magic_circle_cframe * CFrame.new(0, 0, -laser_spotlight_offset)
1366
                    laser_spotlight.Brightness = opacity
1367
                    laser_spotlight.Enabled = true
1368
                else
1369
                    laser_spotlight.Enabled = false
1370
                end
1371
            end
1372
        end
1373
    end
1374
end
1375
function ShootLaserOfDeath(target, data)
1376
        data = data or {}
1377
        local brickcolor = data.brickcolor or BrickColor.new("Really black")
1378
        local duration = data.duration or 40
1379
        local fragmentation_size = data.fragmentation_size or 3
1380
        local laser_scale = data.laser_scale or 1
1381
        local light_color = data.light_color or Color3.new(1, 0.5, 1)
1382
        local magic_circle_image = data.magic_circle_image or "rbxassetid://122610943"
1383
        local magic_circle_scale = data.magic_circle_scale or 1
1384
        local sound_volume = data.sound_volume or 1 / 3
1385
        local special_effects = data.special_effects
1386
        local stay = data.stay or 4
1387
        local origin = Barrel.CFrame
1388
        local directionOrientation = origin:pointToObjectSpace(target)
1389
        local direction = (target - origin.p).unit
1390
        local magic_circle_position = origin.p + direction * LASER_MAGIC_CIRCLE_DISTANCE
1391
        local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction)
1392
        local magic_circle_model = Instance.new("Model")
1393
        local laser_part = Instance.new("Part", magic_circle_model)
1394
        local laser_mesh = Instance.new("CylinderMesh", laser_part)
1395
        local magic_circle_part = Instance.new("Part", magic_circle_model)
1396
        local magic_circle_mesh = Instance.new("BlockMesh", magic_circle_part)
1397
        local magic_circle_light = Instance.new("PointLight", magic_circle_part)
1398
        local magic_circle_decal_back = Instance.new("Decal", magic_circle_part)
1399
        local magic_circle_decal_front = Instance.new("Decal", magic_circle_part)
1400
        local sound = Instance.new("Sound", magic_circle_part)
1401
        sound.Pitch = 0.9
1402
        sound.SoundId = "rbxassetid://222371404"
1403
        sound.Volume = 1
1404
        magic_circle_model.Archivable = false
1405
        laser_part.Anchored = true
1406
        laser_part.BottomSurface = "Smooth"
1407
        laser_part.BrickColor = brickcolor
1408
        laser_part.CanCollide = false
1409
        laser_part.CFrame = magic_circle_cframe * CFrame.Angles(-0.5 * math.pi, 0, 0)
1410
        laser_part.FormFactor = "Custom"
1411
        laser_part.Locked = true
1412
        laser_part.Size = Vector3.new(0.2, 0.2, 0.2)
1413
        laser_part.TopSurface = "Smooth"
1414
        laser_mesh.Offset = Vector3.new(0, 0, 0)
1415
        laser_mesh.Name = "Mesh"
1416
        laser_mesh.Scale = 5 * laser_scale * Vector3.new(LASER_WIDTH, 0, LASER_WIDTH)
1417
        magic_circle_part.Anchored = true
1418
        magic_circle_part.BottomSurface = "Smooth"
1419
        magic_circle_part.CanCollide = false
1420
        magic_circle_part.CFrame = magic_circle_cframe
1421
        magic_circle_part.FormFactor = "Custom"
1422
        magic_circle_part.Locked = true
1423
        magic_circle_part.Size = Vector3.new(0.2, 0.2, 0.2)
1424
        magic_circle_part.TopSurface = "Smooth"
1425
        magic_circle_part.Transparency = 1
1426
        magic_circle_mesh.Scale = Vector3.new(60, 60, 0) * magic_circle_scale
1427
        magic_circle_light.Color = light_color
1428
        magic_circle_light.Range = 16 * magic_circle_scale
1429
        magic_circle_light.Shadows = true
1430
        magic_circle_decal_back.Face = "Back"
1431
        magic_circle_decal_back.Texture = magic_circle_image
1432
        magic_circle_decal_front.Face = "Front"
1433
        magic_circle_decal_front.Texture = magic_circle_image
1434
        magic_circle_model.Parent = workspace
1435
        local laser_color = brickcolor.Color
1436
        local laser_lights = {}
1437
        local light_effects = laser_color.r + laser_color.g + laser_color.b > 0.25
1438
        if light_effects then
1439
            local laser_spotlight_part_template = Instance.new("Part")
1440
            local laser_spotlight_light_template = Instance.new("SpotLight", laser_spotlight_part_template)
1441
            laser_spotlight_part_template.Anchored = true
1442
            laser_spotlight_part_template.Anchored = true
1443
            laser_spotlight_part_template.BottomSurface = "Smooth"
1444
            laser_spotlight_part_template.CanCollide = false
1445
            laser_spotlight_part_template.FormFactor = "Custom"
1446
            laser_spotlight_part_template.Locked = true
1447
            laser_spotlight_part_template.Size = Vector3.new(0.2, 0.2, 0.2)
1448
            laser_spotlight_part_template.TopSurface = "Smooth"
1449
            laser_spotlight_part_template.Transparency = 1
1450
            laser_spotlight_light_template.Angle = 45
1451
            laser_spotlight_light_template.Color = laser_color
1452
            laser_spotlight_light_template.Enabled = true
1453
            laser_spotlight_light_template.Name = "Light"
1454
            laser_spotlight_light_template.Range = 60
1455
            for index = 1, 40 do
1456
                local laser_spotlight_part = laser_spotlight_part_template:Clone()
1457
                laser_spotlight_part.CFrame = magic_circle_cframe * CFrame.new(0, 0, -30 * (index - 1))
1458
                laser_spotlight_part.Parent = magic_circle_model
1459
                laser_lights[index] = {laser_spotlight_part, laser_spotlight_part.Light}
1460
            end
1461
        end
1462
        local laser_effects
1463
        if special_effects then
1464
            laser_effects = {}
1465
            local laser_effect_1 = laser_part:Clone()
1466
            laser_effect_1.BrickColor = special_effects
1467
            laser_effect_1.Transparency = 0.5
1468
            local laser_effect_2 = laser_effect_1:Clone()
1469
            laser_effects[1], laser_effects[2] = {laser_effect_1, laser_effect_1.Mesh}, {laser_effect_2, laser_effect_2.Mesh}
1470
            laser_effect_1.Parent = magic_circle_model
1471
            laser_effect_2.Parent = magic_circle_model
1472
        end
1473
        laser_data={0, directionOrientation, direction, magic_circle_model, laser_part, laser_mesh, magic_circle_part, 
1474
1475
magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, sound, laser_scale, fragmentation_size, duration, laser_lights, laser_effects, stay, 
1476
1477
light_effects}
1478
    end
1479
1480
function laser(target)
1481
ShootLaserOfDeath(target, {brickcolor = BrickColor.new("New Yeller"), duration = 20, fragmentation_size = 10, 
1482
1483
laser_scale = 3, light_color = Color3.new(1, 0.5, 0), magic_circle_image = "rbxassetid://1", magic_circle_scale = 1.5, sound_volume = 1, 
1484
1485
special_effects = BrickColor.new("Deep orange"), stay = 2})
1486
end
1487
1488
function LaserAtMouse()
1489
    laser(mouse.Hit.p)
1490
end
1491
1492
mouse.Button1Down:connect(function()
1493
        pcall(function()
1494
                shoot()
1495
        end)
1496
end)
1497
1498
ready=false
1499
1500
mouse.KeyDown:connect(function(k)
1501
        k=k:lower()
1502
        if k=='f' then
1503
                if ready==false then
1504
                        ready=true
1505
                        attack=true
1506
                elseif ready==true then
1507
                        ready=false
1508
                        attack=false
1509
                end
1510
elseif k=='q' and attack==false then
1511
		Melee()
1512
        end
1513
end)
1514
1515
function Melee()
1516
        attack = true
1517
con1=Hitbox.Touched:connect(function(hit) Damagefunc(hit,50,100,math.random(10,15),"Normal",RootPart,.2,1) end) 
1518
 for i=0,3,0.3 do
1519
                        swait()
1520
LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(5),math.rad(25),math.rad(-20)),.3)
1521
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(160),math.rad(0),math.rad(0)),.3)
1522
1523
                end
1524
 so("http://www.roblox.com/asset/?id=200632136",Hitbox,1,0.8) 
1525
                for i=0,3,0.3 do
1526
                        swait()
1527
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3)
1528
handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(-150),math.rad(0),math.rad(0)),.3)
1529
                end
1530
                attack=false
1531
con1:disconnect()
1532
        end
1533
1534
function shoot()
1535
        if attack==true and ready==true then
1536
                ready=false
1537
                attack=true
1538
                LaserAtMouse()
1539
                for i=0,3,0.3 do
1540
                        swait()
1541
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
1542
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(-30),math.rad(0),math.rad(0)),.3)
1543
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(120),math.rad(0),math.rad(0)),.3)
1544
LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(180),math.rad(0),math.rad(40)),.3)
1545
Torso.Velocity=Head.CFrame.lookVector*-100
1546
                end
1547
                attack=false
1548
        end
1549
end
1550
1551
local sine = 0
1552
local change = 1
1553
local val = 0
1554
1555
while true do
1556
swait()
1557
sine = sine + change
1558
local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude 
1559
local velderp=RootPart.Velocity.y
1560
hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
1561
if equipped==true or equipped==false then
1562
if attack==false then
1563
idle=idle+1
1564
else
1565
idle=0
1566
end
1567
if idle>=500 then
1568
if attack==false then
1569
--Sheath()
1570
end
1571
end
1572
if RootPart.Velocity.y > 1 and hitfloor==nil then 
1573
Anim="Jump"
1574
if attack==false then
1575
handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1576
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(-20),math.rad(0),math.rad(0)),.3)
1577
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
1578
end
1579
elseif RootPart.Velocity.y < -1 and hitfloor==nil then 
1580
Anim="Fall"
1581
if attack==false then
1582
handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1583
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
1584
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
1585
end
1586
elseif torvel<1 and hitfloor~=nil then
1587
Anim="Idle"
1588
if attack==false then
1589
handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1590
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1591
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1592
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(60),math.rad(0),math.rad(0)),.3)
1593
LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(120),math.rad(0),math.rad(40)),.3)
1594
end
1595
elseif torvel>2 and torvel<22 and hitfloor~=nil then
1596
Anim="Walk"
1597
if attack==false then
1598
change=3
1599
handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1600
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3)
1601
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-10),math.rad(0),math.rad(0)),.3)
1602
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(60),math.rad(0),math.rad(0)),.3)
1603
LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(120),math.rad(0),math.rad(40)),.3)
1604
end
1605
elseif torvel>=22 and hitfloor~=nil then
1606
Anim="Run"
1607
handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1608
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3)
1609
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-10),math.rad(0),math.rad(0)),.3)
1610
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(60),math.rad(0),math.rad(0)),.3)
1611
LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(120),math.rad(0),math.rad(40)),.3)
1612
if attack==false then
1613
end
1614
end
1615
end
1616
if ready==true then
1617
handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1618
RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1619
Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1620
RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(90),math.rad(0),math.rad(0)),.3)
1621
LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(160),math.rad(0),math.rad(40)),.3)
1622
        end
1623
        pcall(function()
1624
                AnimateLaserOfDeath(laser_data)
1625
        end)
1626
end