Advertisement
Nico1702

Sonic Script

Jul 4th, 2018
3,809
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 61.66 KB | None | 0 0
  1. --[[KillerDarkness0105's/Codex's Sonic script]]--
  2.  
  3.  
  4.  
  5. wait(0.07)
  6. Player=game:GetService("Players").LocalPlayer
  7. Character=Player.Character
  8. PlayerGui=Player.PlayerGui
  9. Backpack=Player.Backpack
  10. Torso=Character.Torso
  11. Head=Character.Head
  12. Humanoid=Character.Humanoid
  13. LeftArm=Character["Left Arm"]
  14. LeftLeg=Character["Left Leg"]
  15. RightArm=Character["Right Arm"]
  16. RightLeg=Character["Right Leg"]
  17. LS=Torso["Left Shoulder"]
  18. LH=Torso["Left Hip"]
  19. RS=Torso["Right Shoulder"]
  20. RH=Torso["Right Hip"]
  21. Face = Head.face
  22. Neck=Torso.Neck
  23. it=Instance.new
  24. attacktype=1
  25. attacktype2=1
  26. vt=Vector3.new
  27. cf=CFrame.new
  28. cn=CFrame.new
  29. euler=CFrame.fromEulerAnglesXYZ
  30. angles=CFrame.Angles
  31. combo = 0
  32. necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  33. necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  34. LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
  35. LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
  36. RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
  37. RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
  38. RootPart=Character.HumanoidRootPart
  39. RootJoint=RootPart.RootJoint
  40. RootCF=euler(-1.57,0,3.14)
  41. attack = false
  42. attackdebounce = false
  43. trispeed=.2
  44. attackmode='none'
  45. local idle=0
  46. local Anim="Idle"
  47. stance = false
  48. local ff = 2
  49. noleg = false
  50. evadecooldown = false
  51. Humanoid.Animator.Parent = nil
  52. equip = false
  53. local Effects = {}
  54. attackspeed = 0.14
  55. df = false
  56. Swing = 1
  57. local sine = 0
  58. local change = 1
  59. local val = 0
  60. local speed = 0
  61. local rs = game:GetService("RunService").RenderStepped
  62. cam = workspace.CurrentCamera
  63. local RbxUtility = LoadLibrary("RbxUtility")
  64. local Create = RbxUtility.Create
  65. deb = game:GetService("Debris")
  66. Face.Transparency = 0
  67. --Face.Texture = "rbxassetid://176217905" --176217905
  68. Humanoid.WalkSpeed = 64
  69. local freefall = 0
  70. Head.Running.SoundId = "rbxassetid://"
  71. Head.Running.Volume = 2
  72. local boost = false
  73. Humanoid.JumpPower = 88
  74. local musicnum = 1
  75.  
  76. local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude + 10
  77. local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
  78. local GravPoint = RootPart.Velocity.y
  79. local NV = Vector3.new(0,0,0)
  80. print("Move list")
  81. print("---------")
  82. print("Shift = Boost")
  83. print("Ctrl = Mach Speed Boost")
  84. print("Q = Left QuickStep, E = Right QuickStep")
  85. print("C = Slide, in air to stomp")
  86. print("Jump Then Hold B near a wall to wallrun")
  87. print("M to change music, if you're standing still you'll do a special animation!")
  88. print("Space near a wall to walljump, away from a wall homing attack")
  89. music = Instance.new("Sound",PlayerGui)
  90. music.Volume = 1
  91. music.TimePosition = 0
  92. music.Pitch = 1
  93. music.SoundId = "rbxassetid://1192337951"
  94. music.Looped = true
  95. music:Play()
  96.  
  97.  
  98. boostsound = Instance.new("Sound",PlayerGui)
  99. boostsound.Volume = .6
  100. boostsound.TimePosition = 0
  101. boostsound.Pitch = 1
  102. boostsound.SoundId = "rbxassetid://924922553"
  103. boostsound.Looped = false
  104.  
  105.  
  106.  
  107. stompsound = Instance.new("Sound",PlayerGui)
  108. stompsound.Volume = 2
  109. stompsound.TimePosition = 0
  110. stompsound.Pitch = 1
  111. stompsound.SoundId = "rbxassetid://1295424184"
  112. stompsound.Looped = false
  113.  
  114.  
  115.  
  116. so = function(id,par,vol,pit)
  117. coroutine.resume(coroutine.create(function()
  118. local sou = Instance.new("Sound",par or workspace)
  119. sou.Volume=vol
  120. sou.Pitch=pit or 1
  121. sou.SoundId=id
  122. sou:play()
  123. game:GetService("Debris"):AddItem(sou,8)
  124. end))
  125. end
  126.  
  127. --save shoulders
  128. RSH, LSH=nil, nil
  129. --welds
  130. RW, LW=Instance.new("Weld"), Instance.new("Weld")
  131. RW.Name="Right Shoulder" LW.Name="Left Shoulder"
  132. LH=Torso["Left Hip"]
  133. RH=Torso["Right Hip"]
  134. TorsoColor=Torso.BrickColor
  135. function NoOutline(Part)
  136. Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
  137. end
  138. player=Player
  139. ch=Character
  140. RSH=ch.Torso["Right Shoulder"]
  141. LSH=ch.Torso["Left Shoulder"]
  142. --
  143. RSH.Parent=nil
  144. LSH.Parent=nil
  145. --
  146. RW.Name="Right Shoulder"
  147. RW.Part0=ch.Torso
  148. RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
  149. RW.C1=cf(0, 0.5, 0)
  150. RW.Part1=ch["Right Arm"]
  151. RW.Parent=ch.Torso
  152. --
  153. LW.Name="Left Shoulder"
  154. LW.Part0=ch.Torso
  155. LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
  156. LW.C1=cf(0, 0.5, 0)
  157. LW.Part1=ch["Left Arm"]
  158. LW.Parent=ch.Torso
  159.  
  160.  
  161. newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
  162. local wld = Instance.new("Weld", wp1)
  163. wld.Part0 = wp0
  164. wld.Part1 = wp1
  165. wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
  166. end
  167. local rs = game:GetService("RunService").RenderStepped
  168.  
  169. newWeld(RootPart, Torso, 0, -1, 0)
  170. Torso.Weld.C1 = CFrame.new(0, -1, 0)
  171. newWeld(Torso, LeftLeg, -0.5, -1, 0)
  172. LeftLeg.Weld.C1 = CFrame.new(0, 1, 0)
  173. newWeld(Torso, RightLeg, 0.5, -1, 0)
  174. RightLeg.Weld.C1 = CFrame.new(0, 1, 0)
  175.  
  176. Player=game:GetService('Players').LocalPlayer
  177. Character=Player.Character
  178. mouse=Player:GetMouse()
  179. m=Instance.new('Model',Character)
  180.  
  181.  
  182. local function weldBetween(a, b)
  183. local weldd = Instance.new("ManualWeld")
  184. weldd.Part0 = a
  185. weldd.Part1 = b
  186. weldd.C0 = CFrame.new()
  187. weldd.C1 = b.CFrame:inverse() * a.CFrame
  188. weldd.Parent = a
  189. return weldd
  190. end
  191.  
  192. ArtificialHB = Instance.new("BindableEvent", script)
  193. ArtificialHB.Name = "Heartbeat"
  194.  
  195. script:WaitForChild("Heartbeat")
  196.  
  197. frame = 1 / 80
  198. tf = 0
  199. allowframeloss = false
  200. tossremainder = false
  201. lastframe = tick()
  202. script.Heartbeat:Fire()
  203. game:GetService("RunService").Heartbeat:connect(function(s, p)
  204. tf = tf + s
  205. if tf >= frame then
  206. if allowframeloss then
  207. script.Heartbeat:Fire()
  208. lastframe = tick()
  209. else
  210. for i = 1, math.floor(tf / frame) do
  211. script.Heartbeat:Fire()
  212. end
  213. lastframe = tick()
  214. end
  215. if tossremainder then
  216. tf = 0
  217. else
  218. tf = tf - frame * math.floor(tf / frame)
  219. end
  220. end
  221. end)
  222.  
  223. --[[]
  224. function swait(num)
  225. if num == 0 or num == nil then
  226. ArtificialHB.Event:wait()
  227. else
  228. for i = 0, num do
  229. ArtificialHB.Event:wait()
  230. end
  231. end
  232. end
  233.  
  234. ]]
  235.  
  236.  
  237.  
  238.  
  239. function swait(num)
  240. if num == 0 or num == nil then
  241. game:service("RunService").Stepped:wait()
  242. else
  243. for i = 0, num do
  244. game:service("RunService").Stepped:wait()
  245. end
  246. end
  247. end
  248.  
  249. function RemoveOutlines(part)
  250. part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
  251. end
  252.  
  253.  
  254. part = function(formfactor, parent, reflectance, transparency, brickcolor, name, size)
  255. local fp = it("Part")
  256. fp.formFactor = formfactor
  257. fp.Parent = parent
  258. fp.Reflectance = reflectance
  259. fp.Transparency = transparency
  260. fp.CanCollide = false
  261. fp.Locked = true
  262. fp.BrickColor = brickcolor
  263. fp.Name = name
  264. fp.Size = size
  265. fp.Position = Torso.Position
  266. NoOutline(fp)
  267. if fp.BrickColor == BrickColor.new("Dark indigo") then
  268. fp.Material = "Neon"
  269. else
  270. if fp.BrickColor == BrickColor.new("Really black") then
  271. fp.BrickColor = BrickColor.new("Really black")
  272. fp.Material = "Metal"
  273. else
  274. fp.Material = "Neon"
  275. end
  276. end
  277. fp:BreakJoints()
  278. return fp
  279. end
  280.  
  281. mesh = function(Mesh, part, meshtype, meshid, offset, scale)
  282. local mesh = it(Mesh)
  283. mesh.Parent = part
  284. if Mesh == "SpecialMesh" then
  285. mesh.MeshType = meshtype
  286. mesh.MeshId = meshid
  287. end
  288. mesh.Offset = offset
  289. mesh.Scale = scale
  290. return mesh
  291. end
  292.  
  293. weld = function(parent, part0, part1, c0)
  294. local weld = it("Weld")
  295. weld.Parent = parent
  296. weld.Part0 = part0
  297. weld.Part1 = part1
  298. weld.C0 = c0
  299. return weld
  300. end
  301.  
  302. F1 = Instance.new("Folder", Character)
  303. F1.Name = "Effects Folder"
  304. F2 = Instance.new("Folder", F1)
  305. F2.Name = "Effects"
  306. Triangle = function(a, b, c)
  307. end
  308.  
  309. MagicBlock = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  310. local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
  311. prt.Anchored = true
  312. prt.CanCollide = false
  313. prt.CFrame = cframe
  314. prt.Name = "prt"
  315. msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  316. game:GetService("Debris"):AddItem(prt, 5)
  317. table.insert(Effects, {prt, "Block1", delay, x3, y3, z3})
  318. end
  319.  
  320.  
  321.  
  322. MagicCircle = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  323. local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
  324. prt.Anchored = true
  325. prt.CanCollide = false
  326. prt.CFrame = cframe
  327. prt.Name = "prt"
  328. local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
  329. game:GetService("Debris"):AddItem(prt, 5)
  330. table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3})
  331. end
  332.  
  333. MagicWave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  334. local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
  335. prt.Anchored = true
  336. prt.CFrame = cframe
  337. local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=20329976", vt(0, 0, 0), vt(x1, y1, z1))
  338. game:GetService("Debris"):AddItem(prt, 5)
  339. table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3})
  340. end
  341.  
  342. MagicCylinder = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  343. local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt(0.2, 0.2, 0.2))
  344. prt.Anchored = true
  345. prt.CFrame = cframe
  346. msh = mesh("SpecialMesh", prt, "Head", "", vt(0, 0, 0), vt(x1, y1, z1))
  347. game:GetService("Debris"):AddItem(prt, 5)
  348. Effects[#Effects + 1] = {prt, "Cylinder", delay, x3, y3, z3}
  349. end
  350.  
  351. MagicCylinder2 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  352. local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt(0.2, 0.2, 0.2))
  353. prt.Anchored = true
  354. prt.CFrame = cframe
  355. msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  356. game:GetService("Debris"):AddItem(prt, 5)
  357. Effects[#Effects + 1] = {prt, "Cylinder", delay, x3, y3, z3}
  358. end
  359.  
  360. MagicBlood = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  361. local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
  362. prt.Anchored = true
  363. prt.CFrame = cframe
  364. local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
  365. game:GetService("Debris"):AddItem(prt, 5)
  366. table.insert(Effects, {prt, "Blood", delay, x3, y3, z3})
  367. end
  368.  
  369. ElecEffect = function(cff, x, y, z)
  370. local prt = part(3, F2, 0, 0, BrickColor.new("Dark indigo"), "Part", vt(1, 1, 1))
  371. prt.Anchored = true
  372. prt.CFrame = cff * cf(math.random(-x, x), math.random(-y, y), math.random(-z, z))
  373. prt.CFrame = cf(prt.Position)
  374. game:GetService("Debris"):AddItem(prt, 2)
  375. xval = math.random() / 2
  376. yval = math.random() / 2
  377. zval = math.random() / 2
  378. msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(xval, yval, zval))
  379. Effects[#Effects + 1] = {prt, "Elec", 0.1, x, y, z, xval, yval, zval}
  380. end
  381.  
  382. function FindNearestTorso(Position, Distance, SinglePlayer)
  383. if SinglePlayer then
  384. return (SinglePlayer.Torso.CFrame.p - Position).magnitude < Distance
  385. end
  386. local List = {}
  387. for i, v in pairs(workspace:GetChildren()) do
  388. if v:IsA("Model") then
  389. if v:findFirstChild("Torso") then
  390. if v ~= Character then
  391. if (v.Torso.Position - Position).magnitude <= Distance then
  392. table.insert(List, v)
  393. end
  394. end
  395. end
  396. end
  397. end
  398. return List
  399. end
  400.  
  401.  
  402. function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
  403. local Part = Create("Part"){
  404. Parent = Parent,
  405. Reflectance = Reflectance,
  406. Transparency = Transparency,
  407. CanCollide = false,
  408. Locked = true,
  409. BrickColor = BrickColor.new(tostring(BColor)),
  410. Name = Name,
  411. Size = Size,
  412. Material = Material,
  413. }
  414. RemoveOutlines(Part)
  415. return Part
  416. end
  417.  
  418. function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  419. local Msh = Create(Mesh){
  420. Parent = Part,
  421. Offset = OffSet,
  422. Scale = Scale,
  423. }
  424. if Mesh == "SpecialMesh" then
  425. Msh.MeshType = MeshType
  426. Msh.MeshId = MeshId
  427. end
  428. return Msh
  429. end
  430.  
  431.  
  432.  
  433. function BlockEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
  434. local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  435. prt.Anchored = true
  436. prt.CFrame = cframe
  437. local msh = CreateMesh("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  438. game:GetService("Debris"):AddItem(prt, 10)
  439. if Type == 1 or Type == nil then
  440. table.insert(Effects, {
  441. prt,
  442. "Block1",
  443. delay,
  444. x3,
  445. y3,
  446. z3,
  447. msh
  448. })
  449. elseif Type == 2 then
  450. table.insert(Effects, {
  451. prt,
  452. "Block2",
  453. delay,
  454. x3,
  455. y3,
  456. z3,
  457. msh
  458. })
  459. end
  460. end
  461.  
  462. function SphereEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  463. local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  464. prt.Anchored = true
  465. prt.CFrame = cframe
  466. local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  467. game:GetService("Debris"):AddItem(prt, 10)
  468. table.insert(Effects, {
  469. prt,
  470. "Cylinder",
  471. delay,
  472. x3,
  473. y3,
  474. z3,
  475. msh
  476. })
  477. end
  478.  
  479. function RingEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay,material)
  480. local prt=CreatePart(workspace,material,0,0,brickcolor,"Effect",vt(.5,.5,.5))--part(3,workspace,"SmoothPlastic",0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
  481. prt.Anchored=true
  482. prt.CFrame=cframe
  483. msh=CreateMesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=3270017",vt(0,0,0),vt(x1,y1,z1))
  484. game:GetService("Debris"):AddItem(prt,2)
  485. coroutine.resume(coroutine.create(function(Part,Mesh,num)
  486. for i=0,1,delay do
  487. swait()
  488. Part.Transparency=i
  489. Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
  490. end
  491. Part.Parent=nil
  492. end),prt,msh,(math.random(0,1)+math.random())/5)
  493. end
  494.  
  495. function CylinderEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  496. local prt = CreatePart(workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
  497. prt.Anchored = true
  498. prt.CFrame = cframe
  499. local msh = CreateMesh("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  500. game:GetService("Debris"):AddItem(prt, 10)
  501. table.insert(Effects, {
  502. prt,
  503. "Cylinder",
  504. delay,
  505. x3,
  506. y3,
  507. z3,
  508. msh
  509. })
  510. end
  511.  
  512. function WaveEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  513. local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  514. prt.Anchored = true
  515. prt.CFrame = cframe
  516. local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  517. game:GetService("Debris"):AddItem(prt, 10)
  518. table.insert(Effects, {
  519. prt,
  520. "Cylinder",
  521. delay,
  522. x3,
  523. y3,
  524. z3,
  525. msh
  526. })
  527. end
  528.  
  529. function SpecialEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  530. local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  531. prt.Anchored = true
  532. prt.CFrame = cframe
  533. local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://24388358", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  534. game:GetService("Debris"):AddItem(prt, 10)
  535. table.insert(Effects, {
  536. prt,
  537. "Cylinder",
  538. delay,
  539. x3,
  540. y3,
  541. z3,
  542. msh
  543. })
  544. end
  545.  
  546.  
  547. function MoonEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  548. local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  549. prt.Anchored = true
  550. prt.CFrame = cframe
  551. local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://259403370", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  552. game:GetService("Debris"):AddItem(prt, 10)
  553. table.insert(Effects, {
  554. prt,
  555. "Cylinder",
  556. delay,
  557. x3,
  558. y3,
  559. z3,
  560. msh
  561. })
  562. end
  563.  
  564. function HeadEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  565. local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  566. prt.Anchored = true
  567. prt.CFrame = cframe
  568. local msh = CreateMesh("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  569. game:GetService("Debris"):AddItem(prt, 10)
  570. table.insert(Effects, {
  571. prt,
  572. "Cylinder",
  573. delay,
  574. x3,
  575. y3,
  576. z3,
  577. msh
  578. })
  579. end
  580.  
  581. function BreakEffect(brickcolor, cframe, x1, y1, z1)
  582. local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
  583. prt.Anchored = true
  584. prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  585. local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  586. local num = math.random(10, 50) / 1000
  587. game:GetService("Debris"):AddItem(prt, 10)
  588. table.insert(Effects, {
  589. prt,
  590. "Shatter",
  591. num,
  592. prt.CFrame,
  593. math.random() - math.random(),
  594. 0,
  595. math.random(50, 100) / 100
  596. })
  597. end
  598.  
  599. local lerp = function(a, b, t)
  600. return a * (1 - t) + b * t
  601. end
  602.  
  603. function clerp(a,b,t)
  604. local qa = {QuaternionFromCFrame(a)}
  605. local qb = {QuaternionFromCFrame(b)}
  606. local ax, ay, az = a.x, a.y, a.z
  607. local bx, by, bz = b.x, b.y, b.z
  608. local _t = 1-t
  609. return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
  610. end
  611.  
  612. function QuaternionFromCFrame(cf)
  613. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  614. local trace = m00 + m11 + m22
  615. if trace > 0 then
  616. local s = math.sqrt(1 + trace)
  617. local recip = 0.5/s
  618. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
  619. else
  620. local i = 0
  621. if m11 > m00 then
  622. i = 1
  623. end
  624. if m22 > (i == 0 and m00 or m11) then
  625. i = 2
  626. end
  627. if i == 0 then
  628. local s = math.sqrt(m00-m11-m22+1)
  629. local recip = 0.5/s
  630. return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
  631. elseif i == 1 then
  632. local s = math.sqrt(m11-m22-m00+1)
  633. local recip = 0.5/s
  634. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
  635. elseif i == 2 then
  636. local s = math.sqrt(m22-m00-m11+1)
  637. local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
  638. end
  639. end
  640. end
  641.  
  642.  
  643. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  644. local xs, ys, zs = x + x, y + y, z + z
  645. local wx, wy, wz = w*xs, w*ys, w*zs
  646. local xx = x*xs
  647. local xy = x*ys
  648. local xz = x*zs
  649. local yy = y*ys
  650. local yz = y*zs
  651. local zz = z*zs
  652. 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))
  653. end
  654. function QuaternionSlerp(a, b, t)
  655. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
  656. local startInterp, finishInterp;
  657. if cosTheta >= 0.0001 then
  658. if (1 - cosTheta) > 0.0001 then
  659. local theta = math.acos(cosTheta)
  660. local invSinTheta = 1/math.sin(theta)
  661. startInterp = math.sin((1-t)*theta)*invSinTheta
  662. finishInterp = math.sin(t*theta)*invSinTheta
  663. else
  664. startInterp = 1-t
  665. finishInterp = t
  666. end
  667. else
  668. if (1+cosTheta) > 0.0001 then
  669. local theta = math.acos(-cosTheta)
  670. local invSinTheta = 1/math.sin(theta)
  671. startInterp = math.sin((t-1)*theta)*invSinTheta
  672. finishInterp = math.sin(t*theta)*invSinTheta
  673. else
  674. startInterp = t-1
  675. finishInterp = t
  676. end
  677. end
  678. 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
  679. end
  680.  
  681. function weld5(part0, part1, c0, c1)
  682. weeld=Instance.new("Weld", part0)
  683. weeld.Part0=part0
  684. weeld.Part1=part1
  685. weeld.C0=c0
  686. weeld.C1=c1
  687. return weeld
  688. end
  689.  
  690. --Example: Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
  691.  
  692. function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
  693. return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  694. end
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701. Character.Humanoid.MaxHealth = 120
  702. Character.Humanoid.Health = 120
  703.  
  704. local f = 0
  705. local b = Instance.new("BlurEffect",cam)
  706. local c = Instance.new('PointLight', Torso)
  707. c.Range = 16
  708. c.Color = Color3.new(0, 1,1)
  709. c.Brightness = 1.5
  710. game:GetService("RunService"):BindToRenderStep("W0tT", 0, function()
  711.  
  712. b.Size = b.Size - 4
  713. if boost == true then
  714. c.Enabled = true
  715. cam.FieldOfView = lerp(cam.FieldOfView, 110, 0.5)
  716. -- cam.FieldOfView = 110
  717. freefall = 0
  718. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,3),0.25)
  719. SphereEffect(BrickColor.new("Cyan"),RightLeg.CFrame*CFrame.new(0,-1,0)*angles(math.random(-180,180),math.random(-180,180),math.random(-180,180)),1.4,12,1.4,2.8,26,2.8,0.07)
  720. SphereEffect(BrickColor.new("Cyan"),LeftLeg.CFrame*CFrame.new(0,-1,0)*angles(math.random(-180,180),math.random(-180,180),math.random(-180,180)),1.4,12,1.4,2.8,26,2.8,0.07)
  721. if hitfloor ~= nil and Anim ~= "runIdle" then
  722. SpecialEffect(BrickColor.new("Cyan"),RootPart.CFrame*CFrame.new(0,-3.4,.78) ,2,2,2, 1.5,1.5,1.5,.09)
  723. end
  724. end
  725. if boost == false then
  726. cam.FieldOfView = lerp(cam.FieldOfView, 70, 0.076)
  727. --cam.FieldOfView = 70
  728. c.Enabled = false
  729. end
  730. end)
  731.  
  732.  
  733.  
  734. mouse.KeyDown:connect(function(key)
  735. if string.byte(key) == 48 then
  736. b.Size = 40
  737. Swing = 2
  738. freefall = 0
  739.  
  740. coroutine.resume(coroutine.create(function()
  741. for i = 0,1,0.1 do
  742. swait()
  743. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8)),0.24)
  744. end
  745. end))
  746. Humanoid.WalkSpeed = 180
  747. RootPart.Velocity = RootPart.CFrame.lookVector*150
  748. RingEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,-9.2) , 1, 1, 1, 8, 8, 8, 0.14,"Neon")
  749. boost = true
  750. boostsound:Play()
  751. end
  752. end)
  753.  
  754. mouse.KeyUp:connect(function(key)
  755. if string.byte(key) == 48 then
  756. Swing = 1
  757. Humanoid.WalkSpeed = 64
  758. boost = false
  759. boostsound:Stop()
  760.  
  761. end
  762. end)
  763.  
  764.  
  765.  
  766.  
  767. mouse.KeyDown:connect(function(key)
  768. if string.byte(key) == 50 then
  769. b.Size = 40
  770. freefall = 0
  771. Swing = 2
  772.  
  773. coroutine.resume(coroutine.create(function()
  774. for i = 0,1,0.1 do
  775. swait()
  776. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.35*2.8,0.35*2.8),math.random(-0.35*2.8,0.35*2.8),math.random(-0.35*2.8,0.35*2.8)),0.48)
  777. end
  778. end))
  779.  
  780. Humanoid.WalkSpeed = 320
  781. RootPart.Velocity = RootPart.CFrame.lookVector*550
  782. RingEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,-9.2) , 1, 1, 1, 18, 18, 18, 0.14,"Neon")
  783. RingEffect(BrickColor.new("White"), RootPart.CFrame*CFrame.new(0,0,-11.2) , 1, 1, 1, 18, 18, 18, 0.14,"Neon")
  784. RingEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,-13.2) , 1, 1, 1, 18, 18, 18, 0.14,"Neon")
  785. boost = true
  786. boostsound:Play()
  787. end
  788. end)
  789.  
  790. mouse.KeyUp:connect(function(key)
  791. if string.byte(key) == 50 then
  792. Swing = 1
  793. Humanoid.WalkSpeed = 64
  794. boost = false
  795. boostsound:Stop()
  796.  
  797. end
  798. end)
  799.  
  800.  
  801. local lastwall = nil
  802. local jumped = false
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809. local vwall = false
  810.  
  811. mouse.KeyDown:connect(function(key)
  812. if key == 'b' and hitfloor == nil and attack == false then
  813. vrun()
  814. end
  815. end)
  816.  
  817.  
  818. function vrun()
  819. local ray = Ray.new(
  820. RootPart.CFrame.p, RootPart.CFrame.lookVector *2.5
  821. )
  822. local hit, position, normal = workspace:FindPartOnRay(ray, character)
  823.  
  824. if hit then
  825. if hit.Parent.Parent ~= Character and hit.Parent ~= Character and hit.Name ~= "prt" and hit.CanCollide == true then
  826. vwall = true
  827. local NV = Vector3.new(0,0,0)
  828. local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude + 10
  829. local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
  830. local GravPoint = RootPart.Velocity.y
  831. local velo = Instance.new("BodyVelocity",Torso)
  832. velo.MaxForce = Vector3.new(400000,400000,400000)
  833.  
  834. attack = true
  835. while vwall == true and ray and hit do
  836. swait()
  837. change = 0.84+ Humanoid.WalkSpeed/132
  838. if Humanoid.WalkSpeed > 40 and Humanoid.WalkSpeed < 70 then
  839. velo.Velocity = Vector3.new(0,40,0)
  840. end
  841. if Humanoid.WalkSpeed > 70 and Humanoid.WalkSpeed < 200 then
  842. velo.Velocity = Vector3.new(0,80,0)
  843. end
  844. if Humanoid.WalkSpeed > 200 then
  845. velo.Velocity = Vector3.new(0,130,0)
  846. end
  847. ray = Ray.new(
  848. RootPart.CFrame.p, RootPart.CFrame.lookVector *2.5
  849. )
  850. hit, position, normal = workspace:FindPartOnRay(ray, character)
  851. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/2), .6) * angles(math.rad(96), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
  852. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+20*math.sin(sine/2)),math.rad(0),math.rad(0+5*math.sin(sine/4)) + RootPart.RotVelocity.Y / 13),.1)
  853. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.1) * angles(math.rad(-90-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(15+2*math.sin(sine/4))- RootPart.RotVelocity.Y / 34),.15)
  854. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.1)*angles(math.rad(-90-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-15+2*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34),.15)
  855. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.28*math.cos(sine/4), 0-0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0+104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.3+ Humanoid.WalkSpeed/272)
  856. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.28*math.cos(sine/4),0+0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0-104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.3+ Humanoid.WalkSpeed/272)
  857. end
  858. velo:Destroy()
  859. wait(0.07)
  860.  
  861. if vwall == false then
  862.  
  863. RootPart.Velocity = -RootPart.CFrame.lookVector*68 + Vector3.new(0,86,0)
  864.  
  865. --[[]
  866. for i = 0,5,0.2 do
  867. rs:wait()
  868. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -0.79, 0) * CFrame.Angles(math.rad(0+100*i), math.rad(0), math.rad(0)), 0.2)
  869. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(20),math.rad(0),math.rad(0)),.2)
  870. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(180), math.rad(-60), math.rad(40)),.2)
  871. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(180), math.rad(60), math.rad(-40)),.2)
  872. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
  873. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
  874. end
  875. ]]
  876.  
  877.  
  878. for i = 0,4,0.1 do
  879. swait()
  880. Humanoid.CameraOffset = Vector3.new(0,0,0)
  881. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+260*i), math.rad(0), math.rad(0)), 0.6)
  882. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
  883. RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
  884. LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
  885. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  886. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  887. end
  888.  
  889. attack = false
  890.  
  891.  
  892. end
  893.  
  894.  
  895. if vwall == true then
  896. RootPart.Velocity = RootPart.CFrame.lookVector*38 + Vector3.new(0,86,0)
  897.  
  898. --[[]
  899. for i = 0,5,0.2 do
  900. rs:wait()
  901. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -0.79, 0) * CFrame.Angles(math.rad(0+100*i), math.rad(0), math.rad(0)), 0.2)
  902. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(20),math.rad(0),math.rad(0)),.2)
  903. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(180), math.rad(-60), math.rad(40)),.2)
  904. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(180), math.rad(60), math.rad(-40)),.2)
  905. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
  906. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
  907. end
  908. ]]
  909.  
  910.  
  911. for i = 0,4,0.15 do
  912. swait()
  913. Humanoid.CameraOffset = Vector3.new(0,0,0)
  914. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0-260*i), math.rad(0), math.rad(0)), 0.6)
  915. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
  916. RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
  917. LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
  918. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  919. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  920. end
  921.  
  922. attack = false
  923.  
  924. end
  925.  
  926.  
  927. end
  928. end
  929. end
  930.  
  931.  
  932.  
  933.  
  934. mouse.KeyUp:connect(function(key)
  935. if key == 'b' and vwall == true then
  936. vwall = false
  937. end
  938. end)
  939.  
  940.  
  941.  
  942.  
  943.  
  944. function Ldash()
  945.  
  946.  
  947.  
  948. evadecooldown = true
  949. attack = true
  950. k = math.random(1,2)
  951. if k == 1 then
  952. so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
  953. else
  954. so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
  955. end
  956.  
  957.  
  958.  
  959.  
  960.  
  961. --+173.8*i
  962. for i = 0,.7,0.1 do
  963. swait()
  964. Head.Velocity = Head.CFrame.rightVector * -135
  965. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(32)), 0.2)
  966. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(-9),math.rad(-14)),.2)
  967. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, -0.2) * angles(math.rad(27), math.rad(0), math.rad(30)),.2)
  968. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(30), math.rad(0), math.rad(30)),.2)
  969. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(12)), 0.2)
  970. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(8)), 0.2)
  971. end
  972.  
  973. attack = false
  974. wait(0.08)
  975. evadecooldown = false
  976.  
  977.  
  978. end
  979.  
  980.  
  981.  
  982.  
  983.  
  984. function Rdash()
  985.  
  986.  
  987.  
  988. evadecooldown = true
  989. attack = true
  990. k = math.random(1,2)
  991. if k == 1 then
  992. so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
  993. else
  994. so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
  995. end
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001. --+173.8*i
  1002. for i = 0,.7,0.1 do
  1003. swait()
  1004. Head.Velocity = Head.CFrame.rightVector * 135
  1005. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-32)), 0.2)
  1006. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(9),math.rad(14)),.2)
  1007. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(30), math.rad(0), math.rad(-30)),.2)
  1008. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0.2) * angles(math.rad(27), math.rad(0), math.rad(-30)),.2)
  1009. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-8)), 0.2)
  1010. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-12)), 0.2)
  1011. end
  1012.  
  1013. attack = false
  1014. wait(0.08)
  1015. evadecooldown = false
  1016.  
  1017.  
  1018. end
  1019. local sliding = false
  1020.  
  1021.  
  1022. function Slide()
  1023.  
  1024. local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude + 10
  1025. spd = spd + 30
  1026. local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
  1027. local GravPoint = RootPart.Velocity.y
  1028. if spd > 40 and hitfloor ~= nil then
  1029. noleg = true
  1030.  
  1031. attack = true
  1032. k = math.random(1,2)
  1033. if k == 1 then
  1034. so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
  1035. else
  1036. so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
  1037. end
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048. local NV = Vector3.new(0,0,0)
  1049. local bv = Instance.new("BodyVelocity", Torso)
  1050. bv.maxForce = Vector3.new(1/0,1/0,1/0)
  1051. bv.velocity = dir*spd
  1052. local bg = Instance.new("BodyGyro", Torso)
  1053. bg.maxTorque = Vector3.new(1/0,1/0,1/0)
  1054. bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(math.pi/2.2,0.24,0)
  1055. Head.Running.SoundId = "rbxassetid://1295468446"
  1056. Head.Running.TimePosition = 0
  1057.  
  1058. Humanoid.PlatformStand = true
  1059. while spd > 2 and hitfloor ~= nil and sliding == true do
  1060. swait()
  1061. spd = spd - 0.95
  1062. bv.velocity = dir*spd + Vector3.new(0,0,0)
  1063. bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(math.pi/2.2,0.24,0)
  1064. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -2.3, 0) * CFrame.Angles(math.rad(90), math.rad(0), math.rad(12)), 0.2)
  1065. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(34),math.rad(0),math.rad(12)),.2)
  1066. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(110), math.rad(0), math.rad(70)),.2)
  1067. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0.2) * angles(math.rad(0), math.rad(0), math.rad(-60)),.2)
  1068. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
  1069. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -0.56, -0.2) * CFrame.Angles(math.rad(-24), math.rad(0), math.rad(0)), 0.2)
  1070. end
  1071. bv:Destroy()
  1072. bg:Destroy()
  1073. Head.Running.SoundId = "rbxassetid://758199523"
  1074. Head.Running.TimePosition = 0
  1075. Humanoid.PlatformStand = false
  1076. attack = false
  1077. sliding = false
  1078. wait(0.05)
  1079. evadecooldown = false
  1080.  
  1081.  
  1082. end
  1083. end
  1084.  
  1085. function land()
  1086. attack = true
  1087. RootPart.Velocity = Vector3.new(0,0,0)
  1088. WaveEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,-1,0) , 1, 1, 1, 3, 0.8, 3, 0.06)
  1089. so("http://www.roblox.com/asset/?id=1295424585", Torso, 3.5, 1)
  1090.  
  1091. coroutine.resume(coroutine.create(function()
  1092. for i = 0,1,0.1 do
  1093. swait()
  1094. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.55*2.8,0.55*2.8),math.random(-0.55*2.8,0.55*2.8),math.random(-0.55*2.8,0.55*2.8)),0.44)
  1095. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -2, 0) * CFrame.Angles(math.rad(-16), math.rad(0), math.rad(0)), 0.5)
  1096. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(7),math.rad(0),math.rad(0)),.5)
  1097. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(87)),.5)
  1098. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0) * angles(math.rad(0), math.rad(0), math.rad(-87)),.5)
  1099. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, 0, -0.5) * CFrame.Angles(math.rad(16), math.rad(0), math.rad(0)), 0.5)
  1100. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.14, 0.2) * CFrame.Angles(math.rad(-17), math.rad(0), math.rad(0)), 0.5)
  1101.  
  1102. end
  1103. attack = false
  1104.  
  1105.  
  1106. end))
  1107.  
  1108.  
  1109.  
  1110. end
  1111.  
  1112.  
  1113.  
  1114.  
  1115. function stomp()
  1116. attack = true
  1117. stompsound:Play()
  1118.  
  1119. while hitfloor == nil do
  1120. swait()
  1121. b.Size = 12
  1122. WaveEffect(BrickColor.new("Cyan"), LeftLeg.CFrame*CFrame.new(0,-2.4,0) , 1, 1, 1, 0.8, 0.8, 0.8, 0.14)
  1123. RootPart.Velocity = Vector3.new(0,RootPart.Velocity.y/1.6,0) +Vector3.new(0,-150,0)
  1124. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
  1125. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(0+4*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
  1126. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(140+12*math.cos(sine/1.3))), 0.07)
  1127. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(-140+12*math.cos(sine/1.3))), 0.07)
  1128. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(60+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
  1129. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3), -0.13) * CFrame.Angles(math.rad(0+4*math.cos(sine/1.3)), math.rad(3), math.rad(0)), 0.1)
  1130. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, .27+0.17*math.cos(sine/1.3), -0.56) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(0), math.rad(0)), 0.1)
  1131.  
  1132. end
  1133. stompsound:Stop()
  1134. land()
  1135.  
  1136.  
  1137. end
  1138.  
  1139.  
  1140. function changemusic()
  1141. musicnum = musicnum + 1
  1142. music.TimePosition = 0
  1143. local osix = false
  1144. local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude
  1145. if musicnum > 14 then
  1146. musicnum = 1
  1147. end
  1148. if musicnum == 1 then
  1149. music.SoundId = "rbxassetid://572361913"
  1150. end
  1151. if musicnum == 2 then
  1152. music.SoundId = "rbxassetid://146443855"
  1153. end
  1154. if musicnum == 3 then
  1155. music.SoundId = "rbxassetid://1342408291"
  1156. end
  1157. if musicnum == 4 then
  1158. music.SoundId = "rbxassetid://201219416"
  1159. end
  1160. if musicnum == 5 then
  1161. music.SoundId = "rbxassetid://1390472571"
  1162. end
  1163. if musicnum == 6 then
  1164. osix = true
  1165. music.SoundId = "rbxassetid://249974783"
  1166. end
  1167. if musicnum == 7 then
  1168. music.SoundId = "rbxassetid://1851880603"
  1169. end
  1170. if musicnum == 8 then
  1171. music.SoundId = "rbxassetid://412034984"
  1172. end
  1173. if musicnum == 9 then
  1174. music.SoundId = "rbxassetid://536915629"
  1175. end
  1176. if musicnum == 10 then
  1177. music.SoundId = "rbxassetid://1200005861"
  1178. end
  1179. if musicnum == 11 then
  1180. music.SoundId = "rbxassetid://1055930631"
  1181. end
  1182. if musicnum == 12 then
  1183. music.SoundId = "rbxassetid://300269553"
  1184. end
  1185. if musicnum == 13 then
  1186. music.SoundId = "rbxassetid://199897052"
  1187. end
  1188. if musicnum == 14 then
  1189. music.SoundId = "rbxassetid://638115895"
  1190. end
  1191.  
  1192. if spd < 14 then
  1193. Humanoid.Jump = true
  1194.  
  1195. if osix == false then
  1196. so("rbxassetid://537371462",PlayerGui,2,1)
  1197. end
  1198.  
  1199.  
  1200. RootPart.Velocity = Vector3.new(0,102,0)
  1201. attack = true
  1202. wait(0.08)
  1203. for i = 0,7,0.1 do
  1204. swait()
  1205. RootPart.Velocity = Vector3.new(0,2,0)
  1206. Humanoid.CameraOffset = Vector3.new(0,0,0)
  1207. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0-260*i), math.rad(0), math.rad(0)), 0.6)
  1208. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
  1209. RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
  1210. LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
  1211. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  1212. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  1213.  
  1214. end
  1215. b.Size = 40
  1216. MoonEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,0) , 1, 1, 1, 8, 8, 8, 0.06)
  1217.  
  1218. if osix == true then
  1219. osix = false
  1220. so("rbxassetid://156821036",PlayerGui,2,1)
  1221. end
  1222.  
  1223. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -3, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 1)
  1224. for i = 0,5,0.1 do
  1225. swait()
  1226. RootPart.Velocity = Vector3.new(0,3.5,0)
  1227. Humanoid.CameraOffset = Vector3.new(0,0,0)
  1228. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1+0.1*i, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.21)
  1229. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(22-2*i),math.rad(0),math.rad(0)),.21)
  1230. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5+0.09*i, 0) * angles(math.rad(20-6*i), math.rad(0), math.rad(90+13*i)), 0.21)
  1231. LW.C0 = clerp(LW.C0, CFrame.new(-1.0-0.12*i, 0.5, -0.4+0.05*i) * angles(math.rad(20+13*i), math.rad(0), math.rad(20-13*i)), 0.21)
  1232. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(-22-4*i)), 0.21)
  1233. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(22+4*i)), 0.21)
  1234. end
  1235. attack = false
  1236. end
  1237. end
  1238.  
  1239.  
  1240. mouse.KeyDown:connect(function(key)
  1241. if key == 'q' and attack == false and evadecooldown == false then
  1242. Ldash()
  1243. end
  1244. end)
  1245.  
  1246.  
  1247.  
  1248. mouse.KeyDown:connect(function(key)
  1249. if key == 'e' and attack == false and evadecooldown == false then
  1250. Rdash()
  1251. end
  1252. end)
  1253.  
  1254. mouse.KeyDown:connect(function(key)
  1255. if key == 'c' and attack == false and evadecooldown == false and hitfloor ~= nil then
  1256. sliding = true
  1257. Slide()
  1258. end
  1259. end)
  1260.  
  1261. mouse.KeyDown:connect(function(key)
  1262. if key == 'c' and attack == false and hitfloor == nil then
  1263. stomp()
  1264. end
  1265. end)
  1266.  
  1267.  
  1268. local walljump = false
  1269.  
  1270.  
  1271. function walljumpp()
  1272. local ray = Ray.new(
  1273. Torso.CFrame.p, RootPart.CFrame.lookVector *5
  1274. )
  1275. local hit, position, normal = workspace:FindPartOnRay(ray, character)
  1276.  
  1277. if hit then
  1278. if hit.Parent.Parent ~= Character and hit.Parent ~= Character then
  1279. local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
  1280. GravPoint = 0
  1281. freefall = 0
  1282. walljump = true
  1283. Humanoid.AutoRotate = false
  1284. local velo = Instance.new("BodyVelocity",Torso)
  1285. velo.MaxForce = Vector3.new(400000,400000,400000)
  1286. --game.Debris:AddItem(velo,0.1)
  1287. attack = true
  1288. while hitfloor == nil and walljump == true and ray and hit do
  1289. swait()
  1290. freefall = 0
  1291. GravPoint = GravPoint - 0.36
  1292. ray = Ray.new(
  1293. RootPart.CFrame.p, RootPart.CFrame.lookVector *2.5
  1294. )
  1295. hit, position, normal = workspace:FindPartOnRay(ray, character)
  1296. velo.Velocity = vt(0,GravPoint,0)
  1297. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.9) * CFrame.Angles(math.rad(5), math.rad(90), math.rad(8)), 0.2)
  1298. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(7),math.rad(0),math.rad(86)),.2)
  1299. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(120)),.2)
  1300. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-60)),.2)
  1301. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(-6), math.rad(14), math.rad(-12)), 0.2)
  1302. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(23)), 0.2)
  1303. end
  1304. if walljump == false then
  1305. k = math.random(1,3)
  1306. if k == 1 then
  1307. so("http://www.roblox.com/asset/?id=800121776", Head, 2.5, 1)
  1308. else if k == 2 then
  1309. so("http://www.roblox.com/asset/?id=804889329", Head, 2.5, 1)
  1310. else if k == 3 then
  1311. so("http://www.roblox.com/asset/?id=804907617", Head, 2.5, 1)
  1312. end
  1313. end
  1314. end
  1315.  
  1316. velo:Destroy()
  1317. attack = false
  1318. coroutine.resume(coroutine.create(function()
  1319. for i = 0,1,0.1 do
  1320. swait()
  1321. Humanoid.CameraOffset = Vector3.new(0,0,0)
  1322. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+260*i), math.rad(0), math.rad(0)), 0.6)
  1323. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
  1324. RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
  1325. LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
  1326. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  1327. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  1328. end
  1329. end))
  1330.  
  1331. Humanoid.AutoRotate = true
  1332. RootPart.Velocity = RootPart.CFrame.lookVector * -137 + Vector3.new(0,136,0)
  1333. wait(0.07)
  1334. RootPart.CFrame = CFrame.new(RootPart.CFrame.p,-RootPart.CFrame.lookVector)
  1335. end
  1336. if walljump == true then
  1337. attack = false
  1338. walljump = false
  1339. Humanoid.AutoRotate = true
  1340. velo:Destroy()
  1341. end
  1342. end
  1343. end
  1344. end
  1345.  
  1346.  
  1347. local homed = nil
  1348. function home()
  1349. if walljump ~= true then
  1350. for i, v in pairs(FindNearestTorso(Torso.CFrame.p, 80)) do
  1351. if v:FindFirstChild('Head') then
  1352. Grabbed = true
  1353. homed = v
  1354. end
  1355. end
  1356.  
  1357. if homed ~= nil and homed:FindFirstChildOfClass("Humanoid").Health > 1 and walljump == false then
  1358. so("http://www.roblox.com/asset/?id=162460823", Head, 1, .8)
  1359. local SBall = Instance.new("Part",Character)
  1360. SBall.Name = "Homing Ball"
  1361. SBall.CanCollide = false
  1362. SBall.Anchored = false
  1363. SBall.Transparency = 0.64
  1364. SBall.CFrame = CFrame.new(RootPart.CFrame.p)
  1365. SBall.BrickColor = BrickColor.new("Toothpaste")
  1366. SBall.Size = Vector3.new(1,1,1)
  1367. SBall.Material = "Neon"
  1368. SBallweld = Instance.new("Weld")
  1369. SBallweld.Parent = SBall
  1370. SBallweld.Part0 = RootPart
  1371. SBallweld.Part1 = SBall
  1372. SBallweld.C1 = CFrame.new(0, 1, 0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  1373. SBallweld.Part0 = RootPart
  1374. local SBallmesh = Instance.new("SpecialMesh",SBall)
  1375. SBallmesh.MeshType = "Sphere"
  1376. SBallmesh.Scale = Vector3.new(6,6,6)
  1377. trail = Instance.new("Trail", Character)
  1378. a2 = Instance.new("Attachment", Torso) a2.Position = Vector3.new(0,2,0)
  1379. a3 = Instance.new("Attachment", Torso)a3.Position = Vector3.new(0,-2.5,0)
  1380. trail.Texture = "rbxassetid://0"
  1381. trail.Attachment0 = a2
  1382. trail.Attachment1 = a3
  1383. trail.Lifetime = 0.353
  1384. trail.MinLength = 0.03
  1385. trail.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,1)})
  1386. trail.Color = ColorSequence.new(Color3.new(0,1,1), Color3.new(0, 0,0))
  1387. trail.LightEmission = 4.8
  1388. trail.TextureLength = 0.034
  1389. trail.Enabled = true
  1390. attack = true
  1391. local position = Instance.new("BodyPosition",Torso)
  1392. position.P = 68350
  1393. position.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  1394.  
  1395. while homed ~= nil and (homed.Torso.Position-RootPart.Position).magnitude > 8 do
  1396. swait()
  1397. SBall.CFrame = CFrame.new(RootPart.CFrame.p)
  1398. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+420*math.abs(sine/3.2)), math.rad(0), math.rad(0)), 0.6)
  1399. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
  1400. RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
  1401. LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
  1402. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  1403. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
  1404. position.Position = homed.Torso.Position + Vector3.new(0,2,0)
  1405. end
  1406. local bodvol=Instance.new("BodyVelocity")
  1407. bodvol.velocity= RootPart.CFrame.lookVector*240 + Vector3.new(0,30,0)
  1408. bodvol.P= 35200
  1409. bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
  1410. bodvol.Parent=homed.Head
  1411. game:GetService("Debris"):AddItem(bodvol, 0.2)
  1412. homed:FindFirstChildOfClass("Humanoid"):TakeDamage(math.random(10,30))
  1413.  
  1414. position:Destroy()
  1415. trail.Enabled = false
  1416. SBall:Destroy()
  1417. RootPart.Velocity = Vector3.new(0,93.5,0)
  1418. coroutine.resume(coroutine.create(function()
  1419. for i = 0,5,0.26 do
  1420. swait()
  1421. Humanoid.CameraOffset = Vector3.new(0,0,0)
  1422. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1+0.1*i, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.21)
  1423. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(22-2*i),math.rad(0),math.rad(0)),.21)
  1424. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5+0.09*i, 0) * angles(math.rad(20-6*i), math.rad(0), math.rad(90+13*i)), 0.21)
  1425. LW.C0 = clerp(LW.C0, CFrame.new(-1.0-0.12*i, 0.5, -0.4+0.05*i) * angles(math.rad(20+13*i), math.rad(0), math.rad(20-13*i)), 0.21)
  1426. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(-22-4*i)), 0.21)
  1427. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(22+4*i)), 0.21)
  1428. end
  1429. homed = nil
  1430. attack = false
  1431. end))
  1432.  
  1433. end
  1434.  
  1435. end
  1436.  
  1437.  
  1438. end
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.  
  1460.  
  1461.  
  1462. mouse.KeyDown:connect(function(key)
  1463. wait(0.16)
  1464. if string.byte(key) == 32 and hitfloor == nil and attack == false and walljump == false and Humanoid.Jump == true then
  1465. walljumpp()
  1466. end
  1467. if string.byte(key) == 32 and hitfloor == nil and attack == false and walljump == false and Humanoid.Jump == true then
  1468. home()
  1469. end
  1470.  
  1471. if string.byte(key) == 32 and hitfloor == nil and attack == true and walljump == true then
  1472. walljump = false
  1473. end
  1474. end)
  1475.  
  1476.  
  1477.  
  1478.  
  1479. mouse.KeyDown:connect(function(key)
  1480. if key == 'm' and attack == false then
  1481. changemusic()
  1482. end
  1483. end)
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490. mouse.KeyUp:connect(function(key)
  1491. wait(0.05)
  1492. if key == 'c' and sliding == true then
  1493. sliding = false
  1494. end
  1495. end)
  1496. local look = 0
  1497.  
  1498.  
  1499.  
  1500. while true do
  1501. swait()
  1502. sine = sine + change
  1503. --speed = speed + music.PlaybackLoudness/90
  1504. local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
  1505. local velderp=RootPart.Velocity.y
  1506. hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
  1507.  
  1508. local TiltVelocity = CFrame.new(RootPart.CFrame:vectorToObjectSpace(RootPart.Velocity))
  1509.  
  1510. local rlegray = Ray.new(RightLeg.Position+Vector3.new(0,0.54,0),Vector3.new(0, -1.75, 0))
  1511. local rlegpart, rlegendPoint = workspace:FindPartOnRay(rlegray, Character)
  1512.  
  1513. local llegray = Ray.new(LeftLeg.Position+Vector3.new(0,0.54,0),Vector3.new(0, -1.75, 0))
  1514. local llegpart, llegendPoint = workspace:FindPartOnRay(llegray, Character)
  1515.  
  1516. local waterthing = Ray.new(RootPart.CFrame.p,Vector3.new(0,-1,0))
  1517. local start, position = workspace:FindPartOnRay(waterthing, character)
  1518.  
  1519. if start ~= nil and start.Material == "Water" then
  1520.  
  1521. RootPart.Velocity = RootPart.Velocity + Vector3.new(0,6,0)
  1522.  
  1523. end
  1524.  
  1525. Head.Running.Pitch = 0.76 + Humanoid.WalkSpeed/124
  1526. if torvel<1 and Swing == 2 then
  1527. boost = false
  1528. elseif torvel>1 and Swing == 2 then
  1529. boost = true
  1530. freefall = 0
  1531. end
  1532. if hitfloor ~= nil and freefall < 150 then
  1533. freefall = 0
  1534. end
  1535. if freefall > 150 and hitfloor ~= nil then
  1536. land()
  1537. freefall = 0
  1538. end
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546. if RootPart.Velocity.y > 1 and hitfloor==nil then
  1547. Anim="Jump"
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553. if attack==false then
  1554. change = 1
  1555. look = 0
  1556. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
  1557. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(4), math.rad(0), math.rad(0)), 0.07)
  1558. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-10+2.05*math.cos(sine/5)),math.rad(0),math.rad(0)),0.07)
  1559. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(50-2.05*math.cos(sine/5))), 0.07)
  1560. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(-50+2.05*math.cos(sine/5))), 0.07)
  1561. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, -0.6) * CFrame.Angles(math.rad(-25+3.05*math.cos(sine/5)), math.rad(-3), math.rad(0)), 0.1)
  1562. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.47, -0.7) * CFrame.Angles(math.rad(-12+3.05*math.cos(sine/5)), math.rad(0), math.rad(0)), 0.1)
  1563. end
  1564.  
  1565. elseif RootPart.Velocity.y < -1 and freefall <150 and hitfloor==nil then
  1566. Anim="Fall"
  1567. change = 1
  1568. freefall = freefall +0.77
  1569.  
  1570.  
  1571. if attack==false then
  1572. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
  1573. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(7+4*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
  1574. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(140+12*math.cos(sine/1.3))), 0.07)
  1575. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(-140+12*math.cos(sine/1.3))), 0.07)
  1576. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(40+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
  1577. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3), -0.13) * CFrame.Angles(math.rad(18+7*math.cos(sine/1.3)), math.rad(3), math.rad(0)), 0.1)
  1578. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.37+0.17*math.cos(sine/1.3), -0.2) * CFrame.Angles(math.rad(32+7*math.cos(sine/1.3)), math.rad(0), math.rad(0)), 0.1)
  1579. end
  1580.  
  1581.  
  1582.  
  1583. elseif RootPart.Velocity.y < -1 and freefall > 150 and hitfloor==nil then
  1584. Anim="FreeFall"
  1585. change = 1
  1586.  
  1587.  
  1588. if attack==false then
  1589. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
  1590. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(-90+3*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
  1591. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(14+12*math.cos(sine/1.3)), math.rad(0), math.rad(110)), 0.07)
  1592. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(14+12*math.cos(sine/1.3)), math.rad(0), math.rad(-110)), 0.07)
  1593. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-12+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
  1594. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3),0.2) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(3), math.rad(-46)), 0.1)
  1595. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.17*math.cos(sine/1.3), 0.2) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(0), math.rad(46)), 0.1)
  1596. end
  1597.  
  1598. elseif torvel<1 and hitfloor~=nil then
  1599. Anim="Idle"
  1600. change = 1
  1601. if attack==false and equip == false then
  1602.  
  1603. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
  1604. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.04*math.cos(sine/40), -0) * CFrame.Angles(math.rad(0-0.81*math.cos(sine/40)), math.rad(-40), math.rad(0)), 0.1)
  1605. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0+2.6*math.sin(sine/40)),math.rad(0),math.rad(40)),0.1)
  1606. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.55+0.04*math.sin(sine/40), 0-0.04*math.cos(sine/40)) * angles(math.rad(-2+1.3*math.cos(sine/40)), math.rad(0+4*math.sin(sine/40)), math.rad(6.3+2.2*math.cos(sine/40))),0.1)
  1607. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.55+0.04*math.sin(sine/40), 0-0.04*math.cos(sine/40)) * angles(math.rad(2+1.3*math.cos(sine/40)), math.rad(0-4*math.sin(sine/40)), math.rad(-6.3-2.2*math.cos(sine/40))),0.1)
  1608. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, llegendPoint.Y-LeftLeg.Position.Y+0.04*math.cos(sine/40), 0) * CFrame.Angles(math.rad(0+0.81*math.cos(sine/40)), math.rad(18+0.81*math.cos(sine/40)), math.rad(-2-0.81*math.cos(sine/40))),0.1)
  1609. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.57, rlegendPoint.Y-RightLeg.Position.Y+0.04*math.cos(sine/40), 0) * CFrame.Angles(math.rad(0+0.81*math.cos(sine/40)), math.rad(-2+0.81*math.cos(sine/40)), math.rad(3-0.81*math.cos(sine/40))),0.1)
  1610. end
  1611.  
  1612.  
  1613.  
  1614. elseif torvel>1.5 and torvel<70 and hitfloor~=nil then
  1615. Anim="Walk"
  1616. change = 0.84+ Character.Humanoid.WalkSpeed/132
  1617. look = 0
  1618. if attack==false and equip == false then
  1619. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
  1620. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/2), -.8) * angles(math.rad(-26), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
  1621. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+20*math.sin(sine/2)),math.rad(0),math.rad(0+5*math.sin(sine/4)) + RootPart.RotVelocity.Y / 13),.1)
  1622. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.1) * angles(math.rad(-60-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(15+2*math.sin(sine/4))- RootPart.RotVelocity.Y / 34),.15)
  1623. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.1)*angles(math.rad(-60-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-15+2*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34),.15)
  1624. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.28*math.cos(sine/4), 0-0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0+104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.3)
  1625. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.28*math.cos(sine/4),0+0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0-104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.3)
  1626. end
  1627.  
  1628.  
  1629. elseif torvel>=70 and torvel<200 and hitfloor~=nil then
  1630. Anim="Run"
  1631. change = 0.84+ Character.Humanoid.WalkSpeed/142
  1632. if attack==false and equip == false then
  1633. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
  1634. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/1.5), -.8) * angles(math.rad(-37), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
  1635. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+25*math.sin(sine/1.5)),math.rad(0),math.rad(0+5*math.sin(sine/3)) + RootPart.RotVelocity.Y / 13),.1)
  1636. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.3) * angles(math.rad(-72-8*math.sin(sine/1.5))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(1+0*math.cos(sine/3))- RootPart.RotVelocity.Y / 34),.25)
  1637. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.3)*angles(math.rad(-72-8*math.sin(sine/1.5))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-1+0*math.cos(sine/3))+ RootPart.RotVelocity.Y / -34),.25)
  1638. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.32*math.cos(sine/3), 0-0.42*math.cos(sine/3)) * CFrame.Angles(math.rad(0+134*math.sin(sine/3)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.44)
  1639. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.32*math.cos(sine/3),0+0.42*math.cos(sine/3)) * CFrame.Angles(math.rad(0-134*math.sin(sine/3)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.44)
  1640. end
  1641.  
  1642. --[[
  1643. if attack==false then
  1644. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.4*math.cos(sine/5.5)/2, 0 *math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + -math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
  1645. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.4*math.cos(sine/5.5)/2,0 *-math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
  1646. end
  1647. ]]
  1648. if attack==true and noleg == false then
  1649. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.24*math.cos(sine/5), 0.+0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0-74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
  1650. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.24*math.cos(sine/5),0.-0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0+74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
  1651. end
  1652.  
  1653.  
  1654.  
  1655. elseif torvel>=200 and hitfloor~=nil then
  1656. Anim="MachRun"
  1657. change = 0.84+ Character.Humanoid.WalkSpeed/182
  1658. if attack==false and equip == false then
  1659. Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
  1660. Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/1), -3.8) * angles(math.rad(-44), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .2)
  1661. Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+25*math.sin(sine/1)),math.rad(0),math.rad(0+5*math.sin(sine/2)) + RootPart.RotVelocity.Y / 13),.2)
  1662. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.5) * angles(math.rad(-78-12*math.sin(sine/1))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(-24+0*math.cos(sine/2))- RootPart.RotVelocity.Y / 34),.35)
  1663. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.5)*angles(math.rad(-78-12*math.sin(sine/1))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(24+0*math.cos(sine/2))+ RootPart.RotVelocity.Y / -34),.35)
  1664. LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.42*math.cos(sine/2), 0-0.62*math.cos(sine/2)) * CFrame.Angles(math.rad(0+134*math.sin(sine/2)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.52)
  1665. RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.42*math.cos(sine/2),0+0.62*math.cos(sine/2)) * CFrame.Angles(math.rad(0-134*math.sin(sine/2)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.52)
  1666. end
  1667.  
  1668.  
  1669.  
  1670. end
  1671.  
  1672.  
  1673.  
  1674.  
  1675.  
  1676.  
  1677.  
  1678.  
  1679.  
  1680. if 0 < #Effects then
  1681. for e = 1, #Effects do
  1682. if Effects[e] ~= nil then
  1683. local Thing = Effects[e]
  1684. if Thing ~= nil then
  1685. local Part = Thing[1]
  1686. local Mode = Thing[2]
  1687. local Delay = Thing[3]
  1688. local IncX = Thing[4]
  1689. local IncY = Thing[5]
  1690. local IncZ = Thing[6]
  1691. if Thing[1].Transparency <= 1 then
  1692. if Thing[2] == "Block1" then
  1693. Thing[1].CFrame = Thing[1].CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1694. Mesh = Thing[1]:FindFirstChild("Mesh")
  1695. if not Mesh then
  1696. Mesh = Instance.new("BlockMesh")
  1697. end
  1698. Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1699. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1700. elseif Thing[2] == "Cylinder" then
  1701. Mesh = Thing[1]:FindFirstChild("Mesh")
  1702. if not Mesh then
  1703. Mesh = Instance.new("BlockMesh")
  1704. end
  1705. Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1706. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1707. elseif Thing[2] == "Blood" then
  1708. Mesh = Thing[1]:FindFirstChild("Mesh")
  1709. if not Mesh then
  1710. Mesh = Instance.new("BlockMesh")
  1711. end
  1712. Thing[1].CFrame = Thing[1].CFrame * cf(0, 0.5, 0)
  1713. Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1714. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1715. elseif Thing[2] == "Elec" then
  1716. Mesh = Thing[1]:FindFirstChild("Mesh")
  1717. if not Mesh then
  1718. Mesh = Instance.new("BlockMesh")
  1719. end
  1720. Mesh.Scale = Mesh.Scale + vt(Thing[7], Thing[8], Thing[9])
  1721. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1722. elseif Thing[2] == "Disappear" then
  1723. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1724. end
  1725. else
  1726. Part.Parent = nil
  1727. game:GetService("Debris"):AddItem(Part, 0)
  1728. table.remove(Effects, e)
  1729. end
  1730. end
  1731. end
  1732. end
  1733. end
  1734.  
  1735. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement