Advertisement
Deyer

Untitled

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