Advertisement
DaOMEGAa32

ball

Nov 18th, 2022 (edited)
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 31.62 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,game,owner = owner,game
  4. local RealPlayer = Player
  5. do
  6. print("FE Compatibility code V2 by Mokiros")
  7. local RealPlayer = RealPlayer
  8. script.Parent = RealPlayer.Character
  9.  
  10. --Fake event to make stuff like Mouse.KeyDown work
  11. local Disconnect_Function = function(this)
  12. this[1].Functions[this[2]] = nil
  13. end
  14. local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
  15. local FakeEvent_Metatable = {__index={
  16. Connect = function(this,f)
  17. local i = tostring(math.random(0,10000))
  18. while this.Functions[i] do
  19. i = tostring(math.random(0,10000))
  20. end
  21. this.Functions[i] = f
  22. return setmetatable({this,i},Disconnect_Metatable)
  23. end
  24. }}
  25. FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
  26. local function fakeEvent()
  27. return setmetatable({Functions={}},FakeEvent_Metatable)
  28. end
  29.  
  30. --Creating fake input objects with fake variables
  31. local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
  32. FakeMouse.keyUp = FakeMouse.KeyUp
  33. FakeMouse.keyDown = FakeMouse.KeyDown
  34. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  35. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  36. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  37. end}
  38. --Merged 2 functions into one by checking amount of arguments
  39. CAS.UnbindAction = CAS.BindAction
  40.  
  41. --This function will trigger the events that have been :Connect()'ed
  42. local function TriggerEvent(self,ev,...)
  43. for _,f in pairs(self[ev].Functions) do
  44. f(...)
  45. end
  46. end
  47. FakeMouse.TriggerEvent = TriggerEvent
  48. UIS.TriggerEvent = TriggerEvent
  49.  
  50. --Client communication
  51. local Event = Instance.new("RemoteEvent")
  52. Event.Name = "UserInput_Event"
  53. Event.OnServerEvent:Connect(function(plr,io)
  54. if plr~=RealPlayer then return end
  55. FakeMouse.Target = io.Target
  56. FakeMouse.Hit = io.Hit
  57. if not io.isMouse then
  58. local b = io.UserInputState == Enum.UserInputState.Begin
  59. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  60. return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
  61. end
  62. if io.UserInputType == Enum.UserInputType.MouseButton2 then
  63. return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
  64. end
  65. for _,t in pairs(CAS.Actions) do
  66. for _,k in pairs(t.Keys) do
  67. if k==io.KeyCode then
  68. t.Function(t.Name,io.UserInputState,io)
  69. end
  70. end
  71. end
  72. FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  73. UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
  74. end
  75. end)
  76. Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
  77. local Mouse = owner:GetMouse()
  78. local UIS = game:GetService("UserInputService")
  79. local input = function(io,RobloxHandled)
  80. if RobloxHandled then return end
  81. --Since InputObject is a client-side instance, we create and pass table instead
  82. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  83. end
  84. UIS.InputBegan:Connect(input)
  85. UIS.InputEnded:Connect(input)
  86. local h,t
  87. --Give the server mouse data every second frame, but only if the values changed
  88. --If player is not moving their mouse, client won't fire events
  89. local HB = game:GetService("RunService").Heartbeat
  90. while true do
  91. if h~=Mouse.Hit or t~=Mouse.Target then
  92. h,t=Mouse.Hit,Mouse.Target
  93. Event:FireServer({isMouse=true,Target=t,Hit=h})
  94. end
  95. --Wait 2 frames
  96. for i=1,2 do
  97. HB:Wait()
  98. end
  99. end]==],script)
  100.  
  101. ----Sandboxed game object that allows the usage of client-side methods and services
  102. --Real game object
  103. local RealGame = game
  104.  
  105. --Metatable for fake service
  106. local FakeService_Metatable = {
  107. __index = function(self,k)
  108. local s = rawget(self,"_RealService")
  109. if s then
  110. return typeof(s[k])=="function"
  111. and function(_,...)return s[k](s,...)end or s[k]
  112. end
  113. end,
  114. __newindex = function(self,k,v)
  115. local s = rawget(self,"_RealService")
  116. if s then s[k]=v end
  117. end
  118. }
  119. local function FakeService(t,RealService)
  120. t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  121. return setmetatable(t,FakeService_Metatable)
  122. end
  123.  
  124. --Fake game object
  125. local FakeGame = {
  126. GetService = function(self,s)
  127. return rawget(self,s) or RealGame:GetService(s)
  128. end,
  129. Players = FakeService({
  130. LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  131. },"Players"),
  132. UserInputService = FakeService(UIS,"UserInputService"),
  133. ContextActionService = FakeService(CAS,"ContextActionService"),
  134. RunService = FakeService({
  135. _btrs = {},
  136. RenderStepped = RealGame:GetService("RunService").Heartbeat,
  137. BindToRenderStep = function(self,name,_,fun)
  138. self._btrs[name] = self.Heartbeat:Connect(fun)
  139. end,
  140. UnbindFromRenderStep = function(self,name)
  141. self._btrs[name]:Disconnect()
  142. end,
  143. },"RunService")
  144. }
  145. rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  146. FakeGame.service = FakeGame.GetService
  147. FakeService(FakeGame,game)
  148. --Changing owner to fake player object to support owner:GetMouse()
  149. game,owner = FakeGame,FakeGame.Players.LocalPlayer
  150. end
  151.  
  152. Player = game.Players.LocalPlayer
  153. Character = Player.Character
  154.  
  155.  
  156. script.Name = "balls"
  157. --//====================================================\\--
  158. ----- SOME BANISHER I USED AS A TEMPLATE BY SHACKLUSTER
  159. --\\====================================================//--
  160.  
  161. script:ClearAllChildren()
  162. wait(0.2)
  163.  
  164. Player = game:GetService("Players").LocalPlayer
  165. PlayerGui = Player.PlayerGui
  166. Cam = workspace.CurrentCamera
  167. Backpack = Player.Backpack
  168. Character = Player.Character
  169. Humanoid = Character.Humanoid
  170. Mouse = Player:GetMouse()
  171. RootPart = Character["HumanoidRootPart"]
  172. Torso = Character["Torso"]
  173. Head = Character["Head"]
  174. RightArm = Character["Right Arm"]
  175. LeftArm = Character["Left Arm"]
  176. RightLeg = Character["Right Leg"]
  177. LeftLeg = Character["Left Leg"]
  178. RootJoint = RootPart["RootJoint"]
  179. Neck = Torso["Neck"]
  180. RightShoulder = Torso["Right Shoulder"]
  181. LeftShoulder = Torso["Left Shoulder"]
  182. RightHip = Torso["Right Hip"]
  183. LeftHip = Torso["Left Hip"]
  184. local TIME = 0
  185. local sick = Instance.new("Sound",Torso)
  186.  
  187. IT = Instance.new
  188. CF = CFrame.new
  189. VT = Vector3.new
  190. RAD = math.rad
  191. C3 = Color3.new
  192. UD2 = UDim2.new
  193. BRICKC = BrickColor.new
  194. ANGLES = CFrame.Angles
  195. EULER = CFrame.fromEulerAnglesXYZ
  196. COS = math.cos
  197. ACOS = math.acos
  198. SIN = math.sin
  199. ASIN = math.asin
  200. ABS = math.abs
  201. MRANDOM = math.random
  202. FLOOR = math.floor
  203.  
  204. --//=================================\\
  205. --|| USEFUL VALUES
  206. --\\=================================//
  207.  
  208. Animation_Speed = 3
  209. local FORCERESET = false
  210. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  211. local Speed = 16
  212. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  213. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  214. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  215. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  216. local DAMAGEMULTIPLIER = 1
  217. local ANIM = "Idle"
  218. local ATTACK = false
  219. local EQUIPPED = false
  220. local HOLD = true
  221. local COMBO = 3
  222. local turrnn = 0
  223. local Rooted = false
  224. local SINE = 5
  225. local KEYHOLD = false
  226. local CHANGE = 2 / Animation_Speed
  227. local WALKINGANIM = false
  228. local VALUE1 = false
  229. local VALUE2 = false
  230. local ROBLOXIDLEANIMATION = IT("Animation")
  231. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  232. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  233. --ROBLOXIDLEANIMATION.Parent = Humanoid
  234. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  235. WEAPONGUI.Name = "BanishV4Gui"
  236. local Weapon = IT("Model")
  237. Weapon.Name = "Adds"
  238. local Effects = IT("Folder", Weapon)
  239. Effects.Name = "Effects"
  240. local ANIMATOR = Humanoid.Animator
  241. local ANIMATE = Character:FindFirstChild("Animate")
  242. local UNANCHOR = true
  243. local TOBANISH = {}
  244. script.Parent = PlayerGui
  245.  
  246. --//=================================\\
  247. --\\=================================//
  248.  
  249.  
  250. --//=================================\\
  251. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  252. --\\=================================//
  253.  
  254. ArtificialHB = Instance.new("BindableEvent", script)
  255. ArtificialHB.Name = "ArtificialHB"
  256.  
  257. script:WaitForChild("ArtificialHB")
  258.  
  259. frame = Frame_Speed
  260. tf = 0
  261. allowframeloss = false
  262. tossremainder = false
  263. lastframe = tick()
  264. script.ArtificialHB:Fire()
  265.  
  266. game:GetService("RunService").Heartbeat:connect(function(s, p)
  267. tf = tf + s
  268. if tf >= frame then
  269. if allowframeloss then
  270. script.ArtificialHB:Fire()
  271. lastframe = tick()
  272. else
  273. for i = 1, math.floor(tf / frame) do
  274. script.ArtificialHB:Fire()
  275. end
  276. lastframe = tick()
  277. end
  278. if tossremainder then
  279. tf = 0
  280. else
  281. tf = tf - frame * math.floor(tf / frame)
  282. end
  283. end
  284. end)
  285.  
  286. --//=================================\\
  287. --\\=================================//
  288.  
  289. --//=================================\\
  290. --|| SOME FUNCTIONS
  291. --\\=================================//
  292.  
  293. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  294. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  295. end
  296.  
  297. function PositiveAngle(NUMBER)
  298. if NUMBER >= 0 then
  299. NUMBER = 0
  300. end
  301. return NUMBER
  302. end
  303.  
  304. function NegativeAngle(NUMBER)
  305. if NUMBER <= 0 then
  306. NUMBER = 0
  307. end
  308. return NUMBER
  309. end
  310.  
  311. function Swait(NUMBER)
  312. if NUMBER == 0 or NUMBER == nil then
  313. ArtificialHB.Event:wait()
  314. else
  315. for i = 1, NUMBER do
  316. ArtificialHB.Event:wait()
  317. end
  318. end
  319. end
  320.  
  321. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  322. local NEWMESH = IT(MESH)
  323. if MESH == "SpecialMesh" then
  324. NEWMESH.MeshType = MESHTYPE
  325. if MESHID ~= "nil" and MESHID ~= "" then
  326. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  327. end
  328. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  329. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  330. end
  331. end
  332. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  333. NEWMESH.Scale = SCALE
  334. NEWMESH.Parent = PARENT
  335. return NEWMESH
  336. end
  337.  
  338. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  339. local NEWPART = IT("Part")
  340. NEWPART.formFactor = FORMFACTOR
  341. NEWPART.Reflectance = REFLECTANCE
  342. NEWPART.Transparency = TRANSPARENCY
  343. NEWPART.CanCollide = false
  344. NEWPART.Locked = true
  345. NEWPART.Anchored = true
  346. if ANCHOR == false then
  347. NEWPART.Anchored = false
  348. end
  349. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  350. NEWPART.Name = NAME
  351. NEWPART.Size = SIZE
  352. NEWPART.Position = Torso.Position
  353. NEWPART.Material = MATERIAL
  354. NEWPART:BreakJoints()
  355. NEWPART.Parent = PARENT
  356. return NEWPART
  357. end
  358.  
  359. local function weldBetween(a, b)
  360. local weldd = Instance.new("ManualWeld")
  361. weldd.Part0 = a
  362. weldd.Part1 = b
  363. weldd.C0 = CFrame.new()
  364. weldd.C1 = b.CFrame:inverse() * a.CFrame
  365. weldd.Parent = a
  366. return weldd
  367. end
  368.  
  369.  
  370. function QuaternionFromCFrame(cf)
  371. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  372. local trace = m00 + m11 + m22
  373. if trace > 0 then
  374. local s = math.sqrt(1 + trace)
  375. local recip = 0.5 / s
  376. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  377. else
  378. local i = 0
  379. if m11 > m00 then
  380. i = 1
  381. end
  382. if m22 > (i == 0 and m00 or m11) then
  383. i = 2
  384. end
  385. if i == 0 then
  386. local s = math.sqrt(m00 - m11 - m22 + 1)
  387. local recip = 0.5 / s
  388. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  389. elseif i == 1 then
  390. local s = math.sqrt(m11 - m22 - m00 + 1)
  391. local recip = 0.5 / s
  392. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  393. elseif i == 2 then
  394. local s = math.sqrt(m22 - m00 - m11 + 1)
  395. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  396. end
  397. end
  398. end
  399.  
  400. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  401. local xs, ys, zs = x + x, y + y, z + z
  402. local wx, wy, wz = w * xs, w * ys, w * zs
  403. local xx = x * xs
  404. local xy = x * ys
  405. local xz = x * zs
  406. local yy = y * ys
  407. local yz = y * zs
  408. local zz = z * zs
  409. 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))
  410. end
  411.  
  412. function QuaternionSlerp(a, b, t)
  413. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  414. local startInterp, finishInterp;
  415. if cosTheta >= 0.0001 then
  416. if (1 - cosTheta) > 0.0001 then
  417. local theta = ACOS(cosTheta)
  418. local invSinTheta = 1 / SIN(theta)
  419. startInterp = SIN((1 - t) * theta) * invSinTheta
  420. finishInterp = SIN(t * theta) * invSinTheta
  421. else
  422. startInterp = 1 - t
  423. finishInterp = t
  424. end
  425. else
  426. if (1 + cosTheta) > 0.0001 then
  427. local theta = ACOS(-cosTheta)
  428. local invSinTheta = 1 / SIN(theta)
  429. startInterp = SIN((t - 1) * theta) * invSinTheta
  430. finishInterp = SIN(t * theta) * invSinTheta
  431. else
  432. startInterp = t - 1
  433. finishInterp = t
  434. end
  435. end
  436. 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
  437. end
  438.  
  439. function Clerp(a, b, t)
  440. local qa = {QuaternionFromCFrame(a)}
  441. local qb = {QuaternionFromCFrame(b)}
  442. local ax, ay, az = a.x, a.y, a.z
  443. local bx, by, bz = b.x, b.y, b.z
  444. local _t = 1 - t
  445. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  446. end
  447.  
  448. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  449. local frame = IT("Frame")
  450. frame.BackgroundTransparency = TRANSPARENCY
  451. frame.BorderSizePixel = BORDERSIZEPIXEL
  452. frame.Position = POSITION
  453. frame.Size = SIZE
  454. frame.BackgroundColor3 = COLOR
  455. frame.BorderColor3 = BORDERCOLOR
  456. frame.Name = NAME
  457. frame.Parent = PARENT
  458. return frame
  459. end
  460.  
  461. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  462. local label = IT("TextLabel")
  463. label.BackgroundTransparency = 1
  464. label.Size = UD2(1, 0, 1, 0)
  465. label.Position = UD2(0, 0, 0, 0)
  466. label.TextColor3 = TEXTCOLOR
  467. label.TextStrokeTransparency = STROKETRANSPARENCY
  468. label.TextTransparency = TRANSPARENCY
  469. label.FontSize = TEXTFONTSIZE
  470. label.Font = TEXTFONT
  471. label.BorderSizePixel = BORDERSIZEPIXEL
  472. label.TextScaled = false
  473. label.Text = TEXT
  474. label.Name = NAME
  475. label.Parent = PARENT
  476. return label
  477. end
  478.  
  479. function NoOutlines(PART)
  480. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  481. end
  482.  
  483. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  484. local NEWWELD = IT(TYPE)
  485. NEWWELD.Part0 = PART0
  486. NEWWELD.Part1 = PART1
  487. NEWWELD.C0 = C0
  488. NEWWELD.C1 = C1
  489. NEWWELD.Parent = PARENT
  490. return NEWWELD
  491. end
  492.  
  493. local S = IT("Sound")
  494. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  495. local NEWSOUND = nil
  496. coroutine.resume(coroutine.create(function()
  497. NEWSOUND = S:Clone()
  498. NEWSOUND.Parent = PARENT
  499. NEWSOUND.Volume = VOLUME
  500. NEWSOUND.Pitch = PITCH
  501. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  502. NEWSOUND:play()
  503. if DOESLOOP == true then
  504. NEWSOUND.Looped = true
  505. else
  506. repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  507. NEWSOUND:remove()
  508. end
  509. end))
  510. return NEWSOUND
  511. end
  512.  
  513. function CFrameFromTopBack(at, top, back)
  514. local right = top:Cross(back)
  515. 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)
  516. end
  517.  
  518. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  519. function WACKYEFFECT(Table)
  520. local TYPE = (Table.EffectType or "Sphere")
  521. local SIZE = (Table.Size or VT(1,1,1))
  522. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  523. local TRANSPARENCY = (Table.Transparency or 0)
  524. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  525. local CFRAME = (Table.CFrame or Torso.CFrame)
  526. local MOVEDIRECTION = (Table.MoveToPos or nil)
  527. local ROTATION1 = (Table.RotationX or 0)
  528. local ROTATION2 = (Table.RotationY or 0)
  529. local ROTATION3 = (Table.RotationZ or 0)
  530. local MATERIAL = (Table.Material or "Neon")
  531. local COLOR = (Table.Color or C3(1,1,1))
  532. local TIME = (Table.Time or 45)
  533. local SOUNDID = (Table.SoundID or nil)
  534. local SOUNDPITCH = (Table.SoundPitch or nil)
  535. local SOUNDVOLUME = (Table.SoundVolume or nil)
  536. coroutine.resume(coroutine.create(function()
  537. local PLAYSSOUND = false
  538. local SOUND = nil
  539. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  540. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  541. PLAYSSOUND = true
  542. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  543. end
  544. EFFECT.Color = COLOR
  545. local MSH = nil
  546. if TYPE == "Sphere" then
  547. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  548. elseif TYPE == "Block" then
  549. MSH = IT("BlockMesh",EFFECT)
  550. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  551. elseif TYPE == "Wave" then
  552. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  553. elseif TYPE == "Ring" then
  554. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  555. elseif TYPE == "Slash" then
  556. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  557. elseif TYPE == "Round Slash" then
  558. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  559. elseif TYPE == "Swirl" then
  560. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  561. elseif TYPE == "Skull" then
  562. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  563. elseif TYPE == "Crystal" then
  564. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  565. end
  566. if MSH ~= nil then
  567. local MOVESPEED = nil
  568. if MOVEDIRECTION ~= nil then
  569. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  570. end
  571. local GROWTH = SIZE - ENDSIZE
  572. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  573. if TYPE == "Block" then
  574. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  575. else
  576. EFFECT.CFrame = CFRAME
  577. end
  578. for LOOP = 1, TIME+1 do
  579. Swait()
  580. MSH.Scale = MSH.Scale - GROWTH/TIME
  581. if TYPE == "Wave" then
  582. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  583. end
  584. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  585. if TYPE == "Block" then
  586. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  587. else
  588. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  589. end
  590. if MOVEDIRECTION ~= nil then
  591. local ORI = EFFECT.Orientation
  592. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  593. EFFECT.Orientation = ORI
  594. end
  595. end
  596. if PLAYSSOUND == false then
  597. EFFECT:remove()
  598. else
  599. SOUND.Stopped:Connect(function()
  600. EFFECT:remove()
  601. end)
  602. end
  603. else
  604. if PLAYSSOUND == false then
  605. EFFECT:remove()
  606. else
  607. repeat Swait() until SOUND.Playing == false
  608. EFFECT:remove()
  609. end
  610. end
  611. end))
  612. end
  613.  
  614. function MakeForm(PART,TYPE)
  615. if TYPE == "Cyl" then
  616. local MSH = IT("CylinderMesh",PART)
  617. elseif TYPE == "Ball" then
  618. local MSH = IT("SpecialMesh",PART)
  619. MSH.MeshType = "Sphere"
  620. elseif TYPE == "Wedge" then
  621. local MSH = IT("SpecialMesh",PART)
  622. MSH.MeshType = "Wedge"
  623. end
  624. end
  625.  
  626. function SpawnTrail(FROM,TO,BIG)
  627. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
  628. MakeForm(TRAIL,"Cyl")
  629. local DIST = (FROM - TO).Magnitude
  630. if BIG == true then
  631. TRAIL.Size = VT(0.5,DIST,0.5)
  632. else
  633. TRAIL.Size = VT(0.25,DIST,0.25)
  634. end
  635. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  636. coroutine.resume(coroutine.create(function()
  637. for i = 1, 5 do
  638. Swait()
  639. TRAIL.Transparency = TRAIL.Transparency + 0.1
  640. end
  641. TRAIL:remove()
  642. end))
  643. end
  644.  
  645. Debris = game:GetService("Debris")
  646.  
  647. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  648. local DIRECTION = CF(StartPos,EndPos).lookVector
  649. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  650. end
  651.  
  652. function turnto(position)
  653. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  654. end
  655.  
  656.  
  657. for _, c in pairs(Weapon:GetDescendants()) do
  658. if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
  659. c.Material = "Glass"
  660. c.Color = C3(0,0,0)
  661. elseif c.ClassName == "Part" and c.Name == "Eye" then
  662. c.Color = C3(1,0,0)
  663. c.Material = "Neon"
  664. end
  665. end
  666.  
  667. Weapon.Parent = nil
  668. for _, c in pairs(Weapon:GetChildren()) do
  669. if c.ClassName == "Part" then
  670. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  671. end
  672. end
  673.  
  674. local SKILLTEXTCOLOR = C3(1,0,0)
  675. local SKILLFONT = "Antique"
  676. local SKILLTEXTSIZE = 7
  677.  
  678. Humanoid.Died:connect(function()
  679. ATTACK = true
  680. end)
  681.  
  682. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  683. --[[local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  684. local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  685. local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
  686. local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
  687. ]]
  688. local SKILL1TEXT = CreateLabel(SKILL1FRAME, " ", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
  689. --[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
  690. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
  691. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
  692. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
  693. ]]
  694. function printbye(Name)
  695. local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
  696. warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")
  697. end
  698.  
  699. workspace.ChildAdded:connect(function(instance)
  700. for BANISH = 1, #TOBANISH do
  701. if TOBANISH[BANISH] ~= nil then
  702. if instance.Name == TOBANISH[BANISH] then
  703. coroutine.resume(coroutine.create(function()
  704. printbye(instance.Name)
  705. instance:ClearAllChildren()
  706. Debris:AddItem(instance,0.0005)
  707. end))
  708. end
  709. end
  710. end
  711. end)
  712.  
  713. --//=================================\\
  714. --|| DAMAGING
  715. --\\=================================//
  716. local debounce = 0
  717. local walking = false
  718. function onTouched(part)
  719. if part.Parent ~= nil then
  720. local humanoid = part.Parent:findFirstChildOfClass("Humanoid")
  721. if humanoid and debounce == 0 and walking == true then
  722. debounce = 1
  723. local e = Instance.new("Explosion") -- IT DOES NOT HAVE TO BE "E" IT CAN BE ANY LETTER. I JUST LIKE USING THIS
  724.  
  725. e.BlastRadius = 20 --THE RADIUS, THE BIGGER THE RADIUS, THE BIGGER IT IS
  726.  
  727. e.BlastPressure = 0 -- THE BLAST PRESSURE IS HOW POWERFUL IT IS. THE HIGHER, THE MORE DEADLY AND THE MORE UNANCHORED BRICKS WILL GO FLYING
  728.  
  729. e.Parent = game.Workspace -- DO NOT TOUCH UNLESS YOU KNOW WHAT YOURE DOING
  730.  
  731. e.Position = Torso.Position
  732.  
  733.  
  734. humanoid.Health = humanoid.Health == 0
  735. CreateSound(8865674713,Torso,0.6,1.2,false)
  736. wait (0.2)
  737. debounce = 0
  738.  
  739. end
  740. end
  741. end
  742.  
  743.  
  744. RootPart.Touched:connect(onTouched)
  745.  
  746.  
  747.  
  748. function ROLL()
  749. ATTACK = true
  750.  
  751. CreateSound(5535646989,Torso,1,1,false)
  752. for i = 1, 52 do
  753. Swait()
  754. turrnn += 42
  755.  
  756. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(turrnn), RAD(0), RAD(0)), 1 / Animation_Speed)
  757. end
  758. walking = true
  759.  
  760. game:GetService('TweenService'):Create(Character.HumanoidRootPart,TweenInfo.new(0.5,Enum.EasingStyle.Linear,Enum.EasingDirection.Out,0,false,0),{CFrame = Character.HumanoidRootPart.CFrame * CFrame.new(0,0,-50)}):Play()
  761.  
  762.  
  763. for i = 1, 22 do
  764. Swait()
  765. turrnn += 42
  766.  
  767. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(turrnn), RAD(0), RAD(0)), 2 / Animation_Speed)
  768. end
  769.  
  770.  
  771. ATTACK = false
  772.  
  773.  
  774. end
  775.  
  776.  
  777. --//=================================\\
  778. --|| STUFF
  779. --\\=================================//
  780. local SIZE = 1
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787. for i,v in pairs(Character:GetChildren()) do
  788. if v.ClassName == 'Hat' then
  789. v:Destroy()
  790. end
  791. end
  792.  
  793.  
  794.  
  795.  
  796. for i,v in pairs(Character.Head:GetChildren()) do
  797. if v.ClassName == 'Decal' then
  798. v:Destroy()
  799. end
  800. end
  801.  
  802. Character.Head.Transparency = 1
  803. Character['Left Arm'].Transparency = 1
  804. Character['Right Arm'].Transparency = 1
  805. Character['Left Leg'].Transparency = 1
  806. Character['Right Leg'].Transparency = 1
  807.  
  808.  
  809. --//=================================\\
  810. --|| ASSIGN THINGS TO KEYS
  811. --\\=================================//
  812. sick.SoundId = "rbxassetid://1278102150"
  813. function MouseDown(Mouse)
  814. if ATTACK == false then
  815.  
  816. end
  817. end
  818.  
  819. function MouseUp(Mouse)
  820. HOLD = false
  821. end
  822.  
  823. function KeyDown(Key)
  824. KEYHOLD = true
  825. if Key == "1" and ATTACK == false then
  826. sick.Volume -= 0.5
  827.  
  828.  
  829. end
  830.  
  831. if Key == "2" and ATTACK == false then
  832. sick.Volume += 0.5
  833.  
  834.  
  835. end
  836.  
  837. if Key == "e" and ATTACK == false then
  838. ROLL()
  839.  
  840.  
  841. end
  842.  
  843.  
  844.  
  845.  
  846.  
  847. end
  848.  
  849. function KeyUp(Key)
  850. KEYHOLD = false
  851. end
  852.  
  853. Mouse.Button1Down:connect(function(NEWKEY)
  854. MouseDown(NEWKEY)
  855. end)
  856. Mouse.Button1Up:connect(function(NEWKEY)
  857. MouseUp(NEWKEY)
  858. end)
  859. Mouse.KeyDown:connect(function(NEWKEY)
  860. KeyDown(NEWKEY)
  861. end)
  862. Mouse.KeyUp:connect(function(NEWKEY)
  863. KeyUp(NEWKEY)
  864. end)
  865.  
  866. --//=================================\\
  867. --\\=================================//
  868. sick.SoundId = "rbxassetid://1846648567"
  869.  
  870. local SIZE = 1
  871. Player_Size = 1 --Size of the player.
  872. local sphere = Instance.new("SpecialMesh")
  873. sphere.Parent = Torso
  874. sphere.MeshType = "Sphere"
  875. sphere.Scale = Vector3.new(3,3,6)
  876. local face1 = Instance.new("Decal")
  877. face1.Parent = Torso
  878. face1.Texture = "http://www.roblox.com/asset/?id=11596179712"
  879. face1.Face = "Front"
  880.  
  881.  
  882.  
  883.  
  884. Torso.Color = Color3.new(1, 0, 0)
  885.  
  886.  
  887. Torso.Material = "SmoothPlastic"
  888.  
  889. --//=================================\\
  890. --|| WRAP THE WHOLE SCRIPT UP
  891. --\\=================================//
  892.  
  893. Humanoid.Changed:connect(function(Jump)
  894. if Jump == "Jump" and (Disable_Jump == true) then
  895. Humanoid.Jump = false
  896. end
  897. end)
  898.  
  899. local CONNECT = nil
  900.  
  901. sick:Play()
  902. while true do
  903. sick.PlaybackSpeed=0.8+0.1*SIN(SINE/21)
  904. Swait()
  905. ANIMATE.Parent = nil
  906. if Character:FindFirstChildOfClass("Humanoid") == nil then
  907. Humanoid = IT("Humanoid",Character)
  908. end
  909. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  910. v:Stop();
  911. end
  912. SINE = SINE + CHANGE
  913. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  914. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  915. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  916. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 30)
  917. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  918.  
  919. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  920.  
  921. end
  922. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  923. ANIM = "Jump"
  924. if ATTACK == false then
  925. turrnn += 12
  926.  
  927. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(turrnn), RAD(0), RAD(0)), 1 / Animation_Speed)
  928. end
  929. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  930. ANIM = "Fall"
  931. if ATTACK == false then
  932. turrnn += 12
  933.  
  934. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(turrnn), RAD(0), RAD(0)), 1 / Animation_Speed)
  935. end
  936. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  937. ANIM = "Idle"
  938. if ATTACK == false then
  939. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  940. -- turrnn += 1
  941. walking = false
  942. -- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 4 + 1*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 0 * SIN(SINE / 7)), RAD(0 - 0 * SIN(SINE / 5)), RAD(turrnn)), 1 / Animation_Speed)
  943. -- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  944. -- 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)
  945. -- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  946. -- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0 * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  947. --LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0 * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  948. end
  949.  
  950. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  951. ANIM = "Walk"
  952. if ATTACK == false then
  953. turrnn += 12
  954. walking = true
  955. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(turrnn), RAD(0), RAD(0)), 1 / Animation_Speed)
  956. --Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  957. --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)
  958. --LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  959. --RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0 * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  960. --LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0 * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  961.  
  962. end
  963. end
  964.  
  965. Humanoid.MaxHealth = "inf"
  966. Humanoid.Health = "inf"
  967. Humanoid.WalkSpeed = 50
  968. if Rooted == false then
  969. Disable_Jump = false
  970.  
  971. elseif Rooted == true then
  972. Disable_Jump = true
  973. Humanoid.WalkSpeed = 0
  974. end
  975. sick.Parent = Torso
  976.  
  977.  
  978. sick.Pitch = 1
  979.  
  980. sick.Looped = true
  981. sick.Name = "theme"
  982. end
  983.  
  984. --//=================================\\
  985. --\\=================================//
  986.  
  987.  
  988.  
  989.  
  990.  
  991. --//====================================================\\--
  992. --|| END OF SCRIPT
  993. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement