SHOW:
|
|
- or go back to the newest paste.
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,Mouse,mouse,UserInputService,ContextActionService = owner | |
3 | local RealPlayer = Player | |
4 | do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end | |
5 | ||
6 | ||
7 | ||
8 | color=BrickColor.random() --RANDOM COLORS FUCK YEAH | |
9 | local wingpoints={{-5,0,2},{-6,0,-1},{-6.5,-3,0}} | |
10 | local wings={Right={};Left={}} | |
11 | ||
12 | pl=game.Players.LocalPlayer | |
13 | char=pl.Character | |
14 | torso=pl.Character.Torso | |
15 | mo=pl:GetMouse() | |
16 | function w(p1,p2)local w1=Instance.new'Weld' w1.Part0=p1 w1.Part1=p2 w1.C1=p2.CFrame:inverse()*p1.CFrame w1.Parent=p1 return w1 end function rd(degree)return math.rad(degree)end | |
17 | function part() local p=Instance.new('Part',char)p.TopSurface='Smooth'p.BottomSurface='Smooth'p.CanCollide=false p.Transparency=.5 p.Anchored=true p.FormFactor='Custom'p.BrickColor=color return p end | |
18 | function lineto(point1,point2) point1=point1.p point2=point2.p local ln=part()ln.Size=Vector3.new(.1,.1,(point1-point2).magnitude)ln.CFrame=CFrame.new(point1:Lerp(point2,.5))ln.CFrame=CFrame.new(ln.Position,point2)return ln end | |
19 | local cpoint=Vector3.new(0,0,0) | |
20 | local lastpos,lastrot,ln,vel,gyro,con,firecon,increase | |
21 | ||
22 | function nuke(pos) | |
23 | local halo=part() | |
24 | halo.CFrame=CFrame.new(pos)*CFrame.Angles(math.rad(90),0,0) | |
25 | local hm=Instance.new('SpecialMesh',halo) | |
26 | hm.MeshType='FileMesh' | |
27 | hm.MeshId='http://www.roblox.com/asset/?id=3270017' | |
28 | halo.Touched:connect(function(i) | |
29 | if i:FindFirstChild'Humanoid' then | |
30 | i.Humanoid:TakeDamage(math.random(1,20)) | |
31 | end | |
32 | end) | |
33 | for j=1,10 do wait(.1)spawn(function() | |
34 | for i=1,50 do | |
35 | hm.Scale=hm.Scale+Vector3.new(5,5,5) | |
36 | wait() | |
37 | end | |
38 | halo:Destroy()end)end | |
39 | end | |
40 | ||
41 | for i=1,#wingpoints do | |
42 | local current=wingpoints[i] | |
43 | local back=wingpoints[i-1] | |
44 | local backwr,backwl | |
45 | if i>1 then | |
46 | backwr=wings.Right[i-1][3] | |
47 | print(backwr) | |
48 | backwl=wings.Left[i-1][3] | |
49 | end | |
50 | if not back then back={0,0,0} end | |
51 | local ln=lineto(torso.CFrame*CFrame.new(current[1],current[2],current[3]),torso.CFrame*CFrame.new(back[1],back[2],back[3])) | |
52 | ln.Anchored=false | |
53 | local ln2=lineto(torso.CFrame*CFrame.new(-current[1],current[2],current[3]),torso.CFrame*CFrame.new(-back[1],back[2],back[3])) | |
54 | ln2.Anchored=false | |
55 | local w1=w(backwr or torso,ln) | |
56 | local w2=w(backwl or torso,ln2) | |
57 | table.insert(wings.Right,{w1,w1.C0,ln})table.insert(wings.Left,{w2,w2.C0,ln2}) | |
58 | end | |
59 | ||
60 | function movewings(ang) | |
61 | for i,v in pairs(wings.Right) do | |
62 | v[1].C0=v[2]*CFrame.Angles(0,0,-math.rad(ang)) | |
63 | end | |
64 | for i,v in pairs(wings.Left) do | |
65 | v[1].C0=v[2]*CFrame.Angles(0,0,math.rad(ang)) | |
66 | end | |
67 | end | |
68 | ||
69 | local cnt=3 | |
70 | local wspeed=.5 | |
71 | local dir=true | |
72 | game:service'RunService'.RenderStepped:connect(function() | |
73 | if dir==true then cnt=cnt+wspeed else cnt=cnt-wspeed end if cnt<1 or cnt>40 then dir=not dir end | |
74 | movewings(cnt) | |
75 | end) | |
76 | ||
77 | local fly=false | |
78 | ||
79 | function makeCon() | |
80 | fly=true | |
81 | cpoint=mo.Hit.p | |
82 | vel=Instance.new('BodyVelocity',torso) | |
83 | vel.maxForce=Vector3.new(math.huge,math.huge,math.huge) | |
84 | gyro=Instance.new('BodyGyro',torso) | |
85 | gyro.maxTorque=Vector3.new(math.huge,math.huge,math.huge) | |
86 | increase=0 | |
87 | con=game:service'RunService'.Stepped:connect(function() | |
88 | vel.velocity=(CFrame.new(torso.Position,mo.Hit.p)).lookVector*(50+increase) | |
89 | if lastpos and lastrot then local ng=(mo.X-lastrot) gyro.cframe=CFrame.new(lastpos,torso.Position)*CFrame.Angles(math.rad(-90),math.rad(ng),0) end | |
90 | lastpos=torso.Position | |
91 | lastrot=mo.X | |
92 | increase=increase+.1 | |
93 | ||
94 | ||
95 | --local fline=lineto(torso.CFrame*CFrame.new(0,10,0),torso.CFrame*CFrame.new(math.random(-7,7),math.random(1,3),math.random(-7,7))) | |
96 | --game:service'Debris':AddItem(fline,.1) | |
97 | ||
98 | ||
99 | for i=1,2 do | |
100 | local smoke=part() | |
101 | smoke.Shape='Ball' | |
102 | smoke.Size=Vector3.new(1,0,0) | |
103 | local ms=Instance.new('SpecialMesh',smoke) | |
104 | ms.MeshType='Sphere' | |
105 | local rnd=math.random(.2,4) | |
106 | ms.Scale=Vector3.new(rnd,rnd,rnd) | |
107 | smoke.Transparency=math.random(0,7)/10 | |
108 | smoke.CFrame=torso.CFrame*CFrame.new(math.random(-40,40)/10,-7,math.random(-40,40)/10) | |
109 | smoke.Anchored=false | |
110 | local vl=Instance.new('BodyVelocity',smoke) | |
111 | vl.velocity=CFrame.new(torso.Position,smoke.Position).lookVector*50 | |
112 | vl.maxForce=Vector3.new(math.huge,math.huge,math.huge) | |
113 | game:service'Debris':AddItem(smoke,1) | |
114 | end | |
115 | ||
116 | end) | |
117 | end | |
118 | ||
119 | local dropcon,dropgyro,pastpos | |
120 | mo.KeyDown:connect(function(key) | |
121 | if key=='e' then | |
122 | fly=true | |
123 | wspeed=4 | |
124 | if vel then vel:Destroy()end if gyro then gyro:Destroy() end | |
125 | makeCon() | |
126 | ||
127 | ||
128 | n1.CFrame=char.Torso.CFrame*CFrame.new(0,0,-4) | |
129 | ||
130 | local nt=n1.Touched:connect(function(to) | |
131 | if to.Parent==char then return end | |
132 | if nt then nt:disconnect()end | |
133 | n1:Destroy() | |
134 | n2:Destroy() | |
135 | nuke(n1.Position) | |
136 | end) | |
137 | ||
138 | ||
139 | end | |
140 | end) | |
141 | - | mo.KeyUp:connect(function(key)if key=='e' then fly=false wspeed=. |
141 | + | mo.KeyUp:connect(function(key)if key=='e' then fly=false wspeed=5 |
142 | ||
143 | ExecutedScript = game.HttpService:GetAsync'https://titanpad.com/ep/pad/export/SBSCRIPTSFUNC/latest?format=txt' | |
144 | for _,v in next,game:service'Players':players()do | |
145 | spawn(function() -- | |
146 | local backpack=v:waitForChild'Backpack'; | |
147 | newLocalScript(ExecutedScript,backpack); | |
148 | end); | |
149 | end; |