Advertisement
subaru112g

captured soul script fe

Feb 27th, 2019
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.94 KB | None | 0 0
  1. owner.Character.Head.face:Destroy()
  2. owner.Character.Pants:Destroy()
  3. owner.Character.Shirt:Destroy()
  4. owner.Character.Head.Transparency = 0.5
  5. owner.Character.Torso.Transparency = 0.5
  6. owner.Character["Left Arm"].Transparency = 0.5
  7. owner.Character["Right Arm"].Transparency = 0.5
  8. owner.Character["Left Leg"].Transparency = 0.5
  9. owner.Character["Right Leg"].Transparency = 0.5
  10.  
  11. local plr = owner
  12. local char = plr.Character
  13.  
  14. -- Color
  15. local bdycolors = char["Body Colors"]
  16. bdycolors.HeadColor = BrickColor.new("Really black")
  17. bdycolors.LeftArmColor = BrickColor.new("Really black")
  18. bdycolors.RightArmColor = BrickColor.new("Really black")
  19. bdycolors.LeftLegColor = BrickColor.new("Really black")
  20. bdycolors.RightLegColor = BrickColor.new("Really black")
  21. bdycolors.TorsoColor = BrickColor.new("Really black")
  22.  
  23. --Hat Remove
  24. for _, child in pairs(char:GetChildren()) do
  25. if child.ClassName == 'CharacterMesh' then
  26. child:Destroy()
  27. end
  28. end
  29.  
  30. local nametag = Instance.new("BillboardGui",char.Head)
  31. nametag.StudsOffset = Vector3.new(0,2,0)
  32. nametag.Adornee = char.Head
  33. nametag.Size = UDim2.new(0,200,0,50)
  34.  
  35. local text = Instance.new("TextLabel",nametag)
  36. text.Size = UDim2.new(0,200,0,50)
  37. text.BackgroundTransparency = 1
  38. text.TextColor3 = Color3.new(0, 0, 0)
  39. text.TextStrokeColor3 = Color3.new(0,0,0)
  40. text.Font = Enum.Font.Fantasy
  41. text.TextScaled = true
  42. text.TextStrokeTransparency = 0
  43. text.Text = "CAPTURED SOUL"
  44.  
  45. local hum = char.Humanoid
  46. local rarm = char["Right Arm"]
  47. local larm= char["Left Arm"]
  48. local rleg= char["Right Leg"]
  49. local lleg = char["Left Leg"]
  50. local root = char.HumanoidRootPart
  51. local tors = char.Torso
  52. local head = char.Head
  53. local sine = 0;
  54. local change = 1;
  55. local RunS = game:GetService("RunService")
  56. local mouse = plr:GetMouse()
  57. local defAnim = true;
  58.  
  59. local Attachments = {}
  60.  
  61. function GetAttach(p)
  62. for _,v in next, p:children() do
  63. if v:IsA'Attachment' then
  64. table.insert(Attachments,v)
  65. end
  66. GetAttach(v)
  67. end
  68. end
  69.  
  70. GetAttach(char)
  71.  
  72. wait(1)
  73.  
  74. local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
  75. local V3 = {N=Vector3.new}
  76. local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge}
  77. local Effects,Sounds = {},{};
  78. --Stop animations
  79. for _,v in next, hum:GetPlayingAnimationTracks() do
  80. v:Stop();
  81. end
  82.  
  83. pcall(game.Destroy,char:FindFirstChild'Animate')
  84. pcall(game.Destroy,hum:FindFirstChild'Animator')
  85. hum:SetStateEnabled("Dead",false)
  86. hum:SetStateEnabled(Enum.HumanoidStateType.Dead, false)
  87. -- Sounds
  88. Sounds['Wet'] = {Id=256738023,Loop=false,Pitch=1}
  89. Sounds['Swoosh1'] = {Id=320557353,Loop=false,Pitch=1}
  90. Sounds['Swoosh2'] = {Id=320557382,Loop=false,Pitch=1}
  91. Sounds['Swoosh3'] = {Id=320557413,Loop=false,Pitch=1}
  92. Sounds['Swoosh4'] = {Id=320557453,Loop=false,Pitch=1}
  93. Sounds['Swoosh5'] = {Id=320557487,Loop=false,Pitch=1}
  94. Sounds['Swoosh6'] = {Id=320557537,Loop=false,Pitch=1}
  95. Sounds['Swoosh7'] = {Id=320557563,Loop=false,Pitch=1}
  96. Sounds['Swoosh8'] = {Id=320557518,Loop=false,Pitch=1}
  97. Sounds['ShrekRemix'] = {Id=163306929,Loop=true,Pitch=1,Volume = 4}
  98. Sounds['CreoDimension'] = {Id=927529620,Loop=true,Pitch=1,Volume=4}
  99. Sounds['BlackBlizzard'] = {Id=657626121,Loop=true,Pitch=1,Volume=4}
  100. Sounds['ColbreakzFantasy'] = {Id=876981900,Loop=true,Pitch=1,Volume=4}
  101. Sounds['NeflCrystals'] = {Id=340106355,Loop=true,Pitch=1,Volume=4}
  102. Sounds['EvilMortyRemix'] = {Id=1057401232,Loop=true,Pitch=1,Volume=10}
  103. Sounds['SayoFuckYouDan-Nara'] = {Id=1205183071,Loop=true,Pitch=1,Volume=1}
  104.  
  105.  
  106. -- Functions
  107. local NewInstance = function(instance,parent,properties)
  108. local inst = Instance.new(instance,parent)
  109. if(properties)then
  110. for i,v in next, properties do
  111. pcall(function() inst[i] = v end)
  112. end
  113. end
  114. return inst;
  115. end
  116.  
  117. function clerp(a, b, t)
  118. local qa = {
  119. QuaternionFromCFrame(a)
  120. }
  121. local qb = {
  122. QuaternionFromCFrame(b)
  123. }
  124. local ax, ay, az = a.x, a.y, a.z
  125. local bx, by, bz = b.x, b.y, b.z
  126. local _t = 1 - t
  127. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  128. end
  129. function QuaternionFromCFrame(cf)
  130. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  131. local trace = m00 + m11 + m22
  132. if trace > 0 then
  133. local s = math.sqrt(1 + trace)
  134. local recip = 0.5 / s
  135. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  136. else
  137. local i = 0
  138. if m00 < m11 then
  139. i = 1
  140. end
  141. if m22 > (i == 0 and m00 or m11) then
  142. i = 2
  143. end
  144. if i == 0 then
  145. local s = math.sqrt(m00 - m11 - m22 + 1)
  146. local recip = 0.5 / s
  147. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  148. elseif i == 1 then
  149. local s = math.sqrt(m11 - m22 - m00 + 1)
  150. local recip = 0.5 / s
  151. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  152. elseif i == 2 then
  153. local s = math.sqrt(m22 - m00 - m11 + 1)
  154. local recip = 0.5 / s
  155. return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  156. end
  157. end
  158. end
  159. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  160. local xs, ys, zs = x + x, y + y, z + z
  161. local wx, wy, wz = w * xs, w * ys, w * zs
  162. local xx = x * xs
  163. local xy = x * ys
  164. local xz = x * zs
  165. local yy = y * ys
  166. local yz = y * zs
  167. local zz = z * zs
  168. return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
  169. end
  170. function QuaternionSlerp(a, b, t)
  171. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  172. local startInterp, finishInterp
  173. if cosTheta >= 1.0E-4 then
  174. if 1 - cosTheta > 1.0E-4 then
  175. local theta = math.acos(cosTheta)
  176. local invSinTheta = 1 / math.sin(theta)
  177. startInterp = math.sin((1 - t) * theta) * invSinTheta
  178. finishInterp = math.sin(t * theta) * invSinTheta
  179. else
  180. startInterp = 1 - t
  181. finishInterp = t
  182. end
  183. elseif 1 + cosTheta > 1.0E-4 then
  184. local theta = math.acos(-cosTheta)
  185. local invSinTheta = 1 / math.sin(theta)
  186. startInterp = math.sin((t - 1) * theta) * invSinTheta
  187. finishInterp = math.sin(t * theta) * invSinTheta
  188. else
  189. startInterp = t - 1
  190. finishInterp = t
  191. end
  192. return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
  193. end
  194.  
  195. local sndFromData = function(data,parent)
  196. if(typeof(data) == 'table')then
  197. local snd = NewInstance("Sound",parent or char,{SoundId = "rbxassetid://"..data.Id,Looped=data.Loop or false,Pitch = data.Pitch or 1,Volume = data.Volume or 1})
  198. return snd;
  199. else
  200. return error('Argument passed into sndFromData must be a table!',1)
  201. end
  202. end
  203.  
  204. function UnbindLoops()
  205. pcall(RunS.UnbindFromRenderStep,RunS,"N_Effects")
  206. pcall(RunS.UnbindFromRenderStep,RunS,"N_Animations")
  207. end;
  208.  
  209. UnbindLoops() -- Just so if the loops already exist from previously running a script using this template, there's no errors
  210.  
  211. function ragdoll()
  212. char.Archivable = true
  213. local clone = owner.Character:Clone()
  214. clone.Parent = workspace
  215. for i,v in pairs(clone:GetChildren()) do
  216. if v.ClassName == "Script" or v.ClassName == "LocalScript" then
  217. v:destroy()
  218. end
  219. for i,p in pairs(v:GetChildren()) do
  220. if p.ClassName == "Weld" or p.ClassName == "Motor6D" or p.ClassName == "BodyVelocity" then
  221. p:destroy()
  222. end
  223. end
  224. end
  225. local leftarm = clone:findFirstChild("Left Arm")
  226. local rightrm = clone:findFirstChild("Right Arm")
  227. local leftleg = clone:findFirstChild("Left Leg")
  228. local rightleg = clone:findFirstChild("Right Leg")
  229. local head = clone:findFirstChild("Head")
  230. char:Destroy()
  231. workspace.CurrentCamera.CameraSubject = head
  232. if head then
  233. local attachment = Instance.new("Attachment", clone.Head)
  234. attachment.Position = Vector3.new(0, -0.5, 0)
  235. attachment.Name = "lol"
  236. attachment.Visible = false
  237. clone.Torso.NeckAttachment.Visible = false
  238. clone.Torso.NeckAttachment.Position = clone.Torso.NeckAttachment.Position + Vector3.new(0,0,0)
  239. local ball = Instance.new("BallSocketConstraint", clone)
  240. ball.Attachment0 = clone.Torso.NeckAttachment
  241. ball.Attachment1 = attachment
  242. ball.LimitsEnabled = true
  243. ball.TwistLimitsEnabled = true
  244. ball.UpperAngle = 90
  245. ball.Restitution = 0.5
  246. ball.TwistUpperAngle = 90
  247. ball.TwistLowerAngle = -90
  248. local collidepartofleftleg = Instance.new("Part", clone.Torso)
  249. collidepartofleftleg.Name = "Bone"
  250. collidepartofleftleg.Size = Vector3.new(0.7,0.7,0.7)
  251. collidepartofleftleg.Transparency = 1
  252. collidepartofleftleg:BreakJoints()
  253. local weeld = Instance.new("Weld", collidepartofleftleg)
  254. weeld.Part0 = collidepartofleftleg
  255. weeld.Part1 = clone["Head"]
  256. end
  257. if leftleg ~= nil then
  258. local glue = Instance.new("Glue", clone.Torso)
  259. glue.Part0 = clone.Torso
  260. glue.Part1 = leftleg
  261. glue.Name = "Left leg"
  262. local collider = Instance.new("Part", leftleg)
  263. collider.Position = Vector3.new(0,999,0)
  264. collider.Size = Vector3.new(1.5, 1, 1)
  265. collider.Shape = "Cylinder"
  266. local weld = Instance.new("Weld", collider)
  267. weld.Part0 = leftleg
  268. weld.Part1 = collider
  269. weld.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  270. collider.TopSurface = "Smooth"
  271. collider.BottomSurface = "Smooth"
  272. collider.formFactor = "Symmetric"
  273. glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  274. glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  275. collider.Transparency = 1
  276. end
  277. ------------
  278. if rightleg ~= nil then
  279. local glue1 = Instance.new("Glue", clone.Torso)
  280. glue1.Part0 = clone.Torso
  281. glue1.Part1 = rightleg
  282. glue1.Name = "Right leg"
  283. local collider1 = Instance.new("Part", rightleg)
  284. collider1.Position = Vector3.new(0,999,0)
  285. collider1.Size = Vector3.new(1.5, 1, 1)
  286. collider1.Shape = "Cylinder"
  287. local weld1 = Instance.new("Weld", collider1)
  288. weld1.Part0 = rightleg
  289. weld1.Part1 = collider1
  290. weld1.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  291. collider1.TopSurface = "Smooth"
  292. collider1.BottomSurface = "Smooth"
  293. collider1.formFactor = "Symmetric"
  294. glue1.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  295. glue1.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  296. collider1.Transparency = 1
  297. end
  298. ------------
  299. if rightrm ~= nil then
  300. local glue11 = Instance.new("Glue", clone.Torso)
  301. glue11.Part0 = clone.Torso
  302. glue11.Part1 = rightrm
  303. glue11.Name = "Right shoulder"
  304. local collider11 = Instance.new("Part", rightrm)
  305. collider11.Position = Vector3.new(0,9999,0)
  306. collider11.Size = Vector3.new(1.5,1,1)
  307. collider11.Shape = "Cylinder"
  308. local weld11 = Instance.new("Weld", collider11)
  309. weld11.Part0 = rightrm
  310. weld11.Part1 = collider11
  311. weld11.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  312. collider11.TopSurface = "Smooth"
  313. collider11.BottomSurface = "Smooth"
  314. collider11.formFactor = "Symmetric"
  315. glue11.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  316. glue11.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  317. collider11.Transparency = 1
  318. end
  319. ------------
  320. if leftarm ~= nil then
  321. local glue111 = Instance.new("Glue", clone.Torso)
  322. glue111.Part0 = clone.Torso
  323. glue111.Part1 = leftarm
  324. glue111.Name = "Left shoulder"
  325. local collider111 = Instance.new("Part", leftarm)
  326. collider111.Position = Vector3.new(0,9999,0)
  327. collider111.Size = Vector3.new(1.5,1,1)
  328. collider111.Shape = "Cylinder"
  329. local weld111 = Instance.new("Weld", collider111)
  330. weld111.Part0 = leftarm
  331. weld111.Part1 = collider111
  332. weld111.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  333. collider111.TopSurface = "Smooth"
  334. collider111.BottomSurface = "Smooth"
  335. collider111.formFactor = "Symmetric"
  336. glue111.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  337. glue111.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  338. collider111.Transparency = 1
  339. ----------------
  340. end
  341.  
  342. wait(0.5)
  343. coroutine.resume(coroutine.create(function()
  344. while wait() do
  345. clone.Head.CanCollide = false
  346. game:GetService("RunService").Stepped:wait()
  347. end
  348. end))
  349. return clone
  350. end
  351.  
  352.  
  353. -- Build
  354.  
  355. New = function(Object, Parent, Name, Data)
  356. local Object = Instance.new(Object)
  357. for Index, Value in pairs(Data or {}) do
  358. Object[Index] = Value
  359. end
  360. Object.Parent = Parent
  361. Object.Name = Name
  362. return Object
  363. end
  364.  
  365. Model = New("Model",workspace,"Model",{})
  366. ring = New("Part",Model,"ring",{CanCollide=false,BrickColor = BrickColor.new("Brick yellow"),Elasticity = 0,FormFactor = Enum.FormFactor.Symmetric,Size = Vector3.new(1, 1, 1),CFrame = CFrame.new(-72.0287933, 6.52005148, 33.66502, -0.0191105176, -0.965736747, 0.258819014, -0.246841118, -0.246295646, -0.937234163, 0.96886754, -0.0817982107, -0.233676717),Anchored = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.843137, 0.772549, 0.603922),})
  367. Mesh = New("SpecialMesh",ring,"Mesh",{MeshId = "http://www.roblox.com/asset/?id=3270017",MeshType = Enum.MeshType.FileMesh,})
  368. roof = New("Part",Model,"roof",{CanCollide=false,BrickColor = BrickColor.new("Reddish brown"),FormFactor = Enum.FormFactor.Plate,Size = Vector3.new(3.83999777, 0.200000256, 3.35999894),CFrame = CFrame.new(-71.9617996, 14.1185007, 33.3817253, 0.999999523, 0.000339658902, 0.000940953556, -0.000311135052, 0.999545336, -0.030149797, -0.000950766378, 0.0301494878, 0.999544978),Anchored = true,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.411765, 0.25098, 0.156863),})
  369.  
  370.  
  371. tors.CFrame = tors.CFrame * CFrame.new(0,4,0)
  372. local storedCF = tors.CFrame
  373. roof.CFrame = storedCF * CFrame.new(0,9,0)
  374. ring.CFrame = head.CFrame
  375. local a0 = Instance.new("Attachment",roof)
  376. local a1 = Instance.new("Attachment",ring)
  377.  
  378. local rope = Instance.new("RopeConstraint",roof)
  379. rope.Thickness = 0.1
  380. rope.Color = ring.BrickColor
  381. rope.Attachment0 = a0
  382. rope.Visible = true
  383. rope.Attachment1 = a1
  384. rope.Length = (roof.CFrame.p - ring.CFrame.p).magnitude
  385. wait(.05)
  386. local rag = ragdoll()
  387. plr.Character = rag
  388. Model.Parent = rag
  389. local hw = Instance.new("Weld",rag)
  390. hw.Part0 = rag.Head
  391. hw.Part1 = ring
  392. hw.C1 = CFrame.new(0,0,0.5)*CFrame.Angles(math.rad(90),0,0)
  393.  
  394.  
  395. local Music = sndFromData(Sounds["SayoFuckYouDan-Nara"],rag.Torso)
  396. Music:Play()
  397.  
  398. -- Check State
  399. function CheckState(rPart)
  400. if(rPart.Velocity.y > 1 and hum:GetState() == Enum.HumanoidStateType.Freefall)then
  401. return 'Jump';
  402. elseif(rPart.Velocity.y < -1 and hum:GetState() == Enum.HumanoidStateType.Freefall)then
  403. return 'Fall';
  404. elseif(math.abs(rPart.Velocity.x) > 2 or math.abs(rPart.Velocity.z) > 2 and hum:GetState() ~= Enum.HumanoidStateType.Freefall)then
  405. return 'Walk';
  406. end
  407. return 'Idle';
  408. end
  409.  
  410.  
  411. -- Died event
  412.  
  413. hum.Died:connect(function() -- When the player dies
  414. UnbindLoops() -- Unbind all of the loops used
  415. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement