Advertisement
StarzoZero

Roblox NON FE Murderer v2

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