Advertisement
Ban43_GodOfEdits

spdr

Aug 4th, 2018
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 52.58 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,game,owner = owner,game
  3. local RealPlayer = Player
  4. do
  5. print("FE Compatibility code by Mokiros")
  6. local rp = RealPlayer
  7. script.Parent = rp.Character
  8.  
  9. --RemoteEvent for communicating
  10. local Event = Instance.new("RemoteEvent")
  11. Event.Name = "UserInput_Event"
  12.  
  13. --Fake event to make stuff like Mouse.KeyDown work
  14. local function fakeEvent()
  15. local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
  16. t.connect = t.Connect
  17. return t
  18. end
  19.  
  20. --Creating fake input objects with fake variables
  21. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  22. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  23. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  24. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  25. end}
  26. --Merged 2 functions into one by checking amount of arguments
  27. CAS.UnbindAction = CAS.BindAction
  28.  
  29. --This function will trigger the events that have been :Connect()'ed
  30. local function te(self,ev,...)
  31. local t = m[ev]
  32. if t and t._fakeEvent then
  33. for _,f in pairs(t.Functions) do
  34. f(...)
  35. end
  36. end
  37. end
  38. m.TrigEvent = te
  39. UIS.TrigEvent = te
  40.  
  41. Event.OnServerEvent:Connect(function(plr,io)
  42. if plr~=rp then return end
  43. m.Target = io.Target
  44. m.Hit = io.Hit
  45. if not io.isMouse then
  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 Mouse = Player:GetMouse()
  66. local UIS = game:GetService("UserInputService")
  67. local input = function(io,a)
  68. if a then return end
  69. --Since InputObject is a client-side instance, we create and pass table instead
  70. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  71. end
  72. UIS.InputBegan:Connect(input)
  73. UIS.InputEnded:Connect(input)
  74.  
  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.  
  85. ----Sandboxed game object that allows the usage of client-side methods and services
  86. --Real game object
  87. local _rg = game
  88.  
  89. --Metatable for fake service
  90. local fsmt = {
  91. __index = function(self,k)
  92. local s = rawget(self,"_RealService")
  93. if s then return s[k] end
  94. end,
  95. __newindex = function(self,k,v)
  96. local s = rawget(self,"_RealService")
  97. if s then s[k]=v end
  98. end,
  99. __call = function(self,...)
  100. local s = rawget(self,"_RealService")
  101. if s then return s(...) end
  102. end
  103. }
  104. local function FakeService(t,RealService)
  105. t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
  106. return setmetatable(t,fsmt)
  107. end
  108.  
  109. --Fake game object
  110. local g = {
  111. GetService = function(self,s)
  112. return self[s]
  113. end,
  114. Players = FakeService({
  115. LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
  116. },"Players"),
  117. UserInputService = FakeService(UIS,"UserInputService"),
  118. ContextActionService = FakeService(CAS,"ContextActionService"),
  119. }
  120. rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
  121. g.service = g.GetService
  122.  
  123. g.RunService = FakeService({
  124. RenderStepped = _rg:GetService("RunService").Heartbeat,
  125. BindToRenderStep = function(self,name,_,fun)
  126. self._btrs[name] = self.Heartbeat:Connect(fun)
  127. end,
  128. UnbindFromRenderStep = function(self,name)
  129. self._btrs[name]:Disconnect()
  130. end,
  131. },"RunService")
  132.  
  133. setmetatable(g,{
  134. __index=function(self,s)
  135. return _rg:GetService(s) or typeof(_rg[s])=="function"
  136. and function(_,...)return _rg[s](_rg,...)end or _rg[s]
  137. end,
  138. __newindex = fsmt.__newindex,
  139. __call = fsmt.__call
  140. })
  141. --Changing owner to fake player object to support owner:GetMouse()
  142. game,owner = g,g.Players.LocalPlayer
  143. end
  144. Player = owner
  145. local chr = plr.Character
  146. local rope = nil
  147. local working = false
  148. local working2 = false
  149. local forward = false
  150. local backward = false
  151. local shooting = false
  152. local left = false
  153. local right = false
  154. local crawling = false
  155. local active = true
  156. local wing1 = nil
  157. local wing2 = nil
  158. local hats = {}
  159. local gui = Instance.new('ScreenGui')
  160. gui.Parent = plr.PlayerGui
  161. gui.Name = "Spiderman"
  162. gui.ResetOnSpawn = false
  163. local frame = Instance.new('Frame',gui)
  164. frame.Size = UDim2.new(0.2,0,0.2,0)
  165. frame.Position = UDim2.new(0,0,0.9,0)
  166. frame.BackgroundColor3 = Color3.fromRGB(255, 66, 66)
  167. frame.BorderSizePixel = 4
  168. frame.BorderColor3 = Color3.fromRGB(66, 134, 244)
  169. frame.Active = true
  170. frame.Draggable = true
  171. local txt = Instance.new('TextLabel',frame)
  172. txt.Text = "Spiderman Gui"
  173. txt.TextColor3 = Color3.fromRGB(66, 134, 244)
  174. txt.Size = UDim2.new(1,0,0.3,0)
  175. txt.TextScaled = true
  176. txt.BackgroundTransparency = 1
  177. local but = Instance.new('TextButton',frame)
  178. but.Text = "Toggle Suit"
  179. but.TextColor3 = Color3.fromRGB(255, 66, 66)
  180. but.Size = UDim2.new(0.7,0,0.3,0)
  181. but.Position = UDim2.new(0.15,0,0.5,0)
  182. but.BorderSizePixel = 0
  183. but.TextScaled = true
  184. but.BackgroundColor3 = Color3.fromRGB(66, 134, 244)
  185. but.MouseButton1Down:connect(function()
  186. active = not active
  187. end)
  188. local txt2 = Instance.new('TextLabel',frame)
  189. txt2.Text = "Toggle wall climb on with C."
  190. txt2.TextColor3 = Color3.fromRGB(66, 134, 244)
  191. txt2.Size = UDim2.new(1,0,0.15,0)
  192. txt2.Position = UDim2.new(0,0,0.85,0)
  193. txt2.TextScaled = true
  194. txt2.BackgroundTransparency = 1
  195. function webshot(char)
  196. local haaaaaaaaa = coroutine.wrap(function()
  197. if char:FindFirstChildOfClass('Humanoid').Health > 0 then
  198. for i,v in pairs(char:GetChildren()) do
  199. local partz = {Enum.NormalId.Back,Enum.NormalId.Right,Enum.NormalId.Left,Enum.NormalId.Top,Enum.NormalId.Bottom,Enum.NormalId.Front}
  200. if v:IsA('Part') and v.Transparency ~= 1 and v.Name ~= "Head" then
  201. for a,c in pairs(partz) do
  202. local dec = Instance.new('Decal',v)
  203. dec.Texture = 'http://www.roblox.com/asset/?id=148633485'
  204. dec.Face = c
  205. end
  206. end
  207. end
  208. char:FindFirstChildOfClass('Humanoid').Health = char:FindFirstChildOfClass('Humanoid').Health - char:FindFirstChildOfClass('Humanoid').MaxHealth*.75
  209. if char:FindFirstChild('HumanoidRootPart') then
  210. local heyyyy = nil
  211. if char:FindFirstChild('Animate') then
  212. heyyyy = char.Animate:Clone()
  213. char.Animate:Destroy()
  214. end
  215. char:FindFirstChildOfClass('Humanoid').PlatformStand = true
  216. local ahhhhhhh = true
  217. char.HumanoidRootPart.CFrame = CFrame.new(char.HumanoidRootPart.Position)*CFrame.Angles(0,0,math.pi/2)
  218. if char:FindFirstChildOfClass('Humanoid') then
  219. char:FindFirstChildOfClass('Humanoid').Changed:connect(function(change)
  220. if change == "PlatformStand" and ahhhhhhh then
  221. char:FindFirstChildOfClass('Humanoid').PlatformStand = true
  222. end
  223. end)
  224. end
  225. wait(60)
  226. ahhhhhhh = false
  227. if char:FindFirstChildOfClass('Humanoid') then
  228. char:FindFirstChildOfClass('Humanoid').PlatformStand = false
  229. end
  230. if force then
  231. force:Destroy()
  232. end
  233. if heyyyy then
  234. heyyyy.Parent = char
  235. end
  236. for i,v in pairs(char:GetChildren()) do
  237. if v.Name ~= "Head" then
  238. for a,c in pairs(v:GetChildren()) do
  239. if c:IsA('Decal') then
  240. c:Destroy()
  241. end
  242. end
  243. end
  244. end
  245. end
  246. end
  247. end)
  248. haaaaaaaaa()
  249. end
  250. --------------------------------------
  251. plr=game:service'Players'.LocalPlayer
  252. chr=plr.Character
  253. local ms = plr:GetMouse()
  254. CV="Bright red"
  255.  
  256. local txt = Instance.new("BillboardGui", chr)
  257. txt.Adornee = chr.Head
  258. txt.Name = "_status"
  259. txt.Size = UDim2.new(4, 0, 2.5, 0)
  260. txt.StudsOffset = Vector3.new(-4, 2, 0)
  261. local text = Instance.new("TextLabel", txt)
  262. text.Size = UDim2.new(3, 0, 0.5, 0)
  263. text.FontSize = "Size24"
  264. text.TextScaled = true
  265. text.TextTransparency = 0
  266. text.BackgroundTransparency = 1
  267. text.TextTransparency = 0
  268. text.TextStrokeTransparency = 0
  269. text.Font = "SciFi"
  270. text.TextStrokeColor3 = Color3.new(128,0,0)
  271. text.Text = "Spider-Man"
  272. --------------------------------------
  273. plr=game:service'Players'.LocalPlayer
  274. chr=plr.Character
  275. local ms = plr:GetMouse()
  276. CV="Bright red"
  277.  
  278. local txt = Instance.new("BillboardGui", chr)
  279. txt.Adornee = chr.Head
  280. txt.Name = "_status"
  281. txt.Size = UDim2.new(4, 0, 2.5, 0)
  282. txt.StudsOffset = Vector3.new(-4, 1.5, 0)
  283. local text = Instance.new("TextLabel", txt)
  284. text.Size = UDim2.new(3, 0, 0.5, 0)
  285. text.FontSize = "Size24"
  286. text.TextScaled = false
  287. text.TextTransparency = 0
  288. text.BackgroundTransparency = 1
  289. text.TextTransparency = 0
  290. text.TextStrokeTransparency = 0
  291. text.Font = "SciFi"
  292. text.TextStrokeColor3 = Color3.new(0,0,128)
  293. text.Text = "WIP"
  294.  
  295. MaxHealth = 500
  296.  
  297.  
  298. mouse.KeyDown:connect(function(key)
  299. if key == "f" then
  300. if rope == nil then
  301. if plr.Character and mouse.Hit and mouse.Target and plr.Character:FindFirstChild('Head') and plr.Character:FindFirstChild('Left Arm') and plr.Character:FindFirstChild('Torso') and plr.Character.Torso:FindFirstChild('Left Shoulder') then
  302. if game.CoreGui:FindFirstChild('hekking spiderman') then
  303. game.CoreGui:FindFirstChild('hekking spiderman'):Destroy()
  304. end
  305. local Head = plr.Character.Head
  306. local RightShoulder = plr.Character.Torso["Left Shoulder"]
  307. local RightArm = plr.Character["Left Arm"]
  308. local MousePosition = mouse.Hit.p
  309. local ToMouse = (MousePosition - Head.Position).unit
  310. local Angle = math.acos(ToMouse:Dot(Vector3.new(0, -1, 0)))
  311. local FromRightArmPos = (Head.Position + Head.CFrame:vectorToWorldSpace(Vector3.new(((Head.Size.X / 2) + (RightArm.Size.X / 2)), ((Head.Size.Y / 2) - (RightArm.Size.Z / 2)), 0)))
  312. local ToMouseRightArm = ((MousePosition - FromRightArmPos) * Vector3.new(-1 ,0, -1)).unit
  313. local Look = (Head.CFrame.lookVector * Vector3.new(-1, 0, -1)).unit
  314. local LateralAngle = math.acos(ToMouseRightArm:Dot(Look))
  315. if tostring(LateralAngle) == "-1.#IND" then
  316. LateralAngle = 0
  317. end
  318. local Cross = Head.CFrame.lookVector:Cross(ToMouseRightArm)
  319. if LateralAngle < (-math.pi / 2) then
  320. LateralAngle = (-math.pi / 2)
  321. end
  322. if Cross.Y > 0 then
  323. LateralAngle = -LateralAngle
  324. end
  325. RightShoulder.C0 = CFrame.new(RightShoulder.C0.p) * CFrame.Angles(((-math.pi / 2) + Angle), ((-math.pi / 2) - LateralAngle), -math.pi/2)
  326. wait()
  327. local pa = Instance.new('Part',workspace)
  328. pa.Name = "SPOODERMEN"
  329. pa.Size = Vector3.new(0.2,0.2,0.2)
  330. pa.Anchored = true
  331. pa.CFrame = CFrame.new(MousePosition)
  332. pa.Transparency = 1
  333. local att = Instance.new('Attachment',pa)
  334. local att2 = Instance.new('Attachment',RightArm)
  335. att2.CFrame = CFrame.new(0,-1,0)
  336. att2.Axis = Vector3.new(0,0,0)
  337. local ropez = Instance.new('RopeConstraint',RightArm)
  338. ropez.Color = BrickColor.new('Institutional white')
  339. ropez.Attachment0 = att
  340. ropez.Attachment1 = att2
  341. ropez.Length = ropez.CurrentDistance-5
  342. ropez.Visible = true
  343. rope = ropez
  344. crawling = false
  345. txt2.Text = "Toggle wall climb on with C."
  346. end
  347. else
  348. if plr.Character and plr.Character:FindFirstChildOfClass('Humanoid') and plr.Character:FindFirstChild('Right Arm') and plr.Character:FindFirstChild('Torso') and plr.Character.Torso:FindFirstChild('Left Shoulder') then
  349. local RightShoulder = plr.Character.Torso["Left Shoulder"]
  350. rope:Destroy()
  351. rope = nil
  352. RightShoulder.C0 = CFrame.new(RightShoulder.C0.p)*CFrame.Angles(0,-math.pi/2,0)
  353. working = false
  354. working2 = false
  355. forward = false
  356. backward = false
  357. right = false
  358. left = false
  359. local mouse = game.Players.LocalPlayer:GetMouse()
  360. local running = false
  361.  
  362.  
  363.  
  364. -- Gradually regenerates the Humanoid's Health over time.
  365.  
  366. local REGEN_RATE = 100/100 -- Regenerate this fraction of MaxHealth per second.
  367. local REGEN_STEP = 1 -- Wait this long between each regeneration step.
  368.  
  369. --------------------------------------------------------------------------------
  370.  
  371. local Character = script.Parent
  372. local Humanoidr = Character:WaitForChild'Humanoid'
  373.  
  374. --------------------------------------------------------------------------------
  375.  
  376. while true do
  377. while Humanoidr.Health < Humanoidr.MaxHealth do
  378. local dt = wait(REGEN_STEP)
  379. local dh = dt*REGEN_RATE*Humanoidr.MaxHealth
  380. Humanoidr.Health = math.min(Humanoidr.Health + dh, Humanoidr.MaxHealth)
  381. end
  382. Humanoidr.HealthChanged:Wait()
  383. end
  384.  
  385. Humanoidr.MaxHealth = 500
  386.  
  387. music = Instance.new("Sound",Character) -- change to Character for global music --Change to Torso for non-global music. You may wanna leave this at torso tho...
  388. music.Volume = 3
  389. music.SoundId = "rbxassetid://459993965"--576413172 --music2 = 1117522463 --music3 = 903651242 --music4 = 611389938
  390. music.Looped = true
  391. music:Play()
  392. -- Objects
  393.  
  394. local ScreenGui = Instance.new("ScreenGui")
  395. local Frame = Instance.new("Frame")
  396. local TextLabel = Instance.new("TextLabel")
  397.  
  398. -- Properties
  399. ScreenGui.Name = "hekking spiderman"
  400. ScreenGui.Parent = game.CoreGui
  401.  
  402. Frame.Parent = ScreenGui
  403. Frame.BackgroundColor3 = Color3.new(1, 1, 1)
  404. Frame.BorderSizePixel = 0
  405. Frame.Size = UDim2.new(1, 0, 0.0500000007, 0)
  406.  
  407. TextLabel.Parent = Frame
  408. TextLabel.BackgroundColor3 = Color3.new(1, 1, 1)
  409. TextLabel.BackgroundTransparency = 1
  410. TextLabel.Size = UDim2.new(1, 0, 1, 0)
  411. TextLabel.Font = Enum.Font.SourceSans
  412. TextLabel.FontSize = Enum.FontSize.Size14
  413. TextLabel.Text = "!! PRESS BACKSPACE TO REGAIN BALANCE !!"
  414. TextLabel.TextColor3 = Color3.new(0, 0, 0)
  415. TextLabel.TextScaled = true
  416. TextLabel.TextSize = 14
  417. TextLabel.TextWrapped = true
  418. end
  419. end
  420. elseif key == "q" and rope ~= nil then
  421. working = true
  422. working2 = false
  423. elseif key == "e" and rope ~= nil then
  424. working2 = true
  425. working = false
  426. elseif key == "w" and rope ~= nil then
  427. forward = true
  428. elseif key == "s" and rope ~= nil then
  429. backward = true
  430. elseif key == "a" and rope ~= nil then
  431. left = true
  432. elseif key == "d" and rope ~= nil then
  433. right = true
  434. elseif key == "x" and shooting == false then
  435. if plr.Character and mouse.Hit and plr.Character:FindFirstChild('Head') and plr.Character:FindFirstChild('Right Arm') and plr.Character:FindFirstChild('Torso') and plr.Character.Torso:FindFirstChild('Right Shoulder') then
  436. shooting = true
  437. local Head = plr.Character.Head
  438. local RightShoulder = plr.Character.Torso["Right Shoulder"]
  439. local RightArm = plr.Character["Right Arm"]
  440. local MousePosition = mouse.Hit.p
  441. local ToMouse = (MousePosition - Head.Position).unit
  442. local Angle = math.acos(ToMouse:Dot(Vector3.new(0, 1, 0)))
  443. local FromRightArmPos = (Head.Position + Head.CFrame:vectorToWorldSpace(Vector3.new(((Head.Size.X / 2) + (RightArm.Size.X / 2)), ((Head.Size.Y / 2) - (RightArm.Size.Z / 2)), 0)))
  444. local ToMouseRightArm = ((MousePosition - FromRightArmPos) * Vector3.new(1 ,0, 1)).unit
  445. local Look = (Head.CFrame.lookVector * Vector3.new(1, 0, 1)).unit
  446. local LateralAngle = math.acos(ToMouseRightArm:Dot(Look))
  447. if tostring(LateralAngle) == "-1.#IND" then
  448. LateralAngle = 0
  449. end
  450. local Cross = Head.CFrame.lookVector:Cross(ToMouseRightArm)
  451. if LateralAngle > (math.pi / 2) then
  452. LateralAngle = (math.pi / 2)
  453. end
  454. if Cross.Y < 0 then
  455. LateralAngle = -LateralAngle
  456. end
  457. RightShoulder.C0 = CFrame.new(RightShoulder.C0.p) * CFrame.Angles(((math.pi / 2) - Angle), ((math.pi / 2) + LateralAngle), math.pi/2)
  458. wait()
  459. local shot = Instance.new('Part',workspace)
  460. shot.Name = "AAAA"
  461. shot.CanCollide = false
  462. shot.BrickColor = BrickColor.new('Institutional white')
  463. shot.Size = Vector3.new(3,3,0.2)
  464. shot.Transparency = 1
  465. shot.CFrame = CFrame.new(chr['Right Arm'].CFrame.p, mouse.Hit.p)*CFrame.Angles(0,0,0)
  466. local dec = Instance.new('Decal',shot)
  467. dec.Texture = 'rbxassetid://148633485'
  468. local dec2 = Instance.new('Decal',shot)
  469. dec2.Texture = 'rbxassetid://148633485'
  470. dec2.Face = Enum.NormalId.Back
  471. local heck = Instance.new('BodyVelocity',shot)
  472. heck.Velocity = (shot.CFrame*CFrame.Angles(0,0,0)).lookVector*120
  473. shot.Touched:connect(function(hit)
  474. if hit.Parent:FindFirstChildOfClass('Humanoid') and hit.Parent ~= chr then
  475. webshot(hit.Parent)
  476. shot:Destroy()
  477. elseif hit.Parent.Parent:FindFirstChildOfClass('Humanoid') and hit.Parent.Parent ~= chr then
  478. webshot(hit.Parent.Parent)
  479. shot:Destroy()
  480. elseif hit.Parent.Parent:FindFirstChildOfClass('Humanoid') == nil and hit.Parent:FindFirstChildOfClass('Humanoid') == nil then
  481. shot:Destroy()
  482. end
  483. end)
  484. wait(1)
  485. RightShoulder.C0 = CFrame.new(RightShoulder.C0.p)*CFrame.Angles(0,math.pi/2,0)
  486. shooting = false
  487. end
  488. elseif key == "c" and rope == nil then
  489. if crawling then
  490. crawling = false
  491. txt2.Text = "Toggle wall climb on with C."
  492. else
  493. crawling = true
  494. txt2.Text = "Toggle wall climb off with C."
  495. end
  496. elseif key == "z" and rope == nil and wing1 == nil and wing2 == nil then
  497. local plr = game.Players.LocalPlayer
  498. if chr:FindFirstChild('HumanoidRootPart') and chr.HumanoidRootPart:FindFirstChild('RootJoint') then
  499. chr.HumanoidRootPart.RootJoint.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(180),math.rad(0),math.rad(180))
  500. end
  501. if chr.Torso:FindFirstChild('Right Shoulder') then
  502. chr.Torso["Right Shoulder"].C0 = CFrame.new(1.5,0,0)*CFrame.Angles(math.rad(-90),math.rad(0),math.rad(90))
  503. end
  504. if chr.Torso:FindFirstChild('Left Shoulder') then
  505. chr.Torso["Left Shoulder"].C0 = CFrame.new(-1.5,0,0)*CFrame.Angles(math.rad(-90),math.rad(0),math.rad(-90))
  506. end
  507. if chr:FindFirstChildOfClass('Humanoid'):FindFirstChild('Animator') and chr:FindFirstChild('Animate') then
  508. animator = chr:FindFirstChildOfClass('Humanoid'):FindFirstChild('Animator')
  509. animator:remove()
  510. chr.Animate.Disabled = true
  511. end
  512. if chr:FindFirstChildOfClass('Humanoid') then
  513. chr:FindFirstChildOfClass('Humanoid').HipHeight = -3
  514. chr:FindFirstChildOfClass('Humanoid').WalkSpeed = 40
  515. end
  516. if chr:FindFirstChild('Torso') then
  517. wing1 = Instance.new('WedgePart',chr)
  518. wing1.Size = Vector3.new(0.2,1.5,3)
  519. wing1.Transparency = 1
  520. local dec = Instance.new('Decal',wing1)
  521. dec.Texture = 'http://www.roblox.com/asset/?id=148633485'
  522. dec.Face = Enum.NormalId.Right
  523. local dec2 = Instance.new('Decal',wing1)
  524. dec2.Texture = 'http://www.roblox.com/asset/?id=148633485'
  525. dec2.Face = Enum.NormalId.Left
  526. local dec3 = Instance.new('Decal',wing1)
  527. dec3.Texture = 'http://www.roblox.com/asset/?id=148633485'
  528. dec3.Face = Enum.NormalId.Front
  529. local weld = Instance.new('Weld',wing1)
  530. weld.Part0 = wing1
  531. weld.Part1 = chr.Torso
  532. weld.C0 = CFrame.new(0,-1.5,1)*CFrame.Angles(math.rad(0),math.rad(90),math.rad(90))
  533. wing2 = Instance.new('WedgePart',chr)
  534. wing2.Size = Vector3.new(0.2,1.5,3)
  535. wing2.Transparency = 1
  536. local dec4 = Instance.new('Decal',wing2)
  537. dec4.Texture = 'http://www.roblox.com/asset/?id=148633485'
  538. dec4.Face = Enum.NormalId.Right
  539. local dec5 = Instance.new('Decal',wing2)
  540. dec5.Texture = 'http://www.roblox.com/asset/?id=148633485'
  541. dec5.Face = Enum.NormalId.Left
  542. local dec6 = Instance.new('Decal',wing2)
  543. dec6.Texture = 'http://www.roblox.com/asset/?id=148633485'
  544. dec6.Face = Enum.NormalId.Front
  545. local weld2 = Instance.new('Weld',wing2)
  546. weld2.Part0 = wing2
  547. weld2.Part1 = chr.Torso
  548. weld2.C0 = CFrame.new(0,-1.5,1)*CFrame.Angles(math.rad(180),math.rad(270),math.rad(90))
  549. for i,v in pairs(chr:GetChildren()) do
  550. if v:IsA('Part') then
  551. v.Velocity = Vector3.new(0,0,0)
  552. local BodyForce = Instance.new('BodyForce',v)
  553. local Part = v
  554. BodyForce.Name = "stop destroying me"
  555. BodyForce.Force = Vector3.new(0,Part.Size.X * Part.Size.Y * Part.Size.Z * (game.Workspace.Gravity-45),0)
  556. end
  557. end
  558. end
  559. elseif key == string.char(8) then
  560. if game.CoreGui:FindFirstChild('hekking spiderman') then
  561. game.CoreGui:FindFirstChild('hekking spiderman'):Destroy()
  562. end
  563. elseif key == string.char(47) or key == string.char(48) then
  564. if chr:FindFirstChildOfClass('Humanoid') then
  565. chr:FindFirstChildOfClass('Humanoid').WalkSpeed = 70
  566. end
  567. end
  568. end)
  569.  
  570. mouse.KeyUp:connect(function(key)
  571. if key == "q" and rope ~= nil then
  572. working = false
  573. elseif key == "e" and rope ~= nil then
  574. working2 = false
  575. elseif key == "w" and rope ~= nil then
  576. forward = false
  577. elseif key == "s" and rope ~= nil then
  578. backward = false
  579. elseif key == "a" and rope ~= nil then
  580. left = false
  581. elseif key == "d" and rope ~= nil then
  582. right = false
  583. elseif key == "z" and wing1 ~= nil and wing2 ~= nil then
  584. if animator and chr:FindFirstChildOfClass('Humanoid') and chr:FindFirstChild('Animate') then
  585. animator.Parent = chr:FindFirstChildOfClass('Humanoid')
  586. chr.Animate.Disabled = false
  587. end
  588. if chr.Torso:FindFirstChild('Right Shoulder') then
  589. chr.Torso["Right Shoulder"].C0 = CFrame.new(1,0.5,0)*CFrame.Angles(0,math.pi/2,0)
  590. end
  591. if chr.Torso:FindFirstChild('Left Shoulder') then
  592. chr.Torso["Left Shoulder"].C0 = CFrame.new(-1,0.5,0)*CFrame.Angles(0,-math.pi/2,0)
  593. end
  594. if chr:FindFirstChild('HumanoidRootPart') and chr.HumanoidRootPart:FindFirstChild('RootJoint') then
  595. chr.HumanoidRootPart.RootJoint.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(-270),math.rad(180),math.rad(0))
  596. end
  597. if chr:FindFirstChildOfClass('Humanoid') then
  598. chr:FindFirstChildOfClass('Humanoid').HipHeight = 0
  599. chr:FindFirstChildOfClass('Humanoid').WalkSpeed = 16
  600. end
  601. if wing1 then
  602. wing1:Destroy()
  603. wing1 = nil
  604. end
  605. if wing2 then
  606. wing2:Destroy()
  607. wing2 = nil
  608. end
  609. for i,v in pairs(plr.Character:GetChildren()) do
  610. if v:IsA('Part') then
  611. for a,c in pairs(v:GetChildren()) do
  612. if c:IsA('BodyForce') then
  613. c:Destroy()
  614. end
  615. end
  616. end
  617. end
  618. elseif key == string.char(47) or key == string.char(48) then
  619. if chr:FindFirstChildOfClass('Humanoid') then
  620. chr:FindFirstChildOfClass('Humanoid').WalkSpeed = 16
  621. end
  622. end
  623. end)
  624.  
  625. plr.CharacterAppearanceLoaded:connect(function()
  626. wait()
  627. for i,v in pairs(hats) do
  628. table.remove(hats,i)
  629. end
  630. if plr.Character:FindFirstChild('Torso') then
  631. local chr = plr.Character
  632. chr.Torso.Touched:connect(function(hit)
  633. if hit:IsA('TrussPart') == false and rope == nil and crawling and hit.CanCollide then
  634. local c = Instance.new('TrussPart',workspace.CurrentCamera)
  635. c.Anchored = true
  636. c.Transparency = 1
  637. c.CFrame = CFrame.new(chr.Torso.Position + (chr.Torso.CFrame.lookVector * 1), chr.Torso.Position + (chr.Torso.CFrame.lookVector * 12))
  638. game:GetService('Debris'):AddItem(c,0.5)
  639. end
  640. end)
  641. end
  642. end)
  643.  
  644. if plr.Character:FindFirstChild('Torso') then
  645. local chr = plr.Character
  646. chr.Torso.Touched:connect(function(hit)
  647. if hit:IsA('TrussPart') == false and rope == nil and crawling and hit.CanCollide then
  648. local c = Instance.new('TrussPart',workspace.CurrentCamera)
  649. c.Anchored = true
  650. c.Transparency = 1
  651. c.CFrame = CFrame.new(chr.Torso.Position + (chr.Torso.CFrame.lookVector * 1), chr.Torso.Position + (chr.Torso.CFrame.lookVector * 12))
  652. game:GetService('Debris'):AddItem(c,0.5)
  653. end
  654. end)
  655. end
  656.  
  657. game:GetService('RunService').Stepped:connect(function()
  658. chr = plr.Character
  659. local cam = game.Workspace.CurrentCamera
  660. for i,v in pairs(plr.PlayerGui:GetChildren()) do
  661. if v.Name == "SPOOOODA" then
  662. v:Destroy()
  663. end
  664. end
  665. if chr:FindFirstChild('HumanoidRootPart') and (cam.CoordinateFrame.p - chr.HumanoidRootPart.Position).magnitude < 2 then
  666. local haay = Instance.new('ScreenGui',plr.PlayerGui)
  667. haay.Name = "SPOOOODA"
  668. local img = Instance.new('ImageLabel',haay)
  669. img.Image = 'rbxassetid://744896574'
  670. img.BackgroundTransparency = 1
  671. img.Size = UDim2.new(1,0,1,0)
  672. end
  673. if plr.Character:FindFirstChild('Torso') then
  674. for a,c in pairs(plr.Character:GetChildren()) do
  675. for i,v in pairs(c:GetChildren()) do
  676. if v:IsA('BodyForce') and v.Name ~= "stop destroying me" then
  677. v:Destroy()
  678. end
  679. end
  680. end
  681. end
  682. if rope ~= nil and plr.Character and plr.Character:FindFirstChildOfClass('Humanoid') then
  683. plr.Character:FindFirstChildOfClass('Humanoid').PlatformStand = true
  684. end
  685. if working then
  686. rope.Length = rope.Length-2
  687. if rope ~= nil and plr.Character and plr.Character:FindFirstChild('Torso') then
  688. for i,v in pairs(plr.Character:GetChildren()) do
  689. if v:IsA('Part') then
  690. local BodyForce = Instance.new('BodyForce',v)
  691. local Part = v
  692. BodyForce.Force = Vector3.new(0,Part.Size.X * Part.Size.Y * Part.Size.Z * 196.2,0)
  693. end
  694. end
  695. end
  696. end
  697. if working2 then
  698. rope.Length = rope.Length+1
  699. end
  700. if forward and plr.Character and plr.Character:FindFirstChild('Torso') then
  701. local force = Instance.new('BodyForce',plr.Character.Torso)
  702. force.Force = Vector3.new(cam.CFrame.lookVector.x*1000,0,cam.CFrame.lookVector.z*1000)
  703. end
  704. if right and plr.Character and plr.Character:FindFirstChild('Torso') then
  705. local force = Instance.new('BodyForce',plr.Character.Torso)
  706. force.Force = Vector3.new(cam.CFrame.rightVector.x*1000,0,cam.CFrame.rightVector.z*1000)
  707. end
  708. if left and plr.Character and plr.Character:FindFirstChild('Torso') then
  709. local force = Instance.new('BodyForce',plr.Character.Torso)
  710. force.Force = Vector3.new(-cam.CFrame.rightVector.x*1000,0,-cam.CFrame.rightVector.z*1000)
  711. end
  712. if backward and plr.Character and plr.Character:FindFirstChild('Torso') then
  713. local force = Instance.new('BodyForce',plr.Character.Torso)
  714. force.Force = Vector3.new(-cam.CFrame.lookVector.x*1000,0,-cam.CFrame.lookVector.z*1000)
  715. end
  716. for i,v in pairs(chr:GetChildren()) do
  717. if v:IsA('Part') and v.Anchored == true then
  718. v.Anchored = false
  719. end
  720. end
  721. if active then
  722. for i,v in pairs(plr.Character:GetChildren()) do
  723. if v:IsA('Accessory') then
  724. if v:FindFirstChildOfClass('Part') then
  725. if v:FindFirstChildOfClass('Part'):FindFirstChildOfClass('SpecialMesh') then
  726. if v:FindFirstChildOfClass('Part'):FindFirstChildOfClass('SpecialMesh').TextureId ~= "rbxassetid://454487924" then
  727. table.insert(hats,v:Clone())
  728. end
  729. end
  730. end
  731. v:Destroy()
  732. elseif v:IsA('Shirt') then
  733. if v.ShirtTemplate ~= 'rbxassetid://638689615' then
  734. table.insert(hats,v:Clone())
  735. end
  736. v:Destroy()
  737. elseif v:IsA('Pants') then
  738. if v.PantsTemplate ~= 'rbxassetid://638690509' then
  739. table.insert(hats,v:Clone())
  740. end
  741. v:Destroy()
  742. end
  743. end
  744. local shirt = Instance.new('Shirt',plr.Character)
  745. shirt.ShirtTemplate = 'rbxassetid://638689615'
  746. local pants = Instance.new('Pants',plr.Character)
  747. pants.PantsTemplate = 'rbxassetid://638690509'
  748. local ac = Instance.new('Accessory',plr.Character)
  749. local pa = Instance.new('Part',ac)
  750. pa.Size = Vector3.new(1,1,1)
  751. local me = Instance.new('SpecialMesh',pa)
  752. me.MeshType = Enum.MeshType.FileMesh
  753. me.MeshId = 'rbxassetid://151354047'
  754. me.TextureId = 'rbxassetid://454487924'
  755. me.Scale = Vector3.new(1.26,1.26,1.26)
  756. local weld = Instance.new('Weld',pa)
  757. weld.Part0 = pa
  758. weld.Part1 = plr.Character.Head
  759. else
  760. for i,v in pairs(plr.Character:GetChildren()) do
  761. if v:IsA('Accessory') or v:IsA('Shirt') or v:IsA('Pants') then
  762. v:Destroy()
  763. end
  764. end
  765. for i,v in pairs(hats) do
  766. v:Clone().Parent = chr
  767. end
  768. end
  769. end)
  770.  
  771. --3DG
  772. --three dimensional grapples
  773. function clerp(c1,c2,al)
  774. local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
  775. local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
  776. for i,v in pairs(com1) do
  777. com1[i] = v+(com2[i]-v)*al
  778. end
  779. return CFrame.new(com1[1],com1[2],com1[3]) * CFrame.Angles(select(4,unpack(com1)))
  780. end
  781.  
  782. plr = game:service'Players'.LocalPlayer
  783. plrgui = plr.PlayerGui
  784. char = plr.Character
  785. mouse = plr:GetMouse()
  786. humanoid = char:findFirstChild("Humanoid")
  787. torso = char:findFirstChild("Torso")
  788. head = char.Head
  789. ra = char:findFirstChild("Right Arm")
  790. la = char:findFirstChild("Left Arm")
  791. rl = char:findFirstChild("Right Leg")
  792. ll = char:findFirstChild("Left Leg")
  793. rs = torso:findFirstChild("Right Shoulder")
  794. ls = torso:findFirstChild("Left Shoulder")
  795. rh = torso:findFirstChild("Right Hip")
  796. lh = torso:findFirstChild("Left Hip")
  797. neck = torso:findFirstChild("Neck")
  798. rj = char:findFirstChild("HumanoidRootPart"):findFirstChild("RootJoint")
  799. rootpart = char:findFirstChild("HumanoidRootPart")
  800. camera = workspace.CurrentCamera
  801. anim = char:findFirstChild("Animate")
  802. if anim then
  803. anim:Destroy()
  804. end
  805.  
  806.  
  807. game:service'Debris':AddItem(lal, 8)
  808.  
  809. local rm = Instance.new("Weld", torso)
  810. rm.C0 = CFrame.new(1.5, 0.5, 0)
  811. rm.C1 = CFrame.new(0, 0.5, 0)
  812. rm.Part0 = torso
  813. rm.Part1 = ra
  814. rm.Name = 'Right Shoulder'
  815.  
  816. local lm = Instance.new("Weld", torso)
  817. lm.C0 = CFrame.new(-1.5, 0.5, 0)
  818. lm.C1 = CFrame.new(0, 0.5, 0)
  819. lm.Part0 = torso
  820. lm.Part1 = la
  821. lm.Name = 'Left Shoulder'
  822.  
  823. local rlegm = Instance.new("Weld", torso)
  824. rlegm.C0 = CFrame.new(0.5, -1, 0)
  825. rlegm.C1 = CFrame.new(0, 1, 0)
  826. rlegm.Part0 = torso
  827. rlegm.Part1 = rl
  828.  
  829. local llegm = Instance.new("Weld", torso)
  830. llegm.C0 = CFrame.new(-0.5, -1, 0)
  831. llegm.C1 = CFrame.new(0, 1, 0)
  832. llegm.Part0 = torso
  833. llegm.Part1 = ll
  834.  
  835. rj.C0 = CFrame.new()
  836. rj.C1 = CFrame.new()
  837.  
  838. neck.C0 = CFrame.new(0, 1, 0)
  839. neck.C1 = CFrame.new(0, -0.5, 0)
  840.  
  841.  
  842. local speed = 0.3
  843. local angle = 0
  844. local anglespeed = 1
  845. rsc0 = rm.C0
  846. lsc0 = lm.C0
  847. llc0 = llegm.C0
  848. rlc0 = rlegm.C0
  849. rootc0 = rj.C0
  850. neckc0 = neck.C0
  851.  
  852. model = Instance.new('Model', char)
  853. model.Name = '3DG'
  854. function Weld(part0,part1,c1,c0)
  855. local w = Instance.new('Weld', model)
  856. w.Part0 = part0
  857. w.Part1 = part1
  858. w.C0 = c0 or CFrame.new()
  859. w.C1 = c1 or CFrame.new()
  860. end
  861.  
  862. local BasePart = Instance.new('Part')
  863. BasePart.FormFactor = 'Custom'
  864. BasePart.Material = 'Neon'
  865. BasePart.CanCollide = false
  866. BasePart.Locked = true
  867. BasePart.TopSurface = 10
  868. BasePart.BottomSurface = 10
  869. BasePart.LeftSurface = 10
  870. BasePart.RightSurface = 10
  871. BasePart.FrontSurface = 10
  872. BasePart.BackSurface = 10
  873. BasePart:breakJoints()
  874.  
  875.  
  876. for i = 1,2 do
  877. local strap = BasePart:clone()
  878. strap.Size = Vector3.new(1.025,.2,1.025)
  879. strap.Parent = model
  880. strap.BrickColor = BrickColor.new()
  881. strap:BreakJoints()
  882. Weld(strap, la, CFrame.new(0, .1 - i/3,0))
  883. end
  884.  
  885. for i = 1,2 do
  886. local strap = BasePart:clone()
  887. strap.Size = Vector3.new(1.025,.2,1.025)
  888. strap.Parent = model
  889. strap.BrickColor = BrickColor.new()
  890. strap:BreakJoints()
  891. Weld(strap, ra, CFrame.new(0, .1 - i/3,0))
  892. end
  893.  
  894. local ropeStart = BasePart:clone()
  895. ropeStart.Size = Vector3.new(0,0,0)
  896. ropeStart.Parent = model
  897. ropeStart.BrickColor = BrickColor.new()
  898. ropeStart:BreakJoints()
  899. Weld(ropeStart, ra, CFrame.new(-.45, -.5, 0))
  900. local ropeStart2 = BasePart:clone()
  901. ropeStart2.Size = Vector3.new(0,0,0)
  902. ropeStart2.Parent = model
  903. ropeStart2.BrickColor = BrickColor.new()
  904. ropeStart2:BreakJoints()
  905. Weld(ropeStart2, la, CFrame.new(.45, -.5, 0))
  906.  
  907. local ropeCont = BasePart:clone()
  908. ropeCont.Size = Vector3.new(.8,.2,.8)
  909. ropeCont.Parent = model
  910. ropeCont.BrickColor = BrickColor.new(199)
  911. ropeCont:BreakJoints()
  912. Instance.new('CylinderMesh', ropeCont)
  913. Weld(ropeCont, la, CFrame.new(0,0,0), CFrame.Angles(math.pi/2, math.pi/2, 0))
  914. local ropeCont2 = BasePart:clone()
  915. ropeCont2.Size = Vector3.new(.8,.2,.8)
  916. ropeCont2.Parent = model
  917. ropeCont2.BrickColor = BrickColor.new(199)
  918. ropeCont2:BreakJoints()
  919. Instance.new('CylinderMesh', ropeCont2)
  920. Weld(ropeCont2, ra, CFrame.new(0,0,0), CFrame.Angles(math.pi/2, math.pi/2, 0))
  921.  
  922. local GasTank = BasePart:clone()
  923. GasTank.Size = Vector3.new(0,0,0)
  924. GasTank.Parent = model
  925. GasTank.BrickColor = BrickColor.new(194)
  926. GasTank:BreakJoints()
  927. Instance.new('SpecialMesh', GasTank)
  928. Weld(GasTank, ra, CFrame.new(0, -.25, .5))
  929. local GasTank2 = BasePart:clone()
  930. GasTank2.Size = Vector3.new(0,0,0)
  931. GasTank2.Parent = model
  932. GasTank2.BrickColor = BrickColor.new(194)
  933. GasTank2:BreakJoints()
  934. Instance.new('SpecialMesh', GasTank2)
  935. Weld(GasTank2, la, CFrame.new(0, -.25, .5))
  936.  
  937. local pa = BasePart:clone()
  938. pa.BrickColor = BrickColor.new()
  939. pa.Anchored = true
  940. pa.Size = Vector3.new(.5,1,.5)
  941. local special = Instance.new('SpecialMesh', pa)
  942. special.MeshId = "rbxassetid://1033714"
  943. special.Scale = Vector3.new(.25,2,.25)
  944. local ropePA = BasePart:clone()
  945. ropePA.Parent = pa
  946. ropePA.Anchored = true
  947. ropePA.BrickColor = BrickColor.new'White'
  948. Instance.new('CylinderMesh', ropePA).Scale = Vector3.new(.25,1,.25)
  949.  
  950. local pa2 = BasePart:clone()
  951. pa2.BrickColor = BrickColor.new()
  952. pa2.Anchored = true
  953. pa2.Size = Vector3.new(.5,1,.5)
  954. local special = Instance.new('SpecialMesh', pa2)
  955. special.MeshId = "rbxassetid://1033714"
  956. special.Scale = Vector3.new(.25,2,.25)
  957. local ropePA2 = BasePart:clone()
  958. ropePA2.Parent = pa2
  959. ropePA2.Anchored = true
  960. ropePA2.BrickColor = BrickColor.new'White'
  961. Instance.new('CylinderMesh', ropePA2).Scale = Vector3.new(.25,1,.25)
  962.  
  963. local pa3 = BasePart:clone()
  964. pa3.Transparency = 1
  965. pa3.Anchored = true
  966. pa3.Size = Vector3.new(2,2,2)
  967.  
  968. local torso3 = Instance.new('Part', char)
  969. torso3.Name = 'FakeTorsoForStuff'
  970. torso3.Size = torso.Size
  971. torso3.Transparency = 1
  972. torso3:breakJoints()
  973. Weld(torso3, torso)
  974.  
  975. Instance.new('PointLight', torso)
  976.  
  977. local jumpmode
  978.  
  979. local SGui = Instance.new('ScreenGui', plr.PlayerGui)
  980. local JumpButton = Instance.new('TextButton', SGui)
  981. JumpButton.BackgroundColor = BrickColor.new('Dark stone grey')
  982. JumpButton.BorderSizePixel = 4
  983. JumpButton.TextColor3 = Color3.new(1,1,1)
  984. JumpButton.BorderColor3 = Color3.new()
  985. JumpButton.TextStrokeTransparency = .5
  986. JumpButton.FontSize = 'Size12'
  987. JumpButton.Text = 'Thrust up when grappled'
  988. JumpButton.Size = UDim2.new(0, 250, 0, 50)
  989. JumpButton.Position = UDim2.new(1, -250, 1, -50)
  990. local OnOff = Instance.new('Frame', JumpButton)
  991. OnOff.BackgroundColor3 = Color3.new()
  992. OnOff.BorderSizePixel = 0
  993. OnOff.Size = UDim2.new(.8, 0, 0, 5)
  994. OnOff.Position = UDim2.new(.1, 0, 1, -10)
  995. JumpButton.MouseButton1Down:connect(function()
  996. jumpmode = not jumpmode
  997. if jumpmode then
  998. OnOff.BackgroundColor3 = Color3.new(0,1,0)
  999. else
  1000. OnOff.BackgroundColor3 = Color3.new()
  1001. end
  1002. end)
  1003.  
  1004.  
  1005.  
  1006. local bodygyro = Instance.new('BodyGyro', torso)
  1007. bodygyro.maxTorque = Vector3.new(14e16,14e16,14e16)
  1008. bodygyro.P = 10000
  1009.  
  1010. ro=Instance.new("RocketPropulsion",rootpart)
  1011. ro.Name = 'RockatPropoolsun'
  1012. ro.MaxSpeed=200
  1013. ro.MaxThrust=8000
  1014. ro.TurnP = 0
  1015. ro.MaxTorque=Vector3.new(14e16,14e16,14e16)
  1016.  
  1017. ro2=Instance.new("RocketPropulsion",torso)
  1018. ro2.Name = 'RockatPropoolsun2'
  1019. ro2.MaxSpeed=200
  1020. ro2.MaxThrust=8000
  1021. ro2.TurnP = 0
  1022. ro2.MaxTorque=Vector3.new(14e16,14e16,14e16)
  1023. local run
  1024. mouse.KeyDown:connect(function(k)
  1025. if k:byte() == 48 then
  1026. run = not run
  1027. if run then
  1028. humanoid.WalkSpeed = 70
  1029. else
  1030. humanoid.WalkSpeed = 16
  1031. end
  1032. end
  1033. if k:byte() == 32 then
  1034. if Grapple1 or Grapple2 then
  1035. wait()
  1036. humanoid.PlatformStand = true
  1037. rlegm.C0 = rlc0 * CFrame.new(0, .5, -.65) * CFrame.Angles(-math.pi/8, 0, .1)
  1038. llegm.C0 = llc0 * CFrame.new(0, .5, -.65) * CFrame.Angles(-math.pi/8, 0, -.1)
  1039. if pa3.Parent ~= nil then
  1040. ro3:Fire()
  1041. end
  1042. if Grapple1 then
  1043. ro:Fire()
  1044. end
  1045. if Grapple2 then
  1046. ro2:Fire()
  1047. end
  1048. end
  1049. end
  1050. if k=="q" then
  1051. local sound = Instance.new('Sound', head)
  1052. sound.SoundId = "rbxassetid://151733071"
  1053. sound.Pitch = 3+math.random()/3
  1054. sound.Volume = .8
  1055. sound:play()
  1056. game:service'Debris':AddItem(sound,4)
  1057. lm.Parent = torso
  1058. pa.CFrame = la.CFrame
  1059. local grapplepos = pa.Position
  1060. local grapplevelocity = (mouse.Hit.p - grapplepos).unit*50
  1061. local lastgrapplepos = pa.Position
  1062. while wait() do
  1063. lastgrapplepos = grapplepos
  1064. grapplepos = grapplepos + grapplevelocity
  1065. local RayCast = Ray.new(lastgrapplepos, (grapplepos - lastgrapplepos))
  1066. local hit, hitpos = workspace:FindPartOnRay(RayCast, char)
  1067. if (torso.Position - pa.Position).magnitude > 900 then
  1068. pa.Parent = nil
  1069. break
  1070. end
  1071. pa.Anchored = true
  1072. pa.CFrame = CFrame.new(grapplepos, grapplepos+grapplevelocity) * CFrame.Angles(math.pi/2, 0, 0)
  1073. pa.Parent = char
  1074. if hit then
  1075. local rotX,rotY,rotZ = pa.CFrame:toEulerAnglesXYZ()
  1076. local sound = Instance.new('Sound', head)
  1077. sound.SoundId = "rbxassetid://151733071"
  1078. sound.Pitch = 1.2+math.random()/3
  1079. sound.Volume = .25
  1080. sound:play()
  1081. game:service'Debris':AddItem(sound,4)
  1082. pa.Parent = char
  1083. pa.CFrame=CFrame.new(hitpos.x, hitpos.y, hitpos.z)*CFrame.Angles(rotX,rotY,rotZ)*CFrame.Angles(math.pi,0,0)
  1084. ro.Target=pa
  1085. lm.Parent = torso
  1086. local ray = Ray.new(rootpart.Position, Vector3.new(0, -6, 0))
  1087. local hitz, enz = workspace:FindPartOnRay(ray, char)
  1088. local hum = hit and hit.Parent and hit.Parent:findFirstChild'Humanoid'
  1089. if hum then
  1090. hum:TakeDamage(math.random(7,11))
  1091. end
  1092. local hum = hit and hit.Parent and hit.Parent.Parent and hit.Parent.Parent:findFirstChild'Humanoid'
  1093. if hum then
  1094. hum:TakeDamage(math.random(7,11))
  1095. end
  1096. if pa.Parent ~= nil and humanoid.PlatformStand or not (hitz and hitz.CanCollide) then
  1097. ro:Fire()
  1098. if jumpmode then
  1099. humanoid.Jump = true
  1100. end
  1101. end
  1102. Gweld = Instance.new("Weld", char)
  1103. Gweld.C0 = hit.CFrame:toObjectSpace(pa.CFrame)
  1104. Gweld.Part0 = hit
  1105. Gweld.Part1 = pa
  1106. pa.Anchored = false
  1107. Grapple1Hit = hit
  1108. Grapple1 = true
  1109. break
  1110. end
  1111. pa.Anchored = true
  1112. pa.CFrame = CFrame.new(grapplepos, grapplepos+grapplevelocity) * CFrame.Angles(math.pi/2, 0, 0)
  1113. end
  1114. end
  1115.  
  1116. if k=="e" then
  1117. local sound = Instance.new('Sound', head)
  1118. sound.SoundId = "rbxassetid://151733071"
  1119. sound.Pitch = 3+math.random()/3
  1120. sound.Volume = .8
  1121. sound:play()
  1122. game:service'Debris':AddItem(sound,4)
  1123. pa2.CFrame = ra.CFrame
  1124. rm.Parent = torso
  1125. local grapplepos = pa2.Position
  1126. local grapplevelocity = (mouse.Hit.p - grapplepos).unit*50
  1127. local lastgrapplepos = pa2.Position
  1128. while wait() do
  1129. lastgrapplepos = grapplepos
  1130. grapplepos = grapplepos + grapplevelocity
  1131. local RayCast = Ray.new(lastgrapplepos, (grapplepos - lastgrapplepos))
  1132. local hit, hitpos = workspace:FindPartOnRay(RayCast, char)
  1133. if (torso.Position - pa2.Position).magnitude > 900 then
  1134. pa2.Parent = nil
  1135. break
  1136. end
  1137. pa2.Anchored = true
  1138. pa2.CFrame = CFrame.new(grapplepos, grapplepos+grapplevelocity) * CFrame.Angles(math.pi/2, 0, 0)
  1139. pa2.Parent = char
  1140. if hit then
  1141. local rotX,rotY,rotZ = pa2.CFrame:toEulerAnglesXYZ()
  1142. local sound = Instance.new('Sound', head)
  1143. sound.SoundId = "rbxassetid://151733071"
  1144. sound.Pitch = 1.2+math.random()/3
  1145. sound.Volume = .25
  1146. sound:play()
  1147. game:service'Debris':AddItem(sound,4)
  1148. pa2.Parent = char
  1149. pa2.CFrame=CFrame.new(hitpos.x, hitpos.y, hitpos.z)*CFrame.Angles(rotX,rotY,rotZ)*CFrame.Angles(math.pi,0,0)
  1150. ro2.Target=pa2
  1151. rm.Parent = torso
  1152. local ray = Ray.new(rootpart.Position, Vector3.new(0, -6, 0))
  1153. local hitz, enz = workspace:FindPartOnRay(ray, char)
  1154. local hum = hit and hit.Parent and hit.Parent:findFirstChild'Humanoid'
  1155. if hum then
  1156. hum:TakeDamage(math.random(7,11))
  1157. end
  1158. local hum = hit and hit.Parent and hit.Parent.Parent and hit.Parent.Parent:findFirstChild'Humanoid'
  1159. if hum then
  1160. hum:TakeDamage(math.random(7,11))
  1161. end
  1162. if pa2.Parent ~= nil and humanoid.PlatformStand or not (hitz and hitz.CanCollide) then
  1163. if jumpmode then
  1164. humanoid.Jump = true
  1165. end
  1166. ro2:Fire()
  1167. end
  1168. Gweld2 = Instance.new("Weld", char)
  1169. Gweld2.C0 = hit.CFrame:toObjectSpace(pa2.CFrame)
  1170. Gweld2.Part0 = hit
  1171. Gweld2.Part1 = pa2
  1172. pa2.Anchored = false
  1173. Grapple2Hit = hit
  1174. Grapple2 = true
  1175. break
  1176. end
  1177. pa2.Anchored = true
  1178. pa2.CFrame = CFrame.new(grapplepos, grapplepos+grapplevelocity) * CFrame.Angles(math.pi/2, 0, 0)
  1179. end
  1180. end
  1181. end)
  1182.  
  1183. mouse.KeyUp:connect(function(k)
  1184. if k=="q" then
  1185. pcall(function() Gweld:remove() end)
  1186. game:service'RunService'.RenderStepped:wait()
  1187. pcall(function() pa.Parent = nil Grapple1 = false end)
  1188. pcall(function() ro:Abort() end)
  1189. game:service'RunService'.RenderStepped:wait()
  1190. pcall(function() ro2.Target=pa2 if Grapple2 and humanoid.PlatformStand or Grapple2 and not hitz then ro2:Fire() end end)
  1191. elseif k=="e" then
  1192. pcall(function() Gweld2:remove() end)
  1193. game:service'RunService'.RenderStepped:wait()
  1194. pcall(function() pa2.Parent = nil Grapple2 = false end)
  1195. pcall(function() ro2:Abort() end)
  1196. game:service'RunService'.RenderStepped:wait()
  1197. pcall(function() ro.Target=pa if Grapple1 and humanoid.PlatformStand or Grapple1 and not hitz then ro:Fire() end end)
  1198. end
  1199. end)
  1200.  
  1201.  
  1202. local MidPointUsed = false
  1203. local TorsoSmoke = Instance.new('Smoke', torso)
  1204.  
  1205.  
  1206. game:service'RunService'.RenderStepped:connect(function()
  1207. angle = (angle % 100) + anglespeed/10
  1208. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  1209. local rscf = rsc0
  1210. local lscf = lsc0
  1211. local rlcf = rlc0
  1212. local llcf = llc0
  1213. local rjcf = rootc0
  1214. local ncf = neckc0
  1215. for i,object in pairs(char:children()) do
  1216. if object:IsA("Tool") then
  1217. tool = true
  1218. if not debounce then
  1219. for x,value in pairs(object:children()) do
  1220. if value:IsA("StringValue") and value.Name == "toolanim" and value.Value == "Slash" then
  1221. debounce = true
  1222. coroutine.wrap(function()
  1223. slashing = true
  1224. wait(.25)
  1225. slashing = false
  1226. debounce = false
  1227. end)()
  1228. value:Destroy()
  1229. end
  1230. end
  1231. end
  1232. elseif not object:IsA'Tool' then
  1233. tool = false
  1234. end
  1235. end
  1236. if not humanoid.PlatformStand then
  1237. if humanoid.Sit == true then
  1238. speed = 0.2
  1239. anglespeed = 1/4
  1240. ncf = neckc0 * CFrame.Angles(0, 0, 0)
  1241. rjcf = rootc0
  1242. rscf = rsc0 * CFrame.Angles(math.pi/2+math.sin(-angle)*0.05, 0, 0)
  1243. lscf = lsc0 * CFrame.Angles(math.pi/2+math.sin(-angle)*0.05, 0, 0)
  1244. rlcf = rlc0 * CFrame.Angles(math.pi/2+-math.rad(.2), 0, math.rad(.2))
  1245. llcf = llc0 * CFrame.Angles(math.pi/2+math.rad(.2), 0, -math.rad(.2))
  1246. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude <= 2 then
  1247. anglespeed = 1/4
  1248. speed = 0.2
  1249. ncf = neckc0 * CFrame.Angles(math.sin(angle)*0.075, 0, 0)
  1250. rjcf = rootc0
  1251. rscf = rsc0 * CFrame.new(0, math.sin(angle)*0.05, 0) * CFrame.Angles(math.sin(-angle)*0.05, 0, 0)
  1252. lscf = lsc0 * CFrame.new(0, math.sin(angle)*0.05, 0) * CFrame.Angles(math.sin(-angle)*0.05, 0, 0)
  1253. rlcf = rlc0 * CFrame.Angles(-math.rad(.2), 0, math.rad(.2))
  1254. llcf = llc0 * CFrame.Angles(math.rad(.2), 0, -math.rad(.2))
  1255. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude <= 20 then
  1256. anglespeed = 1.7
  1257. speed = 0.25
  1258. anglespeed = 2.2
  1259. speed = 0.25
  1260. ncf = neckc0 * CFrame.Angles(0, 0, 0)
  1261. rjcf = rootc0 * CFrame.new(0, math.abs(math.sin(angle))*.055, 0) * CFrame.Angles(-math.rad(1), 0, 0)
  1262. rscf = rsc0 * CFrame.Angles(math.sin(angle)*.5, 0, -math.rad(1))
  1263. lscf = lsc0 * CFrame.Angles(math.sin(-angle)*.5, 0, math.rad(1))
  1264. rlcf = rlc0 * CFrame.new(0, .075 + -math.cos(-angle)*.075, math.sin(angle)*0.1) * CFrame.Angles(math.sin(-angle)*.45, 0, math.rad(.5))
  1265. llcf = llc0 * CFrame.new(0, .075 - -math.cos(angle)*.075, -math.sin(angle)*0.1) * CFrame.Angles(math.sin(angle)*.45, 0, -math.rad(.5))
  1266. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 20 then
  1267. local RotVelocityZ = torso.RotVelocity.Y
  1268. if RotVelocityZ >= 15 then
  1269. RotVelocityZ = 15
  1270. elseif RotVelocityZ <= -15 then
  1271. RotVelocityZ = -15
  1272. end
  1273. speed = 0.25
  1274. anglespeed = 2.7
  1275. ncf = neckc0 * CFrame.Angles(0, 0, -math.sin(angle)*.045)
  1276. rscf = rsc0 * CFrame.new(0, 0, -math.sin(angle)*0.125) * CFrame.Angles(math.pi/14+math.sin(angle)*1.5, 0, -math.sin(math.abs(angle))*0.3)
  1277. lscf = lsc0 * CFrame.new(0, 0, math.sin(angle)*0.125) * CFrame.Angles(math.pi/14+math.sin(-angle)*1.5, 0, -math.sin(math.abs(angle))*0.3)
  1278. rjcf = rootc0 * CFrame.new(0, math.abs(math.sin(angle))*.175 - .2, 0) * CFrame.Angles(math.abs(math.sin(angle))*0.055 + -math.pi/18, 0, math.rad(RotVelocityZ) + math.sin(angle)*.045)
  1279. rlcf = rlc0 * CFrame.new(0, .3 + -math.cos(-angle)*.3, -.2+math.sin(angle)*0.25) * CFrame.Angles(-math.pi/18+math.sin(-angle)*1.3, 0, math.rad(.5))
  1280. llcf = llc0 * CFrame.new(0, .3 - -math.cos(angle)*.3, -.05-math.sin(angle)*0.25) * CFrame.Angles(-math.pi/18+math.sin(angle)*1.3, 0, -math.rad(.5))
  1281. end
  1282. if tool then
  1283. rscf = rsc0 * CFrame.Angles(math.pi/2, 0, 0)
  1284. if slashing then
  1285. rscf = rsc0
  1286. end
  1287. end
  1288. end
  1289. if pa2.Parent == nil then
  1290. rm.C0 = clerp(rm.C0,rscf,speed)
  1291. end
  1292. if pa.Parent == nil then
  1293. lm.C0 = clerp(lm.C0,lscf,speed)
  1294. end
  1295. rj.C0 = clerp(rj.C0,rjcf,speed)
  1296. neck.C0 = clerp(neck.C0,ncf,speed)
  1297. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  1298. llegm.C0 = clerp(llegm.C0,llcf,speed)
  1299. end)
  1300.  
  1301.  
  1302.  
  1303. game:service'RunService'.RenderStepped:connect(function()
  1304. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 225 then
  1305. TorsoSmoke.Enabled = true
  1306. else
  1307. TorsoSmoke.Enabled = false
  1308. end
  1309. local ray = Ray.new(rootpart.Position, Vector3.new(0, -7, 0))
  1310. local hitz, enz = workspace:FindPartOnRay(ray, char)
  1311. if hitz and hitz.CanCollide and pa.Parent ~= char and pa2.Parent ~= char then
  1312. bodygyro.Parent = nil
  1313. humanoid.PlatformStand = false
  1314. end
  1315. if pa.Parent ~= nil or Grapple1 then
  1316. local size = (ropeStart2.Position-pa.Position).magnitude
  1317. ropePA.Size = Vector3.new(.2, size, .2)
  1318. ropePA.CFrame = CFrame.new(ropeStart2.Position, pa.Position) * CFrame.Angles(math.pi/2, 0, 0) * CFrame.new(0, -size/2, 0)
  1319. lm.C0 = CFrame.new(Vector3.new(lsc0.x, lsc0.y, lsc0.z), torso.CFrame:pointToObjectSpace(pa.Position)) * CFrame.Angles(math.pi/2, 0, 0)
  1320. else
  1321. if not debounce and humanoid.PlatformStand then
  1322. lm.C0 = lsc0 * CFrame.Angles(-.15, 0, -.15)
  1323. end
  1324. end
  1325. if pa2.Parent ~= nil or Grapple2 then
  1326. local size = (ropeStart.Position-pa2.Position).magnitude
  1327. ropePA2.Size = Vector3.new(.2, size, .2)
  1328. ropePA2.CFrame = CFrame.new(ropeStart.Position, pa2.Position) * CFrame.Angles(math.pi/2, 0, 0) * CFrame.new(0, -size/2, 0)
  1329. rm.C0 = CFrame.new(Vector3.new(rsc0.x, rsc0.y, rsc0.z), torso.CFrame:pointToObjectSpace(pa2.Position)) * CFrame.Angles(math.pi/2, 0, 0)
  1330. else
  1331. if not debounce and humanoid.PlatformStand then
  1332. rm.C0 = rsc0 * CFrame.Angles(-.15, 0, .15)
  1333. end
  1334. end
  1335. if Grapple1 and Grapple1Hit.Parent == nil then
  1336. pcall(function() Gweld:remove() end)
  1337. pa.Parent = nil
  1338. Grapple1 = false
  1339. ro:Abort()
  1340. end
  1341. if Grapple2 and Grapple2Hit.Parent == nil then
  1342. pcall(function() Gweld2:remove() end)
  1343. pa2.Parent = nil
  1344. Grapple2 = false
  1345. ro2:Abort()
  1346. end
  1347. if Grapple1 and Grapple2 and (humanoid.PlatformStand or not hitz) then
  1348. local distance = (pa.Position-pa2.Position).magnitude
  1349. bodygyro.Parent = torso
  1350. torso.CFrame = CFrame.new(torso.Position, Vector3.new(camera.CoordinateFrame.x, camera.CoordinateFrame.y, camera.CoordinateFrame.z)) * CFrame.Angles(0, math.pi, 0)
  1351. bodygyro.cframe = CFrame.new(torso.Position, Vector3.new(camera.CoordinateFrame.x, camera.CoordinateFrame.y, camera.CoordinateFrame.z)) * CFrame.Angles(0, math.pi, 0)
  1352. pa3.Parent = char
  1353. if distance <= .5 then
  1354. pa3.CFrame = pa.CFrame
  1355. elseif distance > .5 then
  1356. pa3.CFrame = CFrame.new(pa.Position, pa2.Position) * CFrame.new(0, 0, -distance/2)
  1357. end
  1358. if not MidPointUsed then
  1359. ro3=Instance.new("RocketPropulsion",torso3)
  1360. ro3.Name = 'RockatPropoolsun3'
  1361. ro3.MaxSpeed=250
  1362. ro3.MaxThrust=16000
  1363. ro3.TurnP = 0
  1364. ro3.TurnD = 0
  1365. ro3.MaxTorque=Vector3.new(14e16,14e16,14e16)
  1366. if humanoid.PlatformStand or not hitz then
  1367. ro:Abort()
  1368. ro2:Abort()
  1369. end
  1370. ro3.Target = pa3
  1371. if humanoid.PlatformStand or not hitz then
  1372. ro3:Fire()
  1373. end
  1374. MidPointUsed = true
  1375. end
  1376. elseif (not Grapple1 or not Grapple2) and MidPointUsed == true and (humanoid.PlatformStand or not hitz) then
  1377. pa3.Parent = nil
  1378. MidPointUsed = false
  1379. ro3:Abort()
  1380. ro3:Destroy()
  1381. if Grapple1 then
  1382. ro:Fire()
  1383. end
  1384. if Grapple2 then
  1385. ro2:Fire()
  1386. end
  1387. end
  1388. if not Grapple1 then
  1389. pcall(function() Gweld:remove() end)
  1390. end
  1391. if not Grapple2 then
  1392. pcall(function() Gweld2:remove() end)
  1393. end
  1394. if (Grapple1 or Grapple2) and not hitz then
  1395. bodygyro.Parent = torso
  1396. humanoid.PlatformStand = true
  1397. rlegm.Parent = torso
  1398. llegm.Parent = torso
  1399. lm.Parent = torso
  1400. rm.Parent = torso
  1401. rlegm.C0 = rlc0 * CFrame.new(0, .5, -.65) * CFrame.Angles(-math.pi/8, 0, .1)
  1402. llegm.C0 = llc0 * CFrame.new(0, .5, -.65) * CFrame.Angles(-math.pi/8, 0, -.1)
  1403. end
  1404. if (Grapple1 or Grapple2) and not hitz or humanoid.PlatformStand then
  1405. bodygyro.Parent = torso
  1406. bodygyro.cframe = CFrame.new(torso.Position, Vector3.new(camera.CoordinateFrame.x, camera.CoordinateFrame.y, camera.CoordinateFrame.z)) * CFrame.Angles(0, math.pi, 0)
  1407. rlegm.Parent = torso
  1408. llegm.Parent = torso
  1409. rlegm.C0 = rlc0 * CFrame.new(0, .5, -.65) * CFrame.Angles(-math.pi/8, 0, .1)
  1410. llegm.C0 = llc0 * CFrame.new(0, .5, -.65) * CFrame.Angles(-math.pi/8, 0, -.1)
  1411. end
  1412. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement