Advertisement
Zach_script_stealer2

Heavy FE

Aug 25th, 2019
261
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. print(" this script was converted by An ignorant / zach ")
  3. warn(" credits goes to the real creator ")
  4. warn(" pls dont abuse ")
  5. warn(" i beg u ")
  6. local Player,game,owner = owner,game
  7. local RealPlayer = Player
  8. do
  9. print("FE Compatibility code by Mokiros")
  10. print("This EDIT was made by Zach the script stealer / aka zach so please stop pretending that you made it")
  11. local rp = RealPlayer
  12. script.Parent = rp.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,Functions={},Connect=function(self,f)table.insert(self.Functions,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 then
  38. for _,f in pairs(t.Functions) do
  39. f(...)
  40. end
  41. end
  42. end
  43. m.TrigEvent = te
  44. UIS.TrigEvent = te
  45.  
  46. Event.OnServerEvent:Connect(function(plr,io)
  47. if plr~=rp then return end
  48. m.Target = io.Target
  49. m.Hit = io.Hit
  50. if not io.isMouse then
  51. local b = io.UserInputState == Enum.UserInputState.Begin
  52. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  53. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  54. end
  55. for _,t in pairs(CAS.Actions) do
  56. for _,k in pairs(t.Keys) do
  57. if k==io.KeyCode then
  58. t.Function(t.Name,io.UserInputState,io)
  59. end
  60. end
  61. end
  62. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  63. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  64. end
  65. end)
  66. Event.Parent = NLS([==[
  67. local Player = game:GetService("Players").LocalPlayer
  68. local Event = script:WaitForChild("UserInput_Event")
  69.  
  70. local Mouse = Player:GetMouse()
  71. local UIS = game:GetService("UserInputService")
  72. local input = function(io,a)
  73. if a then return end
  74. --Since InputObject is a client-side instance, we create and pass table instead
  75. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  76. end
  77. UIS.InputBegan:Connect(input)
  78. UIS.InputEnded:Connect(input)
  79.  
  80. local h,t
  81. --Give the server mouse data 30 times every second, but only if the values changed
  82. --If player is not moving their mouse, client won't fire events
  83. while wait(1/30) do
  84. if h~=Mouse.Hit or t~=Mouse.Target then
  85. h,t=Mouse.Hit,Mouse.Target
  86. Event:FireServer({isMouse=true,Target=t,Hit=h})
  87. end
  88. end]==],Player.Character)
  89.  
  90. ----Sandboxed game object that allows the usage of client-side methods and services
  91. --Real game object
  92. local _rg = game
  93.  
  94. --Metatable for fake service
  95. local fsmt = {
  96. __index = function(self,k)
  97. local s = rawget(self,"_RealService")
  98. if s then return s[k] end
  99. end,
  100. __newindex = function(self,k,v)
  101. local s = rawget(self,"_RealService")
  102. if s then s[k]=v end
  103. end,
  104. __call = function(self,...)
  105. local s = rawget(self,"_RealService")
  106. if s then return s(...) end
  107. end
  108. }
  109. local function FakeService(t,RealService)
  110. t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
  111. return setmetatable(t,fsmt)
  112. end
  113.  
  114. --Fake game object
  115. local g = {
  116. GetService = function(self,s)
  117. return self[s]
  118. end,
  119. Players = FakeService({
  120. LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
  121. },"Players"),
  122. UserInputService = FakeService(UIS,"UserInputService"),
  123. ContextActionService = FakeService(CAS,"ContextActionService"),
  124. }
  125. rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
  126. g.service = g.GetService
  127.  
  128. g.RunService = FakeService({
  129. RenderStepped = _rg:GetService("RunService").Heartbeat,
  130. BindToRenderStep = function(self,name,_,fun)
  131.  
  132. end,
  133. UnbindFromRenderStep = function(self,name)
  134. self._btrs[name]:Disconnect()
  135. end,
  136. },"RunService")
  137.  
  138. setmetatable(g,{
  139. __index=function(self,s)
  140. return _rg:GetService(s) or typeof(_rg[s])=="function"
  141. and function(_,...)return _rg[s](_rg,...)end or _rg[s]
  142. end,
  143. __newindex = fsmt.__newindex,
  144. __call = fsmt.__call
  145. })
  146. --Changing owner to fake player object to support owner:GetMouse()
  147. game,owner = g,g.Players.LocalPlayer
  148. end
  149.  
  150.  
  151.  
  152.  
  153. local Player = game:GetService("Players").LocalPlayer
  154. local Character = Player.Character
  155. local Mouse = Player:GetMouse()
  156. --Mouse.TargetFilter = workspace
  157.  
  158. local Head = Character:WaitForChild("Head")
  159. local Torso = Character:WaitForChild("Torso")
  160. local RootPart = Character:WaitForChild("HumanoidRootPart")
  161. local Human = Character:WaitForChild("Humanoid")
  162.  
  163. Human.AutoRotate = false
  164. Human.JumpPower = 0
  165. Human.WalkSpeed = 12
  166.  
  167. -----------------------------------------------------------------------------------------------------------------------
  168.  
  169. for _, Item in next, Character:GetChildren() do
  170. if Item:IsA("CharacterAppearance") then
  171. Item:Destroy()
  172. end
  173. end
  174.  
  175. local Pants = Character:FindFirstChild("Pants") or Instance.new("Pants")
  176. Pants.PantsTemplate = "rbxassetid://69232474"
  177. Pants.Name = "Pants"
  178. Pants.Parent = Character
  179.  
  180. local Shirt = Character:FindFirstChild("Shirt") or Instance.new("Shirt")
  181. Shirt.ShirtTemplate = "rbxassetid://69232183"
  182. Shirt.Name = "Shirt"
  183. Shirt.Parent = Character
  184.  
  185. local Face = Head:WaitForChild("face")
  186. Face.Texture = "rbxassetid://112805849"
  187.  
  188. local TShirt = Torso:FindFirstChild("roblox")
  189. if TShirt then
  190. TShirt:Destroy()
  191. end
  192.  
  193. --[[local BodyColors = Character:WaitForChild("Body Colors")
  194. BodyColors.HeadColor = BrickColor.new("Light orange")
  195. BodyColors.LeftArmColor = BrickColor.new("Light orange")
  196. BodyColors.RightArmColor = BrickColor.new("Light orange")
  197. BodyColors.TorsoColor = BrickColor.new("Light orange")--]]
  198.  
  199. spawn(function() wait(.5)
  200. Head.BrickColor = BrickColor.new("Light orange")
  201. Torso.BrickColor = BrickColor.new("Light orange")
  202. Character["Left Arm"].BrickColor = BrickColor.new("Light orange")
  203. Character["Right Arm"].BrickColor = BrickColor.new("Light orange")
  204. end)
  205.  
  206. Character:WaitForChild("Animate"):Destroy()
  207.  
  208. local RJ = RootPart:WaitForChild("RootJoint")
  209. RJ:Destroy()
  210. RJ = Instance.new("Weld", RootPart)
  211. RJ.Part0 = RootPart
  212. RJ.Part1 = Torso
  213.  
  214. local Neck = Instance.new("Weld", Torso)
  215. Neck.Part0 = Torso
  216. Neck.Part1 = Character:WaitForChild("Head")
  217. Neck.C0 = CFrame.new(0, 1.5, 0)
  218.  
  219. Torso:WaitForChild("Right Shoulder").Part1 = nil
  220. local RS = Instance.new("Weld", Head)
  221. RS.Part0 = Head
  222. RS.Part1 = Character:WaitForChild("Right Arm")
  223.  
  224. Torso:WaitForChild("Left Shoulder").Part1 = nil
  225. local LS = Instance.new("Weld", Head)
  226. LS.Part0 = Head
  227. LS.Part1 = Character:WaitForChild("Left Arm")
  228.  
  229. local LH = Torso:WaitForChild("Left Hip")
  230. LH:Destroy()
  231. LH = Instance.new("Weld", Torso)
  232. LH.Part0 = Torso
  233. LH.Part1 = Character:WaitForChild("Left Leg")
  234.  
  235. local RH = Torso:WaitForChild("Right Hip")
  236. RH:Destroy()
  237. RH = Instance.new("Weld", Torso)
  238. RH.Part0 = Torso
  239. RH.Part1 = Character:WaitForChild("Right Leg")
  240.  
  241. local GUN = Instance.new("Part", Character)
  242. GUN.CanCollide = false
  243. GUN.Size = Vector3.new(1.549, 2.302, 3.814)
  244. GUN.Name = "Handle"
  245. GUN.Material = Enum.Material.SmoothPlastic
  246.  
  247. local MS = Instance.new("SpecialMesh", GUN)
  248. MS.MeshType = Enum.MeshType.FileMesh
  249. MS.MeshId = "rbxassetid://450812185"
  250. MS.TextureId = "rbxassetid://450812194"
  251.  
  252. local GRIP = Instance.new("Weld", RS.Part1)
  253. GRIP.Part0 = RS.Part1
  254. GRIP.Part1 = GUN
  255.  
  256. local SN = Instance.new("Sound", GUN)
  257. SN.SoundId = "rbxassetid://341294387"
  258. SN.PlaybackSpeed = 0.9
  259. SN.Looped = true
  260. SN.Volume = 0
  261. SN:Play()
  262.  
  263. local FL = Instance.new("Part", GUN)
  264. FL.BrickColor = BrickColor.Yellow()
  265. FL.Transparency = 1
  266. FL.Material = Enum.Material.SmoothPlastic
  267. FL.CanCollide = false
  268. FL.Size = Vector3.new(1, 3.38, 1)
  269.  
  270. local MS2 = Instance.new("SpecialMesh", FL)
  271. MS2.MeshType = Enum.MeshType.FileMesh
  272. MS2.MeshId = "rbxassetid://1323306"
  273. MS2.Scale = Vector3.new(0.35, 1.9, 0.35)
  274.  
  275. local FLW = Instance.new("Weld", GUN)
  276. FLW.Part0 = GUN
  277. FLW.Part1 = FL
  278. FLW.C0 = CFrame.new(0.293, 0.251, 3.221, 0, 0.028, 1, 1, 0, 0, 0, 1, -0.028)
  279.  
  280. -----------------------------------------------------------------------------------------------------------------------
  281.  
  282. local STANCE = {
  283. NK = CFrame.new(0, 1, 0, 0.747311652, 0, 0.664473772, 0, 1, 0, -0.664473772, 0, 0.747311652);
  284. RJ = CFrame.new(0, 0, 0, 0.747311592, 0, -0.664473712, 0, 1, 0, 0.664473712, 0, 0.747311592);
  285. LS = CFrame.new(0.474761963, -1.61745477, -1.20455933, -0.127145067, -0.88503027, -0.447834671, -0.836402416, 0.338357687, -0.431213528, 0.533165276, 0.319743276, -0.783262014);
  286. RS = CFrame.new(1.14480591, -1.47239065, 0.695491791, 0.972185493, -0.190045089, -0.136889026, 0.123703048, 0.912935674, -0.388903707, 0.198880106, 0.361152887, 0.911051929);
  287. GRIP = CFrame.new(-0.0976009369, -1.92251587, -1.31733322, -0.980839312, 0.117544398, -0.155363142, 0.158846945, 0.944226265, -0.288452089, 0.11279203, -0.307604104, -0.944805682);
  288. }
  289.  
  290. LS.C0 = STANCE.LS
  291. RS.C0 = STANCE.RS
  292. RJ.C0 = STANCE.RJ
  293. GRIP.C0 = STANCE.GRIP
  294.  
  295. local Down = false
  296.  
  297. Mouse.Button1Down:Connect(function()
  298. Down = true
  299. end)
  300.  
  301. Mouse.Button1Up:Connect(function()
  302. Down = false
  303. end)
  304.  
  305. math.randomseed(os.time())
  306.  
  307. local function Taunt()
  308. local Taunts = {137542750, 130774824, 130776108, 679798995, 679798810}
  309. local Sound = Instance.new("Sound", GUN)
  310. local Id = Taunts[math.random(#Taunts)]
  311. Sound.TimePosition = Id == 130776108 and 4.2 or 0
  312. Sound.SoundId = "rbxassetid://" .. Id
  313. Sound.Volume = 1
  314. Sound.Ended:Connect(function()
  315. Sound:Destroy()
  316. end)
  317. Sound:Play()
  318. end
  319.  
  320. Mouse.KeyDown:Connect(function(Key)
  321. if Key == string.char(32) then
  322. Taunt()
  323. end
  324. end)
  325.  
  326.  
  327.  
  328. local function Shoot()
  329. local Bullet = Instance.new("Part")
  330. Bullet.Size = Vector3.new(0.3, 0.3, 0.7)
  331. Bullet.Transparency = 1
  332. Bullet.CanCollide = false
  333.  
  334. local AntiGravity = Instance.new("BodyForce", Bullet)
  335. AntiGravity.Force = Vector3.new(0, Bullet:GetMass() * workspace.Gravity, 0)
  336.  
  337. local Start = (GUN.CFrame * CFrame.new(0.255, 0.251, 1.877)).p
  338. Bullet.CFrame = CFrame.new(Start, Mouse.Hit.p)
  339. Bullet.Velocity = Bullet.CFrame.lookVector * 300
  340.  
  341. Bullet.Touched:Connect(function(Hit)
  342. if Hit.Parent and Hit.Parent ~= Character and Hit.Parent:FindFirstChild("Humanoid") then
  343. Hit.Parent.Humanoid:TakeDamage(5)
  344. Bullet:Destroy()
  345. end
  346. end)
  347.  
  348. Bullet.Parent = workspace
  349. game.Debris:AddItem(Bullet, 3)
  350. end
  351.  
  352.  
  353. game:GetService("RunService"):BindToRenderStep("Invisible", Enum.RenderPriority.Character.Value - 1, function()
  354. GUN.LocalTransparencyModifier = 0
  355. FL.LocalTransparencyModifier = 0
  356. LS.Part1.LocalTransparencyModifier = 0
  357. RS.Part1.LocalTransparencyModifier = 0
  358. end)
  359.  
  360. local Heartbeat, Angle = game:GetService("RunService").Heartbeat
  361.  
  362. while Heartbeat:Wait() do
  363. local Angle = tick() * 8
  364.  
  365. -- Torso lean
  366. local VelocityForTilt = RootPart.Velocity * Vector3.new(1, 0, 1) / 150
  367. local VectorForTilt = RootPart.CFrame:vectorToObjectSpace(VelocityForTilt)
  368. RJ.C0 = RJ.C0:Lerp(STANCE.RJ * CFrame.Angles(VectorForTilt.Z, VectorForTilt.X, -VectorForTilt.X), 0.1)
  369.  
  370. -- Rotate to face camera
  371. local RootPosition = RootPart.Position
  372. local Direction = Mouse.Hit.p - RootPosition
  373. Direction = Vector3.new(Direction.X, 0, Direction.Z).unit
  374. local NewCFrame = CFrame.new(RootPosition, RootPosition + Direction) * CFrame.Angles(0, -0.02, 0)
  375. RootPart.CFrame = RootPart.CFrame:Lerp(NewCFrame, 0.1)
  376.  
  377. -- Neck Angle
  378. local Hypotenuse = (Mouse.Hit.p - Head.Position).magnitude
  379. local Opposite = Mouse.Hit.p.y - Head.Position.y
  380. local Pitch = math.asin(Opposite / Hypotenuse)
  381. local NewNeckCFrame = STANCE.NK * CFrame.Angles(Pitch + 0.2, 0, 0) * CFrame.new(0, 0.5, 0)
  382. Neck.C0 = Neck.C0:Lerp(NewNeckCFrame, 0.1)
  383.  
  384. -- Legs
  385. local FlatVelocity = (Torso.Velocity * Vector3.new(1, 0, 1))
  386. if FlatVelocity.magnitude < 2 then
  387. LH.C0 = LH.C0:Lerp(CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.sin(tick() * 0.5) / 17, 0, -0.02 + math.sin(tick() * 0.4) / 19) * CFrame.new(0, -1, 0), 0.2)
  388. RH.C0 = RH.C0:Lerp(CFrame.new(0.5, -1, 0) * CFrame.Angles(math.sin(-tick() * 0.5) / 18, 0, 0.02 + math.sin(-tick() * 0.35) / 20) * CFrame.new(0, -1, 0), 0.2)
  389. else
  390. local Look = (Torso.CFrame.lookVector * Vector3.new(1, 0, 1)).unit
  391. local Move = FlatVelocity.unit
  392. local OffAngle = (Look:Cross(Move).Y > 0 and 1 or -1) * math.acos(1 - (Look - Move).magnitude ^ 2 / 2)
  393. OffAngle = math.max(-math.pi, math.min(math.pi, OffAngle))
  394. LH.C0 = LH.C0:Lerp(CFrame.new(-0.5, 0, 0) * CFrame.Angles(0, OffAngle, 0)
  395. * CFrame.new(0, -math.max(0, math.cos(Angle * 2) / 5) + math.max(0, math.cos(Angle + math.pi) / 2.5) - 2, math.sin(-Angle + math.pi) / 1.8 + 0.15)
  396. * CFrame.Angles(math.sin(-Angle) / 1.8 - 0.2, 0, 0), 0.2)
  397. RH.C0 = RH.C0:Lerp(CFrame.new(0.5, 0, 0) * CFrame.Angles(0, OffAngle, 0)
  398. * CFrame.new(0, -math.max(0, math.cos(Angle * 2) / 5) + math.max(0, math.cos(Angle) / 2.5) - 2, math.sin(-Angle) / 1.8 + 0.15)
  399. * CFrame.Angles(math.sin(Angle) / 1.8 - 0.2, 0, 0), 0.2)
  400. end
  401.  
  402. -- Shooting
  403. if Down then
  404. SN.Volume = SN.Volume + (1.5 - SN.Volume) * 0.3
  405. FL.Transparency = FL.Transparency + (0.6 - FL.Transparency) * 0.2
  406. FLW.C0 = FLW.C0 * CFrame.Angles(0, 0.2, 0)
  407. Shoot()
  408. else
  409. SN.Volume = SN.Volume + (0 - SN.Volume) * 0.15
  410. FL.Transparency = FL.Transparency + (1 - FL.Transparency) * 0.2
  411. end
  412. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement