Advertisement
Deyer

Ejsjdjsnfn

Feb 22nd, 2023
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 67.30 KB | None | 0 0
  1. --//====================================================\\--
  2. --|| BASIS
  3. --\\====================================================//--
  4.  
  5. --by shackluster
  6. --converted by melon
  7. --credit melon and shackluster if showcased
  8.  
  9.  
  10. game.TestService.IsSleepAllowed = false
  11. for i,v in next, game:GetService("Players").LocalPlayer.Character:GetDescendants() do
  12. if v:IsA("BasePart") then
  13. game:GetService("RunService").Heartbeat:connect(function()
  14. v.Velocity = Vector3.new(-40,0,-10)
  15. pcall(function()
  16. v.CanCollide = false
  17. end)
  18. pcall(function()
  19. v.CanQuery = false
  20. end)
  21. end)
  22. end
  23. end
  24.  
  25. Bypass = "death"
  26. loadstring(game:GetObjects("rbxassetid://5325226148")[1].Source)()
  27. for i,v in next, game:GetService("Players").LocalPlayer.Character:GetDescendants() do
  28. if v:IsA("BasePart") and v.Name ~="HumanoidRootPart" then
  29. game:GetService("RunService").Heartbeat:connect(function()
  30. v.Velocity = Vector3.new(0,30,0)
  31. wait(0.5)
  32. end)
  33. end
  34. end
  35. local p = game.Players.LocalPlayer
  36. local char = p.Character
  37. local mouse = p:GetMouse()
  38. local larm = char["Left Arm"]
  39. local rarm = char["Right Arm"]
  40. local lleg = char["Left Leg"]
  41. local rleg = char["Right Leg"]
  42. local hed = char.Head
  43. local torso = char.Torso
  44. local hum = char.Humanoid
  45. local cam = game.Workspace.CurrentCamera
  46. local root = char.HumanoidRootPart
  47. for i,v in pairs (char:GetChildren()) do
  48. if v:IsA("Accessory") then
  49. v.Handle.Massless = true
  50. v.Handle.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  51. end
  52. end
  53.  
  54. hed.Massless = true
  55. hed.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  56. torso.Massless = true
  57. torso.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  58. rarm.Massless = true
  59. rarm.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  60. larm.Massless = true
  61. larm.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  62. lleg.Massless = true
  63. lleg.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  64. rleg.Massless = true
  65. rleg.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  66. root.Massless = true
  67. root.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  68. warn("Netless Activated!")
  69. Bypass = "Death"
  70. plr = game.Players.LocalPlayer
  71. dead = false
  72. char = plr.Character
  73.  
  74.  
  75.  
  76. bullet = workspace[plr.Name]["HumanoidRootPart"]
  77. bullet.Transparency = 0
  78. bhandle = bullet
  79. bullet.Massless = true
  80.  
  81. mouse = plr:GetMouse()
  82. head = char.Head
  83. camera = workspace.CurrentCamera
  84. lt = true
  85. ltt = false
  86.  
  87. local function IsFirstPerson()
  88. return (head.CFrame.p - camera.CFrame.p).Magnitude < 1
  89. end
  90.  
  91. bbv = Instance.new("BodyPosition",bhandle)
  92. bbv.Position = char.Torso.CFrame.p
  93.  
  94.  
  95.  
  96. mouse.Button1Down:Connect(function()
  97. if dead == false then
  98. lt = false
  99. ltt = false
  100. bbav = Instance.new("BodyAngularVelocity",bhandle)
  101. bbav.MaxTorque = Vector3.new(math.huge,math.huge,math.huge)
  102. bbav.P = 1000000000000000000000000000
  103. bbav.AngularVelocity = Vector3.new(10000000000000000000000000000000,100000000000000000000000000,100000000000000000)
  104. game:GetService("Debris"):AddItem(bbav,0.1)
  105. if game.Players:GetPlayerFromCharacter(mouse.Target.Parent) then
  106. if mouse.Target.Parent.Name == char.Name or mouse.Target.Parent.Name == "non" then return end
  107. --repeat
  108. game:GetService("RunService").RenderStepped:Wait()
  109. bbv.Position = (CFrame.new(mouse.Target.Parent.HumanoidRootPart.CFrame.p,char.Torso.CFrame.p) * CFrame.new(0,0,0)).p
  110. bhandle.Position = (CFrame.new(mouse.Target.Parent.HumanoidRootPart.CFrame.p,char.Torso.CFrame.p) * CFrame.new(0,0,0)).p
  111. wait(1)
  112. --until char.Humanoid.Health == 100 or char.Humanoid.Health == 0
  113. elseif game.Players:GetPlayerFromCharacter(mouse.Target.Parent.Parent) then
  114. if mouse.Target.Parent.Name == char.Name or mouse.Target.Parent.Name == "non" then return end
  115. --repeat
  116. game:GetService("RunService").RenderStepped:Wait()
  117. bbv.Position = (CFrame.new(mouse.Target.Parent.Parent.HumanoidRootPart.CFrame.p,char.Torso.CFrame.p) * CFrame.new(0,0,0)).p
  118. bhandle.Position = (CFrame.new(mouse.Target.Parent.Parent.HumanoidRootPart.CFrame.p,char.Torso.CFrame.p) * CFrame.new(0,0,0)).p
  119. wait(1)
  120. --until char.Humanoid.Health == 100 or char.Humanoid.Health == 0
  121.  
  122. else
  123. -- repeat
  124. game:GetService("RunService").RenderStepped:Wait()
  125. wait(1)
  126. --until char.Humanoid.Health == 100 or char.Humanoid.Health == 0
  127. end
  128. wait()
  129. lt = true
  130. end
  131. end)
  132.  
  133. spawn(
  134. function()
  135. while true do
  136. game:GetService("RunService").Heartbeat:Wait()
  137. bullet.Velocity = Vector3.new(0,26,0)
  138. end
  139. end)
  140.  
  141. plr:GetMouse().Button1Down:Connect(function()
  142. attackingwithhrp = true
  143. end)
  144.  
  145.  
  146. plr:GetMouse().Button1Up:Connect(function()
  147. attackingwithhrp = false
  148. end)
  149.  
  150. plr:GetMouse().Button1Down:Connect(function()
  151. repeat wait() until attackingwithhrp == true
  152. repeat
  153. game:GetService("RunService").Heartbeat:Wait()
  154. if plr:GetMouse().Target ~= nil then
  155. bullet.Position = game:GetService("Players").LocalPlayer:GetMouse().Hit.p
  156. end
  157. until attackingwithhrp == false
  158. end)
  159.  
  160. local MODULE = game:GetObjects("rbxassetid://10446353580")[1]
  161. local CHARACTER = Workspace.non
  162. local PLAYER = game:GetService("Players").LocalPlayer
  163. local HUM = CHARACTER.Humanoid
  164.  
  165.  
  166. local ROOT = HUM.Torso
  167. local HEAD = CHARACTER.Head
  168. local TORSO = CHARACTER.Torso
  169. local RIGHTARM = CHARACTER["Right Arm"]
  170. local LEFTARM = CHARACTER["Left Arm"]
  171. local RIGHTLEG = CHARACTER["Right Leg"]
  172. local LEFTLEG = CHARACTER["Left Leg"]
  173. local ROOTJOINT = ROOT["RootJoint"]
  174. local NECK = TORSO["Neck"]
  175. local RIGHTSHOULDER = TORSO["Right Shoulder"]
  176. local LEFTSHOULDER = TORSO["Left Shoulder"]
  177. local RIGHTHIP = TORSO["Right Hip"]
  178. local LEFTHIP = TORSO["Left Hip"]
  179. local MOUSEPOS = ROOT.Position
  180.  
  181. IT = Instance.new
  182. CF = CFrame.new
  183. VT = Vector3.new
  184. RAD = math.rad
  185. C3 = Color3.new
  186. UD2 = UDim2.new
  187. BRICKC = BrickColor.new
  188. ANGLES = CFrame.Angles
  189. EULER = CFrame.fromEulerAnglesXYZ
  190. COS = math.cos
  191. ACOS = math.acos
  192. SIN = math.sin
  193. ASIN = math.asin
  194. ABS = math.abs
  195. MRANDOM = math.random
  196. FLOOR = math.floor
  197.  
  198. --//====================================================\\--
  199. --|| BACKGROUND VALUES
  200. --\\====================================================//--
  201.  
  202. local ANIM_SPEED = 3
  203. local MOUSE = PLAYER:GetMouse()
  204. local FRAME_SPEED = 1 / 60 -- (1 / 30) OR (1 / 60)
  205. local CHANGE = 2 / ANIM_SPEED
  206. local DAMAGEMULTIPLIER = 1
  207. local ANIM = "Idle"
  208. local KEYHOLD = false
  209. local MOUSEHOLD = false
  210. local SINE = 0
  211. local ATTACKING = false
  212. local Debris = game:GetService("Debris")
  213. local Effects = IT("Folder",CHARACTER)
  214. Effects.Name = "FXFolder"
  215. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  216. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  217. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  218. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  219. local COMBO = 1
  220.  
  221. --//====================================================\\--
  222. --|| HEARTBEAT
  223. --\\====================================================//--
  224.  
  225. ArtificialHB = Instance.new("BindableEvent", script)
  226. ArtificialHB.Name = "ArtificialHB"
  227.  
  228. script:WaitForChild("ArtificialHB")
  229.  
  230. frame = FRAME_SPEED
  231. tf = 0
  232. allowframeloss = false
  233. tossremainder = false
  234. lastframe = tick()
  235. script.ArtificialHB:Fire()
  236.  
  237. game:GetService("RunService").Heartbeat:connect(function(s, p)
  238. tf = tf + s
  239. if tf >= frame then
  240. if allowframeloss then
  241. ArtificialHB:Fire()
  242. lastframe = tick()
  243. else
  244. for i = 1, math.floor(tf / frame) do
  245. ArtificialHB:Fire()
  246. end
  247. lastframe = tick()
  248. end
  249. if tossremainder then
  250. tf = 0
  251. else
  252. tf = tf - frame * math.floor(tf / frame)
  253. end
  254. end
  255. end)
  256.  
  257. function PositiveAngle(NUMBER)
  258. if NUMBER >= 0 then
  259. NUMBER = 0
  260. end
  261. return NUMBER
  262. end
  263.  
  264. function NegativeAngle(NUMBER)
  265. if NUMBER <= 0 then
  266. NUMBER = 0
  267. end
  268. return NUMBER
  269. end
  270.  
  271. function Swait(NUMBER)
  272. if NUMBER == 0 or NUMBER == nil then
  273. ArtificialHB.Event:wait()
  274. else
  275. for i = 1, NUMBER do
  276. ArtificialHB.Event:wait()
  277. end
  278. end
  279. end
  280.  
  281. --//====================================================\\--
  282. --|| CLERP
  283. --\\====================================================//--
  284.  
  285. function QuaternionFromCFrame(cf)
  286. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  287. local trace = m00 + m11 + m22
  288. if trace > 0 then
  289. local s = math.sqrt(1 + trace)
  290. local recip = 0.5 / s
  291. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  292. else
  293. local i = 0
  294. if m11 > m00 then
  295. i = 1
  296. end
  297. if m22 > (i == 0 and m00 or m11) then
  298. i = 2
  299. end
  300. if i == 0 then
  301. local s = math.sqrt(m00 - m11 - m22 + 1)
  302. local recip = 0.5 / s
  303. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  304. elseif i == 1 then
  305. local s = math.sqrt(m11 - m22 - m00 + 1)
  306. local recip = 0.5 / s
  307. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  308. elseif i == 2 then
  309. local s = math.sqrt(m22 - m00 - m11 + 1)
  310. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  311. end
  312. end
  313. end
  314.  
  315. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  316. local xs, ys, zs = x + x, y + y, z + z
  317. local wx, wy, wz = w * xs, w * ys, w * zs
  318. local xx = x * xs
  319. local xy = x * ys
  320. local xz = x * zs
  321. local yy = y * ys
  322. local yz = y * zs
  323. local zz = z * zs
  324. return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
  325. end
  326.  
  327. function QuaternionSlerp(a, b, t)
  328. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  329. local startInterp, finishInterp;
  330. if cosTheta >= 0.0001 then
  331. if (1 - cosTheta) > 0.0001 then
  332. local theta = ACOS(cosTheta)
  333. local invSinTheta = 1 / SIN(theta)
  334. startInterp = SIN((1 - t) * theta) * invSinTheta
  335. finishInterp = SIN(t * theta) * invSinTheta
  336. else
  337. startInterp = 1 - t
  338. finishInterp = t
  339. end
  340. else
  341. if (1 + cosTheta) > 0.0001 then
  342. local theta = ACOS(-cosTheta)
  343. local invSinTheta = 1 / SIN(theta)
  344. startInterp = SIN((t - 1) * theta) * invSinTheta
  345. finishInterp = SIN(t * theta) * invSinTheta
  346. else
  347. startInterp = t - 1
  348. finishInterp = t
  349. end
  350. end
  351. return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
  352. end
  353.  
  354. function Clerp(a, b, t)
  355. local qa = {QuaternionFromCFrame(a)}
  356. local qb = {QuaternionFromCFrame(b)}
  357. local ax, ay, az = a.x, a.y, a.z
  358. local bx, by, bz = b.x, b.y, b.z
  359. local _t = 1 - t
  360. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  361. end
  362.  
  363. --//====================================================\\--
  364. --|| FUNCTIONS
  365. --\\====================================================//--
  366.  
  367. function WeldParts(A,B)
  368. local WLD = IT("ManualWeld")
  369. WLD.Part0 = A
  370. WLD.Part1 = B
  371. WLD.C1 = B.CFrame:inverse() * A.CFrame
  372. WLD.Parent = A
  373. return WLD
  374. end
  375.  
  376. --NewSound({ID = 0,PARENT = ROOT,VOLUME = 0.5,PITCH = 1,LOOP = false,MAXDISTANCE = 1000,EMITTERSIZE = 10,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  377. function NewSound(TABLE)
  378. local ID = "rbxassetid://"..(TABLE.ID or 0)
  379. local PARENT = (TABLE.PARENT or ROOT)
  380. local VOLUME = (TABLE.VOLUME or 0.5)
  381. local PITCH = (TABLE.PITCH or 1)
  382. local LOOP = (TABLE.LOOP or false)
  383. local MAXDISTANCE = (TABLE.MAXDISTANCE or 100)
  384. local EMITTERSIZE = (TABLE.EMITTERSIZE or 10)
  385. local PLAYING = (TABLE.PLAYING or true)
  386. local PLAYONREMOVE = (TABLE.PLAYONREMOVE or false)
  387. local DOESDEBRIS = (TABLE.DOESDEBRIS or true)
  388. if ID ~= "rbxassetid://0" then
  389. local SOUND = IT("Sound",PARENT)
  390. SOUND.SoundId = ID
  391. SOUND.Volume = VOLUME
  392. SOUND.Pitch = PITCH
  393. SOUND.Looped = LOOP
  394. SOUND.MaxDistance = MAXDISTANCE
  395. SOUND.EmitterSize = EMITTERSIZE
  396. SOUND.PlayOnRemove = PLAYONREMOVE
  397. if DOESDEBRIS == true and PLAYING == true and LOOP == false then
  398. Debris:AddItem(SOUND,SOUND.TimeLength+5)
  399. end
  400. if PLAYING == true then
  401. SOUND:Play()
  402. end
  403. return SOUND
  404. end
  405. end
  406.  
  407. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  408. local NEWMESH = IT(MESH)
  409. if MESH == "SpecialMesh" then
  410. NEWMESH.MeshType = MESHTYPE
  411. if MESHID ~= "nil" and MESHID ~= "" then
  412. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  413. end
  414. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  415. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  416. end
  417. end
  418. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  419. NEWMESH.Scale = SCALE
  420. NEWMESH.Parent = PARENT
  421. return NEWMESH
  422. end
  423.  
  424. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  425. local NEWPART = IT("Part")
  426. NEWPART.formFactor = FORMFACTOR
  427. NEWPART.Reflectance = REFLECTANCE
  428. NEWPART.Transparency = TRANSPARENCY
  429. NEWPART.CanCollide = false
  430. NEWPART.Locked = true
  431. NEWPART.Anchored = true
  432. if ANCHOR == false then
  433. NEWPART.Anchored = false
  434. end
  435. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  436. NEWPART.Name = NAME
  437. NEWPART.Size = SIZE
  438. NEWPART.Position = ROOT.Position
  439. NEWPART.Material = MATERIAL
  440. NEWPART:BreakJoints()
  441. NEWPART.Parent = PARENT
  442. return NEWPART
  443. end
  444.  
  445. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  446. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  447. end
  448.  
  449. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
  450. function WACKYEFFECT(Table)
  451. local TYPE = (Table.EffectType or "Sphere")
  452. local SIZE = (Table.Size or VT(1,1,1))
  453. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  454. local TRANSPARENCY = (Table.Transparency or 0)
  455. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  456. local CFRAME = (Table.CFrame or ROOT.CFrame)
  457. local MOVEDIRECTION = (Table.MoveToPos or nil)
  458. local ROTATION1 = (Table.RotationX or 0)
  459. local ROTATION2 = (Table.RotationY or 0)
  460. local ROTATION3 = (Table.RotationZ or 0)
  461. local MATERIAL = (Table.Material or "Neon")
  462. local COLOR = (Table.Color or C3(1,1,1))
  463. local TIME = (Table.Time or 45)
  464. local SOUNDID = (Table.SoundID or nil)
  465. local SOUNDPITCH = (Table.SoundPitch or nil)
  466. local SOUNDVOLUME = (Table.SoundVolume or nil)
  467. local USEBOOMERANGMATH = (Table.UseBoomerangMath or false)
  468. local BOOMERANG = (Table.Boomerang or 0)
  469. local SIZEBOOMERANG = (Table.SizeBoomerang or 0)
  470. coroutine.resume(coroutine.create(function()
  471. local PLAYSSOUND = false
  472. local SOUND = nil
  473. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  474. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  475. PLAYSSOUND = true
  476. SOUND = NewSound({ID = SOUNDID,PARENT = EFFECT,VOLUME = SOUNDVOLUME,PITCH = SOUNDPITCH,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  477. end
  478. EFFECT.Color = COLOR
  479. local MSH = nil
  480. if TYPE == "Sphere" then
  481. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  482. elseif TYPE == "Block" or TYPE == "Box" then
  483. MSH = IT("BlockMesh",EFFECT)
  484. MSH.Scale = SIZE
  485. elseif TYPE == "Wave" then
  486. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  487. elseif TYPE == "Ring" then
  488. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  489. elseif TYPE == "Slash" then
  490. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  491. elseif TYPE == "Round Slash" then
  492. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  493. elseif TYPE == "Swirl" then
  494. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "168892432", "", SIZE, VT(0,0,0))
  495. elseif TYPE == "Skull" then
  496. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  497. elseif TYPE == "Crystal" then
  498. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  499. end
  500. if MSH ~= nil then
  501. local BOOMR1 = 1+BOOMERANG/50
  502. local BOOMR2 = 1+SIZEBOOMERANG/50
  503. local MOVESPEED = nil
  504. if MOVEDIRECTION ~= nil then
  505. if USEBOOMERANGMATH == true then
  506. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)*BOOMR1
  507. else
  508. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)
  509. end
  510. end
  511. local GROWTH = nil
  512. if USEBOOMERANGMATH == true then
  513. GROWTH = (SIZE - ENDSIZE)*(BOOMR2+1)
  514. else
  515. GROWTH = (SIZE - ENDSIZE)
  516. end
  517. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  518. if TYPE == "Block" then
  519. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  520. else
  521. EFFECT.CFrame = CFRAME
  522. end
  523. if USEBOOMERANGMATH == true then
  524. for LOOP = 1, TIME+1 do
  525. Swait()
  526. MSH.Scale = MSH.Scale - (VT((GROWTH.X)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Y)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Z)*((1 - (LOOP/TIME)*BOOMR2)))*BOOMR2)/TIME
  527. if TYPE == "Wave" then
  528. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  529. end
  530. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  531. if TYPE == "Block" then
  532. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  533. else
  534. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  535. end
  536. if MOVEDIRECTION ~= nil then
  537. local ORI = EFFECT.Orientation
  538. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-(MOVESPEED)*((1 - (LOOP/TIME)*BOOMR1)))
  539. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  540. end
  541. end
  542. else
  543. for LOOP = 1, TIME+1 do
  544. Swait()
  545. MSH.Scale = MSH.Scale - GROWTH/TIME
  546. if TYPE == "Wave" then
  547. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  548. end
  549. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  550. if TYPE == "Block" then
  551. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  552. else
  553. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  554. end
  555. if MOVEDIRECTION ~= nil then
  556. local ORI = EFFECT.Orientation
  557. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  558. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  559. end
  560. end
  561. end
  562. EFFECT.Transparency = 1
  563. if PLAYSSOUND == false then
  564. EFFECT:remove()
  565. else
  566. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  567. EFFECT:remove()
  568. end
  569. else
  570. if PLAYSSOUND == false then
  571. EFFECT:remove()
  572. else
  573. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  574. EFFECT:remove()
  575. end
  576. end
  577. end))
  578. end
  579.  
  580. function CameraShake(AREA,RANGE,SHAKE,TIMER)
  581.  
  582. end
  583.  
  584. function Chatter(Text,Timer)
  585. local chat = coroutine.wrap(function()
  586. if CHARACTER:FindFirstChild("SpeechBoard")~= nil then
  587. CHARACTER:FindFirstChild("SpeechBoard"):destroy()
  588. end
  589. local naeeym2 = IT("BillboardGui",CHARACTER)
  590. naeeym2.Size = UD2(0,100,0,40)
  591. naeeym2.StudsOffset = Vector3.new(0,2,0)
  592. naeeym2.Adornee = HEAD
  593. naeeym2.Name = "SpeechBoard"
  594. naeeym2.AlwaysOnTop = true
  595. local tecks2 = IT("TextLabel",naeeym2)
  596. tecks2.BackgroundTransparency = 1
  597. tecks2.BorderSizePixel = 0
  598. tecks2.Text = ""
  599. tecks2.Font = "Legacy"
  600. tecks2.TextSize = 15
  601. tecks2.TextStrokeTransparency = 0
  602. tecks2.TextColor3 = Color3.new(1,1,1)
  603. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  604. tecks2.Size = UDim2.new(1,0,0.5,0)
  605. for i = 1,string.len(Text),1 do
  606. if naeeym2.Parent ~= CHARACTER then
  607. break
  608. end
  609. NewSound({ID = 418252437,PARENT = HEAD,VOLUME = 1,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 75,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  610. tecks2.Text = string.sub(Text,1,i)
  611. wait(Timer)
  612. end
  613. wait(1)
  614. naeeym2:Destroy()
  615. end)
  616. chat()
  617. end
  618.  
  619. function OofOuchBlood(LOCATION,TO,AMOUNT)
  620. local P = CreatePart(3, Effects, "Granite", 0, 1, BRICKC("Pearl"), "Blood", VT(0,0,0), true)
  621. P.CFrame = CF(LOCATION,TO)
  622. local BLOOD = MODULE.Blood:Clone()
  623. BLOOD.Parent = P
  624. BLOOD:Emit(AMOUNT)
  625. Debris:AddItem(P,2)
  626. end
  627.  
  628. function ManSlaughter(MAN)
  629.  
  630. end
  631.  
  632. function AttachmentCFrame(A)
  633. return A.Parent.CFrame*CF(A.Position)
  634. end
  635.  
  636. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  637. local DIRECTION = CF(StartPos,EndPos).lookVector
  638. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  639. end
  640.  
  641. --//====================================================\\--
  642. --|| CHARACTER
  643. --\\====================================================//--
  644.  
  645. local GUN = MODULE.Pistol
  646. GUN.Parent = CHARACTER
  647. GUN.Anchored = false
  648. GUN.CFrame = RIGHTARM.CFrame*CF(0,-1.75,0)*ANGLES(RAD(-90),RAD(90),0)
  649. local GRIP = WeldParts(RIGHTARM,GUN)
  650. GRIP.Parent = nil
  651. GUN.CFrame = RIGHTLEG.CFrame*CF(0.5,0.25,0)*ANGLES(RAD(-90),RAD(90),0)
  652. local PISTOLARMC1 = GRIP.C1
  653. local PISTOLLEGC1 = GUN.CFrame:inverse() * RIGHTLEG.CFrame
  654. GRIP.Parent = RIGHTARM
  655.  
  656. HUM.DisplayDistanceType = "None"
  657. local SHOTGUNMODEL = MODULE.ShotgunThing
  658. local SHOTGUN = SHOTGUNMODEL.Shotgun
  659. SHOTGUNMODEL.Parent = CHARACTER
  660. SHOTGUNMODEL.PrimaryPart = SHOTGUNMODEL.Torso
  661. SHOTGUNMODEL:SetPrimaryPartCFrame(TORSO.CFrame)
  662. local SHOTTORSOWELD = IT("ManualWeld")
  663. SHOTTORSOWELD.Part0 = TORSO
  664. SHOTTORSOWELD.Part1 = SHOTGUN
  665. SHOTTORSOWELD.C1 = SHOTGUN.CFrame:inverse() * TORSO.CFrame
  666. SHOTGUNMODEL.PrimaryPart = SHOTGUNMODEL.Arm
  667. SHOTGUNMODEL:SetPrimaryPartCFrame(RIGHTARM.CFrame)
  668. local SHOTGUNARMWELD = IT("ManualWeld")
  669. SHOTGUNARMWELD.Part0 = RIGHTARM
  670. SHOTGUNARMWELD.Part1 = SHOTGUN
  671. SHOTGUNARMWELD.C1 = SHOTGUN.CFrame:inverse() * RIGHTARM.CFrame
  672. SHOTGUN.Parent = CHARACTER
  673. SHOTGUN.Anchored = false
  674. SHOTGUNMODEL:Remove()
  675. SHOTTORSOWELD.Parent = TORSO
  676. local STATE = "Pistol"
  677.  
  678.  
  679. --//====================================================\\--
  680. --|| ABILITIES
  681. --\\====================================================//--
  682.  
  683. function FireGun()
  684. COMBO = 1
  685. local DETECTKILL = function(HIT,POS,FORCE)
  686.  
  687. end
  688. if GRIP.Parent == RIGHTARM or STATE == "Shotgun" then
  689. ATTACKING = true
  690. local GYRO = IT("BodyGyro")
  691. GYRO.D = 20
  692. GYRO.P = 5000
  693. GYRO.MaxTorque = VT(0,4000000,0)
  694. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  695. GYRO.Parent = ROOT
  696. HUM.WalkSpeed = 5
  697. HUM.JumpPower = 0
  698. if STATE == "Pistol" then
  699. NewSound({ID = 171140306,PARENT = GUN,VOLUME = 1,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 75,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  700. repeat
  701. for i=0, 0.5, 0.1 / ANIM_SPEED do
  702. Swait()
  703. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  704. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), 0.5 / ANIM_SPEED)
  705. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.5 / ANIM_SPEED)
  706. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.65, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(15)) * RIGHTSHOULDERC0, 2 / ANIM_SPEED)
  707. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  708. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  709. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  710. end
  711. WACKYEFFECT({Time = 12, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = CF(AttachmentCFrame(GUN.Nuzzle).p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,0), SoundID = 136523485, SoundPitch = 2, SoundVolume = 2.5})
  712. local HIT,POS = CastProperRay(AttachmentCFrame(GUN.Nuzzle).p,MOUSE.Hit.p,1000,CHARACTER)
  713. local DISTANCE = (POS - AttachmentCFrame(GUN.Nuzzle).p).Magnitude
  714. if HIT then
  715. DETECTKILL(HIT,POS,25)
  716. end
  717. WACKYEFFECT({Time = 8, EffectType = "Box", Size = VT(0,0,DISTANCE), Size2 = VT(0.3,0.3,DISTANCE), Transparency = 0, Transparency2 = 1, CFrame = CF(AttachmentCFrame(GUN.Nuzzle).p,POS)*CF(0,0,-DISTANCE/2), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  718. for i=0, 0.2, 0.1 / ANIM_SPEED do
  719. Swait()
  720. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  721. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.5 / ANIM_SPEED)
  722. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-20)), 0.5 / ANIM_SPEED)
  723. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.70, 0.5, 0.5) * ANGLES(RAD(140), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.15 / ANIM_SPEED)
  724. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  725. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  726. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  727. end
  728. until MOUSEHOLD == false
  729. elseif STATE == "Shotgun" then
  730. for i=0, 0.2, 0.1 / ANIM_SPEED do
  731. Swait()
  732. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  733. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  734. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  735. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0.35, 0.2) * ANGLES(RAD(90), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  736. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, 0.35, -1) * ANGLES(RAD(90), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  737. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  738. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  739. end
  740. CameraShake(AttachmentCFrame(SHOTGUN.Nuzzle).p,20,25,10)
  741. WACKYEFFECT({Time = 18, EffectType = "Block", Size = VT(0,0,0), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = CF(AttachmentCFrame(SHOTGUN.Nuzzle).p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,0), SoundID = 136523485, SoundPitch = 1, SoundVolume = 5})
  742. for i = 1, 6 do
  743. local HIT,POS = CastProperRay(AttachmentCFrame(SHOTGUN.Nuzzle).p,CF(AttachmentCFrame(SHOTGUN.Nuzzle).p,MOUSE.Hit.p)*ANGLES(0,0,RAD(MRANDOM(0,359)))*CF(0,MRANDOM(0,15),-100).p,1000,CHARACTER)
  744. local DISTANCE = (POS - AttachmentCFrame(GUN.Nuzzle).p).Magnitude
  745. if HIT then
  746. DETECTKILL(HIT,POS,75)
  747. end
  748. WACKYEFFECT({Time = 12, EffectType = "Box", Size = VT(0,0,DISTANCE), Size2 = VT(0.3,0.3,DISTANCE), Transparency = 0, Transparency2 = 1, CFrame = CF(AttachmentCFrame(SHOTGUN.Nuzzle).p,POS)*CF(0,0,-DISTANCE/2), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  749. end
  750. for i=0, 1, 0.1 / ANIM_SPEED do
  751. Swait()
  752. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  753. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  754. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0.35, 0.4) * ANGLES(RAD(120), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  755. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, 0.6, -1) * ANGLES(RAD(120), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  756. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  757. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  758. end
  759. end
  760. HUM.WalkSpeed = 13
  761. HUM.JumpPower = 50
  762. GYRO:Remove()
  763. ATTACKING = false
  764. end
  765. end
  766.  
  767. function GunThrow()
  768. COMBO = 1
  769. ATTACKING = true
  770. HUM.WalkSpeed = 5
  771. HUM.JumpPower = 0
  772. if GRIP.Parent == RIGHTARM and STATE == "Pistol" then
  773. local GYRO = IT("BodyGyro")
  774. GYRO.D = 20
  775. GYRO.P = 5000
  776. GYRO.MaxTorque = VT(0,4000000,0)
  777. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  778. GYRO.Parent = ROOT
  779. for i=0, 1, 0.1 / ANIM_SPEED do
  780. Swait()
  781. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.5 / ANIM_SPEED)
  782. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(15)), 0.5 / ANIM_SPEED)
  783. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.45, 0.5, 0.5) * ANGLES(RAD(170), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.8 / ANIM_SPEED)
  784. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  785. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  786. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-60), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  787. end
  788. local INSTANTRESPAWN = false
  789. GRIP.Parent = nil
  790. local HIT,POS = CastProperRay(GUN.Position,MOUSE.Hit.p,200,CHARACTER)
  791. if HIT then
  792. GUN.Parent = Effects
  793. GUN.CFrame = CF(POS+VT(0,0.1,0),ROOT.Position)*CF(0,0,-1)*ANGLES(0,RAD(90),0)
  794. coroutine.resume(coroutine.create(function()
  795. GUN.CanCollide = true
  796. wait(0.7)
  797. while true do
  798. Swait()
  799. if ((ROOT.Position-VT(0,2.5,0) - GUN.Position).Magnitude <= 3 or GUN.Parent ~= Effects) and ATTACKING == false then
  800. break
  801. end
  802. end
  803. ATTACKING = true
  804. HUM.WalkSpeed = 0
  805. HUM.JumpPower = 0
  806. for i=0, 0.3, 0.1 / ANIM_SPEED do
  807. Swait()
  808. ROOT.CFrame = Clerp(ROOT.CFrame,CF(ROOT.Position,VT(GUN.Position.X,ROOT.Position.Y,GUN.Position.Z)),0.2)
  809. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(30), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  810. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  811. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-10)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  812. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-10), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1.5 / ANIM_SPEED)
  813. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, 0, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  814. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.2) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(35)), 1.5 / ANIM_SPEED)
  815. end
  816. NewSound({ID = 169310310,PARENT = GUN,VOLUME = 5,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 75,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  817. GUN.Parent = CHARACTER
  818. GRIP.Parent = RIGHTARM
  819. GUN.CanCollide = false
  820. for i=0, 0.15, 0.1 / ANIM_SPEED do
  821. Swait()
  822. ROOT.CFrame = Clerp(ROOT.CFrame,CF(ROOT.Position,VT(GUN.Position.X,ROOT.Position.Y,GUN.Position.Z)),0.2)
  823. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(30), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  824. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  825. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-10)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  826. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-10), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1.5 / ANIM_SPEED)
  827. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, 0, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  828. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.2) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(35)), 1.5 / ANIM_SPEED)
  829. end
  830. ATTACKING = false
  831. HUM.WalkSpeed = 10
  832. HUM.JumpPower = 50
  833. end))
  834. local BV = IT("BodyVelocity")
  835. BV.MaxForce = BV.MaxForce * 500
  836. BV.Velocity = CF(GUN.Position,ROOT.Position+VT(0,5,0)).lookVector*35
  837. BV.Parent = GUN
  838. GUN.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))/10
  839. Debris:AddItem(BV,0.05)
  840. local HUM = HIT.Parent:FindFirstChildOfClass("Humanoid") or HIT.Parent.Parent:FindFirstChildOfClass("Humanoid")
  841. if HUM then
  842. local TORS = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
  843. if TORS then
  844. TORS.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
  845. local BV = IT("BodyVelocity")
  846. BV.MaxForce = BV.MaxForce * 500
  847. BV.Velocity = CF(GUN.Position,TORS.Position+VT(0,0.5,0)).lookVector*65
  848. BV.Parent = TORS
  849. Debris:AddItem(BV,0.05)
  850. NewSound({ID = 2330778973,PARENT = TORS,VOLUME = 3,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 125,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  851. end
  852. HUM.Health = HUM.Health - 80
  853. HUM.PlatformStand = true
  854. OofOuchBlood(POS,ROOT.Position,5)
  855. if HUM.Health <= 0 then
  856. ManSlaughter(HUM.Parent)
  857. end
  858. end
  859. else
  860. INSTANTRESPAWN = true
  861. GUN.Parent = nil
  862. end
  863. for i=0, 0.35, 0.1 / ANIM_SPEED do
  864. Swait()
  865. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), 2 / ANIM_SPEED)
  866. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 0.5 / ANIM_SPEED)
  867. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.45, 0.5, 0.5) * ANGLES(RAD(45), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2 / ANIM_SPEED)
  868. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  869. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(55), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
  870. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
  871. end
  872. if INSTANTRESPAWN == true then
  873. GUN.Parent = CHARACTER
  874. GRIP.Parent = RIGHTARM
  875. end
  876. GYRO:Remove()
  877. else
  878. HUM.WalkSpeed = 0
  879. for i = 1, 40 do
  880. Swait()
  881. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  882. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(15), RAD(45*SIN(i/4))), 0.5 / ANIM_SPEED)
  883. if STATE == "Pistol" then
  884. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(10 - 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  885. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-10 + 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  886. elseif STATE == "Shotgun" then
  887. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0, 0.3) * ANGLES(RAD(90), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  888. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, 0, -1) * ANGLES(RAD(90), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  889. end
  890. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  891. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  892. end
  893. end
  894. HUM.WalkSpeed = 13
  895. HUM.JumpPower = 50
  896. ATTACKING = false
  897. end
  898.  
  899. function Grenade()
  900. COMBO = 1
  901. ATTACKING = true
  902. coroutine.resume(coroutine.create(function()
  903. repeat
  904. Swait()
  905. if STATE == "Pistol" then
  906. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(10)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  907. --LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-10 + 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  908. elseif STATE == "Shotgun" then
  909. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0, 0.3) * ANGLES(RAD(65), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  910. --LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.25, 0.45, 0.2) * ANGLES(RAD(45), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  911. end
  912. until ATTACKING == false
  913. end))
  914. for i=0, 0.2, 0.1 / ANIM_SPEED do
  915. Swait()
  916. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  917. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  918. --RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(10)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  919. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.25, 0.5, 0.4) * ANGLES(RAD(-15), RAD(0), RAD(45)) * LEFTSHOULDERC0, 1.5 / ANIM_SPEED)
  920. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  921. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  922. end
  923. local GYRO = IT("BodyGyro")
  924. GYRO.D = 20
  925. GYRO.P = 5000
  926. GYRO.MaxTorque = VT(0,4000000,0)
  927. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  928. GYRO.Parent = ROOT
  929. local NADE = CreatePart(3,Effects,"Granite",0,0,"Green","Grenade",VT(0.5, 1, 0.5),false)
  930. CreateMesh("SpecialMesh",NADE,"FileMesh","232379763","232379808",VT(1.5,1.5,1.5),VT(0,0,0))
  931. NADE.CFrame = LEFTARM.CFrame*CF(0,-1.2,0)
  932. local WELD = WeldParts(LEFTARM,NADE)
  933. for i=0, 0.3, 0.1 / ANIM_SPEED do
  934. Swait()
  935. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  936. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.5 / ANIM_SPEED)
  937. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 0.5 / ANIM_SPEED)
  938. --RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(10)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  939. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.75, 0) * ANGLES(RAD(200), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1.25 / ANIM_SPEED)
  940. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  941. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  942. end
  943. for i=0, 0.1, 0.1 / ANIM_SPEED do
  944. Swait()
  945. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  946. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1.25 / ANIM_SPEED)
  947. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.5 / ANIM_SPEED)
  948. --RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(10)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  949. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.25, -0.25) * ANGLES(RAD(25), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1.25 / ANIM_SPEED)
  950. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.25 / ANIM_SPEED)
  951. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.25 / ANIM_SPEED)
  952. end
  953. coroutine.resume(coroutine.create(function()
  954. NewSound({ID = 153647549,PARENT = NADE,VOLUME = 3,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 125,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  955. NADE.CanCollide = true
  956. WELD:Remove()
  957. local FORCE = 50 + (NADE.Position-MOUSE.Hit.p).Magnitude
  958. if FORCE > 300 then
  959. FORCE = 300
  960. end
  961. local BV = IT("BodyVelocity")
  962. BV.MaxForce = BV.MaxForce * 500
  963. BV.Velocity = CF(NADE.Position,MOUSE.Hit.p+VT(0,6,0)).lookVector*FORCE
  964. BV.Parent = NADE
  965. Debris:AddItem(BV,0.05)
  966. local A = IT("Attachment",NADE)
  967. A.Position = VT(0,0.45,0)
  968. local B = IT("Attachment",NADE)
  969. B.Position = VT(0,-0.45,0)
  970. local TRAIL = script.GrenadeTrail:Clone()
  971. TRAIL.Parent = NADE
  972. TRAIL.Attachment0 = A
  973. TRAIL.Attachment1 = B
  974. local BOOM = function()
  975. if NADE.Transparency ~= 1 then
  976. NADE.Anchored = true
  977. NADE.CanCollide = false
  978. NADE.Transparency = 1
  979. Debris:AddItem(NADE,5)
  980. NADE.CFrame = CF(NADE.Position)
  981. NewSound({ID = 142070127,PARENT = NADE,VOLUME = 7,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 300,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  982. for index, CHILD in pairs(script.Grenade:GetChildren()) do
  983. local C = CHILD:Clone()
  984. C.Parent = NADE
  985. C:Emit(125)
  986. end
  987. CameraShake(NADE.Position,35,8.5,170)
  988. for index, CHILD in pairs(workspace:GetChildren()) do
  989. if CHILD:FindFirstChildOfClass("Humanoid") and CHILD ~= CHARACTER then
  990. local HUMAN = CHILD:FindFirstChildOfClass("Humanoid")
  991. local TORS = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  992. if TORS then
  993. if (TORS.Position - NADE.Position).Magnitude <= MRANDOM(20,25) then
  994. NewSound({ID = 150315649,PARENT = TORS,VOLUME = 3,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 125,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  995. OofOuchBlood(TORS.Position,NADE.Position,75)
  996. ManSlaughter(CHILD)
  997. local BV = IT("BodyVelocity")
  998. BV.MaxForce = BV.MaxForce * 500
  999. BV.Velocity = CF(NADE.Position,TORS.Position+VT(0,2,0)).lookVector*MRANDOM(75,100)
  1000. BV.Parent = TORS
  1001. Debris:AddItem(BV,0.1)
  1002. end
  1003. end
  1004. end
  1005. end
  1006. end
  1007. end
  1008. local HIT = NADE.Touched:Connect(function(PART)
  1009. if PART.Parent:FindFirstChildOfClass("Humanoid") and PART.Parent ~= CHARACTER then
  1010. BOOM()
  1011. end
  1012. end)
  1013. wait(2)
  1014. BOOM()
  1015. end))
  1016. for i=0, 0.4, 0.1 / ANIM_SPEED do
  1017. Swait()
  1018. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  1019. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1.25 / ANIM_SPEED)
  1020. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.5 / ANIM_SPEED)
  1021. --RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(10)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  1022. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.25, -0.25) * ANGLES(RAD(25), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1.25 / ANIM_SPEED)
  1023. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.25 / ANIM_SPEED)
  1024. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-55), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.25 / ANIM_SPEED)
  1025. end
  1026. GYRO:Remove()
  1027. ATTACKING = false
  1028. end
  1029.  
  1030. function Recollect()
  1031. if HUM.PlatformStand == true then
  1032. local HITFLOOR,POS = Raycast(ROOT.Position, (CF(ROOT.Position, ROOT.Position + VT(0, -1, 0))).lookVector, 4+HUM.HipHeight, CHARACTER)
  1033. if HITFLOOR then
  1034. ROOT.Anchored = true
  1035. ATTACKING = true
  1036. NewSound({ID = 143384769,PARENT = HEAD,VOLUME = 2,PITCH = MRANDOM(9,11)/15,LOOP = false,MAXDISTANCE = 35,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1037. for i=0, 0.8, 0.1 / ANIM_SPEED do
  1038. Swait()
  1039. ROOT.CFrame = Clerp(ROOT.CFrame,CF(POS+VT(0,2.5,0))*ANGLES(0,RAD(ROOT.Orientation.Y),0),0.2)
  1040. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(30), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  1041. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  1042. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-10)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  1043. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(10)) * LEFTSHOULDERC0, 1.5 / ANIM_SPEED)
  1044. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, 0, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / ANIM_SPEED)
  1045. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.2) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(35)), 1.5 / ANIM_SPEED)
  1046. end
  1047. HUM.PlatformStand = false
  1048. ROOT.Anchored = false
  1049. ATTACKING = false
  1050. end
  1051. end
  1052. end
  1053.  
  1054. function SwitchGuns()
  1055. if STATE == "Pistol" then
  1056. if GRIP.Parent == RIGHTARM then
  1057. GRIP.Parent = RIGHTLEG
  1058. GRIP.Part0 = RIGHTLEG
  1059. GRIP.C1 = PISTOLLEGC1
  1060. SHOTTORSOWELD.Parent = nil
  1061. SHOTGUNARMWELD.Parent = RIGHTARM
  1062. STATE = "Shotgun"
  1063. NewSound({ID = 171140306,PARENT = ROOT,VOLUME = 1,PITCH = MRANDOM(9,11)/15,LOOP = false,MAXDISTANCE = 75,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1064. end
  1065. elseif STATE == "Shotgun" then
  1066. GRIP.Parent = RIGHTARM
  1067. GRIP.Part0 = RIGHTARM
  1068. GRIP.C1 = PISTOLARMC1
  1069. SHOTTORSOWELD.Parent = TORSO
  1070. SHOTGUNARMWELD.Parent = nil
  1071. STATE = "Pistol"
  1072. NewSound({ID = 171140306,PARENT = ROOT,VOLUME = 1,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 75,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1073. end
  1074. end
  1075.  
  1076. function MeleeCombo()
  1077. ATTACKING = true
  1078. HUM.WalkSpeed = 7
  1079. HUM.JumpPower = 0
  1080. local MELEEAREA = function(BEEF,KNOCKBACK)
  1081. local DIDHIT = false
  1082. NewSound({ID = 153647549,PARENT = ROOT,VOLUME = 1,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 125,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1083. for index, CHILD in pairs(workspace:GetChildren()) do
  1084. if CHILD:FindFirstChildOfClass("Humanoid") and CHILD ~= CHARACTER then
  1085. local HUMAN = CHILD:FindFirstChildOfClass("Humanoid")
  1086. local TORS = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  1087. if TORS then
  1088. if (TORS.Position - ROOT.CFrame*CF(0,0,-1.5).p).Magnitude <= 3.25 then
  1089. DIDHIT = true
  1090. NewSound({ID = 2330778973,PARENT = TORS,VOLUME = 3,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 125,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1091. HUMAN.Health = HUMAN.Health - BEEF
  1092. local BV = IT("BodyVelocity")
  1093. BV.MaxForce = BV.MaxForce * 500
  1094. BV.Velocity = CF(ROOT.Position,TORS.Position+VT(0,0.5,0)).lookVector*(KNOCKBACK+(BEEF/2))
  1095. BV.Parent = TORS
  1096. Debris:AddItem(BV,0.05)
  1097. OofOuchBlood(TORS.Position,ROOT.Position,math.ceil(BEEF/4))
  1098. if HUMAN.Health <= 0 then
  1099. ManSlaughter(CHILD)
  1100. end
  1101. end
  1102. end
  1103. end
  1104. end
  1105. if DIDHIT == true then
  1106. CameraShake(ROOT.CFrame*CF(0,0,-1.5).p,4,5,1)
  1107. end
  1108. end
  1109. local GYRO = IT("BodyGyro")
  1110. GYRO.D = 20
  1111. GYRO.P = 5000
  1112. GYRO.MaxTorque = VT(0,4000000,0)
  1113. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  1114. GYRO.Parent = ROOT
  1115. coroutine.resume(coroutine.create(function()
  1116. repeat
  1117. Swait()
  1118. GYRO.CFrame = CF(ROOT.Position,MOUSE.Hit.p)
  1119. if COMBO ~= 3 then
  1120. if STATE == "Pistol" then
  1121. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(10)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1122. --LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-10 + 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1123. elseif STATE == "Shotgun" then
  1124. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0, 0.3) * ANGLES(RAD(65), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1125. --LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.25, 0.45, 0.2) * ANGLES(RAD(45), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1126. end
  1127. end
  1128. until ATTACKING == false
  1129. GYRO:Remove()
  1130. end))
  1131. if COMBO == 1 then
  1132. COMBO = 2
  1133. for i=0, 0.2, 0.1 / ANIM_SPEED do
  1134. Swait()
  1135. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(-30), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1136. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(32), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1137. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-10), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1138. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 2 / ANIM_SPEED)
  1139. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(60)), 0.5 / ANIM_SPEED)
  1140. end
  1141. MELEEAREA(10,7)
  1142. for i=0, 0.35, 0.1 / ANIM_SPEED do
  1143. Swait()
  1144. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(-40), RAD(0), RAD(0)), 1 / ANIM_SPEED)
  1145. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(32), RAD(0), RAD(0)), 1 / ANIM_SPEED)
  1146. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1147. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1148. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(70)), 2.5 / ANIM_SPEED)
  1149. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(70)), 1 / ANIM_SPEED)
  1150. end
  1151. elseif COMBO == 2 then
  1152. COMBO = 3
  1153. for i=0, 0.15, 0.1 / ANIM_SPEED do
  1154. Swait()
  1155. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(35)), 1 / ANIM_SPEED)
  1156. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-35)), 1 / ANIM_SPEED)
  1157. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0.4) * ANGLES(RAD(90), RAD(0), RAD(-45)) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
  1158. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(55), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / ANIM_SPEED)
  1159. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / ANIM_SPEED)
  1160. end
  1161. MELEEAREA(15,15)
  1162. for i=0, 0.2, 0.1 / ANIM_SPEED do
  1163. Swait()
  1164. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), 2 / ANIM_SPEED)
  1165. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1 / ANIM_SPEED)
  1166. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(15)) * LEFTSHOULDERC0, 2 / ANIM_SPEED)
  1167. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
  1168. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
  1169. end
  1170. elseif COMBO == 3 then
  1171. if GRIP.Parent == RIGHTARM or STATE == "Shotgun" then
  1172. for i=0, 0.3, 0.1 / ANIM_SPEED do
  1173. Swait()
  1174. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1.5 / ANIM_SPEED)
  1175. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10), RAD(0), RAD(45)), 0.5 / ANIM_SPEED)
  1176. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.35, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  1177. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1178. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1179. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-57), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1180. end
  1181. MELEEAREA(35,5)
  1182. for i=0, 0.3, 0.1 / ANIM_SPEED do
  1183. Swait()
  1184. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1.5 / ANIM_SPEED)
  1185. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10), RAD(0), RAD(-25)), 0.5 / ANIM_SPEED)
  1186. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.35, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(90)) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  1187. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1188. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1189. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1190. end
  1191. else
  1192. for i=0, 0.15, 0.1 / ANIM_SPEED do
  1193. Swait()
  1194. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1.5 / ANIM_SPEED)
  1195. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10), RAD(0), RAD(45)), 0.5 / ANIM_SPEED)
  1196. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.35, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1.5 / ANIM_SPEED)
  1197. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1198. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1199. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-57), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1200. end
  1201. MELEEAREA(10,17)
  1202. for i=0, 0.3, 0.1 / ANIM_SPEED do
  1203. Swait()
  1204. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1.5 / ANIM_SPEED)
  1205. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10), RAD(0), RAD(-25)), 0.5 / ANIM_SPEED)
  1206. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.35, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(90)) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
  1207. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1208. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1209. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1210. end
  1211. end
  1212. COMBO = 1
  1213. end
  1214. ATTACKING = false
  1215. HUM.WalkSpeed = 13
  1216. HUM.JumpPower = 50
  1217. end
  1218.  
  1219. function Be_A_Dick(KEY)
  1220. HUM.WalkSpeed = 0
  1221. HUM.JumpPower = 0
  1222. ATTACKING = true
  1223. if KEY == "t" then
  1224. NewSound({ID = 1535995263,PARENT = HEAD,VOLUME = 8,PITCH = 1,LOOP = false,MAXDISTANCE = 125,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1225. for i = 1, 70 do
  1226. Swait()
  1227. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1228. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1229. if STATE == "Pistol" then
  1230. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-10), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1231. elseif STATE == "Shotgun" then
  1232. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0, 0.1) * ANGLES(RAD(50), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1233. end
  1234. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.6, 0.25, -1) * ANGLES(RAD(155 + 30 * COS(i / 4)), RAD(0), RAD(15)) * CF(0,-0.25,0) * ANGLES(RAD(0), RAD(90), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1235. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(2), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1236. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(2), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1237. end
  1238. elseif KEY == "y" then
  1239. NewSound({ID = 1535994669,PARENT = HEAD,VOLUME = 8,PITCH = 1,LOOP = false,MAXDISTANCE = 125,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1240. for i = 1, 70 do
  1241. Swait()
  1242. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(40)), 0.5 / ANIM_SPEED)
  1243. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(-40)), 0.5 / ANIM_SPEED)
  1244. if STATE == "Pistol" then
  1245. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-10), RAD(20), RAD(0)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1246. elseif STATE == "Shotgun" then
  1247. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0, 0.1) * ANGLES(RAD(50), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1248. end
  1249. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, -0.1) * ANGLES(RAD(90), RAD(0), RAD(40)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1250. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(40), RAD(0)) * ANGLES(RAD(2), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1251. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(2), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1252. end
  1253. end
  1254. ATTACKING = false
  1255. HUM.WalkSpeed = 13
  1256. HUM.JumpPower = 50
  1257. end
  1258.  
  1259. --//====================================================\\--
  1260. --|| WRAP
  1261. --\\====================================================//--
  1262. MOUSE.Button1Down:connect(function ()
  1263. FireGun()
  1264. end)
  1265. MOUSE.KeyDown:Connect(function(V2)
  1266.  
  1267. if V2 == "z" then
  1268. GunThrow()
  1269. elseif V2 == "q" then
  1270. if HUM.WalkSpeed <= 15 then
  1271. HUM.WalkSpeed = 35
  1272. else
  1273. HUM.WalkSpeed = 13
  1274. end
  1275. elseif V2 == "x" then
  1276. Grenade()
  1277. elseif V2 == "e" then
  1278. if ROOT:FindFirstChild("BGM_MUSIC") then
  1279. ROOT:FindFirstChild("BGM_MUSIC"):Remove()
  1280. else
  1281. local M = NewSound({ID = 2128308112,PARENT = ROOT,VOLUME = 1.5,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1282. M.Name = "BGM_MUSIC"
  1283. end
  1284. elseif V2 == "c" then
  1285. MeleeCombo()
  1286. elseif V2 == "f" then
  1287. SwitchGuns()
  1288. elseif V2 == "t" or V2 == "y" then
  1289. Be_A_Dick(V2)
  1290. end
  1291. end)
  1292.  
  1293. local M = NewSound({ID = 2128308112,PARENT = ROOT,VOLUME = 1.5,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  1294. M.Name = "BGM_MUSIC"
  1295.  
  1296. HUM.WalkSpeed = 13
  1297.  
  1298. while true do
  1299. Swait()
  1300. SINE = SINE + CHANGE
  1301. if CHARACTER:FindFirstChild("Animate") then
  1302. CHARACTER:FindFirstChild("Animate"):Destroy()
  1303. end
  1304. if CHARACTER:FindFirstChild("Sound") then
  1305. CHARACTER:FindFirstChild("Sound"):Destroy()
  1306. end
  1307. for _,v in next, HUM:GetPlayingAnimationTracks() do
  1308. v:Stop();
  1309. end
  1310. local TORSOVELOCITY = (ROOT.Velocity * VT(1, 0, 1)).magnitude
  1311. local TORSOVERTICALVELOCITY = ROOT.Velocity.y
  1312. local HITFLOOR = Raycast(ROOT.Position, (CF(ROOT.Position, ROOT.Position + VT(0, -1, 0))).lookVector, 4+HUM.HipHeight, CHARACTER)
  1313. local WALKSPEEDVALUE = 7-(2*(HUM.WalkSpeed/16))
  1314. if WALKSPEEDVALUE <= 3 then
  1315. WALKSPEEDVALUE = 3
  1316. end
  1317. local SITTING = HUM.Sit
  1318. if ANIM == "Walk" and TORSOVELOCITY > 1 and ATTACKING == false then
  1319. ROOTJOINT.C1 = Clerp(ROOTJOINT.C1, ROOTC0 * CF(0, 0, -0.05 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - ROOT.RotVelocity.Y / 35, RAD(0)), 2 * (HUM.WalkSpeed / 16) / ANIM_SPEED)
  1320. NECK.C1 = Clerp(NECK.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - HEAD.RotVelocity.Y / 30), 0.2 * (HUM.WalkSpeed / 16) / ANIM_SPEED)
  1321. RIGHTHIP.C1 = Clerp(RIGHTHIP.C1, CF(0.5, 0.875 - 0.3 * SIN(SINE / WALKSPEEDVALUE), -0.5 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RIGHTLEG.RotVelocity.Y / 35, RAD(0), RAD((35+HUM.WalkSpeed) * COS(SINE / WALKSPEEDVALUE))), 2 / ANIM_SPEED)
  1322. LEFTHIP.C1 = Clerp(LEFTHIP.C1, CF(-0.5, 0.875 + 0.3 * SIN(SINE / WALKSPEEDVALUE), 0.5 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LEFTLEG.RotVelocity.Y / 35, RAD(0), RAD((35+HUM.WalkSpeed) * COS(SINE / WALKSPEEDVALUE))), 2 / ANIM_SPEED)
  1323. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) or ATTACKING == true then
  1324. ROOTJOINT.C1 = Clerp(ROOTJOINT.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  1325. NECK.C1 = Clerp(NECK.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  1326. RIGHTHIP.C1 = Clerp(RIGHTHIP.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  1327. LEFTHIP.C1 = Clerp(LEFTHIP.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  1328. end
  1329. if SITTING == false then
  1330. if HITFLOOR then
  1331. if TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1332. ANIM = "Idle"
  1333. if ATTACKING == false then
  1334. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -0.02 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), 0.5 / ANIM_SPEED)
  1335. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(15), RAD(-20)), 0.5 / ANIM_SPEED)
  1336. if STATE == "Pistol" then
  1337. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(10 - 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1338. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-10 + 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1339. elseif STATE == "Shotgun" then
  1340. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0, 0.3) * ANGLES(RAD(75), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1341. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, -0.175, -1) * ANGLES(RAD(75), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1342. end
  1343. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1344. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1345. end
  1346. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1347. ANIM = "Walk"
  1348. if ATTACKING == false then
  1349. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -0.05) * ANGLES(RAD(HUM.WalkSpeed/2), RAD(0), RAD(15*COS(SINE / WALKSPEEDVALUE))), 0.25 / ANIM_SPEED)
  1350. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15-HUM.WalkSpeed/2 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(-15*COS(SINE / WALKSPEEDVALUE))), 0.25 / ANIM_SPEED)
  1351. if STATE == "Pistol" then
  1352. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(35 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 0.75 / ANIM_SPEED)
  1353. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.75 / ANIM_SPEED)
  1354. elseif STATE == "Shotgun" then
  1355. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0, 0.3) * ANGLES(RAD(60), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1356. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, -0.25, -1) * ANGLES(RAD(60), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1357. end
  1358. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(90-15*COS(SINE / WALKSPEEDVALUE)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.25 / ANIM_SPEED)
  1359. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90-15*COS(SINE / WALKSPEEDVALUE)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 0.25 / ANIM_SPEED)
  1360. end
  1361. end
  1362. else
  1363. if TORSOVERTICALVELOCITY > 0 then
  1364. ANIM = "Jump"
  1365. if ATTACKING == false then
  1366. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1367. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  1368. if STATE == "Pistol" then
  1369. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-10 - 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1370. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(10 + 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1371. elseif STATE == "Shotgun" then
  1372. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0, 0.3) * ANGLES(RAD(90), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1373. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, 0, -1) * ANGLES(RAD(90), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1374. end
  1375. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -0.9, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.5 / ANIM_SPEED)
  1376. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.5 / ANIM_SPEED)
  1377. end
  1378. else
  1379. ANIM = "Fall"
  1380. if ATTACKING == false then
  1381. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  1382. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  1383. if STATE == "Pistol" then
  1384. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(50 - 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1385. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-50 + 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1386. elseif STATE == "Shotgun" then
  1387. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0, 0.3) * ANGLES(RAD(90), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1388. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, 0, -1) * ANGLES(RAD(90), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1389. end
  1390. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / ANIM_SPEED)
  1391. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / ANIM_SPEED)
  1392. end
  1393. end
  1394. end
  1395. else
  1396. ANIM = "Sit"
  1397. if ATTACKING == false then
  1398. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.25 / ANIM_SPEED)
  1399. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.25 / ANIM_SPEED)
  1400. if STATE == "Pistol" then
  1401. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.65, 0) * ANGLES(RAD(50), RAD(10), RAD(-45))*CF(0,-0.25,0) * RIGHTSHOULDERC0, 1.25 / ANIM_SPEED)
  1402. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.65, 0) * ANGLES(RAD(50), RAD(-10), RAD(45))*CF(0,-0.25,0) * LEFTSHOULDERC0, 1.25 / ANIM_SPEED)
  1403. elseif STATE == "Shotgun" then
  1404. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.1, 0, 0.3) * ANGLES(RAD(90), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  1405. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-0.25, 0, -1) * ANGLES(RAD(90), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  1406. end
  1407. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -0.25, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1.25 / ANIM_SPEED)
  1408. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.25, -1) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-10)), 1.25 / ANIM_SPEED)
  1409. end
  1410. end
  1411. if MRANDOM(1,55) == 1 then
  1412. NECK.C0 = NECK.C0 * ANGLES(RAD(MRANDOM(-5,5)/2), RAD(MRANDOM(-5,5)/2), RAD(MRANDOM(-5,5)/2))
  1413. end
  1414. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement