Upscalefanatic3

(Roblox) [FE} Shackluster Script

Jun 15th, 2020
205
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function LoadLibrary(a)
  2. return loadstring(game:HttpGet("https://pastebin.com/raw/UfzKgS6T", true))()
  3. end
  4.  
  5. loadstring(game:GetObjects("rbxassetid://4480871791")[1].Source)()
  6.  
  7. --//====================================================\\--
  8. --|| CREATED BY SHACKLUSTER
  9. --\\====================================================//--
  10.  
  11.  
  12.  
  13. wait(0.2)
  14.  
  15.  
  16.  
  17. Player = game:GetService("Players").LocalPlayer
  18. PlayerGui = Player.PlayerGui
  19. Cam = workspace.CurrentCamera
  20. Backpack = Player.Backpack
  21. Character = workspace.CloneCharacter
  22. Humanoid = Character.Humanoid
  23. Mouse = Player:GetMouse()
  24. RootPart = Character["HumanoidRootPart"]
  25. Torso = Character["Torso"]
  26. Head = Character["Head"]
  27. RightArm = Character["Right Arm"]
  28. LeftArm = Character["Left Arm"]
  29. RightLeg = Character["Right Leg"]
  30. LeftLeg = Character["Left Leg"]
  31. RootJoint = RootPart["RootJoint"]
  32. Neck = Torso["Neck"]
  33. RightShoulder = Torso["Right Shoulder"]
  34. LeftShoulder = Torso["Left Shoulder"]
  35. RightHip = Torso["Right Hip"]
  36. LeftHip = Torso["Left Hip"]
  37.  
  38. IT = Instance.new
  39. CF = CFrame.new
  40. VT = Vector3.new
  41. RAD = math.rad
  42. C3 = Color3.new
  43. UD2 = UDim2.new
  44. BRICKC = BrickColor.new
  45. ANGLES = CFrame.Angles
  46. EULER = CFrame.fromEulerAnglesXYZ
  47. COS = math.cos
  48. ACOS = math.acos
  49. SIN = math.sin
  50. ASIN = math.asin
  51. ABS = math.abs
  52. MRANDOM = math.random
  53. FLOOR = math.floor
  54.  
  55. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  56. local NEWMESH = IT(MESH)
  57. if MESH == "SpecialMesh" then
  58. NEWMESH.MeshType = MESHTYPE
  59. if MESHID ~= "nil" and MESHID ~= "" then
  60. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  61. end
  62. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  63. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  64. end
  65. end
  66. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  67. NEWMESH.Scale = SCALE
  68. NEWMESH.Parent = PARENT
  69. return NEWMESH
  70. end
  71.  
  72. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
  73. local NEWPART = IT("Part")
  74. NEWPART.formFactor = FORMFACTOR
  75. NEWPART.Reflectance = REFLECTANCE
  76. NEWPART.Transparency = TRANSPARENCY
  77. NEWPART.CanCollide = false
  78. NEWPART.Locked = true
  79. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  80. NEWPART.Name = NAME
  81. NEWPART.Size = SIZE
  82. NEWPART.Position = Torso.Position
  83. NEWPART.Material = MATERIAL
  84. NEWPART:BreakJoints()
  85. NEWPART.Parent = PARENT
  86. return NEWPART
  87. end
  88.  
  89.  
  90. --//=================================\\
  91. --|| CUSTOMIZATION
  92. --\\=================================//
  93.  
  94. Class_Name = "Sharpshooter"
  95. Weapon_Name = "Add-ons"
  96.  
  97. Custom_Color_1 = BRICKC("Really black"); --1st color for the weapon.
  98. Custom_Color_2 = BRICKC("Maroon"); --2nd color for the weapon.
  99.  
  100. Custom_Color_3 = BRICKC("Really red"); --Color for the abilities.
  101. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  102. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  103. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  104. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  105.  
  106. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  107. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  108. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  109. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  110. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  111.  
  112.  
  113. Player_Size = 1 --Size of the player.
  114. Animation_Speed = 3
  115. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  116.  
  117. local Speed = 16
  118. local Effects2 = {}
  119.  
  120. --//=================================\\
  121. --|| END OF CUSTOMIZATION
  122. --\\=================================//
  123.  
  124. local function weldBetween(a, b)
  125. local weldd = Instance.new("ManualWeld")
  126. weldd.Part0 = a
  127. weldd.Part1 = b
  128. weldd.C0 = CFrame.new()
  129. weldd.C1 = b.CFrame:inverse() * a.CFrame
  130. weldd.Parent = a
  131. return weldd
  132. end
  133.  
  134. function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
  135. local acs = Instance.new("Part")
  136. acs.CanCollide = false
  137. acs.Anchored = false
  138. acs.Size = Vector3.new(0,0,0)
  139. acs.CFrame = attachmentpart.CFrame
  140. acs.Parent = Character
  141. acs.BrickColor = color
  142. local meshs = Instance.new("SpecialMesh")
  143. meshs.MeshId = mesh
  144. meshs.TextureId = texture
  145. meshs.Parent = acs
  146. meshs.Scale = scale
  147. meshs.Offset = offset
  148. weldBetween(attachmentpart,acs)
  149. end
  150.  
  151. function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
  152. if TYPE == "Gem" then
  153. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  154. acs.Anchored = false
  155. acs.CanCollide = false
  156. acs.CFrame = PART.CFrame
  157. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
  158. weldBetween(PART,acs)
  159. elseif TYPE == "Skull" then
  160. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  161. acs.Anchored = false
  162. acs.CanCollide = false
  163. acs.CFrame = PART.CFrame
  164. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
  165. weldBetween(PART,acs)
  166. elseif TYPE == "Eye" then
  167. local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  168. acs.Anchored = false
  169. acs.CanCollide = false
  170. acs.CFrame = PART.CFrame
  171. local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
  172. weldBetween(PART,acs)
  173. end
  174. end
  175.  
  176. createaccessory(Head,"rbxassetid://151313536","rbxassetid://188595215",VT(2.5,2.5,2.5),VT(0, 0.7, 0.2),BRICKC"Really black")
  177.  
  178. --//=================================\\
  179. --|| USEFUL VALUES
  180. --\\=================================//
  181.  
  182. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  183. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  184. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  185. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  186. local CO1 = 0
  187. local CO2 = 0
  188. local CO3 = 0
  189. local CO4 = 0
  190. local CHANGEDEFENSE = 0
  191. local CHANGEDAMAGE = 0
  192. local CHANGEMOVEMENT = 0
  193. local ANIM = "Idle"
  194. local ATTACK = false
  195. local EQUIPPED = false
  196. local HOLD = false
  197. local COMBO = 1
  198. local LASTPOINT = nil
  199. local BLCF = nil
  200. local SCFR = nil
  201. local STAGGERHITANIM = false
  202. local STAGGERANIM = false
  203. local SPRINTING = false
  204. local STUNANIM = false
  205. local CRITCHANCENUMBER = 0
  206. local IDLENUMBER = 0
  207. local DONUMBER = 0
  208. local HANDIDLE = false
  209. local SINE = 0
  210. local CHANGE = 2 / Animation_Speed
  211. local WALKINGANIM = false
  212. local WALK = 0
  213. local DISABLEJUMPING = false
  214. local HASBEENBLOCKED = false
  215. local STUNDELAYNUMBER = 0
  216. local MANADELAYNUMBER = 0
  217. local SECONDARYMANADELAYNUMBER = 0
  218. local KEYHOLD = false
  219. local ROBLOXIDLEANIMATION = IT("Animation")
  220. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  221. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  222. --ROBLOXIDLEANIMATION.Parent = Humanoid
  223. local WEAPONGUI = IT("ScreenGui", nil)
  224. WEAPONGUI.Name = "Weapon GUI"
  225. local WEAPONTOOL = IT("HopperBin", nil)
  226. WEAPONTOOL.Name = Weapon_Name
  227. local Weapon = IT("Model")
  228. Weapon.Name = Weapon_Name
  229. local Effects = IT("Folder", Weapon)
  230. Effects.Name = "Effects"
  231. local ANIMATOR = Humanoid.Animator
  232. local ANIMATE = Character.Animate
  233. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  234. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  235. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  236. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  237. local UNANCHOR = true
  238.  
  239. --//=================================\\
  240. --\\=================================//
  241.  
  242.  
  243.  
  244.  
  245. --//=================================\\
  246. --|| DEBUFFS / BUFFS
  247. --\\=================================//
  248.  
  249. local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
  250. DEFENSECHANGE1.Name = "ChangeDefense"
  251. DEFENSECHANGE1.Value = 0
  252.  
  253. local MOVEMENTCHANGE1 = IT("NumberValue", nil)
  254. MOVEMENTCHANGE1.Name = "ChangeMovement"
  255. MOVEMENTCHANGE1.Value = 0
  256.  
  257. --//=================================\\
  258. --\\=================================//
  259.  
  260.  
  261.  
  262.  
  263.  
  264. --//=================================\\
  265. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  266. --\\=================================//
  267.  
  268. ArtificialHB = Instance.new("BindableEvent", script)
  269. ArtificialHB.Name = "ArtificialHB"
  270.  
  271. script:WaitForChild("ArtificialHB")
  272.  
  273. frame = Frame_Speed
  274. tf = 0
  275. allowframeloss = false
  276. tossremainder = false
  277. lastframe = tick()
  278. script.ArtificialHB:Fire()
  279.  
  280. game:GetService("RunService").Heartbeat:connect(function(s, p)
  281. tf = tf + s
  282. if tf >= frame then
  283. if allowframeloss then
  284. script.ArtificialHB:Fire()
  285. lastframe = tick()
  286. else
  287. for i = 1, math.floor(tf / frame) do
  288. script.ArtificialHB:Fire()
  289. end
  290. lastframe = tick()
  291. end
  292. if tossremainder then
  293. tf = 0
  294. else
  295. tf = tf - frame * math.floor(tf / frame)
  296. end
  297. end
  298. end)
  299.  
  300. --//=================================\\
  301. --\\=================================//
  302.  
  303.  
  304.  
  305.  
  306.  
  307. --//=================================\\
  308. --|| SOME FUNCTIONS
  309. --\\=================================//
  310.  
  311. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  312. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  313. end
  314.  
  315. function PositiveAngle(NUMBER)
  316. if NUMBER >= 0 then
  317. NUMBER = 0
  318. end
  319. return NUMBER
  320. end
  321.  
  322. function NegativeAngle(NUMBER)
  323. if NUMBER <= 0 then
  324. NUMBER = 0
  325. end
  326. return NUMBER
  327. end
  328.  
  329. function Swait(NUMBER)
  330. if NUMBER == 0 or NUMBER == nil then
  331. ArtificialHB.Event:wait()
  332. else
  333. for i = 1, NUMBER do
  334. ArtificialHB.Event:wait()
  335. end
  336. end
  337. end
  338.  
  339. function QuaternionFromCFrame(cf)
  340. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  341. local trace = m00 + m11 + m22
  342. if trace > 0 then
  343. local s = math.sqrt(1 + trace)
  344. local recip = 0.5 / s
  345. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  346. else
  347. local i = 0
  348. if m11 > m00 then
  349. i = 1
  350. end
  351. if m22 > (i == 0 and m00 or m11) then
  352. i = 2
  353. end
  354. if i == 0 then
  355. local s = math.sqrt(m00 - m11 - m22 + 1)
  356. local recip = 0.5 / s
  357. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  358. elseif i == 1 then
  359. local s = math.sqrt(m11 - m22 - m00 + 1)
  360. local recip = 0.5 / s
  361. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  362. elseif i == 2 then
  363. local s = math.sqrt(m22 - m00 - m11 + 1)
  364. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  365. end
  366. end
  367. end
  368.  
  369. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  370. local xs, ys, zs = x + x, y + y, z + z
  371. local wx, wy, wz = w * xs, w * ys, w * zs
  372. local xx = x * xs
  373. local xy = x * ys
  374. local xz = x * zs
  375. local yy = y * ys
  376. local yz = y * zs
  377. local zz = z * zs
  378. 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))
  379. end
  380.  
  381. function QuaternionSlerp(a, b, t)
  382. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  383. local startInterp, finishInterp;
  384. if cosTheta >= 0.0001 then
  385. if (1 - cosTheta) > 0.0001 then
  386. local theta = ACOS(cosTheta)
  387. local invSinTheta = 1 / SIN(theta)
  388. startInterp = SIN((1 - t) * theta) * invSinTheta
  389. finishInterp = SIN(t * theta) * invSinTheta
  390. else
  391. startInterp = 1 - t
  392. finishInterp = t
  393. end
  394. else
  395. if (1 + cosTheta) > 0.0001 then
  396. local theta = ACOS(-cosTheta)
  397. local invSinTheta = 1 / SIN(theta)
  398. startInterp = SIN((t - 1) * theta) * invSinTheta
  399. finishInterp = SIN(t * theta) * invSinTheta
  400. else
  401. startInterp = t - 1
  402. finishInterp = t
  403. end
  404. end
  405. 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
  406. end
  407.  
  408. function Clerp(a, b, t)
  409. local qa = {QuaternionFromCFrame(a)}
  410. local qb = {QuaternionFromCFrame(b)}
  411. local ax, ay, az = a.x, a.y, a.z
  412. local bx, by, bz = b.x, b.y, b.z
  413. local _t = 1 - t
  414. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  415. end
  416.  
  417. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  418. local frame = IT("Frame")
  419. frame.BackgroundTransparency = TRANSPARENCY
  420. frame.BorderSizePixel = BORDERSIZEPIXEL
  421. frame.Position = POSITION
  422. frame.Size = SIZE
  423. frame.BackgroundColor3 = COLOR
  424. frame.BorderColor3 = BORDERCOLOR
  425. frame.Name = NAME
  426. frame.Parent = PARENT
  427. return frame
  428. end
  429.  
  430. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  431. local label = IT("TextLabel")
  432. label.BackgroundTransparency = 1
  433. label.Size = UD2(1, 0, 1, 0)
  434. label.Position = UD2(0, 0, 0, 0)
  435. label.TextColor3 = C3(255, 255, 255)
  436. label.TextStrokeTransparency = STROKETRANSPARENCY
  437. label.TextTransparency = TRANSPARENCY
  438. label.FontSize = TEXTFONTSIZE
  439. label.Font = TEXTFONT
  440. label.BorderSizePixel = BORDERSIZEPIXEL
  441. label.TextScaled = true
  442. label.Text = TEXT
  443. label.Name = NAME
  444. label.Parent = PARENT
  445. return label
  446. end
  447.  
  448. function NoOutlines(PART)
  449. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  450. end
  451.  
  452.  
  453. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  454. local NEWWELD = IT(TYPE)
  455. NEWWELD.Part0 = PART0
  456. NEWWELD.Part1 = PART1
  457. NEWWELD.C0 = C0
  458. NEWWELD.C1 = C1
  459. NEWWELD.Parent = PARENT
  460. return NEWWELD
  461. end
  462.  
  463. function CreateSound(ID, PARENT, VOLUME, PITCH)
  464. coroutine.resume(coroutine.create(function()
  465. local NEWSOUND = IT("Sound", PARENT)
  466. NEWSOUND.Volume = VOLUME
  467. NEWSOUND.Pitch = PITCH
  468. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  469. Swait()
  470. NEWSOUND:play()
  471. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  472. end))
  473. end
  474.  
  475. function CFrameFromTopBack(at, top, back)
  476. local right = top:Cross(back)
  477. return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
  478. end
  479.  
  480. function Lightning(POSITION1, POSITION2, MULTIPLIERTIME, LIGHTNINGDELAY, OFFSET, BRICKCOLOR, MATERIAL, SIZE, TRANSPARENCY, LASTINGTIME)
  481. local MAGNITUDE = (POSITION1 - POSITION2).magnitude
  482. local CURRENTPOSITION = POSITION1
  483. local LIGHTNINGOFFSET = {-OFFSET, OFFSET}
  484. coroutine.resume(coroutine.create(function()
  485. for i = 1, MULTIPLIERTIME do
  486. local LIGHTNINGPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR,"Effect", VT(SIZE * Player_Size, SIZE * Player_Size, MAGNITUDE / MULTIPLIERTIME))
  487. LIGHTNINGPART.Anchored = true
  488. local LIGHTNINGOFFSET2 = VT(LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)])
  489. local LIGHTNINGPOSITION1 = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME).p + LIGHTNINGOFFSET2
  490. if MULTIPLIERTIME == i then
  491. local LIGHTNINGMAGNITUDE1 = (CURRENTPOSITION - POSITION2).magnitude
  492. LIGHTNINGPART.Size = VT(SIZE * Player_Size, SIZE * Player_Size, LIGHTNINGMAGNITUDE1)
  493. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, -LIGHTNINGMAGNITUDE1 / 2)
  494. else
  495. LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, LIGHTNINGPOSITION1) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2)
  496. end
  497. CURRENTPOSITION=LIGHTNINGPART.CFrame * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2).p
  498. game.Debris:AddItem(LIGHTNINGPART, LASTINGTIME)
  499. coroutine.resume(coroutine.create(function()
  500. while LIGHTNINGPART.Transparency ~= 1 do
  501. --local StartTransparency = tra
  502. for i=0, 1, LASTINGTIME do
  503. Swait()
  504. LIGHTNINGPART.Transparency = LIGHTNINGPART.Transparency + (0.1 / LASTINGTIME)
  505. end
  506. end
  507. end))
  508. Swait(LIGHTNINGDELAY / Animation_Speed)
  509. end
  510. end))
  511. end
  512.  
  513. function MagicBlock(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  514. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  515. EFFECTPART.Anchored = true
  516. EFFECTPART.CFrame = CFRAME
  517. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  518. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  519. coroutine.resume(coroutine.create(function(PART, MESH)
  520. for i = 0, 1, delay do
  521. Swait()
  522. PART.CFrame = PART.CFrame * ROTATION
  523. PART.Transparency = i
  524. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  525. end
  526. PART.Parent = nil
  527. end), EFFECTPART, EFFECTMESH)
  528. end
  529.  
  530. function MagicSphere(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  531. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  532. EFFECTPART.Anchored = true
  533. EFFECTPART.CFrame = CFRAME
  534. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Sphere", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  535. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  536. coroutine.resume(coroutine.create(function(PART, MESH)
  537. for i = 0, 1, delay do
  538. Swait()
  539. PART.CFrame = PART.CFrame * ROTATION
  540. PART.Transparency = i
  541. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  542. end
  543. PART.Parent = nil
  544. end), EFFECTPART, EFFECTMESH)
  545. end
  546.  
  547. function MagicCylinder(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  548. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  549. EFFECTPART.Anchored = true
  550. EFFECTPART.CFrame = CFRAME
  551. local EFFECTMESH = CreateMesh("CylinderMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  552. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  553. coroutine.resume(coroutine.create(function(PART, MESH)
  554. for i = 0, 1, delay do
  555. Swait()
  556. PART.CFrame = PART.CFrame * ROTATION
  557. PART.Transparency = i
  558. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  559. end
  560. PART.Parent = nil
  561. end), EFFECTPART, EFFECTMESH)
  562. end
  563.  
  564. function MagicHead(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  565. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  566. EFFECTPART.Anchored = true
  567. EFFECTPART.CFrame = CFRAME
  568. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Head", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  569. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  570. coroutine.resume(coroutine.create(function(PART, MESH)
  571. for i = 0, 1, delay do
  572. Swait()
  573. PART.CFrame = PART.CFrame * ROTATION
  574. PART.Transparency = i
  575. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  576. end
  577. PART.Parent = nil
  578. end), EFFECTPART, EFFECTMESH)
  579. end
  580.  
  581. function MagicRing(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  582. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  583. EFFECTPART.Anchored = true
  584. EFFECTPART.CFrame = CFRAME
  585. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "3270017", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  586. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  587. coroutine.resume(coroutine.create(function(PART, MESH)
  588. for i = 0, 1, delay do
  589. Swait()
  590. PART.CFrame = PART.CFrame * ROTATION
  591. PART.Transparency = i
  592. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  593. end
  594. PART.Parent = nil
  595. end), EFFECTPART, EFFECTMESH)
  596. end
  597.  
  598. function MagicWave(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  599. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  600. EFFECTPART.Anchored = true
  601. EFFECTPART.CFrame = CFRAME
  602. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "20329976", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), VT(0, 0, (-0.1 * Z1)) + (OFFSET * Player_Size))
  603. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  604. coroutine.resume(coroutine.create(function(PART, MESH)
  605. for i = 0, 1, delay do
  606. Swait()
  607. PART.CFrame = PART.CFrame * ROTATION
  608. PART.Transparency = i
  609. MESH.Offset = VT(0, 0, (-0.1 * MESH.Scale.Z))
  610. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  611. end
  612. PART.Parent = nil
  613. end), EFFECTPART, EFFECTMESH)
  614. end
  615.  
  616. function MagicCrystal(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  617. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  618. EFFECTPART.Anchored = true
  619. EFFECTPART.CFrame = CFRAME
  620. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "9756362", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  621. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  622. coroutine.resume(coroutine.create(function(PART, MESH)
  623. for i = 0, 1, delay do
  624. Swait()
  625. PART.CFrame = PART.CFrame * ROTATION
  626. PART.Transparency = i
  627. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  628. end
  629. PART.Parent = nil
  630. end), EFFECTPART, EFFECTMESH)
  631. end
  632.  
  633. function MagicSwirl(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  634. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  635. EFFECTPART.Anchored = true
  636. EFFECTPART.CFrame = CFRAME
  637. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1051557", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  638. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  639. coroutine.resume(coroutine.create(function(PART, MESH)
  640. for i = 0, 1, delay do
  641. Swait()
  642. PART.CFrame = PART.CFrame * ROTATION
  643. PART.Transparency = i
  644. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  645. end
  646. PART.Parent = nil
  647. end), EFFECTPART, EFFECTMESH)
  648. end
  649.  
  650. function MagicSharpCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  651. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  652. EFFECTPART.Anchored = true
  653. EFFECTPART.CFrame = CFRAME
  654. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1778999", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  655. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  656. coroutine.resume(coroutine.create(function(PART, MESH)
  657. for i = 0, 1, delay do
  658. Swait()
  659. PART.CFrame = PART.CFrame * ROTATION
  660. PART.Transparency = i
  661. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  662. end
  663. PART.Parent = nil
  664. end), EFFECTPART, EFFECTMESH)
  665. end
  666.  
  667. function MagicFlatCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  668. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  669. EFFECTPART.Anchored = true
  670. EFFECTPART.CFrame = CFRAME
  671. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1033714", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  672. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  673. coroutine.resume(coroutine.create(function(PART, MESH)
  674. for i = 0, 1, delay do
  675. Swait()
  676. PART.CFrame = PART.CFrame * ROTATION
  677. PART.Transparency = i
  678. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  679. end
  680. PART.Parent = nil
  681. end), EFFECTPART, EFFECTMESH)
  682. end
  683.  
  684. function MagicSpikedCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  685. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  686. EFFECTPART.Anchored = true
  687. EFFECTPART.CFrame = CFRAME
  688. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1323306", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  689. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  690. coroutine.resume(coroutine.create(function(PART, MESH)
  691. for i = 0, 1, delay do
  692. Swait()
  693. PART.CFrame = PART.CFrame * ROTATION
  694. PART.Transparency = i
  695. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  696. end
  697. PART.Parent = nil
  698. end), EFFECTPART, EFFECTMESH)
  699. end
  700.  
  701. function MagicFlatCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  702. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  703. EFFECTPART.Anchored = true
  704. EFFECTPART.CFrame = CFRAME
  705. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1078075", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  706. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  707. coroutine.resume(coroutine.create(function(PART, MESH)
  708. for i = 0, 1, delay do
  709. Swait()
  710. PART.CFrame = PART.CFrame * ROTATION
  711. PART.Transparency = i
  712. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  713. end
  714. PART.Parent = nil
  715. end), EFFECTPART, EFFECTMESH)
  716. end
  717.  
  718. function MagicSkull(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
  719. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  720. EFFECTPART.Anchored = true
  721. EFFECTPART.CFrame = CFRAME
  722. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
  723. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  724. coroutine.resume(coroutine.create(function(PART, MESH)
  725. for i = 0, 1, delay do
  726. Swait()
  727. PART.CFrame = PART.CFrame * ROTATION
  728. PART.Transparency = i
  729. MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
  730. end
  731. PART.Parent = nil
  732. end), EFFECTPART, EFFECTMESH)
  733. end
  734.  
  735. function ElectricEffect(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X, Y, Z, delay)
  736. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
  737. EFFECTPART.Anchored = true
  738. EFFECTPART.CFrame = CFRAME
  739. local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X * Player_Size, Y * Player_Size, Z * Player_Size), OFFSET * Player_Size)
  740. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  741. local XVALUE = MRANDOM()
  742. local YVALUE = MRANDOM()
  743. local ZVALUE = MRANDOM()
  744. coroutine.resume(coroutine.create(function(PART, MESH, THEXVALUE, THEYVALUE, THEZVALUE)
  745. for i = 0, 1, delay do
  746. Swait()
  747. PART.CFrame = PART.CFrame * ROTATION
  748. PART.Transparency = i
  749. THEXVALUE = THEXVALUE - 0.1 * (delay * 10)
  750. THEYVALUE = THEYVALUE - 0.1 * (delay * 10)
  751. THEZVALUE = THEZVALUE - 0.1 * (delay * 10)
  752. MESH.Scale = MESH.Scale + VT(THEXVALUE * Player_Size, THEYVALUE * Player_Size, THEZVALUE * Player_Size)
  753. end
  754. PART.Parent = nil
  755. end), EFFECTPART, EFFECTMESH, XVALUE, YVALUE, ZVALUE)
  756. end
  757.  
  758. function TrailEffect(BRICKCOLOR, MATERIAL, CURRENTCFRAME, OLDCFRAME, MESHTYPE, REFLECTANCE, SIZE, ROTATION, X, Y, Z, delay)
  759. local MAGNITUDECFRAME = (CURRENTCFRAME.p - OLDCFRAME.p).magnitude
  760. if MAGNITUDECFRAME > (1 / 100) then
  761. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT(1, MAGNITUDECFRAME, 1))
  762. EFFECTPART.Anchored = true
  763. EFFECTPART.CFrame = CF((CURRENTCFRAME.p + OLDCFRAME.p) / 2, OLDCFRAME.p) * ANGLES(RAD(90), 0, 0)
  764. local THEMESHTYPE = "BlockMesh"
  765. if MESHTYPE == "Cylinder" then
  766. THEMESHTYPE = "CylinderMesh"
  767. end
  768. local EFFECTMESH = CreateMesh(THEMESHTYPE, EFFECTPART, "", "", "", VT(0 + SIZE * Player_Size, 1, 0 + SIZE * Player_Size), VT(0, 0, 0))
  769. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  770. coroutine.resume(coroutine.create(function(PART, MESH)
  771. for i = 0, 1, delay do
  772. Swait()
  773. PART.CFrame = PART.CFrame * ROTATION
  774. PART.Transparency = i
  775. MESH.Scale = MESH.Scale + VT(X * Player_Size, Y * Player_Size, Z * Player_Size)
  776. end
  777. PART.Parent = nil
  778. end), EFFECTPART, EFFECTMESH)
  779. end
  780. end
  781.  
  782. function ClangEffect(BRICKCOLOR, MATERIAL, CFRAME, ANGLE, DURATION, SIZE, POWER, REFLECTANCE, X, Y, Z, delay)
  783. local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 1, BRICKCOLOR, "Effect", VT())
  784. EFFECTPART.Anchored = true
  785. EFFECTPART.CFrame = CFRAME
  786. local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(0, 0, 0), VT(0, 0, 0))
  787. game:GetService("Debris"):AddItem(EFFECTPART, 10)
  788. local THELASTPOINT = CFRAME
  789. coroutine.resume(coroutine.create(function(PART)
  790. for i = 1, DURATION do
  791. Swait()
  792. PART.CFrame = PART.CFrame * ANGLES(RAD(ANGLE), 0, 0) * CF(0, POWER * Player_Size, 0)
  793. TrailEffect(BRICKCOLOR, MATERIAL, PART.CFrame, THELASTPOINT, "Cylinder", REFLECTANCE, SIZE * Player_Size, ANGLES(0, 0, 0), X * Player_Size, Y * Player_Size, Z * Player_Size, delay)
  794. THELASTPOINT = PART.CFrame
  795. end
  796. PART.Parent = nil
  797. end), EFFECTPART)
  798. end
  799.  
  800. --local list={}
  801. function Triangle(Color, Material, a, b, c, delay)
  802. local edge1 = (c - a):Dot((b - a).unit)
  803. local edge2 = (a - b):Dot((c - b).unit)
  804. local edge3 = (b - c):Dot((a - c).unit)
  805. if edge1 <= (b - a).magnitude and edge1 >= 0 then
  806. a, b, c=a, b, c
  807. elseif edge2 <= (c - b).magnitude and edge2 >= 0 then
  808. a, b, c=b, c, a
  809. elseif edge3 <= (a - c).magnitude and edge3 >= 0 then
  810. a, b, c=c, a, b
  811. else
  812. assert(false, "unreachable")
  813. end
  814. local len1 = (c - a):Dot((b - a).unit)
  815. local len2 = (b - a).magnitude - len1
  816. local width = (a + (b - a).unit * len1 - c).magnitude
  817. local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, - (b - a).unit)
  818. if len1 > 1 / 100 then
  819. local sz = VT(0.2, width, len1)
  820. local w1 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  821. local sp = CreateMesh("SpecialMesh", w1, "Wedge", "", "", VT(0, 1, 1) * sz / w1.Size, VT(0, 0, 0))
  822. w1.Anchored = true
  823. w1.CFrame = maincf * ANGLES(math.pi, 0, math.pi / 2) * CF(0, width / 2, len1 / 2)
  824. coroutine.resume(coroutine.create(function()
  825. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  826. Swait()
  827. w1.Transparency = i
  828. end
  829. w1.Parent = nil
  830. end))
  831. game:GetService("Debris"):AddItem(w1, 10)
  832. --table.insert(list, w1)
  833. end
  834. if len2 > 1 / 100 then
  835. local sz = VT(0.2, width, len2)
  836. local w2 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
  837. local sp = CreateMesh("SpecialMesh", w2, "Wedge", "", "", VT(0, 1, 1) * sz / w2.Size, VT(0, 0, 0))
  838. w2.Anchored = true
  839. w2.CFrame = maincf * ANGLES(math.pi, math.pi, -math.pi / 2) * CF(0, width / 2, -len1 - len2 / 2)
  840. coroutine.resume(coroutine.create(function()
  841. for i = 0.5, 1, delay * (2 / Animation_Speed) do
  842. Swait()
  843. w2.Transparency = i
  844. end
  845. w2.Parent = nil
  846. end))
  847. game:GetService("Debris"):AddItem(w2, 10)
  848. --table.insert(list, w2)
  849. end
  850. --return unpack(list)
  851. end
  852.  
  853. --[[Usage:
  854. local Pos = Part
  855. local Offset = Part.CFrame * CF(0, 0, 0)
  856. local Color = "Institutional white"
  857. local Material = "Neon"
  858. local TheDelay = 0.01
  859. local Height = 4
  860. BLCF = Offset
  861. if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
  862. local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
  863. if a then game:GetService("Debris"):AddItem(a, 1) end
  864. if b then game:GetService("Debris"):AddItem(b, 1) end
  865. local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
  866. if a then game:GetService("Debris"):AddItem(a, 1) end
  867. if b then game:GetService("Debris"):AddItem(b, 1) end
  868. SCFR = BLCF
  869. elseif not SCFR then
  870. SCFR = BLCF
  871. end
  872. --
  873. BLCF = nil
  874. SCFR = nil
  875. --]]
  876.  
  877. --//=================================\\
  878. --\\=================================//
  879.  
  880.  
  881.  
  882.  
  883. --//=================================\\
  884. --|| WEAPON CREATION
  885. --\\=================================//
  886.  
  887. local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(1.05*Player_Size,2.05*Player_Size,1.05*Player_Size))
  888. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  889. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(1.07*Player_Size,1.07*Player_Size,1.07*Player_Size))
  890. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  891. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Handle", VT(1.07*Player_Size,0.5*Player_Size,1.07*Player_Size))
  892. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0.85 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  893. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Handle", VT(0.5*Player_Size,0.5*Player_Size,1.07*Player_Size))
  894. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.4 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  895. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.7*Player_Size,0.5*Player_Size,1.07*Player_Size))
  896. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(-0.2 * Player_Size, 0.25 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  897. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.5*Player_Size,1.5*Player_Size, 0.5*Player_Size))
  898. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.35 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  899. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.5*Player_Size,1.5*Player_Size, 0.5*Player_Size))
  900. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(-0.35 * Player_Size, 0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  901. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Handle", VT(0.5*Player_Size,0.5*Player_Size, 1.2*Player_Size))
  902. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(-0.2 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  903.  
  904. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.2*Player_Size,0.2*Player_Size, 0.2*Player_Size))
  905. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.4 * Player_Size, 0.12 * Player_Size, -0.75 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)), CF(0, 0, 0))
  906. local mesh = IT("SpecialMesh",part)
  907. mesh.MeshType = "FileMesh"
  908. mesh.MeshId = "http://www.roblox.com/asset/?id=55821108"
  909.  
  910. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Handle", VT(0.2*Player_Size,0.2*Player_Size, 0.2*Player_Size))
  911. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.4 * Player_Size, 0.12 * Player_Size, 0.75 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(0)), CF(0, 0, 0))
  912. local mesh = IT("SpecialMesh",part)
  913. mesh.MeshType = "FileMesh"
  914. mesh.MeshId = "http://www.roblox.com/asset/?id=55820516"
  915.  
  916. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Really red", "Handle", VT(0.35*Player_Size,0.35*Player_Size, 1.25*Player_Size))
  917. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(-0.2 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  918. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Handle", VT(0.5*Player_Size,0.5*Player_Size, 1.2*Player_Size))
  919. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(-0.2 * Player_Size, -0.7 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  920. local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Handle", VT(1.1*Player_Size,0.2*Player_Size, 1.1*Player_Size))
  921. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.7 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  922. local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(1.15*Player_Size,0.05*Player_Size, 1.15*Player_Size))
  923. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.7 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  924. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Handle", VT(1*Player_Size,0.1*Player_Size,1*Player_Size))
  925. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  926. local mesh = IT("CylinderMesh",part)
  927.  
  928. local beampart = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(0.6*Player_Size,0.1*Player_Size,0.6*Player_Size))
  929. local weld = CreateWeldOrSnapOrMotor("Weld", beampart, RightArm, beampart, CF(0 * Player_Size, -1.02 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  930. local mesh = IT("CylinderMesh",beampart)
  931.  
  932. for _, c in pairs(Weapon:GetChildren()) do
  933. if c.ClassName == "Part" then
  934. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  935. end
  936. end
  937.  
  938. Weapon.Parent = Character
  939.  
  940. Humanoid.Died:connect(function()
  941. ATTACK = true
  942. end)
  943.  
  944. print(Class_Name.." loaded.")
  945.  
  946. --//=================================\\
  947. --\\=================================//
  948.  
  949.  
  950.  
  951.  
  952.  
  953. --//=================================\\
  954. --|| DAMAGE FUNCTIONS
  955. --\\=================================//
  956.  
  957. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  958. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  959. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  960. local BODYGYRO = IT("BodyGyro", STATPART)
  961. local BODYPOSITION = IT("BodyPosition", STATPART)
  962. BODYPOSITION.P = 2000
  963. BODYPOSITION.D = 100
  964. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  965. if LABELTYPE == "Normal" then
  966. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  967. elseif LABELTYPE == "Debuff" then
  968. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
  969. elseif LABELTYPE == "Interruption" then
  970. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
  971. end
  972. game:GetService("Debris"):AddItem(STATPART ,5)
  973. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  974. BILLBOARDGUI.Adornee = STATPART
  975. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  976. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  977. BILLBOARDGUI.AlwaysOnTop = false
  978. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  979. TEXTLABEL.BackgroundTransparency = 1
  980. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  981. TEXTLABEL.Text = TEXT
  982. TEXTLABEL.Font = "SciFi"
  983. TEXTLABEL.FontSize="Size42"
  984. TEXTLABEL.TextColor3 = COLOR
  985. TEXTLABEL.TextStrokeTransparency = 1
  986. TEXTLABEL.TextScaled = true
  987. TEXTLABEL.TextWrapped = true
  988. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  989. wait(0.2)
  990. for i=1, 5 do
  991. wait()
  992. THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
  993. end
  994. wait(1.2)
  995. for i=1, 5 do
  996. wait()
  997. THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
  998. THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
  999. THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
  1000. end
  1001. THEPART.Parent = nil
  1002. end),STATPART, BODYPOSITION, TEXTLABEL)
  1003. end
  1004.  
  1005. function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
  1006. if hit.Parent ~= Character and hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
  1007. local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
  1008. local dmg = math.random(min,max)
  1009. if humanoid.Health > 0 then
  1010. if beserk == true then
  1011. humanoid.Health = 0
  1012. humanoid.Parent:BreakJoints()
  1013. StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "BESERK/inf", C3(255/255, 0, 0))
  1014. else
  1015. CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
  1016. hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
  1017. if math.random(1,100) < critrate+1 then
  1018. humanoid.Health = humanoid.Health - dmg*critmultiplier
  1019. StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1020. else
  1021. humanoid.Health = humanoid.Health - dmg
  1022. StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
  1023. end
  1024. local defence = Instance.new("BoolValue",hit.Parent)
  1025. defence.Name = ("HitBy"..Player.Name)
  1026. game:GetService("Debris"):AddItem(defence, 0.5)
  1027. end
  1028. end
  1029. end
  1030. end
  1031.  
  1032. function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
  1033. local dmg = (math.random(min,max)/5)
  1034. for i,v in ipairs(workspace:GetChildren()) do
  1035. local body = v:GetChildren()
  1036. for part = 1, #body do
  1037. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1038. if(body[part].Position - position).Magnitude < radius then
  1039. if v.ClassName == "Model" then
  1040. if v:FindFirstChild("Humanoid") and v:FindFirstChild("HitBy"..Player.Name) == nil then
  1041. if CanBeDodgedByJumping == true then
  1042. if v.Humanoid.Jump == false then
  1043. if math.random(1,100) < critrate+1 then
  1044. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1045. --StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1046. else
  1047. v.Humanoid.Health = v.Humanoid.Health - dmg
  1048. --StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1049. end
  1050. local defence = Instance.new("BoolValue",v.Parent)
  1051. defence.Name = ("HitBy"..Player.Name)
  1052. game:GetService("Debris"):AddItem(defence, 0.5)
  1053. end
  1054. else
  1055. if beserk == true then
  1056. v.Humanoid.Health = 0
  1057. end
  1058. if math.random(1,100) < critrate+1 then
  1059. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1060. --StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1061. else
  1062. v.Humanoid.Health = v.Humanoid.Health - dmg
  1063. --StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1064. end
  1065. local defence = Instance.new("BoolValue",v.Parent)
  1066. defence.Name = ("HitBy"..Player.Name)
  1067. game:GetService("Debris"):AddItem(defence, 0.5)
  1068. end
  1069. end
  1070. end
  1071. body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1072. end
  1073. end
  1074. end
  1075. if v.ClassName == "Part" then
  1076. if v.Anchored == false and (v.Position - position).Magnitude < radius then
  1077. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1078. end
  1079. end
  1080. end
  1081. end
  1082.  
  1083. --//=================================\\
  1084. --|| ATTACK FUNCTIONS AND STUFF
  1085. --\\=================================//
  1086.  
  1087. function turnto(position)
  1088. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1089. end
  1090.  
  1091. function CastRay(StartPos, Vec, Length, Ignore)
  1092. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  1093. local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Vec * Length), Ignore)
  1094. return RayHit, RayPos
  1095. end
  1096.  
  1097. function Shoot()
  1098. Rooted = true
  1099. ATTACK = true
  1100. for i=0, 1, 0.1 / Animation_Speed do
  1101. Swait()
  1102. turnto(Mouse.Hit.p)
  1103. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed/5)
  1104. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1105. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1106. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1107. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-1.25), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1108. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1109. end
  1110. --local RayHit, RayPos = CastRay(beampart.Position,Mouse.Hit.p,100,Character)
  1111. MagicBlock("Really red", "Neon", beampart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 1.5, 1.5, 1.5, 0.05)
  1112. CreateSound("379225925", beampart, 3, 1.1)
  1113. local laser = IT("Part",Effects)
  1114. laser.CanCollide = false
  1115. laser.Anchored = true
  1116. local distance = (beampart.Position - Mouse.Hit.p).magnitude
  1117. laser.Size = Vector3.new(0.2, 0.2, distance)
  1118. laser.CFrame = CFrame.new(beampart.Position,Mouse.Hit.p) * CFrame.new(0, 0, -distance/2)
  1119. laser.Material = "Neon"
  1120. laser.BrickColor = BRICKC("Really red")
  1121. table.insert(Effects2,{laser,"Disappear",0.05,2,2,2,2})
  1122. AoEDamage(Mouse.Hit.p,5,25,35,12,false,10,2)
  1123. MagicSphere("Really red", "Neon", CF(Mouse.Hit.p) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 7.5, 7.5, 7.5, 0.05)
  1124. MagicBlock("Really red", "Neon", CF(Mouse.Hit.p) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 7.5, 7.5, 7.5, 0.05)
  1125. for i=0, 0.25, 0.1 / Animation_Speed do
  1126. Swait()
  1127. turnto(Mouse.Hit.p)
  1128. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(50)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1129. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-50)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1130. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(160), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1131. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1132. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-1.25), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1133. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-100), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1134. end
  1135. ATTACK = false
  1136. Rooted = false
  1137. end
  1138.  
  1139. function ChargeShot()
  1140. Rooted = true
  1141. ATTACK = true
  1142. for i=0, 1, 0.1 / Animation_Speed do
  1143. Swait()
  1144. turnto(Mouse.Hit.p)
  1145. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed/5)
  1146. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1147. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1148. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1149. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-1.25), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1150. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1151. end
  1152. local SIZE = 1
  1153. repeat
  1154. turnto(Mouse.Hit.p)
  1155. MagicSphere("Really red", "Neon", beampart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, SIZE, SIZE, SIZE, 0.05)
  1156. Swait()
  1157. SIZE = SIZE + 0.01
  1158. until KEYHOLD == false
  1159. --local RayHit, RayPos = CastRay(beampart.Position,Mouse.Hit.p,100,Character)
  1160. MagicBlock("Really red", "Neon", beampart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, SIZE*1.5, SIZE*1.5, SIZE*1.5, 0.05)
  1161. CreateSound("379225925", beampart, 3, 1.1)
  1162. local laser = IT("Part",Effects)
  1163. laser.CanCollide = false
  1164. laser.Anchored = true
  1165. local distance = (beampart.Position - Mouse.Hit.p).magnitude
  1166. laser.Size = Vector3.new(SIZE * 0.2, SIZE * 0.2, distance)
  1167. laser.CFrame = CFrame.new(beampart.Position,Mouse.Hit.p) * CFrame.new(0, 0, -distance/2)
  1168. laser.Material = "Neon"
  1169. laser.BrickColor = BRICKC("Really red")
  1170. table.insert(Effects2,{laser,"Disappear",0.05,2,2,2,2})
  1171. AoEDamage(Mouse.Hit.p,SIZE * 5,SIZE*10,SIZE*15,SIZE*5,false,10,2)
  1172. MagicSphere("Really red", "Neon", CF(Mouse.Hit.p) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, SIZE * 7.5, SIZE * 7.5, SIZE * 7.5, 0.05)
  1173. MagicBlock("Really red", "Neon", CF(Mouse.Hit.p) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, SIZE * 7.5, SIZE * 7.5, SIZE * 7.5, 0.05)
  1174. for i=0, 0.25, 0.1 / Animation_Speed do
  1175. Swait()
  1176. turnto(Mouse.Hit.p)
  1177. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(50)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1178. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-50)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1179. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(160), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1180. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1181. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-1.25), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1182. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-100), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1183. end
  1184. Rooted = false
  1185. ATTACK = false
  1186. end
  1187.  
  1188. function RayCast(Position, Direction, MaxDistance, IgnoreList)
  1189. return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList)
  1190. end
  1191.  
  1192. function GroundUp()
  1193. local RayHit, RayPos = RayCast(Mouse.Hit.p, Vector3.new(0, -1, 0), (1), {Character})
  1194. local SpawnPosition = RayPos
  1195. if RayPos then
  1196. Rooted = true
  1197. ATTACK = true
  1198. CreateSound("588697034", RightArm, 2, 0.8)
  1199. for i=0, 1, 0.1 / Animation_Speed/6 do
  1200. Swait()
  1201. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed/8)
  1202. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1203. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 1 * Player_Size, 1 * Player_Size) * ANGLES(RAD(30), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed/8)
  1204. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed/8)
  1205. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed/8)
  1206. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed/8)
  1207. end
  1208. for i=0, 1, 0.1 / Animation_Speed*2 do
  1209. Swait()
  1210. RootPart.Anchored = true
  1211. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed*3)
  1212. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1213. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 1 * Player_Size, -1.4 * Player_Size) * ANGLES(RAD(30), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed*5)
  1214. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1215. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1216. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1217. end
  1218. CreateSound("186772924", beampart, 5, 1)
  1219. local floor = IT("Part",Effects)
  1220. floor.Anchored = true
  1221. floor.Size = VT(15,0.2,15)
  1222. floor.Material = "Neon"
  1223. floor.BrickColor = BRICKC("Really red")
  1224. floor.CanCollide = false
  1225. local cyl = Instance.new("CylinderMesh",floor)
  1226. floor.CFrame = CF(beampart.Position.X,beampart.Position.Y-0.2,beampart.Position.Z)
  1227. AoEDamage(floor.Position,25,10,25,15,false,10,5,true)
  1228. local scale = 25
  1229. table.insert(Effects2,{floor,"Block1",0.05,1,0,1,2})
  1230. coroutine.resume(coroutine.create(function()
  1231. repeat
  1232. Swait()
  1233. scale = scale + 5
  1234. AoEDamage(floor.Position,scale,1,2,5,false,10,5,true)
  1235. until floor.Parent == nil
  1236. end))
  1237. end
  1238. ATTACK = false
  1239. Rooted = false
  1240. end
  1241.  
  1242. function fromabove()
  1243. Rooted = true
  1244. ATTACK = true
  1245. for i=0, 1, 0.1 / Animation_Speed do
  1246. Swait()
  1247. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-20)), 0.15 / Animation_Speed/5)
  1248. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  1249. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1250. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1251. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-2.5)), 0.15 / Animation_Speed)
  1252. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
  1253. end
  1254. CreateSound("132392101", Head, 10, 1.1)
  1255. Swait(175)
  1256. for i=0, 1, 0.1 / Animation_Speed do
  1257. Swait()
  1258. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1259. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1260. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(180), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1261. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1 * Player_Size, 0.2 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(25), RAD(25), RAD(90)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1262. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-1.25), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1263. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1264. end
  1265. local SIZE = 1
  1266. for i = 1, 70 do
  1267. MagicSphere("Really red", "Neon", beampart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, SIZE, SIZE, SIZE, 0.05)
  1268. Swait()
  1269. SIZE = SIZE + 0.06
  1270. end
  1271. MagicBlock("Really red", "Neon", beampart.CFrame * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 1.5, 1.5, 1.5, 0.05)
  1272. CreateSound("379225925", beampart, 3, 1.1)
  1273. local laser = IT("Part",Effects)
  1274. laser.CanCollide = false
  1275. laser.Anchored = true
  1276. local distance = (beampart.Position - VT(beampart.Position.X,beampart.Position.Y+1000,beampart.Position.Z)).magnitude
  1277. laser.Size = Vector3.new(0.2, 0.2, distance)
  1278. laser.CFrame = CFrame.new(beampart.Position,VT(beampart.Position.X,beampart.Position.Y+1000,beampart.Position.Z)) * CFrame.new(0, 0, -distance/2)
  1279. laser.Material = "Neon"
  1280. laser.BrickColor = BRICKC("Really red")
  1281. table.insert(Effects2,{laser,"Disappear",0.05,2,2,2,2})
  1282. ATTACK = false
  1283. Rooted = false
  1284. local pos = Mouse.Hit.p
  1285. Swait(10)
  1286. for i = 1, 85 do
  1287. coroutine.resume(coroutine.create(function()
  1288. Swait(math.random(1,100))
  1289. local pos = VT(pos.X+math.random(-15,15),pos.Y,pos.Z+math.random(-15,15))
  1290. local laser = IT("Part",Effects)
  1291. laser.CanCollide = false
  1292. laser.Anchored = true
  1293. local distance = (pos - VT(pos.X,pos.Y+1000,pos.Z)).magnitude
  1294. laser.Size = Vector3.new(0.2, 0.2, distance)
  1295. laser.CFrame = CFrame.new(pos,VT(pos.X,pos.Y+1000,pos.Z)) * CFrame.new(0, 0, -distance/2)
  1296. laser.Material = "Neon"
  1297. laser.BrickColor = BRICKC("Really red")
  1298. MagicSphere("Really red", "Neon", CF(pos) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 7.5, 7.5, 7.5, 0.05)
  1299. MagicBlock("Really red", "Neon", CF(pos) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 7.5, 7.5, 7.5, 0.05)
  1300. table.insert(Effects2,{laser,"Disappear",0.05,2,2,2,2})
  1301. AoEDamage(pos,5,15,25,12,false,10,2)
  1302. end))
  1303. end
  1304. end
  1305.  
  1306.  
  1307.  
  1308.  
  1309. --//=================================\\
  1310. --|| ASSIGN THINGS TO KEYS
  1311. --\\=================================//
  1312.  
  1313. Humanoid.Changed:connect(function(Jump)
  1314. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1315. Humanoid.Jump = false
  1316. end
  1317. end)
  1318.  
  1319. function MouseDown(Mouse)
  1320. if ATTACK == false then
  1321. --HOLD = true
  1322. Shoot()
  1323. end
  1324. end
  1325.  
  1326. function MouseUp(Mouse)
  1327. HOLD = false
  1328. end
  1329.  
  1330. function KeyDown(Key)
  1331. KEYHOLD = true
  1332. if Key == "e" and ATTACK == false then
  1333. ChargeShot()
  1334. end
  1335. if Key == "g" and ATTACK == false then
  1336. GroundUp()
  1337. end
  1338. if Key == "p" then
  1339. if SPRINTING == false then
  1340. SPRINTING = true
  1341. elseif SPRINTING == true then
  1342. SPRINTING = false
  1343. end
  1344. end
  1345. if Key == "x" and ATTACK == false then
  1346. fromabove()
  1347. end
  1348. if Key == "t" and ATTACK == false then
  1349. CreateSound("132392118", Head, 10, 1.1)
  1350. end
  1351. if Key == "g" then
  1352. CreateSound("907332525", Head, 10, 1.1)
  1353. end
  1354. end
  1355.  
  1356. function KeyUp(Key)
  1357. KEYHOLD = false
  1358. end
  1359.  
  1360. Mouse.Button1Down:connect(function(NEWKEY)
  1361. MouseDown(NEWKEY)
  1362. end)
  1363. Mouse.Button1Up:connect(function(NEWKEY)
  1364. MouseUp(NEWKEY)
  1365. end)
  1366. Mouse.KeyDown:connect(function(NEWKEY)
  1367. KeyDown(NEWKEY)
  1368. end)
  1369. Mouse.KeyUp:connect(function(NEWKEY)
  1370. KeyUp(NEWKEY)
  1371. end)
  1372.  
  1373. --//=================================\\
  1374. --\\=================================//
  1375.  
  1376.  
  1377. function unanchor()
  1378. if UNANCHOR == true then
  1379. g = Character:GetChildren()
  1380. for i = 1, #g do
  1381. if g[i].ClassName == "Part" then
  1382. g[i].Anchored = false
  1383. end
  1384. end
  1385. end
  1386. end
  1387.  
  1388. --//=================================\\
  1389. --|| WRAP THE WHOLE SCRIPT UP
  1390. --\\=================================//
  1391.  
  1392. Humanoid.Changed:connect(function(Jump)
  1393. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1394. Humanoid.Jump = false
  1395. end
  1396. end)
  1397.  
  1398. Rooted = true
  1399. ANIMATE.Parent = nil
  1400. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  1401. IDLEANIMATION:Play()
  1402. Swait(15)
  1403. Rooted = false
  1404.  
  1405. while true do
  1406. Swait()
  1407. SINE = SINE + CHANGE
  1408. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1409. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1410. local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  1411. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  1412. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  1413. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1414. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1415. Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * 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 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1416. RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1417. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1418. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1419. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1420. Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1421. RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1422. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1423. end
  1424. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1425. ANIM = "Jump"
  1426. if ATTACK == false then
  1427. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1428. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1429. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  1430. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1431. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1432. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1433. end
  1434. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1435. ANIM = "Fall"
  1436. if ATTACK == false then
  1437. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1438. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1439. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  1440. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1441. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1442. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1443. end
  1444. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1445. ANIM = "Idle"
  1446. if ATTACK == false then
  1447. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
  1448. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
  1449. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1450. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1451. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-2.5)), 0.15 / Animation_Speed)
  1452. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
  1453. end
  1454. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1455. ANIM = "Walk"
  1456. WALK = WALK + 1 / Animation_Speed
  1457. if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  1458. WALK = 0
  1459. if WALKINGANIM == true then
  1460. WALKINGANIM = false
  1461. elseif WALKINGANIM == false then
  1462. WALKINGANIM = true
  1463. end
  1464. end
  1465. --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1466. --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1467. if ATTACK == false and SPRINTING == false then
  1468. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * COS(SINE / WALKSPEEDVALUE) * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1469. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1470. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1471. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1472. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1473. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1474. elseif ATTACK == false and SPRINTING == true then
  1475. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * COS(SINE / WALKSPEEDVALUE) * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1476. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1477. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1478. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-30 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1479. RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1480. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1481. end
  1482. end
  1483. if #Effects2>0 then
  1484. for e=1,#Effects2 do
  1485. if Effects2[e]~=nil then
  1486. local Thing=Effects2[e]
  1487. if Thing~=nil then
  1488. local Part=Thing[1]
  1489. local Mode=Thing[2]
  1490. local Delay=Thing[3]
  1491. local IncX=Thing[4]
  1492. local IncY=Thing[5]
  1493. local IncZ=Thing[6]
  1494. local Part2=Thing[8]
  1495. if Thing[1].Transparency<=1 then
  1496. if Thing[2]=="Block1" then
  1497. Thing[1].CFrame=Thing[1].CFrame
  1498. Mesh=Thing[1].Mesh
  1499. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1500. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1501. elseif Thing[2]=="Cylinder" then
  1502. Mesh=Thing[1].Mesh
  1503. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1504. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1505. elseif Thing[2]=="Blood" then
  1506. Mesh=Thing[7]
  1507. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  1508. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1509. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1510. elseif Thing[2]=="Elec" then
  1511. Mesh=Thing[1].Mesh
  1512. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  1513. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1514. elseif Thing[2]=="Disappear" then
  1515. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1516. end
  1517. else
  1518. Part.Parent=nil
  1519. table.remove(Effects2,e)
  1520. end
  1521. end
  1522. end
  1523. end
  1524. end
  1525. unanchor()
  1526. Humanoid.MaxHealth = "inf"
  1527. Humanoid.Health = "inf"
  1528. if Rooted == false then
  1529. Disable_Jump = false
  1530. Humanoid.WalkSpeed = Speed
  1531. elseif Rooted == true then
  1532. Disable_Jump = true
  1533. Humanoid.WalkSpeed = 0
  1534. end
  1535. if SPRINTING == true then
  1536. Speed = 45
  1537. Humanoid.JumpPower = 100
  1538. elseif SPRINTING == false then
  1539. Speed = 16
  1540. Humanoid.JumpPower = 50
  1541. end
  1542. end
  1543.  
  1544. --//=================================\\
  1545. --\\=================================//
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551. --//====================================================\\--
  1552. --|| END OF SCRIPT
  1553. --\\====================================================//--
RAW Paste Data