Advertisement
Deyer

Untitled

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