Advertisement
Guest User

Untitled

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