Advertisement
Deyer

Untitled

Apr 16th, 2023
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 59.42 KB | None | 0 0
  1. game.Players.LocalPlayer.Character["PlaneModel"].Handle.Mesh:Destroy()
  2. game.Players.LocalPlayer.Character["Surfboard"].Handle.Handle:Destroy()
  3. game.Players.LocalPlayer.Character["VANS_Umbrella"].Handle.Mesh:Destroy()
  4. game.Players.LocalPlayer.Character["Pal Hair"].Handle.Mesh:Destroy() --Pink Hair
  5. game.Players.LocalPlayer.Character["Pink Hair"].Handle.Mesh:Destroy()
  6. game.Players.LocalPlayer.Character["Kate Hair"].Handle.Mesh:Destroy() --LavanderHair
  7. game.Players.LocalPlayer.Character["LavanderHair"].Handle.Mesh:Destroy()
  8. game.Players.LocalPlayer.Character["Robloxclassicred"].Handle.Mesh:Destroy()
  9. game.Players.LocalPlayer.Character["Hat1"].Handle.Mesh:Destroy()
  10.  
  11. local c = game.Players.LocalPlayer.Character
  12. for i, v in pairs({"Right Arm", "Left Arm"}) do
  13. local arm = c[v]
  14. arm.Parent = nil
  15. arm.Transparency = 1
  16. arm.Parent = c
  17. end
  18.  
  19. local c = game.Players.LocalPlayer.Character
  20. for i, v in pairs({"Right Leg", "Left Leg"}) do
  21. local Leg = c[v]
  22. Leg.Parent = nil
  23. Leg.Transparency = 1
  24. Leg.Parent = c
  25. end
  26.  
  27. local v3_net, v3_808 = Vector3.new(0, 25.1, 0), Vector3.new(8, 0, 8)
  28. local function getNetlessVelocity(realPartVelocity)
  29. local mag = realPartVelocity.Magnitude
  30. if mag > 1 then
  31. local unit = realPartVelocity.Unit
  32. if (unit.Y > 0.25) or (unit.Y < -0.75) then
  33. return unit * (25.1 / unit.Y)
  34. end
  35. end
  36. return v3_net + realPartVelocity * v3_808
  37. end
  38. local simradius = "shp" --simulation radius (net bypass) method
  39. --simulation radius (net bypass) method
  40. --"shp" - sethiddenproperty
  41. --"ssr" - setsimulationradius
  42. --false - disable
  43. local antiragdoll = true --removes hingeConstraints and ballSocketConstraints from your character
  44. local newanimate = true --disables the animate script and enables after reanimation
  45. local discharscripts = true --disables all localScripts parented to your character before reanimation
  46. local R15toR6 = true --tries to convert your character to r6 if its r15
  47. local hatcollide = true --makes hats cancollide (only method 0)
  48. local humState16 = true --enables collisions for limbs before the humanoid dies (using hum:ChangeState)
  49. local addtools = false --puts all tools from backpack to character and lets you hold them after reanimation
  50. local hedafterneck = false --disable aligns for head and enable after neck is removed
  51. local loadtime = game:GetService("Players").RespawnTime + 0.5 --anti respawn delay
  52. local method = 0 --reanimation method
  53. --methods:
  54. --0 - breakJoints (takes [loadtime] seconds to laod)
  55. --1 - limbs
  56. --2 - limbs + anti respawn
  57. --3 - limbs + breakJoints after [loadtime] seconds
  58. --4 - remove humanoid + breakJoints
  59. --5 - remove humanoid + limbs
  60. local alignmode = 3 --AlignPosition mode
  61. --modes:
  62. --1 - AlignPosition rigidity enabled true
  63. --2 - 2 AlignPositions rigidity enabled both true and false
  64. --3 - AlignPosition rigidity enabled false
  65.  
  66. healthHide = healthHide and ((method == 0) or (method == 2) or (method == 000)) and gp(c, "Head", "BasePart")
  67.  
  68. local lp = game:GetService("Players").LocalPlayer
  69. local rs = game:GetService("RunService")
  70. local stepped = rs.Stepped
  71. local heartbeat = rs.Heartbeat
  72. local renderstepped = rs.RenderStepped
  73. local sg = game:GetService("StarterGui")
  74. local ws = game:GetService("Workspace")
  75. local cf = CFrame.new
  76. local v3 = Vector3.new
  77. local v3_0 = v3(0, 0, 0)
  78. local inf = math.huge
  79.  
  80. local c = lp.Character
  81.  
  82. if not (c and c.Parent) then
  83. return
  84. end
  85.  
  86. c.Destroying:Connect(function()
  87. c = nil
  88. end)
  89.  
  90. local function gp(parent, name, className)
  91. if typeof(parent) == "Instance" then
  92. for i, v in pairs(parent:GetChildren()) do
  93. if (v.Name == name) and v:IsA(className) then
  94. return v
  95. end
  96. end
  97. end
  98. return nil
  99. end
  100.  
  101. local function align(Part0, Part1)
  102. Part0.CustomPhysicalProperties = PhysicalProperties.new(0.0001, 0.0001, 0.0001, 0.0001, 0.0001)
  103.  
  104. local att0 = Instance.new("Attachment", Part0)
  105. att0.Orientation = v3_0
  106. att0.Position = v3_0
  107. att0.Name = "att0_" .. Part0.Name
  108. local att1 = Instance.new("Attachment", Part1)
  109. att1.Orientation = v3_0
  110. att1.Position = v3_0
  111. att1.Name = "att1_" .. Part1.Name
  112.  
  113. if (alignmode == 1) or (alignmode == 2) then
  114. local ape = Instance.new("AlignPosition", att0)
  115. ape.ApplyAtCenterOfMass = false
  116. ape.MaxForce = inf
  117. ape.MaxVelocity = inf
  118. ape.ReactionForceEnabled = false
  119. ape.Responsiveness = 200
  120. ape.Attachment1 = att1
  121. ape.Attachment0 = att0
  122. ape.Name = "AlignPositionRtrue"
  123. ape.RigidityEnabled = true
  124. end
  125.  
  126. if (alignmode == 2) or (alignmode == 3) then
  127. local apd = Instance.new("AlignPosition", att0)
  128. apd.ApplyAtCenterOfMass = false
  129. apd.MaxForce = inf
  130. apd.MaxVelocity = inf
  131. apd.ReactionForceEnabled = false
  132. apd.Responsiveness = 200
  133. apd.Attachment1 = att1
  134. apd.Attachment0 = att0
  135. apd.Name = "AlignPositionRfalse"
  136. apd.RigidityEnabled = false
  137. end
  138.  
  139. local ao = Instance.new("AlignOrientation", att0)
  140. ao.MaxAngularVelocity = inf
  141. ao.MaxTorque = inf
  142. ao.PrimaryAxisOnly = false
  143. ao.ReactionTorqueEnabled = false
  144. ao.Responsiveness = 200
  145. ao.Attachment1 = att1
  146. ao.Attachment0 = att0
  147. ao.RigidityEnabled = false
  148.  
  149. if type(getNetlessVelocity) == "function" then
  150. local realVelocity = v3_0
  151. local steppedcon = stepped:Connect(function()
  152. Part0.Velocity = realVelocity
  153. end)
  154. local heartbeatcon = heartbeat:Connect(function()
  155. realVelocity = Part0.Velocity
  156. Part0.Velocity = getNetlessVelocity(realVelocity)
  157. end)
  158. Part0.Destroying:Connect(function()
  159. Part0 = nil
  160. steppedcon:Disconnect()
  161. heartbeatcon:Disconnect()
  162. end)
  163. end
  164. end
  165.  
  166. local function respawnrequest()
  167. local ccfr = ws.CurrentCamera.CFrame
  168. local c = lp.Character
  169. lp.Character = nil
  170. lp.Character = c
  171. local con = nil
  172. con = ws.CurrentCamera.Changed:Connect(function(prop)
  173. if (prop ~= "Parent") and (prop ~= "CFrame") then
  174. return
  175. end
  176. ws.CurrentCamera.CFrame = ccfr
  177. con:Disconnect()
  178. end)
  179. end
  180.  
  181. local destroyhum = (method == 4) or (method == 5)
  182. local breakjoints = (method == 0) or (method == 4)
  183. local antirespawn = (method == 0) or (method == 2) or (method == 3)
  184.  
  185. hatcollide = hatcollide and (method == 0)
  186.  
  187. addtools = addtools and gp(lp, "Backpack", "Backpack")
  188.  
  189. local fenv = getfenv()
  190. local shp = fenv.sethiddenproperty or fenv.set_hidden_property or fenv.set_hidden_prop or fenv.sethiddenprop
  191. local ssr = fenv.setsimulationradius or fenv.set_simulation_radius or fenv.set_sim_radius or fenv.setsimradius or fenv.set_simulation_rad or fenv.setsimulationrad
  192.  
  193. if shp and (simradius == "shp") then
  194. spawn(function()
  195. while c and heartbeat:Wait() do
  196. shp(lp, "SimulationRadius", inf)
  197. end
  198. end)
  199. elseif ssr and (simradius == "ssr") then
  200. spawn(function()
  201. while c and heartbeat:Wait() do
  202. ssr(inf)
  203. end
  204. end)
  205. end
  206.  
  207. antiragdoll = antiragdoll and function(v)
  208. if v:IsA("HingeConstraint") or v:IsA("BallSocketConstraint") then
  209. v.Parent = nil
  210. end
  211. end
  212.  
  213. if antiragdoll then
  214. for i, v in pairs(c:GetDescendants()) do
  215. antiragdoll(v)
  216. end
  217. c.DescendantAdded:Connect(antiragdoll)
  218. end
  219.  
  220. if antirespawn then
  221. respawnrequest()
  222. end
  223.  
  224. if method == 0 then
  225. wait(loadtime)
  226. if not c then
  227. return
  228. end
  229. end
  230.  
  231. if discharscripts then
  232. for i, v in pairs(c:GetChildren()) do
  233. if v:IsA("LocalScript") then
  234. v.Disabled = true
  235. end
  236. end
  237. elseif newanimate then
  238. local animate = gp(c, "Animate", "LocalScript")
  239. if animate and (not animate.Disabled) then
  240. animate.Disabled = true
  241. else
  242. newanimate = false
  243. end
  244. end
  245.  
  246. if addtools then
  247. for i, v in pairs(addtools:GetChildren()) do
  248. if v:IsA("Tool") then
  249. v.Parent = c
  250. end
  251. end
  252. end
  253.  
  254. pcall(function()
  255. settings().Physics.AllowSleep = false
  256. settings().Physics.PhysicsEnvironmentalThrottle = Enum.EnviromentalPhysicsThrottle.Disabled
  257. end)
  258.  
  259. local OLDscripts = {}
  260.  
  261. for i, v in pairs(c:GetDescendants()) do
  262. if v.ClassName == "Script" then
  263. table.insert(OLDscripts, v)
  264. end
  265. end
  266.  
  267. local scriptNames = {}
  268.  
  269. for i, v in pairs(c:GetDescendants()) do
  270. if v:IsA("BasePart") then
  271. local newName = tostring(i)
  272. local exists = true
  273. while exists do
  274. exists = false
  275. for i, v in pairs(OLDscripts) do
  276. if v.Name == newName then
  277. exists = true
  278. end
  279. end
  280. if exists then
  281. newName = newName .. "_"
  282. end
  283. end
  284. table.insert(scriptNames, newName)
  285. Instance.new("Script", v).Name = newName
  286. end
  287. end
  288.  
  289. c.Archivable = true
  290. local hum = c:FindFirstChildOfClass("Humanoid")
  291. if hum then
  292. for i, v in pairs(hum:GetPlayingAnimationTracks()) do
  293. v:Stop()
  294. end
  295. end
  296. local cl = c:Clone()
  297. if hum and humState16 then
  298. hum:ChangeState(Enum.HumanoidStateType.Physics)
  299. if destroyhum then
  300. wait(1.6)
  301. end
  302. end
  303. if hum and hum.Parent and destroyhum then
  304. hum:Destroy()
  305. end
  306.  
  307. if not c then
  308. return
  309. end
  310.  
  311. local head = gp(c, "Head", "BasePart")
  312. local torso = gp(c, "Torso", "BasePart") or gp(c, "UpperTorso", "BasePart")
  313. local root = gp(c, "HumanoidRootPart", "BasePart")
  314. if hatcollide and c:FindFirstChildOfClass("Accessory") then
  315. local anything = c:FindFirstChildOfClass("BodyColors") or gp(c, "Health", "Script")
  316. if not (torso and root and anything) then
  317. return
  318. end
  319. torso:Destroy()
  320. root:Destroy()
  321. if shp then
  322. for i,v in pairs(c:GetChildren()) do
  323. if v:IsA("Accessory") then
  324. shp(v, "BackendAccoutrementState", 0)
  325. end
  326. end
  327. end
  328. anything:Destroy()
  329. if head then
  330. head:Destroy()
  331. end
  332. end
  333.  
  334. for i, v in pairs(cl:GetDescendants()) do
  335. if v:IsA("BasePart") then
  336. v.Transparency = 1
  337. v.Anchored = false
  338. end
  339. end
  340.  
  341. local model = Instance.new("Model", c)
  342. model.Name = model.ClassName
  343.  
  344. model.Destroying:Connect(function()
  345. model = nil
  346. end)
  347.  
  348. for i, v in pairs(c:GetChildren()) do
  349. if v ~= model then
  350. if addtools and v:IsA("Tool") then
  351. for i1, v1 in pairs(v:GetDescendants()) do
  352. if v1 and v1.Parent and v1:IsA("BasePart") then
  353. local bv = Instance.new("BodyVelocity", v1)
  354. bv.Velocity = v3_0
  355. bv.MaxForce = v3(1000, 1000, 1000)
  356. bv.P = 1250
  357. bv.Name = "bv_" .. v.Name
  358. end
  359. end
  360. end
  361. v.Parent = model
  362. end
  363. end
  364.  
  365. if breakjoints then
  366. model:BreakJoints()
  367. else
  368. if head and torso then
  369. for i, v in pairs(model:GetDescendants()) do
  370. if v:IsA("Weld") or v:IsA("Snap") or v:IsA("Glue") or v:IsA("Motor") or v:IsA("Motor6D") then
  371. local save = false
  372. if (v.Part0 == torso) and (v.Part1 == head) then
  373. save = true
  374. end
  375. if (v.Part0 == head) and (v.Part1 == torso) then
  376. save = true
  377. end
  378. if save then
  379. if hedafterneck then
  380. hedafterneck = v
  381. end
  382. else
  383. v:Destroy()
  384. end
  385. end
  386. end
  387. end
  388. if method == 3 then
  389. spawn(function()
  390. wait(loadtime)
  391. if model then
  392. model:BreakJoints()
  393. end
  394. end)
  395. end
  396. end
  397.  
  398. cl.Parent = c
  399. for i, v in pairs(cl:GetChildren()) do
  400. v.Parent = c
  401. end
  402. cl:Destroy()
  403.  
  404. local modelDes = {}
  405. for i, v in pairs(model:GetDescendants()) do
  406. if v:IsA("BasePart") then
  407. i = tostring(i)
  408. v.Destroying:Connect(function()
  409. modelDes[i] = nil
  410. end)
  411. modelDes[i] = v
  412. end
  413. end
  414. local modelcolcon = nil
  415. local function modelcolf()
  416. if model then
  417. for i, v in pairs(modelDes) do
  418. v.CanCollide = false
  419. end
  420. else
  421. modelcolcon:Disconnect()
  422. end
  423. end
  424. modelcolcon = stepped:Connect(modelcolf)
  425. modelcolf()
  426.  
  427. for i, scr in pairs(model:GetDescendants()) do
  428. if (scr.ClassName == "Script") and table.find(scriptNames, scr.Name) then
  429. local Part0 = scr.Parent
  430. if Part0:IsA("BasePart") then
  431. for i1, scr1 in pairs(c:GetDescendants()) do
  432. if (scr1.ClassName == "Script") and (scr1.Name == scr.Name) and (not scr1:IsDescendantOf(model)) then
  433. local Part1 = scr1.Parent
  434. if (Part1.ClassName == Part0.ClassName) and (Part1.Name == Part0.Name) then
  435. align(Part0, Part1)
  436. break
  437. end
  438. end
  439. end
  440. end
  441. end
  442. end
  443.  
  444. if (typeof(hedafterneck) == "Instance") and head then
  445. local aligns = {}
  446. local con = nil
  447. con = hedafterneck.Changed:Connect(function(prop)
  448. if (prop == "Parent") and not hedafterneck.Parent then
  449. con:Disconnect()
  450. for i, v in pairs(aligns) do
  451. v.Enabled = true
  452. end
  453. end
  454. end)
  455. for i, v in pairs(head:GetDescendants()) do
  456. if v:IsA("AlignPosition") or v:IsA("AlignOrientation") then
  457. i = tostring(i)
  458. aligns[i] = v
  459. v.Destroying:Connect(function()
  460. aligns[i] = nil
  461. end)
  462. v.Enabled = false
  463. end
  464. end
  465. end
  466.  
  467. for i, v in pairs(c:GetDescendants()) do
  468. if v and v.Parent then
  469. if v.ClassName == "Script" then
  470. if table.find(scriptNames, v.Name) then
  471. v:Destroy()
  472. end
  473. elseif not v:IsDescendantOf(model) then
  474. if v:IsA("Decal") then
  475. v.Transparency = 1
  476. elseif v:IsA("ForceField") then
  477. v.Visible = false
  478. elseif v:IsA("Sound") then
  479. v.Playing = false
  480. elseif v:IsA("BillboardGui") or v:IsA("SurfaceGui") or v:IsA("ParticleEmitter") or v:IsA("Fire") or v:IsA("Smoke") or v:IsA("Sparkles") then
  481. v.Enabled = false
  482. end
  483. end
  484. end
  485. end
  486.  
  487. if newanimate then
  488. local animate = gp(c, "Animate", "LocalScript")
  489. if animate then
  490. animate.Disabled = false
  491. end
  492. end
  493.  
  494. if addtools then
  495. for i, v in pairs(c:GetChildren()) do
  496. if v:IsA("Tool") then
  497. v.Parent = addtools
  498. end
  499. end
  500. end
  501.  
  502. local hum0 = model:FindFirstChildOfClass("Humanoid")
  503. if hum0 then
  504. hum0.Destroying:Connect(function()
  505. hum0 = nil
  506. end)
  507. end
  508.  
  509. local hum1 = c:FindFirstChildOfClass("Humanoid")
  510. if hum1 then
  511. hum1.Destroying:Connect(function()
  512. hum1 = nil
  513. end)
  514. end
  515.  
  516. if hum1 then
  517. ws.CurrentCamera.CameraSubject = hum1
  518. local camSubCon = nil
  519. local function camSubFunc()
  520. camSubCon:Disconnect()
  521. if c and hum1 then
  522. ws.CurrentCamera.CameraSubject = hum1
  523. end
  524. end
  525. camSubCon = renderstepped:Connect(camSubFunc)
  526. if hum0 then
  527. hum0.Changed:Connect(function(prop)
  528. if hum1 and (prop == "Jump") then
  529. hum1.Jump = hum0.Jump
  530. end
  531. end)
  532. else
  533. respawnrequest()
  534. end
  535. end
  536.  
  537. local rb = Instance.new("BindableEvent", c)
  538. rb.Event:Connect(function()
  539. rb:Destroy()
  540. sg:SetCore("ResetButtonCallback", true)
  541. if destroyhum then
  542. c:BreakJoints()
  543. return
  544. end
  545. if hum0 and (hum0.Health > 0) then
  546. model:BreakJoints()
  547. hum0.Health = 0
  548. end
  549. if antirespawn then
  550. respawnrequest()
  551. end
  552. end)
  553. sg:SetCore("ResetButtonCallback", rb)
  554.  
  555. spawn(function()
  556. while c do
  557. if hum0 and hum1 then
  558. hum1.Jump = hum0.Jump
  559. end
  560. wait()
  561. end
  562. sg:SetCore("ResetButtonCallback", true)
  563. end)
  564.  
  565. R15toR6 = R15toR6 and hum1 and (hum1.RigType == Enum.HumanoidRigType.R15)
  566. if R15toR6 then
  567. local part = gp(c, "HumanoidRootPart", "BasePart") or gp(c, "UpperTorso", "BasePart") or gp(c, "LowerTorso", "BasePart") or gp(c, "Head", "BasePart") or c:FindFirstChildWhichIsA("BasePart")
  568. if part then
  569. local cfr = part.CFrame
  570. local R6parts = {
  571. head = {
  572. Name = "Head",
  573. Size = v3(2, 1, 1),
  574. R15 = {
  575. Head = 0
  576. }
  577. },
  578. torso = {
  579. Name = "Torso",
  580. Size = v3(2, 2, 1),
  581. R15 = {
  582. UpperTorso = 0.2,
  583. LowerTorso = -100
  584. }
  585. },
  586. root = {
  587. Name = "HumanoidRootPart",
  588. Size = v3(2, 2, 1),
  589. R15 = {
  590. HumanoidRootPart = 0
  591. }
  592. },
  593. leftArm = {
  594. Name = "Left Arm",
  595. Size = v3(1, 2, 1),
  596. R15 = {
  597. LeftHand = -0.73,
  598. LeftLowerArm = -0.2,
  599. LeftUpperArm = 0.4
  600. }
  601. },
  602. rightArm = {
  603. Name = "Right Arm",
  604. Size = v3(1, 2, 1),
  605. R15 = {
  606. RightHand = -0.73,
  607. RightLowerArm = -0.2,
  608. RightUpperArm = 0.4
  609. }
  610. },
  611. leftLeg = {
  612. Name = "Left Leg",
  613. Size = v3(1, 2, 1),
  614. R15 = {
  615. LeftFoot = -0.73,
  616. LeftLowerLeg = -0.15,
  617. LeftUpperLeg = 0.6
  618. }
  619. },
  620. rightLeg = {
  621. Name = "Right Leg",
  622. Size = v3(1, 2, 1),
  623. R15 = {
  624. RightFoot = -0.73,
  625. RightLowerLeg = -0.15,
  626. RightUpperLeg = 0.6
  627. }
  628. }
  629. }
  630. for i, v in pairs(c:GetChildren()) do
  631. if v:IsA("BasePart") then
  632. for i1, v1 in pairs(v:GetChildren()) do
  633. if v1:IsA("Motor6D") then
  634. v1.Part0 = nil
  635. end
  636. end
  637. end
  638. end
  639. part.Archivable = true
  640. for i, v in pairs(R6parts) do
  641. local part = part:Clone()
  642. part:ClearAllChildren()
  643. part.Name = v.Name
  644. part.Size = v.Size
  645. part.CFrame = cfr
  646. part.Anchored = false
  647. part.Transparency = 1
  648. part.CanCollide = false
  649. for i1, v1 in pairs(v.R15) do
  650. local R15part = gp(c, i1, "BasePart")
  651. local att = gp(R15part, "att1_" .. i1, "Attachment")
  652. if R15part then
  653. local weld = Instance.new("Weld", R15part)
  654. weld.Name = "Weld_" .. i1
  655. weld.Part0 = part
  656. weld.Part1 = R15part
  657. weld.C0 = cf(0, v1, 0)
  658. weld.C1 = cf(0, 0, 0)
  659. R15part.Massless = true
  660. R15part.Name = "R15_" .. i1
  661. R15part.Parent = part
  662. if att then
  663. att.Parent = part
  664. att.Position = v3(0, v1, 0)
  665. end
  666. end
  667. end
  668. part.Parent = c
  669. R6parts[i] = part
  670. end
  671. local R6joints = {
  672. neck = {
  673. Parent = Scarf,
  674. Name = "Neck",
  675. Part0 = Scarf, --R6parts.torso
  676. Part1 = Scarf, --R6parts.head
  677. C0 = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
  678. C1 = cf(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  679. },
  680. rootJoint = {
  681. Parent = R6parts.root,
  682. Name = "RootJoint" ,
  683. Part0 = R6parts.root,
  684. Part1 = R6parts.torso,
  685. C0 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
  686. C1 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  687. },
  688. rightShoulder = {
  689. Parent = R6parts.torso,
  690. Name = "Right Shoulder",
  691. Part0 = R6parts.torso,
  692. Part1 = R6parts.rightArm,
  693. C0 = cf(1, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
  694. C1 = cf(-0.5, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  695. },
  696. leftShoulder = {
  697. Parent = R6parts.torso,
  698. Name = "Left Shoulder",
  699. Part0 = R6parts.torso,
  700. Part1 = R6parts.leftArm,
  701. C0 = cf(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
  702. C1 = cf(0.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  703. },
  704. rightHip = {
  705. Parent = R6parts.torso,
  706. Name = "Right Hip",
  707. Part0 = R6parts.torso,
  708. Part1 = R6parts.rightLeg,
  709. C0 = cf(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
  710. C1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  711. },
  712. leftHip = {
  713. Parent = R6parts.torso,
  714. Name = "Left Hip" ,
  715. Part0 = R6parts.torso,
  716. Part1 = R6parts.leftLeg,
  717. C0 = cf(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
  718. C1 = cf(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  719. }
  720. }
  721. for i, v in pairs(R6joints) do
  722. local joint = Instance.new("Motor6D")
  723. for prop, val in pairs(v) do
  724. joint[prop] = val
  725. end
  726. R6joints[i] = joint
  727. end
  728. hum1.RigType = Enum.HumanoidRigType.R6
  729. hum1.HipHeight = 0
  730. end
  731. end
  732.  
  733.  
  734.  
  735. --find rig joints
  736.  
  737. local function fakemotor()
  738. return {C0=cf(), C1=cf()}
  739. end
  740.  
  741. local torso = gp(c, "Torso", "BasePart")
  742. local root = gp(c, "HumanoidRootPart", "BasePart")
  743.  
  744. local neck = gp(torso, "Neck", "Motor6D")
  745. neck = neck or fakemotor()
  746.  
  747. local rootJoint = gp(root, "RootJoint", "Motor6D")
  748. rootJoint = rootJoint or fakemotor()
  749.  
  750. local leftShoulder = gp(torso, "Left Shoulder", "Motor6D")
  751. leftShoulder = leftShoulder or fakemotor()
  752.  
  753. local rightShoulder = gp(torso, "Right Shoulder", "Motor6D")
  754. rightShoulder = rightShoulder or fakemotor()
  755.  
  756. local leftHip = gp(torso, "Left Hip", "Motor6D")
  757. leftHip = leftHip or fakemotor()
  758.  
  759. local rightHip = gp(torso, "Right Hip", "Motor6D")
  760. rightHip = rightHip or fakemotor()
  761.  
  762. --120 fps
  763.  
  764. local fps = 0
  765. local event = Instance.new("BindableEvent", c)
  766. event.Name = "120 fps"
  767. local floor = math.floor
  768. fps = 1 / fps
  769. local tf = 0
  770. local con = nil
  771. con = game:GetService("RunService").RenderStepped:Connect(function(s)
  772. if not c then
  773. con:Disconnect()
  774. return
  775. end
  776. --tf += s
  777. if tf >= fps then
  778. for i=1, floor(tf / fps) do
  779. event:Fire(c)
  780. end
  781. tf = 0
  782. end
  783. end)
  784. local event = event.Event
  785.  
  786. local hedrot = v3(0, 5, 0)
  787.  
  788. local uis = game:GetService("UserInputService")
  789. local function isPressed(key)
  790. return (not uis:GetFocusedTextBox()) and uis:IsKeyDown(Enum.KeyCode[key])
  791. end
  792.  
  793. local biggesthandle = nil
  794. for i, v in pairs(c:GetChildren()) do
  795. if v:IsA("Accessory") and v.Name == "VANS_Umbrella" then
  796. local handle = gp(v, "Handle", "BasePart")
  797. if biggesthandle then
  798. if biggesthandle.Size.Magnitude < handle.Size.Magnitude then
  799. biggesthandle = Handle
  800. end
  801. else
  802. biggesthandle = gp(v, "Handle", "BasePart")
  803. end
  804. end
  805. end
  806.  
  807. if not biggesthandle then
  808. return
  809. end
  810.  
  811. local handle1 = gp(gp(model, biggesthandle.Parent.Name, "Accessory"), "Handle", "BasePart")
  812. if not handle1 then
  813. return
  814. end
  815.  
  816. handle1.Destroying:Connect(function()
  817. handle1 = nil
  818. end)
  819. biggesthandle.Destroying:Connect(function()
  820. biggesthandle = nil
  821. end)
  822.  
  823. biggesthandle:BreakJoints()
  824. biggesthandle.Anchored = true
  825.  
  826. for i, v in pairs(handle1:GetDescendants()) do
  827. if v:IsA("AlignOrientation") then
  828. v.Enabled = false
  829. end
  830. end
  831.  
  832. local mouse = lp:GetMouse()
  833. local fling = false
  834. mouse.Button1Down:Connect(function()
  835. fling = true
  836. end)
  837. mouse.Button1Up:Connect(function()
  838. fling = false
  839. end)
  840. local function doForSignal(signal, vel)
  841. spawn(function()
  842. while signal:Wait() and c and handle1 and biggesthandle do
  843. if fling and mouse.Target then
  844. biggesthandle.Position = mouse.Hit.Position
  845. end
  846. handle1.RotVelocity = vel
  847. end
  848. end)
  849. end
  850. doForSignal(stepped, v3(10000, 10000, 10000))
  851. doForSignal(renderstepped, v3(10000, 10000, 10000))
  852. doForSignal(heartbeat, v3(200000000000000, 200000000000000, 200000000000000)) --https://web.roblox.com/catalog/63690008/Pal-Hair
  853.  
  854.  
  855. local lp = game:GetService("Players").LocalPlayer
  856. local rs = game:GetService("RunService")
  857. local stepped = rs.Stepped
  858. local heartbeat = rs.Heartbeat
  859. local renderstepped = rs.RenderStepped
  860. local sg = game:GetService("StarterGui")
  861. local ws = game:GetService("Workspace")
  862. local cf = CFrame.new
  863. local v3 = Vector3.new
  864. local v3_0 = Vector3.zero
  865. local inf = math.huge
  866.  
  867. local cplayer = lp.Character
  868.  
  869. local v3 = Vector3.new
  870.  
  871. local function gp(parent, name, className)
  872. if typeof(parent) == "Instance" then
  873. for i, v in pairs(parent:GetChildren()) do
  874. if (v.Name == name) and v:IsA(className) then
  875. return v
  876. end
  877. end
  878. end
  879. return nil
  880. end
  881.  
  882. local hat2 = gp(cplayer, "Hat1", "Accessory")
  883. local handle2 = gp(hat2, "Handle", "BasePart")
  884. local att2 = gp(handle2, "att1_Handle", "Attachment")
  885. att2.Parent = cplayer["Torso"]
  886. att2.Position = Vector3.new(0.5, -0, 0)
  887. att2.Rotation = Vector3.new(90, 0, 0)
  888.  
  889. local hat2 = gp(cplayer, "Pal Hair", "Accessory")
  890. local handle2 = gp(hat2, "Handle", "BasePart")
  891. local att2 = gp(handle2, "att1_Handle", "Attachment")
  892. att2.Parent = cplayer["Torso"]
  893. att2.Position = Vector3.new(-0.5, -0, 0)
  894. att2.Rotation = Vector3.new(90, 0, 0)
  895.  
  896. local hat2 = gp(cplayer, "Pink Hair", "Accessory")
  897. local handle2 = gp(hat2, "Handle", "BasePart")
  898. local att2 = gp(handle2, "att1_Handle", "Attachment")
  899. att2.Parent = cplayer["Left Arm"]
  900. att2.Position = Vector3.new(0, -0, 0)
  901. att2.Rotation = Vector3.new(90, 0, 0)
  902.  
  903. local hat2 = gp(cplayer, "Kate Hair", "Accessory")
  904. local handle2 = gp(hat2, "Handle", "BasePart")
  905. local att2 = gp(handle2, "att1_Handle", "Attachment")
  906. att2.Parent = cplayer["Right Arm"]
  907. att2.Position = Vector3.new(-0, -0, 0)
  908. att2.Rotation = Vector3.new(90, 0, 0) --LavanderHair
  909.  
  910. local hat2 = gp(cplayer, "VANS_Umbrella", "Accessory")
  911. local handle2 = gp(hat2, "Handle", "BasePart")
  912. local att2 = gp(handle2, "att1_Handle", "Attachment")
  913. att2.Parent = cplayer["Right Arm"]
  914. att2.Position = Vector3.new(0, -5, -4.6)
  915. att2.Rotation = Vector3.new(0, 0, 0)
  916.  
  917. local hat2 = gp(cplayer, "LavanderHair", "Accessory")
  918. local handle2 = gp(hat2, "Handle", "BasePart")
  919. local att2 = gp(handle2, "att1_Handle", "Attachment")
  920. att2.Parent = cplayer["Right Leg"]
  921. att2.Position = Vector3.new(0, 0, 0) --Robloxclassicred
  922. att2.Rotation = Vector3.new(90, 0, 0)
  923.  
  924. local hat2 = gp(cplayer, "Robloxclassicred", "Accessory")
  925. local handle2 = gp(hat2, "Handle", "BasePart")
  926. local att2 = gp(handle2, "att1_Handle", "Attachment")
  927. att2.Parent = cplayer["Left Leg"]
  928. att2.Position = Vector3.new(-0, 0, 0)
  929. att2.Rotation = Vector3.new(90, 0, 0)
  930.  
  931. --[[_G.loop = true
  932. local player = game.Players.LocalPlayer
  933. local char = player.Character
  934. local Align = function(Part0, Part1,Mesh)
  935. local Aligns = {
  936. AlignOrientation = Instance.new("AlignOrientation", Part0),
  937. AlignPosition = Instance.new("AlignPosition", Part0)
  938. }
  939.  
  940. local Attachments = {
  941. Attach0 = Instance.new("Attachment", Part0),
  942. Attach1 = Instance.new("Attachment", Part1)
  943. }
  944. local m = Part0:FindFirstChildOfClass('SpecialMesh')--This will get the first "SpecialMesh" it finds if it does not find any, then it will return nil
  945. if Mesh and m then --If Mesh is set to true and it finds a mesh it will destroy it
  946. m:Destroy()
  947. end
  948. Part0:BreakJoints()
  949. Aligns.AlignOrientation.Attachment0 = Attachments.Attach0
  950. Aligns.AlignOrientation.Attachment1 = Attachments.Attach1
  951. Aligns.AlignOrientation.Responsiveness = math.huge
  952. Aligns.AlignOrientation.RigidityEnabled = true
  953.  
  954. Aligns.AlignPosition.Attachment0 = Attachments.Attach0
  955. Aligns.AlignPosition.Attachment1 = Attachments.Attach1
  956. Aligns.AlignPosition.Responsiveness = math.huge
  957. Aligns.AlignPosition.RigidityEnabled = true
  958. Aligns.AlignPosition.MaxForce = 999999999
  959. spawn(function()
  960. while _G.loop do
  961. local mag = (Part0.Position - (Part1.CFrame*Attachments.Attach0.CFrame:Inverse()).p).magnitude--magnitude can get the distance between two cframe or position
  962. if mag >= 5 then
  963. Part0.CFrame = Part1.CFrame*Attachments.Attach0.CFrame:Inverse()
  964. end
  965. Part0.Velocity = Vector3.new(0,35,0)
  966. game['Run Service'].Heartbeat:wait()
  967. end
  968. end)
  969. return {Attachments.Attach0, Attachments, Aligns}
  970.  
  971. end
  972. local hat = Align(char['VANS_Umbrella'].Handle,char['HumanoidRootPart'],false)
  973. local cf = char['HumanoidRootPart'].CFrame*CFrame.new(0,-10,-0)*CFrame.Angles(math.rad(0),math.rad(0),0)
  974. hat[1].CFrame = cf:Inverse() * char['HumanoidRootPart'].CFrame
  975. spawn(function()
  976. char.AncestryChanged:wait()--if you respawn, it will stop the loop to avoid lag of using it over and over
  977. _G.loop = false
  978. end)
  979. for i,v in pairs (char:GetChildren()) do
  980. if v:IsA("Accessory") then
  981. v.Handle.Massless = true
  982. v.Handle.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  983. end
  984. end]] --nvm
  985.  
  986. local script = game:GetObjects("rbxassetid://13134428195")[1] --important stuff
  987. script.Parent = game:GetService("Players").LocalPlayer
  988.  
  989.  
  990. local Player = game:GetService("Players").LocalPlayer Mouse = Player:GetMouse()
  991. --local Mouse--,mouse,UserInputService,ContextActionService
  992. do
  993. local CAS = {Actions={}}
  994. local Event = Instance.new("RemoteEvent")
  995. Event.Name = "UserInputEvent"
  996. Event.Parent = Player.Character
  997. local fakeEvent = function()
  998. local t = {_fakeEvent=true}
  999. t.Connect = function(self,f)self.Function=f end
  1000. t.connect = t.Connect
  1001. return t
  1002. end
  1003. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  1004. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  1005. function CAS:BindAction(name,fun,touch,...)
  1006. CAS.Actions[name] = {Name=name,Function=fun,Keys={...}}
  1007. end
  1008. function CAS:UnbindAction(name)
  1009. CAS.Actions[name] = nil
  1010. end
  1011. local function te(self,ev,...)
  1012. local t = m[ev]
  1013. if t and t._fakeEvent and t.Function then
  1014. t.Function(...)
  1015. end
  1016. end
  1017. m.TrigEvent = te
  1018. UIS.TrigEvent = te
  1019. Event.OnClientEvent:Connect(function(plr,io)
  1020. if plr~=Player then return end
  1021. if io.isMouse then
  1022. m.Target = io.Target
  1023. m.Hit = io.Hit
  1024. elseif io.UserInputType == Enum.UserInputType.MouseButton1 then
  1025. if io.UserInputState == Enum.UserInputState.Begin then
  1026. m:TrigEvent("Button1Down")
  1027. else
  1028. m:TrigEvent("Button1Up")
  1029. end
  1030. else
  1031. for n,t in pairs(CAS.Actions) do
  1032. for _,k in pairs(t.Keys) do
  1033. if k==io.KeyCode then
  1034. t.Function(t.Name,io.UserInputState,io)
  1035. end
  1036. end
  1037. end
  1038. if io.UserInputState == Enum.UserInputState.Begin then
  1039. m:TrigEvent("KeyDown",io.KeyCode.Name:lower())
  1040. UIS:TrigEvent("InputBegan",io,false)
  1041. else
  1042. m:TrigEvent("KeyUp",io.KeyCode.Name:lower())
  1043. UIS:TrigEvent("InputEnded",io,false)
  1044. end
  1045. end
  1046. end)
  1047. --Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  1048. end
  1049.  
  1050. --BasicFunctions
  1051. local ins = Instance.new
  1052. local v3 = Vector3.new
  1053. local cf = CFrame.new
  1054. local angles = CFrame.Angles
  1055. local rad = math.rad
  1056. local huge = math.huge
  1057. local cos = math.cos
  1058. local sin = math.sin
  1059. local tan = math.tan
  1060. local abs = math.abs
  1061. local ray = Ray.new
  1062. local random = math.random
  1063. local ud = UDim.new
  1064. local ud2 = UDim2.new
  1065. local c3 = Color3.new
  1066. local rgb = Color3.fromRGB
  1067. local bc = BrickColor.new
  1068.  
  1069. --Services
  1070. local plrs = game:GetService("Players")
  1071. local tweens = game:GetService("TweenService")
  1072. local debrs = game:GetService("Debris")
  1073. local runservice = game:GetService("RunService")
  1074.  
  1075. --Variables
  1076. local plr = Player
  1077. local plrg = plr.PlayerGui
  1078. local char = plr.Character
  1079. local h = char.Head
  1080. local t = char.Torso
  1081. local ra = char["Right Arm"]
  1082. local la = char["Left Arm"]
  1083. local rl = char["Right Leg"]
  1084. local ll = char["Left Leg"]
  1085. local rut = char.HumanoidRootPart
  1086. local hum = char:FindFirstChildOfClass("Humanoid")
  1087. local nec = t.Neck
  1088. local rutj = rut.RootJoint
  1089. local rs = t["Right Shoulder"]
  1090. local ls = t["Left Shoulder"]
  1091. local rh = t["Right Hip"]
  1092. local lh = t["Left Hip"]
  1093.  
  1094. necc0,necc1=cf(0,t.Size.Y/2,0),cf(0,-h.Size.Y/2,0)
  1095. rutjc0,rutjc1=cf(0,0,0),cf(0,0,0)
  1096. rsc0,rsc1=cf(t.Size.X/2,t.Size.Y/4,0),cf(-ra.Size.X/2,ra.Size.Y/4,0)
  1097. lsc0,lsc1=cf(-t.Size.X/2,t.Size.Y/4,0),cf(la.Size.X/2,la.Size.Y/4,0)
  1098. rhc0,rhc1=cf(t.Size.X/4,-t.Size.Y/2,0),cf(0,rl.Size.Y/2,0)
  1099. lhc0,lhc1=cf(-t.Size.X/4,-t.Size.Y/2,0),cf(0,ll.Size.Y/2,0)
  1100. script.Client.Disabled = false
  1101. local muted = false
  1102. local using = false
  1103.  
  1104. local anim = "idle"
  1105. local asset = "rbxassetid://"
  1106.  
  1107. local change = 1
  1108. local sine = 0
  1109.  
  1110. local combo = 1
  1111.  
  1112. local timePos = 0
  1113. local staticTimePos = 0
  1114.  
  1115. local ws = 25
  1116. local jp = 65
  1117.  
  1118. --
  1119. local stepsounds = {
  1120. Grass = asset.."1201103066",
  1121. Sand = asset.."1436385526",
  1122. Plastic = asset.."1569994049",
  1123. Stone = asset.."507863857", --379398649
  1124. Wood = asset.."1201103959",
  1125. Pebble = asset.."1201103211",
  1126. Ice = asset.."265653271",
  1127. Glass = asset.."145180170",
  1128. Metal = asset.."379482691"
  1129. }
  1130.  
  1131. local directions = {In = Enum.EasingDirection.In,
  1132. Out = Enum.EasingDirection.Out,
  1133. InOut = Enum.EasingDirection.InOut
  1134. }
  1135.  
  1136. local styles = {Linear = Enum.EasingStyle.Linear,
  1137. Back = Enum.EasingStyle.Back,
  1138. Bounce = Enum.EasingStyle.Bounce,
  1139. Sine = Enum.EasingStyle.Sine,
  1140. Quad = Enum.EasingStyle.Quad,
  1141. Elastic = Enum.EasingStyle.Elastic,
  1142. Quart = Enum.EasingStyle.Quart,
  1143. Quint = Enum.EasingStyle.Quint
  1144. }
  1145.  
  1146. local swings = {
  1147. 2490619022,
  1148. 2490619317
  1149. }
  1150.  
  1151. local stepped = runservice.Heartbeat
  1152.  
  1153. --Removing joints/Animations
  1154. if char:FindFirstChild("Animate") then
  1155. char.Animate:Destroy()
  1156. end
  1157.  
  1158. if hum:FindFirstChildOfClass("Animator") then
  1159. char.Humanoid.Animator:Destroy()
  1160. end
  1161.  
  1162. hum.MaxHealth = 25000
  1163. hum.Health = hum.MaxHealth
  1164.  
  1165. nec.Parent = nil
  1166. rutj.Parent = nil
  1167. rs.Parent = nil
  1168. ls.Parent = nil
  1169. rh.Parent = nil
  1170. lh.Parent = nil
  1171.  
  1172. --Joints
  1173. local nec = ins("Motor6D",t) nec.Name = "Neck" nec.Part0 = t nec.Part1 = h
  1174. local rutj = ins("Motor6D",rut) rutj.Name = "RootJoint" rutj.Part0 = t rutj.Part1 = rut
  1175. local rs = ins("Motor6D",t) rs.Name = "Right Shoulder" rs.Part0 = t rs.Part1 = ra
  1176. local ls = ins("Motor6D",t) ls.Name = "Left Shoulder" ls.Part0 = t ls.Part1 = la
  1177. local rh = ins("Motor6D",t) rh.Name = "Right Hip" rh.Part0 = t rh.Part1 = rl
  1178. local lh = ins("Motor6D",t) lh.Name = "Left Hip" lh.Part0 = t lh.Part1 = ll
  1179.  
  1180. --Setting CFrames
  1181. nec.C1 = necc1
  1182. nec.C0 = necc0
  1183. rs.C1 = rsc1
  1184. rs.C0 = rsc0
  1185. ls.C1 = lsc1
  1186. ls.C0 = lsc0
  1187. rh.C1 = rhc1
  1188. rh.C0 = rhc0
  1189. lh.C1 = lhc1
  1190. lh.C0 = lhc0
  1191. rutj.C1 = rutjc1
  1192. rutj.C0 = rutjc0
  1193.  
  1194. --Functions1
  1195. function createWeld(p1,p2,c0,c1)
  1196. c0 = c0 or cf(0,0,0)
  1197. c1 = c1 or cf(0,0,0)
  1198. local weld = ins("Motor6D",p1)
  1199. weld.Part0 = p1
  1200. weld.Part1 = p2
  1201. weld.C0 = c0
  1202. weld.C1 = c1
  1203. return weld
  1204. end
  1205.  
  1206. --Adds
  1207. local damageBil = script.UIs.SPDamageUI
  1208.  
  1209. local scythe = script.Models.Scythe
  1210. scythe.Parent = char
  1211. --scythe.Transparency = 1
  1212.  
  1213.  
  1214. local handle = scythe.Handle
  1215. local blade = scythe.NeonBlade
  1216. blade.Transparency = 1
  1217. --Handle.Transparency = 1
  1218.  
  1219. game:GetService("Players").LocalPlayer.Character["Surfboard"].Handle.att1_Handle.Parent = handle
  1220. handle.att1_Handle.Rotation = Vector3.new(90,0,90)
  1221. handle.att1_Handle.Position = Vector3.new(0,2,0) --PlaneModel
  1222.  
  1223. game:GetService("Players").LocalPlayer.Character["PlaneModel"].Handle.att1_Handle.Parent = blade
  1224. blade.att1_Handle.Rotation = Vector3.new(0,0,0)
  1225. blade.att1_Handle.Position = Vector3.new(-1,0,0)
  1226.  
  1227. local handleWeld = createWeld(ra,handle,cf(0,-1,0) * angles(rad(-90),rad(0),rad(0)))
  1228.  
  1229. local shadow = ins("Model",char)
  1230. shadow.Name = "Shadow"
  1231.  
  1232. local ff = ins("ForceField",char)
  1233. ff.Visible = false
  1234.  
  1235. local effects = ins("Model",char)
  1236. effects.Name = "Effects"
  1237.  
  1238. local theme = ins("Sound",t)
  1239. theme.Volume = 1.5
  1240. theme.SoundId = asset..1493059596
  1241. theme.Looped = true
  1242. theme:Play()
  1243.  
  1244. local static = ins("Sound",blade)
  1245. static.Volume = 1
  1246. static.SoundId = asset..1080752200
  1247. static.Looped = true
  1248. static:Play()
  1249.  
  1250. function createShadow(p,off,trans)
  1251. if trans >1 then
  1252. return
  1253. end
  1254. local pa = ins("Part",shadow)
  1255. pa.Size = v3(.1*p.Size.x,.1*p.Size.y,.1*p.Size.z)
  1256. pa.Material = "Plastic"
  1257. pa.CanCollide = false
  1258. pa.Locked = true
  1259. pa.Color = c3(0,0,0)
  1260. pa.Transparency = trans
  1261. pa.Massless = true
  1262. pa.Name = "Shadow"
  1263. local mesh = ins("SpecialMesh",pa)
  1264. mesh.Scale = v3(1.255,1.265/2,1.255) * 10
  1265. mesh.Offset = v3(0,off,0)
  1266. local weld = createWeld(p,pa,cf(0,0,0),cf(0,0,0))
  1267. return pa
  1268. end
  1269.  
  1270. local off = .325*h.Size.y
  1271. for i = .325*h.Size.y,-.15*h.Size.y,-.0045*h.Size.y do
  1272. local e = createShadow(h,off,1 - i*2.75)
  1273. off = off -.0075*h.Size.y
  1274. end
  1275.  
  1276. local shaker = script.DistShaker:Clone()
  1277.  
  1278. --Functions2
  1279.  
  1280. function remove(instance,time)
  1281. time = time or 0
  1282. game:GetService("Debris"):AddItem(instance,time)
  1283. end
  1284.  
  1285. function swait()
  1286. game:GetService("RunService").Stepped:Wait()
  1287. end
  1288.  
  1289. function rayc(spos,direc,ignore,dist)
  1290. local rai = ray(spos,direc.Unit * dist)
  1291. local rhit,rpos,rrot = workspace:FindPartOnRayWithIgnoreList(rai,ignore,false,false)
  1292. return rhit,rpos,rrot
  1293. end
  1294.  
  1295. function sound(id,vol,pitch,parent,maxdist)
  1296. local mdist = 30 or maxdist
  1297. local newsound = Instance.new("Sound",parent)
  1298. newsound.Volume = vol
  1299. newsound.SoundId = "rbxassetid://"..id
  1300. newsound.Pitch = pitch
  1301. newsound:Play()
  1302. coroutine.resume(coroutine.create(function()
  1303. wait(.1)
  1304. remove(newsound,newsound.TimeLength/newsound.Pitch)
  1305. end))
  1306. return newsound
  1307. end
  1308.  
  1309. function placesoundpart(rcf,id,vol,pitch,maxdist)
  1310. pcall(function()
  1311. local mdist = 30 or maxdist
  1312. local spart = ins("Part",effects)
  1313. spart.Anchored = true
  1314. spart.CanCollide = false
  1315. spart.Locked = true
  1316. spart.Transparency = 1
  1317. spart.CFrame = rcf
  1318. local ssound = sound(id,vol,pitch,spart,mdist)
  1319. remove(spart,ssound.TimeLength/ssound.Pitch)
  1320. end)
  1321. end
  1322.  
  1323. local tlerp = function(part,tablee,leinght,easingstyle,easingdirec)
  1324. local info = TweenInfo.new(
  1325. leinght,
  1326. easingstyle,
  1327. easingdirec,
  1328. 0,
  1329. false,
  1330. 0
  1331. )
  1332. local lerp = tweens:Create(part,info,tablee)
  1333. lerp:Play()
  1334. end
  1335.  
  1336. local Effects = {
  1337. Ring = function(pos,color,sSize,eSize,sTrans,eTrans,time,style)
  1338. style = style or "Linear"
  1339. local ring = script.Effects.Ring:Clone()
  1340. ring.Size = sSize
  1341. ring.Transparency = sTrans
  1342. ring.CFrame = pos
  1343. ring.Color = color
  1344. ring.Parent = effects
  1345. remove(ring,time)
  1346. tlerp(ring,{Size = eSize,Transparency = eTrans},time,styles[style],directions.Out)
  1347. end,
  1348. SpinningRing = function(pos,color,rotation,sSize,eSize,sTrans,eTrans,time,style)
  1349. style = style or "Linear"
  1350. local ring = script.Effects.Ring:Clone()
  1351. ring.Size = sSize
  1352. ring.Transparency = sTrans
  1353. ring.CFrame = pos
  1354. ring.Color = color
  1355. ring.Parent = effects
  1356. remove(ring,time)
  1357. tlerp(ring,{Size = eSize,Transparency = eTrans},time,styles[style],directions.Out)
  1358. coroutine.wrap(function()
  1359. repeat
  1360. ring.CFrame = ring.CFrame * rotation
  1361. wait(1/30)
  1362. until not ring.Parent
  1363. end)()
  1364. end,
  1365. Sphere = function(pos,color,sSize,eSize,sTrans,eTrans,time,style)
  1366. style = style or "Linear"
  1367. local sphere = ins("Part")
  1368. sphere.Shape = "Ball"
  1369. sphere.Size = v3(sSize,sSize,sSize)
  1370. sphere.Transparency = sTrans
  1371. sphere.CFrame = pos
  1372. sphere.Color = color
  1373. sphere.Parent = effects
  1374. sphere.Anchored = true
  1375. sphere.CanCollide = false
  1376. sphere.Locked = true
  1377. sphere.Material = "Neon"
  1378. remove(sphere,time)
  1379. tlerp(sphere,{Size = v3(eSize,eSize,eSize),Transparency = eTrans},time,styles[style],directions.Out)
  1380. return sphere
  1381. end,
  1382. Beam = function(pos,color,sLength,eLength,sThickness,eThickness,sTrans,eTrans,time,style)
  1383. style = style or "Linear"
  1384. local sphere = ins("Part")
  1385. sphere.Shape = "Block"
  1386. sphere.Size = v3(sThickness,sLength,sThickness)
  1387. sphere.Transparency = sTrans
  1388. sphere.CFrame = pos
  1389. sphere.Color = color
  1390. sphere.Parent = effects
  1391. sphere.Anchored = true
  1392. sphere.CanCollide = false
  1393. sphere.Locked = true
  1394. sphere.Material = "Neon"
  1395. ins("CylinderMesh",sphere)
  1396. remove(sphere,time)
  1397. tlerp(sphere,{Size = v3(eThickness,eLength,eThickness),Transparency = eTrans},time,styles[style],directions.Out)
  1398. end,
  1399. SpinningBlock = function(pos,color,sSize,eSize,sTrans,eTrans,cfRotation,time,style)
  1400. style = style or "Linear"
  1401. local part = ins("Part")
  1402. part.Size = v3(sSize,sSize,sSize)
  1403. part.Transparency = sTrans
  1404. part.CFrame = pos
  1405. part.Color = color
  1406. part.Parent = effects
  1407. part.Anchored = true
  1408. part.CanCollide = false
  1409. part.Locked = true
  1410. part.Material = "Neon"
  1411. remove(part,time)
  1412. tlerp(part,{Size = v3(eSize,eSize,eSize),Transparency = eTrans},time,styles[style],directions.Out)
  1413. coroutine.wrap(function()
  1414. repeat
  1415. part.CFrame = part.CFrame * cfRotation
  1416. wait(1/30)
  1417. until not part.Parent
  1418. end)()
  1419. end,
  1420. CustomSphere = function(pos,endPos,color,sSize,eSize,sTrans,eTrans,time,style)
  1421. style = style or "Linear"
  1422. local sphere = ins("Part")
  1423. sphere.Size = sSize
  1424. sphere.Transparency = sTrans
  1425. sphere.CFrame = pos
  1426. sphere.Color = color
  1427. sphere.Parent = effects
  1428. sphere.Anchored = true
  1429. sphere.CanCollide = false
  1430. sphere.Locked = true
  1431. sphere.Material = "Neon"
  1432.  
  1433. local mesh = ins("SpecialMesh",sphere)
  1434. mesh.MeshType = "Sphere"
  1435.  
  1436. remove(sphere,time)
  1437. tlerp(sphere,{Size = eSize,Transparency = eTrans,CFrame = endPos},time,styles[style],directions.Out)
  1438. end,
  1439. CustomSphereBoomerang = function(pos,endPos,color,sSize,eSize,sTrans,eTrans,time,style)
  1440. style = style or "Linear"
  1441. local sphere = ins("Part")
  1442. sphere.Size = sSize
  1443. sphere.Transparency = sTrans
  1444. sphere.CFrame = pos
  1445. sphere.Color = color
  1446. sphere.Parent = effects
  1447. sphere.Anchored = true
  1448. sphere.CanCollide = false
  1449. sphere.Locked = true
  1450. sphere.Material = "Neon"
  1451.  
  1452. local mesh = ins("SpecialMesh",sphere)
  1453. mesh.MeshType = "Sphere"
  1454. coroutine.wrap(function()
  1455. remove(sphere,time)
  1456. tlerp(sphere,{Transparency = eTrans},time * 1.25,styles[style],directions.Out)
  1457. tlerp(sphere,{Size = eSize,CFrame = endPos},time/2,styles[style],directions.Out)
  1458. wait(time/2)
  1459. tlerp(sphere,{Size = sSize},time/2,styles[style],directions.Out)
  1460. end)()
  1461. end,
  1462. CustomSphereBoomerangPlusPos = function(pos,endPos,color,sSize,eSize,sTrans,eTrans,time,style)
  1463. style = style or "Linear"
  1464. local sphere = ins("Part")
  1465. sphere.Size = sSize
  1466. sphere.Transparency = sTrans
  1467. sphere.CFrame = pos
  1468. sphere.Color = color
  1469. sphere.Parent = effects
  1470. sphere.Anchored = true
  1471. sphere.CanCollide = false
  1472. sphere.Locked = true
  1473. sphere.Material = "Neon"
  1474.  
  1475. local mesh = ins("SpecialMesh",sphere)
  1476. mesh.MeshType = "Sphere"
  1477. coroutine.wrap(function()
  1478. remove(sphere,time)
  1479. tlerp(sphere,{Transparency = eTrans},time * 1.25,styles[style],directions.Out)
  1480. tlerp(sphere,{Size = eSize,CFrame = endPos},time/2,styles[style],directions.Out)
  1481. wait(time/2)
  1482. tlerp(sphere,{Size = sSize,CFrame = pos},time/2,styles[style],directions.Out)
  1483. end)()
  1484. end,
  1485. Wind = function(pos,color,rotation,sSize,eSize,sTrans,eTrans,time,style)
  1486. style = style or "Linear"
  1487. local ring = script.Effects.Wind:Clone()
  1488. ring.Size = sSize
  1489. ring.Transparency = sTrans
  1490. ring.CFrame = pos
  1491. ring.Color = color
  1492. ring.Parent = effects
  1493. remove(ring,time)
  1494. tlerp(ring,{Size = eSize,Transparency = eTrans},time,styles[style],directions.Out)
  1495. coroutine.wrap(function()
  1496. repeat
  1497. ring.CFrame = ring.CFrame * angles(rad(0),rad(rotation),rad(0))
  1498. wait(1/30)
  1499. until not ring.Parent
  1500. end)()
  1501. end,
  1502. CreateCamShake = function(part,maxDist,intensivity,time)
  1503. maxDist = maxDist or 20
  1504. intensivity = intensivity or 1
  1505. time = time or .1
  1506.  
  1507. local bool = ins("BoolValue",part)
  1508. bool.Name = "Shaking"
  1509. bool.Value = true
  1510.  
  1511. local MaxDist = ins("NumberValue",bool)
  1512. MaxDist.Name = "MaxDist"
  1513. MaxDist.Value = maxDist
  1514.  
  1515. local Intensivity = ins("NumberValue",bool)
  1516. Intensivity.Name = "Intensivity"
  1517. Intensivity.Value = intensivity
  1518.  
  1519. remove(bool,time)
  1520. end,
  1521. SoundEffect = function(sound,effect)
  1522. ins(effect.."SoundEffect",sound)
  1523. end
  1524. }
  1525.  
  1526. function death(whom)
  1527. coroutine.wrap(function()
  1528. if whom then
  1529. whom:BreakJoints()
  1530. remove(whom,7.5)
  1531. local p = whom:FindFirstChildWhichIsA("BasePart")
  1532. if p then
  1533. placesoundpart(p.CFrame,1835350947,2.5,random(120,130)/100,5)
  1534. end
  1535. for i,v in pairs(whom:GetChildren()) do
  1536. if v:IsA("BasePart") then
  1537. coroutine.wrap(function()
  1538. local clon = v:Clone()
  1539. remove(v)
  1540. clon.Anchored = true
  1541. clon.Massless = true
  1542. clon.CanCollide = false
  1543. clon.Locked = true
  1544. clon.Material = "Neon"
  1545. clon.CFrame = v.CFrame
  1546. clon.Transparency = 0
  1547. clon:ClearAllChildren()
  1548. clon.Color = bc("Royal purple").Color
  1549. if clon.Name == "Head" then
  1550. clon.Size = v3(clon.Size.Z,clon.Size.Z,clon.Size.Z)
  1551. end
  1552. clon.Parent = effects
  1553. local ori = clon.Orientation
  1554. local pos = clon.Position
  1555. local time = random(15,30)/10 * (clon.Size).Magnitude
  1556. local size = clon.Size
  1557. coroutine.wrap(function()
  1558. for i = 1,time,time/20 do
  1559. local c = clon.CFrame * cf(random(-(clon.Size.X * 10),(clon.Size.X * 10))/20,random(-(clon.Size.Y * 10),(clon.Size.Y * 10))/20,random(-(clon.Size.Z * 10),(clon.Size.Z * 10))/20)
  1560. Effects.CustomSphere(cf(c.Position),cf(c.Position) * cf(0,(-random(10,25)/10) * (clon.Size).Magnitude,0),bc("Royal purple").Color,v3(.15,.15,.15) * (clon.Size).Magnitude,v3(0,1,0) * (clon.Size).Magnitude,clon.Transparency,1,(random(15,30)/100) * (clon.Size).Magnitude,"Linear")
  1561. wait(time/20)
  1562. end
  1563. end)()
  1564. remove(clon,time)
  1565. tlerp(clon,{Position = pos + v3(0,(random(5,15)/10) * (clon.Size).Magnitude,0),Orientation = ori + v3(random(-15,15),random(-15,15),random(-15,15)) * (clon.Size).Magnitude,Transparency = 1},time,styles.Quart,directions.Out)
  1566. tlerp(clon,{Size = size * .5},time/2,styles.Back,directions.InOut)
  1567. wait(time/2)
  1568. tlerp(clon,{Size = size * 1.5},time/2,styles.Linear,directions.Out)
  1569. end)()
  1570. else
  1571. remove(v)
  1572. end
  1573. end
  1574. end
  1575. end)()
  1576. end
  1577.  
  1578. function showDamage(pos,text,time,animTime)
  1579. coroutine.wrap(function()
  1580. pos = pos or t.CFrame
  1581. text = text or "NULL"
  1582. time = time or 2
  1583. animTime = animTime or .5
  1584.  
  1585. local clon = damageBil:Clone()
  1586. local backG = clon.MainFrame
  1587. local tex = backG.Damage
  1588. local dFrame = clon.DropsFrame
  1589. local drop = dFrame.Drop
  1590. local p = ins("Part")
  1591.  
  1592. p.Locked = true
  1593. p.Massless = true
  1594. p.CanCollide = false
  1595. p.Anchored = true
  1596. p.Size = v3(0,0,0)
  1597. p.Transparency = 1
  1598. p.CFrame = cf(pos.Position) * cf(random(-25,25)/10,random(-25,25)/10,random(-25,25)/10)
  1599. p.Parent = effects
  1600.  
  1601. clon.Parent = p
  1602. drop.Parent = nil
  1603. drop.Visible = true
  1604.  
  1605. tex.Text = text
  1606.  
  1607. remove(p,time + (animTime * 2))
  1608.  
  1609. coroutine.wrap(function()
  1610. repeat
  1611. if p.Parent ~= effects then
  1612. remove(p)
  1613. end
  1614. local dClon = drop:Clone()
  1615. local dropPos = random(0,100)/100
  1616. local dropSize = random(5,15)/100
  1617. local growTime = random(15,25)/100
  1618. local fallTime = random(7,15)/100
  1619. local fallDelay = random(7,15)/100
  1620.  
  1621. dClon.Parent = dFrame
  1622. dClon.Position = ud2(dropPos,0,0,0)
  1623. dClon.Size = ud2(0,0,0,0)
  1624. dClon.ImageTransparency = 1
  1625. dClon.Visible = true
  1626.  
  1627. coroutine.wrap(function()
  1628. remove(dClon,growTime + fallTime + fallDelay)
  1629. tlerp(dClon,{ImageTransparency = backG.BackgroundTransparency,Size = ud2(dropSize,0,dropSize,0)},growTime,styles.Sine,directions.Out)
  1630. wait(growTime + fallDelay)
  1631. tlerp(dClon,{ImageTransparency = 1,Size = ud2(dropSize/2,0,dropSize * 12.5,0)},fallTime,styles.Sine,directions.Out)
  1632. end)()
  1633.  
  1634. wait(random(5,15)/100)
  1635. until not p.Parent
  1636. end)()
  1637.  
  1638. tlerp(backG,{BackgroundTransparency = .5},animTime,styles.Back,directions.In)
  1639. tlerp(tex,{TextTransparency = 0,TextStrokeTransparency = 0},animTime,styles.Back,directions.In)
  1640.  
  1641. wait(time)
  1642.  
  1643. tlerp(backG,{BackgroundTransparency = 1},animTime,styles.Back,directions.In)
  1644. tlerp(tex,{TextTransparency = 1,TextStrokeTransparency = 1},animTime,styles.Back,directions.In)
  1645. end)()
  1646. end
  1647.  
  1648. function damage(humanoid,Damage,knockback,knockbackStartPoint,knockbackTime,knockDelay,damageSound)
  1649. Damage = Damage or random(0,0)
  1650. knockback = knockback or 15
  1651. knockbackStartPoint = knockbackStartPoint or v3(0,0,0)
  1652. knockbackTime = knockbackTime or .15
  1653. knockDelay = knockDelay or .2
  1654. damageSound = damageSound or sound(851453784,1.5,random(90,110)/100,nil,1)
  1655. if humanoid and not humanoid:FindFirstChild("Dbounce'd") and humanoid.Health > .01 then
  1656. Damage = math.floor(Damage * (0 + humanoid.MaxHealth/0))
  1657. local part = humanoid.Parent:FindFirstChildOfClass("Part") or humanoid.Parent:FindFirstChildOfClass("MeshPart")
  1658. local deb = ins("BoolValue",humanoid)
  1659. deb.Name = "Dbounce'd"
  1660. remove(deb,knockDelay)
  1661. if part then
  1662. damageSound.Parent = part
  1663. local knock = ins("BodyVelocity",part)
  1664. knock.MaxForce = v3(huge,huge,huge)
  1665. knock.Velocity = -cf(part.Position,knockbackStartPoint).LookVector * knockback
  1666. showDamage(part.CFrame,"-"..Damage,random(0,0)/0,0)
  1667. remove(knock,knockbackTime)
  1668. end
  1669. if humanoid.MaxHealth > 0 then
  1670. sound(1753674936,5,1,t,5)
  1671. death(humanoid.Parent)
  1672. end
  1673. humanoid.Health = humanoid.Health - Damage
  1674. if humanoid.Health < .01 then
  1675. death(humanoid.Parent)
  1676. if part then
  1677. placesoundpart(part,2801263,15,random(90,110)/100,1)
  1678. end
  1679. end
  1680. end
  1681. end
  1682.  
  1683. --[[function magDamage(pos,partSize,size,Damage,knockback,knockbackTime,knockDelay,damageSound)
  1684. local reg
  1685. local knockPoint
  1686. if typeof(pos) == "Vector3" then
  1687. reg = Region3.new(pos - v3(size/2,size/2,size/2),pos + v3(size/2,size/2,size/2))
  1688. knockPoint = pos
  1689. elseif typeof(pos) == "Instance" then
  1690. knockPoint = pos.Position
  1691. if partSize then
  1692. reg = Region3.new(pos.CFrame * cf(-pos.Size.X/2,-pos.Size.Y/2,-pos.Size.Y/2).Position,pos.CFrame * cf(pos.Size.X/2,pos.Size.Y/2,pos.Size.Z/2).Position)
  1693. else
  1694. reg = Region3.new(pos.Position - v3(size/2,size/2,size/2),pos.Position + v3(size/2,size/2,size/2))
  1695. end
  1696. end
  1697. if reg then
  1698. for i,v in pairs(workspace:FindPartsInRegion3WithIgnoreList(reg,{char},0)) do
  1699. local humm = v.Parent:FindFirstChildOfClass("Humanoid")
  1700. if humm then
  1701. damage(humm,Damage,knockback,knockPoint,knockbackTime,knockDelay,damageSound)
  1702. end
  1703. end
  1704. end
  1705. end]]
  1706.  
  1707. function swing1()
  1708. using = true
  1709. local oldWS = ws
  1710. local oldJP = jp
  1711. ws = 4
  1712. jp = 45
  1713. local add = -.035
  1714. local alpha = .5
  1715. sound(swings[random(1,#swings)],2.5,random(60,80)/100,ra,1)
  1716. for i = 0,1,.075 do
  1717. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(-5),rad(35),rad(0)),alpha)
  1718. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,.1,-.1) * angles(rad(-5),rad(45),rad(-5)),alpha)
  1719. rs.C0 = rs.C0:Lerp(rsc0 * cf(0,-.15,.25) * angles(rad(205),rad(25),rad(0)) * angles(rad(-5),rad(0),rad(15)),alpha)
  1720. ls.C0 = ls.C0:Lerp(lsc0 * cf(.075,-.15,.15) * angles(rad(15),rad(-25),rad(-7.5)),alpha)
  1721. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,0,0) * angles(rad(2.5),rad(-5),rad(2.5)),alpha)
  1722. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,.05,-.05) * angles(rad(-20),rad(15),rad(-5)),alpha)
  1723. handleWeld.C0 = handleWeld.C0:Lerp(cf(0,-1,0) * angles(rad(-75),rad(10),rad(0)),alpha)
  1724. alpha = alpha + add
  1725. swait()
  1726. end
  1727. alpha = .25
  1728. add = .15
  1729. for i = 0,1,.125 do
  1730. local s = sound(566593606,1.5,random(85,115)/100,nil,2.5)
  1731. s.TimePosition = .075
  1732. --magDamage(blade,false,10,random(15,25),random(20,40),.1,.35,s)
  1733. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(2.5),rad(-30),rad(0)),alpha)
  1734. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,.125,.25) * angles(rad(5),rad(-45),rad(5)),alpha)
  1735. rs.C0 = rs.C0:Lerp(rsc0 * cf(0,-.25,-.35) * angles(rad(35),rad(-50),rad(0)) * angles(rad(0),rad(0),rad(-7.5)),alpha)
  1736. ls.C0 = ls.C0:Lerp(lsc0 * cf(.1,-.2,.1) * angles(rad(-15),rad(15),rad(-5)),alpha)
  1737. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,.05,-.05) * angles(rad(-12.5),rad(-10),rad(2.5)),alpha)
  1738. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,0,0) * angles(rad(5),rad(5),rad(2.5)),alpha)
  1739. handleWeld.C0 = handleWeld.C0:Lerp(cf(0,-1,0) * angles(rad(-110),rad(20),rad(0)),alpha)
  1740. alpha = alpha + add
  1741. if alpha >1 then
  1742. add = -math.abs(add)
  1743. end
  1744. swait()
  1745. end
  1746. ws = oldWS
  1747. jp = oldJP
  1748. using = false
  1749. end
  1750.  
  1751. function swing2()
  1752. using = true
  1753. local oldWS = ws
  1754. local oldJP = jp
  1755. ws = 4
  1756. jp = 45
  1757. local add = -.035
  1758. local alpha = .5
  1759. sound(swings[random(1,#swings)],2.5,random(60,80)/100,ra,1)
  1760. for i = 0,1,.075 do
  1761. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(0),rad(-60),rad(0)),alpha)
  1762. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,0,0) * angles(rad(2.5),rad(-60),rad(-7.5)),alpha)
  1763. rs.C0 = rs.C0:Lerp(rsc0 * cf(0,0,-.5) * angles(rad(85),rad(95),rad(0)) * angles(rad(20),rad(0),rad(0)),alpha)
  1764. ls.C0 = ls.C0:Lerp(lsc0 * cf(0,-.2,.15) * angles(rad(-10),rad(10),rad(-5)),alpha)
  1765. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,-.1,0) * angles(rad(-15),rad(-5),rad(-5)),alpha)
  1766. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,-.1,-.15) * angles(rad(20),rad(5),rad(-10)),alpha)
  1767. handleWeld.C0 = handleWeld.C0:Lerp(cf(0,-1,0) * angles(rad(-85),rad(0),rad(0)),alpha)
  1768. alpha = alpha + add
  1769. swait()
  1770. end
  1771. alpha = .25
  1772. add = .15
  1773. for i = 0,1,.125 do
  1774. local s = sound(566593606,1.5,random(85,115)/100,nil,2.5)
  1775. s.TimePosition = .075
  1776. --magDamage(blade,false,10,random(15,25),random(20,40),.1,.35,s)
  1777. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(0),rad(75),rad(0)),alpha)
  1778. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,0,0) * angles(rad(-2.5),rad(75),rad(0)),alpha)
  1779. rs.C0 = rs.C0:Lerp(rsc0 * cf(0,0,-.35) * angles(rad(90),rad(85),rad(0)) * angles(rad(-105),rad(0),rad(0)),alpha)
  1780. ls.C0 = ls.C0:Lerp(lsc0 * cf(0,-.25,.25) * angles(rad(25),rad(-35),rad(-7.5)),alpha)
  1781. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,0,0) * angles(rad(15),rad(-5),rad(1.5)),alpha)
  1782. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,0,0) * angles(rad(-15),rad(5),rad(-5)),alpha)
  1783. handleWeld.C0 = handleWeld.C0:Lerp(cf(0,-1,0) * angles(rad(-120),rad(0),rad(0)),alpha)
  1784. alpha = alpha + add
  1785. if alpha >1 then
  1786. add = -math.abs(add)
  1787. end
  1788. swait()
  1789. end
  1790. ws = oldWS
  1791. jp = oldJP
  1792. using = false
  1793. end
  1794.  
  1795. --[[
  1796. local alpha = .35
  1797. for i = 0,1,.025 do
  1798. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),alpha)
  1799. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),alpha)
  1800. rs.C0 = rs.C0:Lerp(rsc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),alpha)
  1801. ls.C0 = ls.C0:Lerp(lsc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),alpha)
  1802. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),alpha)
  1803. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),alpha)
  1804. alpha = alpha -.025
  1805. swait()
  1806. end
  1807. function base()
  1808. using = true
  1809. local oldWS = ws
  1810. local oldJP = jp
  1811. ws = 0
  1812. jp = 0
  1813.  
  1814. ws = oldWS
  1815. jp = oldJP
  1816. using = false
  1817. end
  1818. --]]
  1819.  
  1820. local combos = {swing1,swing2}
  1821.  
  1822. mouse.KeyDown:Connect(function(key)
  1823. if not using then
  1824.  
  1825. end
  1826. if key == "m" then
  1827. muted = not muted
  1828. end
  1829. end)
  1830.  
  1831. mouse.Button1Down:Connect(function()
  1832. if not using then
  1833. combos[combo]()
  1834. combo = combo +1
  1835. if combo >#combos then
  1836. combo = 1
  1837. end
  1838. end
  1839. end)
  1840.  
  1841. stepped:Connect(function()
  1842. sine = sine + change
  1843.  
  1844. local verVel = rut.Velocity.y
  1845. local horVel = (rut.Velocity * v3(1,0,1)).Magnitude
  1846.  
  1847. local Ccf=rut.CFrame
  1848.  
  1849. local dir = hum.MoveDirection
  1850.  
  1851. if dir == v3(0,0,0) then
  1852. dir = rut.Velocity/10
  1853. end
  1854.  
  1855. if theme.Parent ~= t then
  1856. remove(theme)
  1857. theme = ins("Sound",t)
  1858. theme.Volume = 1.5
  1859. theme.SoundId = asset..1493059596
  1860. theme.Looped = true
  1861. theme.TimePosition = timePos
  1862. theme:Play()
  1863. end
  1864.  
  1865. if static.Parent ~= t then
  1866. remove(static)
  1867. static = ins("Sound",t)
  1868. static.Volume = 1.5
  1869. static.SoundId = asset..1080752200
  1870. static.Looped = true
  1871. static.TimePosition = staticTimePos
  1872. static:Play()
  1873. end
  1874.  
  1875. if not muted then
  1876. theme.Volume = 1.5
  1877. else
  1878. theme.Volume = 0
  1879. end
  1880. theme.SoundId = asset..1493059596
  1881. theme.Looped = true
  1882. theme:Resume()
  1883. theme.Name = "Theme"
  1884.  
  1885. static.Volume = .75
  1886. static.SoundId = asset..1080752200
  1887. static.Looped = true
  1888. static:Resume()
  1889. static.Name = "Static"
  1890.  
  1891. timePos = theme.TimePosition
  1892. staticTimePos = static.TimePosition
  1893.  
  1894. local Walktest1 = dir * Ccf.LookVector
  1895. local Walktest2 = dir * Ccf.RightVector
  1896.  
  1897. local rotfb = Walktest1.X+Walktest1.Z
  1898. local rotrl = Walktest2.X+Walktest2.Z
  1899.  
  1900. if rotfb >1 then
  1901. rotfb = 1
  1902. elseif rotfb <-1 then
  1903. rotfb = -1
  1904. end
  1905.  
  1906. if rotrl >1 then
  1907. rotrl = 1
  1908. elseif rotrl <-1 then
  1909. rotrl = -1
  1910. end
  1911.  
  1912. hum.WalkSpeed = ws
  1913. hum.JumpPower = jp
  1914.  
  1915. --[[for i,v in pairs(game:GetService("Players"):GetPlayers()) do
  1916. if not v.PlayerGui:FindFirstChild(shaker.Name) then
  1917. local shak = shaker:Clone()
  1918. shak.Parent = v.PlayerGui
  1919. shak.Disabled = false
  1920. end
  1921. end]]
  1922.  
  1923. local hit,pos,nId = rayc(rut.Position + v3(0,-rut.Size.y/2,0),v3(rut.Position.x,-10000,rut.Position.z),{char},3)
  1924.  
  1925. if using then
  1926. anim = "idle"
  1927. end
  1928.  
  1929. if anim == "idle" and hit then
  1930. nec.C1 = nec.C1:Lerp(necc1 * cf(0,0,0) * angles(sin(sine/20) * rad(2.5),sin(sine/40) * rad(1),sin(sine/40) * rad(5)),.1)
  1931. rutj.C1 = rutj.C1:Lerp(rutjc1 * cf(sin(sine/40)/15,sin(sine/20)/15,sin(sine/60)/15) * angles(sin(sine/20) * rad(2.5),sin(sine/80) * rad(5),sin(sine/40) * rad(2.5)),.1)
  1932. rs.C1 = rs.C1:Lerp(rsc1 * cf(0,-sin(sine/20)/15,0) * angles(-sin(sine/20) * rad(1.5),sin(sine/80) * rad(5),sin(sine/40) * rad(1.5)),.1)
  1933. ls.C1 = ls.C1:Lerp(lsc1 * cf(0,sin(sine/20)/15,0) * angles(-cos(sine/20) * rad(7.5),sin(sine/80) * rad(5),sin(sine/40) * rad(2.5)),.1)
  1934. rh.C1 = rh.C1:Lerp(rhc1 * cf(0,(sin(sine/20)/15) + (sin(sine/40)/25),0) * angles((sin(sine/20) * rad(3.5)) + (sin(sine/80) * rad(2.5)),rad(0),sin(sine/40) * rad(5)),.1)
  1935. lh.C1 = lh.C1:Lerp(lhc1 * cf(0,(sin(sine/20)/15) + (-sin(sine/40)/25),0) * angles((sin(sine/20) * rad(3.5)) - (sin(sine/80) * rad(2.5)),rad(0),sin(sine/40) * rad(5)),.1)
  1936. elseif anim == "fall" and not hit then
  1937. nec.C1 = nec.C1:Lerp(necc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1938. rutj.C1 = rutj.C1:Lerp(rutjc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1939. rs.C1 = rs.C1:Lerp(rsc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1940. ls.C1 = ls.C1:Lerp(lsc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1941. rh.C1 = rh.C1:Lerp(rhc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1942. lh.C1 = lh.C1:Lerp(lhc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1943. elseif anim == "jump" and not hit then
  1944. nec.C1 = nec.C1:Lerp(necc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1945. rutj.C1 = rutj.C1:Lerp(rutjc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1946. rs.C1 = rs.C1:Lerp(rsc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1947. ls.C1 = ls.C1:Lerp(lsc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1948. rh.C1 = rh.C1:Lerp(rhc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1949. lh.C1 = lh.C1:Lerp(lhc1 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.1)
  1950. elseif anim == "walk" and hit then
  1951. nec.C1 = nec.C1:Lerp(necc1 * cf(0,0,0) * angles(-sin(sine/1.75) * rad(1),sin(sine/3.5) * rad(3.5),sin(sine/3.5) * rad(2.5)) * angles(0,rotrl/1.5,0),.2)
  1952. rutj.C1 = rutj.C1:Lerp(rutjc1 * cf(0,sin(sine/1.75)/7.5,0) * angles(sin(sine/1.75) * rad(5),sin(sine/3.5) * rad(5),rad(0)) * angles(-rotfb/7.5,0,-rotrl/6),.2)
  1953. rs.C1 = rs.C1:Lerp(rsc1 * cf(0,sin(sine/1.75)/10,0) * angles(sin(sine/3.5) * rad(5) * rotfb,rad(0),rad(0)),.2)
  1954. ls.C1 = ls.C1:Lerp(lsc1 * cf(0,-sin(sine/1.75)/10,-cos(sine/3.5)/10) * angles(sin(sine/3.5) * rad(65) * rotfb,sin(sine/1.75) * rad(7.5),sin(sine/1.75) * rad(1.5)),.2)
  1955. rh.C1 = rh.C1:Lerp(rhc1 * cf(0,cos(sine/3.5)/5,-cos(sine/3.5)/3.5) * angles((sin(sine/3.5) * rad(60) + rad(7.5)) * rotfb,rad(0),sin(sine/3.5) * rad(45) * rotrl) * angles(rad(0),cos(sine/3.5) * rad(2.5),rad(0)),.2)
  1956. lh.C1 = lh.C1:Lerp(lhc1 * cf(0,-cos(sine/3.5)/5,cos(sine/3.5)/3.5) * angles((-sin(sine/3.5) * rad(60) + rad(7.5)) * rotfb,rad(0),-sin(sine/3.5) * rad(45) * rotrl) * angles(rad(0),cos(sine/3.5) * rad(2.5),rad(0)),.2)
  1957. end
  1958. if not using then
  1959. handleWeld.C0 = handleWeld.C0:Lerp(cf(0,-1,0) * angles(rad(-90),rad(0),rad(0)),.2)
  1960. if horVel > 5 and verVel >-10 and verVel <10 then
  1961. anim = "walk"
  1962. change = .6
  1963. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.2)
  1964. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.2)
  1965. rs.C0 = rs.C0:Lerp(rsc0 * cf(.15,-.75,-.25) * angles(rad(175),rad(65),rad(0)) * angles(rad(10),rad(0),rad(0)),.1)
  1966. ls.C0 = ls.C0:Lerp(lsc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.2)
  1967. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.2)
  1968. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,0,0) * angles(rad(0),rad(0),rad(0)),.2)
  1969. elseif verVel >10 then
  1970. anim = "jump"
  1971. change = 1
  1972. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(15),rad(0),rad(0)),.2)
  1973. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,0,0) * angles(rad(-5),rad(0),rad(0)),.2)
  1974. rs.C0 = rs.C0:Lerp(rsc0 * cf(.15,-.75,-.25) * angles(rad(175),rad(65),rad(0)) * angles(rad(10),rad(0),rad(0)),.1)
  1975. ls.C0 = ls.C0:Lerp(lsc0 * cf(0,0,0) * angles(rad(145),rad(0),rad(-8)),.2)
  1976. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,.1,-.1) * angles(rad(-3.5),rad(0),rad(2)),.2)
  1977. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,.3,-.25) * angles(rad(-9),rad(0),rad(-3.5)),.2)
  1978. elseif verVel <-10 then
  1979. anim = "fall"
  1980. change = 1
  1981. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(-5),rad(0),rad(0)),.2)
  1982. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,0,0) * angles(rad(5),rad(0),rad(0)),.2)
  1983. rs.C0 = rs.C0:Lerp(rsc0 * cf(.15,-.75,-.25) * angles(rad(175),rad(65),rad(0)) * angles(rad(10),rad(0),rad(0)),.1)
  1984. ls.C0 = ls.C0:Lerp(lsc0 * cf(-.45,-.44,0) * angles(rad(6),rad(0),rad(-97.5)),.2)
  1985. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,.3,-.25) * angles(rad(-9),rad(0),rad(2)),.2)
  1986. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,.1,-.1) * angles(rad(-3.5),rad(0),rad(-3.5)),.2)
  1987. elseif horVel < 5 and verVel >-10 and verVel <10 then
  1988. anim = "idle"
  1989. change = 1
  1990. nec.C0 = nec.C0:Lerp(necc0 * cf(0,0,0) * angles(rad(-10),rad(0),rad(0)),.1)
  1991. rutj.C0 = rutj.C0:Lerp(rutjc0 * cf(0,0,-.05) * angles(rad(-5),rad(0),rad(0)),.1)
  1992. rs.C0 = rs.C0:Lerp(rsc0 * cf(.15,-.75,-.25) * angles(rad(175),rad(65),rad(0)) * angles(rad(10),rad(0),rad(0)),.1)
  1993. ls.C0 = ls.C0:Lerp(lsc0 * cf(0,-.15,.1) * angles(rad(-6.5),rad(15),rad(-3.5)),.1)
  1994. rh.C0 = rh.C0:Lerp(rhc0 * cf(0,0,0) * angles(rad(-5),rad(-5),rad(2.5)),.1)
  1995. lh.C0 = lh.C0:Lerp(lhc0 * cf(0,0,0) * angles(rad(-5),rad(5),rad(-2.5)),.1)
  1996. end
  1997. end
  1998. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement