oskdfoskofksdofk

Untitled

Feb 18th, 2018
353
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 39.74 KB | None | 0 0
  1. -- The Murderer
  2. -- Created by Nebula_Zorua
  3. -- Youtube channel: https://www.youtube.com/channel/UCo9oU9dCw8jnuVLuy4_SATA
  4. -- Discord account: Nebula the Zorua#6666
  5.  
  6. -- Credit to Shackluster for the inspiration for this
  7. -- I might update this in the future.
  8. Character = game.Players.LocalPlayer.Character
  9. Head = Character.Head
  10.  
  11. ypcall(function()
  12. char.Shirt:Destroy()
  13. char.Pants:Destroy()
  14. shirt = Instance.new("Shirt", char)
  15. shirt.Name = "Shirt"
  16. pants = Instance.new("Pants", char)
  17. pants.Name = "Pants"
  18. char.Shirt.ShirtTemplate = "rbxassetid://798497269"
  19. char.Pants.PantsTemplate = "rbxassetid://1426094271"
  20. end)
  21.  
  22. --[[
  23. CONTROLS:
  24. Left Mouse Button Click - Attack
  25. Left Mouse Button Click - Get knife back once thrown (You must be near the thrown knife)
  26. T - Throw (You cant attack until you get it back with the above control)
  27. ; - Machete
  28. TO BECOME BLOODLUSTFUL:
  29. Kill 12 people/dummies quickly. You must keep killing to keep the bloodlust.
  30. Once you're bloodlustful, you charge forward when you attack
  31. ]]
  32.  
  33. --[[
  34. TO EDITORS/RESKINNERS:
  35. You can edit BloodColor, BloodMaterial, and BloodlustBlood to change the color of the blood, material of the blood, and the
  36. number of blood you need to become bloodlustful. You get 30 blood with each kill.
  37. ]]
  38.  
  39. wait()
  40. script.Parent = nil
  41. local S = setmetatable({},{
  42. __index = function(self,index)
  43. local service = game:GetService(index)
  44. if(service)then
  45. self[index] = service
  46. return service
  47. end
  48. end
  49. })
  50.  
  51. plr=game:service'Players'.LocalPlayer
  52. chr=plr.Character
  53. local ms = plr:GetMouse()
  54. CV="Bright red"
  55. local txt = Instance.new("BillboardGui", chr)
  56. txt.Adornee = chr.Head
  57. txt.Name = "_status"
  58. txt.Size = UDim2.new(4, 0, 2.5, 0)
  59. txt.StudsOffset = Vector3.new(-4, 2, 0)
  60. local text = Instance.new("TextLabel", txt)
  61. text.Size = UDim2.new(3, 0, 0.5, 0)
  62. text.FontSize = "Size24"
  63. text.TextScaled = true
  64. text.TextTransparency = 0
  65. text.BackgroundTransparency = 1
  66. text.TextTransparency = 0
  67. text.TextStrokeTransparency = 0
  68. text.Font = "Antique"
  69. text.TextStrokeColor3 = Color3.new(255,0,0)
  70. text.Text = "Jeff the Killer"
  71. local plr = S.Players.LocalPlayer
  72. local char = plr.Character
  73. local hum = char.Humanoid
  74. local rarm = char["Right Arm"]
  75. local larm= char["Left Arm"]
  76. local rleg= char["Right Leg"]
  77. local lleg = char["Left Leg"]
  78. local root = char:FindFirstChild'HumanoidRootPart'
  79. local torso = char.Torso
  80. local head = char.Head
  81. local sine = 0;
  82. local lastTwitch = 0;
  83. local combo = 1;
  84. local ThrownKnife = false
  85. local KnifePosition = CFrame.new(0,0,0)
  86. local lastClick = time()
  87. local change = 1;
  88. local runService = S.RunService
  89. local mouse = plr:GetMouse()
  90. local Attack = false
  91. local neutralAnims = true
  92. local WalkSine = 0
  93. local Debounces = {Debounces={}}
  94. local Hit = {}
  95. local BloodPuddles = {}
  96. local Bloodied = 0
  97. local Teamed = {}
  98. local WalkSpeed = 50
  99. hum.WalkSpeed = WalkSpeed
  100. local BloodColor = BrickColor.new'Bright red'
  101. local BloodMaterial = Enum.Material.Neon
  102. local BloodTime = time()
  103. local Twitch = false
  104. local BloodlustBlood = 100
  105. hum.DisplayDistanceType = "None"
  106. hum.MaxHealth = "inf"
  107. hum.Health = "inf"
  108.  
  109. function Debounces:New(name,cooldown)
  110. local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
  111. setmetatable(aaaaa,{__index = Debounces})
  112. Debounces.Debounces[name] = aaaaa
  113. return aaaaa
  114. end
  115.  
  116. function Debounces:Use(overrideUsable)
  117. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  118. if(self.Usable or overrideUsable)then
  119. self.Usable = false
  120. self.CoolingDown = true
  121. local LastUse = time()
  122. self.LastUse = LastUse
  123. delay(self.Cooldown or 2,function()
  124. if(self.LastUse == LastUse)then
  125. self.CoolingDown = false
  126. self.Usable = true
  127. end
  128. end)
  129. end
  130. end
  131.  
  132. function Debounces:Get(name)
  133. assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
  134. for i,v in next, Debounces.Debounces do
  135. if(i == name)then
  136. return v;
  137. end
  138. end
  139. end
  140.  
  141. function Debounces:GetProgressPercentage()
  142. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  143. if(self.CoolingDown and not self.Usable)then
  144. return math.max(
  145. math.floor(
  146. (
  147. (time()-self.LastUse)/self.Cooldown or 2
  148. )*100
  149. )
  150. )
  151. else
  152. return 100
  153. end
  154. end
  155.  
  156. local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
  157. local V3 = {N=Vector3.new}
  158. local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge}
  159.  
  160. local Hold = CF.N(0,-1,-1)*CF.A(M.R(-90),M.R(90),0)
  161. local BeheadHold = CF.A(0,0,0)
  162. local Effects,Sounds = {},{};
  163. --Stop animations
  164. for _,v in next, hum:GetPlayingAnimationTracks() do
  165. v:Stop();
  166. end
  167.  
  168. pcall(game.Destroy,char:FindFirstChild'Animate')
  169. pcall(game.Destroy,hum:FindFirstChild'Animator')
  170.  
  171. -- Sounds
  172. Sounds['Wet'] = {Id=256738023,Loop=false,Pitch=1}
  173. Sounds['Swoosh1'] = {Id=320557353,Loop=false,Pitch=1,Volume=6}
  174. Sounds['Swoosh2'] = {Id=320557382,Loop=false,Pitch=1,Volume=6}
  175. Sounds['Swoosh3'] = {Id=320557413,Loop=false,Pitch=1,Volume=6}
  176. Sounds['Swoosh4'] = {Id=320557453,Loop=false,Pitch=1,Volume=6}
  177. Sounds['Swoosh5'] = {Id=320557487,Loop=false,Pitch=1,Volume=6}
  178. Sounds['Swoosh6'] = {Id=320557537,Loop=false,Pitch=1,Volume=6}
  179. Sounds['Swoosh7'] = {Id=320557563,Loop=false,Pitch=1,Volume=6}
  180. Sounds['Swoosh8'] = {Id=320557518,Loop=false,Pitch=1,Volume=6}
  181. Sounds['SmallBoom'] = {Id=341336485,Loop=false,Volume=5,Pitch=1}
  182. Sounds['ChaosBuster'] = {Id=333534812,Loop=false,Volume=5,Pitch=0.75}
  183. Sounds['Magic'] = {Id=315743350,Loop=false,Volume=5,Pitch=1}
  184. Sounds['ShrekRemix'] = {Id=163306929,Loop=true,Pitch=1,Volume = 4}
  185. Sounds['CreoDimension'] = {Id=927529620,Loop=true,Pitch=1,Volume=4}
  186. Sounds['BlackBlizzard'] = {Id=657626121,Loop=true,Pitch=1,Volume=4}
  187. Sounds['ColbreakzFantasy'] = {Id=876981900,Loop=true,Pitch=1,Volume=4}
  188. Sounds['NeflCrystals'] = {Id=340106355,Loop=true,Pitch=1,Volume=4}
  189. Sounds['EvilMortyRemix'] = {Id=1057401232,Loop=true,Pitch=1,Volume=10}
  190. Sounds['Psycho'] = {Id=143382469,Loop=true,Pitch=1,Volume=10}
  191. -- Functions
  192. local NewInstance = function(instance,parent,properties)
  193. local inst = Instance.new(instance,parent)
  194. if(properties)then
  195. for i,v in next, properties do
  196. pcall(function() inst[i] = v end)
  197. end
  198. end
  199. return inst;
  200. end
  201.  
  202. ArtificialHB = NewInstance("BindableEvent", script,{
  203. Parent = script,
  204. Name = "Heartbeat",
  205. })
  206.  
  207. script:WaitForChild("Heartbeat")
  208.  
  209. frame = 1 / 60
  210. tf = 0
  211. allowframeloss = false
  212. tossremainder = false
  213. lastframe = tick()
  214. script.Heartbeat:Fire()
  215.  
  216. game:GetService("RunService").Heartbeat:connect(function(s, p)
  217. tf = tf + s
  218. if tf >= frame then
  219. if allowframeloss then
  220. script.Heartbeat:Fire()
  221. lastframe = tick()
  222. else
  223. for i = 1, math.floor(tf / frame) do
  224. script.Heartbeat:Fire()
  225. end
  226. lastframe = tick()
  227. end
  228. if tossremainder then
  229. tf = 0
  230. else
  231. tf = tf - frame * math.floor(tf / frame)
  232. end
  233. end
  234. end)
  235.  
  236. function swait(num)
  237. if num == 0 or num == nil then
  238. ArtificialHB.Event:wait()
  239. else
  240. for i = 0, num do
  241. ArtificialHB.Event:wait()
  242. end
  243. end
  244. end
  245.  
  246.  
  247. function clerp(startCF,endCF,alpha)
  248. return startCF:lerp(endCF, alpha)
  249. end
  250. local sndFromData = function(data,parent)
  251. assert(typeof(data) == 'table',"sndFromData's first argument must be a table!")
  252. 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})
  253. return snd;
  254. end
  255.  
  256. local FX = function(ID,vol,pitch,parent)
  257. local snd = NewInstance("Sound",parent or torso, {Pitch=pitch or 1, Volume = vol or 1,SoundId = "rbxassetid://"..ID})
  258. snd:Play()
  259. repeat wait() until snd.IsLoaded and snd.IsPlaying
  260. delay(snd.TimePosition+.5,function()
  261. snd:Stop()
  262. snd:Destroy()
  263. end)
  264. end
  265. function UnbindLoops()
  266. pcall(runService.UnbindFromRenderStep,runService,"N_Effects")
  267. pcall(runService.UnbindFromRenderStep,runService,"N_Animations")
  268. end;
  269.  
  270. UnbindLoops() -- Just so if the loops already exist from previously running a script using this template, there's no errors
  271.  
  272. -- Model
  273.  
  274. local Music = sndFromData(Sounds.Psycho,torso)
  275. Music:Play()
  276. Music.MaxDistance = 500
  277.  
  278. local Handle = NewInstance('Part',char,{CanCollide=false,Size=V3.N(0.46,3.82,0.37),Name='Handle'})
  279. local Mesh = NewInstance('SpecialMesh',Handle,{MeshId='rbxassetid://471401475',TextureId='rbxassetid://471401476',Scale=V3.N(.01,.01,.01)})
  280. local Decal = NewInstance('Decal',Handle,{Transparency=1,Texture='rbxassetid://116830967'})
  281. -- Joints and Lerp
  282. local LS = NewInstance('Motor',char,{Part0=torso,Part1=larm,C0 = CF.N(-1.5,0.5,0),C1 = CF.N(0,.5,0)})
  283. local RS = NewInstance('Motor',char,{Part0=torso,Part1=rarm,C0 = CF.N(1.5,0.5,0),C1 = CF.N(0,.5,0)})
  284. local NK = NewInstance('Motor',char,{Part0=torso,Part1=head,C0 = CF.N(0,1.5,0)})
  285. local LH = NewInstance('Motor',char,{Part0=torso,Part1=lleg,C0 = CF.N(-.5,-1,0),C1 = CF.N(0,1,0)})
  286. local RH = NewInstance('Motor',char,{Part0=torso,Part1=rleg,C0 = CF.N(.5,-1,0),C1 = CF.N(0,1,0)})
  287. local RJ = NewInstance('Motor',char,{Part0=root,Part1=torso})
  288. local HW = NewInstance('Motor',char,{Part0=rarm,Part1=Handle,C0 = CF.N(0,-1,-1)*CF.A(M.R(-90),M.R(90),0)})
  289.  
  290. -- watevr
  291.  
  292. -- Default C0s
  293. local LSD=LS.C0
  294. local RSD=RS.C0
  295. local HD=NK.C0
  296. local TD=RJ.C0
  297. local LHD=LH.C0
  298. local RHD=RH.C0
  299.  
  300. -- Check State
  301. function CheckState(rPart)
  302. if(rPart.Velocity.y > .35 and hum:GetState() == Enum.HumanoidStateType.Freefall)then
  303. return 'Jump';
  304. elseif(rPart.Velocity.y < -.35 and hum:GetState() == Enum.HumanoidStateType.Freefall)then
  305. return 'Fall';
  306. elseif(math.abs(rPart.Velocity.x) > 2 or math.abs(rPart.Velocity.z) > 2 and hum:GetState() ~= Enum.HumanoidStateType.Freefall)then
  307. return 'Walk';
  308. end
  309. return 'Idle';
  310. end
  311.  
  312. -- Effect Functions
  313. function SphereFX(duration,color,scale,pos,endScale)
  314. local rng = Instance.new("Part", char)
  315. rng.Anchored = true
  316. rng.BrickColor = color
  317. rng.CanCollide = false
  318. rng.FormFactor = 3
  319. rng.Name = "Ring"
  320. rng.Size = Vector3.new(1,1,1)
  321. rng.Transparency = 0
  322. rng.TopSurface = 0
  323. rng.BottomSurface = 0
  324. rng.CFrame = pos
  325. local rngm = Instance.new("SpecialMesh", rng)
  326. rngm.MeshType = "Sphere"
  327. rngm.Scale = scale
  328. table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
  329. return rng
  330. end
  331.  
  332. function BlastFX(duration,color,scale,pos,endScale)
  333. local rng = Instance.new("Part", char)
  334. rng.Anchored = true
  335. rng.BrickColor = color
  336. rng.CanCollide = false
  337. rng.FormFactor = 3
  338. rng.Name = "Ring"
  339. rng.Size = Vector3.new(1,1,1)
  340. rng.Transparency = 0
  341. rng.TopSurface = 0
  342. rng.BottomSurface = 0
  343. rng.CFrame = pos
  344. local rngm = Instance.new("SpecialMesh", rng)
  345. rngm.MeshType = "FileMesh"
  346. rngm.MeshId = 'rbxassetid://20329976'
  347. rngm.Scale = scale
  348. table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
  349. return rng
  350. end
  351. char.Head.face.Texture = "http://www.roblox.com/asset/?id=115337883"
  352. local music = Instance.new("Sound",char)
  353.  
  354.  
  355. function BlockFX(duration,color,scale,pos,endScale)
  356. local rng = Instance.new("Part", char)
  357. rng.Anchored = true
  358. rng.BrickColor = color
  359. rng.CanCollide = false
  360. rng.FormFactor = 3
  361. rng.Name = "Ring"
  362. rng.Size = Vector3.new(1,1,1)
  363. rng.Transparency = 0
  364. rng.TopSurface = 0
  365. rng.BottomSurface = 0
  366. rng.CFrame = pos
  367. local rngm = Instance.new("BlockMesh", rng)
  368. rngm.Scale = scale
  369. table.insert(Effects, {Frame = 0, Effect="Block", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
  370. return rng
  371. end
  372.  
  373. function LaserFX(duration,color,cframe,scale,endScale)
  374. local rng = Instance.new("Part", char)
  375. rng.Anchored = true
  376. rng.BrickColor = color
  377. rng.CanCollide = false
  378. rng.FormFactor = 3
  379. rng.Material = Enum.Material.Neon
  380. rng.Name = "Laser"
  381. rng.Size = Vector3.new(.5,.5,.5)
  382. rng.Transparency = 0
  383. rng.TopSurface = 0
  384. rng.BottomSurface = 0
  385. rng.CFrame = cframe
  386. local rngm = Instance.new("CylinderMesh", rng)
  387. rngm.Scale = scale
  388. table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = cframe})
  389. return rng
  390. end
  391.  
  392. function BloodDrop(pos,dir,maxsize)
  393. local owo = NewInstance("Part",char,{Material=BloodMaterial,BrickColor=BloodColor,Shape=Enum.PartType.Ball,Size=V3.N(.25,.25,.25), CanCollide = false})
  394. owo.CFrame=CF.N(pos,dir)
  395. local bv = Instance.new("BodyVelocity",owo)
  396. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  397. 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
  398. bv.Name = "MOVE"
  399. game:service'Debris':AddItem(bv,0.05)
  400. local touch
  401. touch = owo.Touched:connect(function(hit)
  402. if(hit.Anchored==true)then
  403. touch:disconnect()
  404. BloodPuddle(owo.Position+V3.N(0,1,0),10,maxsize,owo)
  405. owo:destroy()
  406. end
  407. end)
  408. end
  409. function BloodPuddle(position,range,maxSize,where)
  410. local hit, pos, norm = workspace:FindPartOnRayWithIgnoreList(Ray.new(
  411. position,CF.N(position,position+V3.N(0,-1,0)).lookVector * range
  412. ),{where,char},false,true)
  413. if(hit)then
  414. if(BloodPuddles[hit])then
  415. BloodPuddles[hit].Frame = 0
  416. if(hit:FindFirstChild'CylinderMesh' and hit.CylinderMesh.Scale.Z < BloodPuddles[hit].MaxSize)then
  417. hit.CylinderMesh.Scale = hit.CylinderMesh.Scale + V3.N(.1,0,.1)
  418. end
  419. else
  420. local Puddle = NewInstance('Part',workspace,{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'})
  421. local Cyl = NewInstance('CylinderMesh',Puddle,{Name='CylinderMesh'})
  422. BloodPuddles[Puddle] = {MaxSize=maxSize or 7,Frame=0}
  423. end
  424. end
  425. end
  426.  
  427. function ShatterFX(duration,color,scale,cframe)
  428. local rng = Instance.new("Part", char)
  429. rng.Anchored = true
  430. rng.BrickColor = color
  431. rng.CanCollide = false
  432. rng.FormFactor = 3
  433. rng.Name = "Ring"
  434. rng.Size = Vector3.new(1,1,1)
  435. rng.Transparency = 0
  436. rng.TopSurface = 0
  437. rng.BottomSurface = 0
  438. rng.CFrame = cframe * CF.fEA(M.RNG(-50, 50), M.RNG(-50, 50), M.RNG(-50, 50))
  439. local rngm = Instance.new("SpecialMesh", rng)
  440. rngm.Scale = scale
  441. rngm.MeshType = "Sphere"
  442. table.insert(Effects, {Frame = 0, Effect="Shatter", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale,Position=rng.CFrame})
  443. end
  444.  
  445. function RingFX(duration,color,scale,pos,endScale)
  446. local type = type
  447. local rng = Instance.new("Part", char)
  448. rng.Anchored = true
  449. rng.BrickColor = color
  450. rng.CanCollide = false
  451. rng.FormFactor = 3
  452. rng.Name = "Ring"
  453. rng.Size = Vector3.new(1,1,1)
  454. rng.Transparency = 0
  455. rng.TopSurface = 0
  456. rng.BottomSurface = 0
  457. rng.CFrame = pos
  458. local rngm = Instance.new("SpecialMesh", rng)
  459. rngm.MeshId = "rbxassetid://3270017"
  460. rngm.Scale = scale
  461. table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
  462. return rng
  463. end
  464.  
  465. function Shoot(StartCF,EndCF,Spread,Speed,Num,Color,Drop,MinDamage,MaxDamage)
  466. local Spread = V3.N(M.RNG(-Spread,Spread),M.RNG(-Spread,Spread),M.RNG(-Spread,Spread))
  467. local Start = StartCF.p
  468. local End = EndCF.p
  469. local SpreadPos = End + Spread
  470. local Look = CF.N((Start + SpreadPos) / 2, SpreadPos)
  471. local Count = Num
  472. spawn(function()
  473. repeat
  474. wait()
  475. local hit, pos = workspace:findPartOnRay(Ray.new(
  476. Start,(Look.lookVector).unit * Speed
  477. ),char,false,true)
  478. local dist = (Start-pos).magnitude
  479. local yScale = dist * (Speed / (Speed/2))
  480. local aa = CF.N((Start + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0)
  481. LaserFX(25,Color,aa,Vector3.new(1,yScale,1),Vector3.new(-1,yScale,-1))
  482. Start = Start + Look.lookVector * Speed
  483. Look = Look * CF.A(M.R(Drop or -1),0,0)
  484. Count = Count - 1
  485.  
  486. if(hit)then
  487. Count = 0
  488. MagniDamage(pos,10,MinDamage,MaxDamage,0,'Normal')
  489. end
  490. if(Count <= 0)then
  491. local sphere = SphereFX(25,Color,Vector3.new(5,5,5),CF.N(pos),Vector3.new(15,15,15))
  492. local ring = RingFX(25,Color,Vector3.new(6,6,6),CF.N(pos) * CF.A(0,M.R(90),0) * CF.A(M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360))),Vector3.new(16,16,16))
  493. end
  494. until Count <= 0
  495. end)
  496. end
  497.  
  498. -- Effect Loop
  499.  
  500. runService:BindToRenderStep("N_Effects",Enum.RenderPriority.Character.Value + 2,function()
  501. for _,data in next, Effects do
  502. local frame,effect,duration = data.Frame,data.Effect,data.Duration
  503. local transparency = (frame / duration)
  504. local opacity = 1 - transparency
  505. if(frame > duration)then
  506. Effects[_] = nil
  507. end
  508. frame = frame + 1
  509. data.Frame = frame
  510. if(effect == 'Sphere')then
  511. local Part,Mesh,Scale,CF,eScale = data.Part,data.Mesh,data.Scale,data.Position,data.EndScale
  512. Mesh.Scale = Mesh.Scale:lerp(eScale, transparency/6)
  513. Part.Transparency = transparency
  514. if(frame > duration)then
  515. Part:destroy()
  516. end
  517. elseif(effect == 'Shatter')then
  518. local Part,Mesh,Scale,Position,Thingie,Thingie2,Inc = data.Part,
  519. data.Mesh,
  520. data.Scale,
  521. data.Position,
  522. (data.Thingie or 0),
  523. (data.Thingie2 or M.RNG(50, 100) / 100),
  524. (data.Inc or M.RNG() - M.RNG())
  525. Part.Transparency = transparency
  526. Position = Position * CF.N(0,Thingie2,0)
  527. Part.CFrame = Position * CF.fEA(Thingie,0,0)
  528. Thingie = Thingie + Inc
  529.  
  530. data.Position = Position
  531. data.Thingie = Thingie
  532. data.Thingie2 = Thingie2
  533. data.Inc = Inc
  534. elseif(effect == 'Block')then
  535. local Part,Mesh,Scale,CF,eScale = data.Part,data.Mesh,data.Scale,data.Position,data.EndScale
  536. Mesh.Scale = Mesh.Scale:lerp(eScale, transparency/6)
  537. Part.Transparency = transparency
  538. Part.CFrame = CF * CFrame.Angles(M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360)))
  539. if(frame > duration)then
  540. Part:destroy()
  541. end
  542. end
  543. end
  544. for puddle,data in next, BloodPuddles do
  545. if(puddle.Transparency > 0.9)then
  546. BloodPuddles[puddle] = nil
  547. puddle:destroy()
  548. end
  549. data.Frame = data.Frame + 1
  550. if(data.Frame > 105)then
  551. local trans = (data.Frame-105)/30
  552. puddle.Transparency = trans
  553. if(puddle:FindFirstChild'CylinderMesh' and puddle.CylinderMesh.Scale.Z > 0)then
  554. puddle.CylinderMesh.Scale = puddle.CylinderMesh.Scale-V3.N(.1,0,.1)
  555. end
  556. else
  557. puddle.Transparency = 0
  558. end
  559. end
  560. end)
  561.  
  562.  
  563. -- Nametag
  564. local naeeym2 = Instance.new("BillboardGui",char)
  565. naeeym2.AlwaysOnTop = true
  566. naeeym2.Size = UDim2.new(5,35,2,35)
  567. naeeym2.StudsOffset = Vector3.new(0,1,0)
  568. naeeym2.Adornee = head
  569. naeeym2.Name = "Name"
  570. naeeym2.PlayerToHideFrom = plr
  571. local tecks2 = Instance.new("TextLabel",naeeym2)
  572. tecks2.BackgroundTransparency = 1
  573. tecks2.TextScaled = true
  574. tecks2.BorderSizePixel = 0
  575. tecks2.Text = "The-Box"
  576. tecks2.Font = "Antique"
  577. tecks2.TextSize = 30
  578. tecks2.TextStrokeTransparency = 0
  579. tecks2.TextColor3 = Color3.new(0.8,0,0)
  580. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  581. tecks2.Size = UDim2.new(1,0,0.5,0)
  582. tecks2.Parent = naeeym2
  583.  
  584. coroutine.wrap(function()
  585. while true do
  586. swait(15)
  587. hum.Health = hum.Health + 15
  588. local chance = 200
  589. if(Bloodied/4 > 25)then
  590. chance = Bloodied/4
  591. elseif(Bloodied/2 ~= 0)then
  592. chance = 25
  593. end
  594. local name = M.RNG(1,45)
  595. if(name == 1)then
  596. tecks2.Text = "T@#-!ox"
  597. elseif(name == 2)then
  598. tecks2.Text = "The-Box"
  599. elseif(name == 3)then
  600. tecks2.Text = "The-Boxxxxx"
  601. elseif(M.RNG(1,chance) == math.ceil(chance/2))then
  602. tecks2.Text = "Heh Heh"
  603. else
  604. tecks2.Text = "The-Box"
  605. end
  606. if(tecks2.Text~="Hahahaahahhahahahahahahahaaha")then
  607. if(Bloodied > BloodlustBlood)then
  608. tecks2.Text = "Bloodlustful "..tecks2.Text
  609. else
  610. tecks2.Text = "Psychopathic "..tecks2.Text
  611. end
  612. end
  613. if(Twitch)then
  614. tecks2.Text = tecks2.Text:gsub("",string.char(M.RNG(1,127)))
  615. end
  616. end
  617. end)()
  618. -- Animation Loop
  619. runService:BindToRenderStep("N_Animations",Enum.RenderPriority.Character.Value + 1,function()
  620. sine=sine+change
  621. if(not ThrownKnife)then Decal.Transparency = 1-(Bloodied/150) end
  622. local twitchVal = M.RNG(1,400)
  623. if(Bloodied >= BloodlustBlood)then
  624. local twitchVal = M.RNG(1,100)
  625. end
  626. if(twitchVal == 1 and not Twitch and time()-lastTwitch > 1.5)then
  627. Twitch = true
  628. lastTwitch = time()
  629. end
  630. if(time()-lastTwitch > M.RNG(50,100)/100)then
  631. Twitch = false
  632. end
  633. if(Decal.Transparency <= 0.7)then
  634. if(time()-BloodTime > .25)then
  635. if(not ThrownKnife)then
  636. BloodDrop((Handle.CFrame*CF.N(0,1.5,0)).p,(CF.N(Handle.CFrame.p)*CF.N(0,-25,0)).p,8)
  637. BloodTime = time()
  638. Bloodied = Bloodied-1
  639. end
  640. end
  641. end
  642. if(Bloodied > BloodlustBlood)then
  643. if(not Twitch)then
  644. Music.Pitch = 0.85
  645. end
  646. WalkSpeed = 50
  647. else
  648. if(not Twitch)then
  649. Music.Pitch = 1
  650. end
  651. WalkSpeed = 50
  652. end
  653. hum.WalkSpeed = WalkSpeed
  654.  
  655. if(Twitch)then
  656. Music.Pitch = 0.65
  657. NK.C1 = clerp(NK.C1,CF.A(-M.R(15+M.RNG(0,25)),-M.R(25+M.RNG(-15,15)/15),0),.5)
  658. else
  659. NK.C1 = clerp(NK.C1,CF.N(),.3)
  660. end
  661.  
  662. local wsVal = 5 / (hum.WalkSpeed / 50)
  663. if(CheckState(root) == 'Walk')then
  664. -- Walk anim
  665. change = 2/3
  666. RH.C1 = clerp(RH.C1,CF.N(0,.975-.1*M.S(sine/wsVal),-.1*M.C(sine/9)) *CF.A(M.R(25+35*M.C(sine/wsVal)),0,0),.6)
  667. LH.C1 = clerp(LH.C1,CF.N(0,.975+.1*M.S(sine/wsVal),.1*M.C(sine/9))*CF.A(M.R(25+35*-M.C(sine/wsVal)),0,0),.6)
  668. else
  669. RH.C1 = clerp(RH.C1,CF.N(0,1,0),.3)
  670. LH.C1 = clerp(LH.C1,CF.N(0,1,0),.3)
  671. end
  672. if(neutralAnims)then
  673. if(CheckState(root) == 'Idle')then
  674. -- Idle anim
  675. NK.C0 = clerp(NK.C0,HD*CF.N(0,.1,-.25)*CF.A(M.R(-25),0,0),.1)
  676. RH.C0 = clerp(RH.C0,CF.N(.5,-1-.1*M.C(time()),0),.1)
  677. LH.C0 = clerp(LH.C0,CF.N(-.5,-1-.1*M.C(time()),0),.1)
  678. RJ.C0 = clerp(RJ.C0,CF.N(0,0+.1*M.C(time()),0),.1)
  679. LS.C0 = clerp(LS.C0,CF.N(-1.5,.5,0)*CF.A(0,0,M.R(-12)-.1*M.C(time())),.1)
  680. RS.C0 = clerp(RS.C0,CF.N(1.5,.5,0)*CF.A(0,0,M.R(6+6*M.C(time()))),.1)
  681. elseif(CheckState(root) == 'Walk')then
  682. NK.C0 = clerp(NK.C0,HD*CF.N(0,.1,-.25)*CF.A(M.R(-25),0,0),.1)
  683. RJ.C0 = clerp(RJ.C0,CF.N(0,0+.1*M.C(sine/(wsVal/2)),0),.3)
  684. RH.C0 = clerp(RH.C0,RHD*CF.N(0,0-.1*M.C(sine/(wsVal/2)),0),.3)
  685. LH.C0 = clerp(LH.C0,LHD*CF.N(0,0-.1*M.C(sine/(wsVal/2)),0),.3)
  686. RS.C0 = clerp(RS.C0,RSD*CF.A(M.R(0+25*M.C(sine/wsVal)),0,0),.3)
  687. LS.C0 = clerp(LS.C0,LSD*CF.A(M.R(0+25*-M.C(sine/wsVal)),0,0),.3)
  688. elseif(CheckState(root) == 'Jump')then
  689. RJ.C0 = clerp(RJ.C0,CFrame.new(3.20309751e-13, 0.00628912123, 1.38760515e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),0.1)
  690. LH.C0 = clerp(LH.C0,CFrame.new(-0.496501386, -0.990816772, 0.0216115266, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),0.1)
  691. RH.C0 = clerp(RH.C0,CFrame.new(0.951985836, -0.878642321, 0.00768248737, 0.807899356, 0.589113057, 0.0156119959, -0.58925271, 0.80792439, 0.0062854127, -0.0089104902, -0.0142773949, 0.999858022),0.1)
  692. LS.C0 = clerp(LS.C0,CFrame.new(-1.46314824, 0.504732132, -0.0780580789, 0.996319413, 0.084279716, 0.0156119959, -0.0843861476, 0.996413291, 0.0062854127, -0.0150262676, -0.00757971918, 0.999858022),0.1)
  693. RS.C0 = clerp(RS.C0,CFrame.new(1.41746354, 0.490631759, 0.0355827622, 0.983217537, -0.181765735, 0.0156119959, 0.181687862, 0.98333621, 0.0062854127, -0.0164943133, -0.0033434222, 0.999858022),0.1)
  694. NK.C0 = clerp(NK.C0,HD*CF.N(0,.1,-.25)*CF.A(M.R(-25),0,0),.1)
  695. elseif(CheckState(root) == 'Fall')then
  696. RJ.C0 = clerp(RJ.C0,CFrame.new(3.20309751e-13, 0.00628912123, 1.38760515e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),0.1)
  697. LH.C0 = clerp(LH.C0,CFrame.new(-0.496501386, -0.990816772, 0.0216115266, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),0.1)
  698. RH.C0 = clerp(RH.C0,CFrame.new(0.951985836, -0.878642321, 0.00768248737, 0.807899356, 0.589113057, 0.0156119959, -0.58925271, 0.80792439, 0.0062854127, -0.0089104902, -0.0142773949, 0.999858022),0.1)
  699. LS.C0 = clerp(LS.C0,CFrame.new(-1.39294851, 0.589963198, 0.0808894783, 0.976439953, 0.21526964, 0.0149493031, -0.210034028, 0.932227492, 0.294682175, 0.0494999699, -0.29087922, 0.955478072),0.1)
  700. RS.C0 = clerp(RS.C0,CFrame.new(1.29713261, 0.551729858, 0.0523524433, 0.920970082, -0.389345646, 0.0149465948, 0.368037164, 0.88187921, 0.294682831, -0.127914533, -0.265893161, 0.955477953),0.1)
  701. NK.C0 = clerp(NK.C0,HD*CF.N(0,.1,-.25)*CF.A(M.R(-25),0,0),.1)
  702. end
  703. end
  704. end)
  705.  
  706. -- Died event
  707.  
  708. hum.Died:connect(function() -- When the player dies
  709. UnbindLoops() -- Unbind all of the loops used
  710. end)
  711.  
  712.  
  713. -- Everything else
  714.  
  715.  
  716. function GetTorso(char)
  717. return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso' or char:FindFirstChild'LowerTorso' or char:FindFirstChild'HumanoidRootPart'
  718. end
  719.  
  720. function Projectile(what)
  721. what.Archivable = true
  722. local projectile = what:Clone()
  723. projectile.Parent = char
  724. projectile.Transparency = 0
  725. projectile.Name = "Projectile"
  726. projectile.CFrame = CFrame.new(head.CFrame.p,mouse.Hit.p)*CFrame.Angles(math.rad(0),math.rad(90),math.rad(-90))
  727. projectile.Anchored = true
  728. projectile.Velocity = Vector3.new(0,0,0)
  729. projectile.RotVelocity = Vector3.new(0,0,0)
  730. projectile.Anchored = false
  731. --character.Head.Position).unit
  732. local Velocity = (mouse.Hit.p-head.CFrame.p).unit
  733. projectile.Velocity = Velocity*160
  734. local force = Instance.new("BodyForce")
  735. force.force = Vector3.new(0, 196.2, 0) * projectile:GetMass() * .8
  736. force.Parent = projectile
  737. local touchie
  738. coroutine.wrap(function()
  739. repeat wait() KnifePosition = projectile.CFrame until not projectile or not projectile.Parent or not ThrownKnife
  740. projectile:destroy()
  741. print'knifu'
  742. ThrownKnife = false
  743. Attack = false
  744. Handle.Transparency = 0
  745. KnifePosition = CF.N(0,0,0)
  746. end)()
  747. touchie = projectile.Touched:connect(function(h)
  748. if(not char:IsAncestorOf(h))then
  749. force:destroy()
  750. projectile.Velocity = V3.N(0,0,0)
  751. touchie:disconnect()
  752. local rag = Ragdoll(h.Parent)
  753. swait()
  754. local name = (h.Name == 'Head' and 'FakeHead' or h.Name)
  755. local asd = CF.N((projectile.CFrame.p + h.CFrame.p) * .5)
  756.  
  757. if(not h.Parent and rag and rag:FindFirstChild(name,true))then h = rag:FindFirstChild(name,true) end
  758. local C0 = projectile.CFrame:inverse() * asd
  759. if(not h.Anchored)then
  760. local w = NewInstance('Weld',char,{Part0=projectile,Part1=h,C0 = C0,C1=h.CFrame:inverse() * asd})
  761. else
  762. projectile.Anchored = true
  763. end
  764. if(rag)then
  765. Bloodied = Bloodied + 30
  766. local bloodie = NewInstance('Part',rag,{Anchored = false,CanCollide=false,Size=V3.N(.02,.02,.02),Transparency=1})
  767. local w = NewInstance('Weld',rag,{Part0=bloodie,Part1=h,C0 = C0,C1=h.CFrame:inverse() * asd})
  768. coroutine.wrap(function() repeat wait(M.RNG(2,10)/100)
  769. local spread = V3.N(M.RNG(-85,85)/100,M.RNG(-85,85)/100,M.RNG(-85,85)/100)
  770. BloodDrop(bloodie.CFrame*CF.N(0,.02,0).p,bloodie.CFrame * CF.N(0,100,0).p+spread,10)
  771. until not bloodie or not bloodie.Parent or not rag or not rag.Parent end)()
  772. repeat wait() until not ThrownKnife
  773. delay(5, function()
  774. if(rag)then
  775. rag:destroy()
  776. end
  777. end)
  778. end
  779. end
  780. end)
  781. end
  782. function Decapitate(target)
  783. if(target and target ~= char and GetTorso(target) and target:FindFirstChildOfClass'Humanoid' and target:FindFirstChildOfClass'Humanoid'.Name ~= 'Corpse' and target:FindFirstChildOfClass'Humanoid'.Health > 0 and target:FindFirstChild'Head')then
  784. --BloodPuddle(start,direction,range,maxSize)
  785. Bloodied = Bloodied + 60
  786. target.Archivable = true
  787. local Clone = target:Clone()
  788. target:destroy()
  789. Clone.Parent = workspace
  790. local FakeHead = Clone.Head:Clone()
  791. Clone.Head:destroy()
  792. Clone:FindFirstChildOfClass'Humanoid'.PlatformStand = true
  793. Clone.Name = 'Ragdoll of '..target.Name
  794. FakeHead.Name = 'FakeHead'
  795. FakeHead.Parent = Clone
  796. Clone:FindFirstChildOfClass'Humanoid'.Name = 'Corpse'
  797. local head = FakeHead
  798. local torso = GetTorso(Clone)
  799. local cut = FX(756072587)
  800. local bv = Instance.new("BodyVelocity",torso)
  801. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  802. bv.velocity = CF.N(Handle.Position,torso.Position).lookVector*20
  803. bv.Name = "MOVE"
  804. game:service'Debris':AddItem(bv,0.2)
  805. local bv = Instance.new("BodyVelocity",FakeHead)
  806. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  807. bv.velocity = CF.N(Handle.Position,FakeHead.Position).lookVector*20
  808. bv.Name = "MOVE"
  809. game:service'Debris':AddItem(bv,0.2)
  810.  
  811. game:service'Debris':AddItem(Clone,10)
  812. for i = 1, 500 do
  813. wait(M.RNG(2,10)/100)
  814. BloodDrop(torso.CFrame * CF.N(0,torso.Size.Y/2,0).p,(torso.CFrame * CF.N(0,torso.Size.Y,0)).p,10)
  815. BloodDrop(head.CFrame * CF.N(0,-.25,0).p,(head.CFrame * CF.N(0,-.7,0)).p,5)
  816. if not head or not torso or not Clone or not Clone.Parent or not Clone.Parent.Parent then break end
  817. end
  818. end
  819. end
  820.  
  821. function Ragdoll(target,bloodPos)
  822. if(target and target ~= char and GetTorso(target) and target:FindFirstChildOfClass'Humanoid' and target:FindFirstChildOfClass'Humanoid'.Name ~= 'Corpse' and target:FindFirstChildOfClass'Humanoid'.Health > 0 and target:FindFirstChild'Head')then
  823. --BloodPuddle(start,direction,range,maxSize)
  824. target.Archivable = true
  825. local Clone = target:Clone()
  826. local torso = GetTorso(Clone)
  827. target:destroy()
  828. Clone.Parent = workspace
  829. Clone:FindFirstChildOfClass'Humanoid'.PlatformStand = true
  830. Clone.Name = 'Ragdoll of '..target.Name
  831. Clone:FindFirstChildOfClass'Humanoid'.Name = 'Corpse'
  832. local fHead = Clone.Head:Clone()
  833. Clone.Head:destroy()
  834. fHead.Name = 'FakeHead'
  835. fHead.Parent = Clone
  836. NewInstance("Motor6D",torso,{Name='Neck',Part0=torso,Part1=fHead,C0 = HD})
  837. return Clone;
  838. end
  839. end
  840.  
  841. function DealDamage(who,minDam,maxDam,Knock,Type)
  842. if(who)then
  843. local hum = who:FindFirstChildOfClass'Humanoid'
  844. local Damage = M.RNG(minDam,maxDam)
  845. local canHit = true
  846. if(hum)then
  847. for _, p in pairs(Hit) do
  848. if p[1] == hum then
  849. if(time() - p[2] < 0.1) then
  850. canHit = false
  851. else
  852. Hit[_] = nil
  853. end
  854. end
  855. end
  856. if(canHit)then
  857. if(hum.Health >= math.huge)then
  858. who:BreakJoints()
  859. else
  860. local player = S.Players:GetPlayerFromCharacter(who)
  861. if(not player or not Teamed[player])then
  862. if(Type == "Fire")then
  863. --idk..
  864. else
  865. local c = Instance.new("ObjectValue",hum)
  866. c.Name = "creator"
  867. c.Value = plr
  868. game:service'Debris':AddItem(c,0.35)
  869. hum.Health = hum.Health - Damage
  870. if(Type == 'Knockback' and GetTorso(who))then
  871. local angle = GetTorso(who).Position - root.Position + Vector3.new(0, 0, 0).unit
  872. local body = NewInstance('BodyVelocity',GetTorso(who),{
  873. P = 500,
  874. maxForce = V3.N(math.huge,0,math.huge),
  875. velocity = root.CFrame.lookVector * Knock + root.Velocity / 1.05
  876. })
  877. game:service'Debris':AddItem(body,.5)
  878. elseif(Type == 'Knockdown' and GetTorso(who))then
  879. local rek = GetTorso(who)
  880. print(rek)
  881. hum.PlatformStand = true
  882. delay(1,function()
  883. hum.PlatformStand = false
  884. end)
  885. local angle = (GetTorso(who).Position - (root.Position + Vector3.new(0, 0, 0))).unit
  886. local bodvol = NewInstance("BodyVelocity",rek,{
  887. velocity = angle * Knock,
  888. P = 5000,
  889. maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  890. })
  891. local rl = NewInstance("BodyAngularVelocity",rek,{
  892. P = 3000,
  893. maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  894. angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  895. })
  896. game:GetService("Debris"):AddItem(bodvol, .5)
  897. game:GetService("Debris"):AddItem(rl, .5)
  898. end
  899. end
  900. end
  901. end
  902. table.insert(Hit,{hum,time()})
  903. end
  904. end
  905. end
  906. end
  907.  
  908. function MagniDamage(pos,radius,mindamage,maxdamage,knockback,damagetype)
  909. local Recursive
  910. Recursive = function(whom)
  911. for _,c in next, whom:children() do
  912. local hum = c:FindFirstChildOfClass'Humanoid'
  913. local hed = c:FindFirstChild'Torso' or c:FindFirstChild'UpperTorso' or c:FindFirstChild'LowerTorso'
  914. if(hum and hed)then
  915. local mag = (hed.CFrame.p - pos).magnitude
  916. if(mag <= radius and c ~= char)then
  917. DealDamage(c,mindamage,maxdamage,knockback,damagetype)
  918. end
  919. end
  920. Recursive(c)
  921. end
  922. end
  923. Recursive(workspace)
  924. end
  925.  
  926. function MagniHeal(pos,radius,heal,needsTeamed)
  927. for _,v in next, workspace:GetDescendants() do
  928. local player = S.Players:GetPlayerFromCharacter(v)
  929. local hum = v:FindFirstChildOfClass'Humanoid'
  930. if(hum and v:IsA'Model')then
  931. if(not needsTeamed or player and (not plr.Neutral and player.TeamColor == plr.TeamColor))then
  932. local pp = v.PrimaryPart or v:FindFirstChild'Torso' or v:FindFirstChild'UpperTorso' or v:FindFirstChild'LowerTorso'
  933. if(pp and (pp.CFrame.p-pos).magnitude <= radius)then
  934. hum.Health = hum.Health + heal
  935. end
  936. end
  937. end
  938. end
  939. end
  940.  
  941.  
  942. Debounces:New('how2use',1) -- name, cooldown
  943.  
  944. function TestDebounce()
  945. if(Debounces:Get('how2use').Usable)then
  946. -- code
  947. Debounces:Get('how2use'):Use() -- use it up
  948. end
  949. end
  950.  
  951. function Throw()
  952. Attack = true
  953. neutralAnims = false
  954. for i = 0, 0.5, 0.01 do
  955. swait()
  956. RJ.C0 = clerp(RJ.C0,CFrame.new(3.20297608e-13, 0.00628888281, 1.38610631e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),i)
  957. LH.C0 = clerp(LH.C0,CFrame.new(-0.496501386, -0.990817726, 0.0216115303, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),i)
  958. RH.C0 = clerp(RH.C0,CFrame.new(0.498532087, -0.990986288, 0.0154690417, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),i)
  959. LS.C0 = clerp(LS.C0,CFrame.new(-1.46255744, 0.505245924, -0.00366198737, 0.996415496, 0.083136864, 0.0156119959, -0.0832431838, 0.996509492, 0.0062854127, -0.0150349522, -0.007562479, 0.999858022),i)
  960. RS.C0 = clerp(RS.C0,CFrame.new(1.45461845, 0.798322797, -0.0251020491, 0.992853343, 0.114112578, -0.0349269882, 0.119324632, -0.944872856, 0.304921478, 0.00179381669, -0.306909949, -0.951736629),i)
  961. NK.C0 = clerp(NK.C0,HD*CF.N(0,.1,-.25)*CF.A(M.R(-25),0,0),i)
  962. end
  963. wait(.25)
  964. for i = 0, 0.5, 0.1 do
  965. swait()
  966. RJ.C0 = clerp(RJ.C0,CFrame.new(3.20297608e-13, 0.00628888281, 1.38610631e-06, 0.999999225, 5.09317033e-11, 0, -4.38656264e-11, 0.999980271, -0.00628618058, 0, 0.00628617639, 0.999979496),i)
  967. LH.C0 = clerp(LH.C0,CFrame.new(-0.496501386, -0.990817726, 0.0216115303, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),i)
  968. RH.C0 = clerp(RH.C0,CFrame.new(0.498532087, -0.990986288, 0.0154690417, 0.999877751, -4.38656264e-11, 0.0156119959, -9.81397825e-05, 0.999980271, 0.0062854127, -0.0156116877, -0.00628618058, 0.999858022),i)
  969. LS.C0 = clerp(LS.C0,CFrame.new(-1.46255744, 0.505245924, -0.00366198737, 0.996415496, 0.083136864, 0.0156119959, -0.0832431838, 0.996509492, 0.0062854127, -0.0150349522, -0.007562479, 0.999858022),i)
  970. RS.C0 = clerp(RS.C0,CFrame.new(1.47101879, 0.662136793, -0.0487503409, 0.99285394, -0.0636505187, 0.100939959, 0.119318806, 0.516643643, -0.847845852, 0.00181584992, 0.853831172, 0.520546317),i)
  971. NK.C0 = clerp(NK.C0,HD*CF.N(0,.1,-.25)*CF.A(M.R(-25),0,0),i)
  972. end
  973. ThrownKnife = true
  974. Handle.Transparency = 1
  975. Projectile(Handle)
  976. Decal.Transparency = 1
  977. wait(.5)
  978. neutralAnims = true
  979. end
  980.  
  981. function ClickCombo()
  982. Attack = true
  983. neutralAnims = false
  984. for i = 0, 1, 0.1 do
  985. swait()
  986. RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0288643427, 0.00628663553, 0.0650177076, 0.795387626, -0.00380940945, -0.606089413, 0, 0.99998033, -0.0062851035, 0.606101394, 0.00499909231, 0.79537189),0.3)
  987. LH.C0 = clerp(LH.C0,CFrame.new(-0.636930108, -0.990812421, 0.0222794991, 0.785828114, 0, 0.618445039, -0.00388699071, 0.99998033, 0.00493901037, -0.61843282, -0.0062851035, 0.785812557),0.3)
  988. RH.C0 = clerp(RH.C0,CFrame.new(0.52050519, -0.991459012, -0.0594233908, 0.785828114, 0, 0.618445039, -0.00388699071, 0.99998033, 0.00493901037, -0.61843282, -0.0062851035, 0.785812557),0.3)
  989. LS.C0 = clerp(LS.C0,CFrame.new(-1.3529017, 0.445256352, -0.140841246, 0.946949303, 0.32137382, 0.00244083256, -0.0499903522, 0.154793665, -0.986681402, -0.317471415, 0.934215069, 0.162647352),0.3)
  990. RS.C0 = clerp(RS.C0,CFrame.new(1.27564776, 0.466243029, 0.284559131, 0.129886121, -0.885094404, -0.446920156, 0.991494656, 0.112184346, 0.0659796819, -0.00826080143, -0.451688766, 0.892137289),0.3)
  991. NK.C0 = clerp(NK.C0,CFrame.new(-0.0194674022, 1.49851632, -0.0826113448, 0.795387626, -0.0348471925, 0.605098784, -0.00380940945, 0.998038769, 0.0624837019, -0.606089413, -0.0520038158, 0.793694794),0.3)
  992. end
  993. local swoosh = coroutine.wrap(FX)(1306070008,1,M.RNG(95,125)/100)
  994. Handle.CanCollide = true
  995. local touched = Handle.Touched:connect(function(t)
  996. Decapitate(t.Parent)
  997. end)
  998. for i = 0, 1, 0.05 do
  999. swait()
  1000. if((root.Velocity * V3.N(1, 0, 1)).magnitude > 0.3 and WalkSpeed == 16)then
  1001. root.CFrame = root.CFrame*CF.N(0,0,-1)
  1002. end
  1003. RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0220096968, 0.00628673984, -0.0231647622, 0.894043028, 0.00281593157, 0.447972536, 0, 0.99998033, -0.00628582342, -0.447981387, 0.00561979692, 0.894025445),0.3)
  1004. LH.C0 = clerp(LH.C0,CFrame.new(-0.526260316, -0.99155879, -0.0964359194, 0.900927901, 0, -0.433968931, 0.00272785197, 0.99998033, 0.00566307362, 0.433960348, -0.00628582342, 0.900910139),0.3)
  1005. RH.C0 = clerp(RH.C0,CFrame.new(0.494664222, -0.99110806, -0.00358221633, 0.900927901, 0, -0.433968931, 0.00272785197, 0.99998033, 0.00566307362, 0.433960348, -0.00628582342, 0.900910139),0.3)
  1006. LS.C0 = clerp(LS.C0,CFrame.new(-1.35400736, 0.608840644, 0.230960667, 0.920430303, 0.226487458, 0.318608999, -0.244053409, 0.969633698, 0.0157693904, -0.305362433, -0.092272222, 0.947755098),0.3)
  1007. RS.C0 = clerp(RS.C0,CFrame.new(1.13865554, 0.477464586, -0.481917799, 0.129889846, 0.658138037, 0.7416085, 0.99149406, -0.0799742565, -0.102683425, -0.0082702823, 0.748637795, -0.662927747),0.3)
  1008. NK.C0 = clerp(NK.C0,CFrame.new(0.0115462095, 1.49914026, 0.0166844055, 0.894043028, 0.0257562418, -0.447240323, 0.00281593157, 0.998003125, 0.0631033778, 0.447972536, -0.0576765276, 0.892185211),0.3)
  1009. HW.C0 = clerp(HW.C0,CFrame.new(0.0201188885, -1.41869056, -0.559928358, -1.8030405e-06, -3.1888485e-06, 1.00000012, -0.698006153, -0.716091871, -3.54647636e-06, 0.716091871, -0.698006153, -9.38773155e-07)*BeheadHold,0.3)
  1010. end
  1011. wait(.1)
  1012. Handle.CanCollide = false
  1013. touched:disconnect()
  1014. coroutine.wrap(function()
  1015. for i = 0, 1, 0.1 do
  1016. swait()
  1017. HW.C0 = Hold
  1018. end
  1019. end)()
  1020. neutralAnims = true
  1021. Attack = false
  1022. end
  1023. function AttemptGetKnife()
  1024. if((torso.CFrame.p-KnifePosition.p).magnitude < 6)then
  1025. ThrownKnife = false
  1026. end
  1027. end
  1028. mouse.Button1Down:connect(function()
  1029. if(not ThrownKnife)then
  1030. if(Attack)then return end
  1031. ClickCombo()
  1032. else
  1033. AttemptGetKnife()
  1034. end
  1035. end)
  1036. mouse.KeyDown:connect(function(k)
  1037. if(Attack)then return end
  1038. if(k == "e")then
  1039. Throw()
  1040. elseif(k == 'm')then
  1041. if(Music.Volume ~= 0)then
  1042. Music.Volume =0
  1043. else
  1044. Music.Volume = Sounds.Psycho.Volume
  1045. end
  1046. elseif(k == 'q')then
  1047. if(Mesh.MeshId ~= 'http://www.roblox.com/asset/?id=123248347')then
  1048. Mesh.MeshId = 'http://www.roblox.com/asset/?id=123248347'
  1049. Mesh.TextureId = 'http://www.roblox.com/asset/?id=123248449'
  1050. Mesh.Scale = V3.N(.4,.4,.4)
  1051. Hold = CF.N(0,-1,-1.35)*CF.A(M.R(-90),0,0)
  1052. BeheadHold = CF.N(0,.5,0)*CF.A(0,M.R(-90),0)
  1053. else
  1054. Mesh.MeshId='rbxassetid://471401475'
  1055. Mesh.TextureId='rbxassetid://471401476'
  1056. Mesh.Scale = V3.N(.01,.01,.01)
  1057. Hold = CF.N(0,-1,-1)*CF.A(M.R(-90),M.R(90),0)
  1058. BeheadHold = CF.A(0,0,0)
  1059. end
  1060. HW.C0 = Hold
  1061. end
  1062. end)
Advertisement
Add Comment
Please, Sign In to add comment