Advertisement
NextFlamePB

ROBLOX Prism Code Script

Jan 13th, 2019
911
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 70.00 KB | None | 0 0
  1.  
  2. wait(0.2)
  3.  
  4.  
  5.  
  6. Player = game:GetService("Players").LocalPlayer
  7. PlayerGui = Player.PlayerGui
  8. Cam = workspace.CurrentCamera
  9. Backpack = Player.Backpack
  10. Character = Player.Character
  11. Humanoid = Character.Humanoid
  12. Mouse = Player:GetMouse()
  13. RootPart = Character["HumanoidRootPart"]
  14. Torso = Character["Torso"]
  15. Head = Character["Head"]
  16. RightArm = Character["Right Arm"]
  17. LeftArm = Character["Left Arm"]
  18. RightLeg = Character["Right Leg"]
  19. LeftLeg = Character["Left Leg"]
  20. RootJoint = RootPart["RootJoint"]
  21. Neck = Torso["Neck"]
  22. RightShoulder = Torso["Right Shoulder"]
  23. LeftShoulder = Torso["Left Shoulder"]
  24. RightHip = Torso["Right Hip"]
  25. LeftHip = Torso["Left Hip"]
  26. local sick = Instance.new("Sound",Character)
  27. sick.SoundId = "rbxassetid://1167151479"
  28. sick.Looped = true
  29. sick.Pitch = 1
  30. sick.Volume = 1
  31. sick:Play()
  32.  
  33. local naeeym2 = Instance.new("BillboardGui",Character)
  34. naeeym2.AlwaysOnTop = true
  35. naeeym2.Size = UDim2.new(5,35,2,35)
  36. naeeym2.StudsOffset = Vector3.new(0,3,0)
  37. naeeym2.Adornee = Character.Head
  38. naeeym2.Name = "Name"
  39. --naeeym2.PlayerToHideFrom = Player
  40. naeeym2.MaxDistance = 200
  41. local tecks2 = Instance.new("TextLabel",naeeym2)
  42. tecks2.BackgroundTransparency = 1
  43. tecks2.TextScaled = true
  44. tecks2.BorderSizePixel = 0
  45. tecks2.Text = "₱Ɽł₴₥"
  46. tecks2.Font = "SciFi"
  47. tecks2.TextSize = 30
  48. tecks2.TextStrokeTransparency = 1
  49. tecks2.TextColor3 = Color3.new(255,255,255)
  50. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  51. tecks2.Size = UDim2.new(1,0,0.5,0)
  52. tecks2.Parent = naeeym2
  53.  
  54. IT = Instance.new
  55. CF = CFrame.new
  56. VT = Vector3.new
  57. RAD = math.rad
  58. C3 = Color3.new
  59. UD2 = UDim2.new
  60. BRICKC = BrickColor.new
  61. ANGLES = CFrame.Angles
  62. EULER = CFrame.fromEulerAnglesXYZ
  63. COS = math.cos
  64. ACOS = math.acos
  65. SIN = math.sin
  66. ASIN = math.asin
  67. ABS = math.abs
  68. MRANDOM = math.random
  69. FLOOR = math.floor
  70.  
  71. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  72.     local NEWMESH = IT(MESH)
  73.     if MESH == "SpecialMesh" then
  74.         NEWMESH.MeshType = MESHTYPE
  75.         if MESHID ~= "nil" and MESHID ~= "" then
  76.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  77.         end
  78.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  79.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  80.         end
  81.     end
  82.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  83.     NEWMESH.Scale = SCALE
  84.     NEWMESH.Parent = PARENT
  85.     return NEWMESH
  86. end
  87.  
  88. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
  89.     local NEWPART = IT("Part")
  90.     NEWPART.formFactor = FORMFACTOR
  91.     NEWPART.Reflectance = REFLECTANCE
  92.     NEWPART.Transparency = TRANSPARENCY
  93.     NEWPART.CanCollide = false
  94.     NEWPART.Locked = true
  95.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  96.     NEWPART.Name = NAME
  97.     NEWPART.Size = SIZE
  98.     NEWPART.Position = Torso.Position
  99.     NEWPART.Material = MATERIAL
  100.     NEWPART:BreakJoints()
  101.     NEWPART.Parent = PARENT
  102.     return NEWPART
  103. end
  104.  
  105.  
  106. --//=================================\\
  107. --||          CUSTOMIZATION
  108. --\\=================================//
  109.  
  110. Class_Name = "₱Ɽł₴₥.exe"
  111. Weapon_Name = "Add-ons"
  112.  
  113. Custom_Colors = {
  114.     Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  115.     Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  116.  
  117.     Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  118.     Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  119.     Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  120.     Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  121.     Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  122.  
  123.     Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  124.     Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  125.     Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  126.     Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  127.     Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  128. }
  129.  
  130.  
  131. Player_Size = 1 --Size of the player.
  132. Animation_Speed = 3
  133. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  134.  
  135. local Speed = 16
  136. local Effects2 = {}
  137.  
  138. --//=================================\\
  139. --||      END OF CUSTOMIZATION
  140. --\\=================================//
  141.  
  142.     local function weldBetween(a, b)
  143.         local weldd = Instance.new("ManualWeld")
  144.         weldd.Part0 = a
  145.         weldd.Part1 = b
  146.         weldd.C0 = CFrame.new()
  147.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  148.         weldd.Parent = a
  149.         return weldd
  150.     end
  151.  
  152. function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
  153. local acs = Instance.new("Part")
  154. acs.CanCollide = false
  155. acs.Anchored = false
  156. acs.Size = Vector3.new(0,0,0)
  157. acs.CFrame = attachmentpart.CFrame
  158. acs.Parent = Character
  159. acs.BrickColor = color
  160.     local meshs = Instance.new("SpecialMesh")
  161.     meshs.MeshId = mesh
  162.     meshs.TextureId = texture
  163.     meshs.Parent = acs
  164.     meshs.Scale = scale
  165.     meshs.Offset = offset
  166. weldBetween(attachmentpart,acs)
  167. end
  168.  
  169. function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
  170. if TYPE == "Gem" then
  171.     local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  172.     acs.Anchored = false
  173.     acs.CanCollide = false
  174.     acs.CFrame = PART.CFrame
  175.     local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
  176. weldBetween(PART,acs)
  177. elseif TYPE == "Skull" then
  178.     local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  179.     acs.Anchored = false
  180.     acs.CanCollide = false
  181.     acs.CFrame = PART.CFrame
  182.     local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
  183. weldBetween(PART,acs)
  184. elseif TYPE == "Eye" then
  185.     local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  186.     acs.Anchored = false
  187.     acs.CanCollide = false
  188.     acs.CFrame = PART.CFrame
  189.     local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
  190. weldBetween(PART,acs)
  191. end
  192. end
  193.  
  194. --//=================================\\
  195. --||          USEFUL VALUES
  196. --\\=================================//
  197.  
  198. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  199. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  200. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  201. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  202. local CO1 = 0
  203. local CO2 = 0
  204. local CO3 = 0
  205. local CO4 = 0
  206. local CHANGEDEFENSE = 0
  207. local CHANGEDAMAGE = 0
  208. local CHANGEMOVEMENT = 0
  209. local ANIM = "Idle"
  210. local ATTACK = false
  211. local EQUIPPED = false
  212. local HOLD = false
  213. local COMBO = 1
  214. local LASTPOINT = nil
  215. local BLCF = nil
  216. local SCFR = nil
  217. local STAGGERHITANIM = false
  218. local STAGGERANIM = false
  219. local STUNANIM = false
  220. local CRITCHANCENUMBER = 0
  221. local IDLENUMBER = 0
  222. local DONUMBER = 0
  223. local HANDIDLE = false
  224. local SINE = 0
  225. local CHANGE = 2 / Animation_Speed
  226. local WALKINGANIM = false
  227. local WALK = 0
  228. local KEYHOLD = false
  229. local DISABLEJUMPING = false
  230. local HASBEENBLOCKED = false
  231. local STUNDELAYNUMBER = 0
  232. local MANADELAYNUMBER = 0
  233. local SECONDARYMANADELAYNUMBER = 0
  234. local ROBLOXIDLEANIMATION = IT("Animation")
  235. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  236. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  237. --ROBLOXIDLEANIMATION.Parent = Humanoid
  238. local WEAPONGUI = IT("ScreenGui", nil)
  239. WEAPONGUI.Name = "Weapon GUI"
  240. local WEAPONTOOL = IT("HopperBin", nil)
  241. WEAPONTOOL.Name = Weapon_Name
  242. local Weapon = IT("Model")
  243. Weapon.Name = Weapon_Name
  244. local Effects = IT("Folder", Weapon)
  245. Effects.Name = "Effects"
  246. local ANIMATOR = Humanoid.Animator
  247. local ANIMATE = Character.Animate
  248. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  249. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  250. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  251. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  252. local CUTSOUNDS = {"645750958","645747150"}
  253. local VICIOUSWOOSH = "658941933"
  254. local RELEASESOUND = "565538688"
  255. local CHARGESOUND = "565538601"
  256. local UNANCHOR = true
  257. local MAGICPARTICLE = "1229782954"
  258.  
  259. --//=================================\\
  260. --\\=================================//
  261.  
  262. --//=================================\\
  263. --||              STATS
  264. --\\=================================//
  265.  
  266. if Character:FindFirstChild("Stats") ~= nil then
  267. Character:FindFirstChild("Stats").Parent = nil
  268. end
  269.  
  270. local Stats = IT("Folder", nil)
  271. Stats.Name = "Stats"
  272. local ChangeStat = IT("Folder", Stats)
  273. ChangeStat.Name = "ChangeStat"
  274. local Defense = IT("NumberValue", Stats)
  275. Defense.Name = "Defense"
  276. Defense.Value = 1
  277. local Movement = IT("NumberValue", Stats)
  278. Movement.Name = "Movement"
  279. Movement.Value = 1
  280. local Damage = IT("NumberValue", Stats)
  281. Damage.Name = "Damage"
  282. Damage.Value = 1
  283. local Mana = IT("NumberValue", Stats)
  284. Mana.Name = "Mana"
  285. Mana.Value = 0
  286. local SecondaryMana = IT("NumberValue", Stats)
  287. SecondaryMana.Name = "SecondaryMana"
  288. SecondaryMana.Value = 0
  289. local CanCrit = IT("BoolValue", Stats)
  290. CanCrit.Name = "CanCrit"
  291. CanCrit.Value = false
  292. local CritChance = IT("NumberValue", Stats)
  293. CritChance.Name = "CritChance"
  294. CritChance.Value = 20
  295. local CanPenetrateArmor = IT("BoolValue", Stats)
  296. CanPenetrateArmor.Name = "CanPenetrateArmor"
  297. CanPenetrateArmor.Value = false
  298. local AntiTeamKill = IT("BoolValue", Stats)
  299. AntiTeamKill.Name = "AntiTeamKill"
  300. AntiTeamKill.Value = false
  301. local Rooted = IT("BoolValue", Stats)
  302. Rooted.Name = "Rooted"
  303. Rooted.Value = false
  304. local Block = IT("BoolValue", Stats)
  305. Block.Name = "Block"
  306. Block.Value = false
  307. local RecentEnemy = IT("ObjectValue", Stats)
  308. RecentEnemy.Name = "RecentEnemy"
  309. RecentEnemy.Value = nil
  310. local StaggerHit = IT("BoolValue", Stats)
  311. StaggerHit.Name = "StaggerHit"
  312. StaggerHit.Value = false
  313. local Stagger = IT("BoolValue", Stats)
  314. Stagger.Name = "Stagger"
  315. Stagger.Value = false
  316. local Stun = IT("BoolValue", Stats)
  317. Stun.Name = "Stun"
  318. Stun.Value = false
  319. local StunValue = IT("NumberValue", Stats)
  320. StunValue.Name = "StunValue"
  321. StunValue.Value = 0
  322.  
  323.  
  324. --//=================================\\
  325. --\\=================================//
  326.  
  327.  
  328.  
  329.  
  330.  
  331. --//=================================\\
  332. --||         DEBUFFS / BUFFS
  333. --\\=================================//
  334.  
  335. local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
  336. DEFENSECHANGE1.Name = "ChangeDefense"
  337. DEFENSECHANGE1.Value = 0
  338.  
  339. local MOVEMENTCHANGE1 = IT("NumberValue", nil)
  340. MOVEMENTCHANGE1.Name = "ChangeMovement"
  341. MOVEMENTCHANGE1.Value = 0
  342.  
  343. --//=================================\\
  344. --\\=================================//
  345.  
  346.  
  347.  
  348.  
  349.  
  350. --//=================================\\
  351. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  352. --\\=================================//
  353.  
  354. ArtificialHB = Instance.new("BindableEvent", script)
  355. ArtificialHB.Name = "ArtificialHB"
  356.  
  357. script:WaitForChild("ArtificialHB")
  358.  
  359. frame = Frame_Speed
  360. tf = 0
  361. allowframeloss = false
  362. tossremainder = false
  363. lastframe = tick()
  364. script.ArtificialHB:Fire()
  365.  
  366. game:GetService("RunService").Heartbeat:connect(function(s, p)
  367.     tf = tf + s
  368.     if tf >= frame then
  369.         if allowframeloss then
  370.             script.ArtificialHB:Fire()
  371.             lastframe = tick()
  372.         else
  373.             for i = 1, math.floor(tf / frame) do
  374.                 script.ArtificialHB:Fire()
  375.             end
  376.         lastframe = tick()
  377.         end
  378.         if tossremainder then
  379.             tf = 0
  380.         else
  381.             tf = tf - frame * math.floor(tf / frame)
  382.         end
  383.     end
  384. end)
  385.  
  386. --//=================================\\
  387. --\\=================================//
  388.  
  389.  
  390.  
  391.  
  392.  
  393. --//=================================\\
  394. --||          SOME FUNCTIONS
  395. --\\=================================//
  396.  
  397. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  398.     return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  399. end
  400.  
  401. function PositiveAngle(NUMBER)
  402.     if NUMBER >= 0 then
  403.         NUMBER = 0
  404.     end
  405.     return NUMBER
  406. end
  407.  
  408. function NegativeAngle(NUMBER)
  409.     if NUMBER <= 0 then
  410.         NUMBER = 0
  411.     end
  412.     return NUMBER
  413. end
  414.  
  415. function Swait(NUMBER)
  416.     if NUMBER == 0 or NUMBER == nil then
  417.         ArtificialHB.Event:wait()
  418.     else
  419.         for i = 1, NUMBER do
  420.             ArtificialHB.Event:wait()
  421.         end
  422.     end
  423. end
  424.  
  425. function QuaternionFromCFrame(cf)
  426.     local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  427.     local trace = m00 + m11 + m22
  428.     if trace > 0 then
  429.         local s = math.sqrt(1 + trace)
  430.         local recip = 0.5 / s
  431.         return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  432.     else
  433.         local i = 0
  434.         if m11 > m00 then
  435.             i = 1
  436.         end
  437.         if m22 > (i == 0 and m00 or m11) then
  438.             i = 2
  439.         end
  440.         if i == 0 then
  441.             local s = math.sqrt(m00 - m11 - m22 + 1)
  442.             local recip = 0.5 / s
  443.             return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  444.         elseif i == 1 then
  445.             local s = math.sqrt(m11 - m22 - m00 + 1)
  446.             local recip = 0.5 / s
  447.             return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  448.         elseif i == 2 then
  449.             local s = math.sqrt(m22 - m00 - m11 + 1)
  450.             local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  451.         end
  452.     end
  453. end
  454.  
  455. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  456.     local xs, ys, zs = x + x, y + y, z + z
  457.     local wx, wy, wz = w * xs, w * ys, w * zs
  458.     local xx = x * xs
  459.     local xy = x * ys
  460.     local xz = x * zs
  461.     local yy = y * ys
  462.     local yz = y * zs
  463.     local zz = z * zs
  464.     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))
  465. end
  466.  
  467. function QuaternionSlerp(a, b, t)
  468.     local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  469.     local startInterp, finishInterp;
  470.     if cosTheta >= 0.0001 then
  471.         if (1 - cosTheta) > 0.0001 then
  472.             local theta = ACOS(cosTheta)
  473.             local invSinTheta = 1 / SIN(theta)
  474.             startInterp = SIN((1 - t) * theta) * invSinTheta
  475.             finishInterp = SIN(t * theta) * invSinTheta
  476.         else
  477.             startInterp = 1 - t
  478.             finishInterp = t
  479.         end
  480.     else
  481.         if (1 + cosTheta) > 0.0001 then
  482.             local theta = ACOS(-cosTheta)
  483.             local invSinTheta = 1 / SIN(theta)
  484.             startInterp = SIN((t - 1) * theta) * invSinTheta
  485.             finishInterp = SIN(t * theta) * invSinTheta
  486.         else
  487.             startInterp = t - 1
  488.             finishInterp = t
  489.         end
  490.     end
  491.     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
  492. end
  493.  
  494. function Clerp(a, b, t)
  495.     local qa = {QuaternionFromCFrame(a)}
  496.     local qb = {QuaternionFromCFrame(b)}
  497.     local ax, ay, az = a.x, a.y, a.z
  498.     local bx, by, bz = b.x, b.y, b.z
  499.     local _t = 1 - t
  500.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  501. end
  502.  
  503. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  504.     local frame = IT("Frame")
  505.     frame.BackgroundTransparency = TRANSPARENCY
  506.     frame.BorderSizePixel = BORDERSIZEPIXEL
  507.     frame.Position = POSITION
  508.     frame.Size = SIZE
  509.     frame.BackgroundColor3 = COLOR
  510.     frame.BorderColor3 = BORDERCOLOR
  511.     frame.Name = NAME
  512.     frame.Parent = PARENT
  513.     return frame
  514. end
  515.  
  516. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  517.     local label = IT("TextLabel")
  518.     label.BackgroundTransparency = 1
  519.     label.Size = UD2(1, 0, 1, 0)
  520.     label.Position = UD2(0, 0, 0, 0)
  521.     label.TextColor3 = C3(255, 255, 255)
  522.     label.TextStrokeTransparency = STROKETRANSPARENCY
  523.     label.TextTransparency = TRANSPARENCY
  524.     label.FontSize = TEXTFONTSIZE
  525.     label.Font = TEXTFONT
  526.     label.BorderSizePixel = BORDERSIZEPIXEL
  527.     label.TextScaled = true
  528.     label.Text = TEXT
  529.     label.Name = NAME
  530.     label.Parent = PARENT
  531.     return label
  532. end
  533.  
  534. function NoOutlines(PART)
  535.     PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  536. end
  537.  
  538.  
  539. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  540.     local NEWWELD = IT(TYPE)
  541.     NEWWELD.Part0 = PART0
  542.     NEWWELD.Part1 = PART1
  543.     NEWWELD.C0 = C0
  544.     NEWWELD.C1 = C1
  545.     NEWWELD.Parent = PARENT
  546.     return NEWWELD
  547. end
  548.  
  549. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  550.     local NEWSOUND = nil
  551.     coroutine.resume(coroutine.create(function()
  552.         NEWSOUND = IT("Sound", PARENT)
  553.         NEWSOUND.Volume = VOLUME
  554.         NEWSOUND.Pitch = PITCH
  555.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  556.         --Swait()
  557.         NEWSOUND:play()
  558.         if DOESLOOP == false then
  559.             repeat Swait() until NEWSOUND.Playing == false
  560.             NEWSOUND:remove()
  561.         elseif DOESLOOP == true then
  562.             NEWSOUND.Looped = true
  563.         end
  564.     end))
  565.     return NEWSOUND
  566. end
  567.  
  568. function CFrameFromTopBack(at, top, back)
  569.     local right = top:Cross(back)
  570.     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)
  571. end
  572.  
  573. function CreateWave(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
  574.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  575.     local mesh = IT("SpecialMesh",wave)
  576.     mesh.MeshType = "FileMesh"
  577.     wave.Anchored = true
  578.     mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  579.     mesh.Scale = VT(size,size,size)
  580.     mesh.Offset = VT(0,0,-size/8)
  581.     wave.CFrame = CF(part.p) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  582.     coroutine.resume(coroutine.create(function(PART)
  583.         for i = 1, waitt do
  584.             Swait()
  585.             mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  586.             mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  587.             if doesrotate == true then
  588.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  589.             end
  590.             wave.Transparency = wave.Transparency + (0.5/waitt)
  591.             if wave.Transparency > 0.99 then
  592.                 wave:remove()
  593.             end
  594.         end
  595.     end))
  596. end
  597.  
  598. function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
  599.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  600.     local mesh = IT("SpecialMesh",wave)
  601.     mesh.MeshType = "FileMesh"
  602.     wave.Anchored = true
  603.     mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
  604.     mesh.Scale = VT(size,size,size)
  605.     wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  606.     coroutine.resume(coroutine.create(function(PART)
  607.         for i = 1, waitt do
  608.             Swait()
  609.             mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  610.             if doesrotate == true then
  611.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  612.             end
  613.             wave.Transparency = wave.Transparency + (0.5/waitt)
  614.             if wave.Transparency > 0.99 then
  615.                 wave:remove()
  616.             end
  617.         end
  618.     end))
  619. end
  620.  
  621. function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
  622.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  623.     local mesh = IT("SpecialMesh",wave)
  624.     mesh.MeshType = "FileMesh"
  625.     wave.Anchored = true
  626.     mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
  627.     mesh.Scale = VT(size,size,size)
  628.     wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  629.     coroutine.resume(coroutine.create(function(PART)
  630.         for i = 1, waitt do
  631.             Swait()
  632.             mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  633.             if doesrotate == true then
  634.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  635.             end
  636.             wave.Transparency = wave.Transparency + (0.5/waitt)
  637.             if wave.Transparency > 0.99 then
  638.                 wave:remove()
  639.             end
  640.         end
  641.     end))
  642. end
  643.  
  644. function CreateRing(inair,size,doesrotate,rotatedirection,waitt,part,offset,spin1,spin2,color)
  645.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  646.     local mesh = IT("SpecialMesh",wave)
  647.     mesh.MeshType = "FileMesh"
  648.     mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  649.     mesh.Scale = VT(size,size,size)
  650.     wave.Anchored = true
  651.     mesh.Offset = VT(0,0,0)
  652.     wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  653.     coroutine.resume(coroutine.create(function(PART)
  654.         for i = 1, waitt do
  655.             Swait()
  656.             mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  657.             if doesrotate == true then
  658.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
  659.             end
  660.             wave.Transparency = wave.Transparency + (0.5/waitt)
  661.             if wave.Transparency > 0.99 then
  662.                 wave:remove()
  663.             end
  664.         end
  665.     end))
  666. end
  667.  
  668. function MagicSphere(size,waitt,part,color)
  669.     local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(0,0,0))
  670.     local mesh = IT("SpecialMesh",wave)
  671.     mesh.MeshType = "Sphere"
  672.     wave.Anchored = true
  673.     mesh.Scale = VT(size,size,size)
  674.     mesh.Offset = VT(0,0,0)
  675.     wave.CFrame = part * ANGLES(RAD(0),RAD(0),RAD(0))
  676.     coroutine.resume(coroutine.create(function(PART)
  677.         for i = 1, waitt do
  678.             Swait()
  679.             mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  680.             wave.Transparency = wave.Transparency + (1/waitt)
  681.             if wave.Transparency > 0.99 then
  682.                 wave:remove()
  683.             end
  684.         end
  685.     end))
  686. end
  687.  
  688. function MagicBlock(size,waitt,part,offset,color)
  689.     local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(size,size,size))
  690.     local mesh = IT("BlockMesh",wave)
  691.     wave.Anchored = true
  692.     wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(0),RAD(0),RAD(0))
  693.     coroutine.resume(coroutine.create(function(PART)
  694.         for i = 1, waitt do
  695.             Swait()
  696.             mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  697.             wave.CFrame = CF(wave.Position) * ANGLES(RAD(math(-360,360)),RAD(math(-360,360)),RAD(math(-360,360)))
  698.             wave.Transparency = wave.Transparency + (1/waitt)
  699.             if wave.Transparency > 0.99 then
  700.                 wave:remove()
  701.             end
  702.         end
  703.     end))
  704. end
  705.  
  706. local EyeSizes={
  707.     NumberSequenceKeypoint.new(0,0.5,0),
  708.     NumberSequenceKeypoint.new(1,0.2,0)
  709. }
  710. local EyeTrans={
  711.     NumberSequenceKeypoint.new(0,0,0),
  712.     NumberSequenceKeypoint.new(1,1,0)
  713. }
  714. local PE=Instance.new("ParticleEmitter")
  715. PE.LightEmission=0.3
  716. PE.Size=NumberSequence.new(EyeSizes)
  717. PE.Transparency=NumberSequence.new(EyeTrans)
  718. PE.Rotation=NumberRange.new(0,360)
  719. PE.LockedToPart = false
  720. PE.Speed = NumberRange.new(0,0,0)
  721. PE.ZOffset = 0.3
  722. PE.Rate = 999
  723. PE.Name = "Particles"
  724.  
  725. function CreateParticles(art,text,accel,drag,lifetime,type,isenabledbydefault,locked)
  726.     local particle = nil
  727.     coroutine.resume(coroutine.create(function(PART)
  728.         particle = PE:Clone()
  729.         Swait()
  730.         particle.Rate = 999
  731.         particle.Parent = art
  732.         particle.Acceleration = accel
  733.         if type == "Fire" then
  734.             local EyeSizes={
  735.                 NumberSequenceKeypoint.new(0,0.5,0.3),
  736.                 NumberSequenceKeypoint.new(1,0.2,0.2)
  737.             }
  738.             particle.Size = NumberSequence.new(EyeSizes)
  739.         elseif type == "Smoke" then
  740.             local EyeSizes={
  741.                 NumberSequenceKeypoint.new(0,0.5,0),
  742.                 NumberSequenceKeypoint.new(1,5,0.5)
  743.             }
  744.             particle.Size = NumberSequence.new(EyeSizes)
  745.         elseif type == "Solid" then
  746.             local EyeSizes={
  747.                 NumberSequenceKeypoint.new(0,0.5,0),
  748.                 NumberSequenceKeypoint.new(1,0.5,0)
  749.             }
  750.             particle.Size = NumberSequence.new(EyeSizes)
  751.         end
  752.         particle.Lifetime=NumberRange.new(lifetime)
  753.         particle.Drag = drag
  754.         if locked == true then
  755.             particle.LockedToPart = true
  756.         end
  757.         particle.Texture = "http://www.roblox.com/asset/?id="..text
  758.         particle.Enabled = isenabledbydefault
  759.     end))
  760. return particle
  761. end
  762.  
  763. local EyeSizes={
  764.     NumberSequenceKeypoint.new(0,0.5,0),
  765.     NumberSequenceKeypoint.new(1,0.2,0)
  766. }
  767. local EyeTrans={
  768.     NumberSequenceKeypoint.new(0,0,0),
  769.     NumberSequenceKeypoint.new(1,1,0)
  770. }
  771. local PE2=Instance.new("ParticleEmitter")
  772. PE2.LightEmission=0.8
  773. PE2.Size=NumberSequence.new(EyeSizes)
  774. PE2.Transparency=NumberSequence.new(EyeTrans)
  775. PE2.Rotation=NumberRange.new(0,360)
  776. PE2.LockedToPart = false
  777. PE2.Speed = NumberRange.new(0,0,0)
  778. PE2.ZOffset = 0.3
  779. PE2.Rate = 999
  780. PE2.VelocitySpread = 90000
  781. PE2.Name = "Particles"
  782.  
  783. function CreateParticles2(art,accel,drag,lifetime,type,isenabledbydefault,locked,size,speed)
  784.     local particle = nil
  785.     coroutine.resume(coroutine.create(function(PART)
  786.         particle = PE2:Clone()
  787.         Swait()
  788.         particle.Rate = 999
  789.         particle.Parent = art
  790.         particle.Acceleration = accel
  791.         if type == "Fire" then
  792.             local EyeSizes={
  793.                 NumberSequenceKeypoint.new(0,size,size/2),
  794.                 NumberSequenceKeypoint.new(1,size/4,size/8)
  795.             }
  796.             particle.Size = NumberSequence.new(EyeSizes)
  797.         elseif type == "Smoke" then
  798.             local EyeSizes={
  799.                 NumberSequenceKeypoint.new(0,0.5,0),
  800.                 NumberSequenceKeypoint.new(1,5,0.5)
  801.             }
  802.             particle.Size = NumberSequence.new(EyeSizes)
  803.         elseif type == "Solid" then
  804.             local EyeSizes={
  805.                 NumberSequenceKeypoint.new(0,0.5,0),
  806.                 NumberSequenceKeypoint.new(1,0.5,0)
  807.             }
  808.             particle.Size = NumberSequence.new(EyeSizes)
  809.         end
  810.         particle.Lifetime=NumberRange.new(lifetime)
  811.         particle.Drag = drag
  812.         if locked == true then
  813.             particle.LockedToPart = true
  814.         end
  815.         particle.Speed = NumberRange.new(speed,speed,speed)
  816.         particle.Texture = "http://www.roblox.com/asset/?id="..MAGICPARTICLE
  817.         particle.Enabled = isenabledbydefault
  818.         --particle.Color = ColorSequence.new(Color3.new(255, 255, 255))
  819.     end))
  820. return particle
  821. end
  822.  
  823. local Decal = IT("Decal")
  824.  
  825. function CreateMagicCircle(size,doesrotate,rotatedirection,waitt,cframe,alwaysfade)
  826.     local sinkhole = IT("Part")
  827.     sinkhole.Size = VT(size,0,size)
  828.     sinkhole.CFrame = cframe
  829.     --sinkhole.Orientation = VT(0,0,0)
  830.     sinkhole.Parent = Effects
  831.     sinkhole.Material = "Neon"
  832.     sinkhole.Color = C3(255, 255, 255)
  833.     sinkhole.Anchored = true
  834.     sinkhole.CanCollide = false
  835.     sinkhole.Transparency = 1
  836.     local decal = Decal:Clone()
  837.     decal.Parent = sinkhole
  838.     decal.Face = "Top"
  839.     decal.Texture = "http://www.roblox.com/asset/?id=1226241606"
  840.     local decal2 = Decal:Clone()
  841.     decal2.Parent = sinkhole
  842.     decal2.Face = "Bottom"
  843.     decal2.Texture = "http://www.roblox.com/asset/?id=1226241606"
  844.     coroutine.resume(coroutine.create(function(PART)
  845.         for i = 1, waitt do
  846.             Swait()
  847.             if doesrotate == true then
  848.                 sinkhole.CFrame = sinkhole.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  849.             end
  850.             if alwaysfade == true then
  851.                 decal.Transparency = decal.Transparency + (1/waitt)
  852.                 decal2.Transparency = decal.Transparency + (1/waitt)
  853.             end
  854.             if i > waitt-11 and (alwaysfade ~= true) then
  855.                 decal.Transparency = decal.Transparency + 0.1
  856.                 decal2.Transparency = decal.Transparency + 0.1
  857.             end
  858.         end
  859.         sinkhole.Parent = nil
  860.     end))
  861.     return sinkhole
  862. end
  863.  
  864. --//=================================\\
  865. --\\=================================//
  866.  
  867.  
  868. --//=================================\\
  869. --||         WEAPON CREATION
  870. --\\=================================//
  871.  
  872. if Player_Size ~= 1 then
  873.     for _, v in pairs (Weapon:GetChildren()) do
  874.         if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  875.             local p1 = v.Part1
  876.             v.Part1 = nil
  877.             local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  878.             v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  879.             v.Part1 = p1
  880.         elseif v.ClassName == "Part" then
  881.             for _, b in pairs (v:GetChildren()) do
  882.                 if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  883.                     b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  884.                 end
  885.             end
  886.         end
  887.     end
  888. end
  889.  
  890. Swait()
  891.  
  892. local Plate = IT("Part",Weapon)
  893. Plate.Size = VT(1,0.1,1)
  894. Plate.Transparency = 1
  895. Plate.CanCollide = false
  896. Plate.CFrame = LeftLeg.CFrame * CF(0,-1.1,0)
  897. CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
  898. weldBetween(LeftLeg,Plate)
  899.  
  900. local Plate = IT("Part",Weapon)
  901. Plate.Size = VT(1,0.1,1)
  902. Plate.Transparency = 1
  903. Plate.CanCollide = false
  904. Plate.CFrame = RightLeg.CFrame * CF(0,-1.1,0)
  905. CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
  906. weldBetween(RightLeg,Plate)
  907.  
  908. local Plate = IT("Part",Weapon)
  909. Plate.Size = VT(1,0.1,1)
  910. Plate.Transparency = 1
  911. Plate.CanCollide = false
  912. Plate.CFrame = RightArm.CFrame * CF(0,-1.1,0)
  913. CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
  914. weldBetween(RightArm,Plate)
  915.  
  916. local Plate = IT("Part",Weapon)
  917. Plate.Size = VT(1,0.1,1)
  918. Plate.Transparency = 1
  919. Plate.CanCollide = false
  920. Plate.CFrame = LeftArm.CFrame * CF(0,-1.1,0)
  921. CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
  922. weldBetween(LeftArm,Plate)
  923.  
  924. local eye = IT("Part",Weapon)
  925. eye.Size = VT(0.2,0.2,0.2)
  926. eye.Shape = "Ball"
  927. eye.CFrame = Head.CFrame * CF(0.125,0.2,-0.55)
  928. eye.Material = "Neon"
  929. eye.BrickColor = BRICKC("Institutional white")
  930. weldBetween(Head,eye)
  931.  
  932.  
  933.  
  934. for _, c in pairs(Weapon:GetChildren()) do
  935.     if c.ClassName == "Part" then
  936.         c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  937.     end
  938. end
  939.  
  940. Weapon.Parent = Character
  941.  
  942. Humanoid.Died:connect(function()
  943.     ATTACK = true
  944. end)
  945.  
  946. print(Class_Name.." loaded.")
  947.  
  948. --//=================================\\
  949. --\\=================================//
  950.  
  951.  
  952.  
  953.  
  954.  
  955. --//=================================\\
  956. --||         DAMAGE FUNCTIONS
  957. --\\=================================//
  958.  
  959. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  960.     local STATPART = CreatePart(3, Effects, "Neon", 0, 1, "Institutional white", "Effect", VT())
  961.     STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  962.     local BODYGYRO = IT("BodyGyro", STATPART)
  963.     local BODYPOSITION = IT("BodyPosition", STATPART)
  964.     BODYPOSITION.P = 2000
  965.     BODYPOSITION.D = 100
  966.     BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  967.     if LABELTYPE == "Normal" then
  968.         BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  969.     elseif LABELTYPE == "Debuff" then
  970.         BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
  971.     elseif LABELTYPE == "Interruption" then
  972.         BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
  973.     end
  974.     game:GetService("Debris"):AddItem(STATPART ,5)
  975.     local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  976.     BILLBOARDGUI.Adornee = STATPART
  977.     BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  978.     BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  979.     BILLBOARDGUI.AlwaysOnTop = false
  980.     local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  981.     TEXTLABEL.BackgroundTransparency = 1
  982.     TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  983.     TEXTLABEL.Text = TEXT
  984.     TEXTLABEL.Font = "SciFi"
  985.     TEXTLABEL.FontSize="Size42"
  986.     TEXTLABEL.TextColor3 = COLOR
  987.     TEXTLABEL.TextStrokeTransparency = 1
  988.     TEXTLABEL.TextScaled = true
  989.     TEXTLABEL.TextWrapped = true
  990.     coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  991.         wait(0.2)
  992.         for i=1, 5 do
  993.             wait()
  994.             THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
  995.         end
  996.         wait(1.2)
  997.         for i=1, 5 do
  998.             wait()
  999.             THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
  1000.             THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
  1001.             THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
  1002.         end
  1003.         THEPART.Parent = nil
  1004.     end),STATPART, BODYPOSITION, TEXTLABEL)
  1005. end
  1006.  
  1007.  
  1008. --//=================================\\
  1009. --||            DAMAGING
  1010. --\\=================================//
  1011.  
  1012. function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
  1013.     if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
  1014.         local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
  1015.         local dmg = math.random(min,max)
  1016.         if humanoid.Health > 0 then
  1017.             if beserk == true then
  1018.                 humanoid.Health = 0
  1019.             else
  1020.                 CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
  1021.                 hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
  1022.                 if math.random(1,100) < critrate+1 then
  1023.                     humanoid.Health = humanoid.Health - dmg*critmultiplier
  1024.                     StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1025.                 else
  1026.                     humanoid.Health = humanoid.Health - dmg
  1027.                     StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
  1028.                 end
  1029.                 local defence = Instance.new("BoolValue",hit.Parent)
  1030.                 defence.Name = ("HitBy"..Player.Name)
  1031.                 game:GetService("Debris"):AddItem(defence, 0.5)
  1032.             end
  1033.         end
  1034.     end
  1035. end
  1036.  
  1037. function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
  1038.     local dmg = math.random(min,max)
  1039.     for i,v in ipairs(workspace:GetChildren()) do
  1040.     if v:FindFirstChild("HitBy"..Player.Name) == nil then
  1041.         local body = v:GetChildren()
  1042.             for part = 1, #body do
  1043.                 if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1044.                     if(body[part].Position - position).Magnitude < radius then
  1045.                         if v.ClassName == "Model" then
  1046.                             if v:FindFirstChild("Humanoid") then
  1047.                                 if v.Humanoid.Health ~= 0 then
  1048.                                     if CanBeDodgedByJumping == true then
  1049.                                         if body[part].Position.Y < position.Y+5 then
  1050.                                             if math.random(1,100) < critrate+1 then
  1051.                                                 v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1052.                                                 StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1053.                                             else
  1054.                                                 v.Humanoid.Health = v.Humanoid.Health - dmg
  1055.                                                 StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1056.                                             end
  1057.                                             local defence = Instance.new("BoolValue",v)
  1058.                                             defence.Name = ("HitBy"..Player.Name)
  1059.                                             game:GetService("Debris"):AddItem(defence, 0.5)
  1060.                                         end
  1061.                                     else
  1062.                                         if beserk == true then
  1063.                                             v.Humanoid.Health = 0
  1064.                                         end
  1065.                                         if math.random(1,100) < critrate+1 then
  1066.                                             v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1067.                                             StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1068.                                         else
  1069.                                             v.Humanoid.Health = v.Humanoid.Health - dmg
  1070.                                             StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1071.                                         end
  1072.                                         local defence = Instance.new("BoolValue",v)
  1073.                                         defence.Name = ("HitBy"..Player.Name)
  1074.                                         game:GetService("Debris"):AddItem(defence, 0.5)
  1075.                                     end
  1076.                                 end
  1077.                             end
  1078.                         end
  1079.                         body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1080.                     end
  1081.                 end
  1082.             end
  1083.             if v.ClassName == "Part" then
  1084.                 if v.Anchored == false and (v.Position - position).Magnitude < radius then
  1085.                     v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1086.                 end
  1087.             end
  1088.         end
  1089.     end
  1090. end
  1091.  
  1092. function attractnearest(postype,position,range,maxstrength,last)
  1093.     if postype == "Vector" then
  1094.         for i,v in ipairs(workspace:GetChildren()) do
  1095.         local body = v:GetChildren()
  1096.             for part = 1, #body do
  1097.                 if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1098.                     if(body[part].Position - position).Magnitude < range then
  1099.                         if body[part]:FindFirstChild("ATTRACT") == nil then
  1100.                             local bv = Instance.new("BodyVelocity")
  1101.                             bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1102.                             bv.velocity = CF(body[part].Position,position).lookVector*maxstrength
  1103.                             bv.Parent = body[part]
  1104.                             bv.Name = "ATTRACT"
  1105.                         else
  1106.                             coroutine.resume(coroutine.create(function()
  1107.                                 for i = 1, last/5 do
  1108.                                     Swait(5)
  1109.                                     body[part].ATTRACT.velocity = CF(body[part].Position,position).lookVector*maxstrength  
  1110.                                 end    
  1111.                                 body[part].ATTRACT:remove()            
  1112.                             end))
  1113.                         end
  1114.                     end
  1115.                 end
  1116.             end
  1117.             if v.ClassName == "Part" then
  1118.                 if v.Anchored == false and (v.Position - position).Magnitude < range then
  1119.                     if v:FindFirstChild("ATTRACT") == nil then
  1120.                         local bv = Instance.new("BodyVelocity")
  1121.                         bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1122.                         bv.velocity = CF(v.Position,position).lookVector*maxstrength
  1123.                         bv.Parent = v
  1124.                         bv.Name = "ATTRACT"
  1125.                     else
  1126.                         coroutine.resume(coroutine.create(function()
  1127.                             for i = 1, last/5 do
  1128.                                 Swait(5)
  1129.                                 v.ATTRACT.velocity = CF(v.Position,position).lookVector*maxstrength
  1130.                             end    
  1131.                             v.ATTRACT:remove()             
  1132.                         end))
  1133.                     end
  1134.                 end
  1135.             end
  1136.         end
  1137.     elseif postype == "Part" then
  1138.         for i,v in ipairs(workspace:GetChildren()) do
  1139.         local body = v:GetChildren()
  1140.             for part = 1, #body do
  1141.                 if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1142.                     if(body[part].Position - position.Position).Magnitude < range then
  1143.                         if body[part]:FindFirstChild("ATTRACT") == nil then
  1144.                             local bv = Instance.new("BodyVelocity")
  1145.                             bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1146.                             bv.velocity = CF(body[part].Position,position.Position).lookVector*maxstrength
  1147.                             bv.Parent = body[part]
  1148.                             bv.Name = "ATTRACT"
  1149.                         else
  1150.                             coroutine.resume(coroutine.create(function()
  1151.                                 for i = 1, last/5 do
  1152.                                     Swait(5)
  1153.                                     body[part].ATTRACT.velocity = CF(body[part].Position,position.Position).lookVector*maxstrength 
  1154.                                 end    
  1155.                                 body[part].ATTRACT:remove()            
  1156.                             end))
  1157.                         end
  1158.                     end
  1159.                 end
  1160.             end
  1161.             if v.ClassName == "Part" then
  1162.                 if v.Anchored == false and (v.Position - position.Position).Magnitude < range then
  1163.                     if v:FindFirstChild("ATTRACT") == nil then
  1164.                         local bv = Instance.new("BodyVelocity")
  1165.                         bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1166.                         bv.velocity = CF(v.Position,position.Position).lookVector*maxstrength
  1167.                         bv.Parent = v
  1168.                         bv.Name = "ATTRACT"
  1169.                     else
  1170.                         coroutine.resume(coroutine.create(function()
  1171.                             for i = 1, last/5 do
  1172.                                 Swait(5)
  1173.                                 v.ATTRACT.velocity = CF(v.Position,position.Position).lookVector*maxstrength   
  1174.                             end    
  1175.                             v.ATTRACT:remove()             
  1176.                         end))
  1177.                     end
  1178.                 end
  1179.             end
  1180.         end
  1181.     end
  1182. end
  1183.  
  1184. function killnearest(position,range,maxstrength,candestroy)
  1185.     for i,v in ipairs(workspace:GetChildren()) do
  1186.     local body = v:GetChildren()
  1187.         for part = 1, #body do
  1188.             if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1189.                 if(body[part].Position - position).Magnitude < range then
  1190.                     if v.ClassName == "Model" then
  1191.                         v:BreakJoints()
  1192.                     end
  1193.                     if candestroy == true then
  1194.                         table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
  1195.                     end
  1196.                     body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1197.                 end
  1198.             end
  1199.         end
  1200.         if v.ClassName == "Part" then
  1201.             if v.Anchored == false and (v.Position - position).Magnitude < range then
  1202.                 if candestroy == true then
  1203.                     table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
  1204.                 end
  1205.                 v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1206.             end
  1207.         end
  1208.     end
  1209. end
  1210.  
  1211. --//=================================\\
  1212. --||    ATTACK FUNCTIONS AND STUFF
  1213. --\\=================================//
  1214.  
  1215. function CheckTableForString(Table, String)
  1216.     for i, v in pairs(Table) do
  1217.         if string.find(string.lower(String), string.lower(v)) then
  1218.             return true
  1219.         end
  1220.     end
  1221.     return false
  1222. end
  1223.  
  1224. function CheckIntangible(Hit)
  1225.     local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
  1226.     if Hit and Hit.Parent then
  1227.         if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
  1228.             return true
  1229.         end
  1230.     end
  1231.     return false
  1232. end
  1233.  
  1234. Debris = game:GetService("Debris")
  1235.  
  1236. function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
  1237.     local Direction = CFrame.new(StartPos, Vec).lookVector
  1238.     local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  1239.     local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
  1240.     if RayHit and CheckIntangible(RayHit) then
  1241.         if DelayIfHit then
  1242.             wait()
  1243.         end
  1244.         RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
  1245.     end
  1246.     return RayHit, RayPos, RayNormal
  1247. end
  1248.  
  1249. function turnto(pos)
  1250.     RootPart.CFrame = CF(RootPart.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
  1251. end
  1252.  
  1253. function GraviBomb()
  1254.     ATTACK = true
  1255.     for i=0, 1, 0.1 / Animation_Speed do
  1256.         Swait()
  1257.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  1258.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1259.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1260.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(80), RAD(-20), RAD(-30)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1261.         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)
  1262.         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)
  1263.     end
  1264.     MagicSphere(25,25,LeftArm.CFrame*CF(0,-1,0),"Institutional white")
  1265.     MagicSphere(20,25,LeftArm.CFrame*CF(0,-1,0),"Institutional white")
  1266.     coroutine.resume(coroutine.create(function()
  1267.         local cframe = CF(Mouse.Hit.p)
  1268.         local circle = CreateMagicCircle(75,true,0.05,120,cframe,false)
  1269.         for i = 1, 5 do
  1270.             CreateSound(CUTSOUNDS[MRANDOM(1, #CUTSOUNDS)], Effects, 2, 1)
  1271.             local sphere = IT("Part",Effects)
  1272.             sphere.Shape = "Ball"
  1273.             sphere.Size = VT(50,50,50)
  1274.             sphere.Anchored = true
  1275.             sphere.CanCollide = false
  1276.             sphere.Material = "Neon"
  1277.             sphere.BrickColor = BRICKC("Institutional white")
  1278.             sphere.Transparency = 0
  1279.             sphere.CFrame = cframe
  1280.             for i = 1, 10 do
  1281.                 Swait(2)
  1282.                 attractnearest("Vector",cframe.p,75,50,10)
  1283.                 sphere.CFrame = cframe
  1284.                 sphere.Size = sphere.Size - VT(5,5,5)
  1285.                 sphere.CFrame = cframe
  1286.             end
  1287.             sphere:remove()
  1288.         end
  1289.         local scale = 5
  1290.         coroutine.resume(coroutine.create(function()
  1291.             CreateSound(RELEASESOUND, Effects, 2, 1)
  1292.             MagicSphere(100,125,cframe,"Institutional white")
  1293.             MagicSphere(75,125,cframe,"Institutional white")
  1294.             CreateSwirl(180,6,true,0.3,225,circle,0,"Institutional white")
  1295.             CreateSwirl(180,4,true,0.3,225,circle,0,"Institutional white")
  1296.             CreateSwirl(180,2,true,0.3,225,circle,0,"Institutional white")
  1297.             for i = 1, 15 do
  1298.                 Swait()
  1299.                 killnearest(cframe.p,25,150)
  1300.             end
  1301.         end))
  1302.     end))
  1303.     for i=0, 1, 0.1 / Animation_Speed do
  1304.         Swait()
  1305.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  1306.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1307.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1308.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.25 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-20 + MRANDOM(-2.5, 2.5))) * ANGLES(RAD(70 + MRANDOM(-2.5, 2.5)), RAD(40), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1309.         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)
  1310.         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)
  1311.     end
  1312.     ATTACK = false
  1313. end
  1314.  
  1315. function GraviSpear()
  1316.     ATTACK = true
  1317.     for i=0, 1.5, 0.1 / Animation_Speed do
  1318.         Swait()
  1319.         turnto(Mouse.Hit.p)
  1320.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
  1321.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
  1322.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1323.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1324.         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)
  1325.         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)
  1326.     end
  1327.     local spear = IT("Part",Effects)
  1328.     spear.Anchored = true
  1329.     spear.CanCollide = false
  1330.     spear.Shape = "Ball"
  1331.     spear.Size = VT(0,0,0)
  1332.     spear.Material = "Neon"
  1333.     spear.Transparency = 0.2
  1334.     spear.BrickColor = BRICKC("Institutional white")
  1335.     spear.CFrame = RightArm.CFrame * CF(0,-4,0)
  1336.     local inner = spear:Clone()
  1337.     inner.Parent = spear
  1338.     inner.Size = VT(0,0,0)
  1339.     inner.BrickColor = BRICKC("Institutional white")
  1340.     inner.CFrame = spear.CFrame
  1341.     for i = 1, 10 do
  1342.         Swait()
  1343.         turnto(Mouse.Hit.p)
  1344.         spear.CFrame = RightArm.CFrame * CF(0,-4,0)
  1345.         inner.CFrame = spear.CFrame
  1346.         spear.Size = spear.Size + VT(0.4,0.4,0.4)
  1347.         inner.Size = inner.Size + VT(0.35,0.35,0.35)
  1348.     end
  1349.     CreateParticles2(inner,VT(0,0,0),5,1,"Smoke",true,true,1,8)
  1350.     MagicSphere(25,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
  1351.     MagicSphere(20,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
  1352.     CreateSound(CUTSOUNDS[MRANDOM(1, #CUTSOUNDS)], RightArm, 6, 1)
  1353.     local bv = Instance.new("BodyVelocity")
  1354.     bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1355.     bv.velocity = CF(spear.Position,Mouse.Hit.p).lookVector*65
  1356.     bv.Parent = spear
  1357.     bv.Name = "MOVE"
  1358.     weldBetween(spear,inner)
  1359.     spear.Anchored = false
  1360.     inner.Anchored = false
  1361.     local harm = spear.Touched:Connect(function(hit)
  1362.         if hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
  1363.             local cframe = spear.CFrame
  1364.             coroutine.resume(coroutine.create(function()
  1365.                 spear.Parent = nil
  1366.                 coroutine.resume(coroutine.create(function()
  1367.                     CreateSound(RELEASESOUND, Effects, 2, 1)
  1368.                     MagicSphere(60,125,cframe,"Institutional white")
  1369.                     MagicSphere(50,125,cframe,"Institutional white")
  1370.                     CreateSwirl(0,6,true,0.3,125,spear,0,"Institutional white")
  1371.                     CreateSwirl(0,4,true,0.3,125,spear,0,"Institutional white")
  1372.                     CreateSwirl(0,2,true,0.3,125,spear,0,"Institutional white")
  1373.                     for i = 1, 15 do
  1374.                         Swait()
  1375.                         killnearest(cframe.p,15,150)
  1376.                     end
  1377.                 end))
  1378.             end))
  1379.         end
  1380.     end)
  1381.     coroutine.resume(coroutine.create(function()
  1382.         repeat
  1383.             Swait()
  1384.             CreateSwirl(0,2,true,0.3,25,spear,0,"Institutional white")
  1385.             attractnearest("Part",spear,65,70,5)
  1386.         until spear.Parent == nil
  1387.     end))
  1388.     ATTACK = false
  1389. end
  1390.  
  1391. function WarpSpear()
  1392.     ATTACK = true
  1393.     for i=0, 1.5, 0.1 / Animation_Speed do
  1394.         Swait()
  1395.         turnto(Mouse.Hit.p)
  1396.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
  1397.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
  1398.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1399.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1400.         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)
  1401.         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)
  1402.     end
  1403.     local spear = IT("Part",Effects)
  1404.     spear.Anchored = true
  1405.     spear.CanCollide = false
  1406.     spear.Shape = "Ball"
  1407.     spear.Size = VT(0,0,0)
  1408.     spear.Material = "Neon"
  1409.     spear.Transparency = 0.2
  1410.     spear.BrickColor = BRICKC("Institutional white")
  1411.     spear.CFrame = RightArm.CFrame * CF(0,-4,0)
  1412.     local inner = spear:Clone()
  1413.     inner.Parent = spear
  1414.     inner.Size = VT(0,0,0)
  1415.     inner.BrickColor = BRICKC("Institutional white")
  1416.     inner.CFrame = spear.CFrame
  1417.     for i = 1, 5 do
  1418.         Swait()
  1419.         turnto(Mouse.Hit.p)
  1420.         spear.CFrame = RightArm.CFrame * CF(0,-4,0)
  1421.         inner.CFrame = spear.CFrame
  1422.         spear.Size = spear.Size + VT(0.4,0.4,0.4)
  1423.         inner.Size = inner.Size + VT(0.35,0.35,0.35)
  1424.     end
  1425.     MagicSphere(25,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
  1426.     MagicSphere(20,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
  1427.     CreateSound(CUTSOUNDS[MRANDOM(1, #CUTSOUNDS)], RightArm, 6, 1)
  1428.     local bv = Instance.new("BodyVelocity")
  1429.     bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1430.     bv.velocity = CF(spear.Position,Mouse.Hit.p).lookVector*100
  1431.     bv.Parent = spear
  1432.     bv.Name = "MOVE"
  1433.     weldBetween(spear,inner)
  1434.     spear.Anchored = false
  1435.     inner.Anchored = false
  1436.     local HIT = false
  1437.     local harm = spear.Touched:Connect(function(hit)
  1438.         if HIT == false and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
  1439.             local cframe = spear.CFrame
  1440.             HIT = true
  1441.             coroutine.resume(coroutine.create(function()
  1442.                 spear.Parent = nil
  1443.                 RootPart.CFrame = CF(spear.Position,Mouse.Hit.p)
  1444.                 coroutine.resume(coroutine.create(function()
  1445.                     CreateSound(RELEASESOUND, Effects, 2, 1.5)
  1446.                     MagicSphere(30,105,cframe,"Institutional white")
  1447.                     MagicSphere(25,105,cframe,"Institutional white")
  1448.                     for i = 1, 15 do
  1449.                         Swait()
  1450.                         killnearest(cframe.p,7.5,150)
  1451.                     end
  1452.                 end))
  1453.             end))
  1454.         end
  1455.     end)
  1456.     coroutine.resume(coroutine.create(function()
  1457.         Swait(75)
  1458.         if HIT == false then
  1459.             local cframe = spear.CFrame
  1460.             HIT = true
  1461.             coroutine.resume(coroutine.create(function()
  1462.                 spear.Parent = nil
  1463.                 RootPart.CFrame = CF(spear.Position,Mouse.Hit.p)
  1464.                 coroutine.resume(coroutine.create(function()
  1465.                     CreateSound(RELEASESOUND, Effects, 2, 1.5)
  1466.                     MagicSphere(30,105,cframe,"Institutional white")
  1467.                     MagicSphere(25,105,cframe,"Institutional white")
  1468.                     for i = 1, 15 do
  1469.                         Swait()
  1470.                         killnearest(cframe.p,7.5,150)
  1471.                     end
  1472.                 end))
  1473.             end))
  1474.         end
  1475.     end))
  1476.     coroutine.resume(coroutine.create(function()
  1477.         local loop = 0
  1478.         repeat
  1479.             Swait()
  1480.             loop = loop + 1
  1481.             if loop == 4 then
  1482.                 MagicSphere(25,15,spear.CFrame,"Institutional white")
  1483.             end
  1484.             if loop == 7 then
  1485.                 loop = 0
  1486.                 MagicSphere(25,15,spear.CFrame,"Institutional white")
  1487.             end
  1488.             attractnearest("Part",spear,12.5,50,5)
  1489.         until spear.Parent == nil
  1490.     end))
  1491.     ATTACK = false
  1492. end
  1493.  
  1494. function GravityGlobe()
  1495.     ATTACK = true
  1496.     Rooted = true
  1497.     for i=0, 1, 0.1 / Animation_Speed do
  1498.         Swait()
  1499.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  1500.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1501.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1502.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(80), RAD(-20), RAD(-30)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1503.         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)
  1504.         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)
  1505.     end
  1506.     coroutine.resume(coroutine.create(function()
  1507.         CreateMagicCircle(100,true,0.02,50,CF(RootPart.Position) * CF(0,-2.8,0),true)
  1508.         local cframe = RootPart.CFrame
  1509.         CreateSound(RELEASESOUND, Effects, 2, 1)
  1510.         local sphere = IT("Part",Effects)
  1511.         sphere.Shape = "Ball"
  1512.         sphere.Size = VT(0,0,0)
  1513.         sphere.Anchored = true
  1514.         sphere.CanCollide = false
  1515.         sphere.Material = "Neon"
  1516.         sphere.Transparency = 0.5
  1517.         sphere.BrickColor = BRICKC("Institutional white")
  1518.         sphere.CFrame = cframe
  1519.         local sphere2 = IT("Part",Effects)
  1520.         sphere2.Shape = "Ball"
  1521.         sphere2.Size = VT(0,0,0)
  1522.         sphere2.Anchored = true
  1523.         sphere2.CanCollide = false
  1524.         sphere2.Material = "Neon"
  1525.         sphere2.Transparency = 0.3
  1526.         sphere2.BrickColor = BRICKC("Institutional white")
  1527.         sphere2.CFrame = cframe
  1528.         for i = 1, 10 do
  1529.             Swait(2)
  1530.             attractnearest("Vector",cframe.p,50,50,10)
  1531.             sphere.CFrame = cframe
  1532.             sphere.Size = sphere.Size + VT(4,4,4)
  1533.             sphere2.CFrame = cframe
  1534.             sphere2.Size = sphere2.Size + VT(3.5,3.5,3.5)
  1535.             killnearest(cframe.p,15,0)
  1536.         end
  1537.         local scale = 0.2
  1538.         local mode = "shrink"
  1539.         for i = 1, 350 do
  1540.             Swait()
  1541.             if mode == "shrink" then
  1542.                 scale = scale + scale
  1543.                 if scale >= - 65 then
  1544.                     mode = "grow"
  1545.                 end
  1546.             elseif mode == "grow" then
  1547.                 scale = scale + -scale*2
  1548.                 if scale <= - 65 then
  1549.                     mode = "shrink"
  1550.                 end
  1551.             end
  1552.             CreateRing(180,5,true,0,50,sphere,0,scale,scale,"Institutional white")
  1553.             sphere.Size = sphere.Size + VT(scale,scale,scale)
  1554.             attractnearest("Vector",cframe.p,50,50,5)
  1555.             killnearest(cframe.p,15,0)
  1556.         end
  1557.         for i = 1, 10 do
  1558.             Swait(2)
  1559.             sphere.CFrame = cframe
  1560.             sphere.Size = sphere.Size - VT(5,5,5)
  1561.             sphere.CFrame = cframe
  1562.             sphere2.CFrame = cframe
  1563.             sphere2.Size = sphere2.Size - VT(3.5,3.5,3.5)
  1564.         end
  1565.         sphere:remove()
  1566.         sphere2:remove()
  1567.     end))
  1568.     for i=0, 1, 0.1 / Animation_Speed do
  1569.         Swait()
  1570.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
  1571.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1572.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1573.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.25 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-20 + MRANDOM(-2.5, 2.5))) * ANGLES(RAD(70 + MRANDOM(-2.5, 2.5)), RAD(40), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1574.         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)
  1575.         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)
  1576.     end
  1577.     Rooted = false
  1578.     ATTACK = false
  1579. end
  1580.  
  1581. function GravityBeam()
  1582.     ATTACK = true
  1583.     Rooted = true
  1584.     for i=0, 1.5, 0.1 / Animation_Speed do
  1585.         Swait()
  1586.         turnto(Mouse.Hit.p)
  1587.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
  1588.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
  1589.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1590.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1591.         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)
  1592.         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)
  1593.     end
  1594.     local startpos = RightArm.CFrame*CF(0,-1.5,0).p
  1595.     local loop = 0
  1596.     local loopsound = CreateSound(CHARGESOUND, RightArm, 10, 1, true)
  1597.     local loopsound2 = CreateSound("487214658", Effects, 1, 0, true)
  1598.     local pos = nil
  1599.     repeat
  1600.         if loop < 150 then
  1601.             Swait()
  1602.             loop = loop + 1
  1603.             turnto(Mouse.Hit.p)
  1604.             MagicSphere(15,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
  1605.             MagicSphere(12,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
  1606.         else
  1607.             loopsound2.Pitch = 1
  1608.             loopsound:Stop()
  1609.             startpos = RightArm.CFrame*CF(0,-1.5,0).p
  1610.             turnto(Mouse.Hit.p)
  1611.             MagicSphere(35,25,CF(startpos),"Institutional white")
  1612.             MagicSphere(32,25,CF(startpos),"Institutional white")
  1613.             local RayHit, RayPos, RayNormal = CastZapRay(startpos, Mouse.Hit.p, 150, Character, false)
  1614.             local distance = (startpos - RayPos).magnitude
  1615.             local laser = Instance.new("Part",Effects)
  1616.             laser.Transparency = 0.5
  1617.             laser.CanCollide = false
  1618.             laser.Anchored = true
  1619.             laser.BrickColor = BrickColor.new("Institutional white")
  1620.             laser.Material = "Neon"
  1621.             laser.formFactor    = Enum.FormFactor.Custom
  1622.             laser.Size          = Vector3.new(2.5, 2.5, distance)
  1623.             laser.CFrame        = CFrame.new(startpos, RayPos) * CFrame.new(0, 0, -distance/2)
  1624.             local laser2 = Instance.new("Part",Effects)
  1625.             laser2.Transparency = 0
  1626.             laser2.CanCollide = false
  1627.             laser2.Anchored = true
  1628.             laser2.BrickColor = BrickColor.new("Institutional white")
  1629.             laser2.Material = "Neon"
  1630.             laser2.formFactor    = Enum.FormFactor.Custom
  1631.             laser2.Size          = Vector3.new(2, 2, distance)
  1632.             laser2.CFrame        = CFrame.new(startpos, RayPos) * CFrame.new(0, 0, -distance/2)
  1633.             killnearest(RayPos,5,150,true)
  1634.             MagicSphere(350,2,CF(RayPos),"Institutional white")
  1635.             MagicSphere(320,2,CF(RayPos),"Institutional white")
  1636.             if RayHit ~= nil then
  1637.                 CreateWave(0,5,false,0,25,CF(RayPos),0,"Institutional white")
  1638.             end
  1639.             attractnearest("Vector",RayPos,40,50,10)
  1640.             pos = RayPos
  1641.             Swait()
  1642.             laser2:remove()
  1643.             laser:remove()
  1644.         end
  1645.     until KEYHOLD == false
  1646.     if loop == 150 then
  1647.         local cframe = CF(pos)
  1648.         coroutine.resume(coroutine.create(function()
  1649.             coroutine.resume(coroutine.create(function()
  1650.                 CreateSound(RELEASESOUND, Effects, 2, 1)
  1651.                 MagicSphere(500,55,cframe,"Institutional white")
  1652.                 MagicSphere(450,55,cframe,"Institutional white")
  1653.                 for i = 1, 15 do
  1654.                     Swait()
  1655.                     killnearest(cframe.p,75,150)
  1656.                 end
  1657.             end))
  1658.         end))
  1659.     end
  1660.     loopsound2:remove()
  1661.     loopsound:remove()
  1662.     Rooted = false
  1663.     ATTACK = false
  1664. end
  1665.  
  1666. --//=================================\\
  1667. --||      ASSIGN THINGS TO KEYS
  1668. --\\=================================//
  1669.  
  1670. Humanoid.Changed:connect(function(Jump)
  1671.     if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1672.         Humanoid.Jump = false
  1673.     end
  1674. end)
  1675.  
  1676. function MouseDown(Mouse)
  1677.     if ATTACK == false then
  1678.     end
  1679. end
  1680.  
  1681. function MouseUp(Mouse)
  1682. HOLD = false
  1683. end
  1684.  
  1685. function KeyDown(Key)
  1686.     KEYHOLD = true
  1687.     if Key == "q" and ATTACK == false then
  1688.         GraviBomb()
  1689.     end
  1690.  
  1691.     if Key == "e" and ATTACK == false then
  1692.         GraviSpear()
  1693.     end
  1694.  
  1695.     if Key == "r" and ATTACK == false then
  1696.         GravityGlobe()
  1697.     end
  1698.  
  1699.     if Key == "g" and ATTACK == false then
  1700.         GravityBeam()
  1701.     end
  1702.  
  1703.     if Key == "x" and ATTACK == false then
  1704.     end
  1705.  
  1706.     if Key == "c" and ATTACK == false then
  1707.         WarpSpear()
  1708.     end
  1709.  
  1710.     if Key == "t" and ATTACK == false then
  1711.         CreateSound("305685800", Head, 10, 1 ,false)
  1712.     end
  1713. end
  1714.  
  1715. function KeyUp(Key)
  1716.     KEYHOLD = false
  1717. end
  1718.  
  1719.     Mouse.Button1Down:connect(function(NEWKEY)
  1720.         MouseDown(NEWKEY)
  1721.     end)
  1722.     Mouse.Button1Up:connect(function(NEWKEY)
  1723.         MouseUp(NEWKEY)
  1724.     end)
  1725.     Mouse.KeyDown:connect(function(NEWKEY)
  1726.         KeyDown(NEWKEY)
  1727.     end)
  1728.     Mouse.KeyUp:connect(function(NEWKEY)
  1729.         KeyUp(NEWKEY)
  1730.     end)
  1731.  
  1732. --//=================================\\
  1733. --\\=================================//
  1734.  
  1735.  
  1736. function unanchor()
  1737.     if UNANCHOR == true then
  1738.         g = Character:GetChildren()
  1739.         for i = 1, #g do
  1740.             if g[i].ClassName == "Part" then
  1741.                 g[i].Anchored = false
  1742.             end
  1743.         end
  1744.     end
  1745. end
  1746.  
  1747.  
  1748. --//=================================\\
  1749. --||    WRAP THE WHOLE SCRIPT UP
  1750. --\\=================================//
  1751.  
  1752. Humanoid.Changed:connect(function(Jump)
  1753.     if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1754.         Humanoid.Jump = false
  1755.     end
  1756. end)
  1757.  
  1758.         ANIMATE.Parent = nil
  1759.         local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  1760.         IDLEANIMATION:Play()
  1761.  
  1762. while true do
  1763.     Swait()
  1764.     SINE = SINE + CHANGE
  1765.     local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1766.     local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1767.     local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  1768.     local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  1769.     local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  1770.         if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1771.             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)
  1772.             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)
  1773.             --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)
  1774.             --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)
  1775.         elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1776.             RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1777.             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)
  1778.             --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)
  1779.             ----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)
  1780.         end
  1781.         if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1782.             ANIM = "Jump"
  1783.             if ATTACK == false then
  1784.                 RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1785.                 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)
  1786.                 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)
  1787.                 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)
  1788.                 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)
  1789.                 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)
  1790.             end
  1791.         elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1792.             ANIM = "Fall"
  1793.             if ATTACK == false then
  1794.                 RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1795.                 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)
  1796.                 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)
  1797.                 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)
  1798.                 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)
  1799.                 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)
  1800.             end
  1801.         elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1802.             ANIM = "Idle"
  1803.             if ATTACK == false then
  1804.                 RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1805.                 Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1806.                 RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1807.                 LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1808.                 RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1809.                 LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1810.             end
  1811.         elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1812.             ANIM = "Walk"
  1813.             WALK = WALK + 1 / Animation_Speed
  1814.             if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  1815.                 WALK = 0
  1816.                 if WALKINGANIM == true then
  1817.                     WALKINGANIM = false
  1818.                 elseif WALKINGANIM == false then
  1819.                     WALKINGANIM = true
  1820.                 end
  1821.             end
  1822.             --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)
  1823.             --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)
  1824.             if ATTACK == false then
  1825.                 RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed*3)
  1826.                 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(0)), 0.15 / Animation_Speed)
  1827.                 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)
  1828.                 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)
  1829.                 RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1830.                 LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1831.             end
  1832.         end
  1833. if #Effects2>0 then
  1834. for e=1,#Effects2 do
  1835. if Effects2[e]~=nil then
  1836. local Thing=Effects2[e]
  1837. if Thing~=nil then
  1838. local Part=Thing[1]
  1839. local Mode=Thing[2]
  1840. local Delay=Thing[3]
  1841. local IncX=Thing[4]
  1842. local IncY=Thing[5]
  1843. local IncZ=Thing[6]
  1844. local Part2=Thing[8]
  1845. if Thing[1].Transparency<=1 then
  1846. if Thing[2]=="Block1" then
  1847. Thing[1].CFrame=Thing[1].CFrame
  1848. Mesh=Thing[1].Mesh
  1849. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1850. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1851. elseif Thing[2]=="Cylinder" then
  1852. Mesh=Thing[1].Mesh
  1853. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1854. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1855. elseif Thing[2]=="Blood" then
  1856. Mesh=Thing[7]
  1857. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  1858. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1859. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1860. elseif Thing[2]=="Elec" then
  1861. Mesh=Thing[1].Mesh
  1862. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  1863. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1864. elseif Thing[2]=="Disappear" then
  1865. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1866. end
  1867. else
  1868. Part.Parent=nil
  1869. table.remove(Effects2,e)
  1870. end
  1871. end
  1872. end
  1873. end
  1874. end
  1875. unanchor()
  1876. Humanoid.MaxHealth = "inf"
  1877. Humanoid.Health = "inf"
  1878. if Rooted == false then
  1879.     Disable_Jump = false
  1880.     Humanoid.WalkSpeed = Speed
  1881. elseif Rooted == true then
  1882.     Disable_Jump = true
  1883.     Humanoid.WalkSpeed = 0
  1884. end
  1885. --CreateMagicCircle(2 ,false,0,3,LeftLeg.CFrame * CF(0,-1.2,0),true)
  1886. end
  1887.  
  1888. --//=================================\\
  1889. --\\=================================//
  1890.  
  1891.  
  1892.  
  1893.  
  1894.  
  1895. --//====================================================\\--
  1896. --||                     END OF SCRIPT
  1897. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement