Advertisement
BlazyTheLittleFox

SharpShooter

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