Advertisement
danielaust

OPgun

Aug 3rd, 2019
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement