Advertisement
marioisdabomb

E

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