niggerfaggggggot

Untitled

Apr 11th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 60.00 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.  
  87. local h,t
  88. --Give the server mouse data every second frame, but only if the values changed
  89. --If player is not moving their mouse, client won't fire events
  90. local HB = game:GetService("RunService").Heartbeat
  91. while true do
  92. if h~=Mouse.Hit or t~=Mouse.Target then
  93. h,t=Mouse.Hit,Mouse.Target
  94. Event:FireServer({isMouse=true,Target=t,Hit=h})
  95. end
  96. --Wait 2 frames
  97. for i=1,2 do
  98. HB:Wait()
  99. end
  100. end]==],script)
  101.  
  102. ----Sandboxed game object that allows the usage of client-side methods and services
  103. --Real game object
  104. local RealGame = game
  105.  
  106. --Metatable for fake service
  107. local FakeService_Metatable = {
  108. __index = function(self,k)
  109. local s = rawget(self,"_RealService")
  110. if s then
  111. return typeof(s[k])=="function"
  112. and function(_,...)return s[k](s,...)end or s[k]
  113. end
  114. end,
  115. __newindex = function(self,k,v)
  116. local s = rawget(self,"_RealService")
  117. if s then s[k]=v end
  118. end
  119. }
  120. local function FakeService(t,RealService)
  121. t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  122. return setmetatable(t,FakeService_Metatable)
  123. end
  124.  
  125. --Fake game object
  126. local FakeGame = {
  127. GetService = function(self,s)
  128. return rawget(self,s) or RealGame:GetService(s)
  129. end,
  130. Players = FakeService({
  131. LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  132. },"Players"),
  133. UserInputService = FakeService(UIS,"UserInputService"),
  134. ContextActionService = FakeService(CAS,"ContextActionService"),
  135. RunService = FakeService({
  136. _btrs = {},
  137. RenderStepped = RealGame:GetService("RunService").Heartbeat,
  138. BindToRenderStep = function(self,name,_,fun)
  139. self._btrs[name] = self.Heartbeat:Connect(fun)
  140. end,
  141. UnbindFromRenderStep = function(self,name)
  142. self._btrs[name]:Disconnect()
  143. end,
  144. },"RunService")
  145. }
  146. rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  147. FakeGame.service = FakeGame.GetService
  148. FakeService(FakeGame,game)
  149. --Changing owner to fake player object to support owner:GetMouse()
  150. game,owner = FakeGame,FakeGame.Players.LocalPlayer
  151. end
  152. script.Name = "Banisher Gun V3 / 1"
  153. --//====================================================\\--
  154. --|| CREATED BY SHACKLUSTER
  155. --\\====================================================//--
  156.  
  157. script:ClearAllChildren()
  158. wait(0.2)
  159.  
  160. Player = game:GetService("Players").LocalPlayer
  161. PlayerGui = Player.PlayerGui
  162. Cam = workspace.CurrentCamera
  163. Backpack = Player.Backpack
  164. Character = Player.Character
  165. Humanoid = Character.Humanoid
  166. Mouse = Player:GetMouse()
  167. RootPart = Character["HumanoidRootPart"]
  168. Torso = Character["Torso"]
  169. Head = Character["Head"]
  170. RightArm = Character["Right Arm"]
  171. LeftArm = Character["Left Arm"]
  172. RightLeg = Character["Right Leg"]
  173. LeftLeg = Character["Left Leg"]
  174. RootJoint = RootPart["RootJoint"]
  175. Neck = Torso["Neck"]
  176. RightShoulder = Torso["Right Shoulder"]
  177. LeftShoulder = Torso["Left Shoulder"]
  178. RightHip = Torso["Right Hip"]
  179. LeftHip = Torso["Left Hip"]
  180. local TIME = 5
  181. local sick = Instance.new("Sound",Torso)
  182. sick.Parent = Torso
  183. sick.Playing = true
  184. sick.Looped = true
  185. sick.Volume = 2
  186. sick.Pitch = 0.9
  187. sick.TimePosition = 0
  188. sick.SoundId = "rbxassetid://1383666704"
  189.  
  190. IT = Instance.new
  191. CF = CFrame.new
  192. VT = Vector3.new
  193. RAD = math.rad
  194. C3 = Color3.new
  195. UD2 = UDim2.new
  196. BRICKC = BrickColor.new
  197. ANGLES = CFrame.Angles
  198. EULER = CFrame.fromEulerAnglesXYZ
  199. COS = math.cos
  200. ACOS = math.acos
  201. SIN = math.sin
  202. ASIN = math.asin
  203. ABS = math.abs
  204. MRANDOM = math.random
  205. FLOOR = math.floor
  206.  
  207. --//=================================\\
  208. --|| USEFUL VALUES
  209. --\\=================================//
  210.  
  211. Animation_Speed = 3
  212. local FORCERESET = false
  213. Frame_Speed = 1 / 80 -- (1 / 60) OR (1 / 80)
  214. local Speed = 12
  215. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  216. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  217. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  218. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  219. local DAMAGEMULTIPLIER = 1
  220. local ANIM = "Idle"
  221. local ATTACK = false
  222. local EQUIPPED = false
  223. local HOLD = false
  224. local COMBO = 1
  225. local Rooted = false
  226. local SINE = 0
  227. local SIZE = 1
  228. local KEYHOLD = false
  229. local CHANGE = 2 / Animation_Speed
  230. local WALKINGANIM = false
  231. local VALUE1 = false
  232. local VALUE2 = false
  233. local ROBLOXIDLEANIMATION = IT("Animation")
  234. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  235. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  236. --ROBLOXIDLEANIMATION.Parent = Humanoid
  237. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  238. WEAPONGUI.Name = "BanishV3Gui"
  239. local Weapon = IT("Model")
  240. Player_Size = 1 --Size of the player.
  241. Weapon.Name = "Adds"
  242. local Effects = IT("Folder", Weapon)
  243. Effects.Name = "Effects"
  244. local ANIMATOR = Humanoid.Animator
  245. local ANIMATE = Character:FindFirstChild("Animate")
  246. local UNANCHOR = true
  247. local TOBANISH = {}
  248. script.Parent = PlayerGui
  249.  
  250. --//=================================\\
  251. --\\=================================//
  252.  
  253.  
  254. --//=================================\\
  255. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  256. --\\=================================//
  257.  
  258. ArtificialHB = Instance.new("BindableEvent", script)
  259. ArtificialHB.Name = "ArtificialHB"
  260.  
  261. script:WaitForChild("ArtificialHB")
  262.  
  263. frame = Frame_Speed
  264. tf = 0
  265. allowframeloss = false
  266. tossremainder = false
  267. lastframe = tick()
  268. script.ArtificialHB:Fire()
  269.  
  270. game:GetService("RunService").Heartbeat:connect(function(s, p)
  271. tf = tf + s
  272. if tf >= frame then
  273. if allowframeloss then
  274. script.ArtificialHB:Fire()
  275. lastframe = tick()
  276. else
  277. for i = 1, math.floor(tf / frame) do
  278. script.ArtificialHB:Fire()
  279. end
  280. lastframe = tick()
  281. end
  282. if tossremainder then
  283. tf = 0
  284. else
  285. tf = tf - frame * math.floor(tf / frame)
  286. end
  287. end
  288. end)
  289.  
  290. --//=================================\\
  291. --\\=================================//
  292.  
  293. --//=================================\\
  294. --|| SOME FUNCTIONS
  295. --\\=================================//
  296.  
  297. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  298. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  299. end
  300.  
  301. function PositiveAngle(NUMBER)
  302. if NUMBER >= 0 then
  303. NUMBER = 0
  304. end
  305. return NUMBER
  306. end
  307.  
  308. function NegativeAngle(NUMBER)
  309. if NUMBER <= 0 then
  310. NUMBER = 0
  311. end
  312. return NUMBER
  313. end
  314.  
  315. function Swait(NUMBER)
  316. if NUMBER == 0 or NUMBER == nil then
  317. ArtificialHB.Event:wait()
  318. else
  319. for i = 1, NUMBER do
  320. ArtificialHB.Event:wait()
  321. end
  322. end
  323. end
  324.  
  325. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  326. local NEWMESH = IT(MESH)
  327. if MESH == "SpecialMesh" then
  328. NEWMESH.MeshType = MESHTYPE
  329. if MESHID ~= "nil" and MESHID ~= "" then
  330. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  331. end
  332. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  333. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  334. end
  335. end
  336. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  337. NEWMESH.Scale = SCALE
  338. NEWMESH.Parent = PARENT
  339. return NEWMESH
  340. end
  341.  
  342. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  343. local NEWPART = IT("Part")
  344. NEWPART.formFactor = FORMFACTOR
  345. NEWPART.Reflectance = REFLECTANCE
  346. NEWPART.Transparency = TRANSPARENCY
  347. NEWPART.CanCollide = false
  348. NEWPART.Locked = true
  349. NEWPART.Anchored = true
  350. if ANCHOR == false then
  351. NEWPART.Anchored = false
  352. end
  353. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  354. NEWPART.Name = NAME
  355. NEWPART.Size = SIZE
  356. NEWPART.Position = Torso.Position
  357. NEWPART.Material = MATERIAL
  358. NEWPART:BreakJoints()
  359. NEWPART.Parent = PARENT
  360. return NEWPART
  361. end
  362.  
  363. local function weldBetween(a, b)
  364. local weldd = Instance.new("ManualWeld")
  365. weldd.Part0 = a
  366. weldd.Part1 = b
  367. weldd.C0 = CFrame.new()
  368. weldd.C1 = b.CFrame:inverse() * a.CFrame
  369. weldd.Parent = a
  370. return weldd
  371. end
  372.  
  373.  
  374. function QuaternionFromCFrame(cf)
  375. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  376. local trace = m00 + m11 + m22
  377. if trace > 0 then
  378. local s = math.sqrt(1 + trace)
  379. local recip = 0.5 / s
  380. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  381. else
  382. local i = 0
  383. if m11 > m00 then
  384. i = 1
  385. end
  386. if m22 > (i == 0 and m00 or m11) then
  387. i = 2
  388. end
  389. if i == 0 then
  390. local s = math.sqrt(m00 - m11 - m22 + 1)
  391. local recip = 0.5 / s
  392. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  393. elseif i == 1 then
  394. local s = math.sqrt(m11 - m22 - m00 + 1)
  395. local recip = 0.5 / s
  396. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  397. elseif i == 2 then
  398. local s = math.sqrt(m22 - m00 - m11 + 1)
  399. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  400. end
  401. end
  402. end
  403.  
  404. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  405. local xs, ys, zs = x + x, y + y, z + z
  406. local wx, wy, wz = w * xs, w * ys, w * zs
  407. local xx = x * xs
  408. local xy = x * ys
  409. local xz = x * zs
  410. local yy = y * ys
  411. local yz = y * zs
  412. local zz = z * zs
  413. 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))
  414. end
  415.  
  416. function QuaternionSlerp(a, b, t)
  417. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  418. local startInterp, finishInterp;
  419. if cosTheta >= 0.0001 then
  420. if (1 - cosTheta) > 0.0001 then
  421. local theta = ACOS(cosTheta)
  422. local invSinTheta = 1 / SIN(theta)
  423. startInterp = SIN((1 - t) * theta) * invSinTheta
  424. finishInterp = SIN(t * theta) * invSinTheta
  425. else
  426. startInterp = 1 - t
  427. finishInterp = t
  428. end
  429. else
  430. if (1 + cosTheta) > 0.0001 then
  431. local theta = ACOS(-cosTheta)
  432. local invSinTheta = 1 / SIN(theta)
  433. startInterp = SIN((t - 1) * theta) * invSinTheta
  434. finishInterp = SIN(t * theta) * invSinTheta
  435. else
  436. startInterp = t - 1
  437. finishInterp = t
  438. end
  439. end
  440. 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
  441. end
  442.  
  443. function Clerp(a, b, t)
  444. local qa = {QuaternionFromCFrame(a)}
  445. local qb = {QuaternionFromCFrame(b)}
  446. local ax, ay, az = a.x, a.y, a.z
  447. local bx, by, bz = b.x, b.y, b.z
  448. local _t = 1 - t
  449. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  450. end
  451.  
  452. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  453. local frame = IT("Frame")
  454. frame.BackgroundTransparency = TRANSPARENCY
  455. frame.BorderSizePixel = BORDERSIZEPIXEL
  456. frame.Position = POSITION
  457. frame.Size = SIZE
  458. frame.BackgroundColor3 = COLOR
  459. frame.BorderColor3 = BORDERCOLOR
  460. frame.Name = NAME
  461. frame.Parent = PARENT
  462. return frame
  463. end
  464.  
  465. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  466. local label = IT("TextLabel")
  467. label.BackgroundTransparency = 1
  468. label.Size = UD2(1, 0, 1, 0)
  469. label.Position = UD2(0, 0, 0, 0)
  470. label.TextColor3 = TEXTCOLOR
  471. label.TextStrokeTransparency = STROKETRANSPARENCY
  472. label.TextTransparency = TRANSPARENCY
  473. label.FontSize = TEXTFONTSIZE
  474. label.Font = TEXTFONT
  475. label.BorderSizePixel = BORDERSIZEPIXEL
  476. label.TextScaled = false
  477. label.Text = TEXT
  478. label.Name = NAME
  479. label.Parent = PARENT
  480. return label
  481. end
  482.  
  483. function NoOutlines(PART)
  484. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  485. end
  486.  
  487. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  488. local NEWWELD = IT(TYPE)
  489. NEWWELD.Part0 = PART0
  490. NEWWELD.Part1 = PART1
  491. NEWWELD.C0 = C0
  492. NEWWELD.C1 = C1
  493. NEWWELD.Parent = PARENT
  494. return NEWWELD
  495. end
  496.  
  497. local S = IT("Sound")
  498. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  499. local NEWSOUND = nil
  500. coroutine.resume(coroutine.create(function()
  501. NEWSOUND = S:Clone()
  502. NEWSOUND.Parent = PARENT
  503. NEWSOUND.Volume = VOLUME
  504. NEWSOUND.Pitch = PITCH
  505. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  506. NEWSOUND:play()
  507. if DOESLOOP == true then
  508. NEWSOUND.Looped = true
  509. else
  510. repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  511. NEWSOUND:remove()
  512. end
  513. end))
  514. return NEWSOUND
  515. end
  516.  
  517. function CFrameFromTopBack(at, top, back)
  518. local right = top:Cross(back)
  519. 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)
  520. end
  521.  
  522. --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})
  523. function WACKYEFFECT(Table)
  524. local TYPE = (Table.EffectType or "Sphere")
  525. local SIZE = (Table.Size or VT(1,1,1))
  526. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  527. local TRANSPARENCY = (Table.Transparency or 0)
  528. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  529. local CFRAME = (Table.CFrame or Torso.CFrame)
  530. local MOVEDIRECTION = (Table.MoveToPos or nil)
  531. local ROTATION1 = (Table.RotationX or 0)
  532. local ROTATION2 = (Table.RotationY or 0)
  533. local ROTATION3 = (Table.RotationZ or 0)
  534. local MATERIAL = (Table.Material or "Neon")
  535. local COLOR = (Table.Color or C3(1,1,1))
  536. local TIME = (Table.Time or 45)
  537. local SOUNDID = (Table.SoundID or nil)
  538. local SOUNDPITCH = (Table.SoundPitch or nil)
  539. local SOUNDVOLUME = (Table.SoundVolume or nil)
  540. coroutine.resume(coroutine.create(function()
  541. local PLAYSSOUND = false
  542. local SOUND = nil
  543. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  544. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  545. PLAYSSOUND = true
  546. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  547. end
  548. EFFECT.Color = COLOR
  549. local MSH = nil
  550. if TYPE == "Sphere" then
  551. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  552. elseif TYPE == "Block" then
  553. MSH = IT("BlockMesh",EFFECT)
  554. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  555. elseif TYPE == "Wave" then
  556. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  557. elseif TYPE == "Ring" then
  558. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  559. elseif TYPE == "Slash" then
  560. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  561. elseif TYPE == "Round Slash" then
  562. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  563. elseif TYPE == "Swirl" then
  564. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  565. elseif TYPE == "Skull" then
  566. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  567. elseif TYPE == "Crystal" then
  568. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  569. end
  570. if MSH ~= nil then
  571. local MOVESPEED = nil
  572. if MOVEDIRECTION ~= nil then
  573. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  574. end
  575. local GROWTH = SIZE - ENDSIZE
  576. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  577. if TYPE == "Block" then
  578. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  579. else
  580. EFFECT.CFrame = CFRAME
  581. end
  582. for LOOP = 1, TIME+1 do
  583. Swait()
  584. MSH.Scale = MSH.Scale - GROWTH/TIME
  585. if TYPE == "Wave" then
  586. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  587. end
  588. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  589. if TYPE == "Block" then
  590. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  591. else
  592. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  593. end
  594. if MOVEDIRECTION ~= nil then
  595. local ORI = EFFECT.Orientation
  596. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  597. EFFECT.Orientation = ORI
  598. end
  599. end
  600. if PLAYSSOUND == false then
  601. EFFECT:remove()
  602. else
  603. SOUND.Stopped:Connect(function()
  604. EFFECT:remove()
  605. end)
  606. end
  607. else
  608. if PLAYSSOUND == false then
  609. EFFECT:remove()
  610. else
  611. repeat Swait() until SOUND.Playing == false
  612. EFFECT:remove()
  613. end
  614. end
  615. end))
  616. end
  617.  
  618. function MakeForm(PART,TYPE)
  619. if TYPE == "Cyl" then
  620. local MSH = IT("CylinderMesh",PART)
  621. elseif TYPE == "Ball" then
  622. local MSH = IT("SpecialMesh",PART)
  623. MSH.MeshType = "Sphere"
  624. elseif TYPE == "Wedge" then
  625. local MSH = IT("SpecialMesh",PART)
  626. MSH.MeshType = "Wedge"
  627. end
  628. end
  629.  
  630. function SpawnTrail(FROM,TO,BIG)
  631. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
  632. MakeForm(TRAIL,"Cyl")
  633. local DIST = (FROM - TO).Magnitude
  634. if BIG == true then
  635. TRAIL.Size = VT(0.8,DIST,0.8)
  636. else
  637. TRAIL.Size = VT(0.35,DIST,0.35)
  638. end
  639. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  640. coroutine.resume(coroutine.create(function()
  641. for i = 1, 5 do
  642. Swait()
  643. TRAIL.Transparency = TRAIL.Transparency + 0.1
  644. end
  645. TRAIL:remove()
  646. end))
  647. end
  648.  
  649. Debris = game:GetService("Debris")
  650.  
  651. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  652. local DIRECTION = CF(StartPos,EndPos).lookVector
  653. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  654. end
  655.  
  656. function turnto(position)
  657. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  658. end
  659.  
  660.  
  661. --//=================================\\
  662. --|| WEAPON CREATION
  663. --\\=================================//
  664.  
  665.  
  666. local Particle = IT("ParticleEmitter",nil)
  667. Particle.Enabled = false
  668. Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
  669. Particle.LightEmission = 0.5
  670. Particle.Rate = 150
  671. Particle.ZOffset = 0.2
  672. Particle.Rotation = NumberRange.new(-180, 180)
  673. Particle.RotSpeed = NumberRange.new(-180, 180)
  674. Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
  675. Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
  676.  
  677. --ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
  678. function ParticleEmitter(Table)
  679. local PRTCL = Particle:Clone()
  680. local Speed = Table.Speed or 5
  681. local Drag = Table.Drag or 0
  682. local Size1 = Table.Size1 or 1
  683. local Size2 = Table.Size2 or 5
  684. local Lifetime1 = Table.Lifetime1 or 1
  685. local Lifetime2 = Table.Lifetime2 or 1.5
  686. local Parent = Table.Parent or Torso
  687. local Emit = Table.Emit or 100
  688. local Offset = Table.Offset or 360
  689. local Acel = Table.Acel or VT(0,0,0)
  690. local Enabled = Table.Enabled or false
  691. PRTCL.Parent = Parent
  692. PRTCL.Size = NumberSequence.new(Size1,Size2)
  693. PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
  694. PRTCL.Speed = NumberRange.new(Speed)
  695. PRTCL.VelocitySpread = Offset
  696. PRTCL.Drag = Drag
  697. PRTCL.Acceleration = Acel
  698. if Enabled == false then
  699. PRTCL:Emit(Emit)
  700. Debris:AddItem(PRTCL,Lifetime2)
  701. else
  702. PRTCL.Enabled = true
  703. end
  704. return PRTCL
  705. end
  706.  
  707. local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
  708. local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
  709. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
  710. MakeForm(Part,"Wedge")
  711. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
  712. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
  713. MakeForm(Part,"Wedge")
  714. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
  715. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
  716. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  717. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
  718. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  719. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
  720. MakeForm(Part,"Cyl")
  721. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  722. for i = 1, 8 do
  723. local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
  724. CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
  725. end
  726. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
  727. MakeForm(Part,"Cyl")
  728. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  729. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
  730. MakeForm(Part,"Ball")
  731. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  732. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
  733. MakeForm(Part,"Wedge")
  734. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
  735. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
  736. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  737. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
  738. MakeForm(Part,"Cyl")
  739. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  740. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
  741. MakeForm(Part,"Cyl")
  742. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  743. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
  744. MakeForm(Part,"Cyl")
  745. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  746. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
  747. MakeForm(Part,"Wedge")
  748. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
  749. local LASTPART = Handle
  750. for i = 1, 10 do
  751. if LASTPART == Handle then
  752. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
  753. LASTPART = Part
  754. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  755. else
  756. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
  757. CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
  758. LASTPART = Part
  759. end
  760. end
  761.  
  762. local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
  763. MakeForm(Barrel,"Cyl")
  764. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  765. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
  766. MakeForm(Part,"Cyl")
  767. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
  768. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
  769. MakeForm(Part,"Wedge")
  770. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
  771. local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
  772. MakeForm(Hole,"Cyl")
  773. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
  774. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
  775. local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  776. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
  777. local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
  778. local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  779. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
  780. coroutine.resume(coroutine.create(function()
  781. while wait() do
  782. GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(0 - 25 * SIN(SINE / 25)))
  783. GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(0 - -25 * SIN(SINE / 25)))
  784. end
  785. end))
  786.  
  787. local Hole2 = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
  788. MakeForm(Hole2,"Cyl")
  789. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole2, CF(0.8, 0.98, 0), CF(0, 0, 0))
  790.  
  791. local Hole3 = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
  792. MakeForm(Hole3,"Cyl")
  793. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole3, CF(-0.8, 0.98, 0), CF(0, 0, 0))
  794.  
  795. ParticleEmitter({Speed = 0.02, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  796. ParticleEmitter({Speed = 50, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  797. ParticleEmitter({Speed = 10, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  798. --ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  799.  
  800. for _, c in pairs(Weapon:GetDescendants()) do
  801. if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
  802. c.Material = "Glass"
  803. c.Color = C3(3,0,0)
  804. elseif c.ClassName == "Part" and c.Name == "Eye" then
  805. c.Color = C3(1,0,0)
  806. c.Material = "Neon"
  807. end
  808. end
  809.  
  810. Weapon.Parent = Character
  811. for _, c in pairs(Weapon:GetChildren()) do
  812. if c.ClassName == "Part" then
  813. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  814. end
  815. end
  816.  
  817. local SKILLTEXTCOLOR = C3(1,0,0)
  818. local SKILLFONT = "Antique"
  819. local SKILLTEXTSIZE = 7
  820.  
  821. 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")
  822. --[[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")
  823. 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")
  824. 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")
  825. 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")
  826. ]]
  827. local SKILL1TEXT = CreateLabel(SKILL1FRAME, ":/ Edit By NameClan", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
  828. --[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
  829. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
  830. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
  831. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
  832. ]]
  833. function printbye(Name)
  834. 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, "}
  835. warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")
  836. end
  837.  
  838. workspace.ChildAdded:connect(function(instance)
  839. for BANISH = 1, #TOBANISH do
  840. if TOBANISH[BANISH] ~= nil then
  841. if instance.Name == TOBANISH[BANISH] then
  842. coroutine.resume(coroutine.create(function()
  843. printbye(instance.Name)
  844. instance:ClearAllChildren()
  845. Debris:AddItem(instance,0.0005)
  846. end))
  847. end
  848. end
  849. end
  850. end)
  851.  
  852. --//=================================\\
  853. --|| DAMAGING
  854. --\\=================================//
  855.  
  856. function Banish(Foe)
  857. if Foe then
  858. coroutine.resume(coroutine.create(function()
  859. --if game.Players:FindFirstChild(Foe.Name) then
  860. table.insert(TOBANISH,Foe.Name)
  861. printbye(Foe.Name)
  862. --end
  863. Foe.Archivable = true
  864. local CLONE = Foe:Clone()
  865. Foe:Destroy()
  866. CLONE.Parent = Effects
  867. CLONE:BreakJoints()
  868. local MATERIALS = {"Glass","Neon"}
  869. for _, c in pairs(CLONE:GetDescendants()) do
  870. if c:IsA("BasePart") then
  871. if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
  872. CreateSound(340722848, c, 10, 1, false)
  873. end
  874. c.Anchored = true
  875. c.Transparency = c.Transparency + 0.2
  876. c.Material = MATERIALS[MRANDOM(1,2)]
  877. c.Color = C3(1,0,0)
  878. if c.ClassName == "MeshPart" then
  879. c.TextureID = ""
  880. end
  881. if c:FindFirstChildOfClass("SpecialMesh") then
  882. c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  883. end
  884. if c:FindFirstChildOfClass("Decal") then
  885. c:FindFirstChildOfClass("Decal"):remove()
  886. end
  887. c.Name = "Banished"
  888. c.CanCollide = false
  889. else
  890. c:remove()
  891. end
  892. end
  893. local A = false
  894. for i = 1, 35 do
  895. if A == false then
  896. A = true
  897. elseif A == true then
  898. A = false
  899. end
  900. for _, c in pairs(CLONE:GetDescendants()) do
  901. if c:IsA("BasePart") then
  902. c.Anchored = true
  903. c.Material = MATERIALS[MRANDOM(1,2)]
  904. c.Transparency = c.Transparency + 0.8/35
  905. if A == false then
  906. c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
  907. elseif A == true then
  908. c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
  909. end
  910. end
  911. end
  912. Swait()
  913. end
  914. CLONE:remove()
  915. end))
  916. end
  917. end
  918.  
  919. function ApplyAoE(POSITION,RANGE,ISBANISH)
  920. local CHILDREN = workspace:GetDescendants()
  921. for index, CHILD in pairs(CHILDREN) do
  922. if CHILD.ClassName == "Model" and CHILD ~= Character then
  923. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  924. if HUM then
  925. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  926. if TORSO then
  927. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  928. if ISBANISH == true then
  929. Banish(CHILD)
  930. else
  931. if ISBANISH == "Gravity" then
  932. HUM.PlatformStand = true
  933. if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  934. local grav = Instance.new("BodyPosition",TORSO)
  935. grav.D = 15
  936. grav.P = 20000
  937. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  938. grav.position = TORSO.Position
  939. grav.Name = "V3BanishForce"..Player.Name
  940. else
  941. TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
  942. TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
  943. end
  944. else
  945. HUM.PlatformStand = false
  946. end
  947. end
  948. elseif ISBANISH == "Gravity" then
  949. if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  950. TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
  951. HUM.PlatformStand = false
  952. end
  953. end
  954. end
  955. end
  956. end
  957. end
  958. end
  959.  
  960. function ApplyDamage(Humanoid,Damage,TorsoPart)
  961. local defence = Instance.new("BoolValue",Humanoid.Parent)
  962. defence.Name = ("HitBy"..Player.Name)
  963. game:GetService("Debris"):AddItem(defence, 0.001)
  964. Damage = Damage * DAMAGEMULTIPLIER
  965. if Humanoid.Health ~= 0 then
  966. local CritChance = MRANDOM(1,100)
  967. if Damage > Humanoid.Health then
  968. Damage = math.ceil(Humanoid.Health)
  969. if Damage == 0 then
  970. Damage = 0.1
  971. end
  972. end
  973. Humanoid.Health = Humanoid.Health - Damage
  974. end
  975. end
  976.  
  977. function ApplyAoE3(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
  978. local CHILDREN = workspace:GetDescendants()
  979. for index, CHILD in pairs(CHILDREN) do
  980. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  981. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  982. if HUM then
  983. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  984. if TORSO then
  985. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  986. if INSTAKILL == true then
  987. CHILD:BreakJoints()
  988. else
  989. local DMG = MRANDOM(MINDMG,MAXDMG)
  990. ApplyDamage(HUM,DMG,TORSO)
  991. end
  992. if FLING > 0 then
  993. for _, c in pairs(CHILD:GetChildren()) do
  994. if c:IsA("BasePart") then
  995. local bv = Instance.new("BodyVelocity")
  996. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  997. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  998. bv.Parent = c
  999. Debris:AddItem(bv,0.05)
  1000. end
  1001. end
  1002. end
  1003. end
  1004. end
  1005. end
  1006. end
  1007. end
  1008. end
  1009.  
  1010. --//=================================\\
  1011. --|| ATTACK FUNCTIONS AND STUFF
  1012. --\\=================================//
  1013.  
  1014. function Shot()
  1015. ATTACK = true
  1016. Rooted = false
  1017. for i=0, 1, 0.1 / Animation_Speed do
  1018. Swait()
  1019. turnto(Mouse.Hit.p)
  1020. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1021. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-45), RAD(0), RAD(0)), 1 / Animation_Speed)
  1022. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -1) * ANGLES(RAD(-25), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  1023. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.5, -0.5) * ANGLES(RAD(-90), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  1024. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1025. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  1026. end
  1027. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(120,120,120), Transparency = 0, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 317129949, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 999999})
  1028. repeat
  1029. for i=0, 0.2, 0.1 / Animation_Speed do
  1030. Swait()
  1031. turnto(Mouse.Hit.p)
  1032. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1033. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1034. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -1) * ANGLES(RAD(-25), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  1035. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.5, -0.5) * ANGLES(RAD(-90), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  1036. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1037. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.2, 0.5, -0.7) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  1038. end
  1039. local HIT,POS = CastProperRay(Hole2.Position, Mouse.Hit.p, 1000, Character)
  1040. SpawnTrail(Hole2.Position,POS)
  1041. local HIT,POS = CastProperRay(Hole3.Position, Mouse.Hit.p, 1000, Character)
  1042. SpawnTrail(Hole3.Position,POS)
  1043. local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
  1044. SpawnTrail(Hole.Position,POS)
  1045. if HIT ~= nil then
  1046. if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
  1047. Banish(HIT.Parent)
  1048. end
  1049. end
  1050.  
  1051. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole3.CFrame, MoveToPos = Hole3.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1052. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole3.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1053. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole3.CFrame, MoveToPos = Hole3.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1054. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole3.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 168143115, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1055. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole3.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1056. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole3.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1057.  
  1058. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = Hole2.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1059. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1060. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = Hole2.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1061. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 168143115, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1062. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1063. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1064.  
  1065. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1066. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1067. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1068. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 168143115, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1069. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1070. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  1071. for i=0, 0.2, 0.1 / Animation_Speed do
  1072. Swait()
  1073. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(95), RAD(15), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1074. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.2, 0.5, 0.04) * ANGLES(RAD(95), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  1075. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.1, -1) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1076. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0.1, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 1 / Animation_Speed)
  1077. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -1) * ANGLES(RAD(-25), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  1078. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.5, -0.5) * ANGLES(RAD(-90), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
  1079. end
  1080. until KEYHOLD == false
  1081. ATTACK = false
  1082. Rooted = false
  1083. end
  1084.  
  1085. function Shot2()
  1086. ATTACK = true
  1087. Rooted = false
  1088. for i=0, 3, 0.1 / Animation_Speed do
  1089. Swait()
  1090. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-25), RAD(0), RAD(0)), 1 / Animation_Speed)
  1091. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(75), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1092. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(75), RAD(0), RAD(-45)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1093. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-25), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1094. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-25), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1095. end
  1096. WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,45,45), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1097. WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(180,180,180), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1098. WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(123,123,123), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1099. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,180,1), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1100. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(150,1,150), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1101. WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(150,150,150), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1102. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(120,120,120), Transparency = 0, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 165970126, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 100})
  1103. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(120,120,120), Transparency = 0, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 165970126, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 999999})
  1104. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,180,1), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1105. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(150,1,150), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1106. WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(150,150,150), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  1107. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(120,120,120), Transparency = 0, Transparency2 = 1, CFrame = RootPart.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 165970126, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 100})
  1108. ApplyAoE3(RootPart.Position,95,999,999,999,false)
  1109. for i=0, 0.5, 0.1 / Animation_Speed do
  1110. Swait()
  1111. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(30), RAD(0), RAD(0)), 1 / Animation_Speed)
  1112. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.2, 0.5, -0.5) * ANGLES(RAD(75), RAD(0), RAD(-70)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.6 / Animation_Speed)
  1113. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.2, 0.5, -0.5) * ANGLES(RAD(75), RAD(0), RAD(70)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1114. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(30), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1115. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(30), RAD(-75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1116. end
  1117. ATTACK = false
  1118. Rooted = false
  1119. end
  1120.  
  1121. --//=================================\\
  1122. --|| ASSIGN THINGS TO KEYS
  1123. --\\=================================//
  1124.  
  1125. function MouseDown(Mouse)
  1126. if ATTACK == false then
  1127. end
  1128. end
  1129.  
  1130. function MouseUp(Mouse)
  1131. HOLD = false
  1132. end
  1133.  
  1134. function KeyDown(Key)
  1135. KEYHOLD = true
  1136. if Key == "z" and ATTACK == false then
  1137. Shot()
  1138. end
  1139.  
  1140. if Key == "b" and ATTACK == false then
  1141. AttackTemplate()
  1142. end
  1143.  
  1144. if Key == "c" and ATTACK == false then
  1145. Shot2()
  1146. end
  1147.  
  1148. if Key == "v" and ATTACK == false then
  1149. end
  1150.  
  1151. if Key == "x" and ATTACK == false then
  1152. end
  1153. end
  1154.  
  1155. function KeyUp(Key)
  1156. KEYHOLD = false
  1157. end
  1158.  
  1159. Mouse.Button1Down:connect(function(NEWKEY)
  1160. MouseDown(NEWKEY)
  1161. end)
  1162. Mouse.Button1Up:connect(function(NEWKEY)
  1163. MouseUp(NEWKEY)
  1164. end)
  1165. Mouse.KeyDown:connect(function(NEWKEY)
  1166. KeyDown(NEWKEY)
  1167. end)
  1168. Mouse.KeyUp:connect(function(NEWKEY)
  1169. KeyUp(NEWKEY)
  1170. end)
  1171.  
  1172. --//=================================\\
  1173. --\\=================================//
  1174.  
  1175.  
  1176. function unanchor()
  1177. if UNANCHOR == true then
  1178. g = Character:GetChildren()
  1179. for i = 1, #g do
  1180. if g[i].ClassName == "Part" then
  1181. g[i].Anchored = false
  1182. end
  1183. end
  1184. end
  1185. end
  1186.  
  1187.  
  1188. --//=================================\\
  1189. --|| WRAP THE WHOLE SCRIPT UP
  1190. --\\=================================//
  1191.  
  1192. Humanoid.Changed:connect(function(Jump)
  1193. if Jump == "Jump" and (Disable_Jump == true) then
  1194. Humanoid.Jump = false
  1195. end
  1196. end)
  1197.  
  1198. local CONNECT = nil
  1199.  
  1200. while true do
  1201. Swait()
  1202. ANIMATE.Parent = nil
  1203. if Character:FindFirstChildOfClass("Humanoid") == nil then
  1204. Humanoid = IT("Humanoid",Character)
  1205. end
  1206. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  1207. v:Stop();
  1208. end
  1209. SINE = SINE + CHANGE
  1210. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1211. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1212. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  1213. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  1214. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1215. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1216. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * 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)
  1217. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1218. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1219. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1220. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1221. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1222. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1223. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1224. end
  1225. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1226. ANIM = "Jump"
  1227. if ATTACK == false then
  1228. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1229. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1230. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1231. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1232. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1233. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1234. end
  1235. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1236. ANIM = "Fall"
  1237. if ATTACK == false then
  1238. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1239. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1240. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1241. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1242. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1243. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1244. end
  1245. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1246. ANIM = "Idle"
  1247. if ATTACK == false then
  1248. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0 + 0.75 * SIN(SINE / 12) - 1.75 * COS(SINE / 12)), RAD(2.75 * SIN(SINE / 12))), 0.2 / Animation_Speed*3)
  1249. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0 + 0.75 * SIN(SINE / 8) - 1.75 * COS(SINE / 8)), RAD(2.75 * SIN(SINE / 8))), 0.2 / Animation_Speed)
  1250. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.9, 0.5 + 0.05 * SIN(SINE / (SINE/1)), -0.5) * ANGLES(RAD(100), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1251. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1252. 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)
  1253. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.2, 0.2 - 0.1 * COS(SINE / 24), -0.4 - 0.1 * COS(SINE / 24)) * ANGLES(RAD(45), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1254. end
  1255. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1256. ANIM = "Walk"
  1257. if ATTACK == false then
  1258. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
  1259. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, -0.025, 0 + ((1) - 1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
  1260. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80 * SIN(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(5), RAD(0 - 40 * SIN(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1261. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-80 * SIN(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(5), RAD(0 - 40 * SIN(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1262. RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(-5), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  1263. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-5), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  1264. end
  1265. end
  1266. unanchor()
  1267. Humanoid.MaxHealth = "inf"
  1268. Humanoid.Health = "inf"
  1269. if Rooted == false then
  1270. Disable_Jump = false
  1271. Humanoid.WalkSpeed = Speed
  1272. elseif Rooted == true then
  1273. Disable_Jump = true
  1274. Humanoid.WalkSpeed = 0
  1275. end
  1276. end
  1277.  
  1278. --//=================================\\
  1279. --\\=================================//
  1280.  
  1281.  
  1282.  
  1283.  
  1284.  
  1285. --//====================================================\\--
  1286. --|| END OF SCRIPT
  1287. --\\====================================================//--
Add Comment
Please, Sign In to add comment