Advertisement
cobblecorn

Untitled

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