Advertisement
TheYoutuber_Pro

Duckxd

Mar 13th, 2020
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.00 KB | None | 0 0
  1. --//====================================================\\--
  2. --|| BASIS
  3. --\\====================================================//--
  4. require(3747589551)()
  5. wait (1)
  6. Player = game:GetService("Players").ytjazmir
  7. PlayerGui = Player.PlayerGui
  8. Cam = workspace.CurrentCamera
  9. Backpack = Player.Backpack
  10. Character = Player.Character
  11. local MOUSEHOLD = false
  12. Humanoid = Character.Humanoid
  13. Mouse = Player:GetMouse()
  14. RootPart = Character["HumanoidRootPart"]
  15. Torso = Character["Torso"]
  16. Head = Character["Head"]
  17. RightArm = Character["Right Arm"]
  18. LeftArm = Character["Left Arm"]
  19. RightLeg = Character["Right Leg"]
  20. LeftLeg = Character["Left Leg"]
  21. RootJoint = RootPart["RootJoint"]
  22. Neck = Torso["Neck"]
  23. RightShoulder = Torso["Right Shoulder"]
  24. LeftShoulder = Torso["Left Shoulder"]
  25. RightHip = Torso["Right Hip"]
  26. LeftHip = Torso["Left Hip"]
  27. local MODULE = script["Dual Doom"]
  28. local PLAYER = game:GetService("Players").ytjazmir
  29. local CHARACTER = PLAYER.Character
  30. local HUM = CHARACTER.Humanoid
  31. local REMOTE = MODULE.Event
  32.  
  33. local ROOT = HUM.Torso
  34. local HEAD = CHARACTER.Head
  35. local TORSO = CHARACTER.Torso
  36. local RIGHTARM = CHARACTER["Right Arm"]
  37. local LEFTARM = CHARACTER["Left Arm"]
  38. local RIGHTLEG = CHARACTER["Right Leg"]
  39. local LEFTLEG = CHARACTER["Left Leg"]
  40. local ROOTJOINT = ROOT["RootJoint"]
  41. local NECK = TORSO["Neck"]
  42. local RIGHTSHOULDER = TORSO["Right Shoulder"]
  43. local LEFTSHOULDER = TORSO["Left Shoulder"]
  44. local RIGHTHIP = TORSO["Right Hip"]
  45. local LEFTHIP = TORSO["Left Hip"]
  46. local MOUSEPOS = ROOT.Position
  47.  
  48. IT = Instance.new
  49. CF = CFrame.new
  50. VT = Vector3.new
  51. RAD = math.rad
  52. C3 = Color3.new
  53. UD2 = UDim2.new
  54. BRICKC = BrickColor.new
  55. ANGLES = CFrame.Angles
  56. EULER = CFrame.fromEulerAnglesXYZ
  57. COS = math.cos
  58. ACOS = math.acos
  59. SIN = math.sin
  60. ASIN = math.asin
  61. ABS = math.abs
  62. MRANDOM = math.random
  63. FLOOR = math.floor
  64.  
  65. --//====================================================\\--
  66. --|| FE CODE
  67. --\\====================================================//--
  68.  
  69.  
  70. --//====================================================\\--
  71. --|| BACKGROUND VALUES
  72. --\\====================================================//--
  73.  
  74. local ANIM_SPEED = 3
  75. local MOUSE = PLAYER:GetMouse()
  76. local FRAME_SPEED = 0.1 / 60 -- (1 / 30) OR (1 / 60)
  77. local CHANGE = 14 / ANIM_SPEED
  78. local DAMAGEMULTIPLIER = 1
  79. local ANIM = "Idle"
  80. local KEYHOLD = false
  81. local MOUSEHOLD = false
  82. local SINE = 0
  83. local COMBO = 1
  84. local ATTACKING = false
  85. local Debris = game:GetService("Debris")
  86. local Effects = IT("Folder",CHARACTER)
  87. Effects.Name = "FXFolder"
  88. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  89. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  90. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  91. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  92. local KICKMESSAGES = {
  93. "BYE HAVE A GREAT TIME",
  94. "ow",
  95. "NOBODY TOUCHES SASHA",
  96. "EHWOT",
  97. "YOU JUST GOT YOUR CELLULAR STATE REARRANGED INTO THAT OF A CABBAGE",
  98. "begone",
  99. "THANKS FOR STANDING STILL WANKER",
  100. "You've been kicked, with questionable intentions.",
  101. "AMAI YOU JUST GOT YEETED",
  102. "thanks",
  103. "you hammer ha",
  104. "goth spaghetti",
  105. "GRAVITY IS A HOAX",
  106. "who?",
  107. "THE ETERNAL SPAGHETTI LIVES ON",
  108. "GLORY TO SPACE-CAKES",
  109. "[insert low-quality soldier wheeze here, thanks.]",
  110. "you",
  111. "NO, THIS, WILL, NOT, DO",
  112. "i",
  113. "TFHIEUKJFHNETESTIGHKHESJDTFHNIKUEJDTHGNIUKEJDMG",
  114. "questions",
  115. "[insert funny quote here]",
  116. "I NEVER LEARNED HOW TO READ",
  117. "because you got shot by a gun that shoots hammer which kick, duh.",
  118. "BIG LINCOLN SENDS YOU TO HELL",
  119. "Overjoyed",
  120. "Big Kick Theory",
  121. "I diagnose you with dead"
  122. }
  123.  
  124. --//====================================================\\--
  125. --|| HEARTBEAT
  126. --\\====================================================//--
  127.  
  128. ArtificialHB = Instance.new("BindableEvent", script)
  129. ArtificialHB.Name = "ArtificialHB"
  130.  
  131. script:WaitForChild("ArtificialHB")
  132.  
  133. frame = FRAME_SPEED
  134. tf = 0
  135. allowframeloss = false
  136. tossremainder = false
  137. lastframe = tick()
  138. script.ArtificialHB:Fire()
  139.  
  140. game:GetService("RunService").Heartbeat:connect(function(s, p)
  141. tf = tf + s
  142. if tf >= frame then
  143. if allowframeloss then
  144. ArtificialHB:Fire()
  145. lastframe = tick()
  146. else
  147. for i = 1, math.floor(tf / frame) do
  148. ArtificialHB:Fire()
  149. end
  150. lastframe = tick()
  151. end
  152. if tossremainder then
  153. tf = 0
  154. else
  155. tf = tf - frame * math.floor(tf / frame)
  156. end
  157. end
  158. end)
  159.  
  160. function PositiveAngle(NUMBER)
  161. if NUMBER >= 0 then
  162. NUMBER = 0
  163. end
  164. return NUMBER
  165. end
  166.  
  167. function NegativeAngle(NUMBER)
  168. if NUMBER <= 0 then
  169. NUMBER = 0
  170. end
  171. return NUMBER
  172. end
  173.  
  174. function Swait(NUMBER)
  175. if NUMBER == 0 or NUMBER == nil then
  176. ArtificialHB.Event:wait()
  177. else
  178. for i = 1, NUMBER do
  179. ArtificialHB.Event:wait()
  180. end
  181. end
  182. end
  183.  
  184. --//====================================================\\--
  185. --|| CLERP
  186. --\\====================================================//--
  187.  
  188. function QuaternionFromCFrame(cf)
  189. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  190. local trace = m00 + m11 + m22
  191. if trace > 0 then
  192. local s = math.sqrt(1 + trace)
  193. local recip = 0.5 / s
  194. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  195. else
  196. local i = 0
  197. if m11 > m00 then
  198. i = 1
  199. end
  200. if m22 > (i == 0 and m00 or m11) then
  201. i = 2
  202. end
  203. if i == 0 then
  204. local s = math.sqrt(m00 - m11 - m22 + 1)
  205. local recip = 0.5 / s
  206. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  207. elseif i == 1 then
  208. local s = math.sqrt(m11 - m22 - m00 + 1)
  209. local recip = 0.5 / s
  210. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  211. elseif i == 2 then
  212. local s = math.sqrt(m22 - m00 - m11 + 1)
  213. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  214. end
  215. end
  216. end
  217.  
  218. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  219. local xs, ys, zs = x + x, y + y, z + z
  220. local wx, wy, wz = w * xs, w * ys, w * zs
  221. local xx = x * xs
  222. local xy = x * ys
  223. local xz = x * zs
  224. local yy = y * ys
  225. local yz = y * zs
  226. local zz = z * zs
  227. 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))
  228. end
  229.  
  230. function QuaternionSlerp(a, b, t)
  231. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  232. local startInterp, finishInterp;
  233. if cosTheta >= 0.0001 then
  234. if (1 - cosTheta) > 0.0001 then
  235. local theta = ACOS(cosTheta)
  236. local invSinTheta = 1 / SIN(theta)
  237. startInterp = SIN((1 - t) * theta) * invSinTheta
  238. finishInterp = SIN(t * theta) * invSinTheta
  239. else
  240. startInterp = 1 - t
  241. finishInterp = t
  242. end
  243. else
  244. if (1 + cosTheta) > 0.0001 then
  245. local theta = ACOS(-cosTheta)
  246. local invSinTheta = 1 / SIN(theta)
  247. startInterp = SIN((t - 1) * theta) * invSinTheta
  248. finishInterp = SIN(t * theta) * invSinTheta
  249. else
  250. startInterp = t - 1
  251. finishInterp = t
  252. end
  253. end
  254. 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
  255. end
  256.  
  257. function Clerp(a, b, t)
  258. local qa = {QuaternionFromCFrame(a)}
  259. local qb = {QuaternionFromCFrame(b)}
  260. local ax, ay, az = a.x, a.y, a.z
  261. local bx, by, bz = b.x, b.y, b.z
  262. local _t = 1 - t
  263. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  264. end
  265.  
  266. --//====================================================\\--
  267. --|| FUNCTIONS
  268. --\\====================================================//--
  269.  
  270. function WeldParts(A,B)
  271. local WLD = IT("ManualWeld")
  272. WLD.Part0 = A
  273. WLD.Part1 = B
  274. WLD.C1 = B.CFrame:inverse() * A.CFrame
  275. WLD.Parent = A
  276. return WLD
  277. end
  278.  
  279. --NewSound({ID = 0,PARENT = ROOT,VOLUME = 0.5,PITCH = 1,LOOP = false,MAXDISTANCE = 1000,EMITTERSIZE = 10,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  280. function NewSound(TABLE)
  281. local ID = "rbxassetid://"..(TABLE.ID or 0)
  282. local PARENT = (TABLE.PARENT or ROOT)
  283. local VOLUME = (TABLE.VOLUME or 0.5)
  284. local PITCH = (TABLE.PITCH or 1)
  285. local LOOP = (TABLE.LOOP or false)
  286. local MAXDISTANCE = (TABLE.MAXDISTANCE or 100)
  287. local EMITTERSIZE = (TABLE.EMITTERSIZE or 10)
  288. local PLAYING = (TABLE.PLAYING or true)
  289. local PLAYONREMOVE = (TABLE.PLAYONREMOVE or false)
  290. local DOESDEBRIS = (TABLE.DOESDEBRIS or true)
  291. if ID ~= "rbxassetid://0" then
  292. local SOUND = IT("Sound",PARENT)
  293. SOUND.SoundId = ID
  294. SOUND.Volume = VOLUME
  295. SOUND.Pitch = PITCH
  296. SOUND.Looped = LOOP
  297. SOUND.MaxDistance = MAXDISTANCE
  298. SOUND.EmitterSize = EMITTERSIZE
  299. SOUND.PlayOnRemove = PLAYONREMOVE
  300. if DOESDEBRIS == true and PLAYING == true and LOOP == false then
  301. Debris:AddItem(SOUND,SOUND.TimeLength+5)
  302. end
  303. if PLAYING == true then
  304. SOUND:Play()
  305. end
  306. return SOUND
  307. end
  308. end
  309.  
  310. function ApplyDamageTo(HUM,DAMAGE)
  311. if HUM.Health >= 0 then
  312. HUM:TakeDamage(DAMAGE)
  313. end
  314. end
  315.  
  316. function AreaOfEffect(AREA,RANGE,MIN,MAX,RETURN)
  317. local HIT = {}
  318. for index, CHILD in pairs(workspace:GetChildren()) do
  319. if CHILD:FindFirstChildOfClass("Humanoid") and CHILD ~= CHARACTER then
  320. local HUMAN = CHILD:FindFirstChildOfClass("Humanoid")
  321. local ROOT = HUMAN.Torso
  322. if ROOT then
  323. if (ROOT.Position - AREA).Magnitude <= RANGE then
  324. if RETURN == true then
  325. table.insert(HIT,{CHILD,HUMAN,ROOT})
  326. else
  327. ApplyDamageTo(HUMAN,MRANDOM(MIN,MAX))
  328. end
  329. end
  330. end
  331. end
  332. end
  333. if RETURN == true then
  334. return HIT
  335. end
  336. end
  337.  
  338. function ConnectDamage(PART,MIN,MAX)
  339. local HITS = {}
  340. local TOUCH = PART.Touched:Connect(function(HITP)
  341. if HITP.Parent then
  342. if HITP.Parent:FindFirstChildOfClass("Humanoid") then
  343. local HUMAN = HITP.Parent:FindFirstChildOfClass("Humanoid")
  344. local PASS = true
  345. for E = 1, #HITS do
  346. if HITS[E] == HUMAN then
  347. PASS = false
  348. break
  349. end
  350. end
  351. if PASS == true and HUM ~= HUMAN then
  352. ApplyDamageTo(HUMAN,MRANDOM(MIN,MAX))
  353. table.insert(HITS,HUMAN)
  354. end
  355. end
  356. end
  357. end)
  358. return TOUCH
  359. end
  360.  
  361. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  362. local NEWMESH = IT(MESH)
  363. if MESH == "SpecialMesh" then
  364. NEWMESH.MeshType = MESHTYPE
  365. if MESHID ~= "nil" and MESHID ~= "" then
  366. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  367. end
  368. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  369. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  370. end
  371. end
  372. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  373. NEWMESH.Scale = SCALE
  374. NEWMESH.Parent = PARENT
  375. return NEWMESH
  376. end
  377.  
  378. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  379. local NEWPART = IT("Part")
  380. NEWPART.formFactor = FORMFACTOR
  381. NEWPART.Reflectance = REFLECTANCE
  382. NEWPART.Transparency = TRANSPARENCY
  383. NEWPART.CanCollide = false
  384. NEWPART.Locked = true
  385. NEWPART.Anchored = true
  386. if ANCHOR == false then
  387. NEWPART.Anchored = false
  388. end
  389. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  390. NEWPART.Name = NAME
  391. NEWPART.Size = SIZE
  392. NEWPART.Position = ROOT.Position
  393. NEWPART.Material = MATERIAL
  394. NEWPART:BreakJoints()
  395. NEWPART.Parent = PARENT
  396. return NEWPART
  397. end
  398.  
  399. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  400. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  401. end
  402.  
  403. --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})
  404. function WACKYEFFECT(Table)
  405. local TYPE = (Table.EffectType or "Sphere")
  406. local SIZE = (Table.Size or VT(1,1,1))
  407. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  408. local TRANSPARENCY = (Table.Transparency or 0)
  409. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  410. local CFRAME = (Table.CFrame or ROOT.CFrame)
  411. local MOVEDIRECTION = (Table.MoveToPos or nil)
  412. local ROTATION1 = (Table.RotationX or 0)
  413. local ROTATION2 = (Table.RotationY or 0)
  414. local ROTATION3 = (Table.RotationZ or 0)
  415. local MATERIAL = (Table.Material or "Neon")
  416. local COLOR = (Table.Color or C3(1,1,1))
  417. local TIME = (Table.Time or 45)
  418. local SOUNDID = (Table.SoundID or nil)
  419. local SOUNDPITCH = (Table.SoundPitch or nil)
  420. local SOUNDVOLUME = (Table.SoundVolume or nil)
  421. local USEBOOMERANGMATH = (Table.UseBoomerangMath or false)
  422. local BOOMERANG = (Table.Boomerang or 0)
  423. local SIZEBOOMERANG = (Table.SizeBoomerang or 0)
  424. coroutine.resume(coroutine.create(function()
  425. local PLAYSSOUND = false
  426. local SOUND = nil
  427. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  428. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  429. PLAYSSOUND = true
  430. SOUND = NewSound({ID = SOUNDID,PARENT = EFFECT,VOLUME = SOUNDVOLUME,PITCH = SOUNDPITCH,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  431. end
  432. EFFECT.Color = COLOR
  433. local MSH = nil
  434. if TYPE == "Sphere" then
  435. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  436. elseif TYPE == "Block" or TYPE == "Box" then
  437. MSH = IT("BlockMesh",EFFECT)
  438. MSH.Scale = SIZE
  439. elseif TYPE == "Wave" then
  440. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  441. elseif TYPE == "Ring" then
  442. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  443. elseif TYPE == "Slash" then
  444. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  445. elseif TYPE == "Round Slash" then
  446. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  447. elseif TYPE == "Swirl" then
  448. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "168892432", "", SIZE, VT(0,0,0))
  449. elseif TYPE == "Skull" then
  450. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  451. elseif TYPE == "Crystal" then
  452. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  453. end
  454. if MSH ~= nil then
  455. local BOOMR1 = 1+BOOMERANG/50
  456. local BOOMR2 = 1+SIZEBOOMERANG/50
  457. local MOVESPEED = nil
  458. if MOVEDIRECTION ~= nil then
  459. if USEBOOMERANGMATH == true then
  460. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)*BOOMR1
  461. else
  462. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)
  463. end
  464. end
  465. local GROWTH = nil
  466. if USEBOOMERANGMATH == true then
  467. GROWTH = (SIZE - ENDSIZE)*(BOOMR2+1)
  468. else
  469. GROWTH = (SIZE - ENDSIZE)
  470. end
  471. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  472. if TYPE == "Block" then
  473. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  474. else
  475. EFFECT.CFrame = CFRAME
  476. end
  477. if USEBOOMERANGMATH == true then
  478. for LOOP = 1, TIME+1 do
  479. Swait()
  480. 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
  481. if TYPE == "Wave" then
  482. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  483. end
  484. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  485. if TYPE == "Block" then
  486. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  487. else
  488. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  489. end
  490. if MOVEDIRECTION ~= nil then
  491. local ORI = EFFECT.Orientation
  492. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-(MOVESPEED)*((1 - (LOOP/TIME)*BOOMR1)))
  493. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  494. end
  495. end
  496. else
  497. for LOOP = 1, TIME+1 do
  498. Swait()
  499. MSH.Scale = MSH.Scale - GROWTH/TIME
  500. if TYPE == "Wave" then
  501. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  502. end
  503. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  504. if TYPE == "Block" then
  505. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  506. else
  507. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  508. end
  509. if MOVEDIRECTION ~= nil then
  510. local ORI = EFFECT.Orientation
  511. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  512. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  513. end
  514. end
  515. end
  516. EFFECT.Transparency = 1
  517. if PLAYSSOUND == false then
  518. EFFECT:remove()
  519. else
  520. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  521. EFFECT:remove()
  522. end
  523. else
  524. if PLAYSSOUND == false then
  525. EFFECT:remove()
  526. else
  527. repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  528. EFFECT:remove()
  529. end
  530. end
  531. end))
  532. end
  533.  
  534. function CameraShake(AREA,RANGE,SHAKE,TIMER)
  535. for index, CHILD in pairs(workspace:GetChildren()) do
  536. if CHILD:FindFirstChildOfClass("Humanoid") then
  537. local HUMAN = CHILD:FindFirstChildOfClass("Humanoid")
  538. local ROOT = HUMAN.Torso
  539. if ROOT then
  540. if (ROOT.Position - AREA).Magnitude <= RANGE then
  541. if CHILD:FindFirstChild("CamShake") then
  542. CHILD:FindFirstChild("CamShake"):Remove()
  543. end
  544. local SHAKE = script.CamShake:Clone()
  545. SHAKE.Parent = CHILD
  546. local TIMER_V = IT("NumberValue",SHAKE)
  547. TIMER_V.Name = "Timer"
  548. TIMER_V.Value = TIMER
  549. local SHAKE_V = IT("NumberValue",SHAKE)
  550. SHAKE_V.Name = "Shake"
  551. SHAKE_V.Value = SHAKE
  552. SHAKE.Disabled = false
  553. Debris:AddItem(SHAKE,TIMER)
  554. end
  555. end
  556. end
  557. end
  558. end
  559.  
  560. function Chatter(Text,Timer)
  561. local chat = coroutine.wrap(function()
  562. if CHARACTER:FindFirstChild("SpeechBoard")~= nil then
  563. CHARACTER:FindFirstChild("SpeechBoard"):destroy()
  564. end
  565. local naeeym2 = IT("BillboardGui",CHARACTER)
  566. naeeym2.Size = UD2(0,100,0,40)
  567. naeeym2.StudsOffset = Vector3.new(0,2,0)
  568. naeeym2.Adornee = HEAD
  569. naeeym2.Name = "SpeechBoard"
  570. naeeym2.AlwaysOnTop = true
  571. local tecks2 = IT("TextLabel",naeeym2)
  572. tecks2.BackgroundTransparency = 1
  573. tecks2.BorderSizePixel = 0
  574. tecks2.Text = ""
  575. tecks2.Font = "Arcade"
  576. tecks2.TextSize = 222
  577. tecks2.TextStrokeTransparency = 0
  578. tecks2.TextColor3 = Color3.new(1,1,1)
  579. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  580. tecks2.Size = UDim2.new(1,0,0.5,0)
  581. for i = 1,string.len(Text),1 do
  582. if naeeym2.Parent ~= CHARACTER then
  583. break
  584. end
  585. NewSound({ID = 1205457048,PARENT = HEAD,VOLUME = 1,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 75,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  586. tecks2.Text = string.sub(Text,1,i)
  587. wait(Timer)
  588. end
  589. wait(1)
  590. naeeym2:Destroy()
  591. end)
  592. chat()
  593. end
  594.  
  595. --//====================================================\\--
  596. --|| STUFF
  597. --\\====================================================//--
  598.  
  599. local RIGHTGUN = script.GunModel:Clone()
  600. RIGHTGUN.Parent = CHARACTER
  601. RIGHTGUN:SetPrimaryPartCFrame(RIGHTARM.CFrame)
  602. RIGHTGUN.PrimaryPart:Remove()
  603. local RHAMMER = RIGHTGUN.Hammer
  604. RHAMMER.CFrame = RHAMMER.CFrame*ANGLES(0,0,RAD(180))
  605. for index, CHILD in pairs(RIGHTGUN:GetChildren()) do
  606. CHILD.Anchored = false
  607. WeldParts(RIGHTARM,CHILD)
  608. end
  609. local LEFTGUN = script.GunModel:Clone()
  610. LEFTGUN.Parent = CHARACTER
  611. LEFTGUN:SetPrimaryPartCFrame(LEFTARM.CFrame)
  612. LEFTGUN.PrimaryPart:Remove()
  613. local LHAMMER = LEFTGUN.Hammer
  614. for index, CHILD in pairs(LEFTGUN:GetChildren()) do
  615. CHILD.Anchored = false
  616. WeldParts(LEFTARM,CHILD)
  617. end
  618. script.GunModel:Remove()
  619.  
  620. --//====================================================\\--
  621. --|| ABILITIES
  622. --\\====================================================//--
  623.  
  624. Player_Size = 1 --Size of the player.
  625. Animation_Speed = 3
  626. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  627.  
  628. local Speed1 = 30
  629. local Speed = 16
  630. local Effects2 = {}
  631.  
  632. function FIRE_IN_THE_HOLE()
  633. ATTACKING = true
  634. coroutine.resume(coroutine.create(function()
  635. local GYRO = IT("BodyGyro")
  636. GYRO.D = 20
  637. GYRO.P = 5000
  638. GYRO.MaxTorque = VT(0,4000000,0)
  639. GYRO.CFrame = CF(ROOT.Position,Mouse.Hit.p)
  640. GYRO.Parent = ROOT
  641. repeat
  642. Swait()
  643. GYRO.CFrame = CF(ROOT.Position,Mouse.Hit.p)
  644. until ATTACKING == false
  645. GYRO:Remove()
  646. end))
  647. local FIRE = function(HAMMER)
  648. local PROJECTILE = HAMMER:Clone()
  649. local F = NewSound({ID = 159490394,PARENT = PROJECTILE,VOLUME = 1,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 1000,EMITTERSIZE = 50,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  650. local C = CF(HAMMER.Position,Mouse.Hit.p)
  651. PROJECTILE.CFrame = C*CFrame.new(0,0,-1.5)*CFrame.Angles(math.rad(180),0,math.rad(-90))
  652. PROJECTILE.CanCollide = true
  653. PROJECTILE.Parent = workspace
  654. local MOVE = IT("BodyVelocity")
  655. MOVE.Velocity = C.lookVector*250
  656. MOVE.Parent = PROJECTILE
  657. MOVE.MaxForce = VT(500000,500000,500000)
  658. Debris:AddItem(PROJECTILE,20)
  659. KICKOCLOCK = PROJECTILE.Touched:Connect(function(HIT)
  660. if HIT.Parent then
  661. if HIT.Parent:FindFirstChildOfClass("Humanoid") then
  662. F:Remove()
  663. KICKOCLOCK:Disconnect()
  664. MOVE:Remove()
  665. PROJECTILE.Velocity = VT(0,0,0)
  666. local TORS = HIT.Parent:FindFirstChildOfClass("Humanoid").Torso
  667. if TORS then
  668. if game.Players:GetPlayerFromCharacter(HIT.Parent) ~= Player then
  669. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(4,4,4), Size2 = VT(15,15,15), Transparency = 0, Transparency2 = 1, CFrame = CF(TORS.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 147722910, SoundPitch = 1, SoundVolume = 5, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 50})
  670. if game.Players:GetPlayerFromCharacter(HIT.Parent) then
  671. local MSG = KICKMESSAGES[MRANDOM(1,#KICKMESSAGES)]
  672. Chatter(MSG)
  673. game.Players:GetPlayerFromCharacter(HIT.Parent):Kick(MSG)
  674. end
  675. local MSG = KICKMESSAGES[MRANDOM(1,#KICKMESSAGES)]
  676. Chatter(MSG)
  677. HIT.Parent:Remove()
  678. end
  679. end
  680. elseif HIT.CanCollide == true or HIT.Anchored == true then
  681. F:Remove()
  682. KICKOCLOCK:Disconnect()
  683. MOVE:Remove()
  684. end
  685. end
  686. end)
  687. end
  688. repeat
  689. if COMBO == 1 then
  690. COMBO = 2
  691. for i=0, 0.25, 0.1 / Animation_Speed do
  692. Swait()
  693. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  694. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35+MRANDOM(-10,10)), RAD(MRANDOM(-10,10)), RAD(MRANDOM(-10,10))), 0.5 / Animation_Speed)
  695. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(-40), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  696. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145 - 45 * SIN(SINE / 12)), RAD(0), RAD(-45+MRANDOM(-5,5))) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  697. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  698. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65+MRANDOM(-10,10)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  699. end
  700. FIRE(RHAMMER)
  701. RHAMMER.Kick.Enabled = false
  702. RHAMMER.Transparency = 1
  703. for i=0, 0.15, 0.1 / Animation_Speed do
  704. Swait()
  705. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  706. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35+MRANDOM(-10,10)), RAD(MRANDOM(-10,10)), RAD(MRANDOM(-10,10))), 0.5 / Animation_Speed)
  707. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(-40), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  708. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145 - 45 * SIN(SINE / 12)), RAD(0), RAD(-45+MRANDOM(-5,5))) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  709. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  710. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65+MRANDOM(-10,10)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  711. end
  712. RHAMMER.Kick.Enabled = true
  713. RHAMMER.Transparency = 0
  714. elseif COMBO == 2 then
  715. COMBO = 1
  716. for i=0, 0.25, 0.1 / Animation_Speed do
  717. Swait()
  718. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  719. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35+MRANDOM(-10,10)), RAD(MRANDOM(-10,10)), RAD(MRANDOM(-10,10))), 0.5 / Animation_Speed)
  720. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(145 + 45 * SIN(SINE / 12)), RAD(0), RAD(45+MRANDOM(-5,5))) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  721. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(50), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  722. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  723. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65+MRANDOM(-10,10)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  724. end
  725. FIRE(LHAMMER)
  726. LHAMMER.Kick.Enabled = false
  727. LHAMMER.Transparency = 1
  728. for i=0, 0.15, 0.1 / Animation_Speed do
  729. Swait()
  730. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  731. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35+MRANDOM(-10,10)), RAD(MRANDOM(-10,10)), RAD(MRANDOM(-10,10))), 0.5 / Animation_Speed)
  732. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(145 + 45 * SIN(SINE / 12)), RAD(0), RAD(45+MRANDOM(-5,5))) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  733. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(50), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  734. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  735. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65+MRANDOM(-10,10)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  736. end
  737. LHAMMER.Kick.Enabled = true
  738. LHAMMER.Transparency = 0
  739. end
  740. until MOUSEHOLD == false
  741. ATTACKING = false
  742. end
  743.  
  744. function England()
  745. ATTACKING = true
  746. Chatter(KICKMESSAGES[MRANDOM(1,#KICKMESSAGES)])
  747. for i = 1, 100 do
  748. Swait()
  749. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  750. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  751. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))) * RIGHTSHOULDERC0, 2 / ANIM_SPEED)
  752. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))) * LEFTSHOULDERC0, 2 / ANIM_SPEED)
  753. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  754. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  755. end
  756. ATTACKING = false
  757. end
  758.  
  759. --//====================================================\\--
  760. --|| WRAP
  761. --\\====================================================//--
  762.  
  763. REMOTE.OnServerEvent:Connect(function(PLR,V1,V2)
  764. if PLR == PLAYER then
  765. --if V1 == "MousePositionUpdate" then
  766. --MOUSEPOS = V2
  767. if V1 == "KeyUp" then
  768. KEYHOLD = false
  769. elseif V1 == "MouseUp" then
  770. MOUSEHOLD = false
  771. end
  772. if ATTACKING == false then
  773. if V1 == "MouseDown" then
  774. MOUSEHOLD = true
  775. FIRE_IN_THE_HOLE()
  776. elseif V1 == "KeyDown" then
  777. KEYHOLD = true
  778. if V2 == "e" then
  779. if ROOT:FindFirstChild("BGM_MUSIC") then
  780. ROOT:FindFirstChild("BGM_MUSIC"):Remove()
  781. else
  782. local M = NewSound({ID = 322621962,PARENT = ROOT,VOLUME = 1.5,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  783. M.Name = "BGM_MUSIC"
  784. end
  785. elseif V2 == "t" then
  786. England()
  787. end
  788. end
  789. end
  790. end
  791. end)
  792. local M = NewSound({ID = 322621962,PARENT = ROOT,VOLUME = 1.5,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
  793. M.Name = "BGM_MUSIC"
  794.  
  795. HUM.HealthChanged:Connect(function()
  796. HUM.PlatformStand = false
  797. HUM.MaxHealth = 3000
  798. HUM.Health = 3000
  799. HUM.Name = PLAYER.UserId
  800. HUM.WalkSpeed = 75
  801. end)
  802. HUM.WalkSpeed = 75
  803. HUM.JumpPower = 165
  804. script.Parent = PLAYER.Backpack
  805. while true do
  806. Swait()
  807. SINE = SINE + CHANGE
  808. if CHARACTER:FindFirstChild("Animate") then
  809. CHARACTER:FindFirstChild("Animate"):Destroy()
  810. end
  811. if CHARACTER:FindFirstChild("Sound") then
  812. CHARACTER:FindFirstChild("Sound"):Destroy()
  813. end
  814. local TORSOVELOCITY = (ROOT.Velocity * VT(1, 0, 1)).magnitude
  815. local TORSOVERTICALVELOCITY = ROOT.Velocity.y
  816. local HITFLOOR = Raycast(ROOT.Position, (CF(ROOT.Position, ROOT.Position + VT(0, -1, 0))).lookVector, 4+HUM.HipHeight, CHARACTER)
  817. local WALKSPEEDVALUE = 2
  818. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  819. 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 / ANIM_SPEED)
  820. 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.8/ ANIM_SPEED)
  821. 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(175 * COS(SINE / WALKSPEEDVALUE))), 0.6 / ANIM_SPEED)
  822. 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(175 * COS(SINE / WALKSPEEDVALUE))), 0.6 / ANIM_SPEED)
  823. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  824. ROOTJOINT.C1 = Clerp(ROOTJOINT.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  825. 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)
  826. 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)
  827. 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)
  828. end
  829. if HITFLOOR then
  830. if TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  831. ANIM = "Idle"
  832. if ATTACKING == false then
  833. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0 + 0.2 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  834. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35+MRANDOM(-10,10)), RAD(MRANDOM(-10,10)), RAD(MRANDOM(-10,10))), 0.5 / ANIM_SPEED)
  835. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(145 + 45 * SIN(SINE / 12)), RAD(0), RAD(45+MRANDOM(-5,5))) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  836. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145 - 45 * SIN(SINE / 12)), RAD(0), RAD(-45+MRANDOM(-5,5))) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  837. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  838. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1 - 0.2 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65+MRANDOM(-10,10)), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  839. end
  840. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  841. ANIM = "Walk"
  842. if ATTACKING == false then
  843. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, -0.2) * ANGLES(RAD(-45), RAD(0), RAD(0)), 0.25 / ANIM_SPEED)
  844. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-75 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.25 / ANIM_SPEED)
  845. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(200), RAD(-15), RAD(35)) * RIGHTSHOULDERC0, 0.75 / ANIM_SPEED)
  846. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(200), RAD(15), RAD(-35)) * LEFTSHOULDERC0, 0.75 / ANIM_SPEED)
  847. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / ANIM_SPEED)
  848. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / ANIM_SPEED)
  849. end
  850. end
  851. else
  852. if TORSOVERTICALVELOCITY > 0 then
  853. ANIM = "Jump"
  854. if ATTACKING == false then
  855. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
  856. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / ANIM_SPEED)
  857. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
  858. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
  859. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -0.3, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.5 / ANIM_SPEED)
  860. 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)
  861. end
  862. else
  863. ANIM = "Fall"
  864. if ATTACKING == false then
  865. ROOTJOINT.C0 = Clerp(ROOTJOINT.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  866. NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  867. RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))) * RIGHTSHOULDERC0, 2 / ANIM_SPEED)
  868. LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))) * LEFTSHOULDERC0, 2 / ANIM_SPEED)
  869. RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  870. LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350)), RAD(MRANDOM(0,350))), 2 / ANIM_SPEED)
  871. end
  872. end
  873. end
  874. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement