Advertisement
Deyer

Untitled

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