Advertisement
Guest User

Untitled

a guest
Oct 20th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --//====================================================\\--
  2. --|| CREATED BY SHACKLUSTER
  3. --\\====================================================//--
  4.  
  5. -- This script has been converted to FE by iPxter
  6.  
  7.  
  8. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  9. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  10. do
  11. print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
  12. script.Parent = Player.Character
  13.  
  14. --RemoteEvent for communicating
  15. local Event = Instance.new("RemoteEvent")
  16. Event.Name = "UserInput_Event"
  17.  
  18. --Fake event to make stuff like Mouse.KeyDown work
  19. local function fakeEvent()
  20. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  21. t.connect = t.Connect
  22. return t
  23. end
  24.  
  25. --Creating fake input objects with fake variables
  26. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  27. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  28. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  29. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  30. end}
  31. --Merged 2 functions into one by checking amount of arguments
  32. CAS.UnbindAction = CAS.BindAction
  33.  
  34. --This function will trigger the events that have been :Connect()'ed
  35. local function te(self,ev,...)
  36. local t = m[ev]
  37. if t and t._fakeEvent and t.Function then
  38. t.Function(...)
  39. end
  40. end
  41. m.TrigEvent = te
  42. UIS.TrigEvent = te
  43.  
  44. Event.OnServerEvent:Connect(function(plr,io)
  45. if plr~=Player then return end
  46. if io.isMouse then
  47. m.Target = io.Target
  48. m.Hit = io.Hit
  49. else
  50. local b = io.UserInputState == Enum.UserInputState.Begin
  51. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  52. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  53. end
  54. for _,t in pairs(CAS.Actions) do
  55. for _,k in pairs(t.Keys) do
  56. if k==io.KeyCode then
  57. t.Function(t.Name,io.UserInputState,io)
  58. end
  59. end
  60. end
  61. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  62. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  63. end
  64. end)
  65. Event.Parent = NLS([==[
  66. local Player = game:GetService("Players").LocalPlayer
  67. local Event = script:WaitForChild("UserInput_Event")
  68.  
  69. local UIS = game:GetService("UserInputService")
  70. local input = function(io,a)
  71. if a then return end
  72. --Since InputObject is a client-side instance, we create and pass table instead
  73. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  74. end
  75. UIS.InputBegan:Connect(input)
  76. UIS.InputEnded:Connect(input)
  77.  
  78. local Mouse = Player:GetMouse()
  79. local h,t
  80. --Give the server mouse data 30 times every second, but only if the values changed
  81. --If player is not moving their mouse, client won't fire events
  82. while wait(1/30) do
  83. if h~=Mouse.Hit or t~=Mouse.Target then
  84. h,t=Mouse.Hit,Mouse.Target
  85. Event:FireServer({isMouse=true,Target=t,Hit=h})
  86. end
  87. end]==],Player.Character)
  88. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  89. end
  90.  
  91.  
  92. wait(0.2)
  93.  
  94.  
  95.  
  96. Player = owner
  97. PlayerGui = Player.PlayerGui
  98. Cam = workspace.CurrentCamera
  99. Backpack = Player.Backpack
  100. Character = Player.Character
  101. Humanoid = Character.Humanoid
  102. RootPart = Character["HumanoidRootPart"]
  103. Torso = Character["Torso"]
  104. Head = Character["Head"]
  105. RightArm = Character["Right Arm"]
  106. LeftArm = Character["Left Arm"]
  107. RightLeg = Character["Right Leg"]
  108. LeftLeg = Character["Left Leg"]
  109. RootJoint = RootPart["RootJoint"]
  110. Neck = Torso["Neck"]
  111. RightShoulder = Torso["Right Shoulder"]
  112. LeftShoulder = Torso["Left Shoulder"]
  113. RightHip = Torso["Right Hip"]
  114. LeftHip = Torso["Left Hip"]
  115. local sick = Instance.new("Sound",Torso)
  116. sick.SoundId = "rbxassetid://319444224"
  117. sick.Looped = true
  118. sick.Pitch = 1
  119. sick.Volume = 1
  120. local succing = {}
  121.  
  122. IT = Instance.new
  123. CF = CFrame.new
  124. VT = Vector3.new
  125. RAD = math.rad
  126. C3 = Color3.new
  127. UD2 = UDim2.new
  128. BRICKC = BrickColor.new
  129. ANGLES = CFrame.Angles
  130. EULER = CFrame.fromEulerAnglesXYZ
  131. COS = math.cos
  132. ACOS = math.acos
  133. SIN = math.sin
  134. ASIN = math.asin
  135. ABS = math.abs
  136. MRANDOM = math.random
  137. FLOOR = math.floor
  138.  
  139. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  140. local NEWMESH = IT(MESH)
  141. if MESH == "SpecialMesh" then
  142. NEWMESH.MeshType = MESHTYPE
  143. if MESHID ~= "nil" and MESHID ~= "" then
  144. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  145. end
  146. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  147. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  148. end
  149. end
  150. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  151. NEWMESH.Scale = SCALE
  152. NEWMESH.Parent = PARENT
  153. return NEWMESH
  154. end
  155.  
  156. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
  157. local NEWPART = IT("Part")
  158. NEWPART.formFactor = FORMFACTOR
  159. NEWPART.Reflectance = REFLECTANCE
  160. NEWPART.Transparency = TRANSPARENCY
  161. NEWPART.CanCollide = false
  162. NEWPART.Locked = true
  163. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  164. NEWPART.Name = NAME
  165. NEWPART.Size = SIZE
  166. NEWPART.Position = Torso.Position
  167. NEWPART.Material = MATERIAL
  168. NEWPART:BreakJoints()
  169. NEWPART.Parent = PARENT
  170. return NEWPART
  171. end
  172.  
  173.  
  174. --//=================================\\
  175. --|| CUSTOMIZATION
  176. --\\=================================//
  177.  
  178. Class_Name = "Template"
  179. Weapon_Name = "Add-ons"
  180.  
  181. Custom_Colors = {
  182. Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  183. Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  184.  
  185. Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  186. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  187. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  188. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  189. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  190.  
  191. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  192. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  193. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  194. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  195. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  196. }
  197.  
  198.  
  199. Player_Size = 1 --Size of the player.
  200. Animation_Speed = 3
  201. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  202.  
  203. local Speed = 16
  204. local Effects2 = {}
  205.  
  206. --//=================================\\
  207. --|| END OF CUSTOMIZATION
  208. --\\=================================//
  209.  
  210. local function weldBetween(a, b)
  211. local weldd = Instance.new("ManualWeld")
  212. weldd.Part0 = a
  213. weldd.Part1 = b
  214. weldd.C0 = CFrame.new()
  215. weldd.C1 = b.CFrame:inverse() * a.CFrame
  216. weldd.Parent = a
  217. return weldd
  218. end
  219.  
  220. function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
  221. local acs = Instance.new("Part")
  222. acs.CanCollide = false
  223. acs.Anchored = false
  224. acs.Size = Vector3.new(0,0,0)
  225. acs.CFrame = attachmentpart.CFrame
  226. acs.Parent = Character
  227. acs.BrickColor = color
  228. local meshs = Instance.new("SpecialMesh")
  229. meshs.MeshId = mesh
  230. meshs.TextureId = texture
  231. meshs.Parent = acs
  232. meshs.Scale = scale
  233. meshs.Offset = offset
  234. weldBetween(attachmentpart,acs)
  235. end
  236.  
  237. function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
  238. if TYPE == "Gem" then
  239. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  240. acs.Anchored = false
  241. acs.CanCollide = false
  242. acs.CFrame = PART.CFrame
  243. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
  244. weldBetween(PART,acs)
  245. elseif TYPE == "Skull" then
  246. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  247. acs.Anchored = false
  248. acs.CanCollide = false
  249. acs.CFrame = PART.CFrame
  250. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
  251. weldBetween(PART,acs)
  252. elseif TYPE == "Eye" then
  253. local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  254. acs.Anchored = false
  255. acs.CanCollide = false
  256. acs.CFrame = PART.CFrame
  257. local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
  258. weldBetween(PART,acs)
  259. end
  260. end
  261.  
  262. --//=================================\\
  263. --|| USEFUL VALUES
  264. --\\=================================//
  265.  
  266. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  267. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  268. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  269. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  270. local CO1 = 0
  271. local CO2 = 0
  272. local CO3 = 0
  273. local CO4 = 0
  274. local CHANGEDEFENSE = 0
  275. local CHANGEDAMAGE = 0
  276. local CHANGEMOVEMENT = 0
  277. local ANIM = "Idle"
  278. local ATTACK = false
  279. local EQUIPPED = false
  280. local HOLD = false
  281. local COMBO = 1
  282. local LASTPOINT = nil
  283. local BLCF = nil
  284. local SCFR = nil
  285. local STAGGERHITANIM = false
  286. local STAGGERANIM = false
  287. local STUNANIM = false
  288. local CRITCHANCENUMBER = 0
  289. local IDLENUMBER = 0
  290. local DONUMBER = 0
  291. local HANDIDLE = false
  292. local SINE = 0
  293. local CHANGE = 2 / Animation_Speed
  294. local WALKINGANIM = false
  295. local WALK = 0
  296. local DISABLEJUMPING = false
  297. local HASBEENBLOCKED = false
  298. local STUNDELAYNUMBER = 0
  299. local MANADELAYNUMBER = 0
  300. local SECONDARYMANADELAYNUMBER = 0
  301. local ROBLOXIDLEANIMATION = IT("Animation")
  302. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  303. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  304. --ROBLOXIDLEANIMATION.Parent = Humanoid
  305. local WEAPONGUI = IT("ScreenGui", nil)
  306. WEAPONGUI.Name = "Weapon GUI"
  307. local WEAPONTOOL = IT("HopperBin", nil)
  308. WEAPONTOOL.Name = Weapon_Name
  309. local Weapon = IT("Model")
  310. Weapon.Name = Weapon_Name
  311. local Effects = IT("Folder", Weapon)
  312. Effects.Name = "Effects"
  313. local ANIMATOR = Humanoid.Animator
  314. local ANIMATE = Character.Animate
  315. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  316. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  317. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  318. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  319. local UNANCHOR = true
  320. local MAGICPARTICLE = "655109389"
  321.  
  322. --//=================================\\
  323. --\\=================================//
  324.  
  325.  
  326. --//=================================\\
  327. --|| DEBUFFS / BUFFS
  328. --\\=================================//
  329.  
  330. local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
  331. DEFENSECHANGE1.Name = "ChangeDefense"
  332. DEFENSECHANGE1.Value = 0
  333.  
  334. local MOVEMENTCHANGE1 = IT("NumberValue", nil)
  335. MOVEMENTCHANGE1.Name = "ChangeMovement"
  336. MOVEMENTCHANGE1.Value = 0
  337.  
  338. --//=================================\\
  339. --\\=================================//
  340.  
  341.  
  342.  
  343.  
  344.  
  345. --//=================================\\
  346. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  347. --\\=================================//
  348.  
  349. ArtificialHB = Instance.new("BindableEvent", script)
  350. ArtificialHB.Name = "ArtificialHB"
  351.  
  352. script:WaitForChild("ArtificialHB")
  353.  
  354. frame = Frame_Speed
  355. tf = 0
  356. allowframeloss = false
  357. tossremainder = false
  358. lastframe = tick()
  359. script.ArtificialHB:Fire()
  360.  
  361. game:GetService("RunService").Heartbeat:connect(function(s, p)
  362. tf = tf + s
  363. if tf >= frame then
  364. if allowframeloss then
  365. script.ArtificialHB:Fire()
  366. lastframe = tick()
  367. else
  368. for i = 1, math.floor(tf / frame) do
  369. script.ArtificialHB:Fire()
  370. end
  371. lastframe = tick()
  372. end
  373. if tossremainder then
  374. tf = 0
  375. else
  376. tf = tf - frame * math.floor(tf / frame)
  377. end
  378. end
  379. end)
  380.  
  381. --//=================================\\
  382. --\\=================================//
  383.  
  384.  
  385.  
  386.  
  387.  
  388. --//=================================\\
  389. --|| SOME FUNCTIONS
  390. --\\=================================//
  391.  
  392. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  393. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  394. end
  395.  
  396. function PositiveAngle(NUMBER)
  397. if NUMBER >= 0 then
  398. NUMBER = 0
  399. end
  400. return NUMBER
  401. end
  402.  
  403. function NegativeAngle(NUMBER)
  404. if NUMBER <= 0 then
  405. NUMBER = 0
  406. end
  407. return NUMBER
  408. end
  409.  
  410. function Swait(NUMBER)
  411. if NUMBER == 0 or NUMBER == nil then
  412. ArtificialHB.Event:wait()
  413. else
  414. for i = 1, NUMBER do
  415. ArtificialHB.Event:wait()
  416. end
  417. end
  418. end
  419.  
  420. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  421. local label = IT("TextLabel")
  422. label.BackgroundTransparency = 1
  423. label.Size = UD2(1, 0, 1, 0)
  424. label.Position = UD2(0, 0, 0, 0)
  425. label.TextColor3 = C3(255, 255, 255)
  426. label.TextStrokeTransparency = STROKETRANSPARENCY
  427. label.TextTransparency = TRANSPARENCY
  428. label.FontSize = TEXTFONTSIZE
  429. label.Font = TEXTFONT
  430. label.BorderSizePixel = BORDERSIZEPIXEL
  431. label.TextScaled = true
  432. label.Text = TEXT
  433. label.Name = NAME
  434. label.Parent = PARENT
  435. return label
  436. end
  437.  
  438. function NoOutlines(PART)
  439. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  440. end
  441.  
  442.  
  443. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  444. local NEWWELD = IT(TYPE)
  445. NEWWELD.Part0 = PART0
  446. NEWWELD.Part1 = PART1
  447. NEWWELD.C0 = C0
  448. NEWWELD.C1 = C1
  449. NEWWELD.Parent = PARENT
  450. return NEWWELD
  451. end
  452.  
  453. function CreateSound(ID, PARENT, VOLUME, PITCH)
  454. local NEWSOUND = nil
  455. coroutine.resume(coroutine.create(function()
  456. NEWSOUND = IT("Sound", PARENT)
  457. NEWSOUND.Volume = VOLUME
  458. NEWSOUND.Pitch = PITCH
  459. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  460. Swait()
  461. NEWSOUND:play()
  462. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  463. end))
  464. return NEWSOUND
  465. end
  466.  
  467. --//=================================\\
  468. --\\=================================//
  469.  
  470.  
  471. --//=================================\\
  472. --|| WEAPON CREATION
  473. --\\=================================//
  474.  
  475. if Player_Size ~= 1 then
  476. for _, v in pairs (Weapon:GetChildren()) do
  477. if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  478. local p1 = v.Part1
  479. v.Part1 = nil
  480. local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  481. v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  482. v.Part1 = p1
  483. elseif v.ClassName == "Part" then
  484. for _, b in pairs (v:GetChildren()) do
  485. if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  486. b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  487. end
  488. end
  489. end
  490. end
  491. end
  492.  
  493. for _, c in pairs(Weapon:GetChildren()) do
  494. if c.ClassName == "Part" then
  495. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  496. end
  497. end
  498.  
  499. Weapon.Parent = Character
  500.  
  501. Humanoid.Died:connect(function()
  502. ATTACK = true
  503. end)
  504.  
  505. print(Class_Name.." loaded.")
  506.  
  507. --//=================================\\
  508. --\\=================================//
  509.  
  510.  
  511. local backpack = IT("Part",Weapon)
  512. backpack.Size = VT(0.15,0.15,0.15)
  513. local mesh = IT("SpecialMesh",backpack)
  514. mesh.MeshId = "rbxassetid://84313478"
  515. mesh.TextureId = "http://www.roblox.com/asset/?id=84313638"
  516. backpack.CFrame = Torso.CFrame * CF(0,0.2,1)
  517. backpack.BrickColor = BRICKC("Black")
  518. weldBetween(Torso,backpack)
  519.  
  520. local hose = IT("Part",Weapon)
  521. hose.Size = VT(0.15,0.15,0.15)
  522. local mesh = IT("SpecialMesh",hose)
  523. mesh.MeshId = "http://www.roblox.com/asset/?id=84313555"
  524. mesh.TextureId = "http://www.roblox.com/asset/?id=84313638"
  525. mesh.Scale = VT(2,2,2)
  526. mesh.Offset = VT(0, -0.4, -0.7)
  527. hose.CFrame = Torso.CFrame * CF(1.5,0.5,0.2) * ANGLES(RAD(90),RAD(35),RAD(180))
  528. hose.BrickColor = BRICKC("Black")
  529. weldBetween(Torso,hose)
  530.  
  531. local succ = IT("Part",Weapon)
  532. succ.Size = VT(2,2,2)
  533. succ.CanCollide = false
  534. succ.CFrame = Torso.CFrame * CF(1.5,1.3,-4) * ANGLES(RAD(90),RAD(0),RAD(180))
  535. succ.Transparency = 1
  536. succ.BrickColor = BRICKC("Black")
  537. weldBetween(Torso,succ)
  538.  
  539. for _, c in pairs(Weapon:GetChildren()) do
  540. if c.ClassName == "Part" then
  541. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  542. end
  543. end
  544.  
  545. local EyeSizes={
  546. NumberSequenceKeypoint.new(0,0.5,0),
  547. NumberSequenceKeypoint.new(1,0.2,0)
  548. }
  549. local EyeTrans={
  550. NumberSequenceKeypoint.new(0,0,0),
  551. NumberSequenceKeypoint.new(1,1,0)
  552. }
  553. local PE=Instance.new("ParticleEmitter")
  554. PE.LightEmission=0.3
  555. PE.Size=NumberSequence.new(EyeSizes)
  556. PE.Transparency=NumberSequence.new(EyeTrans)
  557. PE.Rotation=NumberRange.new(0,360)
  558. PE.LockedToPart = false
  559. PE.Speed = NumberRange.new(0,0,0)
  560. PE.ZOffset = 0.3
  561. PE.Rate = 999
  562. PE.VelocitySpread = 25
  563. PE.Name = "Particles"
  564.  
  565. function CreateParticles(art,accel,drag,lifetime,type,isenabledbydefault,locked,size,speed)
  566. local particle = nil
  567. coroutine.resume(coroutine.create(function(PART)
  568. particle = PE:Clone()
  569. Swait()
  570. particle.Rate = 999
  571. particle.Parent = art
  572. particle.Acceleration = accel
  573. if type == "Fire" then
  574. local EyeSizes={
  575. NumberSequenceKeypoint.new(0,size,size/2),
  576. NumberSequenceKeypoint.new(1,size/4,size/8)
  577. }
  578. particle.Size = NumberSequence.new(EyeSizes)
  579. elseif type == "Smoke" then
  580. local EyeSizes={
  581. NumberSequenceKeypoint.new(0,size/5,0),
  582. NumberSequenceKeypoint.new(1,size*2,0.5)
  583. }
  584. particle.Size = NumberSequence.new(EyeSizes)
  585. elseif type == "Solid" then
  586. local EyeSizes={
  587. NumberSequenceKeypoint.new(0,size,0),
  588. NumberSequenceKeypoint.new(1,size,0)
  589. }
  590. particle.Size = NumberSequence.new(EyeSizes)
  591. end
  592. particle.Lifetime=NumberRange.new(lifetime)
  593. particle.Drag = drag
  594. if locked == true then
  595. particle.LockedToPart = true
  596. end
  597. particle.Speed = NumberRange.new(speed*0.8,speed)
  598. particle.Texture = "http://www.roblox.com/asset/?id=1179557490"
  599. particle.Enabled = isenabledbydefault
  600. particle.Color = ColorSequence.new(Color3.new(255/255, 176/255, 0))
  601. end))
  602. return particle
  603. end
  604.  
  605. local poop = CreateParticles(succ,VT(0,0,0),5,2,"Smoke",false,false,5,35)
  606. local poop2 = CreateParticles(succ,VT(0,0,0),5,1,"Smoke",false,false,2,15)
  607.  
  608. --//=================================\\
  609. --|| DAMAGING
  610. --\\=================================//
  611.  
  612. function succnearest(position,range)
  613. for i,v in ipairs(workspace:GetChildren()) do
  614. local body = v:GetChildren()
  615. for part = 1, #body do
  616. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  617. if(body[part].Position - position).Magnitude < range then
  618. local bv = Instance.new("BodyVelocity")
  619. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  620. bv.velocity = CF(body[part].Position,succ.Position).lookVector*80
  621. bv.Parent = body[part]
  622. bv.Name = "SUCC"
  623. game:GetService("Debris"):AddItem(bv, 0.1)
  624. end
  625. end
  626. end
  627. if v.ClassName == "Part" then
  628. if v.Anchored == false and (v.Position - position).Magnitude < range then
  629. local bv = Instance.new("BodyVelocity")
  630. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  631. bv.velocity = CF(v.Position,succ.Position).lookVector*80
  632. bv.Parent = v
  633. bv.Name = "SUCC"
  634. game:GetService("Debris"):AddItem(bv, 0.1)
  635. end
  636. end
  637. end
  638. end
  639.  
  640. function cover(position,range)
  641. for i,v in ipairs(workspace:GetChildren()) do
  642. local body = v:GetChildren()
  643. for part = 1, #body do
  644. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  645. if(body[part].Position - position).Magnitude < range then
  646. CreateParticles(body[part],VT(0,-2,0),5,1,"Smoke",true,false,0.3,0)
  647. if v:FindFirstChild("Humanoid") then
  648. v.Humanoid.PlatformStand = true
  649. end
  650. end
  651. end
  652. end
  653. if v.ClassName == "Part" then
  654. if v.Anchored == false and (v.Position - position).Magnitude < range then
  655. CreateParticles(v,VT(0,-2,0),5,1,"Smoke",true,false,0.3,0)
  656. end
  657. end
  658. end
  659. end
  660.  
  661. function cough()
  662. CreateSound("328460122", succ, 3, 1)
  663. poop.VelocitySpread = 25
  664. poop:Emit(150)
  665. cover(CF(succ.Position)*CF(0,0,-1).p,15)
  666. end
  667.  
  668. --//=================================\\
  669. --|| ATTACK FUNCTIONS AND STUFF
  670. --\\=================================//
  671.  
  672. function CheckTableForString(Table, String)
  673. for i, v in pairs(Table) do
  674. if string.find(string.lower(String), string.lower(v)) then
  675. return true
  676. end
  677. end
  678. return false
  679. end
  680.  
  681. function CheckIntangible(Hit)
  682. local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
  683. if Hit and Hit.Parent then
  684. if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
  685. return true
  686. end
  687. end
  688. return false
  689. end
  690.  
  691. Debris = game:GetService("Debris")
  692.  
  693. function CastRay(StartPos, Vec, Length, Ignore, DelayIfHit)
  694. local Direction = CFrame.new(StartPos, Vec).lookVector
  695. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  696. local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
  697. if RayHit and CheckIntangible(RayHit) then
  698. if DelayIfHit then
  699. wait()
  700. end
  701. RayHit, RayPos, RayNormal = CastRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
  702. end
  703. return RayHit, RayPos, RayNormal
  704. end
  705.  
  706. function turnto(pos,part)
  707. part.CFrame = CF(part.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
  708. end
  709.  
  710. function vacuum()
  711. sick:Play()
  712. local nado = IT("Part")
  713. local mesh = IT("SpecialMesh",nado)
  714. mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
  715. nado.Transparency = 0.5
  716. nado.CanCollide = false
  717. nado.Anchored = true
  718. local loop = 0
  719. succing = {}
  720. local harm = succ.Touched:Connect(function(hit)
  721. if hit.Anchored == false then
  722. hit:remove()
  723. CreateSound("261732529", succ, 3, 1)
  724. poop2:Emit(1)
  725. end
  726. end)
  727. repeat
  728. Swait()
  729. loop = loop + 75
  730. nado.Parent = Effects
  731. local RayHit,RayPos = CastRay(succ.Position, Mouse.Hit.p, 1000, Character, false)
  732. local distance = (succ.Position - RayPos).magnitude
  733. mesh.Scale = VT(distance/12,distance/3.2,distance/12)
  734. nado.CFrame = CFrame.new(succ.Position, RayPos) * CFrame.new(0, 0, -distance/2) * ANGLES(RAD(-90),RAD(loop),RAD(0))
  735. turnto(Mouse.Hit.p,RootPart)
  736. succnearest(RayPos,distance/2.5)
  737. if RayHit ~= nil then
  738. if RayHit.Anchored == false then
  739. local bv = Instance.new("BodyVelocity")
  740. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  741. bv.velocity = CF(RayHit.Position,succ.Position).lookVector*80
  742. bv.Parent = RayHit
  743. bv.Name = "SUCC"
  744. game:GetService("Debris"):AddItem(bv, 0.1)
  745. end
  746. end
  747. local TotalSuccs = math.ceil(distance / 65)
  748. local Direction = CFrame.new(RayPos, succ.Position).lookVector
  749. for i = 1, TotalSuccs do
  750. local NewPos = (RayPos + (Direction * (distance * (i / TotalSuccs))))
  751. succnearest(NewPos,distance/(i*2.5))
  752. end
  753. until HOLD == false
  754. if #succing>0 then
  755. for e=1,#succing do
  756. if succing[e]~=nil then
  757. local Thing=succing[e]
  758. Thing:remove()
  759. table.remove(succing,e)
  760. end
  761. end
  762. end
  763. succing = {}
  764. harm:disconnect()
  765. nado:remove()
  766. sick:Stop()
  767. end
  768.  
  769. --//=================================\\
  770. --|| ASSIGN THINGS TO KEYS
  771. --\\=================================//
  772.  
  773. Humanoid.Changed:connect(function(Jump)
  774. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  775. Humanoid.Jump = false
  776. end
  777. end)
  778.  
  779. function MouseDown(Mouse)
  780. HOLD = true
  781. vacuum()
  782. end
  783.  
  784. function MouseUp(Mouse)
  785. HOLD = false
  786. end
  787.  
  788. function KeyDown(Key)
  789. if Key == "t" and ATTACK == false then
  790. CreateSound("743953262", Head, 3, 1)
  791. end
  792. if Key == "e" and ATTACK == false then
  793. cough()
  794. end
  795. end
  796.  
  797. function KeyUp(Key)
  798. end
  799.  
  800. Mouse.Button1Down:connect(function(NEWKEY)
  801. MouseDown(NEWKEY)
  802. end)
  803. Mouse.Button1Up:connect(function(NEWKEY)
  804. MouseUp(NEWKEY)
  805. end)
  806. Mouse.KeyDown:connect(function(NEWKEY)
  807. KeyDown(NEWKEY)
  808. end)
  809. Mouse.KeyUp:connect(function(NEWKEY)
  810. KeyUp(NEWKEY)
  811. end)
  812.  
  813. --//=================================\\
  814. --\\=================================//
  815.  
  816.  
  817. function unanchor()
  818. if UNANCHOR == true then
  819. g = Character:GetChildren()
  820. for i = 1, #g do
  821. if g[i].ClassName == "Part" then
  822. g[i].Anchored = false
  823. end
  824. end
  825. end
  826. end
  827.  
  828.  
  829. --//=================================\\
  830. --|| WRAP THE WHOLE SCRIPT UP
  831. --\\=================================//
  832.  
  833. Humanoid.Changed:connect(function(Jump)
  834. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  835. Humanoid.Jump = false
  836. end
  837. end)
  838.  
  839. while true do
  840. Swait()
  841. if #Effects2>0 then
  842. for e=1,#Effects2 do
  843. if Effects2[e]~=nil then
  844. local Thing=Effects2[e]
  845. if Thing~=nil then
  846. local Part=Thing[1]
  847. local Mode=Thing[2]
  848. local Delay=Thing[3]
  849. local IncX=Thing[4]
  850. local IncY=Thing[5]
  851. local IncZ=Thing[6]
  852. local Part2=Thing[8]
  853. if Thing[1].Transparency<=1 then
  854. if Thing[2]=="Block1" then
  855. Thing[1].CFrame=Thing[1].CFrame
  856. Mesh=Thing[1].Mesh
  857. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  858. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  859. elseif Thing[2]=="Cylinder" then
  860. Mesh=Thing[1].Mesh
  861. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  862. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  863. elseif Thing[2]=="Blood" then
  864. Mesh=Thing[7]
  865. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  866. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  867. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  868. elseif Thing[2]=="Elec" then
  869. Mesh=Thing[1].Mesh
  870. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  871. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  872. elseif Thing[2]=="Disappear" then
  873. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  874. end
  875. else
  876. Part.Parent=nil
  877. table.remove(Effects2,e)
  878. end
  879. end
  880. end
  881. end
  882. end
  883. unanchor()
  884. Humanoid.MaxHealth = "inf"
  885. Humanoid.Health = "inf"
  886. if Rooted == false then
  887. Disable_Jump = false
  888. Humanoid.WalkSpeed = Speed
  889. elseif Rooted == true then
  890. Disable_Jump = true
  891. Humanoid.WalkSpeed = 0
  892. end
  893. if sick == nil then
  894. sick = Instance.new("Sound",Torso)
  895. sick.SoundId = "rbxassetid://319444224"
  896. sick.Looped = true
  897. sick.Pitch = 1
  898. sick.Volume = 1
  899. end
  900. if #succing>0 then
  901. for e=1,#succing do
  902. if succing[e]~=nil then
  903. local Thing=succing[e]
  904. Thing.velocity = CF(Thing.Parent.Position,succ.Position).lookVector*80
  905. if HOLD == false then
  906. Thing.velocity = CF(Thing.Parent.Position,succ.Position).lookVector*0
  907. Thing:remove()
  908. table.remove(succing,e)
  909. end
  910. end
  911. end
  912. end
  913. end
  914.  
  915. --//=================================\\
  916. --\\=================================//
  917.  
  918.  
  919.  
  920.  
  921.  
  922. --//====================================================\\--
  923. --|| END OF SCRIPT
  924. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement