Advertisement
lafur

Untitled

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