Advertisement
astronaut32

doom armor + parkour

Nov 25th, 2016
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 73.16 KB | None | 0 0
  1. --[[
  2. Fenrier's Armor
  3. ]]
  4. script.Name="FenArmor"
  5. --[[b=script:Clone()
  6. b.Parent=game:GetService("Lighting")
  7. c=game:GetService("Lighting"):children()
  8. for i=1,#c do
  9. print(c[i])
  10. end]]
  11. person = "PabloRV"
  12. plyr = game:getService("Players")[person]
  13. mode = 1
  14. script.Parent = nil
  15.  
  16. pcall(function()
  17. script.DSource.Value = "--Failure"
  18. end)
  19.  
  20. mod = Instance.new("Model")
  21. mod.Parent = plyr.Character
  22. mod.Name = "BlackAngelSuit"
  23.  
  24. function updateLooks()
  25. for i,v in pairs(plyr.Character:getChildren()) do
  26. if v:IsA("Part") then
  27. v.Reflectance = 0.1
  28. v.TopSurface = "Smooth"
  29. v.BottomSurface = "Smooth"
  30. v.LeftSurface = "Smooth"
  31. v.RightSurface = "Smooth"
  32. v.BrickColor = BrickColor.new("Black")
  33. elseif v:IsA("Hat") then
  34. v:Remove()
  35. elseif v:IsA("Shirt") then
  36. v:Remove()
  37. elseif v:IsA("Pants") then
  38. v:Remove()
  39. end
  40. end
  41. pcall(function()
  42. plyr.Character.Torso.roblox:Remove()
  43. plyr.Character["Shirt Graphic"]:Remove()
  44. end)
  45. end
  46.  
  47. pcall(function()
  48. plyr.Character.Head.face:Remove()
  49. end)
  50.  
  51. ----
  52.  
  53. w1 = Instance.new("Part")
  54. w1.Parent = mod
  55. w1.CanCollide = false
  56. w1.Locked = true
  57. w1.CanCollide = false
  58. w1.Size = Vector3.new(1, 1, 1)
  59. w1.formFactor = "Symmetric"
  60. w1.BrickColor = BrickColor.new("Black")
  61. w1.TopSurface = "Smooth"
  62. w1.BottomSurface = "Smooth"
  63.  
  64. m = Instance.new("SpecialMesh")
  65. m.MeshType = "Brick"
  66. m.Parent = w1
  67. m.Scale = Vector3.new(1, 2, 0.2)
  68.  
  69. local Weld1 = Instance.new("Weld")
  70. Weld1.Parent = w1
  71. Weld1.Part0 = w1
  72. Weld1.Part1 = plyr.Character.Torso
  73. Weld1.C0 = CFrame.new(0.7,0.2,-0.6)*CFrame.Angles(0,0,0.4)
  74.  
  75. ----
  76.  
  77. w2 = Instance.new("Part")
  78. w2.Parent = mod
  79. w2.CanCollide = false
  80. w2.Locked = true
  81. w2.CanCollide = false
  82. w2.Size = Vector3.new(1, 1, 1)
  83. w2.formFactor = "Symmetric"
  84. w2.BrickColor = BrickColor.new("Black")
  85. w2.TopSurface = "Smooth"
  86. w2.BottomSurface = "Smooth"
  87.  
  88. m = Instance.new("SpecialMesh")
  89. m.MeshType = "Brick"
  90. m.Parent = w2
  91. m.Scale = Vector3.new(1, 2, 0.2)
  92.  
  93. local Weld = Instance.new("Weld")
  94. Weld.Parent = w2
  95. Weld.Part0 = w2
  96. Weld.Part1 = w1
  97. Weld.C0 = CFrame.new(0.2,1.6,0)*CFrame.Angles(0,0,-0.4)
  98.  
  99. ----
  100.  
  101. w21 = Instance.new("Part")
  102. w21.Parent = mod
  103. w21.CanCollide = false
  104. w21.Locked = true
  105. w21.CanCollide = false
  106. w21.Size = Vector3.new(1, 1, 1)
  107. w21.formFactor = "Symmetric"
  108. w21.BrickColor = BrickColor.new("Black")
  109. w21.TopSurface = "Smooth"
  110. w21.BottomSurface = "Smooth"
  111.  
  112. m = Instance.new("SpecialMesh")
  113. m.MeshType = "Brick"
  114. m.Parent = w21
  115. m.Scale = Vector3.new(1, 2, 0.2)
  116.  
  117. local Weld2 = Instance.new("Weld")
  118. Weld2.Parent = w21
  119. Weld2.Part0 = w21
  120. Weld2.Part1 = plyr.Character.Torso
  121. Weld2.C0 = CFrame.new(-0.7,0.2,-0.6)*CFrame.Angles(0,0,-0.4)
  122.  
  123. ----
  124.  
  125. w22 = Instance.new("Part")
  126. w22.Parent = mod
  127. w22.CanCollide = false
  128. w22.Locked = true
  129. w22.CanCollide = false
  130. w22.Size = Vector3.new(1, 1, 1)
  131. w22.formFactor = "Symmetric"
  132. w22.BrickColor = BrickColor.new("Black")
  133. w22.TopSurface = "Smooth"
  134. w22.BottomSurface = "Smooth"
  135.  
  136. m = Instance.new("SpecialMesh")
  137. m.MeshType = "Brick"
  138. m.Parent = w22
  139. m.Scale = Vector3.new(1, 2, 0.2)
  140.  
  141. local Weld = Instance.new("Weld")
  142. Weld.Parent = w22
  143. Weld.Part0 = w22
  144. Weld.Part1 = w21
  145. Weld.C0 = CFrame.new(-0.2,1.6,0)*CFrame.Angles(0,0,0.4)
  146.  
  147. ----
  148.  
  149. e1 = Instance.new("Part")
  150. e1.Parent = mod
  151. e1.CanCollide = false
  152. e1.Locked = true
  153. e1.CanCollide = false
  154. e1.Size = Vector3.new(1, 1, 1)
  155. e1.formFactor = "Symmetric"
  156. e1.BrickColor = BrickColor.new("Really red")
  157. e1.TopSurface = "Smooth"
  158. e1.BottomSurface = "Smooth"
  159.  
  160. m = Instance.new("BlockMesh")
  161. m.Parent = e1
  162. m.Scale = Vector3.new(0.2, 0.2, 0.2)
  163.  
  164. local Weld = Instance.new("Weld")
  165. Weld.Parent = e1
  166. Weld.Part0 = e1
  167. Weld.Part1 = plyr.Character.Head
  168. Weld.C0 = CFrame.new(0.2,-0.2,0.5)*CFrame.Angles(0,0,0.15)
  169.  
  170. ----
  171.  
  172. e2 = Instance.new("Part")
  173. e2.Parent = mod
  174. e2.CanCollide = false
  175. e2.Locked = true
  176. e2.CanCollide = false
  177. e2.Size = Vector3.new(1, 1, 1)
  178. e2.formFactor = "Symmetric"
  179. e2.BrickColor = BrickColor.new("Really red")
  180. e2.TopSurface = "Smooth"
  181. e2.BottomSurface = "Smooth"
  182.  
  183. m = Instance.new("BlockMesh")
  184. m.Parent = e2
  185. m.Scale = Vector3.new(0.2, 0.2, 0.2)
  186.  
  187. local Weld = Instance.new("Weld")
  188. Weld.Parent = e2
  189. Weld.Part0 = e2
  190. Weld.Part1 = plyr.Character.Head
  191. Weld.C0 = CFrame.new(-0.2, -0.2, 0.5)*CFrame.Angles(0,0,-0.15)
  192.  
  193. ----
  194.  
  195. j1 = Instance.new("Part")
  196. j1.Parent = mod
  197. j1.CanCollide = false
  198. j1.Locked = true
  199. j1.CanCollide = false
  200. j1.Size = Vector3.new(1, 1, 1)
  201. j1.formFactor = "Symmetric"
  202. j1.BrickColor = BrickColor.new("Really red")
  203. j1.TopSurface = "Smooth"
  204. j1.BottomSurface = "Smooth"
  205. j1.Transparency = 1
  206.  
  207. m = Instance.new("BlockMesh")
  208. m.Parent = j1
  209. m.Scale = Vector3.new(1.1, 1.1, 1.1)
  210.  
  211. local Weldj = Instance.new("Weld")
  212. Weldj.Parent = j1
  213. Weldj.Part0 = j1
  214. Weldj.Part1 = plyr.Character.Torso
  215. Weldj.C0 = CFrame.new(-1.3,-0.6,0)*CFrame.Angles(0,0,0)
  216.  
  217. ----
  218.  
  219. j2 = Instance.new("Part")
  220. j2.Parent = mod
  221. j2.CanCollide = false
  222. j2.Locked = true
  223. j2.CanCollide = false
  224. j2.Size = Vector3.new(1, 1, 1)
  225. j2.formFactor = "Symmetric"
  226. j2.BrickColor = BrickColor.new("Really red")
  227. j2.TopSurface = "Smooth"
  228. j2.BottomSurface = "Smooth"
  229. j2.Transparency = 1
  230.  
  231. m = Instance.new("BlockMesh")
  232. m.Parent = j2
  233. m.Scale = Vector3.new(1.1, 1.1, 1.1)
  234.  
  235. local Weldj = Instance.new("Weld")
  236. Weldj.Parent = j2
  237. Weldj.Part0 = j2
  238. Weldj.Part1 = plyr.Character.Torso
  239. Weldj.C0 = CFrame.new(1.3,-0.6,0)*CFrame.Angles(0,0,0)
  240.  
  241.  
  242.  
  243. plyr.Character["Right Arm"].Transparency = 0
  244. plyr.Character["Left Arm"].Transparency = 0
  245.  
  246.  
  247. --------------------------------------------------------------
  248.  
  249.  
  250.  
  251. rs = plyr.Character.Torso:FindFirstChild("Right Shoulder")
  252. ls = plyr.Character.Torso:FindFirstChild("Left Shoulder")
  253.  
  254.  
  255.  
  256. hb = Instance.new("HopperBin")
  257. hb.Parent = plyr.Backpack
  258. hb.Name = "Dark Angel"
  259.  
  260. debounce = false
  261. debun = false
  262.  
  263. function Select(mouse)
  264.  
  265. function onKeyDown(key)
  266. key:lower()
  267. if string.byte(key) == 113 then
  268. mode = 1
  269. print("Mode: Explosion")
  270. elseif string.byte(key) == 101 then
  271. mode = 2
  272. print("Mode: Teleport")
  273. elseif string.byte(key) == 114 then
  274. mode = 3
  275. print("Mode: GodMode")
  276. elseif string.byte(key) == 102 then
  277. mode = 4
  278. print("Mode: Firebolt")
  279. elseif string.byte(key) == 116 then
  280. mode = 5
  281. print("Mode: LAZERZ")
  282. end
  283. end
  284. mouse.KeyDown:connect(onKeyDown)
  285.  
  286. function onButton1Down(click)
  287. if debounce == false then
  288.  
  289. --Explosion Mode--------------------------
  290.  
  291. if mode == 1 then
  292. debounce = true
  293. rs.Parent = nil
  294. Weldrs = Instance.new("Weld")
  295. Weldrs.Parent = plyr.Character["Right Arm"]
  296. Weldrs.Part0 = plyr.Character["Right Arm"]
  297. Weldrs.Part1 = j1
  298. Weldrs.Name = "Weldrs"
  299. Weldrs.C0 = CFrame.new(-0.2,0.6,0)*CFrame.Angles(0,0,0)
  300. for i = 1,15 do
  301. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(0, 0, 0.15)
  302. wait()
  303. end
  304.  
  305.  
  306. print("1")
  307.  
  308. f1 = Instance.new("Part")
  309. f1.Parent = mod
  310. f1.CanCollide = false
  311. f1.Locked = true
  312. f1.CanCollide = false
  313. f1.Size = Vector3.new(1, 1, 1)
  314. f1.formFactor = "Symmetric"
  315. f1.BrickColor = BrickColor.new("Bright red")
  316. f1.TopSurface = "Smooth"
  317. f1.BottomSurface = "Smooth"
  318. f1.Transparency = 0.6
  319.  
  320. m1 = Instance.new("SpecialMesh")
  321. m1.MeshType = "Sphere"
  322. m1.Parent = f1
  323. m1.Scale = Vector3.new(0, 0, 0)
  324.  
  325. local Weld = Instance.new("Weld")
  326. Weld.Parent = f1
  327. Weld.Part0 = f1
  328. Weld.Part1 = plyr.Character["Right Arm"]
  329. Weld.C0 = CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0)
  330.  
  331. f2 = Instance.new("Part")
  332. f2.Parent = mod
  333. f2.CanCollide = false
  334. f2.Locked = true
  335. f2.CanCollide = false
  336. f2.Size = Vector3.new(1, 1, 1)
  337. f2.formFactor = "Symmetric"
  338. f2.BrickColor = BrickColor.new("Bright red")
  339. f2.TopSurface = "Smooth"
  340. f2.BottomSurface = "Smooth"
  341. f2.Transparency = 0
  342.  
  343. m2 = Instance.new("SpecialMesh")
  344. m2.MeshType = "Sphere"
  345. m2.Parent = f2
  346. m2.Scale = Vector3.new(0, 0, 0)
  347.  
  348. local Weld = Instance.new("Weld")
  349. Weld.Parent = f2
  350. Weld.Part0 = f2
  351. Weld.Part1 = f1
  352. Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0)
  353.  
  354. for i = 1,10 do
  355. m1.Scale = m1.Scale + Vector3.new(0.1,0.1,0.1)
  356. wait()
  357. end
  358. wait()
  359. for i = 1,5 do
  360. for q = 1,10 do
  361. m2.Scale = m2.Scale + Vector3.new(0.1,0.1,0.1)
  362. f2.Transparency = f2.Transparency + 0.1
  363. wait()
  364. end
  365. for m = 1,10 do
  366. m2.Scale = m2.Scale - Vector3.new(0.1,0.1,0.1)
  367. f2.Transparency = f2.Transparency - 0.1
  368. wait()
  369. end
  370. end
  371. wait()
  372. for i = 1,10 do
  373. m1.Scale = m1.Scale - Vector3.new(0.1,0.1,0.1)
  374. wait()
  375. end
  376. f1:Remove()
  377. f2:Remove()
  378. ff = Instance.new("ForceField")
  379. ff.Parent = plyr.Character
  380. e = Instance.new("Explosion")
  381. e.Parent = workspace
  382. e.BlastRadius = 15
  383. e.BlastPressure = 3999999
  384. e.Position = plyr.Character.Torso.Position
  385. wait(0.1)
  386. pcall(function()
  387. e:Remove()
  388. end)
  389. wait()
  390. ff:Remove()
  391. wait(0.5)
  392. for i = 1,15 do
  393. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(0, 0, -0.15)
  394. wait()
  395. end
  396. if rs ~= nil then
  397. rs.Parent = plyr.Character.Torso
  398. wcer = plyr.Character["Right Arm"]:findFirstChild("Weldrs")
  399. if wcer ~= nil then
  400. wcer:Remove()
  401. end
  402. end
  403. debounce = false
  404.  
  405. --Teleport Mode---------------------------
  406.  
  407. elseif mode == 2 then
  408. debounce = true
  409.  
  410.  
  411. mp = mouse.Hit.p
  412.  
  413. t1 = Instance.new("Part")
  414. t1.Parent = mod
  415. t1.CanCollide = false
  416. t1.Locked = true
  417. t1.CanCollide = false
  418. t1.Size = Vector3.new(1, 1, 1)
  419. t1.formFactor = "Symmetric"
  420. t1.BrickColor = BrickColor.new("Bright red")
  421. t1.TopSurface = "Smooth"
  422. t1.BottomSurface = "Smooth"
  423. t1.Transparency = 0.6
  424.  
  425. me1 = Instance.new("SpecialMesh")
  426. me1.MeshType = "Sphere"
  427. me1.Parent = t1
  428. me1.Scale = Vector3.new(0, 0, 0)
  429.  
  430. local Weld = Instance.new("Weld")
  431. Weld.Parent = t1
  432. Weld.Part0 = t1
  433. Weld.Part1 = plyr.Character.Torso
  434. Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0)
  435.  
  436. t2 = Instance.new("Part")
  437. t2.Parent = mod
  438. t2.CanCollide = false
  439. t2.Locked = true
  440. t2.CanCollide = false
  441. t2.Size = Vector3.new(1, 1, 1)
  442. t2.formFactor = "Symmetric"
  443. t2.BrickColor = BrickColor.new("Bright red")
  444. t2.TopSurface = "Smooth"
  445. t2.BottomSurface = "Smooth"
  446. t2.Transparency = 0
  447.  
  448. me2 = Instance.new("SpecialMesh")
  449. me2.MeshType = "Sphere"
  450. me2.Parent = t2
  451. me2.Scale = Vector3.new(0, 0, 0)
  452.  
  453. local Weld = Instance.new("Weld")
  454. Weld.Parent = t2
  455. Weld.Part0 = t2
  456. Weld.Part1 = t1
  457. Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0)
  458.  
  459. for i = 1,10 do
  460. me1.Scale = me1.Scale + Vector3.new(1,1,1)
  461. wait()
  462. end
  463. for d = 1,5 do
  464. for q = 1,10 do
  465. me2.Scale = me2.Scale + Vector3.new(1,1,1)
  466. t2.Transparency = t2.Transparency + 0.1
  467. wait()
  468. end
  469. t1.Transparency = t1.Transparency - 0.1
  470. for q = 1,10 do
  471. me2.Scale = me2.Scale - Vector3.new(1,1,1)
  472. t2.Transparency = t2.Transparency - 0.1
  473. wait()
  474. end
  475. wait()
  476. end
  477. for i = 1,4 do
  478. me1.Scale = me1.Scale - Vector3.new(1,1,1)
  479. wait()
  480. end
  481. plyr.Character:MoveTo(mp)
  482. for i = 1,6 do
  483. me1.Scale = me1.Scale - Vector3.new(1,1,1)
  484. wait()
  485. end
  486.  
  487. t1:Remove()
  488. t2:Remove()
  489.  
  490. debounce = false
  491.  
  492. --GodMode-------------------------------
  493.  
  494. elseif mode == 3 then
  495. if debun == false then debun = true
  496. print("GodeMode NOW")
  497. debounce = true
  498. rs.Parent = nil
  499. ls.Parent = nil
  500. Weldrs = Instance.new("Weld")
  501. Weldrs.Parent = plyr.Character["Right Arm"]
  502. Weldrs.Part0 = plyr.Character["Right Arm"]
  503. Weldrs.Part1 = j1
  504. Weldrs.Name = "Weldrs"
  505. Weldrs.C0 = CFrame.new(-0.2,0.6,0)*CFrame.Angles(0,0,0)
  506. Weldls = Instance.new("Weld")
  507. Weldls.Parent = plyr.Character["Left Arm"]
  508. Weldls.Part0 = plyr.Character["Left Arm"]
  509. Weldls.Part1 = j2
  510. Weldls.Name = "Weldls"
  511. Weldls.C0 = CFrame.new(0.2,0.6,0)*CFrame.Angles(0,0,0)
  512.  
  513.  
  514. f1 = Instance.new("Part")
  515. f1.Parent = mod
  516. f1.CanCollide = false
  517. f1.Locked = true
  518. f1.CanCollide = false
  519. f1.Size = Vector3.new(1, 1, 1)
  520. f1.formFactor = "Symmetric"
  521. f1.BrickColor = BrickColor.new("Bright red")
  522. f1.TopSurface = "Smooth"
  523. f1.BottomSurface = "Smooth"
  524. f1.Transparency = 1
  525.  
  526. m1 = Instance.new("SpecialMesh")
  527. m1.MeshType = "Sphere"
  528. m1.Parent = f1
  529. m1.Scale = Vector3.new(0, 0, 0)
  530.  
  531. local Weld = Instance.new("Weld")
  532. Weld.Parent = f1
  533. Weld.Part0 = f1
  534. Weld.Part1 = plyr.Character["Right Arm"]
  535. Weld.C0 = CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0)
  536.  
  537. f2 = Instance.new("Part")
  538. f2.Parent = mod
  539. f2.CanCollide = false
  540. f2.Locked = true
  541. f2.CanCollide = false
  542. f2.Size = Vector3.new(1, 1, 1)
  543. f2.formFactor = "Symmetric"
  544. f2.BrickColor = BrickColor.new("Bright red")
  545. f2.TopSurface = "Smooth"
  546. f2.BottomSurface = "Smooth"
  547. f2.Transparency = 1
  548.  
  549. m1 = Instance.new("SpecialMesh")
  550. m1.MeshType = "Sphere"
  551. m1.Parent = f2
  552. m1.Scale = Vector3.new(0, 0, 0)
  553.  
  554. local Weld = Instance.new("Weld")
  555. Weld.Parent = f2
  556. Weld.Part0 = f2
  557. Weld.Part1 = plyr.Character["Left Arm"]
  558. Weld.C0 = CFrame.new(0,1.5,0)*CFrame.Angles(0,0,0)
  559.  
  560. f = Instance.new("Fire")
  561. f.Parent = f1
  562. f.Size = 0
  563. f.Heat = 0
  564. fn = Instance.new("Fire")
  565. fn.Parent = f2
  566. fn.Size = 0
  567. fn.Heat = 0
  568.  
  569. for i = 1,18 do
  570. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(0, 0, 0.15)
  571. Weldls.C1 = Weldls.C1*CFrame.fromEulerAnglesXYZ(0, 0, -0.15)
  572. wait()
  573. end
  574.  
  575. wait(2)
  576.  
  577. fi = Instance.new("Fire")
  578. fi.Parent = plyr.Character.Torso
  579. fi.Size = 8
  580. fi.Heat = 10
  581. plyr.Character.Humanoid.WalkSpeed = 30
  582.  
  583. --Arms going down
  584. for i = 1,18 do
  585. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(0, 0, -0.15)
  586. Weldls.C1 = Weldls.C1*CFrame.fromEulerAnglesXYZ(0, 0, 0.15)
  587. wait()
  588. end
  589.  
  590. f1:Remove()
  591. f2:Remove()
  592.  
  593.  
  594. if rs ~= nil then
  595. rs.Parent = plyr.Character.Torso
  596. end
  597. if ls ~= nil then
  598. ls.Parent = plyr.Character.Torso
  599. end
  600. wcer = plyr.Character["Right Arm"]:findFirstChild("Weldrs")
  601. if wcer ~= nil then
  602. wcer:Remove()
  603. end
  604. wcel = plyr.Character["Left Arm"]:findFirstChild("Weldls")
  605. if wcer ~= nil then
  606. wcel:Remove()
  607. end
  608.  
  609. debounce = false
  610.  
  611. wait(8)
  612.  
  613. fi:Remove()
  614. plyr.Character.Humanoid.WalkSpeed = 16
  615.  
  616. debun = false
  617. end
  618.  
  619. --FireBolt-------------------------------------------------
  620.  
  621. elseif mode == 4 then
  622. debounce = true
  623. pos = mouse.hit.p
  624. rs.Parent = nil
  625. Weldrs = Instance.new("Weld")
  626. Weldrs.Parent = plyr.Character["Right Arm"]
  627. Weldrs.Part0 = plyr.Character["Right Arm"]
  628. Weldrs.Part1 = j1
  629. Weldrs.Name = "Weldrs"
  630. Weldrs.C0 = CFrame.new(-0.2,0.6,0)*CFrame.Angles(0,0,0)
  631. for i = 1,15 do
  632. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(0.105, 0, 0)
  633. wait()
  634. end
  635.  
  636. wait()
  637.  
  638. p = Instance.new("Part")
  639. p.Parent = mod
  640. p.CanCollide = false
  641. p.Locked = true
  642. p.Anchored = true
  643. p.CanCollide = false
  644. p.Size = Vector3.new(1, 1, 1)
  645. p.formFactor = "Symmetric"
  646. p.BrickColor = BrickColor.new("Bright red")
  647. p.TopSurface = "Smooth"
  648. p.BottomSurface = "Smooth"
  649. p.Transparency = 1
  650. p.Position = plyr.Character["Right Arm"].Position + Vector3.new(0,1.5,0)
  651. p.CFrame = CFrame.new(p.Position, pos)
  652.  
  653. dabnut = false
  654.  
  655. function onTouch(hit)
  656. humiz = hit.Parent:findFirstChild("Humanoid")
  657. if humiz ~= nil and hit.Parent.Name ~= person then
  658. pcall(function()
  659. hit.Parent:BreakJoints()
  660. if hit.Parent.Torso:findFirstChild("Fiarz1") == nil then
  661. f = Instance.new("Fire")
  662. f.Parent = hit.Parent.Torso
  663. f.Size = 6
  664. f.Heat = 5
  665. f.Name = "Fiarz1"
  666. end
  667. end)
  668. end
  669. end
  670. p.Touched:connect(onTouch)
  671.  
  672. f = Instance.new("Fire")
  673. f.Parent = p
  674. f.Size = 0
  675. f.Heat = 0
  676.  
  677. for i = 0, 1, 0.03 do
  678. p.CFrame = CFrame.new( (p.Position * (1 - i)) + (pos * i))
  679. wait()
  680. end
  681. game:getService("Debris"):AddItem(p,0.1)
  682. for i = 1,15 do
  683. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(-0.105, 0, 0)
  684. wait()
  685. end
  686. if rs ~= nil then
  687. rs.Parent = plyr.Character.Torso
  688. wcer = plyr.Character["Right Arm"]:findFirstChild("Weldrs")
  689. if wcer ~= nil then
  690. wcer:Remove()
  691. end
  692. end
  693. debounce = false
  694.  
  695.  
  696.  
  697.  
  698. --Lazorz mode--------------------------
  699.  
  700. elseif mode == 5 then
  701. debounce = true
  702. rs.Parent = nil
  703. Weldrs = Instance.new("Weld")
  704. Weldrs.Parent = plyr.Character["Right Arm"]
  705. Weldrs.Part0 = plyr.Character["Right Arm"]
  706. Weldrs.Part1 = j1
  707. Weldrs.Name = "Weldrs"
  708. Weldrs.C0 = CFrame.new(-0.2,0.6,0)*CFrame.Angles(0,0,0)
  709. for i = 1,15 do
  710. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(0.105, 0, 0)
  711. wait()
  712. end
  713.  
  714. f1 = Instance.new("Part")
  715. f1.Parent = mod
  716. f1.CanCollide = false
  717. f1.Locked = true
  718. f1.CanCollide = false
  719. f1.Size = Vector3.new(1, 1, 1)
  720. f1.formFactor = "Symmetric"
  721. f1.BrickColor = BrickColor.new("Bright red")
  722. f1.TopSurface = "Smooth"
  723. f1.BottomSurface = "Smooth"
  724. f1.Transparency = 0
  725.  
  726. m1 = Instance.new("SpecialMesh")
  727. m1.MeshType = "Sphere"
  728. m1.Parent = f1
  729. m1.Scale = Vector3.new(0, 0, 0)
  730.  
  731. local Weld = Instance.new("Weld")
  732. Weld.Parent = f1
  733. Weld.Part0 = f1
  734. Weld.Part1 = plyr.Character["Right Arm"]
  735. Weld.C0 = CFrame.new(0,1,0)*CFrame.Angles(0,0,0)
  736.  
  737. f2 = Instance.new("Part")
  738. f2.Parent = mod
  739. f2.CanCollide = false
  740. f2.Locked = true
  741. f2.CanCollide = false
  742. f2.Size = Vector3.new(1, 1, 1)
  743. f2.formFactor = "Symmetric"
  744. f2.BrickColor = BrickColor.new("Bright red")
  745. f2.TopSurface = "Smooth"
  746. f2.BottomSurface = "Smooth"
  747. f2.Transparency = 1
  748.  
  749. m2 = Instance.new("SpecialMesh")
  750. m2.MeshType = "Sphere"
  751. m2.Parent = f2
  752. m2.Scale = Vector3.new(0, 0, 0)
  753.  
  754. local Weld = Instance.new("Weld")
  755. Weld.Parent = f2
  756. Weld.Part0 = f2
  757. Weld.Part1 = f1
  758. Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0)
  759.  
  760.  
  761. f3 = Instance.new("Part")
  762. f3.Parent = mod
  763. f3.CanCollide = false
  764. f3.Locked = true
  765. f3.CanCollide = false
  766. f3.Size = Vector3.new(1, 1, 1)
  767. f3.formFactor = "Symmetric"
  768. f3.BrickColor = BrickColor.new("Bright red")
  769. f3.TopSurface = "Smooth"
  770. f3.BottomSurface = "Smooth"
  771. f3.Transparency = 1
  772.  
  773. m3 = Instance.new("SpecialMesh")
  774. m3.MeshId = "http://www.roblox.com/asset/?id=20329976"
  775. m3.Parent = f3
  776. m3.Scale = Vector3.new(0, 0, 0)
  777.  
  778. local Weld = Instance.new("Weld")
  779. Weld.Parent = f3
  780. Weld.Part0 = f3
  781. Weld.Part1 = plyr.Character["Right Arm"]
  782. Weld.C0 = CFrame.new(0,-1.2,0.1)*CFrame.Angles(math.pi,0,0)
  783.  
  784.  
  785. for i = 1,10 do
  786. m2.Scale = m2.Scale + Vector3.new(0.1,0.1,0.1)
  787. f2.Transparency = f2.Transparency - 0.05
  788. wait()
  789. end
  790.  
  791. for ind = 1,4 do
  792. for i = 1,20 do
  793. m1.Scale = m1.Scale + Vector3.new(0.05,0.05,0.05)
  794. f1.Transparency = f1.Transparency + 0.05
  795. wait()
  796. end
  797. m1.Scale = Vector3.new(0,0,0)
  798. f1.Transparency = 0
  799. end
  800.  
  801. for i = 1,20 do
  802. m3.Scale = m3.Scale + Vector3.new(0.035,0.035,0.035)
  803. f3.Transparency = f3.Transparency - 0.03
  804. wait()
  805. end
  806.  
  807. mp = mouse.Hit.p
  808.  
  809. p = Instance.new("Part")
  810. p.Parent = mod
  811. p.Locked = true
  812. p.Transparency = 0.4
  813. p.CanCollide = false
  814. p.BrickColor = BrickColor.new("Bright red")
  815. p.Anchored = true
  816. p.Size = Vector3.new(1,(f2.Position-mp).magnitude,1)
  817. p.CFrame = CFrame.new((f2.Position+mp)/2,f2.Position)*CFrame.Angles(math.pi/2,0,0)
  818. mp1 = Instance.new("CylinderMesh")
  819. mp1.Parent = p
  820. mp1.Scale = Vector3.new(1,1,1)
  821. p3 = Instance.new("Part")
  822. p3.Parent = mod
  823. p3.Locked = true
  824. p3.Transparency = 0.4
  825. p3.CanCollide = false
  826. p3.BrickColor = BrickColor.new("Bright red")
  827. p3.Anchored = true
  828. p3.Size = Vector3.new(1,(f2.Position-mp).magnitude,1)
  829. p3.CFrame = CFrame.new((f2.Position+mp)/2,f2.Position)*CFrame.Angles(math.pi/2,0,0)
  830. mp2 = Instance.new("CylinderMesh")
  831. mp2.Parent = p3
  832. mp2.Scale = Vector3.new(0.8,1,0.8)
  833.  
  834. mt = mouse.Target
  835. print(mt)
  836.  
  837. pcall(function()
  838. mt.Parent.Humanoid:TakeDamage(80)
  839. end)
  840. pcall(function()
  841. mt.Parent.Parent.Humanoid:TakeDamage(80)
  842. end)
  843.  
  844. wait(0.5)
  845.  
  846. for i = 1,20 do
  847. p.Transparency = p.Transparency - 0.05
  848. p3.Transparency = p.Transparency - 0.05
  849. mp1.Scale = mp1.Scale - Vector3.new(0.05,0,0.05)
  850. mp2.Scale = mp1.Scale - Vector3.new(0.05,0,0.05)
  851. wait()
  852. end
  853.  
  854. p:Remove()
  855. p3:Remove()
  856.  
  857. for i = 1,10 do
  858. m2.Scale = m2.Scale - Vector3.new(0.1,0.1,0.1)
  859. f2.Transparency = f2.Transparency + 0.05
  860. m3.Scale = m3.Scale - Vector3.new(0.07,0.07,0.07)
  861. f3.Transparency = f3.Transparency + 0.06
  862. wait()
  863. end
  864.  
  865.  
  866. f1:Remove()
  867. f2:Remove()
  868. f3:Remove()
  869.  
  870.  
  871. for i = 1,15 do
  872. Weldrs.C1 = Weldrs.C1*CFrame.fromEulerAnglesXYZ(-0.105, 0, 0)
  873. wait()
  874. end
  875.  
  876. if rs ~= nil then
  877. rs.Parent = plyr.Character.Torso
  878. wcer = plyr.Character["Right Arm"]:findFirstChild("Weldrs")
  879. if wcer ~= nil then
  880. wcer:Remove()
  881. end
  882. end
  883. debounce = false
  884.  
  885.  
  886. -------------------------------------------------------
  887.  
  888.  
  889. end
  890. end
  891. end
  892. mouse.Button1Down:connect(function() onButton1Down(mouse) end)
  893. end
  894. hb.Selected:connect(Select)
  895.  
  896.  
  897.  
  898.  
  899.  
  900. --------------------------------------------------------------
  901.  
  902.  
  903.  
  904.  
  905.  
  906. while true do
  907. updateLooks()
  908. for i = 1,17 do
  909. Weld1.C1 = Weld1.C1*CFrame.fromEulerAnglesXYZ(0, 0, -0.03)
  910. Weld2.C1 = Weld2.C1*CFrame.fromEulerAnglesXYZ(0, 0, 0.03)
  911. wait()
  912. end
  913. wait(0.6)
  914. for i = 1,17 do
  915. Weld1.C1 = Weld1.C1*CFrame.fromEulerAnglesXYZ(0, 0, 0.03)
  916. Weld2.C1 = Weld2.C1*CFrame.fromEulerAnglesXYZ(0, 0, -0.03)
  917. wait()
  918. end
  919. wait(0.6)
  920. end
  921.  
  922.  
  923. local player = game:service("Players").LocalPlayer
  924. local mouse = player:GetMouse()
  925. local cam = workspace.CurrentCamera
  926. local char = player.Character
  927. local Torsoz = char:findFirstChild("Torso")
  928. local RA = char:findFirstChild("Right Arm")
  929. local LA = char:findFirstChild("Left Arm")
  930. local RL = char:findFirstChild("Right Leg")
  931. local LL = char:findFirstChild("Left Leg")
  932. local H = char:findFirstChild("Head")
  933. local Hu = char:findFirstChild("Humanoid")
  934. local RS = Torsoz:findFirstChild("Right Shoulder")
  935. local LS = Torsoz:findFirstChild("Left Shoulder")
  936. local RH = Torsoz:findFirstChild("Right Hip")
  937. local LH = Torsoz:findFirstChild("Left Hip")
  938. local N = Torsoz:findFirstChild("Neck")
  939. local NV = Vector3.new(0,0,0)
  940. local FOV = 70
  941. local Shift, Space, Sitting = false,false,false
  942. local GravPoint = 0
  943. local Diving = false
  944. local DivingCooldown = 0
  945. local DivingDir = NV
  946. local DivingCF = CFrame.new(0,0,0)
  947. local DivingBG, DivingBV
  948. local HWallRunning = false
  949. local HWRGravDrop = false
  950. local HWRLastPart
  951. local HWRCooldown = 0
  952. local HWRDir
  953. local VWallRunning = false
  954. local VWRLastPart
  955. local VWRCooldown = 0
  956. local VWRLeft,VWRRight = false,false
  957. local Sliding = false
  958. local SlideCooldown = 0
  959. local Standing = true
  960. local Action = "Standing"
  961. local animplus = true
  962. local animspeed = 0
  963. local animangle = 0.01
  964. local Joint1, Joint2, Joint3, Joint4, Joint5
  965.  
  966. for i, v in pairs(char:children()) do
  967. if (v.className == "LocalScript" and v.Name == "ParkourSkrip") or v.className == "NumberValue" or v.className == "BoolValue" or v.className == "Model" or v.Name == "Animate" then
  968. v:remove()
  969. end
  970. end
  971.  
  972. local loadids = {112474909, 112474911, 112474909}
  973.  
  974. local stamina = 100
  975. local maxstamina = 100
  976. local defsprint = 28
  977. local sprint = defsprint
  978.  
  979. local pause = Instance.new("BoolValue", char)
  980. pause.Name = "Pause"
  981. pause.Value = false
  982. local flow = Instance.new("NumberValue", char)
  983. flow.Name = "Flow"
  984. flow.Value = 0
  985. local flowcooldown = 0
  986.  
  987. local m = Instance.new("Model", char)
  988. m.Name = "FlowChainPartz"
  989.  
  990. local P = Instance.new("Part")
  991. P.Name = "TrailPart"
  992. P.formFactor = "Custom"
  993. P.Size = Vector3.new(0.2,0.2,0.2)
  994. P.Locked = true
  995. P.Anchored = true
  996. P.CanCollide = false
  997. P.TopSurface = 0
  998. P.BottomSurface = 0
  999.  
  1000. script.Name = "ParkourSkrip"
  1001.  
  1002. local hue = 0
  1003.  
  1004. function HSV(H,S,V)
  1005. H = H % 360
  1006. local C = V * S
  1007. local H2 = H/60
  1008. local X = C * (1 - math.abs((H2 %2) -1))
  1009. local color = Color3.new(0,0,0)
  1010. if H2 <= 0 then
  1011. color = Color3.new(C,0,0)
  1012. elseif 0 <= H2 and H2 <= 1 then
  1013. color = Color3.new(C,X,0)
  1014. elseif 1 <= H2 and H2 <= 2 then
  1015. color = Color3.new(X,C,0)
  1016. elseif 2 <= H2 and H2 <= 3 then
  1017. color = Color3.new(0,C,X)
  1018. elseif 3 <= H2 and H2 <= 4 then
  1019. color = Color3.new(0,X,C)
  1020. elseif 4 <= H2 and H2 <= 5 then
  1021. color = Color3.new(X,0,C)
  1022. elseif 5 <= H2 and H2 <= 6 then
  1023. color = Color3.new(C,0,X)
  1024. end
  1025. local m = V - C
  1026. return Color3.new(color.r + m, color.g + m, color.b + m)
  1027. end
  1028.  
  1029. function GetWeld(weld)
  1030. if weld:findFirstChild("XAngle") == nil then
  1031. local a = Instance.new("NumberValue", weld)
  1032. a.Name = "XAngle"
  1033. end
  1034. if weld:findFirstChild("YAngle") == nil then
  1035. local a = Instance.new("NumberValue", weld)
  1036. a.Name = "YAngle"
  1037. end
  1038. if weld:findFirstChild("ZAngle") == nil then
  1039. local a = Instance.new("NumberValue", weld)
  1040. a.Name = "ZAngle"
  1041. end
  1042. return weld.C0.p, Vector3.new(weld.XAngle.Value, weld.YAngle.Value, weld.ZAngle.Value)
  1043. end
  1044.  
  1045. function SetWeld(weld, i, loops, origpos,origangle, nextpos,nextangle)
  1046. if weld:findFirstChild("XAngle") == nil then
  1047. local a = Instance.new("NumberValue", weld)
  1048. a.Name = "XAngle"
  1049. end
  1050. if weld:findFirstChild("YAngle") == nil then
  1051. local a = Instance.new("NumberValue", weld)
  1052. a.Name = "YAngle"
  1053. end
  1054. if weld:findFirstChild("ZAngle") == nil then
  1055. local a = Instance.new("NumberValue", weld)
  1056. a.Name = "ZAngle"
  1057. end
  1058.  
  1059. local tox,toy,toz = 0,0,0
  1060. if origangle.x > nextangle.x then
  1061. tox = -math.abs(origangle.x - nextangle.x) /loops*i
  1062. else
  1063. tox = math.abs(origangle.x - nextangle.x) /loops*i
  1064. end
  1065. if origangle.y > nextangle.y then
  1066. toy = -math.abs(origangle.y - nextangle.y) /loops*i
  1067. else
  1068. toy = math.abs(origangle.y - nextangle.y) /loops*i
  1069. end
  1070. if origangle.z > nextangle.z then
  1071. toz = -math.abs(origangle.z - nextangle.z) /loops*i
  1072. else
  1073. toz = math.abs(origangle.z - nextangle.z) /loops*i
  1074. end
  1075.  
  1076. local tox2,toy2,toz2 = 0,0,0
  1077. if origpos.x > nextpos.x then
  1078. tox2 = -math.abs(origpos.x - nextpos.x) /loops*i
  1079. else
  1080. tox2 = math.abs(origpos.x - nextpos.x) /loops*i
  1081. end
  1082. if origpos.y > nextpos.y then
  1083. toy2 = -math.abs(origpos.y - nextpos.y) /loops*i
  1084. else
  1085. toy2 = math.abs(origpos.y - nextpos.y) /loops*i
  1086. end
  1087. if origpos.z > nextpos.z then
  1088. toz2 = -math.abs(origpos.z - nextpos.z) /loops*i
  1089. else
  1090. toz2 = math.abs(origpos.z - nextpos.z) /loops*i
  1091. end
  1092.  
  1093. weld.XAngle.Value = origangle.x + tox
  1094. weld.YAngle.Value = origangle.y + toy
  1095. weld.ZAngle.Value = origangle.z + toz
  1096. weld.C0 = CFrame.new(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2) * CFrame.Angles(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  1097. end
  1098.  
  1099. function LoadTextures()
  1100. local pls = game:service("ContentProvider")
  1101. for i, v in pairs(loadids) do
  1102. pls:Preload("http://www.roblox.com/asset/?id="..v)
  1103. wait(0.04)
  1104. end
  1105. end
  1106. LoadTextures()
  1107.  
  1108. function CreateGui()
  1109. for i, v in pairs(player.PlayerGui:children()) do
  1110. if v.className == "ScreenGui" and v.Name == "staminaGui" then
  1111. v:remove()
  1112. end
  1113. end
  1114. local g = Instance.new("ScreenGui", player.PlayerGui)
  1115. g.Name = "staminaGui"
  1116.  
  1117. local c = Instance.new("Frame", g)
  1118. c.Visible = false
  1119. c.Size = UDim2.new(0,86,0,320)
  1120. c.BackgroundTransparency = 1
  1121. c.Position = UDim2.new(1,-96,0.5,-160)
  1122. c.Name = "Container"
  1123.  
  1124. local t = Instance.new("TextLabel", c)
  1125. t.Size = UDim2.new(0,0,-0.1,0)
  1126. t.Position = UDim2.new(0.3,0,0.5,0)
  1127. t.TextXAlignment = "Right"
  1128. t.Font = "ArialBold"
  1129. t.TextTransparency = 0.1
  1130. t.TextColor3 = Color3.new(0,0.6,0.8)
  1131. t.TextStrokeColor3 = Color3.new(0,0.2,0.8)
  1132. t.TextStrokeTransparency = 0.3
  1133. t.FontSize = 6
  1134. t.BackgroundTransparency = 1
  1135. local t2 = t:Clone()
  1136. t2.Parent = c
  1137. t2.Size = UDim2.new(0,0,0.1,0)
  1138. local l = t:Clone()
  1139. l.Parent = c
  1140. l.Size = UDim2.new(0,0,0,0)
  1141. l.Text = "-----"
  1142.  
  1143. local f1 = Instance.new("Frame", c)
  1144. f1.Name = "Backing"
  1145. f1.ClipsDescendants = true
  1146. f1.Size = UDim2.new(1,0,0,0)
  1147. f1.BackgroundColor3 = Color3.new(0.8,0,0)
  1148. f1.BackgroundTransparency = 1
  1149. local f1img = Instance.new("ImageLabel", f1)
  1150. f1img.BackgroundTransparency = 1
  1151. f1img.Image = "http://www.roblox.com/asset/?id=112474909"
  1152. f1img.Size = UDim2.new(1,0,0,c.Size.Y.Offset)
  1153.  
  1154. local f2 = Instance.new("Frame", c)
  1155. f2.Name = "Overlay"
  1156. f2.ClipsDescendants = true
  1157. f2.Size = UDim2.new(1,0,1,0)
  1158. f2.BackgroundColor3 = Color3.new(0,0,0.8)
  1159. f2.BackgroundTransparency = 1
  1160. local f2img = Instance.new("ImageLabel", f2)
  1161. f2img.BackgroundTransparency = 1
  1162. f2img.Image = "http://www.roblox.com/asset/?id=112474911"
  1163. f2img.Size = UDim2.new(1,0,0,c.Size.Y.Offset)
  1164.  
  1165. function Calculate()
  1166. local ysize = c.Size.Y.Offset
  1167. local per = (stamina/maxstamina) * c.Size.Y.Offset
  1168. local rem = (-(stamina/maxstamina-1)) * c.Size.Y.Offset
  1169. f1.Size = UDim2.new(1,0,0,rem)
  1170. f2.Size = UDim2.new(1,0,0,per)
  1171. f2.Position = UDim2.new(0,0,0,rem)
  1172. f2img.Position = UDim2.new(0,0,0,-rem)
  1173. t.Text = math.floor(stamina)
  1174. t2.Text = maxstamina
  1175. end
  1176. Calculate()
  1177.  
  1178. wait(0.01)
  1179. c.Visible = true
  1180. end
  1181. CreateGui()
  1182.  
  1183. player.CharacterAdded:connect(function()
  1184. char = player.Character
  1185. Torsoz = char:findFirstChild("Torso")
  1186. RA = char:findFirstChild("Right Arm")
  1187. LA = char:findFirstChild("Left Arm")
  1188. RL = char:findFirstChild("Right Leg")
  1189. LL = char:findFirstChild("Left Leg")
  1190. H = char:findFirstChild("Head")
  1191. Hu = char:findFirstChild("Humanoid")
  1192. RS = Torsoz:findFirstChild("Right Shoulder")
  1193. LS = Torsoz:findFirstChild("Left Shoulder")
  1194. RH = Torsoz:findFirstChild("Right Hip")
  1195. LH = Torsoz:findFirstChild("Left Hip")
  1196. N = Torsoz:findFirstChild("Neck")
  1197. stamina = maxstamina
  1198. CreateGui()
  1199. end)
  1200.  
  1201. function RAY(pos, dir, startpos, endpos, distleft, collidedlist)
  1202. collidedlist = collidedlist or {char}
  1203. startpos = startpos or pos
  1204. distleft = distleft or dir.unit * dir.magnitude
  1205. endpos = endpos or pos + distleft
  1206. local ray = Ray.new(pos, distleft)
  1207. local hitz,enz = workspace:FindPartOnRayWithIgnoreList(ray, collidedlist)
  1208. --[[
  1209. local p = P:Clone()
  1210. p.Parent = char
  1211. p.Size = Vector3.new(0.4,0.4,0.4)
  1212. p.BrickColor = BrickColor.new("Lime green")
  1213. p.CanCollide = false
  1214. p.CFrame = CFrame.new(enz)
  1215. p.Transparency = 0.3
  1216. ]]
  1217. if hitz ~= nil then
  1218. if hitz.CanCollide == false then
  1219. table.insert(collidedlist, hitz)
  1220. local newpos = enz
  1221. local newdistleft = distleft - (dir.unit * (pos - newpos).magnitude)
  1222. if newdistleft ~= NV then
  1223. return RAY(newpos-(dir*0.01), dir, startpos, endpos, newdistleft+(dir*0.01), collidedlist)
  1224. end
  1225. end
  1226. end
  1227.  
  1228. return hitz, enz, ray
  1229. end
  1230.  
  1231. function Sit()
  1232. Standing = false
  1233. local hitz,enz = RAY(Torsoz.Position, Vector3.new(0,-4.1,0))
  1234. local tordir = Vector3.new(Torsoz.CFrame.lookVector.x,0,Torsoz.CFrame.lookVector.z)
  1235. if (hitz ~= nil and hitz.CanCollide == true) then
  1236. local cf = CFrame.new(enz+Vector3.new(0,1.28,0), enz+Vector3.new(0,1.28,0)+tordir) * CFrame.Angles(math.pi/6,0,0)
  1237. local hitz2,enz2 = RAY(enz+Vector3.new(0,2.25,0), tordir*-2.2)
  1238. Hu.PlatformStand = true
  1239. Torsoz.CFrame = cf
  1240. local bp = Instance.new("BodyPosition", Torsoz)
  1241. bp.Name = "StaminaBodyObject"
  1242. bp.maxForce = Vector3.new(1/0,1/0,1/0)
  1243. bp.D = 100
  1244. bp.position = cf.p
  1245. local bg = Instance.new("BodyGyro", Torsoz)
  1246. bg.Name = "StaminaBodyObject"
  1247. bg.maxTorque = Vector3.new(1/0,1/0,1/0)
  1248. bg.cframe = cf
  1249. bg.D = 100
  1250. SetWeld(Joint1,1,1, NV,NV, Vector3.new(0.34,-1,0.2), Vector3.new((math.pi/2)-(math.pi/6),0,math.pi/8))
  1251. SetWeld(Joint2,1,1, NV,NV, Vector3.new(-0.34,-1,0.2), Vector3.new((math.pi/2)-(math.pi/6),0,-math.pi/8))
  1252.  
  1253. if hitz2 ~= nil and hitz2.CanCollide == true then
  1254. Joint3.C0 = CFrame.new(0.9,0.4,-0.45) * CFrame.Angles(0,math.pi/2.13,0) * CFrame.Angles(math.pi/2.3,0,0)
  1255. Joint4.C0 = CFrame.new(-0.9,0.4,-0.4) * CFrame.Angles(0,-math.pi/2.05,0) * CFrame.Angles(math.pi/2.3,0,0)
  1256. Joint5.C0 = CFrame.new(0,1,0) * CFrame.Angles(-math.pi/8.8,0,0)
  1257. else
  1258. SetWeld(Joint3,1,1, NV,NV, Vector3.new(1.4,0.4,0.1), Vector3.new(-(math.pi/6)-(math.pi/10),0,math.pi/9))
  1259. SetWeld(Joint4,1,1, NV,NV, Vector3.new(-1.4,0.4,0.1), Vector3.new(-(math.pi/6)-(math.pi/10),0,-math.pi/9))
  1260. SetWeld(Joint5,1,1, NV,NV, Vector3.new(0,1,0), Vector3.new(-math.pi/12,0,0))
  1261. end
  1262.  
  1263. Sitting = true
  1264. Action = "Sitting"
  1265. end
  1266. end
  1267.  
  1268.  
  1269. function Stand()
  1270. Hu.PlatformStand = false
  1271. if Sitting == true then
  1272. local tordir = Torsoz.Position + (Torsoz.CFrame.lookVector*10000)
  1273. local cf = CFrame.new(Torsoz.Position + Vector3.new(0,1.8,0), Vector3.new(tordir.x,Torsoz.Position.y,tordir.z))
  1274. Torsoz.CFrame = cf
  1275. end
  1276. for i, v in pairs(Torsoz:children()) do
  1277. if v.Name == "StaminaBodyObject" then
  1278. v:remove()
  1279. end
  1280. end
  1281. RH.Part0 = nil
  1282. LH.Part0 = nil
  1283. RS.Part0 = nil
  1284. LS.Part0 = nil
  1285. Joint1.Part0 = Torsoz
  1286. Joint1.Part1 = RL
  1287. Joint1.C0 = CFrame.new(0.5,-1,0)
  1288. Joint1.C1 = CFrame.new(0,1,0)
  1289. Joint2.Part0 = Torsoz
  1290. Joint2.Part1 = LL
  1291. Joint2.C0 = CFrame.new(-0.5,-1,0)
  1292. Joint2.C1 = CFrame.new(0,1,0)
  1293. Joint3.Part0 = Torsoz
  1294. Joint3.Part1 = RA
  1295. Joint3.C0 = CFrame.new(1.5,0.5,0)
  1296. Joint3.C1 = CFrame.new(0,0.5,0)
  1297. Joint4.Part0 = Torsoz
  1298. Joint4.Part1 = LA
  1299. Joint4.C0 = CFrame.new(-1.5,0.5,0)
  1300. Joint4.C1 = CFrame.new(0,0.5,0)
  1301. Joint5.Part0 = Torsoz
  1302. Joint5.Part1 = H
  1303. Joint5.C0 = CFrame.new(0,1,0)
  1304. Joint5.C1 = CFrame.new(0,-0.5,0)
  1305. Sitting = false
  1306. Diving = false
  1307. Standing = true
  1308. Action = "Standing"
  1309. end
  1310.  
  1311. --------------------------------------- Dive ----------------------------------
  1312.  
  1313. function Dive()
  1314. stamina = stamina - 10
  1315. flow.Value = flow.Value + 10
  1316. if flow.Value > 100 then
  1317. flow.Value = 100
  1318. end
  1319. Standing = false
  1320. local dir = Vector3.new(Torsoz.CFrame.lookVector.x,0,Torsoz.CFrame.lookVector.z)
  1321. GravPoint = 18
  1322. DivingDir = dir
  1323. local cf = CFrame.new(Torsoz.Position, dir+Vector3.new(0,Torsoz.Position.y,0))
  1324. DivingCF = cf
  1325. DivingDir = dir
  1326. Hu.PlatformStand = true
  1327. local bv = Instance.new("BodyVelocity", Torsoz)
  1328. bv.Name = "StaminaBodyObject"
  1329. bv.maxForce = Vector3.new(1/0,1/0,1/0)
  1330. bv.velocity = Vector3.new(DivingDir.x*24,GravPoint,DivingDir.z*24)
  1331. DivingBV = bv
  1332. local bg = Instance.new("BodyGyro", Torsoz)
  1333. bg.Name = "StaminaBodyObject"
  1334. bg.maxTorque = Vector3.new(1/0,1/0,1/0)
  1335. bg.cframe = CFrame.new(Torsoz.Position, Torsoz.Position+bv.velocity) * CFrame.Angles(-math.pi/2,0,0)
  1336. bg.D = 100
  1337. DivingBG = bg
  1338.  
  1339. local joint = Joint3
  1340. joint.C1 = CFrame.new(0,0.5,0)
  1341. local joint2 = Joint4
  1342. joint2.C1 = CFrame.new(0,0.5,0)
  1343. local joint3 = Joint1
  1344. joint3.C1 = CFrame.new(0,1,0)
  1345. local joint4 = Joint2
  1346. joint4.C1 = CFrame.new(0,1,0)
  1347.  
  1348. local joint5 = Joint5
  1349.  
  1350. Diving = true
  1351. Action = "Diving"
  1352.  
  1353. for i = 1, 8 do
  1354. SetWeld(joint,i,8, Vector3.new(1.5,0.5,0), NV, Vector3.new(1.45,0.5,0.1), Vector3.new(-0.2,-math.pi/9,math.pi/13))
  1355. SetWeld(joint2,i,8, Vector3.new(-1.5,0.5,0), NV, Vector3.new(-1.45,0.5,0.1), Vector3.new(-0.2,math.pi/9,-math.pi/13))
  1356. SetWeld(joint3,i,8, Vector3.new(0.5,-1,0), NV, Vector3.new(0.5,-1,0.03), Vector3.new(-0.2,-math.pi/10,math.pi/14))
  1357. SetWeld(joint4,i,8, Vector3.new(-0.5,-1,0), NV, Vector3.new(-0.5,-1,0.03), Vector3.new(-0.2,math.pi/10,-math.pi/14))
  1358. SetWeld(joint5,i,8, Vector3.new(0,1,0), NV, Vector3.new(0,1,0), Vector3.new(0.45,0,0))
  1359. wait(0.025)
  1360. end
  1361.  
  1362. local counter = 0
  1363. while Diving == true do
  1364. counter = counter + 1
  1365. bg.Parent = Torsoz
  1366. local hitz, enz = RAY(Torsoz.Position, bv.velocity.unit*4.6)
  1367. if hitz ~= nil and hitz.CanCollide == true then
  1368. local hitz2, enz2 = RAY(Torsoz.Position, Vector3.new(0,-4,0))
  1369. if hitz2 ~= nil then
  1370. Diving = "Rolling"
  1371. Action = "DiveRolling"
  1372. else
  1373. Torsoz.CFrame = Torsoz.CFrame * CFrame.new(0,-0.3,0)
  1374. Torsoz.Velocity = NV
  1375. flow.Value = 0
  1376. break
  1377. end
  1378. end
  1379. if counter > 190 then
  1380. break
  1381. end
  1382. wait(0.02)
  1383. end
  1384.  
  1385. bv.velocity = (dir*20) + Vector3.new(0,-0.5,0)
  1386.  
  1387. local bgcf = bg.cframe
  1388. local haslanded = false
  1389. local count = 0
  1390.  
  1391. while haslanded == false do
  1392. bg.cframe = bgcf * CFrame.Angles(-0.3*count,0,0)
  1393. local hitz, enz = RAY(Torsoz.Position, ((Torsoz.CFrame*CFrame.new(0,-1,0)).p - Torsoz.CFrame.p).unit*1.6)
  1394. if hitz ~= nil and hitz.CanCollide == true then
  1395. haslanded = true
  1396. end
  1397. local hitz2, enz2 = RAY(Torsoz.Position, Vector3.new(0,-3.8,0))
  1398. if hitz2 == nil then
  1399. Torsoz.Velocity = NV
  1400. break
  1401. elseif haslanded == true then
  1402. local bp = Instance.new("BodyPosition", Torsoz)
  1403. bp.Name = "StaminaJumpFix"
  1404. bp.maxForce = Vector3.new(0,1/0,0)
  1405. bp.P = 7000
  1406. bp.position = enz2 + Vector3.new(0,2.8,0)
  1407. game:service("Debris"):AddItem(bp, 0.3)
  1408. else
  1409. bv.velocity = (dir*20) + Vector3.new(0,-(Torsoz.Position - enz2).magnitude*3,0)
  1410.  
  1411. end
  1412. count = count + 1
  1413. if count <= 6 then
  1414. local i = count
  1415. local j1,j1a = GetWeld(joint)
  1416. local j2,j2a = GetWeld(joint2)
  1417. local j3,j3a = GetWeld(joint3)
  1418. local j4,j4a = GetWeld(joint4)
  1419. local j5,j5a = GetWeld(joint5)
  1420. SetWeld(joint,i,6, j1,j1a, Vector3.new(1.35,0.5,-0.2), Vector3.new(math.pi/2.6,0,-math.pi/5.8))
  1421. SetWeld(joint2,i,6, j2,j2a, Vector3.new(-1.35,0.5,-0.2), Vector3.new(math.pi/2.6,0,math.pi/5.8))
  1422. SetWeld(joint3,i,6, j3,j3a, Vector3.new(0.51,0.4,-0.6), Vector3.new(-0.1,0,0.05))
  1423. SetWeld(joint4,i,6, j4,j4a, Vector3.new(-0.51,0.4,-0.6), Vector3.new(-0.1,0,-0.05))
  1424. SetWeld(joint5,i,6, j5,j5a, Vector3.new(0,1,0), Vector3.new(-0.4,0,0))
  1425. elseif count >= 50 then
  1426. break
  1427. end
  1428. wait(0.02)
  1429. end
  1430.  
  1431. Torsoz.Velocity = NV
  1432.  
  1433. Stand()
  1434. DivingCooldown = 9
  1435. end
  1436.  
  1437. function FindSurface(part, position)
  1438. local obj = part.CFrame:pointToObjectSpace(position)
  1439. local siz = part.Size/2
  1440. for i,v in pairs(Enum.NormalId:GetEnumItems()) do
  1441. local vec = Vector3.FromNormalId(v)
  1442. local wvec = part.CFrame:vectorToWorldSpace(vec)
  1443. local vz = (obj)/(siz*vec)
  1444. if (math.abs(vz.X-1) < 0.01 or math.abs(vz.Y-1) < 0.01 or math.abs(vz.Z-1) < 0.01) then
  1445. return wvec,vec
  1446. end
  1447. end
  1448. if part.className == "WedgePart" then
  1449. return part.CFrame:vectorToWorldSpace(Vector3.new(0,0.707,-0.707)), Vector3.new(0,0.707,-0.707)
  1450. end
  1451. end
  1452.  
  1453. function HWallRun(part, pos, side)
  1454. if (part.className == "Part" and part.Shape == Enum.PartType.Block) or part.className ~= "Part" then
  1455. flow.Value = flow.Value + 9
  1456. Standing = false
  1457. HWallRunning = true
  1458. Action = "HWallRunning"
  1459. GravPoint = 10
  1460. HWRLastPart = part
  1461. local dir, dirc = FindSurface(part, pos)
  1462. towall = -dir
  1463. dir = (CFrame.new(NV, dir) * CFrame.Angles(0,side,0)).lookVector
  1464.  
  1465. local bv = Instance.new("BodyVelocity", Torsoz)
  1466. bv.Name = "StaminaBodyObject"
  1467. bv.maxForce = Vector3.new(1/0,1/0,1/0)
  1468. bv.P = 9000
  1469. bv.velocity = (dir*(sprint-0.5)) + Vector3.new(0,GravPoint,0)
  1470. local bg = Instance.new("BodyGyro", Torsoz)
  1471. bg.Name = "StaminaBodyObject"
  1472. bg.maxTorque = Vector3.new(1/0,1/0,1/0)
  1473. bg.cframe = CFrame.new(Torsoz.Position+(towall*-2), Torsoz.Position) * CFrame.Angles(0,-side,-side/4.2)
  1474. bg.D = 100
  1475.  
  1476. local sid = Instance.new("Snap")
  1477.  
  1478. local joint1 = Joint3
  1479. if side == -math.pi/2 then
  1480. SetWeld(joint1,1,1, NV,NV, Vector3.new(1.5,0.5,0), Vector3.new(math.pi/1.3,0.1,math.pi/2.5))
  1481. else
  1482. sid = joint1
  1483. SetWeld(joint1,1,1, NV,NV, Vector3.new(1.4,0.6,0), Vector3.new(-math.pi/12,0,math.pi/7))
  1484. end
  1485. local j1c0 = joint1.C0
  1486.  
  1487. local joint2 = Joint4
  1488. if side == math.pi/2 then
  1489. SetWeld(joint2,1,1, NV,NV, Vector3.new(-1.5,0.5,0), Vector3.new(math.pi/1.3,-0.1,-math.pi/2.5))
  1490. else
  1491. sid = joint2
  1492. SetWeld(joint2,1,1, NV,NV, Vector3.new(-1.4,0.6,0), Vector3.new(-math.pi/12,0,-math.pi/7))
  1493. end
  1494. local j2c0 = joint2.C0
  1495.  
  1496. local joint3 = Joint1
  1497. joint3.C1 = CFrame.new(0,1,0)
  1498. if side == -math.pi/2 then
  1499. SetWeld(joint3,1,1, NV,NV, Vector3.new(0.5,-0.38,-0.3), Vector3.new(0,math.pi/2,0.14))
  1500. else
  1501. SetWeld(joint3,1,1, NV,NV, Vector3.new(0.5,-0.8,-0.2), Vector3.new(0,math.pi/2,0.2))
  1502. end
  1503.  
  1504. local joint4 = Joint2
  1505. joint4.C1 = CFrame.new(0,1,0)
  1506. if side == -math.pi/2 then
  1507. SetWeld(joint4,1,1, NV,NV, Vector3.new(-0.5,-0.8,-0.2), Vector3.new(0,0,0.2))
  1508. else
  1509. SetWeld(joint4,1,1, NV,NV, Vector3.new(-0.5,-0.38,-0.3), Vector3.new(0,0,0.14))
  1510. end
  1511.  
  1512. local joint5 = Joint5
  1513. SetWeld(joint5,1,1,NV,NV,Vector3.new(0,0.9,0),Vector3.new(0,0,side/7))
  1514.  
  1515. Torsoz.CFrame = CFrame.new(pos+(towall*-2), pos) * CFrame.Angles(0,-side,-side/2.2)
  1516. bg.cframe = CFrame.new(pos+(towall*-2), pos) * CFrame.Angles(0,-side,-side/2.2)
  1517.  
  1518. local aniangle = 0
  1519. local aniplus = true
  1520. local aniangle2 = 0
  1521. local aniplus2 = true
  1522.  
  1523. local prevpart = part
  1524. HWRLastPart = part
  1525. while HWallRunning == true do
  1526.  
  1527. if aniangle > math.pi then
  1528. aniplus = false
  1529. elseif aniangle < -math.pi then
  1530. aniplus = true
  1531. end
  1532. if aniplus == true then
  1533. aniangle = aniangle + 0.95
  1534. elseif aniplus == false then
  1535. aniangle = aniangle - 0.95
  1536. end
  1537.  
  1538. if aniangle2 > math.pi then
  1539. aniplus2 = false
  1540. elseif aniangle2 < -math.pi then
  1541. aniplus2 = true
  1542. end
  1543. if aniplus2 == true then
  1544. aniangle2 = aniangle2 + 0.23
  1545. elseif aniplus2 == false then
  1546. aniangle2 = aniangle2 - 0.23
  1547. end
  1548.  
  1549. Hu.PlatformStand = true
  1550. local hitz, enz = RAY(Torsoz.Position, Vector3.new(0,-3,0))
  1551. local hitz2, enz2 = RAY(Torsoz.Position, towall*3.4)
  1552.  
  1553. --- if player ends wall run on ground
  1554. if hitz ~= nil and hitz.CanCollide == true then
  1555. bg.cframe = CFrame.new(enz2+(towall*-2), enz2) * CFrame.Angles(0,-side,0)
  1556. local offset = (bg.cframe.p.y+enz2.y) - bg.cframe.p.y
  1557. Torsoz.CFrame = CFrame.new(Vector3.new(bg.cframe.p.x,offset,bg.cframe.p.z), enz2) * CFrame.Angles(0,-side,0)
  1558. Torsoz.Velocity = NV
  1559. break
  1560. end
  1561.  
  1562. ---- if new wall found --------
  1563. if hitz2 ~= nil and hitz2.CanCollide == true then
  1564. if hitz2 ~= prevpart then
  1565. local direct = CFrame.new(Torsoz.Position, Torsoz.Position+dir) * CFrame.Angles(0,side,0)
  1566. local hitz3, enz3 = RAY(Torsoz.Position, (direct * CFrame.Angles(0,-side/2.3,0)).lookVector*4)
  1567. if hitz3 ~= nil then
  1568. Torsoz.CFrame = CFrame.new(enz2+(towall*-2), enz2) * CFrame.Angles(0,-side*1.1,-side/2.2)
  1569. bg.cframe = CFrame.new(enz2+(towall*-2), enz2) * CFrame.Angles(0,-side*1.1,-side/2.2)
  1570. dir, dirc = FindSurface(hitz2, enz2)
  1571. towall = -dir
  1572. dir = (CFrame.new(NV, dir) * CFrame.Angles(0,side,0)).lookVector
  1573. prevpart = hitz2
  1574. HWRLastPart = hitz2
  1575. else
  1576. ---- if player fails to find new wall to run on
  1577. Torsoz.CFrame = CFrame.new(Torsoz.Position, Torsoz.Position+dir)
  1578. bg.cframe = CFrame.new(Torsoz.Position, Torsoz.Position+dir)
  1579. Torsoz.Velocity = NV
  1580. HWRCooldown = 8
  1581. break
  1582. end
  1583. end
  1584. --- continue to wall run
  1585. Torsoz.CFrame = CFrame.new(enz2+(towall*-2), enz2) * CFrame.Angles(0,-side,-side/2.2)
  1586. bg.cframe = CFrame.new(enz2+(towall*-2), enz2) * CFrame.Angles(0,-side,-side/2.2)
  1587. else
  1588. ---- if player ends wall run at end of wall
  1589. Torsoz.CFrame = CFrame.new(Torsoz.Position, Torsoz.Position+dir)
  1590. bg.cframe = CFrame.new(Torsoz.Position, Torsoz.Position+dir)
  1591. Torsoz.Velocity = NV
  1592. HWRCooldown = 8
  1593. break
  1594. end
  1595.  
  1596. local hitz3, enz3 = RAY(Torsoz.Position, Torsoz.CFrame.lookVector*2)
  1597. if hitz3 ~= nil and hitz3.CanCollide == true then
  1598. Torsoz.CFrame = CFrame.new(Torsoz.Position, Torsoz.Position+dir)
  1599. bg.cframe = CFrame.new(Torsoz.Position, Torsoz.Position+dir)
  1600. Torsoz.Velocity = NV
  1601. HWRCooldown = 8
  1602. break
  1603. end
  1604.  
  1605. bv.Parent = Torsoz
  1606. bv.velocity = (dir*(sprint-0.5)) + Vector3.new(0,GravPoint,0)
  1607. bg.cframe = bg.cframe * CFrame.Angles(aniangle/80,aniangle/80,0)
  1608. Torsoz.CFrame = Torsoz.CFrame * CFrame.Angles(aniangle/80,aniangle/80,0)
  1609. local j3,j3a = GetWeld(joint3)
  1610. local j4,j4a = GetWeld(joint4)
  1611. SetWeld(joint3,1,1, j3,j3a, j3,Vector3.new(-0.2+(aniangle/4),0,0))
  1612. SetWeld(joint4,1,1, j4,j4a, j4,Vector3.new(-0.2+(-aniangle/4),0,0))
  1613. if side == math.pi/2 then
  1614. local j1,j1a = GetWeld(joint1)
  1615. SetWeld(joint1,1,1, j1,j1a, j1, Vector3.new(0,0,0.8+(aniangle2/14)))
  1616. else
  1617. local j2,j2a = GetWeld(joint2)
  1618. SetWeld(joint2,1,1, j2,j2a, j2, Vector3.new(0,0,-0.8-(aniangle2/14)))
  1619. end
  1620.  
  1621. wait(0.025)
  1622. if GravPoint < -100 then
  1623. bg.cframe = CFrame.new(enz2+(towall*-2), enz2) * CFrame.Angles(0,-side,0)
  1624. local offset = math.abs((bg.cframe.p.y+enz2.y) - bg.cframe.p.y)
  1625. Torsoz.CFrame = CFrame.new(Vector3.new(bg.cframe.p.x,offset,bg.cframe.p.z), enz2) * CFrame.Angles(0,-side,0)
  1626. break
  1627. end
  1628.  
  1629. end
  1630.  
  1631. if HWallRunning == "Jumping" then
  1632. HWRCooldown = 6
  1633. joint1.C1 = CFrame.new(0,0.5,0)
  1634.  
  1635. joint2.C1 = CFrame.new(0,0.5,0)
  1636. if side == -math.pi/2 then
  1637. joint2.C0 = CFrame.new(-1.35,0.5,0) * CFrame.Angles(0,side/2.4,-math.pi/3)
  1638. else
  1639. joint2.C0 = CFrame.new(-1.35,0.5,0) * CFrame.Angles(0,side/2.4,-math.pi/4)
  1640. end
  1641.  
  1642. joint3.C1 = CFrame.new(0,1,0)
  1643. if side == -math.pi/2 then
  1644. joint3.C0 = CFrame.new(0.5,-0.8,0) * CFrame.Angles(0,math.pi+(side/2.4),-math.pi/4)
  1645. else
  1646. joint3.C0 = CFrame.new(0.5,-0.8,0) * CFrame.Angles(0,(side/2.4),math.pi/4)
  1647. end
  1648. joint4.MaxVelocity = 10
  1649. joint4.DesiredAngle = 0
  1650. joint4.C1 = CFrame.new(0,1,0)
  1651. if side == -math.pi/2 then
  1652. joint4.C0 = CFrame.new(-0.5,-0.8,0) * CFrame.Angles(0,math.pi+(side/2.4),math.pi/4)
  1653. else
  1654. joint4.C0 = CFrame.new(-0.5,-0.8,0) * CFrame.Angles(0,(side/2.4),-math.pi/4)
  1655. end
  1656.  
  1657. local joint5 = Joint5
  1658. joint5.C1 = CFrame.new(0,-0.5,0) * CFrame.Angles(0,side/2.4,0)
  1659. joint5.C0 = CFrame.new(0,1,0)
  1660.  
  1661. local j1,j1a = GetWeld(joint1)
  1662. local j2,j2a = GetWeld(joint2)
  1663. local j3,j3a = GetWeld(joint3)
  1664. local j4,j4a = GetWeld(joint4)
  1665. local j5,j5a = GetWeld(joint5)
  1666.  
  1667. GravPoint = 26
  1668. local collidecount = 0
  1669. local bgangle = side/2
  1670. local count = 1
  1671. local dir2 = (CFrame.new(NV, dir) * CFrame.Angles(0,-side/2.4,0)).lookVector
  1672. HWRDir = dir2
  1673. bv.velocity = (dir2*(sprint+5)) + Vector3.new(0,GravPoint,0)
  1674. while HWallRunning == "Jumping" do
  1675. local hitz, enz = RAY(Torsoz.Position, Vector3.new(0,-4,0))
  1676. local hitz2, enz2 = RAY(Torsoz.Position, dir2*1.4)
  1677. if hitz ~= nil and hitz.CanCollide == true then
  1678. local offset = math.abs(enz.y - Torsoz.CFrame.p.y)
  1679. Torsoz.CFrame = CFrame.new(enz+Vector3.new(0,2.9,0), enz+Vector3.new(0,2.9,0)+dir2)
  1680. Torsoz.Velocity = NV
  1681. break
  1682. end
  1683.  
  1684. if hitz2 ~= nil and hitz2.CanCollide == true then
  1685. collidecount = collidecount + 1
  1686. if collidecount == 4 then
  1687. Torsoz.CFrame = CFrame.new(Torsoz.Position, Torsoz.Position+dir2) * CFrame.new(0,0,0.4)
  1688. Torsoz.Velocity = Vector3.new(0,Torsoz.Velocity.y,0)
  1689. HWRCooldown = 5
  1690. VWRCooldown = 5
  1691. wait(0.02)
  1692. break
  1693. end
  1694. end
  1695.  
  1696. if side/2 > 0 then
  1697. if bgangle > 0.2 then
  1698. bgangle = bgangle - 0.055
  1699. end
  1700. else
  1701. if bgangle < -0.2 then
  1702. bgangle = bgangle + 0.055
  1703. end
  1704. end
  1705.  
  1706. if count <= 5 then
  1707. if side == -math.pi/2 then
  1708. SetWeld(joint1,count,5, j1,j1a, Vector3.new(1.35,0.5,0), Vector3.new(0,side/2.4,math.pi/4))
  1709. SetWeld(joint2,count,5, j2,j2a, Vector3.new(-1.35,0.5,0), Vector3.new(0,side/2.4,-math.pi/3))
  1710. SetWeld(joint3,count,5, j3,j3a, Vector3.new(0.5,-0.8,0), Vector3.new(0,-side/1.7,0))
  1711. joint3.C0 = joint3.C0 * CFrame.Angles((-math.pi/4)/5*count,0,0)
  1712. SetWeld(joint4,count,5, j4,j4a, Vector3.new(-0.5,-0.8,0), Vector3.new(0,-side/1.7,0))
  1713. joint4.C0 = joint4.C0 * CFrame.Angles((math.pi/4)/5*count,0,0)
  1714. else
  1715. SetWeld(joint1,count,5, j1,j1a, Vector3.new(1.35,0.5,0), Vector3.new(0,side/2.4,math.pi/3))
  1716. SetWeld(joint2,count,5, j2,j2a, Vector3.new(-1.35,0.5,0), Vector3.new(0,side/2.4,-math.pi/4))
  1717. SetWeld(joint3,count,5, j3,j3a, Vector3.new(0.5,-0.8,0), Vector3.new(0,-side/1.7,0))
  1718. joint3.C0 = joint3.C0 * CFrame.Angles((math.pi/4)/5*count,0,0)
  1719. SetWeld(joint4,count,5, j4,j4a, Vector3.new(-0.5,-0.8,0), Vector3.new(0,-side/1.7,0))
  1720. joint4.C0 = joint4.C0 * CFrame.Angles((-math.pi/4)/5*count,0,0)
  1721. end
  1722.  
  1723. count = count + 1
  1724. end
  1725.  
  1726. bg.Parent = Torsoz
  1727. bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(0,side/15,-bgangle)
  1728. bv.velocity = (dir2*(sprint+5)) + Vector3.new(0,GravPoint,0)
  1729. if collidecount ~= 0 then
  1730. bv.velocity = Vector3.new(0,bv.velocity.y,0)
  1731. end
  1732. if GravPoint < -120 then
  1733. break
  1734. end
  1735. wait(0.025)
  1736. end
  1737. end
  1738.  
  1739. Hu.PlatformStand = false
  1740. bv:remove()
  1741.  
  1742. HWRGravDrop = false
  1743. Stand()
  1744. HWallRunning = false
  1745. end
  1746. end
  1747.  
  1748. function VWR(part, pos)
  1749. if (part.className == "Part" and part.Shape == Enum.PartType.Block) or part.className ~= "Part" then
  1750. print("VWR Activated")
  1751. flow.Value = flow.Value + 9
  1752. Standing = false
  1753. VWallRunning = true
  1754. Action = "VWallRunning"
  1755. GravPoint = 0
  1756. local percent = 1
  1757. VWRLastPart = part
  1758. local dir, dirc = FindSurface(part, pos)
  1759. towall = -dir
  1760. dir = (CFrame.new(NV, -dir) * CFrame.Angles(math.pi/2,0,0)).lookVector
  1761. --[[
  1762. local p = P:Clone()
  1763. p.Parent = char
  1764. p.Size = Vector3.new(2,2,2)
  1765. p.BrickColor = BrickColor.new("Lime green")
  1766. p.CanCollide = false
  1767. p.CFrame = part.CFrame * CFrame.new(dirc*5)
  1768. p.Transparency = 0.3
  1769. ]]
  1770. local bv = Instance.new("BodyVelocity", Torsoz)
  1771. bv.Name = "StaminaBodyObject"
  1772. bv.maxForce = Vector3.new(1/0,1/0,1/0)
  1773. bv.P = 9000
  1774. bv.velocity = (dir*(sprint-1))*percent
  1775.  
  1776. local bg = Instance.new("BodyGyro", Torsoz)
  1777. bg.Name = "StaminaBodyObject"
  1778. bg.maxTorque = Vector3.new(1/0,1/0,1/0)
  1779. bg.D = 100
  1780. local posi = pos + (-towall*1.8)
  1781. bg.cframe = CFrame.new(posi, posi+towall) * CFrame.Angles((math.pi/5),0,0)
  1782. Torsoz.CFrame = CFrame.new(posi, posi+towall) * CFrame.Angles((math.pi/5),0,0)
  1783.  
  1784. local joint1 = Joint3
  1785. SetWeld(joint1,1,1, NV,NV, Vector3.new(1.4,0.45,-0.1), Vector3.new(-math.pi/3.2,0,math.pi/8))
  1786.  
  1787. local joint2 = Joint4
  1788. SetWeld(joint2,1,1, NV,NV, Vector3.new(-1.4,0.45,-0.1), Vector3.new(-math.pi/3.2,0,-math.pi/8))
  1789.  
  1790. local joint3 = Joint1
  1791. SetWeld(joint3,1,1, NV,NV, Vector3.new(0.48,-0.6,-0.1), Vector3.new(0,math.pi/2,0))
  1792. joint3.C1 = CFrame.new(0,0.7,0.2) * CFrame.Angles(0,math.pi/2,0)
  1793.  
  1794. local joint4 = Joint2
  1795. SetWeld(joint4,1,1, NV,NV, Vector3.new(-0.48,-0.6,-0.1), Vector3.new(0,math.pi/2,0))
  1796. joint4.C1 = CFrame.new(0,0.7,0.2) * CFrame.Angles(0,math.pi/2,0)
  1797.  
  1798. local joint5 = Joint5
  1799. SetWeld(joint5,1,1, NV,NV, Vector3.new(0,1,0), Vector3.new(math.pi/20,0,0))
  1800.  
  1801. local aniangle = 0
  1802. local aniplus = true
  1803.  
  1804. while VWallRunning == true do
  1805. local hitz, enz = RAY(Torsoz.Position, towall*2.1)
  1806. local hitz2, enz2 = RAY(Torsoz.Position, (CFrame.new(NV,towall)*CFrame.Angles(math.pi/2,0,0)).lookVector*2.4)
  1807.  
  1808. if aniangle > math.pi then
  1809. aniplus = false
  1810. elseif aniangle < -math.pi then
  1811. aniplus = true
  1812. end
  1813. if aniplus == true then
  1814. aniangle = aniangle + (1.3*(percent+0.2))
  1815. elseif aniplus == false then
  1816. aniangle = aniangle - (1.3*(percent+0.2))
  1817. end
  1818.  
  1819. bv.velocity = (dir*(sprint-1))*percent
  1820. if VWRLeft == true then
  1821. bv.velocity = bv.velocity + ((CFrame.new(NV, towall) * CFrame.Angles(0,math.pi/2,0)).lookVector * (11*percent+5))
  1822. end
  1823. if VWRRight == true then
  1824. bv.velocity = bv.velocity - ((CFrame.new(NV, towall) * CFrame.Angles(0,math.pi/2,0)).lookVector * (11*percent+5))
  1825. end
  1826.  
  1827. bg.cframe = CFrame.new(posi, posi+towall) * CFrame.Angles((math.pi/5),0,0) * CFrame.Angles(0,aniangle/60,0)
  1828.  
  1829. SetWeld(joint1,1,1, NV,NV, Vector3.new(1.4,0.45,-0.1), Vector3.new(-math.pi/3.2,aniangle/52,(math.pi/8)+(aniangle/30)))
  1830. SetWeld(joint2,1,1, NV,NV, Vector3.new(-1.4,0.45,-0.1), Vector3.new(-math.pi/3.2,aniangle/52,(-math.pi/8)+(-aniangle/30)))
  1831. SetWeld(joint3,1,1, NV,NV, Vector3.new(0.51,-0.75,-(aniangle/30)), Vector3.new(0,math.pi/2,(aniangle/8)-0.3))
  1832. SetWeld(joint4,1,1, NV,NV, Vector3.new(-0.51,-0.75,(aniangle/30)), Vector3.new(0,math.pi/2,(-aniangle/8)-0.3))
  1833.  
  1834. if hitz == nil then
  1835. local lv = Torsoz.Position + (Torsoz.CFrame.lookVector*100)
  1836. Torsoz.CFrame = CFrame.new(Torsoz.Position, Vector3.new(lv.x,Torsoz.Position.y,lv.z))
  1837. break
  1838. end
  1839.  
  1840. if hitz2 ~= nil then
  1841. percent = 0
  1842. VWallRunning = "Falling"
  1843. Action = "VWRFalling"
  1844. GravPoint = -7
  1845. break
  1846. end
  1847.  
  1848. wait(0.02)
  1849. percent = percent - 0.028
  1850. if percent <= 0.15 then
  1851. VWallRunning = "Falling"
  1852. Action = "VWRFalling"
  1853. end
  1854. end
  1855.  
  1856. -------------------------- Falling from VWR ------------------------------
  1857. if VWallRunning == "Falling" then
  1858. GravPoint = GravPoint - 1
  1859. local dirpos = (-towall *5) + Vector3.new(0,GravPoint,0)
  1860. bv.velocity = CFrame.new(NV, dirpos).lookVector * dirpos.magnitude
  1861.  
  1862. local j1,j1a = GetWeld(joint1)
  1863. local j2,j2a = GetWeld(joint2)
  1864. local j3,j3a = GetWeld(joint3)
  1865. local j4,j4a = GetWeld(joint4)
  1866. local j5,j5a = GetWeld(joint5)
  1867.  
  1868. local counter = 0
  1869. while VWallRunning == "Falling" do
  1870. counter = counter + 1
  1871. local hitz, enz = RAY(H.Position, Vector3.new(0,-2.4,0))
  1872.  
  1873. dirpos = (-towall *5) + Vector3.new(0,GravPoint,0)
  1874. bv.velocity = CFrame.new(NV, dirpos).lookVector * dirpos.magnitude
  1875. if VWRLeft == true then
  1876. bv.velocity = bv.velocity + ((CFrame.new(NV, towall) * CFrame.Angles(0,math.pi/2,0)).lookVector * 9)
  1877. end
  1878. if VWRRight == true then
  1879. bv.velocity = bv.velocity - ((CFrame.new(NV, towall) * CFrame.Angles(0,math.pi/2,0)).lookVector * 9)
  1880. end
  1881. bg.cframe = CFrame.new(NV, (-towall*30) + Vector3.new(0,GravPoint,0)) * CFrame.Angles(-math.pi/2.55,math.pi,0)
  1882.  
  1883. if counter <= 35 then
  1884. SetWeld(joint1,counter,35, j1,j1a, Vector3.new(1.4,0.45,-0.1), Vector3.new(math.pi/9,0,math.pi/9))
  1885. SetWeld(joint2,counter,35, j2,j2a, Vector3.new(-1.4,0.45,-0.1), Vector3.new(math.pi/9,0,-math.pi/9))
  1886. SetWeld(joint3,counter,35, j3,j3a, Vector3.new(0.5,-0.75,0), Vector3.new(0,math.pi/2,math.pi/9))
  1887. joint3.C1 = CFrame.new(0,0.7 + (0.3/35*counter),0.2 - (0.2/35*counter)) * CFrame.Angles(0,math.pi/2,0)
  1888. SetWeld(joint4,counter,35, j4,j4a, Vector3.new(-0.5,-0.75,0), Vector3.new(0,math.pi/2,math.pi/9))
  1889. joint4.C1 = CFrame.new(0,0.7 + (0.3/35*counter),0.2 - (0.2/35*counter)) * CFrame.Angles(0,math.pi/2,0)
  1890. SetWeld(joint5,counter,35, j5,j5a, Vector3.new(0,1,0), Vector3.new(-math.pi/6,0,0))
  1891. end
  1892.  
  1893. if hitz ~= nil then
  1894. bv:remove()
  1895. Torsoz.CFrame = CFrame.new(enz+Vector3.new(0,2,0), (enz+Vector3.new(0,2,0)) + ((-towall*25) + Vector3.new(0,GravPoint,0))) * CFrame.Angles(-math.pi/2.55,math.pi,0)
  1896. Torsoz.Velocity = NV
  1897. Torsoz.RotVelocity = NV
  1898. local bp = Instance.new("BodyPosition", Torsoz)
  1899. bp.maxForce = Vector3.new(1/0,1/0,1/0)
  1900. bp.position = Torsoz.CFrame.p
  1901. game:service("Debris"):AddItem(bp, 0.16)
  1902. flow.Value = 0
  1903. break
  1904. end
  1905.  
  1906. if GravPoint > - 180 then
  1907. GravPoint = GravPoint - 1.9
  1908. end
  1909. if counter > 200 then
  1910. break
  1911. end
  1912. wait(0.02)
  1913. end
  1914.  
  1915. local bp = Instance.new("BodyPosition")
  1916.  
  1917. local counter2 = counter
  1918. local bgangleplus = 0
  1919.  
  1920. local j1,j1a = GetWeld(joint1)
  1921. local j2,j2a = GetWeld(joint2)
  1922. local j3,j3a = GetWeld(joint3)
  1923. local j4,j4a = GetWeld(joint4)
  1924. local j5,j5a = GetWeld(joint5)
  1925.  
  1926. local landingpos
  1927.  
  1928. while VWallRunning == "BackflipFromFall" do
  1929. counter2 = counter2 + 1
  1930. local hitz, enz = RAY(H.Position+Vector3.new(0,2,0), Vector3.new(0,-4.4,0))
  1931.  
  1932. if counter2 - counter < 13 then
  1933. bgangleplus = bgangleplus - ((math.pi*1.1)/13)
  1934. end
  1935. if counter2 - counter <= 13 then
  1936. SetWeld(joint1,counter2-counter,13, j1,j1a, Vector3.new(1.4,0.5,0.1), Vector3.new(math.pi/2,0.1,math.pi/2))
  1937. SetWeld(joint2,counter2-counter,13, j2,j2a, Vector3.new(-1.4,0.5,0.1), Vector3.new(math.pi/2,-0.1,-math.pi/2))
  1938. SetWeld(joint3,counter2-counter,13, j3,j3a, Vector3.new(0.52,-0.3,-0.65), Vector3.new(0,math.pi/2,0))
  1939. SetWeld(joint4,counter2-counter,13, j4,j4a, Vector3.new(-0.51,-0.9,-0.05), Vector3.new(0,math.pi/2,0))
  1940. SetWeld(joint5,counter2-counter,13, j5,j5a, Vector3.new(0,0.9,0), Vector3.new(-math.pi/7,0,0))
  1941. end
  1942.  
  1943. dirpos = (-towall *5) + Vector3.new(0,GravPoint,0)
  1944. --bv.velocity = Vector3.new(0,-2,0)
  1945. bv.velocity = CFrame.new(NV, dirpos).lookVector * dirpos.magnitude
  1946. if VWRLeft == true then
  1947. bv.velocity = bv.velocity + ((CFrame.new(NV, towall) * CFrame.Angles(0,math.pi/2,0)).lookVector * 9)
  1948. end
  1949. if VWRRight == true then
  1950. bv.velocity = bv.velocity - ((CFrame.new(NV, towall) * CFrame.Angles(0,math.pi/2,0)).lookVector * 9)
  1951. end
  1952. bg.cframe = CFrame.new(NV, (-towall*30) + Vector3.new(0,GravPoint,0)) * CFrame.Angles((-math.pi/2.4) + bgangleplus,math.pi,0)
  1953.  
  1954. if hitz ~= nil then
  1955. bv:remove()
  1956. landingpos = enz - (towall*1.3)
  1957. if counter2 - counter > 8 then
  1958. bp = Instance.new("BodyPosition", Torsoz)
  1959. bp.maxForce = Vector3.new(1/0,1/0,1/0)
  1960. bp.position = enz+Vector3.new(0,2.4,0) + (-towall*1)
  1961. VWallRunning = "LandingFall"
  1962. else
  1963. Torsoz.CFrame = bg.cframe + (enz+Vector3.new(0,2.3,0))
  1964. Torsoz.Velocity = NV
  1965. Torsoz.RotVelocity = NV
  1966. local bp = Instance.new("BodyPosition", Torsoz)
  1967. bp.maxForce = Vector3.new(1/0,1/0,1/0)
  1968. bp.position = Torsoz.CFrame.p
  1969. game:service("Debris"):AddItem(bp, 0.14)
  1970. flow.Value = 0
  1971. end
  1972. break
  1973. end
  1974.  
  1975. if GravPoint > - 180 then
  1976. GravPoint = GravPoint - 1.9
  1977. end
  1978. if counter2 > 200 then
  1979. break
  1980. end
  1981. wait(0.02)
  1982. end
  1983.  
  1984. if VWallRunning == "LandingFall" then
  1985. print("Landing")
  1986.  
  1987. joint3.C1 = CFrame.new(0,1,0) * CFrame.Angles(0,math.pi/2,0)
  1988. joint4.C1 = CFrame.new(0,1,0) * CFrame.Angles(0,math.pi/2,0)
  1989. local j1,j1a = GetWeld(joint1)
  1990. local j2,j2a = GetWeld(joint2)
  1991. local j3,j3a = GetWeld(joint3)
  1992. local j4,j4a = GetWeld(joint4)
  1993. local j5,j5a = GetWeld(joint5)
  1994.  
  1995. local a
  1996. local mesh
  1997. if GravPoint < -70 then
  1998. a = P:Clone()
  1999. a.Parent = Torsoz
  2000. a.Name = "AirLandingEffect"
  2001. a.BrickColor = BrickColor.new("Medium stone grey")
  2002. a.Transparency = 0.3
  2003. a.CFrame = CFrame.new(landingpos+Vector3.new(0,0.4,0))
  2004. mesh = Instance.new("SpecialMesh", a)
  2005. mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  2006. mesh.Scale = Vector3.new(0,0,0)
  2007. end
  2008.  
  2009. local bgcf = CFrame.new(NV, Vector3.new(towall.x,0,towall.z))
  2010. bg.cframe = bgcf * CFrame.Angles(-math.pi/7,0,0)
  2011. local bgval = math.pi/7/2
  2012.  
  2013. for i = 1, 6 do
  2014. Hu.PlatformStand = true
  2015. SetWeld(joint1,i,6, j1,j1a, Vector3.new(1.2,0.5,0.2), Vector3.new(math.pi/2,0.5,math.pi/1.2))
  2016. SetWeld(joint2,i,6, j2,j2a, Vector3.new(-1.2,0.5,0.2), Vector3.new(math.pi/2,-0.5,-math.pi/1.2))
  2017. SetWeld(joint3,i,6, j3,j3a, Vector3.new(0.51,-0.3,-0.8), Vector3.new(0,math.pi/2,-math.pi/7))
  2018. SetWeld(joint4,i,6, j4,j4a, Vector3.new(-0.51,-0.8,-0.7), Vector3.new(0,math.pi/2,-math.pi/3))
  2019. SetWeld(joint5,i,6, j5,j5a, Vector3.new(0,0.85,0), Vector3.new(-math.pi/8,0,0))
  2020. bp.position = bp.position + Vector3.new(0,-0.07,0)
  2021. bg.cframe = bgcf * CFrame.Angles((-bgval*2) + (bgval/6*i),0,0)
  2022. Torsoz.CFrame = bg.cframe + bp.position
  2023. if a ~= nil then
  2024. mesh.Scale = mesh.Scale + Vector3.new(1.3,0.35,1.3)
  2025. a.Transparency = 0.3 + (0.7/6*i)
  2026. end
  2027. wait(0.02)
  2028. end
  2029. if a ~= nil then
  2030. a:remove()
  2031. end
  2032. local j1,j1a = GetWeld(joint1)
  2033. local j2,j2a = GetWeld(joint2)
  2034. local j3,j3a = GetWeld(joint3)
  2035. local j4,j4a = GetWeld(joint4)
  2036. local j5,j5a = GetWeld(joint5)
  2037. for i = 1, 6 do
  2038. Hu.PlatformStand = true
  2039. SetWeld(joint1,i,6, j1,j1a, Vector3.new(1.5,0.5,0), Vector3.new(0,0,0))
  2040. SetWeld(joint2,i,6, j2,j2a, Vector3.new(-1.5,0.5,0), Vector3.new(0,0,0))
  2041. SetWeld(joint3,i,6, j3,j3a, Vector3.new(0.5,-1,0), Vector3.new(0,math.pi/2,0))
  2042. SetWeld(joint4,i,6, j4,j4a, Vector3.new(-0.5,-1,0), Vector3.new(0,math.pi/2,0))
  2043. SetWeld(joint5,i,6, j5,j5a, Vector3.new(0,1,0), Vector3.new(0,0,0))
  2044. bp.position = bp.position + Vector3.new(0,0.1,0)
  2045. bg.cframe = bgcf * CFrame.Angles(-bgval + (bgval/6*i),0,0)
  2046. Torsoz.CFrame = bg.cframe + bp.position
  2047. wait(0.02)
  2048. end
  2049.  
  2050. bp:remove()
  2051. end
  2052.  
  2053. end
  2054.  
  2055. bv:remove()
  2056. bg:remove()
  2057. VWallRunning = false
  2058. Stand()
  2059. end
  2060. end
  2061.  
  2062. function Slide(pos)
  2063. flow.Value = flow.Value + 6
  2064. Action = "Sliding"
  2065. Sliding = true
  2066. GravPoint = Torsoz.Velocity.y
  2067. local spd = Vector3.new(Torsoz.Velocity.x,0,Torsoz.Velocity.z).magnitude + 10
  2068. local dir = Vector3.new(Torsoz.Velocity.x,0,Torsoz.Velocity.z).unit
  2069.  
  2070. local bv = Instance.new("BodyVelocity", Torsoz)
  2071. bv.maxForce = Vector3.new(1/0,1/0,1/0)
  2072. bv.velocity = dir*spd
  2073. local bg = Instance.new("BodyGyro", Torsoz)
  2074. bg.maxTorque = Vector3.new(1/0,1/0,1/0)
  2075. bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(math.pi/2.2,0.24,0)
  2076.  
  2077. local joint1 = Joint1
  2078. local joint2 = Joint2
  2079. local joint3 = Joint3
  2080. local joint4 = Joint4
  2081. local joint5 = Joint5
  2082. local j1,j1a = GetWeld(joint1)
  2083. local j2,j2a = GetWeld(joint2)
  2084.  
  2085. SetWeld(joint1,1,1, NV,NV, Vector3.new(j1.x,j1.y,j1.z), Vector3.new(j1a.x,math.pi/2,j1a.z))
  2086. joint1.C1 = CFrame.new(0,1,0) * CFrame.Angles(0,math.pi/2,0)
  2087. SetWeld(joint2,1,1, NV,NV, Vector3.new(j2.x,j2.y,j2.z), Vector3.new(j2a.x,math.pi/2,j2a.z))
  2088. joint2.C1 = CFrame.new(0,1,0) * CFrame.Angles(0,math.pi/2,0)
  2089.  
  2090. local j1,j1a = GetWeld(joint1)
  2091. local j2,j2a = GetWeld(joint2)
  2092. local j3,j3a = GetWeld(joint3)
  2093. local j4,j4a = GetWeld(joint4)
  2094. local j5,j5a = GetWeld(joint5)
  2095.  
  2096. local count = 0
  2097. local lastpos
  2098.  
  2099. while Sliding == true do
  2100. count = count + 1
  2101. Hu.PlatformStand = true
  2102. local hitz1, enz1 = RAY(Torsoz.Position+Vector3.new(0,0.03,0), dir *2.5)
  2103. local hitz2, enz2 = RAY(Torsoz.Position-Vector3.new(0,0.2,0), dir *2.5)
  2104. local ghitz, genz = RAY(Torsoz.Position, Vector3.new(0,-2.6,0))
  2105. bv.velocity = dir*spd + Vector3.new(0,GravPoint,0)
  2106.  
  2107. if count <= 5 then
  2108. SetWeld(joint1,count,5, j1,j1a, Vector3.new(0.5,-0.8,-0.15), Vector3.new(0,(math.pi/2)+0.1,-0.4))
  2109. SetWeld(joint2,count,5, j2,j2a, Vector3.new(-0.5,-1,0), Vector3.new(0,(math.pi/2)-0.4,0))
  2110. SetWeld(joint3,count,5, j3,j3a, Vector3.new(1.5,0.5,0), Vector3.new(-0.7,-0.24,math.pi/5))
  2111. SetWeld(joint4,count,5, j4,j4a, Vector3.new(-1.5,0.5,0), Vector3.new(-0.1,0,-math.pi/1.5))
  2112. SetWeld(joint5,count,5, j5,j5a, Vector3.new(0,1,0), Vector3.new(-0.5,-0.2,0))
  2113. end
  2114.  
  2115. if (hitz1 ~= nil and hitz1.CanCollide == true) or (hitz2 ~= nil and hitz2.CanCollide == true) then
  2116. bv:remove()
  2117. bg:remove()
  2118. Sliding = "HitObject"
  2119. end
  2120. if ghitz ~= nil then
  2121. GravPoint = 0
  2122. Torsoz.CFrame = CFrame.new(genz, genz+dir) * CFrame.Angles(math.pi/2.2,0.24,0) + Vector3.new(0,0.7,0)
  2123. spd = spd - 0.95
  2124. else
  2125. if GravPoint > -180 then
  2126. GravPoint = GravPoint - 5.6
  2127. end
  2128. spd = spd - 0.36
  2129. end
  2130. if spd < 7 then
  2131. Sliding = false
  2132. end
  2133. wait(0.02)
  2134. end
  2135.  
  2136. if Sliding == false then
  2137. local j1,j1a = GetWeld(joint1)
  2138. local j2,j2a = GetWeld(joint2)
  2139. local j3,j3a = GetWeld(joint3)
  2140. local j4,j4a = GetWeld(joint4)
  2141. local j5,j5a = GetWeld(joint5)
  2142. for i = 1, 4 do
  2143. SetWeld(joint1,i,4, j1,j1a, Vector3.new(0.5,-1,0), Vector3.new(0,math.pi/2,0))
  2144. SetWeld(joint2,i,4, j2,j2a, Vector3.new(-0.5,-1,0), Vector3.new(0,math.pi/2,0))
  2145. SetWeld(joint3,i,4, j3,j3a, Vector3.new(1.5,0.5,0), NV)
  2146. SetWeld(joint4,i,4, j4,j4a, Vector3.new(-1.5,0.5,0), NV)
  2147. SetWeld(joint5,i,4, j5,j5a, Vector3.new(0,1,0), NV)
  2148. local hitz, enz = RAY(Torsoz.Position, Vector3.new(0,-2.6,0))
  2149. bg.cframe = CFrame.new(NV, dir) * CFrame.Angles((math.pi/2.2) - ((math.pi/2.2)/4*i),0.24 - (0.24/4*i),0)
  2150. bv.velocity = dir*spd + Vector3.new(0,GravPoint,0)
  2151.  
  2152. if hitz ~= nil then
  2153. GravPoint = 0
  2154. Torsoz.CFrame = CFrame.new(enz, enz+dir) * CFrame.Angles((math.pi/2.2) - ((math.pi/2.2)/4*i),0.24 - (0.24/4*i),0) + Vector3.new(0,0.7+(1.8/4*i),0)
  2155. spd = spd - 0.95
  2156. else
  2157. if GravPoint > -180 then
  2158. GravPoint = GravPoint - 5.6
  2159. end
  2160. spd = spd - 0.36
  2161. end
  2162. wait(0.02)
  2163. end
  2164. local hitz, enz = RAY(Torsoz.Position, Vector3.new(0,-2.6,0))
  2165. Torsoz.CFrame = CFrame.new(enz, enz+dir) + Vector3.new(0,3,0)
  2166. end
  2167. bv:remove()
  2168. bg:remove()
  2169. SlideCooldown = 10
  2170. Stand()
  2171. end
  2172.  
  2173. function KD(key)
  2174. if pause.Value == false then
  2175. if key == string.char(32) then
  2176. Space = true
  2177.  
  2178. local ghitz, genz = RAY(Torsoz.Position, Vector3.new(0,-3.7,0))
  2179. local hitz, enz = RAY(Torsoz.Position+Vector3.new(0,1.1,0), Torsoz.CFrame.lookVector*2.3)
  2180. local righthitz, rightenz
  2181. local lefthitz, leftenz
  2182.  
  2183. if HWallRunning == false then
  2184. righthitz, rightenz = RAY(Torsoz.Position, ((Torsoz.CFrame * CFrame.new(1.5,0,-0.2)).p - Torsoz.CFrame.p).unit*3.9)
  2185. lefthitz, leftenz = RAY(Torsoz.Position, ((Torsoz.CFrame * CFrame.new(-1.5,0,-0.2)).p - Torsoz.CFrame.p).unit*3.9)
  2186.  
  2187. elseif HWallRunning == "Jumping" then
  2188. righthitz, rightenz = RAY(Torsoz.Position, ((CFrame.new(Torsoz.Position, Torsoz.Position + HWRDir) * CFrame.new(1.5,0,-0.2)).p - Torsoz.Position).unit*3.9)
  2189. lefthitz, leftenz = RAY(Torsoz.Position, ((CFrame.new(Torsoz.Position, Torsoz.Position + HWRDir) * CFrame.new(-1.5,0,-0.2)).p - Torsoz.Position).unit*3.9)
  2190.  
  2191. end
  2192.  
  2193. if Action == "Standing" and Shift == true and (hitz == nil or hitz.CanCollide == false) and (righthitz == nil or righthitz.CanCollide == false) and (lefthitz == nil or lefthitz.CanCollide == false) and (ghitz == nil or ghitz.CanCollide == false) and (Torsoz.Velocity.y > 6 and Torsoz.Velocity.y < 50) and DivingCooldown <= 0 then
  2194. if stamina >= 10 then
  2195. --if Vector3.new(Torsoz.Velocity.x,0,Torsoz.Velocity.z).magnitude > 12 then
  2196. Dive()
  2197. --end
  2198. end
  2199. end
  2200.  
  2201. if hitz == nil and VWallRunning == "Falling" then
  2202. VWallRunning = "BackflipFromFall"
  2203. end
  2204.  
  2205. if Shift == true and Torsoz.Velocity.y > -50 and Diving == false and DivingCooldown <= 0 then
  2206. local hitz2, enz2 = RAY(Torsoz.Position, Vector3.new(0,-3.5,0))
  2207.  
  2208. if hitz ~= nil then
  2209. if Action == "Standing" and VWRCooldown == 0 then
  2210. if hitz2 == nil or hitz2.CanCollide == false then
  2211. VWR(hitz, enz)
  2212. end
  2213. end
  2214. end
  2215.  
  2216. if (HWallRunning == false or (HWallRunning == "Jumping" and (HWRLastPart ~= righthitz or HWRLastPart ~= lefthitz))) and HWRCooldown == 0 and VWallRunning == false then
  2217.  
  2218. if (hitz == nil or HWallRunning == "Jumping") and ((righthitz ~= nil and righthitz.Parent:findFirstChild("Humanoid") == nil and righthitz.Parent.className ~= "Hat") or (lefthitz ~= nil and lefthitz.Parent:findFirstChild("Humanoid") == nil and lefthitz.Parent.className ~= "Hat")) then
  2219. if hitz2 == nil or hitz2.CanCollide == false then
  2220. local right = (rightenz - Torsoz.Position).magnitude
  2221. local left = (leftenz - Torsoz.Position).magnitude
  2222. if right < left then
  2223. if HWallRunning == "Jumping" and HWRLastPart ~= righthitz then
  2224. HWallRunning = false
  2225. while Standing == false do
  2226. wait(0.01)
  2227. end
  2228. print("2nd Right Activated!")
  2229. HWallRun(righthitz, rightenz, -math.pi/2)
  2230. else
  2231. if hitz == nil then
  2232. print("Right Activated")
  2233. HWallRun(righthitz, rightenz, -math.pi/2)
  2234. end
  2235. end
  2236. elseif left < right then
  2237. if HWallRunning == "Jumping" and HWRLastPart ~= lefthitz then
  2238. HWallRunning = false
  2239. while Standing == false do
  2240. wait(0.01)
  2241. end
  2242. print("2nd Left Activated!")
  2243. HWallRun(lefthitz, leftenz, math.pi/2)
  2244. else
  2245. if hitz == nil then
  2246. print("Left Activated")
  2247. HWallRun(lefthitz, leftenz, math.pi/2)
  2248. end
  2249. end
  2250. end
  2251. end
  2252. end
  2253. end
  2254.  
  2255. end
  2256.  
  2257. if HWallRunning == true then
  2258. HWallRunning = "Jumping"
  2259. Action = "HWRJumping"
  2260. end
  2261.  
  2262. elseif key == string.char(48) then
  2263. Shift = true
  2264. elseif key == string.char(50) then
  2265. if Action == "Standing" then
  2266. Sit()
  2267. elseif HWallRunning == true then
  2268. HWRGravDrop = true
  2269. end
  2270. elseif key == string.char(52) then
  2271. if Shift == true and Action == "Standing" and SlideCooldown == 0 and Vector3.new(Torsoz.Velocity.x,0,Torsoz.Velocity.z).magnitude > 15 and Torsoz.Velocity.y > -40 then
  2272. print("Sliding")
  2273. Slide()
  2274. end
  2275. elseif key == "a" then
  2276. VWRLeft = true
  2277. elseif key == "d" then
  2278. VWRRight = true
  2279. end
  2280. end
  2281. end
  2282.  
  2283. function KU(key)
  2284. if key == string.char(32) then
  2285. Space = false
  2286. elseif key == string.char(48) then
  2287. Shift = false
  2288. elseif key == string.char(50) then
  2289. if Action == "Sitting" then
  2290. Stand()
  2291. end
  2292. elseif key == string.char(52) then
  2293. Sliding = false
  2294. elseif key == "a" then
  2295. VWRLeft = false
  2296. elseif key == "d" then
  2297. VWRRight = false
  2298. end
  2299. end
  2300.  
  2301. mouse.KeyDown:connect(function(key) KD(key) end)
  2302. mouse.KeyUp:connect(function(key) KU(key) end)
  2303.  
  2304. Joint1 = Instance.new("Snap", Torsoz)
  2305. GetWeld(Joint1)
  2306. Joint2 = Instance.new("Snap", Torsoz)
  2307. GetWeld(Joint2)
  2308. Joint3 = Instance.new("Snap", Torsoz)
  2309. GetWeld(Joint3)
  2310. Joint4 = Instance.new("Snap", Torsoz)
  2311. GetWeld(Joint4)
  2312. Joint5 = Instance.new("Snap", Torsoz)
  2313. GetWeld(Joint5)
  2314. Stand()
  2315.  
  2316. local animatebg = Instance.new("BodyGyro")
  2317. animatebg.D = 100
  2318. local GravAction = "Idle"
  2319. local PrevGravAction = GravAction
  2320.  
  2321. local prevrapos = (RA.CFrame * CFrame.new(0,-1,0)).p
  2322. local prevlapos = (LA.CFrame * CFrame.new(0,-1,0)).p
  2323. local hue = 0
  2324. local recyclecount = 0
  2325. local tickoffset = tick()
  2326. local fadetab = {}
  2327. local fadetab2 = {}
  2328. local animatebgcount = 0
  2329.  
  2330. for i = 1, 13 do
  2331. local p = P:Clone()
  2332. p.Name = "Part"..i
  2333. local mesh = Instance.new("SpecialMesh", p)
  2334. mesh.MeshId = "http://www.roblox.com/Asset/?id=9856898"
  2335. mesh.TextureId = "http://www.roblox.com/Asset/?id=48358980"
  2336. table.insert(fadetab, {p, mesh})
  2337. end
  2338. for i = 1, 13 do
  2339. local p = P:Clone()
  2340. p.Name = "Part"..i
  2341. local mesh = Instance.new("SpecialMesh", p)
  2342. mesh.MeshId = "http://www.roblox.com/Asset/?id=9856898"
  2343. mesh.TextureId = "http://www.roblox.com/Asset/?id=48358980"
  2344. table.insert(fadetab2, {p, mesh})
  2345. end
  2346.  
  2347. game:service("RunService").Stepped:connect(function()
  2348. GravAction = "Idle"
  2349. hue = hue + 3
  2350. hue = hue % 360
  2351.  
  2352. ------------- anim angle changing --------
  2353. if animangle > math.pi then
  2354. animplus = false
  2355. elseif animangle < -math.pi then
  2356. animplus = true
  2357. end
  2358. if animplus == true then
  2359. animangle = animangle + animspeed
  2360. elseif animplus == false then
  2361. animangle = animangle - animspeed
  2362. end
  2363.  
  2364. local hitz, enz = RAY(Torsoz.Position, Vector3.new(0,-3.9,0))
  2365. if Shift == true then
  2366. Hu.WalkSpeed = sprint
  2367. else
  2368. Hu.WalkSpeed = 16
  2369. end
  2370. if (FOV >= 70 and FOV < 74) and Vector3.new(Torsoz.Velocity.x,0,Torsoz.Velocity.z).magnitude > 25 then
  2371. FOV = FOV + 1
  2372. elseif (FOV <= 74 and FOV > 70) and Vector3.new(Torsoz.Velocity.x,0,Torsoz.Velocity.z).magnitude < 20 then
  2373. FOV = FOV - 1
  2374. end
  2375. if pause.Value == true then
  2376. Hu.WalkSpeed = 0
  2377. end
  2378. if Sitting == true then
  2379. local hitz2, enz2 = RAY(Torsoz.Position, Vector3.new(0,-2.2,0))
  2380. Hu.PlatformStand = true
  2381. if hitz2 == nil then
  2382. Stand()
  2383. end
  2384. end
  2385. if Diving == true then
  2386. Hu.PlatformStand = true
  2387. DivingBV.velocity = Vector3.new(DivingDir.x*(sprint+2),GravPoint,DivingDir.z*(sprint+2))
  2388. DivingBG.cframe = CFrame.new(Torsoz.Position, Torsoz.Position+DivingBV.velocity) * CFrame.Angles(-math.pi/2,0,0)
  2389.  
  2390. if GravPoint > -180 then
  2391. GravPoint = GravPoint - 2
  2392. end
  2393. end
  2394. if DivingCooldown > 0 then
  2395. DivingCooldown = DivingCooldown - 1
  2396. end
  2397. if HWallRunning == true then
  2398. if HWRGravDrop == false then
  2399. GravPoint = GravPoint - 0.4
  2400. else
  2401. GravPoint = GravPoint - 2
  2402. end
  2403. elseif HWallRunning == "Jumping" then
  2404. GravPoint = GravPoint - 1.7
  2405. end
  2406. ----------------------------- stamina ----------------------------------------
  2407. if Vector3.new(Torsoz.Velocity.x, 0, Torsoz.Velocity.z).magnitude > 18 and Action == "Standing" and Shift == true then
  2408. if stamina > 0 then
  2409. stamina = stamina - 0.5
  2410. if stamina < 0 then
  2411. Shift = false
  2412. stamina = 0
  2413. end
  2414. else
  2415. Shift = false
  2416. stamina = 0
  2417. end
  2418. if Action == "Standing" then
  2419. animspeed = 0.85
  2420. SetWeld(Joint1,1,1, NV,NV, Vector3.new(0.5,-1,0), Vector3.new(-animangle/4.85,0,0))
  2421. SetWeld(Joint2,1,1, NV,NV, Vector3.new(-0.5,-1,0), Vector3.new(animangle/4.85,0,0))
  2422. SetWeld(Joint3,1,1, NV,NV, Vector3.new(1.5,0.5,0), Vector3.new(animangle/3.5,0,0))
  2423. SetWeld(Joint4,1,1, NV,NV, Vector3.new(-1.5,0.5,0), Vector3.new(-animangle/3.5,0,0))
  2424. end
  2425. elseif Vector3.new(Torsoz.Velocity.x, 0, Torsoz.Velocity.z).magnitude > 12 and Action ~= "Sliding" then
  2426. if stamina < maxstamina then
  2427. stamina = stamina + 0.5
  2428. if stamina > maxstamina then
  2429. stamina = maxstamina
  2430. end
  2431. else
  2432. stamina = maxstamina
  2433. end
  2434. if Action == "Standing" then
  2435. animspeed = 0.65
  2436. SetWeld(Joint1,1,1, NV,NV, Vector3.new(0.5,-1,0), Vector3.new(-animangle/7,0,0))
  2437. SetWeld(Joint2,1,1, NV,NV, Vector3.new(-0.5,-1,0), Vector3.new(animangle/7,0,0))
  2438. SetWeld(Joint3,1,1, NV,NV, Vector3.new(1.5,0.5,0), Vector3.new(animangle/5,0,0))
  2439. SetWeld(Joint4,1,1, NV,NV, Vector3.new(-1.5,0.5,0), Vector3.new(-animangle/5,0,0))
  2440. end
  2441. elseif Vector3.new(Torsoz.Velocity.x, 0, Torsoz.Velocity.z).magnitude < 2 then
  2442. animspeed = 0.1
  2443. if Action == "Standing" then
  2444. SetWeld(Joint1,1,1, NV,NV, Vector3.new(0.5,-1,0), Vector3.new(-animangle/38,0,0))
  2445. SetWeld(Joint2,1,1, NV,NV, Vector3.new(-0.5,-1,0), Vector3.new(animangle/38,0,0))
  2446. SetWeld(Joint3,1,1, NV,NV, Vector3.new(1.5,0.5,0), Vector3.new(animangle/30,0,0))
  2447. SetWeld(Joint4,1,1, NV,NV, Vector3.new(-1.5,0.5,0), Vector3.new(-animangle/30,0,0))
  2448. end
  2449. if stamina < maxstamina then
  2450. if Sitting == false then
  2451. stamina = stamina + 0.65
  2452. else
  2453. stamina = stamina + 1.02
  2454. end
  2455. if stamina > maxstamina then
  2456. stamina = maxstamina
  2457. end
  2458. else
  2459. stamina = maxstamina
  2460. end
  2461. end
  2462.  
  2463. if hitz == nil then
  2464. if Torsoz.Velocity.y > 1 or (Torsoz.Velocity.y < -1 and Torsoz.Velocity.y > -90) then
  2465. if Action == "Standing" then
  2466. GravAction = "Rising"
  2467. animspeed = 0.1
  2468. SetWeld(Joint1,1,1, NV,NV, Vector3.new(0.5,-1,0), Vector3.new(-animangle/38,0,0))
  2469. SetWeld(Joint2,1,1, NV,NV, Vector3.new(-0.5,-1,0), Vector3.new(animangle/38,0,0))
  2470. SetWeld(Joint3,1,1, NV,NV, Vector3.new(1.5,0.5,0), Vector3.new((math.pi-0.2)+(animangle/30),0,0))
  2471. SetWeld(Joint4,1,1, NV,NV, Vector3.new(-1.5,0.5,0), Vector3.new((math.pi-0.2)+(-animangle/30),0,0))
  2472. if animatebg.Parent ~= nil then
  2473. animatebg.Parent = Torsoz
  2474. animatebg.maxTorque = Vector3.new(1/0,10000,1/0)
  2475. local lokvec = Torsoz.CFrame.lookVector*100
  2476. animatebg.cframe = CFrame.new(NV, Vector3.new(lokvec.x,0,lokvec.z))
  2477. animatebg.Parent = nil
  2478. end
  2479. end
  2480. end
  2481. end
  2482.  
  2483. if hitz == nil then
  2484. local hitz2, enz2 = RAY(Torsoz.Position, Vector3.new(0,-6,0))
  2485. if hitz2 == nil then
  2486. if Torsoz.Velocity.y < -90 then
  2487. if Action == "Standing" then
  2488. GravAction = "Falling"
  2489. animspeed = 1.1
  2490. animatebg.Parent = Torsoz
  2491. animatebg.maxTorque = Vector3.new(1/0,10000,1/0)
  2492. local lokvec = Torsoz.CFrame.lookVector*100
  2493. animatebg.cframe = CFrame.new(NV, Vector3.new(lokvec.x,0,lokvec.z)) * CFrame.Angles(-math.pi/11,animangle/70,0)
  2494. SetWeld(Joint1,1,1, NV,NV, Vector3.new(0.45,-0.8,0), Vector3.new((animangle/27)-0.3,0,0.18))
  2495. SetWeld(Joint2,1,1, NV,NV, Vector3.new(-0.45,-0.8,0), Vector3.new((-animangle/27)-0.3,0,-0.18))
  2496. SetWeld(Joint3,1,1, NV,NV, Vector3.new(1.4,0.5,0), Vector3.new((math.pi+0.2)+(animangle/26),0,0.18))
  2497. SetWeld(Joint4,1,1, NV,NV, Vector3.new(-1.4,0.5,0), Vector3.new((math.pi+0.2)+(-animangle/26),0,-0.18))
  2498. end
  2499. end
  2500. elseif hitz2.CanCollide == true then
  2501. if animatebg.Parent ~= nil then
  2502. animatebg.Parent = Torsoz
  2503. animatebg.maxTorque = Vector3.new(1/0,10000,1/0)
  2504. local lokvec = Torsoz.CFrame.lookVector*100
  2505. animatebg.cframe = CFrame.new(NV, Vector3.new(lokvec.x,0,lokvec.z))
  2506. animatebg.Parent = nil
  2507. end
  2508. end
  2509. end
  2510.  
  2511. if GravAction == "Idle" and animatebg.Parent ~= nil then
  2512. animatebg.Parent = nil
  2513. end
  2514.  
  2515. if math.abs(tickoffset - tick()) > 0.05 then
  2516. tickoffset = tick()
  2517. local flowcolor = HSV(hue, 0.7,1)
  2518. recyclecount = (recyclecount % #fadetab) + 1
  2519. if flow.Value > 25 then
  2520. local lapos = (LA.CFrame * CFrame.new(0,-1,0)).p
  2521. local rapos = (RA.CFrame * CFrame.new(0,-1,0)).p
  2522. local p = fadetab[recyclecount]
  2523. p[1].Parent = m
  2524. p[1].CFrame = CFrame.new((lapos+prevlapos)/2, lapos)
  2525. p[2].Scale = Vector3.new(0.5,0.5,(lapos-prevlapos).magnitude*2)
  2526. p[2].VertexColor = Vector3.new(flowcolor.r,flowcolor.g,flowcolor.b)
  2527. p[1].Transparency = math.abs((flow.Value/120) - 0.8)
  2528. p[1].Transparency = p[1].Transparency + (1/#fadetab)
  2529. local p = fadetab2[recyclecount]
  2530. p[1].Parent = m
  2531. p[1].CFrame = CFrame.new((rapos+prevrapos)/2, rapos)
  2532. p[2].Scale = Vector3.new(0.5,0.5,(rapos-prevrapos).magnitude*2)
  2533. p[2].VertexColor = Vector3.new(flowcolor.r,flowcolor.g,flowcolor.b)
  2534. p[1].Transparency = math.abs((flow.Value/120) - 0.8)
  2535. p[1].Transparency = p[1].Transparency + (1/#fadetab)
  2536. end
  2537.  
  2538. for i, v in pairs(fadetab) do
  2539. if v[1].Transparency < 0.9 then
  2540. v[1].Transparency = v[1].Transparency + (1/#fadetab)
  2541. fadetab2[i][1].Transparency = fadetab2[i][1].Transparency + (1/#fadetab)
  2542. elseif v[1].Transparency ~= 1 then
  2543. v[1].Transparency = 1
  2544. v[1].Position = Vector3.new(50000,0,0)
  2545. fadetab2[i][1].Transparency = 1
  2546. fadetab2[i][1].Position = Vector3.new(50000,0,0)
  2547. end
  2548. end
  2549.  
  2550. prevrapos = (RA.CFrame * CFrame.new(0,-1,0)).p
  2551. prevlapos = (LA.CFrame * CFrame.new(0,-1,0)).p
  2552. end
  2553.  
  2554. if flow.Value > 140 then
  2555. if char.Parent ~= nil then
  2556. char:remove()
  2557. end
  2558. end
  2559.  
  2560. if flowcooldown > 0 then
  2561. flowcooldown = flowcooldown - 1
  2562. end
  2563. if HWRCooldown > 0 then
  2564. HWRCooldown = HWRCooldown - 1
  2565. end
  2566. if VWRCooldown > 0 then
  2567. if hitz ~= nil and VWRCooldown > 0 then
  2568. VWRCooldown = VWRCooldown - 1
  2569. end
  2570. end
  2571. if SlideCooldown > 0 then
  2572. SlideCooldown = SlideCooldown - 1
  2573. end
  2574.  
  2575. if Action == "HWallRunning" or Action == "VWallRunning" then
  2576. flow.Value = flow.Value + 0.24
  2577. if flow.Value > 100 then
  2578. flow.Value = 100
  2579. end
  2580. flowcooldown = 40
  2581. elseif Action == "Diving" then
  2582. flowcooldown = 30
  2583. elseif Action == "Sliding" then
  2584. flowcooldown = 15
  2585. elseif Action == "Standing" or Action == "Sitting" then
  2586. if flow.Value > 0 and flowcooldown <= 0 then
  2587. flow.Value = flow.Value - 0.37
  2588. if flow.Value < 0 then
  2589. flow.Value = 0
  2590. end
  2591. end
  2592. end
  2593.  
  2594. cam.FieldOfView = FOV
  2595. prevanimbgcount = animatebgcount
  2596. sprint = defsprint + ((flow.Value/100)*2.4)
  2597. PrevGravAction = GravAction
  2598. Calculate()
  2599. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement