Advertisement
memberhero

Mech thingy

Dec 18th, 2017
299
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 48.75 KB | None | 0 0
  1. wait(1)
  2. print("Edited by basstracker1970")
  3. sound = Instance.new("Sound")
  4. sound.Looped = true
  5. sound.SoundId = "rbxassetid://213723476"
  6. sound.Parent = game.Players.LocalPlayer.Character
  7. sound:Play()
  8. v3 = Vector3.new
  9. cn = CFrame.new
  10. ca2 = CFrame.Angles
  11. mceil = math.ceil mc = mceil
  12. mran = math.random rn=mran
  13. mrad = math.rad rd=mrad
  14. mdeg = math.deg dg=mdeg
  15. mabs = math.abs abs=mabs
  16. ud = UDim2.new
  17. ca = function(x,y,z) return ca2(mrad(x),mrad(y),mrad(z)) end
  18. mran2 = function(a,b) return mran(a*1000,b*1000)/1000 end
  19. bn = BrickColor.new bc=bn
  20. c3 = Color3.new
  21. deb = game:GetService("Debris")
  22.  
  23. Player = game.Players.LocalPlayer
  24. Char = Player.Character
  25. Torso = Char.Torso
  26. Head = Char.Head
  27. Humanoid = Char.Humanoid
  28. RootPart = Char.HumanoidRootPart
  29. Root = RootPart.RootJoint
  30. Mouse = Player:GetMouse()
  31.  
  32. LA=Char["Left Arm"]
  33. RA=Char["Right Arm"]
  34. LL=Char["Left Leg"]
  35. RL=Char["Right Leg"]
  36. LAM=Torso["Left Shoulder"]
  37. RAM=Torso["Right Shoulder"]
  38. LLM=Torso["Left Hip"]
  39. RLM=Torso["Right Hip"]
  40. Neck=Torso.Neck
  41. Neck.C0=cn(0,1.5,0)
  42. Neck.C1=cn(0,0,0)
  43. Char.Shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=227357299"
  44.  
  45. function chatfunc(text)
  46. local chat = coroutine.wrap(function()
  47. if Char:FindFirstChild("TalkingBillBoard")~= nil then
  48. Char:FindFirstChild("TalkingBillBoard"):destroy()
  49. end
  50. local naeeym2 = Instance.new("BillboardGui",Char)
  51. naeeym2.Size = UDim2.new(0,100,0,40)
  52. naeeym2.StudsOffset = Vector3.new(0,3,0)
  53. naeeym2.Adornee = Char.Head
  54. naeeym2.Name = "TalkingBillBoard"
  55. local tecks2 = Instance.new("TextLabel",naeeym2)
  56. tecks2.BackgroundTransparency = 1
  57. tecks2.BorderSizePixel = 0
  58. tecks2.Text = ""
  59. tecks2.Font = "Fantasy"
  60. tecks2.TextSize = 30
  61. tecks2.TextStrokeTransparency = 0
  62. tecks2.TextColor3 = Color3.new(.6,0,0)
  63. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  64. tecks2.Size = UDim2.new(1,0,0.5,0)
  65. local tecks3 = Instance.new("TextLabel",naeeym2)
  66. tecks3.BackgroundTransparency = 1
  67. tecks3.BorderSizePixel = 0
  68. tecks3.Text = "Dr Robotnik"
  69. tecks3.Font = "Fantasy"
  70. tecks3.TextSize = 30
  71. tecks3.TextStrokeTransparency = 0
  72. tecks3.TextColor3 = Color3.new(0,0,255)
  73. tecks3.TextStrokeColor3 = Color3.new(0,0,0)
  74. tecks3.Size = UDim2.new(1,0,0.5,0)
  75. for i = 1,string.len(text),1 do
  76. tecks2.Text = string.sub(text,1,i)
  77. tecks3.Text = string.sub(text,1,i)
  78. wait(0.01)
  79. end
  80. wait(2)
  81. for i = 1, 50 do
  82. wait()
  83. tecks2.Position = tecks2.Position - UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
  84. tecks2.Rotation = tecks2.Rotation - .8
  85. tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
  86. tecks2.TextTransparency = tecks2.TextTransparency + .04
  87. tecks3.Position = tecks2.Position - UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
  88. tecks3.Rotation = tecks2.Rotation + .8
  89. tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
  90. tecks3.TextTransparency = tecks2.TextTransparency + .04
  91. end
  92. naeeym2:Destroy()
  93. end)
  94. chat()
  95. end
  96. function onChatted(msg)
  97. chatfunc(msg)
  98. end
  99. Player.Chatted:connect(onChatted)
  100. coroutine.resume(coroutine.create(function()
  101. wait(2)
  102. chatfunc("You Wont Destory Me This Time")
  103. end))
  104.  
  105. name="Timbersaw"
  106.  
  107. pcall(function() Char["Sawsuit"]:Destroy() end)
  108. pcall(function() Player.PlayerGui[name]:Destroy() end)
  109. pcall(function() Char[name]:Destroy() end)
  110. pcall(function() Char.Block:Destroy() end)
  111. pcall(function() Char.Animate:Destroy() end)
  112.  
  113.  
  114. script.Name = name
  115.  
  116. as = {}
  117. so = {"Block","Hit","Shoot"}
  118. as.Cone = "1033714"
  119. as.Blast = "20329976"
  120. as.Diamond = "9756362"
  121. as.Block = "rbxasset://sounds\\metal.ogg"
  122. as.Wind = "rbxasset://168892363"
  123. as.Hit = "10209583"
  124. as.ElectricShock = "157325701"
  125. as.Shoot = "130849509"
  126. as.Chakram = "74322089"
  127. as.Ring = "3270017"
  128.  
  129.  
  130. iNew=function(tab)
  131. local v=Instance.new(tab[1])
  132. for Ind,Val in pairs(tab) do
  133. if Ind~=1 and Ind~=2 then
  134. v[Ind] = Val
  135. end
  136. end
  137. v.Parent=tab[2]==0 and LastMade or tab[2]
  138. LastMade=v
  139. return v
  140. end
  141.  
  142. iPart=function(tab)
  143. local v=Instance.new(tab.type or "Part")
  144. if tab.type~="CornerWedgePart" then v.formFactor="Custom" end
  145. v.TopSurface=10 v.BottomSurface=10 v.RightSurface=10 v.LeftSurface=10 v.FrontSurface=10 v.BackSurface=10
  146. v.Size=v3(tab[2],tab[3],tab[4])
  147. v.Locked = true
  148. v.Material="SmoothPlastic"
  149. if tab.co then v.BrickColor=bn(tab.co) end
  150. if tab.tr then v.Transparency=tab.tr end
  151. if tab.rf then v.Reflectance=tab.rf end
  152. if tab.cf then v.CFrame=tab.cf end
  153. if tab.an then v.Anchored=tab.an end
  154. if tab.mt then v.Material=tab.mt end
  155. if tab.ca then v.CanCollide=tab.ca end
  156. v.Parent=tab[1]
  157. LastMade=v
  158. return v
  159. end
  160.  
  161. function Raycast(Pos,Dir,Dist,tab)
  162. return workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *Dist),tab)
  163. end
  164.  
  165. function wait2(tim)
  166. local last = tick()
  167. repeat wait(0) until (tick()-last)>=tim
  168. end
  169.  
  170. Block=iNew{"NumberValue",Char,Name="Block",Value=0}
  171.  
  172. Root.C0=cn(0,0,0)
  173. Root.C1=cn(0,0,0)
  174.  
  175. for _,force in pairs(Torso:GetChildren()) do if force:IsA("BodyForce") or force:IsA("BodyGyro") or force:IsA("RocketPropulsion") then force:Destroy() end end
  176.  
  177. pcall(function() Torso.LAW:Remove() Torso.RAW:Remove() Torso.LLW:Remove() Torso.RLW:Remove() end)
  178. LAW=iNew{"Weld",Torso,Name="LAW",Part0=Torso,C0=cn(-1.5,0.5,0),C1=cn(0,0.5,0)}
  179. RAW=iNew{"Weld",Torso,Name="RAW",Part0=Torso,C0=cn( 1.5,0.5,0),C1=cn(0,0.5,0)}
  180. LLW=iNew{"Weld",Torso,Name="LLW",Part0=Torso,C0=cn(-0.5, -1,0),C1=cn(0, 1,0)}
  181. RLW=iNew{"Weld",Torso,Name="RLW",Part0=Torso,C0=cn( 0.5, -1,0),C1=cn(0, 1,0)}
  182.  
  183. function Arms(on)
  184. LAM.Parent=Torso LAM.Part0=Torso
  185. RAM.Parent=Torso RAM.Part0=Torso
  186. LAM.Part1=on and nil or LA
  187. RAM.Part1=on and nil or RA
  188. LAW.Part1=on and LA or nil
  189. RAW.Part1=on and RA or nil
  190. end
  191.  
  192. function Legs(on)
  193. LLM.Parent=Torso LLM.Part0=Torso
  194. RLM.Parent=Torso RLM.Part0=Torso
  195. LLM.Part1=on and nil or LL
  196. RLM.Part1=on and nil or RL
  197. LLW.Part1=on and LL or nil
  198. RLW.Part1=on and RL or nil
  199. end
  200.  
  201. function GetWeld(weld)
  202. if not weld:FindFirstChild("Angle") then
  203. local a = Instance.new("Vector3Value", weld)
  204. a.Name = "Angle"
  205. local x,y,z=weld.C0:toEulerAnglesXYZ()
  206. a.Value=v3(mdeg(x),mdeg(y),mdeg(z))
  207. end
  208. return weld.C0.p,weld.Angle.Value
  209. end
  210.  
  211. function ClearWeld(weld)
  212. if weld:FindFirstChild"Angle" then
  213. weld.Angle:Remove()
  214. end
  215. end
  216.  
  217. function SetWeld(weld,CC,i, loops, origpos,origangle, nextpos,nextangle,smooth)
  218. local CO="C"..CC
  219. smooth = smooth or 1
  220. if not weld:FindFirstChild("Angle") then
  221. local a = Instance.new("Vector3Value", weld)
  222. a.Name = "Angle"
  223. local x,y,z=weld.C0:toEulerAnglesXYZ()
  224. a.Value=v3(mdeg(x),mdeg(y),mdeg(z))
  225. end
  226.  
  227. local perc
  228. if smooth == 1 then
  229. perc = math.sin((math.pi/2)/loops*i)
  230. else
  231. perc = i/loops
  232. end
  233.  
  234. local tox,toy,toz = 0,0,0
  235. if origangle.x > nextangle.x then
  236. tox = -mabs(origangle.x - nextangle.x) *perc
  237. else
  238. tox = mabs(origangle.x - nextangle.x) *perc
  239. end
  240. if origangle.y > nextangle.y then
  241. toy = -mabs(origangle.y - nextangle.y) *perc
  242. else
  243. toy = mabs(origangle.y - nextangle.y) *perc
  244. end
  245. if origangle.z > nextangle.z then
  246. toz = -mabs(origangle.z - nextangle.z) *perc
  247. else
  248. toz = mabs(origangle.z - nextangle.z) *perc
  249. end
  250.  
  251. local tox2,toy2,toz2 = 0,0,0
  252. if origpos.x > nextpos.x then
  253. tox2 = -mabs(origpos.x - nextpos.x) *perc
  254. else
  255. tox2 = mabs(origpos.x - nextpos.x) *perc
  256. end
  257. if origpos.y > nextpos.y then
  258. toy2 = -mabs(origpos.y - nextpos.y) *perc
  259. else
  260. toy2 = mabs(origpos.y - nextpos.y) *perc
  261. end
  262. if origpos.z > nextpos.z then
  263. toz2 = -mabs(origpos.z - nextpos.z) *perc
  264. else
  265. toz2 = mabs(origpos.z - nextpos.z) *perc
  266. end
  267. weld.Angle.Value = v3(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  268. weld[CO] = cn(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2)*ca(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  269. end
  270.  
  271. function Triangle(p)
  272. local g, v = 0
  273. for s = 1, 3 do
  274. local l = (p[1+(s+1)%3] - p[1+s%3]).magnitude
  275. g, v = l > g and l or g, l > g and {p[1+(s-1)%3], p[1+(s)%3], p[1+(s+1)%3]} or v
  276. end
  277. local d = v[2]+(v[3]-v[2]).unit*((v[3]-v[2]).unit:Dot(v[1]-v[2]))
  278. local c, b = (d-v[1]).unit, (v[2]-v[3]).unit
  279. local a = b:Cross(c)
  280. local w0=iPart{workspace,1,1,1,an=true,tr=0.5,mt="SmoothPlastic",co=cc[2],cf=cn(0,0,0,a.x,b.x,c.x,a.y,b.y,c.y,a.z,b.z,c.z) + (v[1]+v[2])/2} w0.CanCollide = false w0.Name = "unray"
  281. local w1=iPart{workspace,1,1,1,an=true,tr=0.5,mt="SmoothPlastic",co=cc[2],cf=cn(0,0,0,-a.x,-b.x,c.x,-a.y,-b.y,c.y,-a.z,-b.z,c.z) + (v[1]+v[3])/2} w1.CanCollide = false w1.Name = "unray"
  282. local m0=iNew{"SpecialMesh",w0,MeshType="Wedge",Scale=v3(0,(v[2]-d).magnitude,(v[1]-d).magnitude)}
  283. local m1=iNew{"SpecialMesh",w1,MeshType="Wedge",Scale=v3(0,(v[3]-d).magnitude,(v[1]-d).magnitude)}
  284. return w0,w1
  285. end
  286.  
  287. function Lightning(from,to,times,offset,col,thickness,tra)
  288. local magz = (from - to).magnitude
  289. local curpos = from
  290. local trz = {-offset,offset}
  291. for i=1,times do
  292. local li = iPart{workspace,thickness,thickness,magz/times,an=true,tr=tra or 0.4,co=col or "New Yeller"} li.CanCollide = false li.Name = "unray"
  293. local ofz = v3(trz[mran(1,2)],trz[mran(1,2)],trz[mran(1,2)])
  294. local trolpos = cn(curpos,to)*cn(0,0,magz/times).p+ofz
  295. if times == i then
  296. local magz2 = (curpos - to).magnitude
  297. li.Size = v3(thickness,thickness,magz2)
  298. li.CFrame = cn(curpos,to)*cn(0,0,-magz2/2)
  299. else
  300. li.CFrame = cn(curpos,trolpos)*cn(0,0,magz/times/2)
  301. end
  302. curpos = li.CFrame*cn(0,0,magz/times/2).p
  303. deb:AddItem(li,0.25)
  304. end
  305. end
  306.  
  307. function PlaySound(sound,pitch,volume,parent)
  308. local newSound = iNew{"Sound",parent or Torso,Pitch=pitch,Volume=volume,Name=sound,SoundId=sound}
  309. newSound:Play()
  310. deb:AddItem(newSound,6)
  311. return newSound
  312. end
  313.  
  314. function MeshEffect(par,cf,x,y,z,inc,col,sha,adj)
  315. local adj = adj or cn(0,0,0)
  316. local mp=iPart{par,1,1,1,co=col,tr=0.3,ca=false,an=true} mp.CFrame=cf mp.Name="unray"
  317. local ms
  318. if sha:sub(1,4)=="http" then
  319. ms=iNew{"SpecialMesh",mp,MeshId=sha}
  320. elseif sha=="Block" then
  321. ms=iNew{"BlockMesh",mp}
  322. elseif sha=="Cylinder" then
  323. ms=iNew{"CylinderMesh",mp}
  324. elseif sha=="Head" or sha=="Sphere" then
  325. ms=iNew{"SpecialMesh",mp,MeshType=sha}
  326. end
  327. deb:AddItem(mp,0.7)
  328. Spawn(function()
  329. for i=0,1,inc do
  330. mp.Transparency=0.3+(1*i)
  331. mp.CFrame=mp.CFrame*adj
  332. ---ms.Scale=v3(x,y,z)*(0.3+(1*i))
  333. if i>=1 or mp.Transparency >= 1 then mp:Destroy() end
  334. wait(0)
  335. end
  336. end)
  337. end
  338.  
  339. Dmg=true
  340. Dmgv={10,15}
  341. HitDebounce={}
  342. Mult = 1
  343. Damage=function(Hum,Damage)
  344. local HName = Hum.Parent.Name
  345. if HitDebounce[HName] and HitDebounce[HName]>tick() then return end
  346. HitDebounce[HName] = tick()+0.6
  347. local Dealt = Damage*Mult
  348. local col = ""
  349.  
  350. if Hum.Parent:findFirstChild("Block") and Hum.Parent.Block:IsA("NumberValue") and Hum.Parent.Block.Value>0 then
  351. Hum.Parent.Block.Value=Hum.Parent.Block.Value-1
  352. col="Bright blue"
  353. PlaySound(as.Block,1,1,Torso)
  354. else
  355. Hum:TakeDamage(Dealt)
  356. col="Bright red"
  357. PlaySound(as.Hit,1,1,Torso)
  358. end
  359. Knockback(Hum.Parent.Torso,Torso.Position,20,0.2)
  360. local DoH=iNew{'Model',workspace,Name=col=='Bright blue' and 'Block' or Dealt}
  361. iNew{'Humanoid',DoH,MaxHealth=0,Health=0,Name=''}
  362. local Doh=iPart{DoH,1,0.2,1,co=col,an=true} Doh.Name='Head' Doh.CanCollide = false
  363. iNew{'BlockMesh',Doh}
  364. local dofs=Hum.Parent.Torso.CFrame*cn(mran2(-1.5,1.5),2.5,mran2(-1,1))
  365. Doh.CFrame=dofs
  366. deb:AddItem(Doh,1)
  367. end
  368.  
  369. local Suit = iNew{"Model",Char,Name="Sawsuit"}
  370. cc = {"Black","Dark stone grey","Brown","Olive","Bright red","Bright orange","Bright yellow","Medium stone grey","Bright green","Bright blue","White","Bright purple",
  371. "Really black"}
  372. ButtonColors = {cc[5],cc[7],cc[9],cc[10],cc[12]}
  373. Stand = iPart{Suit,2,2,1,tr=1}
  374. wStand = iNew{"Weld",Suit,Part0=RootPart,Part1=Stand,C0=cn(0,0,0),C1=cn(0,0.5,0.5)}
  375.  
  376. for i=360/12,360,360/12 do
  377. local Wood = iPart{Suit,1.5,1,0.5,mt="WoodPlanks",co=cc[3]}
  378. iNew{"Weld",Suit,Part0=Stand,Part1=Wood,C0=cn(0,0,0)*ca(0,i,0)*cn(0,0,-2.5)}
  379. local Int = iPart{Suit,1.25,0.2,1,co=cc[2]}
  380. iNew{"Weld",Suit,Part0=Wood,Part1=Int,C0=cn(0,0.5,0.75)}
  381. local Metal = iPart{Suit,1.5,0.4,0.7,mt="DiamondPlate",co=cc[2]}
  382. iNew{"Weld",Suit,Part0=Wood,Part1=Metal,C0=cn(0,1.4/2,0)}
  383. local Wood2 = iPart{Suit,1.5,0.75,0.5,mt="WoodPlanks",co=cc[3]}
  384. iNew{"Weld",Suit,Part0=Wood,Part1=Wood2,C0=cn(0,-1.75/4,-0.25)*ca(-25,0,0)*cn(0,-1.75/4,0.25)}
  385. end
  386.  
  387. SmokeStack = iPart{Suit,0.4,2,0.4,co=cc[2]}
  388. iNew{"Weld",Suit,Part0=Stand,Part1=SmokeStack,C0=cn(1.75,1.5,1.25)}
  389. iNew{"CylinderMesh",SmokeStack}
  390. StackBall = iPart{Suit,0.8,0.8,0.8,co=cc[2]}
  391. iNew{"Weld",Suit,Part0=SmokeStack,Part1=StackBall,C0=cn(0,1,0)}
  392. iNew{"SpecialMesh",StackBall,MeshType="Sphere"}
  393. StackC = iPart{Suit,1,0.2,1,co=cc[5]}
  394. iNew{"Weld",Suit,Part0=SmokeStack,Part1=StackC,C0=cn(0,1,0)}
  395. iNew{"CylinderMesh",StackC}
  396. Cone = iPart{Suit,0,0,0,co=cc[5]}
  397. iNew{"Weld",Suit,Part0=StackC,Part1=Cone,C0=cn(0,0.5,0)}
  398. iNew{"SpecialMesh",Cone,MeshId=as.Cone,Scale=v3(0.4,1.1,0.4)}
  399. StackC2 = iPart{Suit,0.55,0.2,0.55,co=cc[6]}
  400. iNew{"Weld",Suit,Part0=StackC,Part1=StackC2,C0=cn(0,0.5,0)}
  401. iNew{"CylinderMesh",StackC2,Scale=v3(1,0.5,1)}
  402. Cone2 = iPart{Suit,0,0,0,co=cc[5]}
  403. iNew{"Weld",Suit,Part0=Cone,Part1=Cone2,C0=cn(0,0,0)*ca(180,0,0)}
  404. iNew{"SpecialMesh",Cone2,MeshId=as.Cone,Scale=v3(0.4,1.3,0.4)}
  405. Hole = iPart{Suit,0.6,0.2,0.6,co=cc[2]}
  406. iNew{"Weld",Suit,Part0=Cone2,Part1=Hole,C0=cn(0,-0.5,0)}
  407. iNew{"CylinderMesh",Hole,Scale=v3(1,0.1,1)}
  408. StackTop = iPart{Suit,0.8,0.2,0.8,co=cc[5]}
  409. iNew{"Weld",Suit,Part0=Hole,Part1=StackTop,C0=cn(-0.4,-0,0)*ca(0,0,-30)*cn(0.4,0,0)}
  410. iNew{"CylinderMesh",StackTop,Scale=v3(1,0.5,1)}
  411. iNew{"Smoke",Hole,Color=bn(cc[13]).Color,RiseVelocity=-10,Size=1,Opacity = 0.4}
  412.  
  413. BackCyl = iPart{Suit,0,0,0,co=cc[2],mt="DiamondPlate"}
  414. iNew{"Weld",Suit,Part0=Stand,Part1=BackCyl,C0=cn(0,0.5,2)}
  415. iNew{"SpecialMesh",BackCyl,MeshType="Sphere",Scale=v3(3,4.5,1.25)/0.2}
  416. SeatBack = iPart{Suit,2.25,3,0.3,co=cc[1]}
  417. iNew{"Weld",Suit,Part0=Stand,Part1=SeatBack,C0=cn(0,0.5,1.2)*ca(5,0,0)}
  418. SeatBack2 = iPart{Suit,2.25*0.9,3*0.9,0.2,mt="Fabric",co=cc[6]}
  419. iNew{"Weld",Suit,Part0=SeatBack,Part1=SeatBack2,C0=cn(0,0,-0.25)}
  420. for i=-1,1,2 do
  421. SeatS = iPart{Suit,0.2,1.5,2,co=cc[1]}
  422. iNew{"Weld",Suit,Part0=SeatBack,Part1=SeatS,C0=cn((2.05/2)*i,0,0.1)*ca(0,-15*i,0)*cn(0,0,-1)}
  423. SeatS2 = iPart{Suit,0.2,1.5*0.9,2*0.9,mt="Fabric",co=cc[6]}
  424. iNew{"Weld",Suit,Part0=SeatS,Part1=SeatS2,C0=cn(-0.1*i,0,0)}
  425. end
  426.  
  427. Levers = {}
  428. for i=-1,1,2 do
  429. local LevJ = iPart{Suit,0,0,0,tr=0.5}
  430. local LeverW = iNew{"Weld",Suit,Part0=Stand,Part1=LevJ,C0=cn(i,0.6,-1.5)}
  431. local Lever = iPart{Suit,0.2,1,0.2,co=cc[8]}
  432. iNew{"Weld",Suit,Part0=LevJ,Part1=Lever,C0=cn(0,0.5,0)}
  433. table.insert(Levers,{LeverW})
  434. iNew{"CylinderMesh",Lever}
  435. local LeverBall = iPart{Suit,0.5,0.5,0.5,co=cc[6]}
  436. iNew{"Weld",Suit,Part0=Lever,Part1=LeverBall,C0=cn(0,0.6,0)}
  437. iNew{"SpecialMesh",LeverBall,MeshType="Sphere"}
  438. end
  439.  
  440. for i=-1,1,1 do
  441. local Button = iPart{Suit,0.3,0.2,0.3,co=ButtonColors[mran(1,#ButtonColors)]}
  442. iNew{"Weld",Suit,Part0=Stand,Part1=Button,C0=cn(0.5*i,0.6,-1.5)}
  443. iNew{"CylinderMesh",Button,Scale=v3(1,0.5,1)}
  444. end
  445.  
  446. Chakram = iPart{Suit,5,5,1,co=cc[2]} Chakram.Name="Chakram"
  447. wChakram = iNew{"Weld",Suit,Part0=Stand,Part1=Chakram,C0=cn(0,-1.4,0)*ca(90,0,0)}
  448. iNew{"SpecialMesh",Chakram,MeshId=as.Chakram,Scale=v3(5.5,5.5,5)}
  449. for i=-1,1,2 do
  450. Cyl = iPart{Suit,6,0.2,6,co=cc[2]}
  451. iNew{"Weld",Suit,Part0=Stand,Part1=Cyl,C0=cn(0,-1.4+i/5,0)}
  452. iNew{"CylinderMesh",Cyl}
  453. end
  454. for i=360/8,360,360/8 do
  455. local Bolt = iPart{Suit,0.2,0.2,0.2,co=cc[4],mt="DiamondPlate"}
  456. iNew{"Weld",Suit,Part0=Cyl,Part1=Bolt,C0=cn(0,0.1,0)*ca(0,i,0)*cn(0,0,-2.75)}
  457. iNew{"SpecialMesh",Bolt,MeshType="Sphere",Scale=v3(1,0.75,1)}
  458. end
  459.  
  460. Ball = iPart{Suit,4.5,3.5,4,co=cc[1]}
  461. wBall = iNew{"Weld",Suit,Part0=Stand,Part1=Ball,C0=cn(0,-1.5,0)}
  462. iNew{"SpecialMesh",Ball,MeshType="Sphere"}
  463. BallM = iPart{Suit,2,3.5*1.1,4*1.1,co=cc[2]}
  464. iNew{"Weld",Suit,Part0=Ball,Part1=BallM,C0=cn(0,0,0)}
  465. iNew{"SpecialMesh",BallM,MeshType="Sphere"}
  466. LArmConnect = iPart{Suit,0.25,1.25,0.5,co=cc[2],mt="DiamondPlate"}
  467. iNew{"Weld",Suit,Part0=Stand,Part1=LArmConnect,C0=cn(-2.275,1.525,0)}
  468. ConnectTop = iPart{Suit,0.5,0.2475,0.5,co=cc[2],mt="DiamondPlate"}
  469. iNew{"Weld",Suit,Part0=LArmConnect,Part1=ConnectTop,C0=cn(0,1.25/2,0)*ca(0,0,90)}
  470. iNew{"CylinderMesh",ConnectTop}
  471. CCyl = iPart{Suit,2,0.25,2,co=cc[4],mt="DiamondPlate"}
  472. iNew{"Weld",Suit,Part0=LArmConnect,Part1=CCyl,C0=cn(-0.25,-0.125,0)*ca(0,0,90)}
  473. iNew{"CylinderMesh",CCyl}
  474. CCyl2 = iPart{Suit,2.5,0.35,2.5,co=cc[5],mt="DiamondPlate"}
  475. iNew{"Weld",Suit,Part0=CCyl,Part1=CCyl2,C0=cn(0,0.3,0)}
  476. iNew{"CylinderMesh",CCyl2}
  477. CCyl3 = iPart{Suit,2,0.25,2,co=cc[2],mt="DiamondPlate"}
  478. iNew{"Weld",Suit,Part0=CCyl2,Part1=CCyl3,C0=cn(0,0.25,0)}
  479. iNew{"CylinderMesh",CCyl3}
  480. CCyl4 = iPart{Suit,1.5,0.25,1.5,co=cc[5],mt="DiamondPlate"}
  481. iNew{"Weld",Suit,Part0=CCyl3,Part1=CCyl4,C0=cn(0,0.25,0)}
  482. iNew{"CylinderMesh",CCyl4}
  483.  
  484. LArm = iPart{Suit,1.25,1.25,1.25,co=cc[1],mt="DiamondPlate"}
  485. wLArm = iNew{"Weld",Suit,Part0=CCyl4,Part1=LArm,C0=ca(-35,0,45)}
  486. iNew{"SpecialMesh",LArm,MeshType="Sphere"}
  487. ArmE = iPart{Suit,0.5,1.5,0.5,co=cc[2]}
  488. iNew{"Weld",Suit,Part0=LArm,Part1=ArmE,C0=cn(0,1.25,0)}
  489. iNew{"CylinderMesh",ArmE}
  490. LArm2 = iPart{Suit,1.25,1.25,1.25,co=cc[1],mt="DiamondPlate"}
  491. wLArm2 = iNew{"Weld",Suit,Part0=ArmE,Part1=LArm2,C0=cn(0,0.75,0)*ca(-80,100,0)}
  492. iNew{"SpecialMesh",LArm2,MeshType="Sphere"}
  493. ArmF = iPart{Suit,1.35,0.25,1.35,co=cc[5],mt="DiamondPlate"}
  494. iNew{"Weld",Suit,Part0=LArm2,Part1=ArmF}
  495. iNew{"CylinderMesh",ArmF}
  496. ArmFM = iPart{Suit,1.25,1,1.25,co=cc[3],mt="WoodPlanks"}
  497. iNew{"Weld",Suit,Part0=ArmF,Part1=ArmFM,C0=cn(0,0.5,0)}
  498. iNew{"CylinderMesh",ArmFM}
  499. ArmF = iPart{Suit,1.35,0.25,1.35,co=cc[5],mt="DiamondPlate"}
  500. iNew{"Weld",Suit,Part0=ArmFM,Part1=ArmF,C0=cn(0,0.5,0)}
  501. iNew{"CylinderMesh",ArmF}
  502. ArmAnt = iPart{Suit,0.4,0.75,0.4,co=cc[5],mt="DiamondPlate"}
  503. iNew{"Weld",Suit,Part0=ArmFM,Part1=ArmAnt,C0=cn(-0.775,-0.25,0)}
  504. iNew{"CylinderMesh",ArmAnt}
  505. ArmAnt2 = iPart{Suit,0.2,0.75,0.2,co=cc[8]}
  506. iNew{"Weld",Suit,Part0=ArmAnt,Part1=ArmAnt2,C0=cn(0,-0.75,0)}
  507. iNew{"CylinderMesh",ArmAnt2}
  508. ArmAnt3 = iPart{Suit,0.35,0.2,0.35,co=cc[2]}
  509. iNew{"Weld",Suit,Part0=ArmAnt,Part1=ArmAnt3,C0=cn(0,0.75/2,0)}
  510. iNew{"CylinderMesh",ArmAnt3,Scale=v3(1,0.1,1)}
  511. ArmAnt4 = iPart{Suit,0.3,0.3,0.3,co=cc[5]}
  512. iNew{"Weld",Suit,Part0=ArmAnt2,Part1=ArmAnt4,C0=cn(0,-0.75/2,0)}
  513. iNew{"CylinderMesh",ArmAnt4}
  514. for i=-1,1,2 do
  515. local BladeH = iPart{Suit,0.5,1.25,0.2,co=cc[2],mt="DiamondPlate"}
  516. iNew{"Weld",Suit,Part0=ArmF,Part1=BladeH,C0=cn(0,0.75,i/5)}
  517. local BladeH2 = iPart{Suit,0.5,0.2,0.5,co=cc[2],mt="DiamondPlate"}
  518. iNew{"Weld",Suit,Part0=BladeH,Part1=BladeH2,C0=cn(0,1.25/2,0)*ca(90,0,0)}
  519. iNew{"CylinderMesh",BladeH2,Scale=v3(1,0.99,1)}
  520. local Bolt = iPart{Suit,0.2,0.2,0.2,co=cc[8]}
  521. iNew{"Weld",Suit,Part0=BladeH2,Part1=Bolt,C0=cn(0,(0.25/2)*i,0)}
  522. iNew{"CylinderMesh",Bolt,Scale=v3(1,0.25,1)}
  523. local Bolt = iPart{Suit,0.2,0.2,0.2,co=cc[8]}
  524. iNew{"Weld",Suit,Part0=BladeH,Part1=Bolt,C0=cn(0,0,(0.25/2)*i)*ca(90,0,0)}
  525. iNew{"CylinderMesh",Bolt,Scale=v3(1,0.25,1)}
  526. end
  527. ArmSawP = iPart{Suit,0.8,2,0.2,co=cc[8]}
  528. iNew{"Weld",Suit,Part0=ArmF,Part1=ArmSawP,C0=cn(0,2.25,0)}
  529. for i=-1,1,2 do
  530. local ArmSawC = iPart{Suit,0.8,0.2,0.8,co=cc[8]}
  531. iNew{"Weld",Suit,Part0=ArmSawP,Part1=ArmSawC,C0=cn(0,1*i,0)*ca(90,0,0)}
  532. iNew{"CylinderMesh",ArmSawC,Scale=v3(1,0.99,1)}
  533. end
  534. for i=-1,1,1 do
  535. local ArmSawC = iPart{Suit,0.3,0.2,0.3,co=cc[8],mt="DiamondPlate"}
  536. iNew{"Weld",Suit,Part0=ArmSawP,Part1=ArmSawC,C0=cn(0,0.9*i,0.25/2)*ca(90,0,0)}
  537. iNew{"CylinderMesh",ArmSawC,Scale=v3(1,0.25,1)}
  538. end
  539. Saw0 = iPart{Suit,0,0,0,tr=1}
  540. iNew{"Weld",Suit,Part0=ArmSawP,Part1=Saw0,C0=ca(90,90,0)}
  541.  
  542. Saws = {}
  543. for i=1,28 do
  544. local Saw = iPart{Suit,0.55,0.2,i%2==0 and 0.55 or 0.8,co=cc[2]} Saw.Name="Saw"
  545. local wSaw = iNew{"Weld",Suit,Part0=Saw0,Part1=Saw}
  546. iNew{"BlockMesh",Saw,Scale=v3(1,0.5,1)}
  547. table.insert(Saws,{Saw,wSaw})
  548. end
  549.  
  550. RArmConnect = iPart{Suit,0.25,1.25,0.5,co=cc[2],mt="DiamondPlate"}
  551. iNew{"Weld",Suit,Part0=Stand,Part1=RArmConnect,C0=cn(2.275,1.525,0)}
  552. ConnectTop = iPart{Suit,0.5,0.2475,0.5,co=cc[2],mt="DiamondPlate"}
  553. iNew{"Weld",Suit,Part0=RArmConnect,Part1=ConnectTop,C0=cn(0,1.25/2,0)*ca(0,0,90)}
  554. iNew{"CylinderMesh",ConnectTop}
  555. CCyl = iPart{Suit,2,0.25,2,co=cc[4],mt="DiamondPlate"}
  556. iNew{"Weld",Suit,Part0=RArmConnect,Part1=CCyl,C0=cn(0.25,-0.125,0)*ca(0,0,-90)}
  557. iNew{"CylinderMesh",CCyl}
  558. CCyl2 = iPart{Suit,2.5,0.35,2.5,co=cc[5],mt="DiamondPlate"}
  559. iNew{"Weld",Suit,Part0=CCyl,Part1=CCyl2,C0=cn(0,0.3,0)}
  560. iNew{"CylinderMesh",CCyl2}
  561. CCyl3 = iPart{Suit,2,0.25,2,co=cc[2],mt="DiamondPlate"}
  562. iNew{"Weld",Suit,Part0=CCyl2,Part1=CCyl3,C0=cn(0,0.25,0)}
  563. iNew{"CylinderMesh",CCyl3}
  564. CCyl4 = iPart{Suit,1.5,0.25,1.5,co=cc[5],mt="DiamondPlate"}
  565. iNew{"Weld",Suit,Part0=CCyl3,Part1=CCyl4,C0=cn(0,0.25,0)}
  566. iNew{"CylinderMesh",CCyl4}
  567.  
  568. RArm = iPart{Suit,1.25,1.25,1.25,co=cc[1],mt="DiamondPlate"}
  569. wRArm = iNew{"Weld",Suit,Part0=CCyl4,Part1=RArm,C0=ca(0,-35,-50)}
  570. iNew{"SpecialMesh",RArm,MeshType="Sphere"}
  571. ArmE = iPart{Suit,0.5,1.5,0.5,co=cc[2]}
  572. iNew{"Weld",Suit,Part0=RArm,Part1=ArmE,C0=cn(0,1.25,0)}
  573. iNew{"CylinderMesh",ArmE}
  574. RArm2 = iPart{Suit,1.25,1.25,1.25,co=cc[1],mt="DiamondPlate"}
  575. wRArm2 = iNew{"Weld",Suit,Part0=ArmE,Part1=RArm2,C0=cn(0,0.75,0)*ca(0,90,-65)}
  576. iNew{"SpecialMesh",RArm2,MeshType="Sphere"}
  577. ArmF = iPart{Suit,1.35,0.25,1.35,co=cc[5],mt="DiamondPlate"}
  578. iNew{"Weld",Suit,Part0=RArm2,Part1=ArmF}
  579. iNew{"CylinderMesh",ArmF}
  580. ArmFM = iPart{Suit,1.25,1,1.25,co=cc[3],mt="WoodPlanks"}
  581. iNew{"Weld",Suit,Part0=ArmF,Part1=ArmFM,C0=cn(0,0.5,0)}
  582. iNew{"CylinderMesh",ArmFM}
  583. ArmF = iPart{Suit,1.35,0.25,1.35,co=cc[5],mt="DiamondPlate"}
  584. iNew{"Weld",Suit,Part0=ArmFM,Part1=ArmF,C0=cn(0,0.5,0)}
  585. iNew{"CylinderMesh",ArmF}
  586. ArmAnt = iPart{Suit,0.4,0.75,0.4,co=cc[5],mt="DiamondPlate"}
  587. iNew{"Weld",Suit,Part0=ArmFM,Part1=ArmAnt,C0=cn(-0.775,-0.25,0)}
  588. iNew{"CylinderMesh",ArmAnt}
  589. ArmAnt2 = iPart{Suit,0.2,0.75,0.2,co=cc[8]}
  590. iNew{"Weld",Suit,Part0=ArmAnt,Part1=ArmAnt2,C0=cn(0,-0.75,0)}
  591. iNew{"CylinderMesh",ArmAnt2}
  592. ArmAnt3 = iPart{Suit,0.35,0.2,0.35,co=cc[2]}
  593. iNew{"Weld",Suit,Part0=ArmAnt,Part1=ArmAnt3,C0=cn(0,0.75/2,0)}
  594. iNew{"CylinderMesh",ArmAnt3,Scale=v3(1,0.1,1)}
  595. ArmAnt4 = iPart{Suit,0.3,0.3,0.3,co=cc[5]}
  596. iNew{"Weld",Suit,Part0=ArmAnt2,Part1=ArmAnt4,C0=cn(0,-0.75/2,0)}
  597. iNew{"CylinderMesh",ArmAnt4}
  598.  
  599. for i=360/12,360,360/12 do
  600. local ArmP = iPart{Suit,0.45,0.8,0.2,co=cc[8]} ArmP.Name = "Saw"
  601. iNew{"Weld",Suit,Part0=ArmF,Part1=ArmP,C0=cn(0,0.4,0)*ca(0,i,0)*cn(0,0,0.6)*ca(20,0,0)}
  602. end
  603. for i=360/3,360,360/3 do
  604. local HookP = iPart{Suit,0.5,0.5,0.2,co=cc[8]} HookP.Name = "Saw"
  605. iNew{"Weld",Suit,Part0=ArmF,Part1=HookP,C0=cn(0,0.9,0)*ca(0,i,0)*cn(0,0,0.85)*ca(40,0,0)}
  606. local HookP2 = iPart{Suit,0.5,0.7,0.2,co=cc[8]} HookP2.Name = "Saw"
  607. iNew{"Weld",Suit,Part0=HookP,Part1=HookP2,C0=cn(0,0.25,0.1)*ca(-75,0,0)*cn(0,0.35,-0.1)}
  608. end
  609. Hole = iPart{Suit,1.1,0.2,1.1,co=cc[13]}
  610. iNew{"Weld",Suit,Part0=ArmF,Part1=Hole,C0=cn(0,0.125,0)}
  611. iNew{"CylinderMesh",Hole,Scale=v3(1,0.1,1)}
  612. LLeg = iPart{Suit,1.5,1.5,1.5,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  613. wLLeg = iNew{"Weld",Suit,Part0=Ball,Part1=LLeg,C0=cn(-1.5,-1.25,-0.25)*ca(25,0,20)}
  614. iNew{"SpecialMesh",LLeg,MeshType="Sphere"}
  615. LegE = iPart{Suit,0.75,1.5,0.75,co=cc[2]} LastMade.CanCollide = false
  616. iNew{"Weld",Suit,Part0=LLeg,Part1=LegE,C0=cn(0,-1.25,0)}
  617. iNew{"CylinderMesh",LegE}
  618. LLeg2 = iPart{Suit,1.25,1.25,1.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  619. wLLeg2 = iNew{"Weld",Suit,Part0=LegE,Part1=LLeg2,C0=cn(0,-0.75,0)*ca(-45,0,0)}
  620. iNew{"SpecialMesh",LLeg2,MeshType="Sphere"}
  621. LegE = iPart{Suit,0.75,1,0.75,co=cc[2]} LastMade.CanCollide = false
  622. iNew{"Weld",Suit,Part0=LLeg2,Part1=LegE,C0=cn(0,-1,0)}
  623. iNew{"CylinderMesh",LegE}
  624. LLeg3 = iPart{Suit,1,1,1,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  625. wLLeg3 = iNew{"Weld",Suit,Part0=LegE,Part1=LLeg3,C0=cn(0,-0.5,0)*ca(0,0,0)}
  626. iNew{"SpecialMesh",LLeg3,MeshType="Sphere"}
  627.  
  628. LFoot = iPart{Suit,1.5,0.5,2.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  629. iNew{"Weld",Suit,Part0=LLeg3,Part1=LFoot,C0=cn(0,-0.5,-0.5)*ca(0,0,0)}
  630. FootT = iPart{Suit,1,0.25,1.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  631. iNew{"Weld",Suit,Part0=LFoot,Part1=FootT,C0=cn(0,0.75/2,0.5)}
  632. FootT2 = iPart{Suit,1,0.25,1,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  633. iNew{"Weld",Suit,Part0=FootT,Part1=FootT2,C0=cn(0,0,-2.25/2+0.5)}
  634. iNew{"CylinderMesh",FootT2}
  635. for i=-1,1,2 do
  636. local FootWedge = iPart{Suit,1.5/4,0.5,0.75,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  637. iNew{"Weld",Suit,Part0=LFoot,Part1=FootWedge,C0=cn((0.75-(1.5/4/2))*i,0,-2.25/2-0.75/2)}
  638. iNew{"SpecialMesh",FootWedge,MeshType="Wedge"}
  639. local FootPart = iPart{Suit,1.5/4,0.5,0.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  640. iNew{"Weld",Suit,Part0=LFoot,Part1=FootPart,C0=cn((0.75-(1.5/4)*1.5)*i,0,-2.25/2-0.25/2)}
  641. local FootPart = iPart{Suit,1.5/4,0.5,1,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  642. iNew{"Weld",Suit,Part0=LFoot,Part1=FootPart,C0=cn((0.75-(1.5/4)*1.5)*i,0,-2.5/2-1/2-0.125)}
  643. iNew{"SpecialMesh",FootPart,MeshType="Wedge"}
  644. end
  645. for i=-1,1,1 do
  646. local Bolt = iPart{Suit,0.3,0.2,0.3,co=cc[2],mt="DiamondPlate"} LastMade.CanCollide = false
  647. iNew{"Weld",Suit,Part0=FootT2,Part1=Bolt,C0=cn(0.5*i,-0.1,i==0 and -0.9 or -0.75)}
  648. iNew{"CylinderMesh",Bolt,Scale=v3(1,0.5,1)}
  649. end
  650.  
  651. RLeg = iPart{Suit,1.5,1.5,1.5,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  652. wRLeg = iNew{"Weld",Suit,Part0=Ball,Part1=RLeg,C0=cn(1.5,-1.25,-0.25)*ca(25,0,-20)}
  653. iNew{"SpecialMesh",RLeg,MeshType="Sphere"}
  654. LegE = iPart{Suit,0.75,1.5,0.75,co=cc[2]} LastMade.CanCollide = false
  655. iNew{"Weld",Suit,Part0=RLeg,Part1=LegE,C0=cn(0,-1.25,0)}
  656. iNew{"CylinderMesh",LegE}
  657. RLeg2 = iPart{Suit,1.25,1.25,1.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  658. wRLeg2 = iNew{"Weld",Suit,Part0=LegE,Part1=RLeg2,C0=cn(0,-0.75,0)*ca(-45,0,0)}
  659. iNew{"SpecialMesh",RLeg2,MeshType="Sphere"}
  660. LegE = iPart{Suit,0.75,1,0.75,co=cc[2]} LastMade.CanCollide = false
  661. iNew{"Weld",Suit,Part0=RLeg2,Part1=LegE,C0=cn(0,-1,0)}
  662. iNew{"CylinderMesh",LegE}
  663. RLeg3 = iPart{Suit,1,1,1,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  664. wRLeg3 = iNew{"Weld",Suit,Part0=LegE,Part1=RLeg3,C0=cn(0,-0.5,0)*ca(0,0,0)}
  665. iNew{"SpecialMesh",RLeg3,MeshType="Sphere"}
  666.  
  667. RFoot = iPart{Suit,1.5,0.5,2.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  668. iNew{"Weld",Suit,Part0=RLeg3,Part1=RFoot,C0=cn(0,-0.5,-0.5)*ca(0,0,0)}
  669. FootT = iPart{Suit,1,0.25,1.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  670. iNew{"Weld",Suit,Part0=RFoot,Part1=FootT,C0=cn(0,0.75/2,0.5)}
  671. FootT2 = iPart{Suit,1,0.25,1,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  672. iNew{"Weld",Suit,Part0=FootT,Part1=FootT2,C0=cn(0,0,-2.25/2+0.5)}
  673. iNew{"CylinderMesh",FootT2}
  674. for i=-1,1,2 do
  675. local FootWedge = iPart{Suit,1.5/4,0.5,0.75,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  676. iNew{"Weld",Suit,Part0=RFoot,Part1=FootWedge,C0=cn((0.75-(1.5/4/2))*i,0,-2.25/2-0.75/2)}
  677. iNew{"SpecialMesh",FootWedge,MeshType="Wedge"}
  678. local FootPart = iPart{Suit,1.5/4,0.5,0.25,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  679. iNew{"Weld",Suit,Part0=RFoot,Part1=FootPart,C0=cn((0.75-(1.5/4)*1.5)*i,0,-2.25/2-0.25/2)}
  680. local FootPart = iPart{Suit,1.5/4,0.5,1,co=cc[1],mt="DiamondPlate"} LastMade.CanCollide = false
  681. iNew{"Weld",Suit,Part0=RFoot,Part1=FootPart,C0=cn((0.75-(1.5/4)*1.5)*i,0,-2.5/2-1/2-0.125)}
  682. iNew{"SpecialMesh",FootPart,MeshType="Wedge"}
  683. end
  684. for i=-1,1,1 do
  685. local Bolt = iPart{Suit,0.3,0.2,0.3,co=cc[2],mt="DiamondPlate"} LastMade.CanCollide = false
  686. iNew{"Weld",Suit,Part0=FootT2,Part1=Bolt,C0=cn(0.5*i,-0.1,i==0 and -0.9 or -0.75)}
  687. iNew{"CylinderMesh",Bolt,Scale=v3(1,0.5,1)}
  688. end
  689.  
  690. Char:MoveTo(Torso.Position+v3(0,10,0))
  691.  
  692. function AoEFind(Pos,Range)
  693. local fHumans = {}
  694. for i,v in pairs(workspace:GetChildren()) do
  695. local fHum,fTorso,fHead = GetHuman(v)
  696. if fHum and fTorso and fHead and v.Name~=Player.Name then
  697. if (fTorso.Position-Pos).magnitude<=Range then
  698. table.insert(fHumans,v)
  699. end
  700. end
  701. end
  702. return fHumans
  703. end
  704.  
  705. HitData = {}
  706. function AoEBreak(Pos,Range,Force,PropDmg)
  707. local function r(d)
  708. for i,v in pairs(d:GetChildren()) do
  709. if v:IsA("BasePart") and v.Name~="Terrain" then
  710. if (v.Position-Pos).magnitude<Range then
  711. local fHum,fTorso,fHead = GetHuman(v.Parent)
  712. if fHum and fTorso and fHead then return end
  713. if v:IsDescendantOf(Char) or v.Name=="unray" then return end
  714.  
  715. local broke = false
  716. if not HitData[v] then
  717. local hh = v:GetMass()/1.5
  718. HitData[v] = hh
  719. end
  720. HitData[v]=HitData[v]-PropDmg
  721. if HitData[v]<=0 then
  722. v.Anchored = false
  723. v:BreakJoints()
  724. broke=true
  725. end
  726. if broke then
  727. v.Velocity=cn(Pos,v.Position).lookVector*Force
  728. end
  729. end
  730. else
  731. r(v)
  732. end
  733. end
  734. end
  735. r(workspace)
  736. end
  737.  
  738. function GetHuman(model)
  739. local foundHum
  740. local foundTorso
  741. local foundHead
  742. if #model:GetChildren()==0 then return end
  743. for i,v in pairs(model:GetChildren()) do
  744. if v:IsA("Humanoid") then
  745. foundHum = v
  746. elseif v.Name == "Torso" then
  747. foundTorso = v
  748. elseif v.Name == "Head" then
  749. foundHead = v
  750. end
  751. end
  752. return foundHum,foundTorso,foundHead
  753. end
  754.  
  755. function Knockback(fTor,face,str,dur)
  756. local bodyVelo = iNew{"BodyVelocity",fTor,P=1250,maxForce=v3(1,1,1)/0,velocity=cn(face,fTor.Position).lookVector*str}
  757. deb:AddItem(bodyVelo,dur)
  758. end
  759.  
  760. HitData = {}
  761. function Touched(hit)
  762. if not Dmg then return end
  763. if hit.Parent:IsDescendantOf(Char) then return end
  764. local fHum,fTorso,fHead = GetHuman(hit.Parent)
  765. if fHum and fTorso and fHead then
  766. Damage(fHum,mran(Dmgv[1],Dmgv[2]))
  767. end
  768.  
  769. if ArmAnim == "Lightning Fist" then
  770. local BlastPos = (Hole.CFrame).p
  771. local at = BlastPos+v3(0,-5,0)
  772. ArmAnim = "Lightning Blast"
  773. local Prev = Knockback
  774. MeshEffect(workspace,cn(at),14,14,14,0.05,"New Yeller","Sphere",cn())
  775. MeshEffect(workspace,cn(at),9,14,9,0.05,"New Yeller",as.Blast,ca(0,mran(-5,5),0))
  776. for i=360/8,360,360/8 do
  777. MeshEffect(workspace,cn(at)*ca(0,i,0)*cn(0,2,3)*ca(-90,0,0),1.5,8,1.5,0.05,"New Yeller",as.Diamond,cn(0,1.5,0)*ca(1,0,0))
  778. if i==360/8 then
  779. local fHumans = AoEFind(BlastPos,10)
  780. AoEBreak(BlastPos,10,50,mran(35,50))
  781. if #fHumans > 0 then
  782. for i,v in pairs(fHumans) do
  783. local fHum,fTorso,fHead = v.Humanoid,v.Torso,v.Head
  784. Damage(fHum,mran(Dmgv[1],Dmgv[2])*2.5)
  785. Knockback(fTorso,BlastPos,35,0.25)
  786. end
  787. end
  788. end
  789. end
  790. end
  791. end
  792.  
  793. for i,v in pairs(Suit:GetChildren()) do
  794. if v:IsA("BasePart") and (v.Name=="Saw" or v.Name=="Chakram") then
  795. v.Touched:connect(Touched)
  796. end
  797. end
  798.  
  799. for i,v in pairs(Torso:children()) do
  800. if v:IsA("Sound") then
  801. v:Destroy()
  802. end
  803. end
  804. for i,v in pairs(Head:children()) do
  805. if v:IsA("Sound") then
  806. v:Destroy()
  807. end
  808. end
  809.  
  810.  
  811. function ReturnPose(AnimationSpeed)
  812. RePose()
  813. for i=1,AnimationSpeed do
  814. if not Walking then
  815. SetWeld(LAW,0,i,AnimationSpeed,wLA,wLA2,PoseLA,PoseLA2,1)
  816. SetWeld(RAW,0,i,AnimationSpeed,wRA,wRA2,PoseRA,PoseRA2,1)
  817. for lever = 1,2 do
  818. local x = lever == 1 and -1 or lever == 2 and 1
  819. SetWeld(Levers[lever][1],0,i,AnimationSpeed,Levers[lever][2],Levers[lever][3],v3(x,0.6,-1.5),v3(0,0,0),1)
  820. end
  821. end
  822. SetWeld(Root,0,i,AnimationSpeed,wRT,wRT2,PoseRT,PoseRT2,1)
  823. SetWeld(wStand,0,i,AnimationSpeed,wST,wST2,PoseST,PoseST2,1)
  824. SetWeld(wBall,0,i,AnimationSpeed,wBA,wBA2,PoseBA,PoseBA2,1)
  825. SetWeld(wLArm,0,i,AnimationSpeed,wLAR,wLAR2,PoseLAR,PoseLAR2,1)
  826. SetWeld(wLArm2,0,i,AnimationSpeed,wLARM,wLARM2,PoseLARM,PoseLARM2,1)
  827. SetWeld(wRArm,0,i,AnimationSpeed,wRAR,wRAR2,PoseRAR,PoseRAR2,1)
  828. SetWeld(wRArm2,0,i,AnimationSpeed,wRARM,wRARM2,PoseRARM,PoseRARM2,1)
  829. SetWeld(wLLeg,0,i,AnimationSpeed,wLLE,wLLE2,PoseLLE,PoseLLE2,1)
  830. SetWeld(wLLeg2,0,i,AnimationSpeed,wLLEG,wLLEG2,PoseLLEG,PoseLLEG2,1)
  831. SetWeld(wLLeg3,0,i,AnimationSpeed,wLLL,wLLL2,PoseLLL,PoseLLL2,1)
  832. SetWeld(wRLeg,0,i,AnimationSpeed,wRLE,wRLE2,PoseRLE,PoseRLE2,1)
  833. SetWeld(wRLeg2,0,i,AnimationSpeed,wRLEG,wRLEG2,PoseRLEG,PoseRLEG2,1)
  834. SetWeld(wRLeg3,0,i,AnimationSpeed,wRLL,wRLL2,PoseRLL,PoseRLL2,1)
  835. wait(0)
  836. end
  837. end
  838.  
  839. function RePose()
  840. local a,b=GetWeld(LAW)
  841. local c,d=GetWeld(RAW)
  842. local ee,ff=GetWeld(Root)
  843. wLA=a wLA2=b
  844. wRA=c wRA2=d
  845. wRT=ee wRT2=ff
  846. local e,f=GetWeld(wStand)
  847. local g,h=GetWeld(wBall)
  848. local i,j=GetWeld(wLArm)
  849. local k,l=GetWeld(wLArm2)
  850. local m,n=GetWeld(wRArm)
  851. local o,p=GetWeld(wRArm2)
  852. local q,r=GetWeld(wLLeg)
  853. local s,t=GetWeld(wLLeg2)
  854. local y,z=GetWeld(wLLeg3)
  855. local u,v=GetWeld(wRLeg)
  856. local w,x=GetWeld(wRLeg2)
  857. local aa,bb=GetWeld(wRLeg3)
  858. for lever = 1,2 do Levers[lever][2],Levers[lever][3]=GetWeld(Levers[lever][1]) end
  859. wST=e wST2=f
  860. wBA=g wBA2=h
  861. wLAR=i wLAR2=j
  862. wLARM=k wLARM2=l
  863. wRAR=m wRAR2=n
  864. wRARM=o wRARM2=p
  865. wLLE=q wLLE2=r
  866. wLLEG=s wLLEG2=t
  867. wLLL=y wLLL2=z
  868. wRLE=u wRLE2=v
  869. wRLEG=w wRLEG2=x
  870. wRLL=aa wRLL2=bb
  871. end
  872.  
  873.  
  874. Attacks = {}
  875. Attacks[1] = function()
  876. ArmAnim = "Slash"
  877. if TorsoAnim == "" then TorsoAnim = ArmAnim end
  878. RePose()
  879. for i=1,ASpeed do
  880. SetWeld(wLArm,0,i,ASpeed,wLAR,wLAR2,PoseLAR,v3(-35,0,-45),1)
  881. SetWeld(wLArm2,0,i,ASpeed,wLARM,wLARM2,PoseLARM,v3(0,-65,-65),1)
  882. wait(0)
  883. end
  884. Mult = 2
  885. Trail = true
  886. RePose()
  887. for i=1,ASpeed/1.6 do
  888. if TorsoAnim == ArmAnim then
  889. SetWeld(Root,0,i,ASpeed/1.6,wRT,wRT2,PoseRT,v3(0,-70,0),1)
  890. SetWeld(wStand,0,i,ASpeed/1.6,wST,wST2,PoseST,v3(0,-70,0),1)
  891. SetWeld(wBall,0,i,ASpeed/1.6,wBA,wBA2,PoseBA,v3(0,70,0),1)
  892. end
  893. SetWeld(wLArm,0,i,ASpeed/1.6,wLAR,wLAR2,PoseLAR,v3(-140,0,60),1)
  894. SetWeld(wLArm2,0,i,ASpeed/1.6,wLARM,wLARM2,PoseLARM,v3(0,-45,-25),1)
  895. wait(0)
  896. end
  897. Mult = 1
  898. Trail = false
  899. ReturnPose(ASpeed)
  900. ArmAnim = ""
  901. TorsoAnim = TorsoAnim~="" and "" or TorsoAnim
  902. end
  903. Attacks[2] = function()
  904. ArmAnim = "AoE Slash"
  905. if TorsoAnim == "" then TorsoAnim = ArmAnim end
  906. local Ang = MouseAngleY>25 and 25 or MouseAngleY<-35 and -35 or MouseAngleY
  907. RePose()
  908. for i=1,ASpeed do
  909. if TorsoAnim == ArmAnim then
  910. SetWeld(Root,0,i,ASpeed,wRT,wRT2,PoseRT,v3(0,-70,0),1)
  911. SetWeld(wStand,0,i,ASpeed,wST,wST2,PoseST,v3(0,-70,0),1)
  912. SetWeld(wBall,0,i,ASpeed,wBA,wBA2,PoseBA,v3(0,70,0),1)
  913. end
  914. SetWeld(wLArm,0,i,ASpeed,wLAR,wLAR2,PoseLAR,v3(-90,0,-Ang),1)
  915. SetWeld(wLArm2,0,i,ASpeed,wLARM,wLARM2,PoseLARM,v3(-70,90,0),1)
  916. wait(0)
  917. end
  918. Mult = 2
  919. Trail = true
  920. RePose()
  921. for i=1,ASpeed/1.6 do
  922. if TorsoAnim == ArmAnim then
  923. SetWeld(Root,0,i,ASpeed/1.6,wRT,wRT2,PoseRT,v3(0,100,0),1)
  924. SetWeld(wStand,0,i,ASpeed/1.6,wST,wST2,PoseST,v3(0,100,0),1)
  925. SetWeld(wBall,0,i,ASpeed/1.6,wBA,wBA2,PoseBA,v3(0,-100,0),1)
  926. end
  927. SetWeld(wLArm,0,i,ASpeed/1.6,wLAR,wLAR2,PoseLAR,v3(70,0,-Ang),1)
  928. SetWeld(wLArm2,0,i,ASpeed/1.6,wLARM,wLARM2,PoseLARM,v3(20,90,0),1)
  929. wait(0)
  930. end
  931. Mult = 1
  932. Trail = false
  933. ReturnPose(ASpeed)
  934. ArmAnim = ""
  935. TorsoAnim = TorsoAnim~="" and "" or TorsoAnim
  936. end
  937. Attacks[3] = function()
  938. ArmAnim = "Lightning Fist Start"
  939. TorsoAnim = ArmAnim
  940. RePose()
  941. for i=1,ASpeed*1.5 do
  942. if TorsoAnim == ArmAnim then
  943. SetWeld(Root,0,i,ASpeed*1.5,wRT,wRT2,PoseRT,v3(0,-70,0),1)
  944. SetWeld(wStand,0,i,ASpeed*1.5,wST,wST2,PoseST,v3(0,-70,0),1)
  945. SetWeld(wBall,0,i,ASpeed*1.5,wBA,wBA2,PoseBA,v3(0,70,0),1)
  946. end
  947. SetWeld(wRArm,0,i,ASpeed*1.5,wRAR,wRAR2,PoseRAR,v3(0,50,70),1)
  948. SetWeld(wRArm2,0,i,ASpeed*1.5,wRARM,wRARM2,PoseRARM,v3(0,0,-140),1)
  949. wait(0)
  950. end
  951. Trail2 = true
  952.  
  953. PlaySound(as.ElectricShock,0.85,1,Torso)
  954. RePose()
  955. for i=1,ASpeed do
  956. if TorsoAnim == ArmAnim then
  957. SetWeld(Root,0,i,ASpeed,wRT,wRT2,PoseRT,v3(0,80,0),1)
  958. SetWeld(wStand,0,i,ASpeed,wST,wST2,PoseST,v3(0,80,0),1)
  959. SetWeld(wBall,0,i,ASpeed,wBA,wBA2,PoseBA,v3(0,-80,0),1)
  960. end
  961. SetWeld(wRArm,0,i,ASpeed,wRAR,wRAR2,PoseRAR,v3(0,35,-70),1)
  962. SetWeld(wRArm2,0,i,ASpeed,wRARM,wRARM2,PoseRARM,v3(0,0,0),1)
  963. wait(0)
  964. if i==ASpeed-1 then ArmAnim = "Lightning Fist" end
  965. end
  966. Trail2 = false
  967. wait(0.5)
  968. ReturnPose(ASpeed)
  969. ArmAnim = ""
  970. TorsoAnim = TorsoAnim~="" and "" or TorsoAnim
  971. end
  972. Attacks[4] = function()
  973. ArmAnim = "Shoot"
  974. TorsoAnim = ArmAnim
  975. RePose()
  976. for i=1,ASpeed*1.5 do
  977. if TorsoAnim == ArmAnim then
  978. SetWeld(Root,0,i,ASpeed*1.5,wRT,wRT2,PoseRT,v3(0,90,0),1)
  979. SetWeld(wStand,0,i,ASpeed*1.5,wST,wST2,PoseST,v3(0,90,0),1)
  980. SetWeld(wBall,0,i,ASpeed*1.5,wBA,wBA2,PoseBA,v3(0,-90,0),1)
  981. end
  982. SetWeld(wRArm,0,i,ASpeed*1.5,wRAR,wRAR2,PoseRAR,v3(0,0,MouseAngleY),1)
  983. SetWeld(wRArm2,0,i,ASpeed*1.5,wRARM,wRARM2,PoseRARM,v3(0,0,0),1)
  984. wait(0)
  985. end
  986. Trail2 = true
  987.  
  988. PlaySound(as.ElectricShock,0.85,1,Torso)
  989. RePose()
  990. for i=1,ASpeed do
  991. if TorsoAnim == ArmAnim then
  992. SetWeld(Root,0,i,ASpeed,wRT,wRT2,PoseRT,v3(0,80,0),1)
  993. SetWeld(wStand,0,i,ASpeed,wST,wST2,PoseST,v3(0,80,0),1)
  994. SetWeld(wBall,0,i,ASpeed,wBA,wBA2,PoseBA,v3(0,-80,0),1)
  995. end
  996. SetWeld(wRArm,0,i,ASpeed,wRAR,wRAR2,PoseRAR,v3(0,35,-70),1)
  997. SetWeld(wRArm2,0,i,ASpeed,wRARM,wRARM2,PoseRARM,v3(0,0,0),1)
  998. wait(0)
  999. if i==ASpeed-1 then ArmAnim = "Lightning Fist" end
  1000. end
  1001. Trail2 = false
  1002. wait(0.5)
  1003. ReturnPose(ASpeed)
  1004. Gyro = false
  1005. ArmAnim = ""
  1006. TorsoAnim = TorsoAnim~="" and "" or TorsoAnim
  1007. end
  1008.  
  1009. BP = iNew{"BodyPosition",Stand,maxForce=v3(0,0,0)}
  1010.  
  1011. ArmAnim = ""
  1012. LegAnim = ""
  1013. TorsoAnim = ""
  1014. ASpeed = 12
  1015. SawSpeed = 5
  1016. Trail = false
  1017. Trail2 = false
  1018. State = "Idling"
  1019. GroundOffset = v3(0,6.75,0)
  1020. PoseLA=v3(-1.5,0.5,-0.5) PoseLA2=v3(110,0,14)
  1021. PoseRA=v3(1.5,0.5,-0.5) PoseRA2=v3(110,0,-14)
  1022. PoseRT=v3(0,0,0) PoseRT2=v3(0,0,0)
  1023. PoseST=v3(0,0,0) PoseST2=v3(0,0,0)
  1024. PoseBA=v3(0,-1.5,0) PoseBA2=v3(0,0,0)
  1025. PoseLAR=v3(0,0,0) PoseLAR2=v3(-35,0,45)
  1026. PoseLARM=v3(0,0.75,0) PoseLARM2=v3(-80,100,0)
  1027. PoseRAR=v3(0,0,0) PoseRAR2=v3(0,-35,-50)
  1028. PoseRARM=v3(0,0.75,0) PoseRARM2=v3(0,90,-65)
  1029. PoseLLE=v3(-1.5,-1.25,-0.25) PoseLLE2=v3(20,0,-15)
  1030. PoseLLEG=v3(0,-0.75,0) PoseLLEG2=v3(-40,0,15)
  1031. PoseLLL=v3(0,-0.5,0) PoseLLL2=v3(20,0,0)
  1032. PoseRLE=v3(1.5,-1.25,-0.25) PoseRLE2=v3(20,0,15)
  1033. PoseRLEG=v3(0,-0.75,0) PoseRLEG2=v3(-40,0,-15)
  1034. PoseRLL=v3(0,-0.5,0) PoseRLL2=v3(20,0,0)
  1035.  
  1036. Arms() Legs()
  1037. ReturnPose(ASpeed)
  1038. Arms(0) Legs(0)
  1039.  
  1040.  
  1041. button1 = false
  1042. keys = {}
  1043. Mouse.Button1Down:connect(function()
  1044. button1 = true
  1045. if ArmAnim == "" then
  1046. Attacks[1]()
  1047. end
  1048. end)
  1049.  
  1050. Mouse.Button1Up:connect(function()
  1051. button1 = false
  1052. end)
  1053.  
  1054. Mouse.KeyDown:connect(function(key)
  1055. keys[key]=true
  1056. if key == "q" then
  1057. if ArmAnim == "" then
  1058. Attacks[2]()
  1059. end
  1060. end
  1061. if key == "e" then
  1062. if ArmAnim == "" then
  1063. Attacks[3]()
  1064. end
  1065. end
  1066. if key == "r" then
  1067. if ArmAnim == "" then
  1068. Attacks[4]()
  1069. end
  1070. end
  1071. if key == " " then
  1072. local hit,at = Raycast(Torso.Position,Torso.Position - (Torso.CFrame*cn(0,3,0)).p,10,Char)
  1073. if not hit or not at then return end
  1074. if ArmAnim == "" and TorsoAnim == "" and LegAnim == "" then
  1075. ArmAnim = "Jump"
  1076. LegAnim = "JumpS"
  1077. local PrevOff = GroundOffset
  1078. GroundOffset = v3(0,6,0)
  1079. ReturnPose(1)
  1080. RePose()
  1081. for i=1,ASpeed do
  1082. SetWeld(wLLeg,0,i,ASpeed,wLLE,wLLE2,PoseLLE,v3(15,0,-20),1)
  1083. SetWeld(wLLeg2,0,i,ASpeed,wLLEG,wLLEG2,PoseLLEG,v3(-45,-35,20),1)
  1084. SetWeld(wLLeg3,0,i,ASpeed,wLLL,wLLL2,PoseLLL,v3(30,35,0),0)
  1085. SetWeld(wRLeg,0,i,ASpeed,wRLE,wRLE2,PoseRLE,v3(15,0,20),1)
  1086. SetWeld(wRLeg2,0,i,ASpeed,wRLEG,wRLEG2,PoseRLEG,v3(-45,35,-20),1)
  1087. SetWeld(wRLeg3,0,i,ASpeed,wRLL,wRLL2,PoseRLL,v3(30,-35,0),0)
  1088. wait(0)
  1089. end
  1090. LegAnim = "Jump"
  1091. GroundOffset = v3(0,18,0)
  1092. RePose()
  1093. for i=1,ASpeed/1.5 do
  1094. SetWeld(wLLeg,0,i,ASpeed/1.5,wLLE,wLLE2,PoseLLE,v3(25,0,-20),1)
  1095. SetWeld(wLLeg2,0,i,ASpeed/1.5,wLLEG,wLLEG2,PoseLLEG,v3(-10,-35,20),1)
  1096. SetWeld(wLLeg3,0,i,ASpeed,wLLL,wLLL2,PoseLLL,v3(15,35,0),0)
  1097. SetWeld(wRLeg,0,i,ASpeed/1.5,wRLE,wRLE2,PoseRLE,v3(25,0,20),1)
  1098. SetWeld(wRLeg2,0,i,ASpeed/1.5,wRLEG,wRLEG2,PoseRLEG,v3(-10,35,-20),1)
  1099. SetWeld(wRLeg3,0,i,ASpeed,wRLL,wRLL2,PoseRLL,v3(15,-35,0),0)
  1100. wait(0)
  1101. end
  1102. GroundOffset = PrevOff
  1103. ReturnPose(ASpeed)
  1104. ArmAnim = ArmAnim~="" and "" or ArmAnim
  1105. LegAnim = LegAnim~="" and "" or LegAnim
  1106. end
  1107. end
  1108. end)
  1109.  
  1110. Mouse.KeyUp:connect(function(key)
  1111. keys[key]=false
  1112. end)
  1113.  
  1114. Humanoid.Changed:connect(function(prop)
  1115. if prop == "Health" then
  1116. if PrevHealth-Humanoid.Health>0 then
  1117. for i,v in pairs(game:GetService("Players"):GetChildren()) do
  1118. if not v:IsA("Player") or not v.Character.Parent then return end
  1119. local fHum,fTorso,fHead = GetHuman(v.Character)
  1120. if not fHum or not fTorso then return end
  1121. if v.Name~=Player.Name then
  1122. local Dist = (v.Character.Torso.Position-Torso.Position).magnitude
  1123. if Dist<25 then
  1124. Damage(v.Character.Humanoid,math.ceil((PrevHealth-Humanoid.Health)*0.75))
  1125. Lightning(Hole.Position,fTorso.Position,mran(3,6),5,"New Yeller",0.3,mran2(0.5,0.9))
  1126. PlaySound(as.ElectricShock,1,1,Torso)
  1127. end
  1128. end
  1129. end
  1130. end
  1131. end
  1132. end)
  1133.  
  1134. Spawn(function()
  1135. while Suit.Parent do
  1136. for ii,vv in pairs(Saws) do
  1137. Spawn(function()
  1138. for i=0,180,360/(200/SawSpeed) do
  1139. vv[2].C0=cn(-1.25/2-0.5,0,0)*ca(0,i,0)*cn(0,0,-1.25/2)
  1140. wait(0)
  1141. end
  1142. for i=-1.25/2,1.25+0.3,(1.25/40)*SawSpeed do
  1143. vv[2].C0=cn(-0.5+i,0,1.25/2)
  1144. wait(0)
  1145. end
  1146. for i=180,360,360/(200/SawSpeed) do
  1147. vv[2].C0=cn(1.25/2+0.4,0,0)*ca(0,i,0)*cn(0,0,-1.25/2)
  1148. wait(0)
  1149. end
  1150. for i=1.25/2,-1.25-0.3,-(1.25/40)*SawSpeed do
  1151. vv[2].C0=cn(0.4+i,0,-1.25/2)
  1152. wait(0)
  1153. end
  1154. end)
  1155. wait(0.08)
  1156. end
  1157. wait(0)
  1158. end
  1159. end)
  1160.  
  1161. Count = 0
  1162. game:GetService("RunService").RenderStepped:connect(function()
  1163. if Suit.Parent then
  1164. Count = Count+1
  1165. local hit,at = Raycast(Stand.Position,Stand.Position - (Stand.CFrame*cn(0,3,0)).p,10,Char)
  1166. if hit and at then
  1167. BP.position = at+GroundOffset
  1168. BP.maxForce = v3(0,1/0,0)
  1169. else
  1170. BP.maxForce = v3()
  1171. end
  1172. local CurrentPos = ArmSawP.CFrame*cn(0,0,-0.5)
  1173. if Trail then
  1174. if LastPos and (ArmSawP.Position-LastPos.p).magnitude > 0.1 then
  1175. local h = 4.5
  1176. local ft = 0.15
  1177. local a,b = Triangle{(LastPos*cn(0,h/2,0)).p,(LastPos*cn(0,-h/2,0)).p,(CurrentPos*cn(0,h/2,0)).p}
  1178. if a then deb:AddItem(a,ft) end
  1179. if b then deb:AddItem(b,ft) end
  1180. local a,b = Triangle{(CurrentPos*cn(0,h/2,0)).p,(CurrentPos*cn(0,-h/2,0)).p,(LastPos*cn(0,-h/2,0)).p}
  1181. if a then deb:AddItem(a,ft) end
  1182. if b then deb:AddItem(b,ft) end
  1183. LastPos = CurrentPos
  1184. elseif not LastPos then
  1185. LastPos = CurrentPos
  1186. end
  1187. elseif not Trail then
  1188. LastPos = nil
  1189. end
  1190. if Trail2 then
  1191. if Count%1==0 then
  1192. local sc = 5
  1193. local To = Hole.Position+v3(mran(-sc,sc),mran(-sc,sc),mran(-sc,sc))
  1194. Lightning(Hole.Position,To,mran(3,6),mran(1,4),"New Yeller",0.2,mran2(0.5,0.9))
  1195. end
  1196. end
  1197. wChakram.C0=cn(0,-1.4,0)*ca(90,0,Count*SawSpeed)
  1198. MouseAngleX = math.floor(cn(Head.Position,Mouse.Hit.p).lookVector.x*90)
  1199. MouseAngleY = math.floor(cn(Head.Position,Mouse.Hit.p).lookVector.y*90)
  1200. SetWeld(Neck,0,1,1,v3(),v3(),v3(0,1.5,-0.1),v3(MouseAngleY<-20 and -20 or MouseAngleY>45 and 45 or MouseAngleY,0,0),1)
  1201. PrevHealth = Humanoid.Health
  1202. Walking = v3(Torso.Velocity.x,0,Torso.Velocity.z).magnitude>1 and true or false
  1203. end
  1204. end)
  1205. while wait(0) do
  1206. if not Humanoid.PlatformStand and not Humanoid.Sit then
  1207. local AnimSpeed = ASpeed/1.5
  1208. if Walking then
  1209. State = "Walking"
  1210. RePose()
  1211. Humanoid.WalkSpeed = 12
  1212. for i=1,AnimSpeed do
  1213. if TorsoAnim == "" then
  1214. SetWeld(Root,0,i,AnimSpeed,wRT,wRT2,PoseRT,v3(0,-15,0),0)
  1215. SetWeld(wStand,0,i,AnimSpeed,wST,wST2,PoseST,v3(0,-15,0),0)
  1216. SetWeld(wBall,0,i,AnimSpeed,wBA,wBA2,PoseBA,v3(0,15,0),0)
  1217. end
  1218. if ArmAnim == "" then
  1219. SetWeld(wLArm,0,i,AnimSpeed,wLAR,wLAR2,PoseLAR,v3(-90,0,20),1)
  1220. SetWeld(wLArm2,0,i,AnimSpeed,wLARM,wLARM2,PoseLARM,v3(-45,90,0),1)
  1221. end
  1222. if LegAnim == "" then
  1223. SetWeld(wLLeg,0,i,AnimSpeed,wLLE,wLLE2,PoseLLE,v3(80,0,-20),0)
  1224. SetWeld(wLLeg2,0,i,AnimSpeed,wLLEG,wLLEG2,PoseLLEG,v3(-80,0,20),0)
  1225. SetWeld(wLLeg3,0,i,AnimSpeed,wLLL,wLLL2,PoseLLL,v3(0,-15,0),0)
  1226. SetWeld(wRLeg,0,i,AnimSpeed,wRLE,wRLE2,PoseRLE,v3(-35,0,20),0)
  1227. SetWeld(wRLeg2,0,i,AnimSpeed,wRLEG,wRLEG2,PoseRLEG,v3(-0,0,-20),0)
  1228. SetWeld(wRLeg3,0,i,AnimSpeed,wRLL,wRLL2,PoseRLL,v3(35,0,0),0)
  1229. end
  1230. SetWeld(RAW,0,i,AnimSpeed,wRA,wRA2,v3(1.5,0.5,0),PoseRA2,0)
  1231. SetWeld(LAW,0,i,AnimSpeed,wLA,wLA2,v3(-1.5,0.5,-1),PoseLA2,0)
  1232. for lever = 1,2 do
  1233. local x = lever == 1 and -1 or lever == 2 and 1
  1234. SetWeld(Levers[lever][1],0,i,AnimSpeed,Levers[lever][2],Levers[lever][3],v3(x,0.6,-1.5),v3(25*x,0,0),0)
  1235. end
  1236. wait(0)
  1237.  
  1238. if not Walking then
  1239. break
  1240. end
  1241. end
  1242. RePose()
  1243. Humanoid.WalkSpeed = 22
  1244. for i=1,AnimSpeed/2.5 do
  1245. if LegAnim == "" then
  1246. SetWeld(wLLeg,0,i,AnimSpeed/2.5,wLLE,wLLE2,PoseLLE,v3(35,0,-20),0)
  1247. SetWeld(wLLeg2,0,i,AnimSpeed/2.5,wLLEG,wLLEG2,PoseLLEG,v3(-35,0,20),0)
  1248. SetWeld(wLLeg3,0,i,AnimSpeed/2.5,wLLL,wLLL2,PoseLLL,v3(0,-15,0),0)
  1249. SetWeld(wRLeg,0,i,AnimSpeed/2.5,wRLE,wRLE2,PoseRLE,v3(-65,0,20),0)
  1250. SetWeld(wRLeg2,0,i,AnimSpeed/2.5,wRLEG,wRLEG2,PoseRLEG,v3(-45,0,-20),0)
  1251. SetWeld(wRLeg3,0,i,AnimSpeed/2.5,wRLL,wRLL2,PoseRLL,v3(0,15,0),0)
  1252. end
  1253. SetWeld(RAW,0,i,AnimSpeed/2.5,wRA,wRA2,v3(1.5,0.5,0),PoseRA2,0)
  1254. SetWeld(LAW,0,i,AnimSpeed/2.5,wLA,wLA2,v3(-1.5,0.5,-1),PoseLA2,0)
  1255. for lever = 1,2 do
  1256. local x = lever == 1 and -1 or lever == 2 and 1
  1257. SetWeld(Levers[lever][1],0,i,AnimSpeed/2.5,Levers[lever][2],Levers[lever][3],v3(x,0.6,-1.5),v3(25*x,0,0),0)
  1258. end
  1259. wait(0)
  1260.  
  1261. if not Walking then
  1262. break
  1263. end
  1264. end
  1265. RePose()
  1266. Humanoid.WalkSpeed = 12
  1267. for i=1,AnimSpeed do
  1268. if TorsoAnim == "" then
  1269. SetWeld(Root,0,i,AnimSpeed,wRT,wRT2,PoseRT,v3(0,15,0),0)
  1270. SetWeld(wStand,0,i,AnimSpeed,wST,wST2,PoseST,v3(0,15,0),0)
  1271. SetWeld(wBall,0,i,AnimSpeed,wBA,wBA2,PoseBA,v3(0,-15,0),0)
  1272. end
  1273. if LegAnim == "" then
  1274. SetWeld(wRLeg,0,i,AnimSpeed,wRLE,wRLE2,PoseRLE,v3(80,0,20),0)
  1275. SetWeld(wRLeg2,0,i,AnimSpeed,wRLEG,wRLEG2,PoseRLEG,v3(-80,0,-20),0)
  1276. SetWeld(wRLeg3,0,i,AnimSpeed,wRLL,wRLL2,PoseRLL,v3(0,15,0),0)
  1277. SetWeld(wLLeg,0,i,AnimSpeed,wLLE,wLLE2,PoseLLE,v3(-35,0,-20),0)
  1278. SetWeld(wLLeg2,0,i,AnimSpeed,wLLEG,wLLEG2,PoseLLEG,v3(-0,0,20),0)
  1279. SetWeld(wLLeg3,0,i,AnimSpeed,wLLL,wLLL2,PoseLLL,v3(35,-0,0),0)
  1280.  
  1281. SetWeld(RAW,0,i,AnimSpeed,wRA,wRA2,v3(1.5,0.5,-1),PoseRA2,0)
  1282. SetWeld(LAW,0,i,AnimSpeed,wLA,wLA2,v3(-1.5,0.5,0),PoseLA2,0)
  1283. for lever = 1,2 do
  1284. local x = lever == 1 and -1 or lever == 2 and 1
  1285. SetWeld(Levers[lever][1],0,i,AnimSpeed,Levers[lever][2],Levers[lever][3],v3(x,0.6,-1.5),v3(-25*x,0,0),0)
  1286. end
  1287. end
  1288. wait(0)
  1289.  
  1290. if not Walking then
  1291. break
  1292. end
  1293. end
  1294. RePose()
  1295. Humanoid.WalkSpeed = 22
  1296. for i=1,AnimSpeed/2.5 do
  1297. if LegAnim == "" then
  1298. SetWeld(wRLeg,0,i,AnimSpeed/2.5,wRLE,wRLE2,PoseRLE,v3(35,0,20),0)
  1299. SetWeld(wRLeg2,0,i,AnimSpeed/2.5,wRLEG,wRLEG2,PoseRLEG,v3(-35,0,-20),0)
  1300. SetWeld(wRLeg3,0,i,AnimSpeed/2.5,wRLL,wRLL2,PoseRLL,v3(0,15,0),0)
  1301. SetWeld(wLLeg,0,i,AnimSpeed/2.5,wLLE,wLLE2,PoseLLE,v3(-65,0,-20),0)
  1302. SetWeld(wLLeg2,0,i,AnimSpeed/2.5,wLLEG,wLLEG2,PoseLLEG,v3(-45,0,20),0)
  1303. SetWeld(wLLeg3,0,i,AnimSpeed/2.5,wLLL,wLLL2,PoseLLL,v3(0,-15,0),0)
  1304.  
  1305. SetWeld(RAW,0,i,AnimSpeed/2.5,wRA,wRA2,v3(1.5,0.5,-1),PoseRA2,0)
  1306. SetWeld(LAW,0,i,AnimSpeed/2.5,wLA,wLA2,v3(-1.5,0.5,0),PoseLA2,0)
  1307. for lever = 1,2 do
  1308. local x = lever == 1 and -1 or lever == 2 and 1
  1309. SetWeld(Levers[lever][1],0,i,AnimSpeed/2.5,Levers[lever][2],Levers[lever][3],v3(x,0.6,-1.5),v3(-25*x,0,0),0)
  1310. end
  1311. end
  1312. wait(0)
  1313.  
  1314. if not Walking then
  1315. break
  1316. end
  1317. end
  1318. elseif Torso.Velocity.magnitude < 1 then
  1319. if State == "Walking" then
  1320. State = "Idling"
  1321. RePose()
  1322. for i=1,AnimSpeed do
  1323. if TorsoAnim == "" then
  1324. SetWeld(Root,0,i,ASpeed,wRT,wRT2,PoseRT,PoseRT2,0)
  1325. SetWeld(wStand,0,i,ASpeed,wST,wST2,PoseST,PoseST2,0)
  1326. SetWeld(wBall,0,i,AnimSpeed,wBA,wBA2,PoseBA,PoseBA2,0)
  1327. end
  1328. if LegAnim == "" then
  1329. SetWeld(wLLeg,0,i,AnimSpeed,wLLE,wLLE2,PoseLLE,PoseLLE2,0)
  1330. SetWeld(wLLeg2,0,i,AnimSpeed,wLLEG,wLLEG2,PoseLLEG,PoseLLEG2,0)
  1331. SetWeld(wLLeg3,0,i,AnimSpeed,wLLL,wLLL2,PoseLLL,PoseLLL2,0)
  1332. SetWeld(wRLeg,0,i,AnimSpeed,wRLE,wRLE2,PoseRLE,PoseRLE2,0)
  1333. SetWeld(wRLeg2,0,i,AnimSpeed,wRLEG,wRLEG2,PoseRLEG,PoseRLEG2,0)
  1334. SetWeld(wRLeg3,0,i,AnimSpeed,wRLL,wRLL2,PoseRLL,PoseRLL2,0)
  1335. end
  1336. wait(0)
  1337.  
  1338. if Walking then
  1339. break
  1340. end
  1341. end
  1342. end
  1343. end
  1344. end
  1345. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement