Advertisement
SpiritualDonut

Untitled

Jun 2nd, 2018
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --// Initializing \\--
  2. local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
  3. local Plrs = S.Players
  4. local Plr = Plrs.LocalPlayer
  5. local Char = Plr.Character
  6. local Hum = Char:FindFirstChildOfClass'Humanoid'
  7. local RArm = Char["Right Arm"]
  8. local LArm = Char["Left Arm"]
  9. local RLeg = Char["Right Leg"]
  10. local LLeg = Char["Left Leg"]
  11. local Root = Char:FindFirstChild'HumanoidRootPart'
  12. local Torso = Char.Torso
  13. local Head = Char.Head
  14. local NeutralAnims = true
  15. local Attack = false
  16. local BloodPuddles = {}
  17. local Effects = {}
  18. local Debounces = {Debounces={}}
  19. local Mouse = Plr:GetMouse()
  20. local Hit = {}
  21. local Sine = 0
  22. local Change = 1
  23. local Twitch = false
  24. local LastTwitch = 0;
  25. local Victim = nil;
  26. --// Debounce System \\--
  27.  
  28.  
  29. function Debounces:New(name,cooldown)
  30. local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
  31. setmetatable(aaaaa,{__index = Debounces})
  32. Debounces.Debounces[name] = aaaaa
  33. return aaaaa
  34. end
  35.  
  36. function Debounces:Use(overrideUsable)
  37. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  38. if(self.Usable or overrideUsable)then
  39. self.Usable = false
  40. self.CoolingDown = true
  41. local LastUse = time()
  42. self.LastUse = LastUse
  43. delay(self.Cooldown or 2,function()
  44. if(self.LastUse == LastUse)then
  45. self.CoolingDown = false
  46. self.Usable = true
  47. end
  48. end)
  49. end
  50. end
  51.  
  52. function Debounces:Get(name)
  53. assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
  54. for i,v in next, Debounces.Debounces do
  55. if(i == name)then
  56. return v;
  57. end
  58. end
  59. end
  60.  
  61. function Debounces:GetProgressPercentage()
  62. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  63. if(self.CoolingDown and not self.Usable)then
  64. return math.max(
  65. math.floor(
  66. (
  67. (time()-self.LastUse)/self.Cooldown or 2
  68. )*100
  69. )
  70. )
  71. else
  72. return 100
  73. end
  74. end
  75.  
  76. --// Shortcut Variables \\--
  77. local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
  78. local C3 = {N=Color3.new,RGB=Color3.fromRGB,HSV=Color3.fromHSV,tHSV=Color3.toHSV}
  79. local V3 = {N=Vector3.new,FNI=Vector3.FromNormalId,A=Vector3.FromAxis}
  80. local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge,RRNG = function(min,max,div) return math.rad(math.random(min,max)/(div or 1)) end}
  81. local R3 = {N=Region3.new}
  82. local De = S.Debris
  83. local WS = workspace
  84. local Lght = S.Lighting
  85. local RepS = S.ReplicatedStorage
  86. local IN = Instance.new
  87. --// Instance Creation Functions \\--
  88.  
  89. function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
  90. local Sound = IN("Sound")
  91. Sound.SoundId = "rbxassetid://".. tostring(id or 0)
  92. Sound.Pitch = pitch or 1
  93. Sound.Volume = volume or 1
  94. Sound.Looped = looped or false
  95. if(autoPlay)then
  96. coroutine.wrap(function()
  97. repeat wait() until Sound.IsLoaded
  98. Sound.Playing = autoPlay or false
  99. end)()
  100. end
  101. if(not looped and effect)then
  102. Sound.Stopped:connect(function()
  103. Sound.Volume = 0
  104. Sound:destroy()
  105. end)
  106. elseif(effect)then
  107. warn("Sound can't be looped and a sound effect!")
  108. end
  109. Sound.Parent =parent or Torso
  110. return Sound
  111. end
  112. function Part(parent,color,material,size,cframe,anchored,cancollide)
  113. local part = IN("Part")
  114. part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or C3.N(0,0,0)
  115. part.Material = material or Enum.Material.SmoothPlastic
  116. part.TopSurface,part.BottomSurface=10,10
  117. part.Size = size or V3.N(1,1,1)
  118. part.CFrame = cframe or CF.N(0,0,0)
  119. part.Anchored = anchored or true
  120. part.CanCollide = cancollide or false
  121. part.Parent = parent or Char
  122. return part
  123. end
  124. function Mesh(parent,meshtype,meshid,textid,scale,offset)
  125. local part = IN("SpecialMesh")
  126. part.MeshId = meshid or ""
  127. part.TextureId = textid or ""
  128. part.Scale = scale or V3.N(1,1,1)
  129. part.Offset = offset or V3.N(0,0,0)
  130. part.MeshType = meshtype or Enum.MeshType.Sphere
  131. part.Parent = parent
  132. return part
  133. end
  134.  
  135. NewInstance = function(instance,parent,properties)
  136. local inst = Instance.new(instance,parent)
  137. if(properties)then
  138. for i,v in next, properties do
  139. pcall(function() inst[i] = v end)
  140. end
  141. end
  142. return inst;
  143. end
  144.  
  145.  
  146.  
  147. --// Extended ROBLOX tables \\--
  148. local Instance = setmetatable({ClearChildrenOfClass = function(where,class,recursive) local children = (recursive and where:GetDescendants() or where:GetChildren()) for _,v in next, children do if(v:IsA(class))then v:destroy();end;end;end},{__index = Instance})
  149. --// Customization \\--
  150.  
  151. local Frame_Speed = 60 -- The frame speed for swait. 1 is automatically divided by this
  152. local Remove_Hats = false
  153. local Remove_Clothing = false
  154. local PlayerSize = 1
  155. local DamageColor = BrickColor.new'Really red'
  156. local MusicID = 225195031
  157. local TwitchMinTime = 2
  158. local BloodColor = BrickColor.new'Maroon'
  159. local BloodMaterial = Enum.Material.Glass
  160. local Target1Id = "rbxassetid://1490455495"
  161. local Target2Id = "rbxassetid://133820006"
  162. local Whitelist = {
  163. [{33104243,"Salvo_Starly"}] = {"Sorry, my Blazey..","OwO?","Ah, I'm sorry.. I thought you were an enemy.","Why did I even think of doing that.."},
  164. [{19081129,"CKbackup"}] = {"S-sugarie! My bad!", "Ah, I'm sorry, my furry friend.","Why did I even think of doing that.."},
  165. [{5719877,"Nebula_Zorua"}] = {"My creator!","N-nebula!?","I'm sorry, my creator!","F-father..?","Daddy..?","Sorry, Nebby..!"},
  166. [{19909695,"makhail07"}] = {"Cretty!~","Yeef me dadi~","Marshdaddy~","Makhail, the edge master","Hello there, friend..~"},
  167. [{44083134,"Fifkee"}] = {(function() return Plr.UserId == 5719877 and "Uh.. Who're you again?" or "You're Nebula's friend.. Right?" end)(),"Uuhh.. hi?","I nearly killed ya.","Oh. It's you."},
  168. }
  169.  
  170. --// Whitelist System \\--
  171.  
  172. function IsWhitelisted(id,who)
  173. for i,v in next, Whitelist do
  174. if(i[1] == id or i[2] == who)then
  175. return v
  176. end
  177. end
  178. return nil
  179. end
  180.  
  181. --// Weapon and GUI creation, and Character Customization \\--
  182.  
  183. if(Remove_Hats)then Instance.ClearChildrenOfClass(Char,"Accessory",true) end
  184. if(Remove_Clothing)then Instance.ClearChildrenOfClass(Char,"Clothing",true) Instance.ClearChildrenOfClass(Char,"ShirtGraphic",true) end
  185. local Effects = IN("Folder",Char)
  186. Effects.Name = "Effects"
  187.  
  188. local FT,RA,LA,RL,LL = Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh")
  189. FT.MeshId,FT.Scale = "rbxasset://fonts/torso.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  190. RA.MeshId,RA.Scale = "rbxasset://fonts/rightarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  191. LA.MeshId,LA.Scale = "rbxasset://fonts/leftarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  192. RL.MeshId,RL.Scale = "rbxasset://fonts/rightleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  193. LL.MeshId,LL.Scale = "rbxasset://fonts/leftleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  194.  
  195. local Target = NewInstance("BillboardGui",Char,{Name='Target',Adornee=nil,LightInfluence=0,AlwaysOnTop=true,Size = UDim2.new(10,0,10,0)})
  196. local TargetImg1 = NewInstance("ImageLabel",Target,{BackgroundTransparency=1,Position = UDim2.new(.5,0,.5,0),Size = UDim2.new(1,0,1,0),AnchorPoint = Vector2.new(.5,.5),Image=Target1Id,ImageColor = C3.N(0,0,0),ImageTransparency=1})
  197. local TargetImg2 = TargetImg1:Clone();
  198. TargetImg2.Size = UDim2.new(1.4,0,1.4,0);
  199. TargetImg2.Image = Target2Id
  200. TargetImg2.Parent = Target
  201. TargetImg2.ImageColor3 = C3.RGB(165,0,0)
  202. if(PlayerSize ~= 1)then
  203. for _,v in next, Char:GetDescendats() do
  204. if(v:IsA'BasePart')then
  205. v.Size = v.Size * PlayerSize
  206. end
  207. end
  208. end
  209.  
  210. local Music = Sound(Char,MusicID,1,3,true,false,true)
  211. Music.Name = 'Music'
  212.  
  213. --// Stop animations \\--
  214. for _,v in next, Hum:GetPlayingAnimationTracks() do
  215. v:Stop();
  216. end
  217.  
  218. pcall(game.Destroy,Char:FindFirstChild'Animate')
  219. pcall(game.Destroy,Hum:FindFirstChild'Animator')
  220.  
  221. --// Joints \\--
  222.  
  223. local LS = NewInstance('Motor',Char,{Part0=Torso,Part1=LArm,C0 = CF.N(-1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
  224. local RS = NewInstance('Motor',Char,{Part0=Torso,Part1=RArm,C0 = CF.N(1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
  225. local NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CF.N(0,1.5 * PlayerSize,0)})
  226. local LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CF.N(-.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
  227. local RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CF.N(.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
  228. local RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
  229.  
  230. local LSC0 = LS.C0
  231. local RSC0 = RS.C0
  232. local NKC0 = NK.C0
  233. local LHC0 = LH.C0
  234. local RHC0 = RH.C0
  235. local RJC0 = RJ.C0
  236.  
  237. --// Artificial HB and Name \\--
  238. game.Players.LocalPlayer.Character.Head.face.Texture = "rbxassetid://148989840"
  239.  
  240. local txtfag = Instance.new("BillboardGui", game.Players.LocalPlayer.Character.Head)
  241. txtfag.Adornee = suckadick
  242. txtfag.Name = "kys nigga"
  243. txtfag.Size = UDim2.new(2, 0, 1.2, 0)
  244. txtfag.StudsOffset = Vector3.new(-5, 3, 0)
  245. local textfag = Instance.new("TextLabel", txtfag)
  246. textfag.Size = UDim2.new(6, 0, 1, 0)
  247. textfag.FontSize = "Size8"
  248. textfag.TextScaled = true
  249. textfag.TextTransparency = 0
  250. textfag.BackgroundTransparency = 1
  251. textfag.TextTransparency = 0
  252. textfag.TextStrokeTransparency = 0
  253. textfag.Font = "Cartoon"
  254. textfag.TextStrokeColor3 = Color3.new(0, 0, 0)
  255. v = Instance.new("Part")
  256. v.Name = "ColorBrick"
  257. v.Parent = part
  258. v.FormFactor = "Symmetric"
  259. v.Anchored = true
  260. v.CanCollide = false
  261. v.BottomSurface = "Smooth"
  262. v.TopSurface = "Smooth"
  263. v.Size = Vector3.new(10, 5, 3)
  264. v.Transparency = 0.7
  265. v.BrickColor = game.Players.LocalPlayer.Character.Torso.BrickColor
  266. v.Transparency = 1
  267. textfag.TextColor3 = v.BrickColor.Color
  268. textfag.TextStrokeColor3 = Color3.new(0, 0, 200)
  269. v.Shape = "Block"
  270. textfag.Text = "What do you want?"
  271. wait(3)
  272. textfag.Text = "Nothing"
  273.  
  274. local ArtificialHB = IN("BindableEvent", script)
  275. ArtificialHB.Name = "Heartbeat"
  276.  
  277. script:WaitForChild("Heartbeat")
  278.  
  279. local tf = 0
  280. local allowframeloss = false
  281. local tossremainder = false
  282. local lastframe = tick()
  283. local frame = 1/Frame_Speed
  284. ArtificialHB:Fire()
  285.  
  286. game:GetService("RunService").Heartbeat:connect(function(s, p)
  287. tf = tf + s
  288. if tf >= frame then
  289. if allowframeloss then
  290. script.Heartbeat:Fire()
  291. lastframe = tick()
  292. else
  293. for i = 1, math.floor(tf / frame) do
  294. ArtificialHB:Fire()
  295. end
  296. lastframe = tick()
  297. end
  298. if tossremainder then
  299. tf = 0
  300. else
  301. tf = tf - frame * math.floor(tf / frame)
  302. end
  303. end
  304. end)
  305.  
  306. function swait(num)
  307. if num == 0 or num == nil then
  308. ArtificialHB.Event:wait()
  309. else
  310. for i = 0, num do
  311. ArtificialHB.Event:wait()
  312. end
  313. end
  314. end
  315.  
  316.  
  317. --// Effect Function(s) \\--
  318.  
  319. local blood = NewInstance("ParticleEmitter",nil,{
  320. Color = ColorSequence.new(C3.N(.8,0,0)),
  321. LightEmission=.1,
  322. LightInfluence=1,
  323. ZOffset=.9,
  324. Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2,0),NumberSequenceKeypoint.new(1,3,0)},
  325. Texture="rbxassetid://284205403",
  326. Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,0)},
  327. Acceleration = V3.N(0,-15,0),
  328. Lifetime = NumberRange.new(1,2),
  329. Rate=50,
  330. Speed = NumberRange.new(5,15),
  331. SpreadAngle = Vector2.new(15,15),
  332. Enabled = false,
  333. EmissionDirection = 'Back',
  334. })
  335.  
  336. function Blood(prt,amount)
  337. local part = Instance.new("Part",Effects)
  338. part.Transparency = 1
  339. part.Size = prt.Size
  340. part.Anchored = true
  341. part.CanCollide = false
  342. part.CFrame = CF.N(prt.Position,Torso.Position)
  343. S.Debris:AddItem(part,5)
  344. local prtcl = blood:Clone()
  345. prtcl.Parent = part
  346. prtcl:Emit(amount)
  347. end
  348.  
  349. function BloodDrop(pos,dir,maxsize)
  350. local owo = NewInstance("Part",Char,{Material=BloodMaterial,BrickColor=BloodColor,Shape=Enum.PartType.Ball,Size=V3.N(.25,.25,.25), CanCollide = false})
  351. owo.CFrame=CF.N(pos,dir)
  352. local bv = Instance.new("BodyVelocity",owo)
  353. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  354. bv.velocity = CF.N(pos,dir+V3.N(M.RNG(-3,3)/30,M.RNG(-3,3)/30,M.RNG(-3,3)/30)).lookVector*15
  355. bv.Name = "MOVE"
  356. game:service'Debris':AddItem(bv,0.05)
  357. local touch
  358. touch = owo.Touched:connect(function(hit)
  359. if(hit.Anchored==true and hit.CanCollide and not hit.Parent:FindFirstChildOfClass'Humanoid' and not hit.Parent.Parent:FindFirstChildOfClass'Humanoid')then
  360. touch:disconnect()
  361. BloodPuddle(owo.Position+V3.N(0,1,0),3,maxsize,owo)
  362. owo:destroy()
  363. end
  364. end)
  365. end
  366. function BloodPuddle(position,range,maxSize,where)
  367. local hit, pos, norm = workspace:FindPartOnRayWithIgnoreList(Ray.new(
  368. position,CF.N(position,position+V3.N(0,-1,0)).lookVector * range
  369. ),{where,Char},false,true)
  370. if(hit)then
  371. if(BloodPuddles[hit])then
  372. BloodPuddles[hit].Frame = 0
  373. if(hit:FindFirstChild'CylinderMesh' and hit.CylinderMesh.Scale.Z < BloodPuddles[hit].MaxSize)then
  374. hit.CylinderMesh.Scale = hit.CylinderMesh.Scale + V3.N(.1,0,.1)
  375. end
  376. else
  377. local Puddle = NewInstance('Part',hit,{Material=BloodMaterial,BrickColor=BloodColor,Size=V3.N(1,.1,1),CFrame=CF.N(pos,pos+norm)*CF.A(90*M.P/180,0,0),Anchored=true,CanCollide=false,Archivable=false,Locked=true,Name='BloodPuddle'})
  378. local Cyl = NewInstance('CylinderMesh',Puddle,{Name='CylinderMesh'})
  379. BloodPuddles[Puddle] = {MaxSize=maxSize or 7,Frame=0}
  380. end
  381. end
  382. end
  383.  
  384. function Tween(obj,props,time,easing,direction,repeats,backwards)
  385. local info = TweenInfo.new(time or .5, easing or Enum.EasingStyle.Quad, direction or Enum.EasingDirection.Out, repeats or 0, backwards or false)
  386. local tween = S.TweenService:Create(obj, info, props)
  387.  
  388. tween:Play()
  389. end
  390.  
  391. function Bezier(startpos, pos2, pos3, endpos, t)
  392. local A = startpos:lerp(pos2, t)
  393. local B = pos2:lerp(pos3, t)
  394. local C = pos3:lerp(endpos, t)
  395. local lerp1 = A:lerp(B, t)
  396. local lerp2 = B:lerp(C, t)
  397. local cubic = lerp1:lerp(lerp2, t)
  398. return cubic
  399. end
  400.  
  401. function Effect(data)
  402. local FX = data.Effect or 'Resize-AndFade'
  403. local Parent = data.Parent or Effects
  404. local Color = data.Color or C3.N(0,0,0)
  405. local Size = data.Size or V3.N(1,1,1)
  406. local MoveDir = data.MoveDirection or nil
  407. local MeshData = data.Mesh or nil
  408. local SndData = data.Sound or nil
  409. local Frames = data.Frames or 45
  410. local Manual = data.Manual or nil
  411. local Material = data.Material or nil
  412. local CFra = data.CFrame or Torso.CFrame
  413. local Settings = data.FXSettings or {}
  414. local Snd,Prt,Msh;
  415. if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
  416. Prt = Manual
  417. else
  418. Prt = Part(Parent,Color,Material,Size,CFra,true,false)
  419. end
  420. if(typeof(MeshData) == 'table')then
  421. Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
  422. elseif(typeof(MeshData) == 'Instance')then
  423. Msh = MeshData:Clone()
  424. Msh.Parent = Prt
  425. end
  426. if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
  427. Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
  428. end
  429. if(Snd)then
  430. repeat wait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
  431. Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
  432. end
  433. local MoveSpeed = nil;
  434. if(MoveDir)then
  435. MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
  436. end
  437. local Inc = M.RNG()-M.RNG()
  438. local Thingie = 0
  439. local Thingie2 = M.RNG(50,100)/100
  440.  
  441. coroutine.wrap(function()
  442. if(FX ~= 'Arc')then
  443. for i = 1, Frames do
  444. if(FX == 'Resize-AndFade')then
  445. if(not Settings.EndSize)then
  446. Settings.EndSize = V3.N(0,0,0)
  447. end
  448. local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
  449. if(Settings.EndIsIncrement)then
  450. Prt.Size = Prt.Size - Settings.EndSize
  451. else
  452. Prt.Size = Prt.Size - grow/Frames
  453. end
  454. Prt.Transparency = (i/Frames)
  455. elseif(FX == 'Resize+AndFade')then
  456. if(not Settings.EndSize)then
  457. Settings.EndSize = Size*2
  458. end
  459. local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
  460. if(Settings.EndIsIncrement)then
  461. Prt.Size = Prt.Size + Settings.EndSize
  462. else
  463. Prt.Size = Prt.Size + grow/Frames
  464. end
  465. Prt.Transparency = (i/Frames)
  466. elseif(FX == 'Fade')then
  467. Prt.Transparency = (i/Frames)
  468. end
  469. if(Settings.RandomizeCFrame)then
  470. Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
  471. end
  472. if(MoveDir and MoveSpeed)then
  473. local Orientation = Prt.Orientation
  474. Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
  475. Prt.Orientation = Orientation
  476. end
  477. if(swait and typeof(swait) == 'function')then
  478. swait()
  479. else
  480. wait()
  481. end
  482. end
  483. Prt:destroy()
  484. else
  485. local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
  486. if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
  487. local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  488. local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  489. assert(start ~= nil,"You need to specify a start point!")
  490. assert(endP ~= nil,"You need to specify an end point!")
  491. for i = 0, 1, Settings.Speed or 0.01 do
  492. if(Settings.Home)then
  493. endP = Settings.Home.CFrame
  494. end
  495. Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
  496. if(swait and typeof(swait) == 'function')then
  497. swait()
  498. else
  499. wait()
  500. end
  501. end
  502. if(Settings.RemoveOnGoal)then
  503. Prt:destroy()
  504. end
  505. end
  506. end)()
  507. return Prt,Msh,Snd
  508. end
  509.  
  510.  
  511. function SoulSteal(whom)
  512. local torso = (whom:FindFirstChild'Head' or whom:FindFirstChild'Torso' or whom:FindFirstChild'UpperTorso' or whom:FindFirstChild'LowerTorso' or whom:FindFirstChild'HumanoidRootPart')
  513. print(torso)
  514. if(torso and torso:IsA'BasePart')then
  515. local Model = Instance.new("Model",Effects)
  516. Model.Name = whom.Name.."'s Soul"
  517. whom:BreakJoints()
  518. local Soul = Part(Model,BrickColor.new'Really red','Glass',V3.N(.5,.5,.5),torso.CFrame,true,false)
  519. Soul.Name = 'Head'
  520. NewInstance("Humanoid",Model,{Health=0,MaxHealth=0})
  521. Effect{
  522. Effect="Arc",
  523. Manual = Soul,
  524. FXSettings={
  525. Start=torso.CFrame,
  526. Home = Torso,
  527. RemoveOnGoal = true,
  528. }
  529. }
  530. local lastPoint = Soul.CFrame.p
  531.  
  532. for i = 0, 1, 0.01 do
  533. local point = CFrame.new(lastPoint, Soul.Position) * CFrame.Angles(-math.pi/2, 0, 0)
  534. local mag = (lastPoint - Soul.Position).magnitude
  535. Effect{
  536. Effect = "Fade",
  537. CFrame = point * CF.N(0, mag/2, 0),
  538. Size = V3.N(.5,mag+.5,.5),
  539. Color = Soul.BrickColor
  540. }
  541. lastPoint = Soul.CFrame.p
  542. swait()
  543. end
  544. for i = 1, 5 do
  545. Effect{
  546. Effect="Fade",
  547. Color = BrickColor.new'Really red',
  548. MoveDirection = (Torso.CFrame*CFrame.new(M.RNG(-40,40),M.RNG(-40,40),M.RNG(-40,40))).p
  549. }
  550. end
  551. end
  552. end
  553.  
  554. --// Other Functions \\ --
  555.  
  556. function Ragdoll(who,half,glitching)
  557. who:breakJoints()
  558. pcall(function()
  559. who.HumanoidRootPart:destroy()
  560. end)
  561. local who = who
  562. local hhh = who:FindFirstChildOfClass'Humanoid'
  563. local t = GetTorso(who)
  564. if(hhh.RigType == Enum.HumanoidRigType.R6)then
  565. local RA,LA,RL,LL,HD = who:FindFirstChild'Right Arm',who:FindFirstChild'Left Arm',who:FindFirstChild'Right Leg',who:FindFirstChild'Left Leg',who:FindFirstChild'Head'
  566. local RAJ = NewInstance("Attachment",t,{Position=V3.N(1.5,.5,0),Orientation=V3.N()})
  567. local RAJ2 = NewInstance("Attachment",RA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
  568. local LAJ = NewInstance("Attachment",t,{Position=V3.N(-1.5,.5,0),Orientation=V3.N()})
  569. local LAJ2 = NewInstance("Attachment",LA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
  570. local NJ = NewInstance('Attachment',t,{Position=V3.N(0,1,0),Orientation=V3.N()})
  571. local NJ2 = NewInstance('Attachment',HD,{Position=V3.N(0,-.5,0),Orientation=V3.N()})
  572. local NJ3 = NewInstance('Attachment',HD,{Position=V3.N(0,.5,0),Orientation=V3.N()})
  573.  
  574. local RAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RAJ,Attachment1=RAJ2})
  575. local LAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LAJ,Attachment1=LAJ2})
  576. local HC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=45,Attachment0=NJ,Attachment1=NJ2})
  577.  
  578. local CollideRA = NewInstance('Part',who,{Size=RArm.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
  579. local CollideLA = NewInstance('Part',who,{Size=LArm.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
  580. local CollideHD = NewInstance('Part',who,{Size=HD.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
  581. NewInstance('Weld',CollideRA,{Part0=RA,Part1=CollideRA})
  582. NewInstance('Weld',CollideLA,{Part0=LA,Part1=CollideLA})
  583. NewInstance('Weld',CollideHD,{Part0=HD,Part1=CollideHD})
  584.  
  585. if(not half)then
  586. local RLJ = NewInstance("Attachment",t,{Position=V3.N(.5,-1,0),Orientation=V3.N()})
  587. local RLJ2 = NewInstance("Attachment",RL,{Position=V3.N(0,1,0),Orientation=V3.N()})
  588. local LLJ = NewInstance("Attachment",t,{Position=V3.N(-.5,-1,0),Orientation=V3.N()})
  589. local LLJ2 = NewInstance("Attachment",LL,{Position=V3.N(0,1,0),Orientation=V3.N()})
  590. local RLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RLJ,Attachment1=RLJ2})
  591. local LLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LLJ,Attachment1=LLJ2})
  592. end
  593. if(glitching)then
  594. swait(120)
  595. local pow = 75
  596. local FT,RA,LA,RL,LL = Instance.new("SpecialMesh",t),Instance.new("SpecialMesh",RA),Instance.new("SpecialMesh",LA),Instance.new("SpecialMesh",RL),Instance.new("SpecialMesh",LL)
  597. FT.MeshId,FT.Scale = "rbxasset://fonts/torso.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  598. RA.MeshId,RA.Scale = "rbxasset://fonts/rightarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  599. LA.MeshId,LA.Scale = "rbxasset://fonts/leftarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  600. RL.MeshId,RL.Scale = "rbxasset://fonts/rightleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  601. LL.MeshId,LL.Scale = "rbxasset://fonts/leftleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  602. for i = 0, 1, .1 do
  603. for _,v in next, who:GetDescendants() do
  604. if(v:IsA'DataModelMesh')then
  605. v.Offset = V3.N(M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100)
  606. elseif(v:IsA'BasePart')then
  607. v.Transparency = i
  608. end
  609. end
  610. swait()
  611. end
  612. who:destroy()
  613. end
  614. else
  615. if(glitching)then
  616. swait(120)
  617. for i = 0, 1, .1 do
  618. for _,v in next, hhh:children() do
  619. if(v:IsA'NumberValue')then
  620. v.Value = M.RNG(0,10)
  621. end
  622. end
  623. local pow = 75
  624. for _,v in next, who:GetDescendants() do
  625. if(v:IsA'DataModelMesh')then
  626. v.Offset = V3.N(M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100)
  627. elseif(v:IsA'BasePart')then
  628. v.Transparency = i
  629. end
  630. end
  631. swait()
  632. end
  633. who:destroy()
  634. end
  635. -- TODO: R15 Ragdoll
  636. end
  637. end
  638.  
  639.  
  640. function getRegion(point,range,ignore)
  641. return workspace:FindPartsInRegion3WithIgnoreList(R3.N(point-V3.N(1,1,1)*range/2,point+V3.N(1,1,1)*range/2),ignore,100)
  642. end
  643.  
  644. function RandomChoice(table)
  645. return table[M.RNG(1,#table)]
  646. end
  647.  
  648. function Chat(text)
  649. coroutine.wrap(function()
  650. if Char:FindFirstChild("TalkingBillBoard")~= nil then
  651. Char:FindFirstChild("TalkingBillBoard"):destroy()
  652. end
  653. local oText = text;
  654. text = ""
  655. for i = 1, #oText do
  656. if(i%2 == 1)then
  657. text = text..oText:sub(i,i):upper()
  658. else
  659. text = text..oText:sub(i,i):lower()
  660. end
  661. end
  662. local Bill = Instance.new("BillboardGui",Char)
  663. Bill.Size = UDim2.new(0,100,0,40)
  664. Bill.StudsOffset = Vector3.new(0,3,0)
  665. Bill.Adornee = Char.Head
  666. Bill.Name = "TalkingBillBoard"
  667. local Hehe = Instance.new("TextLabel",Bill)
  668. Hehe.BackgroundTransparency = 1
  669. Hehe.BorderSizePixel = 0
  670. Hehe.Text = ""
  671. Hehe.Font = "Bodoni"
  672. Hehe.TextSize = 40
  673. Hehe.TextStrokeTransparency = 0
  674. Hehe.Size = UDim2.new(1,0,0.5,0)
  675. coroutine.resume(coroutine.create(function()
  676. while Hehe ~= nil do
  677. swait()
  678. Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
  679. Hehe.Rotation = M.RNG(-M.RNG(5,15),M.RNG(5,15))
  680. local aa = math.random(0, 255)/255
  681. local bb = math.random(0, 255)/255
  682. Hehe.TextColor3 = C3.N(aa,aa,aa)
  683. Hehe.TextStrokeColor3 = C3.N(bb,bb,bb)
  684. end
  685. end))
  686. for i = 1,string.len(text),1 do
  687. swait(5)
  688. Hehe.Text = string.sub(text,1,i)
  689. end
  690. swait(90)
  691. for i = 0, 1, .025 do
  692. swait()
  693. Hehe.TextStrokeTransparency = i
  694. Hehe.TextTransparency = i
  695. Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
  696. end
  697. Bill:Destroy()
  698. end)()
  699. end
  700.  
  701.  
  702. function clerp(startCF,endCF,alpha)
  703. return startCF:lerp(endCF, alpha)
  704. end
  705.  
  706. function GetTorso(char)
  707. return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso' or char:FindFirstChild'LowerTorso' or char:FindFirstChild'HumanoidRootPart'
  708. end
  709.  
  710.  
  711. function ShowDamage(Pos, Text, Time, Color)
  712. coroutine.wrap(function()
  713. local Pos = (Pos or Vector3.new(0, 0, 0))
  714. local Text = (Text or "")
  715. local Time = (Time or 2)
  716. local Color = (Color or Color3.new(1, 0, 1))
  717. local EffectPart = NewInstance("Part",Effects,{
  718. Material=Enum.Material.SmoothPlastic,
  719. Reflectance = 0,
  720. Transparency = 1,
  721. BrickColor = BrickColor.new(Color),
  722. Name = "Effect",
  723. Size = Vector3.new(0,0,0),
  724. Anchored = true
  725. })
  726. local BillboardGui = NewInstance("BillboardGui",EffectPart,{
  727. Size = UDim2.new(2, 0, 2, 0),
  728. Adornee = EffectPart,
  729. })
  730. local TextLabel = NewInstance("TextLabel",BillboardGui,{
  731. BackgroundTransparency = 1,
  732. Size = UDim2.new(1, 0, 1, 0),
  733. Text = Text,
  734. Font = "Arial",
  735. TextColor3 = Color,
  736. TextStrokeColor3 = Color3.new(0,0,0),
  737. TextStrokeTransparency=0,
  738. TextScaled = true,
  739. })
  740. EffectPart.Parent = game:GetService("Workspace")
  741. delay(0, function()
  742. local Frames = (Time / (1/Frame_Speed))
  743. for Frame = 1, Frames do
  744. swait()
  745. local Percent = (Frame / Frames)
  746. EffectPart.CFrame = CF.N(Pos+ V3.N(0, Percent, 0)) * CF.A(0,0,M.RRNG(-90,90))
  747. TextLabel.Rotation = M.RNG(-6,6)
  748. TextLabel.Position = UDim2.new(M.RNG(-1,1)/10,M.RNG(-1,1)/10,.05,M.RNG(-1,1)/10)
  749. end
  750. for i = 0, 1, .025 do
  751. swait()
  752. TextLabel.TextStrokeTransparency = i
  753. TextLabel.TextTransparency = i
  754. TextLabel.Position = UDim2.new(M.RNG(-15,15)/10,M.RNG(-15,15)/10,M.RNG(-15,15)/10,M.RNG(-15,15)/10)
  755. end
  756. if EffectPart and EffectPart.Parent then
  757. EffectPart:Destroy()
  758. end
  759. end) end)()
  760. end
  761.  
  762. --[[if(not Plr:IsFriendsWith(5719877))then
  763. Char:BreakJoints()
  764. error("Not whitelisted. You have to be friends with Nebula.")
  765. else
  766. warn("You're friends with Nebula, the creator of this script")
  767. warn("Enjoy!")
  768. end]]
  769.  
  770. function DealDamage(who,minDam,maxDam,Knock,Type,critChance,critMult)
  771. if(who)then
  772. local hum = who:FindFirstChildOfClass'Humanoid'
  773. local Damage = M.RNG(minDam,maxDam)
  774. local canHit = true
  775. if(hum)then
  776. for _, p in pairs(Hit) do
  777. if p[1] == hum then
  778. if(time() - p[2] < 0.1) then
  779. canHit = false
  780. else
  781. Hit[_] = nil
  782. end
  783. end
  784. end
  785. if(canHit)then
  786. if(hum.Health >= math.huge)then
  787. who:BreakJoints()
  788. if(who:FindFirstChild'Head' and hum.Health > 0)then
  789. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "INSTANT", 1.5, C3.N(1,0,0))
  790. end
  791. else
  792. local player = S.Players:GetPlayerFromCharacter(who)
  793. if(Type == "Fire")then
  794. --idk..
  795. else
  796. local c = Instance.new("ObjectValue",hum)
  797. c.Name = "creator"
  798. c.Value = Plr
  799. game:service'Debris':AddItem(c,0.35)
  800. if(M.RNG(1,100) <= (critChance or 0))then
  801. if(who:FindFirstChild'Head' and hum.Health > 0)then
  802. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "[CRIT] "..Damage*(critMult or 2), 1.5, BrickColor.new'New Yeller'.Color)
  803. end
  804. hum.Health = hum.Health - Damage*(critMult or 2)
  805. else
  806. if(who:FindFirstChild'Head' and hum.Health > 0)then
  807. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), Damage, 1.5, DamageColor.Color)
  808. end
  809. hum.Health = hum.Health - Damage
  810. end
  811. if(Type == 'Knockback' and GetTorso(who))then
  812. local angle = GetTorso(who).Position - Root.Position + Vector3.new(0, 0, 0).unit
  813. local body = NewInstance('BodyVelocity',GetTorso(who),{
  814. P = 500,
  815. maxForce = V3.N(math.huge,0,math.huge),
  816. velocity = Root.CFrame.lookVector * Knock + Root.Velocity / 1.05
  817. })
  818. game:service'Debris':AddItem(body,.5)
  819. elseif(Type == 'Knockdown' and GetTorso(who))then
  820. local rek = GetTorso(who)
  821. print(rek)
  822. hum.PlatformStand = true
  823. delay(1,function()
  824. hum.PlatformStand = false
  825. end)
  826. local angle = (GetTorso(who).Position - (Root.Position + Vector3.new(0, 0, 0))).unit
  827. local bodvol = NewInstance("BodyVelocity",rek,{
  828. velocity = angle * Knock,
  829. P = 5000,
  830. maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  831. })
  832. local rl = NewInstance("BodyAngularVelocity",rek,{
  833. P = 3000,
  834. maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  835. angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  836. })
  837. game:GetService("Debris"):AddItem(bodvol, .5)
  838. game:GetService("Debris"):AddItem(rl, .5)
  839. end
  840. end
  841. end
  842. end
  843. table.insert(Hit,{hum,time()})
  844. end
  845. end
  846. end
  847.  
  848. function AOEDamage(where,range,minDam,maxDam,Knock,Type)
  849. for _,v in next, getRegion(where,range,{Char}) do
  850. if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
  851. DealDamage(v.Parent,minDam,maxDam,Knock,Type)
  852. end
  853. end
  854. end
  855. function AOEHeal(where,range,amount)
  856. local healed = {}
  857. for _,v in next, getRegion(where,range,{Char}) do
  858. local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid' or nil)
  859. if(hum and not healed[hum])then
  860. hum.Health = hum.Health + amount
  861. if(v.Parent:FindFirstChild'Head' and hum.Health > 0)then
  862. ShowDamage((v.Parent.Head.CFrame * CF.N(0, 0, (v.Parent.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "+"..amount, 1.5, BrickColor.new'Lime green'.Color)
  863. end
  864. end
  865. end
  866. end
  867. --// Wrap it all up \\--
  868.  
  869.  
  870. coroutine.wrap(function()
  871. while true do
  872. swait()
  873. for puddle,data in next, BloodPuddles do
  874. if(puddle.Transparency > 0.9)then
  875. BloodPuddles[puddle] = nil
  876. puddle:destroy()
  877. end
  878. data.Frame = data.Frame + 1
  879. if(data.Frame > Frame_Speed*4)then
  880. local trans = (data.Frame-Frame_Speed*4)/Frame_Speed*2
  881. puddle.Transparency = trans
  882. if(puddle:FindFirstChild'CylinderMesh' and puddle.CylinderMesh.Scale.Z > 0)then
  883. puddle.CylinderMesh.Scale = puddle.CylinderMesh.Scale-V3.N(.1,0,.1)
  884. end
  885. else
  886. puddle.Transparency = 0
  887. end
  888. end
  889. end
  890. end)()
  891.  
  892. Hum.WalkSpeed = 8
  893. while true do
  894. swait()
  895. if(not Music or not Music.Parent)then
  896. local a = Music.TimePosition
  897. Music = Sound(Char,MusicID,1,3,true,false,true)
  898. Music.Name = 'Music'
  899. Music.TimePosition = a
  900. end
  901. Music.Volume = 10
  902. Sine = Sine + Change
  903. local hitfloor,posfloor = workspace:FindPartOnRay(Ray.new(Root.CFrame.p,((CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector).unit * 4), Char)
  904. local Walking = (math.abs(Root.Velocity.x) > 1 or math.abs(Root.Velocity.z) > 1)
  905. local State = (not hitfloor and Root.Velocity.y < -1 and "Fall" or not hitfloor and Root.Velocity.y > 1 and "Jump" or hitfloor and Walking and "Walk" or hitfloor and "Idle")
  906. if(State == 'Walk')then
  907. local Alpha = math.min(.2*(Hum.WalkSpeed/16),1)
  908. if(Hum.WalkSpeed < 14)then
  909. local wsVal = 14 / (Hum.WalkSpeed/5)
  910. Change = 1
  911. RH.C1 = RH.C1:lerp(CF.N(0,.985-.15*M.S(Sine/wsVal),0+.2*-M.C(Sine/wsVal))*CF.A(M.R(0+20*M.C(Sine/wsVal)),0,0),Alpha)
  912. LH.C1 = LH.C1:lerp(CF.N(0,.985-.15*-M.S(Sine/wsVal),0+.2*M.C(Sine/wsVal))*CF.A(M.R(0-20*M.C(Sine/wsVal)),0,0),Alpha)
  913. elseif(Hum.WalkSpeed >= 14)then
  914. local wsVal = 7 / (Hum.WalkSpeed/16)
  915. Change = 2/3
  916. RH.C1 = RH.C1:lerp(CF.N(0,1-.25*M.S(Sine/wsVal),0+.2*-M.C(Sine/wsVal))*CF.A(M.R(15+25*M.C(Sine/wsVal)),0,0),Alpha)
  917. LH.C1 = LH.C1:lerp(CF.N(0,1-.25*-M.S(Sine/wsVal),0+.2*M.C(Sine/wsVal))*CF.A(M.R(15-25*M.C(Sine/wsVal)),0,0),Alpha)
  918. end
  919. else
  920. RH.C1 = RH.C1:lerp(CF.N(0,1,0),.3)
  921. LH.C1 = LH.C1:lerp(CF.N(0,1,0),.3)
  922. end
  923. local twitch = M.RNG(1,250)
  924. if(twitch == 1 and not Twitch and time()-LastTwitch > TwitchMinTime)then
  925. Twitch = true
  926. LastTwitch = time()
  927. end
  928. if(time()-LastTwitch > M.RNG(75,150)/100)then
  929. Twitch = false
  930. end
  931. if(Twitch)then
  932. local pow = 75
  933. NK.C1 = NK.C1:lerp(CF.A(-M.R(15)-M.RRNG(15,45),-(M.R(25)+M.RRNG(-100,100)/100),0),.3)
  934. Music.Pitch = 1
  935. --[[FT.Parent = Torso
  936. RA.Parent = RArm
  937. LA.Parent = LArm
  938. RL.Parent = RLeg
  939. LL.Parent = LLeg
  940. for _,v in next, Char:GetDescendants() do
  941. if(v:IsA'DataModelMesh')then
  942. v.Offset = V3.N(M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100)
  943. end
  944. end]]
  945. else
  946. NK.C1 = NK.C1:lerp(CF.N(),.3)
  947. Music.Pitch = 1
  948. --[[FT.Parent = nil
  949. RA.Parent = nil
  950. LA.Parent = nil
  951. RL.Parent = nil
  952. LL.Parent = nil
  953. for _,v in next, Char:GetDescendants() do
  954. if(v:IsA'DataModelMesh')then
  955. v.Offset = V3.N()
  956. end
  957. end]]
  958. end
  959. if(Victim and (not Victim:FindFirstChildOfClass'Humanoid' or not Victim.Parent or not GetTorso(Victim)))then
  960. Victim = nil
  961. end
  962. if(not Victim)then
  963. Target.Adornee = nil
  964. Target.Enabled = false
  965. elseif(GetTorso(Victim))then
  966. Target.Adornee = GetTorso(Victim)
  967. Target.Enabled = true
  968. end
  969. TargetImg1.Rotation = TargetImg1.Rotation + 2
  970. TargetImg2.Rotation = TargetImg2.Rotation - 2
  971.  
  972. if(NeutralAnims)then
  973. if(State == 'Idle')then
  974. local Alpha = .2
  975. RJ.C0 = clerp(RJ.C0,CFrame.new(-0.00314458925, 0.0451914072+.15*M.C(time()), -0.20140326, 0.999990046, -0.00435535889, -0.000589565374, 0.00435100077, 0.96206224, 0.272795409, -0.000620923936, -0.27279523, 0.962071478),Alpha)
  976. LH.C0 = clerp(LH.C0,CFrame.new(-0.497960001, -1.04775584-.15*M.C(time()), -0.0720805228, 0.999878228, 0.00435100077, 0.014991004, -9.5948657e-05, 0.96206224, -0.272830069, -0.0156093612, 0.272795409, 0.961945415),Alpha)
  977. RH.C0 = clerp(RH.C0,CFrame.new(0.49705413, -1.05053294-.15*M.C(time()), -0.0786191523, 0.999878228, 0.00435100077, 0.014991004, -9.5948657e-05, 0.96206224, -0.272830069, -0.0156093612, 0.272795409, 0.961945415),Alpha)
  978. LS.C0 = clerp(LS.C0,CFrame.new(-1.47194386, 0.51491183+.15*M.C(time()), -0.0806432366, 0.997356772, 0.0710981488, 0.014991004, -0.0643278062, 0.95990926, -0.272830069, -0.0337877162, 0.271144569, 0.961945415),Alpha)
  979. RS.C0 = clerp(RS.C0,CFrame.new(1.46653831, 0.491472602+.15*M.C(time()), -0.0686791688, 0.998338819, -0.0556335486, 0.014991004, 0.057612583, 0.960335672, -0.272830069, 0.00078211166, 0.273240507, 0.961945415),Alpha)
  980. NK.C0 = clerp(NK.C0,CFrame.new(1.2824883e-05, 1.52978039, -0.358495057, 1.00000012, 2.7930364e-06, 1.10529363e-05, -9.7640368e-06, 0.710427284, 0.703770578, -5.88688999e-06, -0.703770638, 0.710427284),Alpha)
  981. elseif(State == 'Walk')then
  982. local Alpha = .3
  983. if(Hum.WalkSpeed < 14)then
  984. local wsVal = 14 / (Hum.WalkSpeed/5)
  985. NK.C0 = clerp(NK.C0,CFrame.new(1.2824883e-05, 1.52978039, -0.358495057, 1.00000012, 2.7930364e-06, 1.10529363e-05, -9.7640368e-06, 0.710427284, 0.703770578, -5.88688999e-06, -0.703770638, 0.710427284),Alpha)
  986. LH.C0 = clerp(LH.C0,LHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  987. RH.C0 = clerp(RH.C0,RHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  988. RJ.C0 = clerp(RJ.C0,RJC0*CF.N(0,0+.1*M.C(Sine/(wsVal/2)),0),Alpha)
  989. RS.C0 = clerp(RS.C0,RSC0*CF.A(M.R(0+20*M.C(Sine/wsVal)),0,M.R(5)),Alpha)
  990. LS.C0 = clerp(LS.C0,LSC0*CF.A(M.R(0+20*-M.C(Sine/wsVal)),0,M.R(-5)),Alpha)
  991. elseif(Hum.WalkSpeed >= 14)then
  992. local wsVal = 7 / (Hum.WalkSpeed/16)
  993. NK.C0 = clerp(NK.C0,CFrame.new(1.2824883e-05, 1.52978039, -0.358495057, 1.00000012, 2.7930364e-06, 1.10529363e-05, -9.7640368e-06, 0.710427284, 0.703770578, -5.88688999e-06, -0.703770638, 0.710427284),Alpha)
  994. LH.C0 = clerp(LH.C0,LHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  995. RH.C0 = clerp(RH.C0,RHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  996. RJ.C0 = clerp(RJ.C0,RJC0*CF.N(0,0+.1*M.C(Sine/(wsVal/2)),0),Alpha)
  997. RS.C0 = clerp(RS.C0,RSC0*CF.A(M.R(0+25*M.C(Sine/wsVal)),0,M.R(5)),Alpha)
  998. LS.C0 = clerp(LS.C0,LSC0*CF.A(M.R(0+25*-M.C(Sine/wsVal)),0,M.R(-5)),Alpha)
  999. end
  1000. elseif(State == 'Jump' or State == 'Fall')then
  1001. IdleCounter = 0
  1002. if(Walking)then
  1003. local Alpha = .2
  1004. RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
  1005. LH.C0 = clerp(LH.C0,CFrame.new(-0.497912645, -1.0987643, -0.0683324337, 0.999878228, 0.00860835519, 0.0130246133, -0.00010142161, 0.837816596, -0.545952022, -0.015611981, 0.545884132, 0.837715328),Alpha)
  1006. RH.C0 = clerp(RH.C0,CFrame.new(0.499978393, -1.16382337, 0.109293163, 0.999878228, -0.0120433727, 0.00993486121, -0.00010142161, 0.631323814, 0.775519371, -0.015611981, -0.775425911, 0.631245613),Alpha)
  1007. LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
  1008. RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
  1009. NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
  1010. else
  1011. local Alpha = .2
  1012. RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
  1013. LH.C0 = clerp(LH.C0,CFrame.new(-0.504374504, -0.291219354, -0.487436086, 0.999878228, -0.00438931212, 0.0149825988, -0.00010142161, 0.957819223, 0.287371844, -0.015611981, -0.287338346, 0.957701981),Alpha)
  1014. RH.C0 = clerp(RH.C0,CFrame.new(0.453094482, -0.871358454, 0.0898642987, 0.985589385, -0.168456957, 0.0153662469, 0.162863791, 0.969548643, 0.182895929, -0.0457084104, -0.177757636, 0.983012319),Alpha)
  1015. LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
  1016. RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
  1017. NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
  1018. end
  1019. end
  1020. end
  1021. end--// Initializing \\--
  1022. local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
  1023. local Plrs = S.Players
  1024. local Plr = Plrs.LocalPlayer
  1025. local Char = Plr.Character
  1026. local Hum = Char:FindFirstChildOfClass'Humanoid'
  1027. local RArm = Char["Right Arm"]
  1028. local LArm = Char["Left Arm"]
  1029. local RLeg = Char["Right Leg"]
  1030. local LLeg = Char["Left Leg"]
  1031. local Root = Char:FindFirstChild'HumanoidRootPart'
  1032. local Torso = Char.Torso
  1033. local Head = Char.Head
  1034. local NeutralAnims = true
  1035. local Attack = false
  1036. local BloodPuddles = {}
  1037. local Effects = {}
  1038. local Debounces = {Debounces={}}
  1039. local Mouse = Plr:GetMouse()
  1040. local Hit = {}
  1041. local Sine = 0
  1042. local Change = 1
  1043. local Twitch = false
  1044. local LastTwitch = 0;
  1045. local Victim = nil;
  1046. --// Debounce System \\--
  1047.  
  1048.  
  1049. function Debounces:New(name,cooldown)
  1050. local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
  1051. setmetatable(aaaaa,{__index = Debounces})
  1052. Debounces.Debounces[name] = aaaaa
  1053. return aaaaa
  1054. end
  1055.  
  1056. function Debounces:Use(overrideUsable)
  1057. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  1058. if(self.Usable or overrideUsable)then
  1059. self.Usable = false
  1060. self.CoolingDown = true
  1061. local LastUse = time()
  1062. self.LastUse = LastUse
  1063. delay(self.Cooldown or 2,function()
  1064. if(self.LastUse == LastUse)then
  1065. self.CoolingDown = false
  1066. self.Usable = true
  1067. end
  1068. end)
  1069. end
  1070. end
  1071.  
  1072. function Debounces:Get(name)
  1073. assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
  1074. for i,v in next, Debounces.Debounces do
  1075. if(i == name)then
  1076. return v;
  1077. end
  1078. end
  1079. end
  1080.  
  1081. function Debounces:GetProgressPercentage()
  1082. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  1083. if(self.CoolingDown and not self.Usable)then
  1084. return math.max(
  1085. math.floor(
  1086. (
  1087. (time()-self.LastUse)/self.Cooldown or 2
  1088. )*100
  1089. )
  1090. )
  1091. else
  1092. return 100
  1093. end
  1094. end
  1095.  
  1096. --// Shortcut Variables \\--
  1097. local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
  1098. local C3 = {N=Color3.new,RGB=Color3.fromRGB,HSV=Color3.fromHSV,tHSV=Color3.toHSV}
  1099. local V3 = {N=Vector3.new,FNI=Vector3.FromNormalId,A=Vector3.FromAxis}
  1100. local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge,RRNG = function(min,max,div) return math.rad(math.random(min,max)/(div or 1)) end}
  1101. local R3 = {N=Region3.new}
  1102. local De = S.Debris
  1103. local WS = workspace
  1104. local Lght = S.Lighting
  1105. local RepS = S.ReplicatedStorage
  1106. local IN = Instance.new
  1107. --// Instance Creation Functions \\--
  1108.  
  1109. function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
  1110. local Sound = IN("Sound")
  1111. Sound.SoundId = "rbxassetid://".. tostring(id or 0)
  1112. Sound.Pitch = pitch or 1
  1113. Sound.Volume = volume or 1
  1114. Sound.Looped = looped or false
  1115. if(autoPlay)then
  1116. coroutine.wrap(function()
  1117. repeat wait() until Sound.IsLoaded
  1118. Sound.Playing = autoPlay or false
  1119. end)()
  1120. end
  1121. if(not looped and effect)then
  1122. Sound.Stopped:connect(function()
  1123. Sound.Volume = 0
  1124. Sound:destroy()
  1125. end)
  1126. elseif(effect)then
  1127. warn("Sound can't be looped and a sound effect!")
  1128. end
  1129. Sound.Parent =parent or Torso
  1130. return Sound
  1131. end
  1132. function Part(parent,color,material,size,cframe,anchored,cancollide)
  1133. local part = IN("Part")
  1134. part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or C3.N(0,0,0)
  1135. part.Material = material or Enum.Material.SmoothPlastic
  1136. part.TopSurface,part.BottomSurface=10,10
  1137. part.Size = size or V3.N(1,1,1)
  1138. part.CFrame = cframe or CF.N(0,0,0)
  1139. part.Anchored = anchored or true
  1140. part.CanCollide = cancollide or false
  1141. part.Parent = parent or Char
  1142. return part
  1143. end
  1144. function Mesh(parent,meshtype,meshid,textid,scale,offset)
  1145. local part = IN("SpecialMesh")
  1146. part.MeshId = meshid or ""
  1147. part.TextureId = textid or ""
  1148. part.Scale = scale or V3.N(1,1,1)
  1149. part.Offset = offset or V3.N(0,0,0)
  1150. part.MeshType = meshtype or Enum.MeshType.Sphere
  1151. part.Parent = parent
  1152. return part
  1153. end
  1154.  
  1155. NewInstance = function(instance,parent,properties)
  1156. local inst = Instance.new(instance,parent)
  1157. if(properties)then
  1158. for i,v in next, properties do
  1159. pcall(function() inst[i] = v end)
  1160. end
  1161. end
  1162. return inst;
  1163. end
  1164.  
  1165.  
  1166.  
  1167. --// Extended ROBLOX tables \\--
  1168. local Instance = setmetatable({ClearChildrenOfClass = function(where,class,recursive) local children = (recursive and where:GetDescendants() or where:GetChildren()) for _,v in next, children do if(v:IsA(class))then v:destroy();end;end;end},{__index = Instance})
  1169. --// Customization \\--
  1170.  
  1171. local Frame_Speed = 60 -- The frame speed for swait. 1 is automatically divided by this
  1172. local Remove_Hats = false
  1173. local Remove_Clothing = false
  1174. local PlayerSize = 1
  1175. local DamageColor = BrickColor.new'Really red'
  1176. local MusicID = 1187211140
  1177. local TwitchMinTime = 2
  1178. local BloodColor = BrickColor.new'Maroon'
  1179. local BloodMaterial = Enum.Material.Glass
  1180. local Target1Id = "rbxassetid://1490455495"
  1181. local Target2Id = "rbxassetid://133820006"
  1182. local Whitelist = {
  1183. [{33104243,"Salvo_Starly"}] = {"Sorry, my Blazey..","OwO?","Ah, I'm sorry.. I thought you were an enemy.","Why did I even think of doing that.."},
  1184. [{19081129,"CKbackup"}] = {"S-sugarie! My bad!", "Ah, I'm sorry, my furry friend.","Why did I even think of doing that.."},
  1185. [{5719877,"Nebula_Zorua"}] = {"My creator!","N-nebula!?","I'm sorry, my creator!","F-father..?","Daddy..?","Sorry, Nebby..!"},
  1186. [{19909695,"makhail07"}] = {"Cretty!~","Yeef me dadi~","Marshdaddy~","Makhail, the edge master","Hello there, friend..~"},
  1187. [{44083134,"Fifkee"}] = {(function() return Plr.UserId == 5719877 and "Uh.. Who're you again?" or "You're Nebula's friend.. Right?" end)(),"Uuhh.. hi?","I nearly killed ya.","Oh. It's you."},
  1188. }
  1189.  
  1190. --// Whitelist System \\--
  1191.  
  1192. function IsWhitelisted(id,who)
  1193. for i,v in next, Whitelist do
  1194. if(i[1] == id or i[2] == who)then
  1195. return v
  1196. end
  1197. end
  1198. return nil
  1199. end
  1200.  
  1201. --// Weapon and GUI creation, and Character Customization \\--
  1202.  
  1203. if(Remove_Hats)then Instance.ClearChildrenOfClass(Char,"Accessory",true) end
  1204. if(Remove_Clothing)then Instance.ClearChildrenOfClass(Char,"Clothing",true) Instance.ClearChildrenOfClass(Char,"ShirtGraphic",true) end
  1205. local Effects = IN("Folder",Char)
  1206. Effects.Name = "Effects"
  1207.  
  1208. local FT,RA,LA,RL,LL = Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh")
  1209. FT.MeshId,FT.Scale = "rbxasset://fonts/torso.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1210. RA.MeshId,RA.Scale = "rbxasset://fonts/rightarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1211. LA.MeshId,LA.Scale = "rbxasset://fonts/leftarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1212. RL.MeshId,RL.Scale = "rbxasset://fonts/rightleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1213. LL.MeshId,LL.Scale = "rbxasset://fonts/leftleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1214.  
  1215. local Target = NewInstance("BillboardGui",Char,{Name='Target',Adornee=nil,LightInfluence=0,AlwaysOnTop=true,Size = UDim2.new(10,0,10,0)})
  1216. local TargetImg1 = NewInstance("ImageLabel",Target,{BackgroundTransparency=1,Position = UDim2.new(.5,0,.5,0),Size = UDim2.new(1,0,1,0),AnchorPoint = Vector2.new(.5,.5),Image=Target1Id,ImageColor = C3.N(0,0,0),ImageTransparency=1})
  1217. local TargetImg2 = TargetImg1:Clone();
  1218. TargetImg2.Size = UDim2.new(1.4,0,1.4,0);
  1219. TargetImg2.Image = Target2Id
  1220. TargetImg2.Parent = Target
  1221. TargetImg2.ImageColor3 = C3.RGB(165,0,0)
  1222. if(PlayerSize ~= 1)then
  1223. for _,v in next, Char:GetDescendats() do
  1224. if(v:IsA'BasePart')then
  1225. v.Size = v.Size * PlayerSize
  1226. end
  1227. end
  1228. end
  1229.  
  1230. local Music = Sound(Char,MusicID,1,3,true,false,true)
  1231. Music.Name = 'Music'
  1232.  
  1233. --// Stop animations \\--
  1234. for _,v in next, Hum:GetPlayingAnimationTracks() do
  1235. v:Stop();
  1236. end
  1237.  
  1238. pcall(game.Destroy,Char:FindFirstChild'Animate')
  1239. pcall(game.Destroy,Hum:FindFirstChild'Animator')
  1240.  
  1241. --// Joints \\--
  1242.  
  1243. local LS = NewInstance('Motor',Char,{Part0=Torso,Part1=LArm,C0 = CF.N(-1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
  1244. local RS = NewInstance('Motor',Char,{Part0=Torso,Part1=RArm,C0 = CF.N(1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
  1245. local NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CF.N(0,1.5 * PlayerSize,0)})
  1246. local LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CF.N(-.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
  1247. local RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CF.N(.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
  1248. local RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
  1249.  
  1250. local LSC0 = LS.C0
  1251. local RSC0 = RS.C0
  1252. local NKC0 = NK.C0
  1253. local LHC0 = LH.C0
  1254. local RHC0 = RH.C0
  1255. local RJC0 = RJ.C0
  1256.  
  1257. --// Artificial HB and Name \\--
  1258. game.Players.LocalPlayer.Character.Head.face.Texture = "rbxassetid://294670999"
  1259.  
  1260. local txtfag = Instance.new("BillboardGui", game.Players.LocalPlayer.Character.Head)
  1261. txtfag.Adornee = suckadick
  1262. txtfag.Name = "kys nigga"
  1263. txtfag.Size = UDim2.new(2, 0, 1.2, 0)
  1264. txtfag.StudsOffset = Vector3.new(-5, 3, 0)
  1265. local textfag = Instance.new("TextLabel", txtfag)
  1266. textfag.Size = UDim2.new(6, 0, 1, 0)
  1267. textfag.FontSize = "Size8"
  1268. textfag.TextScaled = true
  1269. textfag.TextTransparency = 0
  1270. textfag.BackgroundTransparency = 1
  1271. textfag.TextTransparency = 0
  1272. textfag.TextStrokeTransparency = 0
  1273. textfag.Font = "Cartoon"
  1274. textfag.TextStrokeColor3 = Color3.new(0, 1, 0)
  1275. v = Instance.new("Part")
  1276. v.Name = "ColorBrick"
  1277. v.Parent = part
  1278. v.FormFactor = "Symmetric"
  1279. v.Anchored = true
  1280. v.CanCollide = false
  1281. v.BottomSurface = "Smooth"
  1282. v.TopSurface = "Smooth"
  1283. v.Size = Vector3.new(10, 5, 3)
  1284. v.Transparency = 0.7
  1285. v.BrickColor = game.Players.LocalPlayer.Character.Torso.BrickColor
  1286. v.Transparency = 1
  1287. textfag.TextColor3 = v.BrickColor.Color
  1288. textfag.TextStrokeColor3 = Color3.new(0, 0, 0)
  1289. v.Shape = "Block"
  1290. textfag.Text = game.Players.LocalPlayer.Character.Name.."s the name...crying my game."
  1291. wait(3)
  1292. textfag.Text = "SaaAAAaaD"
  1293.  
  1294. local ArtificialHB = IN("BindableEvent", script)
  1295. ArtificialHB.Name = "Heartbeat"
  1296.  
  1297. script:WaitForChild("Heartbeat")
  1298.  
  1299. local tf = 0
  1300. local allowframeloss = false
  1301. local tossremainder = false
  1302. local lastframe = tick()
  1303. local frame = 1/Frame_Speed
  1304. ArtificialHB:Fire()
  1305.  
  1306. game:GetService("RunService").Heartbeat:connect(function(s, p)
  1307. tf = tf + s
  1308. if tf >= frame then
  1309. if allowframeloss then
  1310. script.Heartbeat:Fire()
  1311. lastframe = tick()
  1312. else
  1313. for i = 1, math.floor(tf / frame) do
  1314. ArtificialHB:Fire()
  1315. end
  1316. lastframe = tick()
  1317. end
  1318. if tossremainder then
  1319. tf = 0
  1320. else
  1321. tf = tf - frame * math.floor(tf / frame)
  1322. end
  1323. end
  1324. end)
  1325.  
  1326. function swait(num)
  1327. if num == 0 or num == nil then
  1328. ArtificialHB.Event:wait()
  1329. else
  1330. for i = 0, num do
  1331. ArtificialHB.Event:wait()
  1332. end
  1333. end
  1334. end
  1335.  
  1336.  
  1337. --// Effect Function(s) \\--
  1338.  
  1339. local blood = NewInstance("ParticleEmitter",nil,{
  1340. Color = ColorSequence.new(C3.N(.8,0,0)),
  1341. LightEmission=.1,
  1342. LightInfluence=1,
  1343. ZOffset=.9,
  1344. Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.2,0),NumberSequenceKeypoint.new(1,3,0)},
  1345. Texture="rbxassetid://284205403",
  1346. Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,0)},
  1347. Acceleration = V3.N(0,-15,0),
  1348. Lifetime = NumberRange.new(1,2),
  1349. Rate=50,
  1350. Speed = NumberRange.new(5,15),
  1351. SpreadAngle = Vector2.new(15,15),
  1352. Enabled = false,
  1353. EmissionDirection = 'Back',
  1354. })
  1355.  
  1356. function Blood(prt,amount)
  1357. local part = Instance.new("Part",Effects)
  1358. part.Transparency = 1
  1359. part.Size = prt.Size
  1360. part.Anchored = true
  1361. part.CanCollide = false
  1362. part.CFrame = CF.N(prt.Position,Torso.Position)
  1363. S.Debris:AddItem(part,5)
  1364. local prtcl = blood:Clone()
  1365. prtcl.Parent = part
  1366. prtcl:Emit(amount)
  1367. end
  1368.  
  1369. function BloodDrop(pos,dir,maxsize)
  1370. local owo = NewInstance("Part",Char,{Material=BloodMaterial,BrickColor=BloodColor,Shape=Enum.PartType.Ball,Size=V3.N(.25,.25,.25), CanCollide = false})
  1371. owo.CFrame=CF.N(pos,dir)
  1372. local bv = Instance.new("BodyVelocity",owo)
  1373. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1374. bv.velocity = CF.N(pos,dir+V3.N(M.RNG(-3,3)/30,M.RNG(-3,3)/30,M.RNG(-3,3)/30)).lookVector*15
  1375. bv.Name = "MOVE"
  1376. game:service'Debris':AddItem(bv,0.05)
  1377. local touch
  1378. touch = owo.Touched:connect(function(hit)
  1379. if(hit.Anchored==true and hit.CanCollide and not hit.Parent:FindFirstChildOfClass'Humanoid' and not hit.Parent.Parent:FindFirstChildOfClass'Humanoid')then
  1380. touch:disconnect()
  1381. BloodPuddle(owo.Position+V3.N(0,1,0),3,maxsize,owo)
  1382. owo:destroy()
  1383. end
  1384. end)
  1385. end
  1386. function BloodPuddle(position,range,maxSize,where)
  1387. local hit, pos, norm = workspace:FindPartOnRayWithIgnoreList(Ray.new(
  1388. position,CF.N(position,position+V3.N(0,-1,0)).lookVector * range
  1389. ),{where,Char},false,true)
  1390. if(hit)then
  1391. if(BloodPuddles[hit])then
  1392. BloodPuddles[hit].Frame = 0
  1393. if(hit:FindFirstChild'CylinderMesh' and hit.CylinderMesh.Scale.Z < BloodPuddles[hit].MaxSize)then
  1394. hit.CylinderMesh.Scale = hit.CylinderMesh.Scale + V3.N(.1,0,.1)
  1395. end
  1396. else
  1397. local Puddle = NewInstance('Part',hit,{Material=BloodMaterial,BrickColor=BloodColor,Size=V3.N(1,.1,1),CFrame=CF.N(pos,pos+norm)*CF.A(90*M.P/180,0,0),Anchored=true,CanCollide=false,Archivable=false,Locked=true,Name='BloodPuddle'})
  1398. local Cyl = NewInstance('CylinderMesh',Puddle,{Name='CylinderMesh'})
  1399. BloodPuddles[Puddle] = {MaxSize=maxSize or 7,Frame=0}
  1400. end
  1401. end
  1402. end
  1403.  
  1404. function Tween(obj,props,time,easing,direction,repeats,backwards)
  1405. local info = TweenInfo.new(time or .5, easing or Enum.EasingStyle.Quad, direction or Enum.EasingDirection.Out, repeats or 0, backwards or false)
  1406. local tween = S.TweenService:Create(obj, info, props)
  1407.  
  1408. tween:Play()
  1409. end
  1410.  
  1411. function Bezier(startpos, pos2, pos3, endpos, t)
  1412. local A = startpos:lerp(pos2, t)
  1413. local B = pos2:lerp(pos3, t)
  1414. local C = pos3:lerp(endpos, t)
  1415. local lerp1 = A:lerp(B, t)
  1416. local lerp2 = B:lerp(C, t)
  1417. local cubic = lerp1:lerp(lerp2, t)
  1418. return cubic
  1419. end
  1420.  
  1421. function Effect(data)
  1422. local FX = data.Effect or 'Resize-AndFade'
  1423. local Parent = data.Parent or Effects
  1424. local Color = data.Color or C3.N(0,0,0)
  1425. local Size = data.Size or V3.N(1,1,1)
  1426. local MoveDir = data.MoveDirection or nil
  1427. local MeshData = data.Mesh or nil
  1428. local SndData = data.Sound or nil
  1429. local Frames = data.Frames or 45
  1430. local Manual = data.Manual or nil
  1431. local Material = data.Material or nil
  1432. local CFra = data.CFrame or Torso.CFrame
  1433. local Settings = data.FXSettings or {}
  1434. local Snd,Prt,Msh;
  1435. if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
  1436. Prt = Manual
  1437. else
  1438. Prt = Part(Parent,Color,Material,Size,CFra,true,false)
  1439. end
  1440. if(typeof(MeshData) == 'table')then
  1441. Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
  1442. elseif(typeof(MeshData) == 'Instance')then
  1443. Msh = MeshData:Clone()
  1444. Msh.Parent = Prt
  1445. end
  1446. if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
  1447. Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
  1448. end
  1449. if(Snd)then
  1450. repeat wait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
  1451. Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
  1452. end
  1453. local MoveSpeed = nil;
  1454. if(MoveDir)then
  1455. MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
  1456. end
  1457. local Inc = M.RNG()-M.RNG()
  1458. local Thingie = 0
  1459. local Thingie2 = M.RNG(50,100)/100
  1460.  
  1461. coroutine.wrap(function()
  1462. if(FX ~= 'Arc')then
  1463. for i = 1, Frames do
  1464. if(FX == 'Resize-AndFade')then
  1465. if(not Settings.EndSize)then
  1466. Settings.EndSize = V3.N(0,0,0)
  1467. end
  1468. local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
  1469. if(Settings.EndIsIncrement)then
  1470. Prt.Size = Prt.Size - Settings.EndSize
  1471. else
  1472. Prt.Size = Prt.Size - grow/Frames
  1473. end
  1474. Prt.Transparency = (i/Frames)
  1475. elseif(FX == 'Resize+AndFade')then
  1476. if(not Settings.EndSize)then
  1477. Settings.EndSize = Size*2
  1478. end
  1479. local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize-Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
  1480. if(Settings.EndIsIncrement)then
  1481. Prt.Size = Prt.Size + Settings.EndSize
  1482. else
  1483. Prt.Size = Prt.Size + grow/Frames
  1484. end
  1485. Prt.Transparency = (i/Frames)
  1486. elseif(FX == 'Fade')then
  1487. Prt.Transparency = (i/Frames)
  1488. end
  1489. if(Settings.RandomizeCFrame)then
  1490. Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
  1491. end
  1492. if(MoveDir and MoveSpeed)then
  1493. local Orientation = Prt.Orientation
  1494. Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
  1495. Prt.Orientation = Orientation
  1496. end
  1497. if(swait and typeof(swait) == 'function')then
  1498. swait()
  1499. else
  1500. wait()
  1501. end
  1502. end
  1503. Prt:destroy()
  1504. else
  1505. local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
  1506. if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
  1507. local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  1508. local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  1509. assert(start ~= nil,"You need to specify a start point!")
  1510. assert(endP ~= nil,"You need to specify an end point!")
  1511. for i = 0, 1, Settings.Speed or 0.01 do
  1512. if(Settings.Home)then
  1513. endP = Settings.Home.CFrame
  1514. end
  1515. Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
  1516. if(swait and typeof(swait) == 'function')then
  1517. swait()
  1518. else
  1519. wait()
  1520. end
  1521. end
  1522. if(Settings.RemoveOnGoal)then
  1523. Prt:destroy()
  1524. end
  1525. end
  1526. end)()
  1527. return Prt,Msh,Snd
  1528. end
  1529.  
  1530.  
  1531. function SoulSteal(whom)
  1532. local torso = (whom:FindFirstChild'Head' or whom:FindFirstChild'Torso' or whom:FindFirstChild'UpperTorso' or whom:FindFirstChild'LowerTorso' or whom:FindFirstChild'HumanoidRootPart')
  1533. print(torso)
  1534. if(torso and torso:IsA'BasePart')then
  1535. local Model = Instance.new("Model",Effects)
  1536. Model.Name = whom.Name.."'s Soul"
  1537. whom:BreakJoints()
  1538. local Soul = Part(Model,BrickColor.new'Really red','Glass',V3.N(.5,.5,.5),torso.CFrame,true,false)
  1539. Soul.Name = 'Head'
  1540. NewInstance("Humanoid",Model,{Health=0,MaxHealth=0})
  1541. Effect{
  1542. Effect="Arc",
  1543. Manual = Soul,
  1544. FXSettings={
  1545. Start=torso.CFrame,
  1546. Home = Torso,
  1547. RemoveOnGoal = true,
  1548. }
  1549. }
  1550. local lastPoint = Soul.CFrame.p
  1551.  
  1552. for i = 0, 1, 0.01 do
  1553. local point = CFrame.new(lastPoint, Soul.Position) * CFrame.Angles(-math.pi/2, 0, 0)
  1554. local mag = (lastPoint - Soul.Position).magnitude
  1555. Effect{
  1556. Effect = "Fade",
  1557. CFrame = point * CF.N(0, mag/2, 0),
  1558. Size = V3.N(.5,mag+.5,.5),
  1559. Color = Soul.BrickColor
  1560. }
  1561. lastPoint = Soul.CFrame.p
  1562. swait()
  1563. end
  1564. for i = 1, 5 do
  1565. Effect{
  1566. Effect="Fade",
  1567. Color = BrickColor.new'Really red',
  1568. MoveDirection = (Torso.CFrame*CFrame.new(M.RNG(-40,40),M.RNG(-40,40),M.RNG(-40,40))).p
  1569. }
  1570. end
  1571. end
  1572. end
  1573.  
  1574. --// Other Functions \\ --
  1575.  
  1576. function Ragdoll(who,half,glitching)
  1577. who:breakJoints()
  1578. pcall(function()
  1579. who.HumanoidRootPart:destroy()
  1580. end)
  1581. local who = who
  1582. local hhh = who:FindFirstChildOfClass'Humanoid'
  1583. local t = GetTorso(who)
  1584. if(hhh.RigType == Enum.HumanoidRigType.R6)then
  1585. local RA,LA,RL,LL,HD = who:FindFirstChild'Right Arm',who:FindFirstChild'Left Arm',who:FindFirstChild'Right Leg',who:FindFirstChild'Left Leg',who:FindFirstChild'Head'
  1586. local RAJ = NewInstance("Attachment",t,{Position=V3.N(1.5,.5,0),Orientation=V3.N()})
  1587. local RAJ2 = NewInstance("Attachment",RA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
  1588. local LAJ = NewInstance("Attachment",t,{Position=V3.N(-1.5,.5,0),Orientation=V3.N()})
  1589. local LAJ2 = NewInstance("Attachment",LA,{Position=V3.N(0,.5,0),Orientation=V3.N()})
  1590. local NJ = NewInstance('Attachment',t,{Position=V3.N(0,1,0),Orientation=V3.N()})
  1591. local NJ2 = NewInstance('Attachment',HD,{Position=V3.N(0,-.5,0),Orientation=V3.N()})
  1592. local NJ3 = NewInstance('Attachment',HD,{Position=V3.N(0,.5,0),Orientation=V3.N()})
  1593.  
  1594. local RAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RAJ,Attachment1=RAJ2})
  1595. local LAC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LAJ,Attachment1=LAJ2})
  1596. local HC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=45,Attachment0=NJ,Attachment1=NJ2})
  1597.  
  1598. local CollideRA = NewInstance('Part',who,{Size=RArm.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
  1599. local CollideLA = NewInstance('Part',who,{Size=LArm.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
  1600. local CollideHD = NewInstance('Part',who,{Size=HD.Size/1.5,Anchored=false,Transparency=1,Name='Collision'})
  1601. NewInstance('Weld',CollideRA,{Part0=RA,Part1=CollideRA})
  1602. NewInstance('Weld',CollideLA,{Part0=LA,Part1=CollideLA})
  1603. NewInstance('Weld',CollideHD,{Part0=HD,Part1=CollideHD})
  1604.  
  1605. if(not half)then
  1606. local RLJ = NewInstance("Attachment",t,{Position=V3.N(.5,-1,0),Orientation=V3.N()})
  1607. local RLJ2 = NewInstance("Attachment",RL,{Position=V3.N(0,1,0),Orientation=V3.N()})
  1608. local LLJ = NewInstance("Attachment",t,{Position=V3.N(-.5,-1,0),Orientation=V3.N()})
  1609. local LLJ2 = NewInstance("Attachment",LL,{Position=V3.N(0,1,0),Orientation=V3.N()})
  1610. local RLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=RLJ,Attachment1=RLJ2})
  1611. local LLC = NewInstance('BallSocketConstraint',t,{Radius=.15,LimitsEnabled=true,Enabled=true,Restitution=0,UpperAngle=90,Attachment0=LLJ,Attachment1=LLJ2})
  1612. end
  1613. if(glitching)then
  1614. swait(120)
  1615. local pow = 75
  1616. local FT,RA,LA,RL,LL = Instance.new("SpecialMesh",t),Instance.new("SpecialMesh",RA),Instance.new("SpecialMesh",LA),Instance.new("SpecialMesh",RL),Instance.new("SpecialMesh",LL)
  1617. FT.MeshId,FT.Scale = "rbxasset://fonts/torso.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1618. RA.MeshId,RA.Scale = "rbxasset://fonts/rightarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1619. LA.MeshId,LA.Scale = "rbxasset://fonts/leftarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1620. RL.MeshId,RL.Scale = "rbxasset://fonts/rightleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1621. LL.MeshId,LL.Scale = "rbxasset://fonts/leftleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
  1622. for i = 0, 1, .1 do
  1623. for _,v in next, who:GetDescendants() do
  1624. if(v:IsA'DataModelMesh')then
  1625. v.Offset = V3.N(M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100)
  1626. elseif(v:IsA'BasePart')then
  1627. v.Transparency = i
  1628. end
  1629. end
  1630. swait()
  1631. end
  1632. who:destroy()
  1633. end
  1634. else
  1635. if(glitching)then
  1636. swait(120)
  1637. for i = 0, 1, .1 do
  1638. for _,v in next, hhh:children() do
  1639. if(v:IsA'NumberValue')then
  1640. v.Value = M.RNG(0,10)
  1641. end
  1642. end
  1643. local pow = 75
  1644. for _,v in next, who:GetDescendants() do
  1645. if(v:IsA'DataModelMesh')then
  1646. v.Offset = V3.N(M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100)
  1647. elseif(v:IsA'BasePart')then
  1648. v.Transparency = i
  1649. end
  1650. end
  1651. swait()
  1652. end
  1653. who:destroy()
  1654. end
  1655. -- TODO: R15 Ragdoll
  1656. end
  1657. end
  1658.  
  1659.  
  1660. function getRegion(point,range,ignore)
  1661. return workspace:FindPartsInRegion3WithIgnoreList(R3.N(point-V3.N(1,1,1)*range/2,point+V3.N(1,1,1)*range/2),ignore,100)
  1662. end
  1663.  
  1664. function RandomChoice(table)
  1665. return table[M.RNG(1,#table)]
  1666. end
  1667.  
  1668. function Chat(text)
  1669. coroutine.wrap(function()
  1670. if Char:FindFirstChild("TalkingBillBoard")~= nil then
  1671. Char:FindFirstChild("TalkingBillBoard"):destroy()
  1672. end
  1673. local oText = text;
  1674. text = ""
  1675. for i = 1, #oText do
  1676. if(i%2 == 1)then
  1677. text = text..oText:sub(i,i):upper()
  1678. else
  1679. text = text..oText:sub(i,i):lower()
  1680. end
  1681. end
  1682. local Bill = Instance.new("BillboardGui",Char)
  1683. Bill.Size = UDim2.new(0,100,0,40)
  1684. Bill.StudsOffset = Vector3.new(0,3,0)
  1685. Bill.Adornee = Char.Head
  1686. Bill.Name = "TalkingBillBoard"
  1687. local Hehe = Instance.new("TextLabel",Bill)
  1688. Hehe.BackgroundTransparency = 1
  1689. Hehe.BorderSizePixel = 0
  1690. Hehe.Text = ""
  1691. Hehe.Font = "Bodoni"
  1692. Hehe.TextSize = 40
  1693. Hehe.TextStrokeTransparency = 0
  1694. Hehe.Size = UDim2.new(1,0,0.5,0)
  1695. coroutine.resume(coroutine.create(function()
  1696. while Hehe ~= nil do
  1697. swait()
  1698. Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
  1699. Hehe.Rotation = M.RNG(-M.RNG(5,15),M.RNG(5,15))
  1700. local aa = math.random(0, 255)/255
  1701. local bb = math.random(0, 255)/255
  1702. Hehe.TextColor3 = C3.N(aa,aa,aa)
  1703. Hehe.TextStrokeColor3 = C3.N(bb,bb,bb)
  1704. end
  1705. end))
  1706. for i = 1,string.len(text),1 do
  1707. swait(5)
  1708. Hehe.Text = string.sub(text,1,i)
  1709. end
  1710. swait(90)
  1711. for i = 0, 1, .025 do
  1712. swait()
  1713. Hehe.TextStrokeTransparency = i
  1714. Hehe.TextTransparency = i
  1715. Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
  1716. end
  1717. Bill:Destroy()
  1718. end)()
  1719. end
  1720.  
  1721.  
  1722. function clerp(startCF,endCF,alpha)
  1723. return startCF:lerp(endCF, alpha)
  1724. end
  1725.  
  1726. function GetTorso(char)
  1727. return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso' or char:FindFirstChild'LowerTorso' or char:FindFirstChild'HumanoidRootPart'
  1728. end
  1729.  
  1730.  
  1731. function ShowDamage(Pos, Text, Time, Color)
  1732. coroutine.wrap(function()
  1733. local Pos = (Pos or Vector3.new(0, 0, 0))
  1734. local Text = (Text or "")
  1735. local Time = (Time or 2)
  1736. local Color = (Color or Color3.new(1, 0, 1))
  1737. local EffectPart = NewInstance("Part",Effects,{
  1738. Material=Enum.Material.SmoothPlastic,
  1739. Reflectance = 0,
  1740. Transparency = 1,
  1741. BrickColor = BrickColor.new(Color),
  1742. Name = "Effect",
  1743. Size = Vector3.new(0,0,0),
  1744. Anchored = true
  1745. })
  1746. local BillboardGui = NewInstance("BillboardGui",EffectPart,{
  1747. Size = UDim2.new(2, 0, 2, 0),
  1748. Adornee = EffectPart,
  1749. })
  1750. local TextLabel = NewInstance("TextLabel",BillboardGui,{
  1751. BackgroundTransparency = 1,
  1752. Size = UDim2.new(1, 0, 1, 0),
  1753. Text = Text,
  1754. Font = "Arial",
  1755. TextColor3 = Color,
  1756. TextStrokeColor3 = Color3.new(0,0,0),
  1757. TextStrokeTransparency=0,
  1758. TextScaled = true,
  1759. })
  1760. EffectPart.Parent = game:GetService("Workspace")
  1761. delay(0, function()
  1762. local Frames = (Time / (1/Frame_Speed))
  1763. for Frame = 1, Frames do
  1764. swait()
  1765. local Percent = (Frame / Frames)
  1766. EffectPart.CFrame = CF.N(Pos+ V3.N(0, Percent, 0)) * CF.A(0,0,M.RRNG(-90,90))
  1767. TextLabel.Rotation = M.RNG(-6,6)
  1768. TextLabel.Position = UDim2.new(M.RNG(-1,1)/10,M.RNG(-1,1)/10,.05,M.RNG(-1,1)/10)
  1769. end
  1770. for i = 0, 1, .025 do
  1771. swait()
  1772. TextLabel.TextStrokeTransparency = i
  1773. TextLabel.TextTransparency = i
  1774. TextLabel.Position = UDim2.new(M.RNG(-15,15)/10,M.RNG(-15,15)/10,M.RNG(-15,15)/10,M.RNG(-15,15)/10)
  1775. end
  1776. if EffectPart and EffectPart.Parent then
  1777. EffectPart:Destroy()
  1778. end
  1779. end) end)()
  1780. end
  1781.  
  1782. --[[if(not Plr:IsFriendsWith(5719877))then
  1783. Char:BreakJoints()
  1784. error("Not whitelisted. You have to be friends with Nebula.")
  1785. else
  1786. warn("You're friends with Nebula, the creator of this script")
  1787. warn("Enjoy!")
  1788. end]]
  1789.  
  1790. function DealDamage(who,minDam,maxDam,Knock,Type,critChance,critMult)
  1791. if(who)then
  1792. local hum = who:FindFirstChildOfClass'Humanoid'
  1793. local Damage = M.RNG(minDam,maxDam)
  1794. local canHit = true
  1795. if(hum)then
  1796. for _, p in pairs(Hit) do
  1797. if p[1] == hum then
  1798. if(time() - p[2] < 0.1) then
  1799. canHit = false
  1800. else
  1801. Hit[_] = nil
  1802. end
  1803. end
  1804. end
  1805. if(canHit)then
  1806. if(hum.Health >= math.huge)then
  1807. who:BreakJoints()
  1808. if(who:FindFirstChild'Head' and hum.Health > 0)then
  1809. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "INSTANT", 1.5, C3.N(1,0,0))
  1810. end
  1811. else
  1812. local player = S.Players:GetPlayerFromCharacter(who)
  1813. if(Type == "Fire")then
  1814. --idk..
  1815. else
  1816. local c = Instance.new("ObjectValue",hum)
  1817. c.Name = "creator"
  1818. c.Value = Plr
  1819. game:service'Debris':AddItem(c,0.35)
  1820. if(M.RNG(1,100) <= (critChance or 0))then
  1821. if(who:FindFirstChild'Head' and hum.Health > 0)then
  1822. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "[CRIT] "..Damage*(critMult or 2), 1.5, BrickColor.new'New Yeller'.Color)
  1823. end
  1824. hum.Health = hum.Health - Damage*(critMult or 2)
  1825. else
  1826. if(who:FindFirstChild'Head' and hum.Health > 0)then
  1827. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), Damage, 1.5, DamageColor.Color)
  1828. end
  1829. hum.Health = hum.Health - Damage
  1830. end
  1831. if(Type == 'Knockback' and GetTorso(who))then
  1832. local angle = GetTorso(who).Position - Root.Position + Vector3.new(0, 0, 0).unit
  1833. local body = NewInstance('BodyVelocity',GetTorso(who),{
  1834. P = 500,
  1835. maxForce = V3.N(math.huge,0,math.huge),
  1836. velocity = Root.CFrame.lookVector * Knock + Root.Velocity / 1.05
  1837. })
  1838. game:service'Debris':AddItem(body,.5)
  1839. elseif(Type == 'Knockdown' and GetTorso(who))then
  1840. local rek = GetTorso(who)
  1841. print(rek)
  1842. hum.PlatformStand = true
  1843. delay(1,function()
  1844. hum.PlatformStand = false
  1845. end)
  1846. local angle = (GetTorso(who).Position - (Root.Position + Vector3.new(0, 0, 0))).unit
  1847. local bodvol = NewInstance("BodyVelocity",rek,{
  1848. velocity = angle * Knock,
  1849. P = 5000,
  1850. maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  1851. })
  1852. local rl = NewInstance("BodyAngularVelocity",rek,{
  1853. P = 3000,
  1854. maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  1855. angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  1856. })
  1857. game:GetService("Debris"):AddItem(bodvol, .5)
  1858. game:GetService("Debris"):AddItem(rl, .5)
  1859. end
  1860. end
  1861. end
  1862. end
  1863. table.insert(Hit,{hum,time()})
  1864. end
  1865. end
  1866. end
  1867.  
  1868. function AOEDamage(where,range,minDam,maxDam,Knock,Type)
  1869. for _,v in next, getRegion(where,range,{Char}) do
  1870. if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
  1871. DealDamage(v.Parent,minDam,maxDam,Knock,Type)
  1872. end
  1873. end
  1874. end
  1875. function AOEHeal(where,range,amount)
  1876. local healed = {}
  1877. for _,v in next, getRegion(where,range,{Char}) do
  1878. local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid' or nil)
  1879. if(hum and not healed[hum])then
  1880. hum.Health = hum.Health + amount
  1881. if(v.Parent:FindFirstChild'Head' and hum.Health > 0)then
  1882. ShowDamage((v.Parent.Head.CFrame * CF.N(0, 0, (v.Parent.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "+"..amount, 1.5, BrickColor.new'Lime green'.Color)
  1883. end
  1884. end
  1885. end
  1886. end
  1887. --// Wrap it all up \\--
  1888.  
  1889.  
  1890. coroutine.wrap(function()
  1891. while true do
  1892. swait()
  1893. for puddle,data in next, BloodPuddles do
  1894. if(puddle.Transparency > 0.9)then
  1895. BloodPuddles[puddle] = nil
  1896. puddle:destroy()
  1897. end
  1898. data.Frame = data.Frame + 1
  1899. if(data.Frame > Frame_Speed*4)then
  1900. local trans = (data.Frame-Frame_Speed*4)/Frame_Speed*2
  1901. puddle.Transparency = trans
  1902. if(puddle:FindFirstChild'CylinderMesh' and puddle.CylinderMesh.Scale.Z > 0)then
  1903. puddle.CylinderMesh.Scale = puddle.CylinderMesh.Scale-V3.N(.1,0,.1)
  1904. end
  1905. else
  1906. puddle.Transparency = 0
  1907. end
  1908. end
  1909. end
  1910. end)()
  1911.  
  1912. Hum.WalkSpeed = 8
  1913. while true do
  1914. swait()
  1915. if(not Music or not Music.Parent)then
  1916. local a = Music.TimePosition
  1917. Music = Sound(Char,MusicID,1,3,true,false,true)
  1918. Music.Name = 'Music'
  1919. Music.TimePosition = a
  1920. end
  1921. Music.Volume = 10
  1922. Sine = Sine + Change
  1923. local hitfloor,posfloor = workspace:FindPartOnRay(Ray.new(Root.CFrame.p,((CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector).unit * 4), Char)
  1924. local Walking = (math.abs(Root.Velocity.x) > 1 or math.abs(Root.Velocity.z) > 1)
  1925. local State = (not hitfloor and Root.Velocity.y < -1 and "Fall" or not hitfloor and Root.Velocity.y > 1 and "Jump" or hitfloor and Walking and "Walk" or hitfloor and "Idle")
  1926. if(State == 'Walk')then
  1927. local Alpha = math.min(.2*(Hum.WalkSpeed/16),1)
  1928. if(Hum.WalkSpeed < 14)then
  1929. local wsVal = 14 / (Hum.WalkSpeed/5)
  1930. Change = 1
  1931. RH.C1 = RH.C1:lerp(CF.N(0,.985-.15*M.S(Sine/wsVal),0+.2*-M.C(Sine/wsVal))*CF.A(M.R(0+20*M.C(Sine/wsVal)),0,0),Alpha)
  1932. LH.C1 = LH.C1:lerp(CF.N(0,.985-.15*-M.S(Sine/wsVal),0+.2*M.C(Sine/wsVal))*CF.A(M.R(0-20*M.C(Sine/wsVal)),0,0),Alpha)
  1933. elseif(Hum.WalkSpeed >= 14)then
  1934. local wsVal = 7 / (Hum.WalkSpeed/16)
  1935. Change = 2/3
  1936. RH.C1 = RH.C1:lerp(CF.N(0,1-.25*M.S(Sine/wsVal),0+.2*-M.C(Sine/wsVal))*CF.A(M.R(15+25*M.C(Sine/wsVal)),0,0),Alpha)
  1937. LH.C1 = LH.C1:lerp(CF.N(0,1-.25*-M.S(Sine/wsVal),0+.2*M.C(Sine/wsVal))*CF.A(M.R(15-25*M.C(Sine/wsVal)),0,0),Alpha)
  1938. end
  1939. else
  1940. RH.C1 = RH.C1:lerp(CF.N(0,1,0),.3)
  1941. LH.C1 = LH.C1:lerp(CF.N(0,1,0),.3)
  1942. end
  1943. local twitch = M.RNG(1,250)
  1944. if(twitch == 1 and not Twitch and time()-LastTwitch > TwitchMinTime)then
  1945. Twitch = true
  1946. LastTwitch = time()
  1947. end
  1948. if(time()-LastTwitch > M.RNG(75,150)/100)then
  1949. Twitch = false
  1950. end
  1951. if(Twitch)then
  1952. local pow = 75
  1953. NK.C1 = NK.C1:lerp(CF.A(-M.R(15)-M.RRNG(15,45),-(M.R(25)+M.RRNG(-100,100)/100),0),.3)
  1954. Music.Pitch = 1
  1955. --[[FT.Parent = Torso
  1956. RA.Parent = RArm
  1957. LA.Parent = LArm
  1958. RL.Parent = RLeg
  1959. LL.Parent = LLeg
  1960. for _,v in next, Char:GetDescendants() do
  1961. if(v:IsA'DataModelMesh')then
  1962. v.Offset = V3.N(M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100,M.RNG(-pow,pow)/100)
  1963. end
  1964. end]]
  1965. else
  1966. NK.C1 = NK.C1:lerp(CF.N(),.3)
  1967. Music.Pitch = 1
  1968. --[[FT.Parent = nil
  1969. RA.Parent = nil
  1970. LA.Parent = nil
  1971. RL.Parent = nil
  1972. LL.Parent = nil
  1973. for _,v in next, Char:GetDescendants() do
  1974. if(v:IsA'DataModelMesh')then
  1975. v.Offset = V3.N()
  1976. end
  1977. end]]
  1978. end
  1979. if(Victim and (not Victim:FindFirstChildOfClass'Humanoid' or not Victim.Parent or not GetTorso(Victim)))then
  1980. Victim = nil
  1981. end
  1982. if(not Victim)then
  1983. Target.Adornee = nil
  1984. Target.Enabled = false
  1985. elseif(GetTorso(Victim))then
  1986. Target.Adornee = GetTorso(Victim)
  1987. Target.Enabled = true
  1988. end
  1989. TargetImg1.Rotation = TargetImg1.Rotation + 2
  1990. TargetImg2.Rotation = TargetImg2.Rotation - 2
  1991.  
  1992. if(NeutralAnims)then
  1993. if(State == 'Idle')then
  1994. local Alpha = .2
  1995. RJ.C0 = clerp(RJ.C0,CFrame.new(-0.00314458925, 0.0451914072+.15*M.C(time()), -0.20140326, 0.999990046, -0.00435535889, -0.000589565374, 0.00435100077, 0.96206224, 0.272795409, -0.000620923936, -0.27279523, 0.962071478),Alpha)
  1996. LH.C0 = clerp(LH.C0,CFrame.new(-0.497960001, -1.04775584-.15*M.C(time()), -0.0720805228, 0.999878228, 0.00435100077, 0.014991004, -9.5948657e-05, 0.96206224, -0.272830069, -0.0156093612, 0.272795409, 0.961945415),Alpha)
  1997. RH.C0 = clerp(RH.C0,CFrame.new(0.49705413, -1.05053294-.15*M.C(time()), -0.0786191523, 0.999878228, 0.00435100077, 0.014991004, -9.5948657e-05, 0.96206224, -0.272830069, -0.0156093612, 0.272795409, 0.961945415),Alpha)
  1998. LS.C0 = clerp(LS.C0,CFrame.new(-1.47194386, 0.51491183+.15*M.C(time()), -0.0806432366, 0.997356772, 0.0710981488, 0.014991004, -0.0643278062, 0.95990926, -0.272830069, -0.0337877162, 0.271144569, 0.961945415),Alpha)
  1999. RS.C0 = clerp(RS.C0,CFrame.new(1.46653831, 0.491472602+.15*M.C(time()), -0.0686791688, 0.998338819, -0.0556335486, 0.014991004, 0.057612583, 0.960335672, -0.272830069, 0.00078211166, 0.273240507, 0.961945415),Alpha)
  2000. NK.C0 = clerp(NK.C0,CFrame.new(1.2824883e-05, 1.52978039, -0.358495057, 1.00000012, 2.7930364e-06, 1.10529363e-05, -9.7640368e-06, 0.710427284, 0.703770578, -5.88688999e-06, -0.703770638, 0.710427284),Alpha)
  2001. elseif(State == 'Walk')then
  2002. local Alpha = .3
  2003. if(Hum.WalkSpeed < 14)then
  2004. local wsVal = 14 / (Hum.WalkSpeed/5)
  2005. NK.C0 = clerp(NK.C0,CFrame.new(1.2824883e-05, 1.52978039, -0.358495057, 1.00000012, 2.7930364e-06, 1.10529363e-05, -9.7640368e-06, 0.710427284, 0.703770578, -5.88688999e-06, -0.703770638, 0.710427284),Alpha)
  2006. LH.C0 = clerp(LH.C0,LHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  2007. RH.C0 = clerp(RH.C0,RHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  2008. RJ.C0 = clerp(RJ.C0,RJC0*CF.N(0,0+.1*M.C(Sine/(wsVal/2)),0),Alpha)
  2009. RS.C0 = clerp(RS.C0,RSC0*CF.A(M.R(0+20*M.C(Sine/wsVal)),0,M.R(5)),Alpha)
  2010. LS.C0 = clerp(LS.C0,LSC0*CF.A(M.R(0+20*-M.C(Sine/wsVal)),0,M.R(-5)),Alpha)
  2011. elseif(Hum.WalkSpeed >= 14)then
  2012. local wsVal = 7 / (Hum.WalkSpeed/16)
  2013. NK.C0 = clerp(NK.C0,CFrame.new(1.2824883e-05, 1.52978039, -0.358495057, 1.00000012, 2.7930364e-06, 1.10529363e-05, -9.7640368e-06, 0.710427284, 0.703770578, -5.88688999e-06, -0.703770638, 0.710427284),Alpha)
  2014. LH.C0 = clerp(LH.C0,LHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  2015. RH.C0 = clerp(RH.C0,RHC0*CF.N(0,0+.1*-M.C(Sine/(wsVal/2)),0),Alpha)
  2016. RJ.C0 = clerp(RJ.C0,RJC0*CF.N(0,0+.1*M.C(Sine/(wsVal/2)),0),Alpha)
  2017. RS.C0 = clerp(RS.C0,RSC0*CF.A(M.R(0+25*M.C(Sine/wsVal)),0,M.R(5)),Alpha)
  2018. LS.C0 = clerp(LS.C0,LSC0*CF.A(M.R(0+25*-M.C(Sine/wsVal)),0,M.R(-5)),Alpha)
  2019. end
  2020. elseif(State == 'Jump' or State == 'Fall')then
  2021. IdleCounter = 0
  2022. if(Walking)then
  2023. local Alpha = .2
  2024. RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
  2025. LH.C0 = clerp(LH.C0,CFrame.new(-0.497912645, -1.0987643, -0.0683324337, 0.999878228, 0.00860835519, 0.0130246133, -0.00010142161, 0.837816596, -0.545952022, -0.015611981, 0.545884132, 0.837715328),Alpha)
  2026. RH.C0 = clerp(RH.C0,CFrame.new(0.499978393, -1.16382337, 0.109293163, 0.999878228, -0.0120433727, 0.00993486121, -0.00010142161, 0.631323814, 0.775519371, -0.015611981, -0.775425911, 0.631245613),Alpha)
  2027. LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
  2028. RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
  2029. NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
  2030. else
  2031. local Alpha = .2
  2032. RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
  2033. LH.C0 = clerp(LH.C0,CFrame.new(-0.504374504, -0.291219354, -0.487436086, 0.999878228, -0.00438931212, 0.0149825988, -0.00010142161, 0.957819223, 0.287371844, -0.015611981, -0.287338346, 0.957701981),Alpha)
  2034. RH.C0 = clerp(RH.C0,CFrame.new(0.453094482, -0.871358454, 0.0898642987, 0.985589385, -0.168456957, 0.0153662469, 0.162863791, 0.969548643, 0.182895929, -0.0457084104, -0.177757636, 0.983012319),Alpha)
  2035. LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
  2036. RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
  2037. NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
  2038. end
  2039. end
  2040. end
  2041. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement