Advertisement
PlanetTheo

ROBLOX Black Hole Script FE

Feb 5th, 2019
24,520
-1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.70 KB | None | 0 1
  1. --//====================================================\\--
  2. --|| CREATED BY SHACKLUSTER
  3. --\\====================================================//--
  4.  
  5. ----converted to FE by PlanetTheo----
  6.  
  7. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  8. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  9. do
  10. print("Converted to FE script by PlanetTheo")
  11. script.Parent = Player.Character
  12.  
  13. --RemoteEvent for communicating
  14. local Event = Instance.new("RemoteEvent")
  15. Event.Name = "UserInput_Event"
  16.  
  17. --Fake event to make stuff like Mouse.KeyDown work
  18. local function fakeEvent()
  19. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  20. t.connect = t.Connect
  21. return t
  22. end
  23.  
  24. --Creating fake input objects with fake variables
  25. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  26. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  27. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  28. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  29. end}
  30. --Merged 2 functions into one by checking amount of arguments
  31. CAS.UnbindAction = CAS.BindAction
  32.  
  33. --This function will trigger the events that have been :Connect()'ed
  34. local function te(self,ev,...)
  35. local t = m[ev]
  36. if t and t._fakeEvent and t.Function then
  37. t.Function(...)
  38. end
  39. end
  40. m.TrigEvent = te
  41. UIS.TrigEvent = te
  42.  
  43. Event.OnServerEvent:Connect(function(plr,io)
  44. if plr~=Player then return end
  45. if io.isMouse then
  46. m.Target = io.Target
  47. m.Hit = io.Hit
  48. else
  49. local b = io.UserInputState == Enum.UserInputState.Begin
  50. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  51. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  52. end
  53. for _,t in pairs(CAS.Actions) do
  54. for _,k in pairs(t.Keys) do
  55. if k==io.KeyCode then
  56. t.Function(t.Name,io.UserInputState,io)
  57. end
  58. end
  59. end
  60. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  61. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  62. end
  63. end)
  64. Event.Parent = NLS([==[
  65. local Player = game:GetService("Players").LocalPlayer
  66. local Event = script:WaitForChild("UserInput_Event")
  67.  
  68. local UIS = game:GetService("UserInputService")
  69. local input = function(io,a)
  70. if a then return end
  71. --Since InputObject is a client-side instance, we create and pass table instead
  72. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  73. end
  74. UIS.InputBegan:Connect(input)
  75. UIS.InputEnded:Connect(input)
  76.  
  77. local Mouse = Player:GetMouse()
  78. local h,t
  79. --Give the server mouse data 30 times every second, but only if the values changed
  80. --If player is not moving their mouse, client won't fire events
  81. while wait(1/30) do
  82. if h~=Mouse.Hit or t~=Mouse.Target then
  83. h,t=Mouse.Hit,Mouse.Target
  84. Event:FireServer({isMouse=true,Target=t,Hit=h})
  85. end
  86. end]==],Player.Character)
  87. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  88. end
  89. -------------------------------------------------------
  90. wait(0.2)
  91.  
  92.  
  93.  
  94. Player = owner
  95. PlayerGui = Player.PlayerGui
  96. Cam = workspace.CurrentCamera
  97. Backpack = Player.Backpack
  98. Character = Player.Character
  99. Humanoid = Character.Humanoid
  100. RootPart = Character["HumanoidRootPart"]
  101. Torso = Character["Torso"]
  102. Head = Character["Head"]
  103. RightArm = Character["Right Arm"]
  104. LeftArm = Character["Left Arm"]
  105. RightLeg = Character["Right Leg"]
  106. LeftLeg = Character["Left Leg"]
  107. RootJoint = RootPart["RootJoint"]
  108. Neck = Torso["Neck"]
  109. RightShoulder = Torso["Right Shoulder"]
  110. LeftShoulder = Torso["Left Shoulder"]
  111. RightHip = Torso["Right Hip"]
  112. LeftHip = Torso["Left Hip"]
  113.  
  114. IT = Instance.new
  115. CF = CFrame.new
  116. VT = Vector3.new
  117. RAD = math.rad
  118. C3 = Color3.new
  119. UD2 = UDim2.new
  120. BRICKC = BrickColor.new
  121. ANGLES = CFrame.Angles
  122. EULER = CFrame.fromEulerAnglesXYZ
  123. COS = math.cos
  124. ACOS = math.acos
  125. SIN = math.sin
  126. ASIN = math.asin
  127. ABS = math.abs
  128. MRANDOM = math.random
  129. FLOOR = math.floor
  130.  
  131. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  132. local NEWMESH = IT(MESH)
  133. if MESH == "SpecialMesh" then
  134. NEWMESH.MeshType = MESHTYPE
  135. if MESHID ~= "nil" and MESHID ~= "" then
  136. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  137. end
  138. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  139. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  140. end
  141. end
  142. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  143. NEWMESH.Scale = SCALE
  144. NEWMESH.Parent = PARENT
  145. return NEWMESH
  146. end
  147.  
  148. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
  149. local NEWPART = IT("Part")
  150. NEWPART.formFactor = FORMFACTOR
  151. NEWPART.Reflectance = REFLECTANCE
  152. NEWPART.Transparency = TRANSPARENCY
  153. NEWPART.CanCollide = false
  154. NEWPART.Locked = true
  155. NEWPART.Anchored = true
  156. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  157. NEWPART.Name = NAME
  158. NEWPART.Size = SIZE
  159. NEWPART.Position = Torso.Position
  160. NEWPART.Material = MATERIAL
  161. NEWPART:BreakJoints()
  162. NEWPART.Parent = PARENT
  163. return NEWPART
  164. end
  165.  
  166.  
  167. --//=================================\\
  168. --|| CUSTOMIZATION
  169. --\\=================================//
  170.  
  171. Class_Name = "Nigger OP Hole"
  172. Weapon_Name = "Add-ons"
  173.  
  174. Custom_Colors = {
  175. Custom_Color_1 = BRICKC("Institutional black"); --1st color for the weapon.
  176. Custom_Color_2 = BRICKC("Institutional black"); --2nd color for the weapon.
  177.  
  178. Custom_Color_3 = BRICKC("Institutional red"); --Color for the abilities.
  179. Custom_Color_4 = BRICKC("Institutional red"); --Color for the secondary bar.
  180. Custom_Color_5 = BRICKC("Institutional red"); --Color for the mana bar.
  181. Custom_Color_6 = BRICKC("Institutional red"); --Color for the health bar.
  182. Custom_Color_7 = BRICKC("Institutional red"); --Color for the stun bar.
  183.  
  184. Custom_Color_8 = BRICKC("Institutional red"); --Background for the mana bar.
  185. Custom_Color_9 = BRICKC("Institutional red"); --Background for the secondary mana bar.
  186. Custom_Color_10 = BRICKC("Institutional red"); --Background for the stun bar.
  187. Custom_Color_11 = BRICKC("Institutional red"); --Background for the health bar.
  188. Custom_Color_12 = BRICKC("Institutional red"); --Background for the abilities.
  189. }
  190.  
  191.  
  192. Player_Size = 1 --Size of the player.
  193. Animation_Speed = 3
  194. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  195.  
  196. local Speed = 16
  197. local Effects2 = {}
  198.  
  199. --//=================================\\
  200. --|| END OF CUSTOMIZATION
  201. --\\=================================//
  202.  
  203. local function weldBetween(a, b)
  204. local weldd = Instance.new("ManualWeld")
  205. weldd.Part0 = a
  206. weldd.Part1 = b
  207. weldd.C0 = CFrame.new()
  208. weldd.C1 = b.CFrame:inverse() * a.CFrame
  209. weldd.Parent = a
  210. return weldd
  211. end
  212.  
  213. --//=================================\\
  214. --|| USEFUL VALUES
  215. --\\=================================//
  216.  
  217. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  218. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  219. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  220. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  221. local CO1 = 0
  222. local CO2 = 0
  223. local CO3 = 0
  224. local CO4 = 0
  225. local CHANGEDEFENSE = 0
  226. local CHANGEDAMAGE = 0
  227. local CHANGEMOVEMENT = 0
  228. local ANIM = "Idle"
  229. local ATTACK = false
  230. local EQUIPPED = false
  231. local HOLD = false
  232. local COMBO = 1
  233. local LASTPOINT = nil
  234. local BLCF = nil
  235. local SCFR = nil
  236. local STAGGERHITANIM = false
  237. local STAGGERANIM = false
  238. local STUNANIM = false
  239. local CRITCHANCENUMBER = 0
  240. local IDLENUMBER = 0
  241. local DONUMBER = 0
  242. local HANDIDLE = false
  243. local PLAYINGMUSIC = false
  244. local SINE = 0
  245. local CHANGE = 2 / Animation_Speed
  246. local WALKINGANIM = false
  247. local WALK = 0
  248. local DISABLEJUMPING = false
  249. local HASBEENBLOCKED = false
  250. local STUNDELAYNUMBER = 0
  251. local MANADELAYNUMBER = 0
  252. local SOUND = nil
  253. local SECONDARYMANADELAYNUMBER = 0
  254. local ROBLOXIDLEANIMATION = IT("Animation")
  255. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  256. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  257. --ROBLOXIDLEANIMATION.Parent = Humanoid
  258. local WEAPONGUI = IT("ScreenGui", nil)
  259. WEAPONGUI.Name = "Weapon GUI"
  260. local WEAPONTOOL = IT("HopperBin", nil)
  261. WEAPONTOOL.Name = Weapon_Name
  262. local Weapon = IT("Model")
  263. Weapon.Name = Weapon_Name
  264. local Effects = IT("Folder", Weapon)
  265. Effects.Name = "Effects"
  266. local ANIMATOR = Humanoid.Animator
  267. local ANIMATE = Character.Animate
  268. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  269. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  270. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  271. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  272. local PEWSOUND = {"907527750","907527912","907528019","907530553"}
  273. local BULLETLOOPSOUND = "907530407"
  274. local BULLETIMPACTSOUND = "907532865"
  275. local UNANCHOR = true
  276. local MAGICPARTICLE = "655109389"
  277. local Rooted = false
  278. local GRABBED = false
  279. local X = 10
  280. local Y = 10
  281. local Z = 10
  282. local CUSTOMMOVEMENT = false
  283. local FLIGHT = false
  284. local VACUUM = false
  285.  
  286. --//=================================\\
  287. --\\=================================//
  288.  
  289.  
  290.  
  291.  
  292. --//=================================\\
  293. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  294. --\\=================================//
  295.  
  296. ArtificialHB = Instance.new("BindableEvent", script)
  297. ArtificialHB.Name = "ArtificialHB"
  298.  
  299. script:WaitForChild("ArtificialHB")
  300.  
  301. frame = Frame_Speed
  302. tf = 0
  303. allowframeloss = false
  304. tossremainder = false
  305. lastframe = tick()
  306. script.ArtificialHB:Fire()
  307.  
  308. game:GetService("RunService").Heartbeat:connect(function(s, p)
  309. tf = tf + s
  310. if tf >= frame then
  311. if allowframeloss then
  312. script.ArtificialHB:Fire()
  313. lastframe = tick()
  314. else
  315. for i = 1, math.floor(tf / frame) do
  316. script.ArtificialHB:Fire()
  317. end
  318. lastframe = tick()
  319. end
  320. if tossremainder then
  321. tf = 0
  322. else
  323. tf = tf - frame * math.floor(tf / frame)
  324. end
  325. end
  326. end)
  327.  
  328. --//=================================\\
  329. --\\=================================//
  330.  
  331.  
  332.  
  333.  
  334.  
  335. --//=================================\\
  336. --|| SOME FUNCTIONS
  337. --\\=================================//
  338.  
  339. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  340. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  341. end
  342.  
  343. function PositiveAngle(NUMBER)
  344. if NUMBER >= 0 then
  345. NUMBER = 0
  346. end
  347. return NUMBER
  348. end
  349.  
  350. function NegativeAngle(NUMBER)
  351. if NUMBER <= 0 then
  352. NUMBER = 0
  353. end
  354. return NUMBER
  355. end
  356.  
  357. function Swait(NUMBER)
  358. if NUMBER == 0 or NUMBER == nil then
  359. ArtificialHB.Event:wait()
  360. else
  361. for i = 1, NUMBER do
  362. ArtificialHB.Event:wait()
  363. end
  364. end
  365. end
  366.  
  367. function QuaternionFromCFrame(cf)
  368. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  369. local trace = m00 + m11 + m22
  370. if trace > 0 then
  371. local s = math.sqrt(1 + trace)
  372. local recip = 0.5 / s
  373. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  374. else
  375. local i = 0
  376. if m11 > m00 then
  377. i = 1
  378. end
  379. if m22 > (i == 0 and m00 or m11) then
  380. i = 2
  381. end
  382. if i == 0 then
  383. local s = math.sqrt(m00 - m11 - m22 + 1)
  384. local recip = 0.5 / s
  385. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  386. elseif i == 1 then
  387. local s = math.sqrt(m11 - m22 - m00 + 1)
  388. local recip = 0.5 / s
  389. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  390. elseif i == 2 then
  391. local s = math.sqrt(m22 - m00 - m11 + 1)
  392. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  393. end
  394. end
  395. end
  396.  
  397. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  398. local xs, ys, zs = x + x, y + y, z + z
  399. local wx, wy, wz = w * xs, w * ys, w * zs
  400. local xx = x * xs
  401. local xy = x * ys
  402. local xz = x * zs
  403. local yy = y * ys
  404. local yz = y * zs
  405. local zz = z * zs
  406. 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))
  407. end
  408.  
  409. function QuaternionSlerp(a, b, t)
  410. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  411. local startInterp, finishInterp;
  412. if cosTheta >= 0.0001 then
  413. if (1 - cosTheta) > 0.0001 then
  414. local theta = ACOS(cosTheta)
  415. local invSinTheta = 1 / SIN(theta)
  416. startInterp = SIN((1 - t) * theta) * invSinTheta
  417. finishInterp = SIN(t * theta) * invSinTheta
  418. else
  419. startInterp = 1 - t
  420. finishInterp = t
  421. end
  422. else
  423. if (1 + cosTheta) > 0.0001 then
  424. local theta = ACOS(-cosTheta)
  425. local invSinTheta = 1 / SIN(theta)
  426. startInterp = SIN((t - 1) * theta) * invSinTheta
  427. finishInterp = SIN(t * theta) * invSinTheta
  428. else
  429. startInterp = t - 1
  430. finishInterp = t
  431. end
  432. end
  433. 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
  434. end
  435.  
  436. function Clerp(a, b, t)
  437. local qa = {QuaternionFromCFrame(a)}
  438. local qb = {QuaternionFromCFrame(b)}
  439. local ax, ay, az = a.x, a.y, a.z
  440. local bx, by, bz = b.x, b.y, b.z
  441. local _t = 1 - t
  442. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  443. end
  444.  
  445. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  446. local frame = IT("Frame")
  447. frame.BackgroundTransparency = TRANSPARENCY
  448. frame.BorderSizePixel = BORDERSIZEPIXEL
  449. frame.Position = POSITION
  450. frame.Size = SIZE
  451. frame.BackgroundColor3 = COLOR
  452. frame.BorderColor3 = BORDERCOLOR
  453. frame.Name = NAME
  454. frame.Parent = PARENT
  455. return frame
  456. end
  457.  
  458. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  459. local label = IT("TextLabel")
  460. label.BackgroundTransparency = 1
  461. label.Size = UD2(1, 0, 1, 0)
  462. label.Position = UD2(0, 0, 0, 0)
  463. label.TextColor3 = C3(255, 255, 255)
  464. label.TextStrokeTransparency = STROKETRANSPARENCY
  465. label.TextTransparency = TRANSPARENCY
  466. label.FontSize = TEXTFONTSIZE
  467. label.Font = TEXTFONT
  468. label.BorderSizePixel = BORDERSIZEPIXEL
  469. label.TextScaled = true
  470. label.Text = TEXT
  471. label.Name = NAME
  472. label.Parent = PARENT
  473. return label
  474. end
  475.  
  476. function NoOutlines(PART)
  477. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  478. end
  479.  
  480.  
  481. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  482. local NEWWELD = IT(TYPE)
  483. NEWWELD.Part0 = PART0
  484. NEWWELD.Part1 = PART1
  485. NEWWELD.C0 = C0
  486. NEWWELD.C1 = C1
  487. NEWWELD.Parent = PARENT
  488. return NEWWELD
  489. end
  490.  
  491. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  492. local NEWSOUND = nil
  493. coroutine.resume(coroutine.create(function()
  494. NEWSOUND = IT("Sound", PARENT)
  495. NEWSOUND.Volume = VOLUME
  496. NEWSOUND.Pitch = PITCH
  497. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=2565597409"..ID
  498. Swait()
  499. NEWSOUND:play()
  500. if DOESLOOP == false then
  501. repeat Swait() until NEWSOUND.Playing == false
  502. NEWSOUND:remove()
  503. elseif DOESLOOP == true then
  504. NEWSOUND.Looped = true
  505. end
  506. end))
  507. return NEWSOUND
  508. end
  509.  
  510. function CFrameFromTopBack(at, top, back)
  511. local right = top:Cross(back)
  512. 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)
  513. end
  514.  
  515. function CreateWave(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
  516. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  517. local mesh = IT("SpecialMesh",wave)
  518. mesh.MeshType = "FileMesh"
  519. mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  520. mesh.Scale = VT(size,size,size)
  521. mesh.Offset = VT(0,0,-size/8)
  522. wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  523. coroutine.resume(coroutine.create(function(PART)
  524. for i = 1, waitt do
  525. Swait()
  526. mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  527. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  528. if doesrotate == true then
  529. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  530. end
  531. wave.Transparency = wave.Transparency + (0.5/waitt)
  532. if wave.Transparency > 0.99 then
  533. wave:remove()
  534. end
  535. end
  536. end))
  537. end
  538.  
  539. function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
  540. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  541. local mesh = IT("SpecialMesh",wave)
  542. mesh.MeshType = "FileMesh"
  543. mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
  544. mesh.Scale = VT(size,size,size)
  545. wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  546. coroutine.resume(coroutine.create(function(PART)
  547. for i = 1, waitt do
  548. Swait()
  549. mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  550. if doesrotate == true then
  551. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  552. end
  553. wave.Transparency = wave.Transparency + (0.5/waitt)
  554. if wave.Transparency > 0.99 then
  555. wave:remove()
  556. end
  557. end
  558. end))
  559. end
  560.  
  561. function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
  562. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  563. local mesh = IT("SpecialMesh",wave)
  564. mesh.MeshType = "FileMesh"
  565. mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
  566. mesh.Scale = VT(size,size,size)
  567. wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
  568. coroutine.resume(coroutine.create(function(PART)
  569. for i = 1, waitt do
  570. Swait()
  571. mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  572. if doesrotate == true then
  573. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  574. end
  575. wave.Transparency = wave.Transparency + (0.5/waitt)
  576. if wave.Transparency > 0.99 then
  577. wave:remove()
  578. end
  579. end
  580. end))
  581. end
  582.  
  583. function CreateRing(inair,size,doesrotate,rotatedirection,waitt,part,offset,spin1,spin2,color)
  584. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
  585. local mesh = IT("SpecialMesh",wave)
  586. mesh.MeshType = "FileMesh"
  587. mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  588. mesh.Scale = VT(size,size,size)
  589. mesh.Offset = VT(0,0,0)
  590. wave.CFrame = CF(part.Position) * 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,size/5,size/5)
  595. if doesrotate == true then
  596. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
  597. end
  598. wave.Transparency = wave.Transparency + (1/waitt)
  599. if wave.Transparency > 0.99 then
  600. wave:remove()
  601. end
  602. end
  603. end))
  604. end
  605.  
  606. function MagicSphere(size,waitt,part,offset,color)
  607. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1))
  608. local mesh = IT("SpecialMesh",wave)
  609. mesh.MeshType = "Sphere"
  610. mesh.Scale = VT(size,size,size)
  611. mesh.Offset = VT(0,0,0)
  612. wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(0),RAD(0),RAD(0))
  613. coroutine.resume(coroutine.create(function(PART)
  614. for i = 1, waitt do
  615. Swait()
  616. mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  617. wave.Transparency = wave.Transparency + (1/waitt)
  618. if wave.Transparency > 0.99 then
  619. wave:remove()
  620. end
  621. end
  622. end))
  623. end
  624.  
  625. function clerp(a, b, t)
  626. return a:lerp(b, t)
  627. end
  628.  
  629. function newBezier(startpos, pos2, pos3, endpos, t)
  630. local A = clerp(startpos, pos2, t)
  631. local B = clerp(pos2, pos3, t)
  632. local C = clerp(pos3, endpos, t)
  633. local lerp1 = clerp(A, B, t)
  634. local lerp2 = clerp(B, C, t)
  635. local cubic = clerp(lerp1, lerp2, t)
  636. return cubic
  637. end
  638.  
  639. function MagicBlock(size,waitt,part,offset,color)
  640. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(size,size,size))
  641. local mesh = IT("BlockMesh",wave)
  642. wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(0),RAD(0),RAD(0))
  643. coroutine.resume(coroutine.create(function(PART)
  644. for i = 1, waitt do
  645. Swait()
  646. mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  647. wave.CFrame = CF(wave.Position) * ANGLES(RAD(math(-360,360)),RAD(math(-360,360)),RAD(math(-360,360)))
  648. wave.Transparency = wave.Transparency + (0.5/waitt)
  649. if wave.Transparency > 0.99 then
  650. wave:remove()
  651. end
  652. end
  653. end))
  654. end
  655.  
  656. local EyeSizes={
  657. NumberSequenceKeypoint.new(0,1,0),
  658. NumberSequenceKeypoint.new(1,0.2,0)
  659. }
  660. local EyeTrans={
  661. NumberSequenceKeypoint.new(0,0.8,0),
  662. NumberSequenceKeypoint.new(1,1,0)
  663. }
  664. local PE=Instance.new("ParticleEmitter")
  665. PE.LightEmission=0
  666. PE.Size=NumberSequence.new(EyeSizes)
  667. PE.Transparency=NumberSequence.new(EyeTrans)
  668. PE.Lifetime=NumberRange.new(0.35,0.35,0.35)
  669. PE.Rotation=NumberRange.new(0,360)
  670. PE.Rate=15
  671. PE.Acceleration = Vector3.new(0,75,0)
  672. PE.Drag = 5
  673. PE.Enabled = false
  674. PE.RotSpeed = NumberRange.new(75)
  675. PE.Speed = NumberRange.new(0,0,0)
  676. PE.Texture="http://www.roblox.com/asset/?id=1179557490"
  677. PE.ZOffset = 0
  678. PE.Name = "Particles"
  679.  
  680. function CreateParticles(art,accel,drag,rate,type,isenabledbydefault,locked,size)
  681. local particle = PE:Clone()
  682. particle.Parent = art
  683. particle.Acceleration = accel
  684. particle.Rate = rate
  685. if type == "Fire" then
  686. local EyeSizes={
  687. NumberSequenceKeypoint.new(0,size,size*0.3),
  688. NumberSequenceKeypoint.new(1,0.2,0.2)
  689. }
  690. particle.Size = NumberSequence.new(EyeSizes)
  691. elseif type == "Smoke" then
  692. local EyeSizes={
  693. NumberSequenceKeypoint.new(0,size,0),
  694. NumberSequenceKeypoint.new(1,size*5,0.5)
  695. }
  696. particle.Size = NumberSequence.new(EyeSizes)
  697. elseif type == "Solid" then
  698. local EyeSizes={
  699. NumberSequenceKeypoint.new(0,size,0),
  700. NumberSequenceKeypoint.new(1,size,0)
  701. }
  702. particle.Size = NumberSequence.new(EyeSizes)
  703. end
  704. particle.LockedToPart = locked
  705. particle.Drag = drag
  706. particle.Texture = "http://www.roblox.com/asset/?id=43997508"
  707. particle.Enabled = isenabledbydefault
  708. return particle
  709. end
  710.  
  711. --//=================================\\
  712. --\\=================================//
  713.  
  714.  
  715. --//=================================\\
  716. --|| WEAPON CREATION
  717. --\\=================================//
  718.  
  719. if Player_Size ~= 1 then
  720. for _, v in pairs (Weapon:GetChildren()) do
  721. if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  722. local p1 = v.Part1
  723. v.Part1 = nil
  724. local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  725. v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  726. v.Part1 = p1
  727. elseif v.ClassName == "Part" then
  728. for _, b in pairs (v:GetChildren()) do
  729. if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  730. b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  731. end
  732. end
  733. end
  734. end
  735. end
  736.  
  737. for _, c in pairs(Weapon:GetChildren()) do
  738. if c.ClassName == "Part" then
  739. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  740. end
  741. end
  742.  
  743. Weapon.Parent = Character
  744.  
  745. Humanoid.Died:connect(function()
  746. ATTACK = true
  747. end)
  748.  
  749. print(Class_Name.." loaded.")
  750.  
  751. local ORB = IT("Part",Weapon)
  752. ORB.CanCollide = false
  753. ORB.Anchored = false
  754. ORB.CFrame = RootPart.CFrame
  755. ORB.Shape = "Ball"
  756. ORB.Material = "Neon"
  757. ORB.Size = VT(0.2,0.2,0.2)
  758. ORB.Color = C3(0.5,0,1)
  759. local Orbmesh = IT("SpecialMesh",ORB)
  760. Orbmesh.MeshType = "Sphere"
  761. Orbmesh.Scale = VT(10,10,10)
  762. local grav = Instance.new("BodyPosition",ORB)
  763. grav.P = 20000
  764. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  765. grav.position = RootPart.CFrame*CF(3,0.7,-1).p
  766. grav.Name = "GravityForce"
  767. CreateParticles(ORB,VT(0,0,0),0,150,"Solid",true,true,4)
  768.  
  769. --//=================================\\
  770. --\\=================================//
  771.  
  772. function onChatted(msg)
  773. if msg:sub(1,10) == "Orb, play " then
  774. local ID = msg:sub(11)
  775. if SOUND == nil then
  776. SOUND = CreateSound(ID, ORB, 5, 1, true)
  777. else
  778. SOUND:remove()
  779. SOUND = CreateSound(ID, ORB, 5, 1, true)
  780. end
  781. PLAYINGMUSIC = true
  782. elseif msg == "Orb, stop music" then
  783. if SOUND ~= nil then
  784. SOUND:remove()
  785. PLAYINGMUSIC = false
  786. elseif msg == "Orb, do you like me?" then
  787. CreateSound("269597232", ORB, 1, 1, false)
  788. end
  789. end
  790. end
  791. Player.Chatted:connect(onChatted)
  792.  
  793. --//=================================\\
  794. --|| ABILITIES
  795. --\\=================================//
  796.  
  797. function turnto(pos,part)
  798. part.CFrame = CF(part.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
  799. end
  800.  
  801. function Warp()
  802. ATTACK = true
  803. Rooted = true
  804. CUSTOMMOVEMENT = true
  805. grav.position = RootPart.CFrame.p
  806. Swait(50)
  807. CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
  808. for i = 1, 25 do
  809. Swait()
  810. X = X + 1
  811. Y = X
  812. Z = X
  813. end
  814. local weld = weldBetween(Torso,ORB)
  815. grav.position = VT(Mouse.Hit.p.X,Mouse.Hit.p.Y+4,Mouse.Hit.p.Z)
  816. Swait(50)
  817. CUSTOMMOVEMENT = false
  818. weld:remove()
  819. for i = 1, 25 do
  820. Swait()
  821. X = X - 1
  822. Y = X
  823. Z = X
  824. end
  825. ATTACK = false
  826. Rooted = false
  827. end
  828.  
  829. function StartFlight()
  830. Rooted = true
  831. CUSTOMMOVEMENT = true
  832. grav.position = RootPart.Position
  833. Swait(50)
  834. grav.P = 500
  835. CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
  836. for i = 1, 10 do
  837. Swait()
  838. X = X - 1
  839. Y = X
  840. Z = X
  841. end
  842. local weld = weldBetween(Torso,ORB)
  843. repeat
  844. Swait()
  845. grav.position = Mouse.Hit.p
  846. turnto(Mouse.Hit.p,RootPart)
  847. until FLIGHT == false
  848. grav.P = 20000
  849. CUSTOMMOVEMENT = false
  850. weld:remove()
  851. for i = 1, 10 do
  852. Swait()
  853. X = X + 1
  854. Y = X
  855. Z = X
  856. end
  857. Rooted = false
  858. end
  859.  
  860. function succnearest(position,range,force,doesbreak)
  861. for i,v in ipairs(workspace:GetChildren()) do
  862. local body = v:GetChildren()
  863. for part = 1, #body do
  864. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  865. if(body[part].Position - position).Magnitude < range then
  866. local bv = Instance.new("BodyVelocity")
  867. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  868. bv.velocity = CF(body[part].Position,position).lookVector*force
  869. bv.Parent = body[part]
  870. bv.Name = "SUCC"
  871. if v:FindFirstChild("Humanoid") and doesbreak == false then
  872. dealdamage(body[part],5,15,0,false,12,2)
  873. end
  874. if v.ClassName == "Model" and doesbreak == true then
  875. v:BreakJoints()
  876. end
  877. game:GetService("Debris"):AddItem(bv, 0.1)
  878. end
  879. end
  880. end
  881. if v.ClassName == "Part" then
  882. if v.Anchored == false and (v.Position - position).Magnitude < range then
  883. local bv = Instance.new("BodyVelocity")
  884. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  885. bv.velocity = CF(v.Position,position).lookVector*force
  886. bv.Parent = v
  887. bv.Name = "SUCC"
  888. game:GetService("Debris"):AddItem(bv, 0.1)
  889. end
  890. end
  891. end
  892. end
  893.  
  894. function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
  895. if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
  896. local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
  897. local dmg = math.random(min,max)
  898. if humanoid.Health > 0 then
  899. if beserk == true then
  900. humanoid.Health = 0
  901. else
  902. --CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
  903. --hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
  904. if math.random(1,100) < critrate+1 then
  905. humanoid.Health = humanoid.Health - dmg*critmultiplier
  906. --StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  907. else
  908. humanoid.Health = humanoid.Health - dmg
  909. --StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(255/255, 0, 0))
  910. end
  911. local defence = Instance.new("BoolValue",hit.Parent)
  912. defence.Name = ("HitBy"..Player.Name)
  913. game:GetService("Debris"):AddItem(defence, 0.5)
  914. end
  915. end
  916. end
  917. end
  918.  
  919. function Vacuum()
  920. CUSTOMMOVEMENT = true
  921. local succ = CreateSound("319444224", ORB, 0.3, 1, true)
  922. local harm = ORB.Touched:Connect(function(hit)
  923. if hit.Parent ~= Character and hit.Parent.ClassName ~= "Accessory" and hit.Parent ~= Effects and hit.Anchored == false then
  924. hit:remove()
  925. CreateSound("261732529", ORB, 3, 1,false)
  926. end
  927. end)
  928. repeat
  929. Swait()
  930. succnearest(ORB.Position,50,80,true)
  931. until VACUUM == false
  932. CUSTOMMOVEMENT = false
  933. succ:remove()
  934. harm:disconnect()
  935. end
  936.  
  937. function shootbullet()
  938. CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
  939. local bullet = IT("Part",Effects)
  940. bullet.Size = VT(1,1,1)
  941. bullet.Shape = "Ball"
  942. bullet.Material = "Neon"
  943. bullet.Color = C3(0.5,0,1)
  944. local sparks = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,2)
  945. bullet.CFrame = ORB.CFrame
  946. local bv = Instance.new("BodyVelocity")
  947. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  948. bv.velocity = CF(bullet.Position,Mouse.Hit.p).lookVector*200
  949. bv.Parent = bullet
  950. bv.Name = "MOVE"
  951. local loop = CreateSound(BULLETLOOPSOUND, bullet, 0.6, MRANDOM(9, 11) / 10,true)
  952. local HIT = false
  953. local harm = bullet.Touched:Connect(function(hit)
  954. if HIT == false and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
  955. HIT = true
  956. coroutine.resume(coroutine.create(function()
  957. coroutine.resume(coroutine.create(function()
  958. for i = 1, 10 do
  959. Swait()
  960. bullet.Transparency = bullet.Transparency + 0.1
  961. end
  962. end))
  963. bullet.Anchored = true
  964. bullet.CanCollide = false
  965. sparks.Enabled = false
  966. local sparks2 = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,7)
  967. loop.Volume = 3
  968. CreateSound(BULLETIMPACTSOUND, bullet, 2, MRANDOM(9, 11) / 10,false)
  969. for i = 1, 350 do
  970. Swait()
  971. succnearest(bullet.Position,15,25,false)
  972. end
  973. sparks2.Enabled = false
  974. for i = 1, 10 do
  975. Swait()
  976. loop.Volume = loop.Volume - (3/10)
  977. end
  978. bullet:remove()
  979. end))
  980. end
  981. end)
  982. end
  983.  
  984. function shoottoughbullet()
  985. CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
  986. local bullet = IT("Part",Effects)
  987. bullet.Size = VT(3,3,3)
  988. bullet.Shape = "Ball"
  989. bullet.Material = "Neon"
  990. bullet.Color = C3(0.5,0,1)
  991. local sparks = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,3.5)
  992. bullet.CFrame = ORB.CFrame
  993. local bv = Instance.new("BodyVelocity")
  994. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  995. bv.velocity = CF(bullet.Position,Mouse.Hit.p).lookVector*100
  996. bv.Parent = bullet
  997. bv.Name = "MOVE"
  998. local loop = CreateSound(BULLETLOOPSOUND, bullet, 0.6, MRANDOM(5, 7) / 10,true)
  999. local HIT = false
  1000. local harm = bullet.Touched:Connect(function(hit)
  1001. if HIT == false and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
  1002. HIT = true
  1003. coroutine.resume(coroutine.create(function()
  1004. coroutine.resume(coroutine.create(function()
  1005. for i = 1, 10 do
  1006. Swait()
  1007. bullet.Transparency = bullet.Transparency + 0.1
  1008. end
  1009. end))
  1010. bullet.Anchored = true
  1011. bullet.CanCollide = false
  1012. sparks.Enabled = false
  1013. local sparks2 = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,15)
  1014. loop.Volume = 3
  1015. CreateSound(BULLETIMPACTSOUND, bullet, 6, MRANDOM(5,7) / 10,false)
  1016. for i = 1, 50 do
  1017. Swait()
  1018. succnearest(bullet.Position,25,100,true)
  1019. end
  1020. sparks2.Enabled = false
  1021. for i = 1, 10 do
  1022. Swait()
  1023. loop.Volume = loop.Volume - (3/10)
  1024. end
  1025. bullet:remove()
  1026. end))
  1027. end
  1028. end)
  1029. end
  1030.  
  1031. function grab()
  1032. if Mouse.Target.Parent:FindFirstChild("Torso") then
  1033. local targ = Mouse.Target
  1034. GRABBED = true
  1035. targ.Anchored = true
  1036. CUSTOMMOVEMENT = true
  1037. grav.position = targ.Position
  1038. Swait(50)
  1039. if targ then
  1040. Swait(5)
  1041. targ.Anchored = false
  1042. CUSTOMMOVEMENT = false
  1043. repeat
  1044. Swait()
  1045. targ.CFrame = ORB.CFrame
  1046. until GRABBED == false or targ == nil
  1047. GRABBED = false
  1048. end
  1049. end
  1050. end
  1051.  
  1052. --//=================================\\
  1053. --|| ASSIGN THINGS TO KEYS
  1054. --\\=================================//
  1055.  
  1056. Humanoid.Changed:connect(function(Jump)
  1057. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1058. Humanoid.Jump = false
  1059. end
  1060. end)
  1061.  
  1062. function MouseDown(Mouse)
  1063. if ATTACK == false then
  1064. end
  1065. end
  1066.  
  1067. function MouseUp(Mouse)
  1068. HOLD = false
  1069. end
  1070.  
  1071. function KeyDown(Key)
  1072. if ATTACK == false then
  1073. if Key == "e" and VACUUM == false and FLIGHT == false and GRABBED == false then
  1074. Warp()
  1075. end
  1076. if Key == "z" and VACUUM == false and GRABBED == false then
  1077. if FLIGHT == false then
  1078. FLIGHT = true
  1079. StartFlight()
  1080. elseif FLIGHT == true then
  1081. FLIGHT = false
  1082. end
  1083. end
  1084. if Key == "h" then
  1085. shootbullet()
  1086. end
  1087. if Key == "]" then
  1088. shoottoughbullet()
  1089. end
  1090. if Key == "c" and VACUUM == false then
  1091. if GRABBED == false then
  1092. grab()
  1093. elseif GRABBED == true then
  1094. GRABBED = false
  1095. end
  1096. end
  1097. if Key == "x" then
  1098. if VACUUM == false then
  1099. VACUUM = true
  1100. Vacuum()
  1101. elseif VACUUM == true then
  1102. VACUUM = false
  1103. end
  1104. end
  1105. end
  1106. end
  1107.  
  1108. function KeyUp(Key)
  1109. end
  1110.  
  1111. Mouse.Button1Down:connect(function(NEWKEY)
  1112. MouseDown(NEWKEY)
  1113. end)
  1114. Mouse.Button1Up:connect(function(NEWKEY)
  1115. MouseUp(NEWKEY)
  1116. end)
  1117. Mouse.KeyDown:connect(function(NEWKEY)
  1118. KeyDown(NEWKEY)
  1119. end)
  1120. Mouse.KeyUp:connect(function(NEWKEY)
  1121. KeyUp(NEWKEY)
  1122. end)
  1123.  
  1124. --//=================================\\
  1125. --\\=================================//
  1126.  
  1127.  
  1128. function unanchor()
  1129. if UNANCHOR == true then
  1130. g = Character:GetChildren()
  1131. for i = 1, #g do
  1132. if g[i].ClassName == "Part" then
  1133. g[i].Anchored = false
  1134. end
  1135. end
  1136. end
  1137. end
  1138.  
  1139.  
  1140. --//=================================\\
  1141. --|| WRAP THE WHOLE SCRIPT UP
  1142. --\\=================================//
  1143.  
  1144. Humanoid.Changed:connect(function(Jump)
  1145. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1146. Humanoid.Jump = false
  1147. end
  1148. end)
  1149.  
  1150. local loop = 0
  1151. local aaa = 1/2
  1152. local loop2 = 0
  1153.  
  1154. while true do
  1155. Swait()
  1156. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1157. SINE = SINE + CHANGE
  1158. if #Effects2>0 then
  1159. for e=1,#Effects2 do
  1160. if Effects2[e]~=nil then
  1161. local Thing=Effects2[e]
  1162. if Thing~=nil then
  1163. local Part=Thing[1]
  1164. local Mode=Thing[2]
  1165. local Delay=Thing[3]
  1166. local IncX=Thing[4]
  1167. local IncY=Thing[5]
  1168. local IncZ=Thing[6]
  1169. local Part2=Thing[8]
  1170. if Thing[1].Transparency<=1 then
  1171. if Thing[2]=="Block1" then
  1172. Thing[1].CFrame=Thing[1].CFrame
  1173. Mesh=Thing[1].Mesh
  1174. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1175. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1176. elseif Thing[2]=="Cylinder" then
  1177. Mesh=Thing[1].Mesh
  1178. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1179. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1180. elseif Thing[2]=="Blood" then
  1181. Mesh=Thing[7]
  1182. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  1183. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1184. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1185. elseif Thing[2]=="Elec" then
  1186. Mesh=Thing[1].Mesh
  1187. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  1188. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1189. elseif Thing[2]=="Disappear" then
  1190. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1191. end
  1192. else
  1193. Part.Parent=nil
  1194. table.remove(Effects2,e)
  1195. end
  1196. end
  1197. end
  1198. end
  1199. end
  1200. unanchor()
  1201. Humanoid.MaxHealth = "inf"
  1202. Humanoid.Health = "inf"
  1203. if Rooted == false then
  1204. Disable_Jump = false
  1205. Humanoid.WalkSpeed = Speed
  1206. elseif Rooted == true then
  1207. Disable_Jump = true
  1208. Humanoid.WalkSpeed = 0
  1209. end
  1210. if CUSTOMMOVEMENT == false then
  1211. loop = loop + aaa
  1212. grav.position = RootPart.CFrame*CF(4,1+loop/10,1).p
  1213. if loop == 45/2 then
  1214. aaa = -1/2
  1215. elseif loop == -15/2 then
  1216. aaa = 1/2
  1217. end
  1218. else
  1219. end
  1220. if PLAYINGMUSIC == true then
  1221. Orbmesh.Scale = VT(X+SOUND.PlaybackLoudness/70,Y+SOUND.PlaybackLoudness/70,Z+SOUND.PlaybackLoudness/70)
  1222. else
  1223. Orbmesh.Scale = VT(X,Y,Z)
  1224. end
  1225. ORB.Anchored = false
  1226. end
  1227.  
  1228. --//=================================\\
  1229. --\\=================================//
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235. --//====================================================\\--
  1236. --|| END OF SCRIPT
  1237. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement