Qpwisnd

Untitled

Apr 2nd, 2024 (edited)
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.67 KB | None | 0 0
  1. -- print(gethiddenproperty(workspace,"RejectCharacterDeletions")) --
  2. -- checks for RCD. --
  3.  
  4. --[[ games:
  5. https://www.roblox.com/games/662417684/LUCKY-BLOCKS-Battlegrounds
  6. https://www.roblox.com/games/10449761463/The-Strongest-Battlegrounds
  7. ]]--
  8.  
  9. -- Reanimate Below --
  10. -- Hat: https://www.roblox.com/catalog/9350274205/Vans-Black-White-Checkerboard-Umbrella --
  11.  
  12.  
  13. game.Players.LocalPlayer.Character["Fireaxe"].Handle.Mesh:Destroy()
  14. game.Players.LocalPlayer.Character[“Fireaxe"].Handle.Transparency = 0.5
  15.  
  16. local hatnameclone = {}
  17. for _,v in next, game:FindFirstChildOfClass("Players").LocalPlayer["Character"]:GetChildren() do
  18. if v:IsA("Accessory") then
  19. if hatnameclone[v.Name] then
  20. if hatnameclone[v.Name] == "s" then
  21. hatnameclone[v.Name] = {}
  22. end
  23. table.insert(hatnameclone[v.Name],v)
  24. else
  25. hatnameclone[v.Name] = "s"
  26. end
  27. end
  28. end
  29. for _,v in pairs(hatnameclone) do
  30. if type(v) == "table" then
  31. local num = 1
  32. for _,w in pairs(v) do
  33. w.Name = w.Name..num
  34. num = num + 1
  35. end
  36. end
  37. end
  38. hatnameclone = nil
  39.  
  40. local v3_net, v3_808 = Vector3.new(0, 25.1, 0), Vector3.new(8, 0, 8)
  41. local function getNetlessVelocity(realPartVelocity)
  42. local mag = realPartVelocity.Magnitude
  43. if mag > 1 then
  44. local unit = realPartVelocity.Unit
  45. if (unit.Y > 0.25) or (unit.Y < -0.75) then
  46. return unit * (25.1 / unit.Y)
  47. end
  48. end
  49. return v3_net + realPartVelocity * v3_808
  50. end
  51. local simradius = "shp" --simulation radius (net bypass) method
  52. --simulation radius (net bypass) method
  53. --"shp" - sethiddenproperty
  54. --"ssr" - setsimulationradius
  55. --false - disable
  56. local antiragdoll = true --removes hingeConstraints and ballSocketConstraints from your character
  57. local newanimate = true --disables the animate script and enables after reanimation
  58. local discharscripts = true --disables all localScripts parented to your character before reanimation
  59. local R15toR6 = true --tries to convert your character to r6 if its r15
  60. local hatcollide = true --makes hats cancollide (only method 0)
  61. local humState16 = true --enables collisions for limbs before the humanoid dies (using hum:ChangeState)
  62. local addtools = false --puts all tools from backpack to character and lets you hold them after reanimation
  63. local hedafterneck = false --disable aligns for head and enable after neck is removed
  64. local loadtime = 0.5 --anti respawn delay
  65. local method = 0 --reanimation method
  66. --methods:
  67. --0 - breakJoints (takes [loadtime] seconds to laod)
  68. --1 - limbs
  69. --2 - limbs + anti respawn
  70. --3 - limbs + breakJoints after [loadtime] seconds
  71. --4 - remove humanoid + breakJoints
  72. --5 - remove humanoid + limbs
  73. local alignmode = 3 --AlignPosition mode
  74. --modes:
  75. --1 - AlignPosition rigidity enabled true
  76. --2 - 2 AlignPositions rigidity enabled both true and false
  77. --3 - AlignPosition rigidity enabled false
  78.  
  79. healthHide = healthHide and ((method == 0) or (method == 2) or (method == 000)) and gp(c, "Head", "BasePart")
  80.  
  81. local lp = game:GetService("Players").LocalPlayer
  82. local rs = game:GetService("RunService")
  83. local stepped = rs.Stepped
  84. local heartbeat = rs.Heartbeat
  85. local renderstepped = rs.RenderStepped
  86. local sg = game:GetService("StarterGui")
  87. local ws = game:GetService("Workspace")
  88. local cf = CFrame.new
  89. local v3 = Vector3.new
  90. local v3_0 = v3(0, 0, 0)
  91. local inf = math.huge
  92.  
  93. local c = lp.Character
  94.  
  95. if not (c and c.Parent) then
  96. return
  97. end
  98.  
  99. c.Destroying:Connect(function()
  100. c = nil
  101. end)
  102.  
  103. local function gp(parent, name, className)
  104. if typeof(parent) == "Instance" then
  105. for i, v in pairs(parent:GetChildren()) do
  106. if (v.Name == name) and v:IsA(className) then
  107. return v
  108. end
  109. end
  110. end
  111. return nil
  112. end
  113.  
  114. local function align(Part0, Part1)
  115. Part0.CustomPhysicalProperties = PhysicalProperties.new(0.0001, 0.0001, 0.0001, 0.0001, 0.0001)
  116.  
  117. local att0 = Instance.new("Attachment", Part0)
  118. att0.Orientation = v3_0
  119. att0.Position = v3_0
  120. att0.Name = "att0_" .. Part0.Name
  121. local att1 = Instance.new("Attachment", Part1)
  122. att1.Orientation = v3_0
  123. att1.Position = v3_0
  124. att1.Name = "att1_" .. Part1.Name
  125.  
  126. if (alignmode == 1) or (alignmode == 2) then
  127. local ape = Instance.new("AlignPosition", att0)
  128. ape.ApplyAtCenterOfMass = false
  129. ape.MaxForce = inf
  130. ape.MaxVelocity = inf
  131. ape.ReactionForceEnabled = false
  132. ape.Responsiveness = 200
  133. ape.Attachment1 = att1
  134. ape.Attachment0 = att0
  135. ape.Name = "AlignPositionRtrue"
  136. ape.RigidityEnabled = true
  137. end
  138.  
  139. if (alignmode == 2) or (alignmode == 3) then
  140. local apd = Instance.new("AlignPosition", att0)
  141. apd.ApplyAtCenterOfMass = false
  142. apd.MaxForce = inf
  143. apd.MaxVelocity = inf
  144. apd.ReactionForceEnabled = false
  145. apd.Responsiveness = 200
  146. apd.Attachment1 = att1
  147. apd.Attachment0 = att0
  148. apd.Name = "AlignPositionRfalse"
  149. apd.RigidityEnabled = false
  150. end
  151.  
  152. local ao = Instance.new("AlignOrientation", att0)
  153. ao.MaxAngularVelocity = inf
  154. ao.MaxTorque = inf
  155. ao.PrimaryAxisOnly = false
  156. ao.ReactionTorqueEnabled = false
  157. ao.Responsiveness = 200
  158. ao.Attachment1 = att1
  159. ao.Attachment0 = att0
  160. ao.RigidityEnabled = false
  161.  
  162. if type(getNetlessVelocity) == "function" then
  163. local realVelocity = v3_0
  164. local steppedcon = stepped:Connect(function()
  165. Part0.Velocity = realVelocity
  166. end)
  167. local heartbeatcon = heartbeat:Connect(function()
  168. realVelocity = Part0.Velocity
  169. Part0.Velocity = getNetlessVelocity(realVelocity)
  170. end)
  171. Part0.Destroying:Connect(function()
  172. Part0 = nil
  173. steppedcon:Disconnect()
  174. heartbeatcon:Disconnect()
  175. end)
  176. end
  177. end
  178.  
  179. local function respawnrequest()
  180. local ccfr = ws.CurrentCamera.CFrame
  181. local c = lp.Character
  182. lp.Character = nil
  183. lp.Character = c
  184. local con = nil
  185. con = ws.CurrentCamera.Changed:Connect(function(prop)
  186. if (prop ~= "Parent") and (prop ~= "CFrame") then
  187. return
  188. end
  189. ws.CurrentCamera.CFrame = ccfr
  190. con:Disconnect()
  191. end)
  192. end
  193.  
  194. local destroyhum = (method == 4) or (method == 5)
  195. local breakjoints = (method == 0) or (method == 4)
  196. local antirespawn = (method == 0) or (method == 2) or (method == 3)
  197.  
  198. hatcollide = hatcollide and (method == 0)
  199.  
  200. addtools = addtools and gp(lp, "Backpack", "Backpack")
  201.  
  202. local fenv = getfenv()
  203. local shp = fenv.sethiddenproperty or fenv.set_hidden_property or fenv.set_hidden_prop or fenv.sethiddenprop
  204. 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
  205.  
  206. if shp and (simradius == "shp") then
  207. spawn(function()
  208. while c and heartbeat:Wait() do
  209. shp(lp, "SimulationRadius", inf)
  210. end
  211. end)
  212. elseif ssr and (simradius == "ssr") then
  213. spawn(function()
  214. while c and heartbeat:Wait() do
  215. ssr(inf)
  216. end
  217. end)
  218. end
  219.  
  220. antiragdoll = antiragdoll and function(v)
  221. if v:IsA("HingeConstraint") or v:IsA("BallSocketConstraint") then
  222. v.Parent = nil
  223. end
  224. end
  225.  
  226. if antiragdoll then
  227. for i, v in pairs(c:GetDescendants()) do
  228. antiragdoll(v)
  229. end
  230. c.DescendantAdded:Connect(antiragdoll)
  231. end
  232.  
  233. if antirespawn then
  234. respawnrequest()
  235. end
  236.  
  237. if method == 0 then
  238. wait(loadtime)
  239. if not c then
  240. return
  241. end
  242. end
  243.  
  244. if discharscripts then
  245. for i, v in pairs(c:GetChildren()) do
  246. if v:IsA("LocalScript") then
  247. v.Disabled = true
  248. end
  249. end
  250. elseif newanimate then
  251. local animate = gp(c, "Animate", "LocalScript")
  252. if animate and (not animate.Disabled) then
  253. animate.Disabled = true
  254. else
  255. newanimate = false
  256. end
  257. end
  258.  
  259. if addtools then
  260. for i, v in pairs(addtools:GetChildren()) do
  261. if v:IsA("Tool") then
  262. v.Parent = c
  263. end
  264. end
  265. end
  266.  
  267. pcall(function()
  268. settings().Physics.AllowSleep = false
  269. settings().Physics.PhysicsEnvironmentalThrottle = Enum.EnviromentalPhysicsThrottle.Disabled
  270. end)
  271.  
  272. local OLDscripts = {}
  273.  
  274. for i, v in pairs(c:GetDescendants()) do
  275. if v.ClassName == "Script" then
  276. table.insert(OLDscripts, v)
  277. end
  278. end
  279.  
  280. local scriptNames = {}
  281.  
  282. for i, v in pairs(c:GetDescendants()) do
  283. if v:IsA("BasePart") then
  284. local newName = tostring(i)
  285. local exists = true
  286. while exists do
  287. exists = false
  288. for i, v in pairs(OLDscripts) do
  289. if v.Name == newName then
  290. exists = true
  291. end
  292. end
  293. if exists then
  294. newName = newName .. "_"
  295. end
  296. end
  297. table.insert(scriptNames, newName)
  298. Instance.new("Script", v).Name = newName
  299. end
  300. end
  301.  
  302. c.Archivable = true
  303. local hum = c:FindFirstChildOfClass("Humanoid")
  304. if hum then
  305. for i, v in pairs(hum:GetPlayingAnimationTracks()) do
  306. v:Stop()
  307. end
  308. end
  309. local cl = c:Clone()
  310. if hum and humState16 then
  311. hum:ChangeState(Enum.HumanoidStateType.Physics)
  312. if destroyhum then
  313. wait(1.6)
  314. end
  315. end
  316. if hum and hum.Parent and destroyhum then
  317. hum:Destroy()
  318. end
  319.  
  320. if not c then
  321. return
  322. end
  323.  
  324. local head = gp(c, "Head", "BasePart")
  325. local torso = gp(c, "Torso", "BasePart") or gp(c, "UpperTorso", "BasePart")
  326. local root = gp(c, "HumanoidRootPart", "BasePart")
  327. if hatcollide and c:FindFirstChildOfClass("Accessory") then
  328. local anything = c:FindFirstChildOfClass("BodyColors") or gp(c, "Health", "Script")
  329. if not (torso and root and anything) then
  330. return
  331. end
  332. torso:Destroy()
  333. root:Destroy()
  334. if shp then
  335. for i,v in pairs(c:GetChildren()) do
  336. if v:IsA("Accessory") then
  337. shp(v, "BackendAccoutrementState", 0)
  338. end
  339. end
  340. end
  341. anything:Destroy()
  342. if head then
  343. head:Destroy()
  344. end
  345. end
  346.  
  347. for i, v in pairs(cl:GetDescendants()) do
  348. if v:IsA("BasePart") then
  349. v.Transparency = 1
  350. v.Anchored = false
  351. end
  352. end
  353.  
  354. local model = Instance.new("Model", c)
  355. model.Name = model.ClassName
  356.  
  357. model.Destroying:Connect(function()
  358. model = nil
  359. end)
  360.  
  361. for i, v in pairs(c:GetChildren()) do
  362. if v ~= model then
  363. if addtools and v:IsA("Tool") then
  364. for i1, v1 in pairs(v:GetDescendants()) do
  365. if v1 and v1.Parent and v1:IsA("BasePart") then
  366. local bv = Instance.new("BodyVelocity", v1)
  367. bv.Velocity = v3_0
  368. bv.MaxForce = v3(1000, 1000, 1000)
  369. bv.P = 1250
  370. bv.Name = "bv_" .. v.Name
  371. end
  372. end
  373. end
  374. v.Parent = model
  375. end
  376. end
  377.  
  378. if breakjoints then
  379. model:BreakJoints()
  380. else
  381. if head and torso then
  382. for i, v in pairs(model:GetDescendants()) do
  383. if v:IsA("Weld") or v:IsA("Snap") or v:IsA("Glue") or v:IsA("Motor") or v:IsA("Motor6D") then
  384. local save = false
  385. if (v.Part0 == torso) and (v.Part1 == head) then
  386. save = true
  387. end
  388. if (v.Part0 == head) and (v.Part1 == torso) then
  389. save = true
  390. end
  391. if save then
  392. if hedafterneck then
  393. hedafterneck = v
  394. end
  395. else
  396. v:Destroy()
  397. end
  398. end
  399. end
  400. end
  401. if method == 3 then
  402. spawn(function()
  403. wait(loadtime)
  404. if model then
  405. model:BreakJoints()
  406. end
  407. end)
  408. end
  409. end
  410.  
  411. cl.Parent = c
  412. for i, v in pairs(cl:GetChildren()) do
  413. v.Parent = c
  414. end
  415. cl:Destroy()
  416.  
  417. local modelDes = {}
  418. for i, v in pairs(model:GetDescendants()) do
  419. if v:IsA("BasePart") then
  420. i = tostring(i)
  421. v.Destroying:Connect(function()
  422. modelDes[i] = nil
  423. end)
  424. modelDes[i] = v
  425. end
  426. end
  427. local modelcolcon = nil
  428. local function modelcolf()
  429. if model then
  430. for i, v in pairs(modelDes) do
  431. v.CanCollide = false
  432. end
  433. else
  434. modelcolcon:Disconnect()
  435. end
  436. end
  437. modelcolcon = stepped:Connect(modelcolf)
  438. modelcolf()
  439.  
  440. for i, scr in pairs(model:GetDescendants()) do
  441. if (scr.ClassName == "Script") and table.find(scriptNames, scr.Name) then
  442. local Part0 = scr.Parent
  443. if Part0:IsA("BasePart") then
  444. for i1, scr1 in pairs(c:GetDescendants()) do
  445. if (scr1.ClassName == "Script") and (scr1.Name == scr.Name) and (not scr1:IsDescendantOf(model)) then
  446. local Part1 = scr1.Parent
  447. if (Part1.ClassName == Part0.ClassName) and (Part1.Name == Part0.Name) then
  448. align(Part0, Part1)
  449. break
  450. end
  451. end
  452. end
  453. end
  454. end
  455. end
  456.  
  457. if (typeof(hedafterneck) == "Instance") and head then
  458. local aligns = {}
  459. local con = nil
  460. con = hedafterneck.Changed:Connect(function(prop)
  461. if (prop == "Parent") and not hedafterneck.Parent then
  462. con:Disconnect()
  463. for i, v in pairs(aligns) do
  464. v.Enabled = true
  465. end
  466. end
  467. end)
  468. for i, v in pairs(head:GetDescendants()) do
  469. if v:IsA("AlignPosition") or v:IsA("AlignOrientation") then
  470. i = tostring(i)
  471. aligns[i] = v
  472. v.Destroying:Connect(function()
  473. aligns[i] = nil
  474. end)
  475. v.Enabled = false
  476. end
  477. end
  478. end
  479.  
  480. for i, v in pairs(c:GetDescendants()) do
  481. if v and v.Parent then
  482. if v.ClassName == "Script" then
  483. if table.find(scriptNames, v.Name) then
  484. v:Destroy()
  485. end
  486. elseif not v:IsDescendantOf(model) then
  487. if v:IsA("Decal") then
  488. v.Transparency = 1
  489. elseif v:IsA("ForceField") then
  490. v.Visible = false
  491. elseif v:IsA("Sound") then
  492. v.Playing = false
  493. 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
  494. v.Enabled = false
  495. end
  496. end
  497. end
  498. end
  499.  
  500. if newanimate then
  501. local animate = gp(c, "Animate", "LocalScript")
  502. if animate then
  503. animate.Disabled = false
  504. end
  505. end
  506.  
  507. if addtools then
  508. for i, v in pairs(c:GetChildren()) do
  509. if v:IsA("Tool") then
  510. v.Parent = addtools
  511. end
  512. end
  513. end
  514.  
  515. local hum0 = model:FindFirstChildOfClass("Humanoid")
  516. if hum0 then
  517. hum0.Destroying:Connect(function()
  518. hum0 = nil
  519. end)
  520. end
  521.  
  522. local hum1 = c:FindFirstChildOfClass("Humanoid")
  523. if hum1 then
  524. hum1.Destroying:Connect(function()
  525. hum1 = nil
  526. end)
  527. end
  528.  
  529. if hum1 then
  530. ws.CurrentCamera.CameraSubject = hum1
  531. local camSubCon = nil
  532. local function camSubFunc()
  533. camSubCon:Disconnect()
  534. if c and hum1 then
  535. ws.CurrentCamera.CameraSubject = hum1
  536. end
  537. end
  538. camSubCon = renderstepped:Connect(camSubFunc)
  539. if hum0 then
  540. hum0.Changed:Connect(function(prop)
  541. if hum1 and (prop == "Jump") then
  542. hum1.Jump = hum0.Jump
  543. end
  544. end)
  545. else
  546. respawnrequest()
  547. end
  548. end
  549.  
  550. local rb = Instance.new("BindableEvent", c)
  551. rb.Event:Connect(function()
  552. rb:Destroy()
  553. sg:SetCore("ResetButtonCallback", true)
  554. if destroyhum then
  555. c:BreakJoints()
  556. return
  557. end
  558. if hum0 and (hum0.Health > 0) then
  559. model:BreakJoints()
  560. hum0.Health = 0
  561. end
  562. if antirespawn then
  563. respawnrequest()
  564. end
  565. end)
  566. sg:SetCore("ResetButtonCallback", rb)
  567.  
  568. spawn(function()
  569. while c do
  570. if hum0 and hum1 then
  571. hum1.Jump = hum0.Jump
  572. end
  573. wait()
  574. end
  575. sg:SetCore("ResetButtonCallback", true)
  576. end)
  577.  
  578. R15toR6 = R15toR6 and hum1 and (hum1.RigType == Enum.HumanoidRigType.R15)
  579. if R15toR6 then
  580. 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")
  581. if part then
  582. local cfr = part.CFrame
  583. local R6parts = {
  584. head = {
  585. Name = "Head",
  586. Size = v3(2, 1, 1),
  587. R15 = {
  588. Head = 0
  589. }
  590. },
  591. torso = {
  592. Name = "Torso",
  593. Size = v3(2, 2, 1),
  594. R15 = {
  595. UpperTorso = 0.2,
  596. LowerTorso = -100
  597. }
  598. },
  599. root = {
  600. Name = "HumanoidRootPart",
  601. Size = v3(2, 2, 1),
  602. R15 = {
  603. HumanoidRootPart = 0
  604. }
  605. },
  606. leftArm = {
  607. Name = "Left Arm",
  608. Size = v3(1, 2, 1),
  609. R15 = {
  610. LeftHand = -0.73,
  611. LeftLowerArm = -0.2,
  612. LeftUpperArm = 0.4
  613. }
  614. },
  615. rightArm = {
  616. Name = "Right Arm",
  617. Size = v3(1, 2, 1),
  618. R15 = {
  619. RightHand = -0.73,
  620. RightLowerArm = -0.2,
  621. RightUpperArm = 0.4
  622. }
  623. },
  624. leftLeg = {
  625. Name = "Left Leg",
  626. Size = v3(1, 2, 1),
  627. R15 = {
  628. LeftFoot = -0.73,
  629. LeftLowerLeg = -0.15,
  630. LeftUpperLeg = 0.6
  631. }
  632. },
  633. rightLeg = {
  634. Name = "Right Leg",
  635. Size = v3(1, 2, 1),
  636. R15 = {
  637. RightFoot = -0.73,
  638. RightLowerLeg = -0.15,
  639. RightUpperLeg = 0.6
  640. }
  641. }
  642. }
  643. for i, v in pairs(c:GetChildren()) do
  644. if v:IsA("BasePart") then
  645. for i1, v1 in pairs(v:GetChildren()) do
  646. if v1:IsA("Motor6D") then
  647. v1.Part0 = nil
  648. end
  649. end
  650. end
  651. end
  652. part.Archivable = true
  653. for i, v in pairs(R6parts) do
  654. local part = part:Clone()
  655. part:ClearAllChildren()
  656. part.Name = v.Name
  657. part.Size = v.Size
  658. part.CFrame = cfr
  659. part.Anchored = false
  660. part.Transparency = 1
  661. part.CanCollide = false
  662. for i1, v1 in pairs(v.R15) do
  663. local R15part = gp(c, i1, "BasePart")
  664. local att = gp(R15part, "att1_" .. i1, "Attachment")
  665. if R15part then
  666. local weld = Instance.new("Weld", R15part)
  667. weld.Name = "Weld_" .. i1
  668. weld.Part0 = part
  669. weld.Part1 = R15part
  670. weld.C0 = cf(0, v1, 0)
  671. weld.C1 = cf(0, 0, 0)
  672. R15part.Massless = true
  673. R15part.Name = "R15_" .. i1
  674. R15part.Parent = part
  675. if att then
  676. att.Parent = part
  677. att.Position = v3(0, v1, 0)
  678. end
  679. end
  680. end
  681. part.Parent = c
  682. R6parts[i] = part
  683. end
  684. local R6joints = {
  685. neck = {
  686. Parent = Scarf,
  687. Name = "Neck",
  688. Part0 = Scarf, --R6parts.torso
  689. Part1 = Scarf, --R6parts.head
  690. C0 = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
  691. C1 = cf(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  692. },
  693. rootJoint = {
  694. Parent = R6parts.root,
  695. Name = "RootJoint" ,
  696. Part0 = R6parts.root,
  697. Part1 = R6parts.torso,
  698. C0 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
  699. C1 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  700. },
  701. rightShoulder = {
  702. Parent = R6parts.torso,
  703. Name = "Right Shoulder",
  704. Part0 = R6parts.torso,
  705. Part1 = R6parts.rightArm,
  706. C0 = cf(1, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
  707. C1 = cf(-0.5, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  708. },
  709. leftShoulder = {
  710. Parent = R6parts.torso,
  711. Name = "Left Shoulder",
  712. Part0 = R6parts.torso,
  713. Part1 = R6parts.leftArm,
  714. C0 = cf(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
  715. C1 = cf(0.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  716. },
  717. rightHip = {
  718. Parent = R6parts.torso,
  719. Name = "Right Hip",
  720. Part0 = R6parts.torso,
  721. Part1 = R6parts.rightLeg,
  722. C0 = cf(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
  723. C1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  724. },
  725. leftHip = {
  726. Parent = R6parts.torso,
  727. Name = "Left Hip" ,
  728. Part0 = R6parts.torso,
  729. Part1 = R6parts.leftLeg,
  730. C0 = cf(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
  731. C1 = cf(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  732. }
  733. }
  734. for i, v in pairs(R6joints) do
  735. local joint = Instance.new("Motor6D")
  736. for prop, val in pairs(v) do
  737. joint[prop] = val
  738. end
  739. R6joints[i] = joint
  740. end
  741. hum1.RigType = Enum.HumanoidRigType.R6
  742. hum1.HipHeight = 0
  743. end
  744. end
  745.  
  746.  
  747.  
  748. --find rig joints
  749.  
  750. local function fakemotor()
  751. return {C0=cf(), C1=cf()}
  752. end
  753.  
  754. local torso = gp(c, "Torso", "BasePart")
  755. local root = gp(c, "HumanoidRootPart", "BasePart")
  756.  
  757. local neck = gp(torso, "Neck", "Motor6D")
  758. neck = neck or fakemotor()
  759.  
  760. local rootJoint = gp(root, "RootJoint", "Motor6D")
  761. rootJoint = rootJoint or fakemotor()
  762.  
  763. local leftShoulder = gp(torso, "Left Shoulder", "Motor6D")
  764. leftShoulder = leftShoulder or fakemotor()
  765.  
  766. local rightShoulder = gp(torso, "Right Shoulder", "Motor6D")
  767. rightShoulder = rightShoulder or fakemotor()
  768.  
  769. local leftHip = gp(torso, "Left Hip", "Motor6D")
  770. leftHip = leftHip or fakemotor()
  771.  
  772. local rightHip = gp(torso, "Right Hip", "Motor6D")
  773. rightHip = rightHip or fakemotor()
  774.  
  775. --120 fps
  776.  
  777. local fps = 0
  778. local event = Instance.new("BindableEvent", c)
  779. event.Name = "120 fps"
  780. local floor = math.floor
  781. fps = 1 / fps
  782. local tf = 0
  783. local con = nil
  784. con = game:GetService("RunService").RenderStepped:Connect(function(s)
  785. if not c then
  786. con:Disconnect()
  787. return
  788. end
  789. --tf += s
  790. if tf >= fps then
  791. for i=1, floor(tf / fps) do
  792. event:Fire(c)
  793. end
  794. tf = 0
  795. end
  796. end)
  797. local event = event.Event
  798.  
  799. local hedrot = v3(0, 5, 0)
  800.  
  801. local uis = game:GetService("UserInputService")
  802. local function isPressed(key)
  803. return (not uis:GetFocusedTextBox()) and uis:IsKeyDown(Enum.KeyCode[key])
  804. end
  805.  
  806. local biggesthandle = nil
  807. for i, v in pairs(c:GetChildren()) do
  808. if v:IsA("Accessory") and v.Name == "VANS_Umbrella" then
  809. local handle = gp(v, "Handle", "BasePart")
  810. if biggesthandle then
  811. if biggesthandle.Size.Magnitude < handle.Size.Magnitude then
  812. biggesthandle = Handle
  813. end
  814. else
  815. biggesthandle = gp(v, "Handle", "BasePart")
  816. end
  817. end
  818. end
  819.  
  820. if not biggesthandle then
  821. return
  822. end
  823.  
  824. local handle1 = gp(gp(model, biggesthandle.Parent.Name, "Accessory"), "Handle", "BasePart")
  825. if not handle1 then
  826. return
  827. end
  828.  
  829. handle1.Destroying:Connect(function()
  830. handle1 = nil
  831. end)
  832. biggesthandle.Destroying:Connect(function()
  833. biggesthandle = nil
  834. end)
  835.  
  836. biggesthandle:BreakJoints()
  837. biggesthandle.Anchored = true
  838.  
  839. for i, v in pairs(handle1:GetDescendants()) do
  840. if v:IsA("AlignOrientation") then
  841. v.Enabled = false
  842. end
  843. end
  844.  
  845. local mouse = lp:GetMouse()
  846. local fling = false
  847. mouse.Button1Down:Connect(function()
  848. fling = true
  849. end)
  850. mouse.Button1Up:Connect(function()
  851. fling = false
  852. end)
  853. local function doForSignal(signal, vel)
  854. spawn(function()
  855. while signal:Wait() and c and handle1 and biggesthandle do
  856. if fling and mouse.Target then
  857. biggesthandle.Position = mouse.Hit.Position
  858. end
  859. handle1.RotVelocity = vel
  860. end
  861. end)
  862. end
  863. doForSignal(stepped, v3(1000, 1000, 1000))
  864. doForSignal(renderstepped, v3(1000, 1000, 1000))
  865. doForSignal(heartbeat, v3(200000000000000, 200000000000000, 200000000000000)) --https://web.roblox.com/catalog/63690008/Pal-Hair
  866.  
  867. local lp = game:GetService("Players").LocalPlayer
  868. local rs = game:GetService("RunService")
  869. local stepped = rs.Stepped
  870. local heartbeat = rs.Heartbeat
  871. local renderstepped = rs.RenderStepped
  872. local sg = game:GetService("StarterGui")
  873. local ws = game:GetService("Workspace")
  874. local cf = CFrame.new
  875. local v3 = Vector3.new
  876. local v3_0 = Vector3.zero
  877. local inf = math.huge
  878.  
  879. local cplayer = lp.Character
  880.  
  881. local v3 = Vector3.new
  882.  
  883. local function gp(parent, name, className)
  884. if typeof(parent) == "Instance" then
  885. for i, v in pairs(parent:GetChildren()) do
  886. if (v.Name == name) and v:IsA(className) then
  887. return v
  888. end
  889. end
  890. end
  891. return nil
  892. end
  893.  
  894. for i,v in pairs (cplayer:GetChildren()) do
  895. if v:IsA("Accessory") then
  896. v.Handle.Massless = true
  897. v.Handle.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  898. end
  899. end
  900.  
  901. cplayer.Animate:Destroy()
  902.  
  903. local function gp(parent, name, className)
  904. if typeof(parent) == "Instance" then
  905. for i, v in pairs(parent:GetChildren()) do
  906. if (v.Name == name) and v:IsA(className) then
  907. return v
  908. end
  909. end
  910. end
  911. return nil
  912. end
  913.  
Advertisement
Add Comment
Please, Sign In to add comment