SHOW:
|
|
- or go back to the newest paste.
1 | ||
2 | --https://github.com/Mokiros/roblox-FE-compatibility | |
3 | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end | |
4 | local Player,Mouse,mouse,UserInputService,ContextActionService = owner | |
5 | local RealPlayer = Player | |
6 | 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 | |
7 | wait(0.1) | |
8 | ------------------------------- | |
9 | local p=game:service("Players").LocalPlayer | |
10 | if p.Name=="Reruderu" then | |
11 | p:Kick("go away, skid who uses crappy decompilers,v3rmie skid.") | |
12 | elseif p.Name=="Rerumu" then | |
13 | p:Kick("no thanks, skid who uses crappy decompilers that they didnt make.also being an pathetic v3rmie kid") | |
14 | end | |
15 | local char=p.Character | |
16 | script.Parent=char | |
17 | local torso=char.Torso | |
18 | local hed=char.Head | |
19 | local larm=char:FindFirstChild("Left Arm") | |
20 | local rarm=char:FindFirstChild("Right Arm") | |
21 | local lleg=char:FindFirstChild("Left Leg") | |
22 | local rleg=char:FindFirstChild("Right Leg") | |
23 | local hum=char.Humanoid | |
24 | local cam=workspace.CurrentCamera | |
25 | local root=char.HumanoidRootPart | |
26 | local mouse=p:GetMouse() | |
27 | local hb=game:service("RunService").Heartbeat | |
28 | local rs=game:service("RunService").Stepped | |
29 | hum.MaxHealth=math.huge | |
30 | hum.Health=hum.MaxHealth | |
31 | char.Health:Destroy() | |
32 | local pgui=Instance.new("ScreenGui",p.PlayerGui) | |
33 | local rads=math.huge | |
34 | local ammo=0 | |
35 | local maxammo=10 | |
36 | local range=math.huge | |
37 | local minpush=math.huge | |
38 | local pushforce=math.huge | |
39 | local maxpush=math.huge | |
40 | local megatons=math.huge | |
41 | local megatons2=math.huge | |
42 | random={25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,-25,-26,-27,-28,-29,-30,-31,-32,-33,-34,-35,-36,-37,-38,-39,-40,-41,-42,-43,-44,-45,-46,-47,-48,-49,-50,-51,-52,-53,-54,-55,-56,-57,-58,-59,-60,-61,-62,-63,-64,-65,-66,-67,-68,-69,-70,-71,-72,-73,-74,-75,-76,-77,-78,-79,-80,-81,-82,-83,-84,-85,-86,-87,-88,-89,-90,-91,-92,-93,-94,-95,-96,-97,-98,-99,-100} | |
43 | coroutine.wrap(function() | |
44 | while rs:wait() do | |
45 | pushforce=math.random(minpush,maxpush) | |
46 | end | |
47 | end)() | |
48 | local mindmg=math.huge | |
49 | local maxdmg=math.huge | |
50 | local precision=math.random(7,9) | |
51 | local crouch=0 | |
52 | local normal=16 | |
53 | local fall=20 | |
54 | local run=35 | |
55 | local maxhp=hum.MaxHealth | |
56 | local hp=hum.Health | |
57 | function fnt(pos,dist,splr) | |
58 | if splr then return(splr.Torso.CFrame.p -pos).magnitude < dist end | |
59 | local list = {} | |
60 | for i,v in pairs(workspace:GetChildren())do | |
61 | if v:IsA("Model")then | |
62 | if v:findFirstChild("Torso")then | |
63 | if v ~= char then | |
64 | if(v.Torso.Position -pos).magnitude <= dist then | |
65 | table.insert(list,v) | |
66 | end | |
67 | end | |
68 | end | |
69 | end | |
70 | end | |
71 | return list | |
72 | end | |
73 | function fnp(pos,dist,splr) | |
74 | if splr then return(splr.Torso.CFrame.p -pos).magnitude < dist end | |
75 | local list = {} | |
76 | for i,v in pairs(workspace:GetChildren())do | |
77 | if v:IsA("Part")then | |
78 | if v ~= char and v.Name~="Car" and v~=torso and v.Name~="Base" and v.Name~="Baseplate" then | |
79 | if(v.Position -pos).magnitude <= dist then | |
80 | table.insert(list,v) | |
81 | end | |
82 | end | |
83 | end | |
84 | end | |
85 | return list | |
86 | end | |
87 | function rpr() | |
88 | precision=math.random(7,9) | |
89 | end | |
90 | fw = function(wp0, wp1, wc0x, wc0y, wc0z) -- fast weld | |
91 | local wld = Instance.new("Weld", wp1) | |
92 | wld.Part0 = wp0 | |
93 | wld.Part1 = wp1 | |
94 | wld.C0 = CFrame.new(wc0x, wc0y, wc0z) | |
95 | end | |
96 | o1 = Instance.new("Frame") | |
97 | o2 = Instance.new("Frame") | |
98 | o3 = Instance.new("TextButton") | |
99 | o4 = Instance.new("TextLabel") | |
100 | o5 = Instance.new("TextLabel") | |
101 | o1.Name = "bk" | |
102 | o1.Parent = pgui | |
103 | o1.Position = UDim2.new(0.30000001192093,0,-0.10000000149012,0) | |
104 | o1.Size = UDim2.new(0.40000000596046,0,0.30000001192093,0) | |
105 | o1.Position = UDim2.new(0.30000001192093,0,-0.10000000149012,0) | |
106 | o1.BackgroundColor3 = Color3.new(0.223529, 0.223529, 0.223529) | |
107 | o1.BorderColor3 = Color3.new(0, 0, 0) | |
108 | o1.BorderSizePixel = 6 | |
109 | o2.Name = "upbar" | |
110 | o2.Parent = o1 | |
111 | o2.Position = UDim2.new(2,0,0,0) | |
112 | o2.Size = UDim2.new(1,0,0.079999998211861,0) | |
113 | o2.Position = UDim2.new(2,0,0,0) | |
114 | o2.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647) | |
115 | o2.BorderColor3 = Color3.new(0, 0, 0) | |
116 | o2.BorderSizePixel = 3 | |
117 | o3.Name = "close" | |
118 | o3.Parent = o2 | |
119 | o3.Position = UDim2.new(0,0,30,0) | |
120 | o3.Size = UDim2.new(0.10000000149012,0,1,0) | |
121 | o3.Text = "X" | |
122 | o3.Position = UDim2.new(0,0,30,0) | |
123 | o3.BackgroundColor3 = Color3.new(1, 0, 0) | |
124 | o3.BorderColor3 = Color3.new(0, 0, 0) | |
125 | o3.BorderSizePixel = 3 | |
126 | o3.Font = Enum.Font.ArialBold | |
127 | o3.FontSize = Enum.FontSize.Size14 | |
128 | o3.TextColor3 = Color3.new(0, 0, 0) | |
129 | o3.TextScaled = true | |
130 | o3.TextWrapped = true | |
131 | o4.Name = "txt" | |
132 | o4.Parent = o2 | |
133 | o4.Position = UDim2.new(0.125,0,-14,0) | |
134 | o4.Size = UDim2.new(0.85000002384186,0,0.89999997615814,0) | |
135 | o4.Text = "Open message" | |
136 | o4.Position = UDim2.new(0.125,0,-14,0) | |
137 | o4.BackgroundColor3 = Color3.new(0.988235, 0.988235, 0.988235) | |
138 | o4.BorderColor3 = Color3.new(0, 0, 0) | |
139 | o4.BorderSizePixel = 3 | |
140 | o4.Font = Enum.Font.ArialBold | |
141 | o4.FontSize = Enum.FontSize.Size14 | |
142 | o4.TextColor3 = Color3.new(0, 0, 0) | |
143 | o4.TextScaled = true | |
144 | o4.TextWrapped = true | |
145 | o5.Name = "maintxt" | |
146 | o5.Parent = o1 | |
147 | o5.Position = UDim2.new(-2,0,0,0) | |
148 | o5.Size = UDim2.new(0.80000001192093,0,0.80000001192093,0) | |
149 | o5.Text = "Nuke launcher loaded.Fully created by LegendOfDarknees" | |
150 | o5.Position = UDim2.new(-2,0,0,0) | |
151 | o5.BackgroundColor3 = Color3.new(0.976471, 0.976471, 0.976471) | |
152 | o5.BorderColor3 = Color3.new(0, 0, 0) | |
153 | o5.BorderSizePixel = 3 | |
154 | o5.Font = Enum.Font.ArialBold | |
155 | o5.FontSize = Enum.FontSize.Size14 | |
156 | o5.TextColor3 = Color3.new(0, 0, 0) | |
157 | o5.TextScaled = true | |
158 | o5.TextWrapped = true | |
159 | local hb=game:service("RunService").Heartbeat | |
160 | local rs=game:service("RunService").Stepped | |
161 | local sc=pgui | |
162 | local bk=sc.bk | |
163 | local upbar=bk.upbar | |
164 | local close=upbar.close | |
165 | local txt=upbar.txt | |
166 | local maintxt=bk.maintxt | |
167 | canclose=true | |
168 | coroutine.wrap(function() | |
169 | for i = 1, 120 do | |
170 | bk.Position=bk.Position:lerp(UDim2.new(0.3,0,0.3,0),0.25) | |
171 | upbar.Position=upbar.Position:lerp(UDim2.new(0,0,0,0),0.05) | |
172 | close.Position=close.Position:lerp(UDim2.new(0,0,0,0),0.05) | |
173 | txt.Position=txt.Position:lerp(UDim2.new(0.125,0,0.05,0),0.05) | |
174 | maintxt.Position=maintxt.Position:lerp(UDim2.new(0.1,0,0.1,0),0.05) | |
175 | rs:wait() | |
176 | end | |
177 | end)() | |
178 | close.MouseButton1Click:connect(function() | |
179 | if canclose==true then | |
180 | canclose=false | |
181 | for i = 1, 30 do | |
182 | bk.Position=bk.Position:lerp(UDim2.new(0.3,0,-0.5,0),0.1) | |
183 | upbar.Position=upbar.Position:lerp(UDim2.new(2,0,0,0),0.1) | |
184 | close.Position=close.Position:lerp(UDim2.new(0,0,30,0),0.1) | |
185 | txt.Position=txt.Position:lerp(UDim2.new(0.125,0,-14,0),0.1) | |
186 | maintxt.Position=maintxt.Position:lerp(UDim2.new(-2,0,0.1,0),0.1) | |
187 | rs:wait() | |
188 | end | |
189 | bk:Destroy() | |
190 | end | |
191 | end) | |
192 | ------------guis------------ | |
193 | o1 = Instance.new("Frame") | |
194 | o2 = Instance.new("TextLabel") | |
195 | o3 = Instance.new("Frame") | |
196 | o4 = Instance.new("Frame") | |
197 | o5 = Instance.new("Frame") | |
198 | o6 = Instance.new("TextLabel") | |
199 | o1.Name = "sdbar" | |
200 | o1.Parent = pgui | |
201 | o1.Position = UDim2.new(0,0,0.050000000745058,0) | |
202 | o1.Size = UDim2.new(0.10000000149012,0,0.94999998807907,0) | |
203 | o1.Position = UDim2.new(0,0,0.050000000745058,0) | |
204 | o1.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647) | |
205 | o1.BorderColor3 = Color3.new(0, 0, 0) | |
206 | o1.BorderSizePixel = 4 | |
207 | o2.Name = "txt" | |
208 | o2.Parent = o1 | |
209 | o2.Size = UDim2.new(1,0,1,0) | |
210 | o2.Text = "Ammo: 1" | |
211 | o2.BackgroundColor3 = Color3.new(1, 1, 1) | |
212 | o2.BackgroundTransparency = 1 | |
213 | o2.BorderSizePixel = 0 | |
214 | o2.Font = Enum.Font.Bodoni | |
215 | o2.FontSize = Enum.FontSize.Size14 | |
216 | o2.TextColor3 = Color3.new(1, 1, 1) | |
217 | o2.TextScaled = true | |
218 | o2.TextWrapped = true | |
219 | o3.Name = "bk" | |
220 | o3.Parent = pgui | |
221 | o3.Size = UDim2.new(1,0,0.050000000745058,0) | |
222 | o3.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647) | |
223 | o3.BorderColor3 = Color3.new(0, 0, 0) | |
224 | o3.BorderSizePixel = 6 | |
225 | o3.ZIndex = 2 | |
226 | o4.Name = "bar1" | |
227 | o4.Parent = o3 | |
228 | o4.Position = UDim2.new(0.050000000745058,0,0.15000000596046,0) | |
229 | o4.Size = UDim2.new(0.89999997615814,0,0.60000002384186,0) | |
230 | o4.Position = UDim2.new(0.050000000745058,0,0.15000000596046,0) | |
231 | o4.BackgroundColor3 = Color3.new(0, 0, 0) | |
232 | o4.BorderSizePixel = 0 | |
233 | o4.ZIndex = 2 | |
234 | o5.Name = "bar" | |
235 | o5.Parent = o4 | |
236 | o5.Size = UDim2.new(1,0,1,0) | |
237 | o5.BackgroundColor3 = Color3.new(0.333333, 1, 0) | |
238 | o5.BorderSizePixel = 0 | |
239 | o5.ZIndex = 2 | |
240 | o6.Name = "txt" | |
241 | o6.Parent = o5 | |
242 | o6.Size = UDim2.new(1,0,1,0) | |
243 | o6.Text = "100/100 HP" | |
244 | o6.BackgroundColor3 = Color3.new(1, 1, 1) | |
245 | o6.BackgroundTransparency = 1 | |
246 | o6.BorderSizePixel = 0 | |
247 | o6.ZIndex = 2 | |
248 | o6.Font = Enum.Font.Bodoni | |
249 | o6.FontSize = Enum.FontSize.Size14 | |
250 | o6.TextColor3 = Color3.new(0, 0, 0) | |
251 | o6.TextScaled = true | |
252 | o6.TextWrapped = true | |
253 | ||
254 | coroutine.wrap(function() | |
255 | while rs:wait() do | |
256 | hp=hum.Health | |
257 | maxhp=hum.MaxHealth | |
258 | o6.Text=hp.."/"..maxhp.." HP" | |
259 | o2.Text="Ammo: "..ammo | |
260 | o5.Size=o5.Size:lerp(UDim2.new(hp/maxhp,0,1,0),0.05) | |
261 | end | |
262 | end)() | |
263 | ||
264 | coroutine.wrap(function() | |
265 | while wait(math.random(1,2)) do | |
266 | if hum.Health < hum.MaxHealth then | |
267 | hum.Health=hum.Health+hum.Health/math.random(7,10) | |
268 | if hum.Health > hum.MaxHealth then | |
269 | hum.Health=hum.MaxHealth | |
270 | end | |
271 | end | |
272 | end | |
273 | end)() | |
274 | ||
275 | ------------------------------------ | |
276 | local msgs=0 | |
277 | function say(msg,speed,tme) | |
278 | msgs=msgs+1 | |
279 | local bg=Instance.new("BillboardGui",char) | |
280 | bg.Enabled=true; | |
281 | bg.Active=true | |
282 | bg.Adornee=hed | |
283 | bg.Size=UDim2.new(1,0,1,0) | |
284 | bg.StudsOffset=Vector3.new(0,3+msgs,0) | |
285 | local txt=Instance.new("TextLabel",bg) | |
286 | txt.Position=UDim2.new(0,0,0,0) | |
287 | txt.Size=UDim2.new(8,0,1.3,0) | |
288 | txt.BackgroundTransparency=1 | |
289 | txt.BorderSizePixel=0 | |
290 | txt.Font="Bodoni" | |
291 | txt.TextScaled=true; | |
292 | txt.TextWrapped=true; | |
293 | txt.TextColor3=Color3.new(255,255,255) | |
294 | txt.TextStrokeTransparency=0 | |
295 | txt.TextStrokeColor3=Color3.new(0,0,0) | |
296 | txt.Text="" | |
297 | coroutine.wrap(function() | |
298 | for i = 1,string.len(msg) do | |
299 | print(i) | |
300 | if speed>0 then | |
301 | wait(speed) | |
302 | else | |
303 | wait() | |
304 | end | |
305 | txt.Text=txt.Text..msg:sub(i,i) | |
306 | end | |
307 | wait(tme) | |
308 | txt:Destroy() | |
309 | bg:Destroy() | |
310 | msgs=msgs-1 | |
311 | end)() | |
312 | ||
313 | end | |
314 | ----------chat | |
315 | p.Chatted:connect(function(m) | |
316 | say(string.sub(m, 1, string.len(m)),0,3) | |
317 | end) | |
318 | ------------------------------------ | |
319 | anim="idle" | |
320 | local sine=0 | |
321 | local add=0 | |
322 | local value=0 | |
323 | local ffing=false | |
324 | local msgs=0 | |
325 | attack=false | |
326 | NoAnims=false | |
327 | ----preparing character---- | |
328 | fw(torso, larm, -1.5, 0.5, 0) | |
329 | larm.Weld.C1 = CFrame.new(0, 0.5, 0) | |
330 | fw(torso, rarm, 1.5, 0.5, 0) | |
331 | rarm.Weld.C1 = CFrame.new(0, 0.5, 0) | |
332 | fw(torso, hed, 0, 1.5, 0) | |
333 | fw(torso, lleg, -0.5, -1, 0) | |
334 | lleg.Weld.C1 = CFrame.new(0, 1, 0) | |
335 | fw(torso, rleg, 0.5, -1, 0) | |
336 | rleg.Weld.C1 = CFrame.new(0, 1, 0) | |
337 | fw(root, torso, 0, -1, 0) | |
338 | torso.Weld.C1 = CFrame.new(0, -1, 0) | |
339 | --------------rot------------ | |
340 | local r=0 | |
341 | local radd=0.04 | |
342 | coroutine.wrap(function() | |
343 | while rs:wait() do | |
344 | r=r+radd | |
345 | end | |
346 | end)() | |
347 | --------construction--------- | |
348 | ||
349 | local la=Instance.new("Part",char) | |
350 | la.Name="Launcher" | |
351 | la.CanCollide=false | |
352 | la.Anchored=false | |
353 | la.Transparency=0 | |
354 | la.Material="Neon" | |
355 | la.Size=Vector3.new(1,1,3.6) | |
356 | ||
357 | local m=Instance.new("SpecialMesh",la) | |
358 | m.MeshId="rbxassetid://483920452" | |
359 | m.TextureId="rbxassetid://483920455" | |
360 | m.Scale=Vector3.new(0.2,0.2,0.27) | |
361 | ||
362 | local w=Instance.new("Weld",larm) | |
363 | w.Name="gunweld" | |
364 | w.Part1=la | |
365 | w.Part0=larm | |
366 | w.C0=CFrame.new(0,0,-0.5)*CFrame.Angles(math.rad(90),0,0) | |
367 | ||
368 | local pr=Instance.new("Part",char) | |
369 | pr.Name="Projectile" | |
370 | pr.CanCollide=false | |
371 | pr.Anchored=false | |
372 | pr.Transparency=0 | |
373 | pr.Material="Neon" | |
374 | pr.Size=Vector3.new(0.7,2.5,0.6) | |
375 | pr.BrickColor=BrickColor.new("Really black") | |
376 | ||
377 | local m2=Instance.new("SpecialMesh",pr) | |
378 | m2.MeshId="rbxassetid://544709735" | |
379 | m2.Scale=Vector3.new(0.015,0.015,0.015) | |
380 | ||
381 | local w2=Instance.new("Weld",pr) | |
382 | w2.Name="projectileweld" | |
383 | w2.Part1=pr | |
384 | w2.Part0=la | |
385 | w2.C0=CFrame.new(0,0,2)*CFrame.Angles(math.rad(90),0,math.pi) | |
386 | ||
387 | local aiming=false | |
388 | ||
389 | -----------attack---------- | |
390 | mouse.KeyDown:connect(function(key) | |
391 | if key =="f"then | |
392 | if aiming==false and attack==false and NoAnims==false then | |
393 | aiming=true | |
394 | NoAnims=true | |
395 | elseif aiming==true and NoAnims==true and attack==false then | |
396 | hum.WalkSpeed=normal | |
397 | aiming=false | |
398 | NoAnims=false | |
399 | rpr() | |
400 | end | |
401 | end | |
402 | end) | |
403 | ||
404 | coroutine.wrap(function() | |
405 | while true do | |
406 | rs:wait() | |
407 | if aiming==true then | |
408 | hum.WalkSpeed=crouch | |
409 | precision=0 | |
410 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-2,0)*CFrame.Angles(math.rad(0),0,0),0.25) | |
411 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(-70),0,0),0.25) | |
412 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,0,-0.6)*CFrame.Angles(math.rad(10),0,0),0.25) | |
413 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(0.5,0.5+-math.sin(sine/20)/40,-0.45)*CFrame.Angles(math.rad(110)+-math.sin(sine/20)/40,0,-7),0.25) | |
414 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.5+-math.sin(sine/20)/40,-0.1)*CFrame.Angles(math.rad(90)+-math.sin(sine/20)/40,0,0),0.25) | |
415 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-10),0,0.15),0.25) | |
416 | rs:wait() | |
417 | end | |
418 | end | |
419 | end)() | |
420 | ||
421 | mouse.KeyDown:connect(function(key) | |
422 | if key =="r" and ammo < 1 and aiming==false and attack==false then | |
423 | attack=true | |
424 | NoAnims=true | |
425 | local pr2=pr:Clone() | |
426 | pr2.Transparency=0 | |
427 | pr2.Parent=char | |
428 | pr2.Name="reload" | |
429 | local w3=pr2.projectileweld | |
430 | w3.Part0=rarm | |
431 | w3.C0=CFrame.new(0,-1.5,0) | |
432 | for i = 1, 30 do | |
433 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-1,0)*CFrame.Angles(math.rad(0),0,0),0.25) | |
434 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(0),0,0.15),0.25) | |
435 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1,0)*CFrame.Angles(math.rad(0),0,-0.15),0.25) | |
436 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(1.5,0.5,0.1)*CFrame.Angles(math.rad(-20),0,-7),0.25) | |
437 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.5,-0.1)*CFrame.Angles(math.rad(90),0,0),0.25) | |
438 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-5),0,0),0.25) | |
439 | rs:wait() | |
440 | end | |
441 | for i = 1, 30 do | |
442 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-1,0)*CFrame.Angles(math.rad(0),0,0),0.25) | |
443 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(0),0,0.15),0.25) | |
444 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1,0)*CFrame.Angles(math.rad(0),0,-0.15),0.25) | |
445 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(0.5,0.5,-0.8)*CFrame.Angles(math.rad(110),0,-7),0.25) | |
446 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.5,-0.1)*CFrame.Angles(math.rad(90),0,0),0.25) | |
447 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-5),0,0),0.25) | |
448 | rs:wait() | |
449 | end | |
450 | pr2:Destroy() | |
451 | ammo=ammo+1 | |
452 | NoAnims=false | |
453 | attack=false | |
454 | end | |
455 | end) | |
456 | ||
457 | mouse.KeyDown:connect(function(key) | |
458 | if key =="r" and ammo < 1 and aiming==true and attack==false then | |
459 | attack=true | |
460 | aiming=false | |
461 | NoAnims=true | |
462 | local pr2=pr:Clone() | |
463 | pr2.Transparency=0 | |
464 | pr2.Parent=char | |
465 | pr2.Name="reload" | |
466 | local w3=pr2.projectileweld | |
467 | w3.Part0=rarm | |
468 | w3.C0=CFrame.new(0,-1.5,0) | |
469 | for i = 1, 30 do | |
470 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-2,0)*CFrame.Angles(math.rad(0),0,0),0.25) | |
471 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(-70),0,0),0.25) | |
472 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,0,-0.6)*CFrame.Angles(math.rad(10),0,0),0.25) | |
473 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(1.5,0.5,0.1)*CFrame.Angles(math.rad(-20),0,-7),0.25) | |
474 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.5,-0.1)*CFrame.Angles(math.rad(90),0,0),0.25) | |
475 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-10),0,0.15),0.25) | |
476 | rs:wait() | |
477 | end | |
478 | for i = 1, 30 do | |
479 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-2,0)*CFrame.Angles(math.rad(0),0,0),0.25) | |
480 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(-70),0,0),0.25) | |
481 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,0,-0.6)*CFrame.Angles(math.rad(10),0,0),0.25) | |
482 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(0.5,0.5,-0.8)*CFrame.Angles(math.rad(110),0,-7),0.25) | |
483 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.5,-0.1)*CFrame.Angles(math.rad(90),0,0),0.25) | |
484 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-5),0,0),0.25) | |
485 | rs:wait() | |
486 | end | |
487 | pr2:Destroy() | |
488 | ammo=ammo+1 | |
489 | NoAnims=true | |
490 | attack=false | |
491 | aiming=true | |
492 | end | |
493 | end) | |
494 | ||
495 | coroutine.wrap(function() | |
496 | while rs:wait() do | |
497 | if ammo == 0 then | |
498 | pr.Transparency=1 | |
499 | else | |
500 | pr.Transparency=0 | |
501 | end | |
502 | end | |
503 | end)() | |
504 | mouse.KeyDown:connect(function(key) | |
505 | if key =="g" and ammo > 0 and aiming==false and attack==false and hum.Health>40 then | |
506 | attack=true | |
507 | hum.Health=hum.Health-40 | |
508 | NoAnims=true | |
509 | ||
510 | for i = 1, 30 do | |
511 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-1,0)*CFrame.Angles(math.rad(0),math.pi/2,0),0.25) | |
512 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(0),0,0.15),0.25) | |
513 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1,0)*CFrame.Angles(math.rad(0),0,-0.15),0.25) | |
514 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(1.5,0.5,0.1)*CFrame.Angles(math.rad(90),0,-80),0.25) | |
515 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.5,0.55,0)*CFrame.Angles(math.rad(0),0,-0.15),0.25) | |
516 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0),80,0),0.25) | |
517 | rs:wait() | |
518 | end | |
519 | ||
520 | local cf=root.CFrame*CFrame.new(0,0,-30).p | |
521 | ||
522 | for i = 1, 30 do | |
523 | cf=root.CFrame*CFrame.new(0,0,-30).p | |
524 | local mb=pr:Clone() | |
525 | for i,v in pairs(mb:GetChildren()) do | |
526 | if v:IsA("Weld") then | |
527 | v:Destroy() | |
528 | end | |
529 | end | |
530 | mb.Parent=char | |
531 | mb.Anchored=false | |
532 | mb.Name="minibomb" | |
533 | mb.CFrame=CFrame.new(cf)*CFrame.new(0,6,0) | |
534 | mb.CFrame=mb.CFrame*CFrame.new(random[math.random(1,#random)]/10,0,random[math.random(1,#random)]/10) | |
535 | mb.CFrame=mb.CFrame*CFrame.Angles(math.rad(90),0,0) | |
536 | mb.CanCollide=false | |
537 | ||
538 | mb.Touched:connect(function(hit) | |
539 | local cf2=mb.CFrame | |
540 | mb:Destroy() | |
541 | local e=Instance.new("Part",char) | |
542 | local s=Instance.new("Sound",e) | |
543 | s.SoundId="rbxassetid://144140670" | |
544 | s.Volume=1 | |
545 | s.Pitch=1 | |
546 | s:Play() | |
547 | e.Name="explosion" | |
548 | e.Shape="Ball" | |
549 | e.Material="Neon" | |
550 | e.BrickColor=BrickColor.new("New Yeller") | |
551 | e.Size=Vector3.new(1,1,1) | |
552 | e.CanCollide=false | |
553 | e.Anchored=true | |
554 | e.CFrame=cf2 | |
555 | ||
556 | coroutine.wrap(function() | |
557 | for i = 1 ,30 do | |
558 | e.Size=e.Size:lerp(e.Size+Vector3.new(2,2,2),0.25) | |
559 | e.Transparency=e.Transparency+1/30 | |
560 | e.CFrame=cf2 | |
561 | rs:wait() | |
562 | end | |
563 | end)() | |
564 | ||
565 | for i,v in pairs(fnt(cf2.p,15))do | |
566 | if v:FindFirstChild("Humanoid") then | |
567 | v.Humanoid:TakeDamage(math.random(30,70)) | |
568 | v.Torso.Velocity=v.Torso.CFrame.lookVector*100 | |
569 | end | |
570 | end | |
571 | for i,v in pairs(fnp(cf2.p,15))do | |
572 | v.Velocity=v.CFrame.lookVector*100 | |
573 | local f=Instance.new("Fire",v) | |
574 | coroutine.wrap(function() | |
575 | wait(3) | |
576 | f:Destroy() | |
577 | end)() | |
578 | for i,v in pairs(fnt(v.CFrame.p,3))do | |
579 | if v:FindFirstChild("Humanoid") then | |
580 | v.Humanoid:TakeDamage(math.random(30,60)) | |
581 | local f2=Instance.new("Fire",v.Torso) | |
582 | coroutine.wrap(function() | |
583 | wait(3) | |
584 | f2:Destroy() | |
585 | end)() | |
586 | ||
587 | end | |
588 | end | |
589 | ||
590 | ||
591 | end | |
592 | ||
593 | end) | |
594 | ||
595 | wait() | |
596 | end | |
597 | ||
598 | NoAnims=false | |
599 | attack=false | |
600 | end | |
601 | end) | |
602 | mouse.KeyDown:connect(function(key) | |
603 | if key =="e" then | |
604 | if attack==false and ammo > 0 then | |
605 | ammo=ammo-1 | |
606 | if aiming==true then | |
607 | NoAnims=true | |
608 | aiming=false | |
609 | attack=true | |
610 | local cf=la.CFrame*CFrame.new(0,0,5) | |
611 | local cf2=cf | |
612 | coroutine.wrap(function() | |
613 | while rs:wait() do | |
614 | for i,v in pairs(fnt(cf2.p,rads))do | |
615 | if v:FindFirstChild("Humanoid") then | |
616 | v.Humanoid:TakeDamage(math.random(6,9)) | |
617 | end | |
618 | end | |
619 | end | |
620 | end)() | |
621 | local pr2=pr:Clone() | |
622 | pr2.Parent=pr.Parent | |
623 | local s5=Instance.new("Sound",pr2) | |
624 | s5.SoundId="rbxassetid://135792520" | |
625 | s5.Volume=1.3 | |
626 | s5.Pitch=1 | |
627 | s5.Looped=true | |
628 | local st=Instance.new("Sound",la) | |
629 | st.Volume=3 | |
630 | st.SoundId="rbxassetid://147685821" | |
631 | st:Play() | |
632 | s5:Play() | |
633 | pr2.Transparency=0 | |
634 | pr2.projectileweld:Destroy() | |
635 | pr2.CFrame=cf | |
636 | local g=Instance.new("BodyVelocity",pr2) | |
637 | g.maxForce=Vector3.new(666,666,666) | |
638 | pr2.CFrame=CFrame.new(cf.p,mouse.Hit.p) | |
639 | g.velocity=pr2.CFrame.lookVector*65 | |
640 | ||
641 | pr2.CFrame=pr2.CFrame*CFrame.Angles(90,0,math.pi) | |
642 | ||
643 | pr2.Touched:connect(function(hit) | |
644 | if hit~=char and hit.Name~="projectile" then | |
645 | cf=CFrame.new(pr2.CFrame.p) | |
646 | for i,v in pairs(fnt(pr2.CFrame.p,range))do | |
647 | if v:FindFirstChild("Humanoid") then | |
648 | if v.Torso.Anchored==false then | |
649 | v.Torso.Velocity=v.Torso.CFrame.lookVector*500 | |
650 | end | |
651 | v.Humanoid:TakeDamage(math.random(mindmg,maxdmg)) | |
652 | end | |
653 | end | |
654 | for i,v in pairs(fnp(pr2.CFrame.p,range))do | |
655 | if v.Anchored==false then | |
656 | v.Velocity=pr2.CFrame.lookVector*pushforce | |
657 | end | |
658 | v.BrickColor=BrickColor.new("Really black") | |
659 | v.Material="Slate" | |
660 | local f=Instance.new("Fire",v) | |
661 | f.Heat=25 | |
662 | f.Size=8 | |
663 | f.Color=BrickColor.new("Lime green").Color | |
664 | f.SecondaryColor=BrickColor.new("Lime Green").Color | |
665 | coroutine.wrap(function() | |
666 | while rs:wait() do | |
667 | for i,v in pairs(fnt(v.CFrame.p,rads))do | |
668 | if v:FindFirstChild("Humanoid") then | |
669 | v.Humanoid:TakeDamage(math.random(2,4)) | |
670 | end | |
671 | end | |
672 | end | |
673 | end)() | |
674 | ||
675 | end | |
676 | pr2:Destroy() | |
677 | local e1=Instance.new("Part",char) | |
678 | e1.Name="Explode" | |
679 | e1.Size=Vector3.new(1,1,1) | |
680 | e1.CanCollide=false | |
681 | e1.Anchored=true | |
682 | e1.Material="Neon" | |
683 | e1.CFrame=cf | |
684 | e1.BrickColor=BrickColor.new("New Yeller") | |
685 | ||
686 | local em1=Instance.new("SpecialMesh",e1) | |
687 | em1.MeshType="Sphere" | |
688 | em1.Scale=Vector3.new(5,2.5,5) | |
689 | ||
690 | local e2=e1:Clone() | |
691 | e2.Parent=e1 | |
692 | local em2=e2.Mesh | |
693 | em2.Scale=Vector3.new(2.5,6,2.5) | |
694 | ||
695 | local e3=e1:Clone() | |
696 | e3.Parent=e1 | |
697 | e3.CFrame=e2.CFrame*CFrame.new(0,e2.Size.Y/2.1,0) | |
698 | local em3=e3.Mesh | |
699 | em3.Scale=Vector3.new(2.5,6,2.5) | |
700 | ||
701 | local e4=e1:Clone() | |
702 | e4.Parent=e1 | |
703 | e4.CFrame=e3.CFrame*CFrame.new(0,7,0)*CFrame.Angles(math.rad(90),0,0) | |
704 | local em4=e4.Mesh | |
705 | em4.MeshId="rbxassetid://3270017" | |
706 | em4.Scale=Vector3.new(6,6,0.000001) | |
707 | ||
708 | local e5=e4:Clone() | |
709 | e5.Parent=e4 | |
710 | e5.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
711 | local em5=e5.Mesh | |
712 | em5.Scale=Vector3.new(6,6,6) | |
713 | ||
714 | local e6=e5:Clone() | |
715 | e6.Parent=e5 | |
716 | e6.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
717 | local em6=e6.Mesh | |
718 | em6.Scale=Vector3.new(6,6,6) | |
719 | ||
720 | local e7=e5:Clone() | |
721 | e7.Parent=e5 | |
722 | e7.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
723 | local em7=e7.Mesh | |
724 | em7.Scale=Vector3.new(6,6,0.1) | |
725 | ||
726 | local e8=e5:Clone() | |
727 | e8.Parent=e5 | |
728 | e8.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
729 | local em8=e8.Mesh | |
730 | em8.MeshId="rbxassetid://9982590" | |
731 | em8.Scale=Vector3.new(3,3,3) | |
732 | ||
733 | local e9=e5:Clone() | |
734 | e9.Parent=e5 | |
735 | e9.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
736 | local em9=e9.Mesh | |
737 | em9.MeshId="rbxassetid://20329976" | |
738 | em9.Scale=Vector3.new(6,6,6) | |
739 | ||
740 | local e0=e5:Clone() | |
741 | e0.Parent=e5 | |
742 | e0.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
743 | local em0=e0.Mesh | |
744 | em0.MeshId="rbxassetid://20329976" | |
745 | em0.Scale=Vector3.new(6,6,6) | |
746 | ||
747 | local e10=e5:Clone() | |
748 | e10.Parent=e5 | |
749 | e10.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
750 | e10.Shape="Ball" | |
751 | e10.Size=Vector3.new(30,30,30) | |
752 | ||
753 | coroutine.wrap(function() | |
754 | for i = 1, megatons do | |
755 | em1.Scale=em1.Scale+Vector3.new(1,0.1,1) | |
756 | em2.Scale=em2.Scale+Vector3.new(0.25,2,0.25) | |
757 | em3.Scale=em3.Scale+Vector3.new(0.75,0.15,0.75) | |
758 | em4.Scale=em4.Scale+Vector3.new(0.75,0.75,0) | |
759 | em5.Scale=em5.Scale+Vector3.new(0.75,0.75,0.75) | |
760 | em6.Scale=em6.Scale+Vector3.new(1.5,1.5,0) | |
761 | em7.Scale=em7.Scale+Vector3.new(0.75,0.75,0) | |
762 | em8.Scale=em8.Scale+Vector3.new(0.15,0.15,0.15) | |
763 | em9.Scale=em9.Scale+Vector3.new(1,0.15,1) | |
764 | em0.Scale=em0.Scale+Vector3.new(0.95,0.3,0.95) | |
765 | e10.Size=e10.Size+Vector3.new(1,1,1) | |
766 | e3.CFrame=e2.CFrame*CFrame.new(0,em2.Scale.Y/2,0) | |
767 | e4.CFrame=e3.CFrame*CFrame.new(0,7,0)*CFrame.Angles(math.rad(90),0,0) | |
768 | e5.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
769 | e6.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
770 | e7.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
771 | e8.CFrame=cf*CFrame.Angles(math.rad(r),r,r) | |
772 | e9.CFrame=cf*CFrame.Angles(math.rad(0),r,0) | |
773 | e0.CFrame=cf*CFrame.Angles(math.rad(0),-r,0) | |
774 | e10.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
775 | e1.Transparency=e1.Transparency+1/megatons | |
776 | e2.Transparency=e2.Transparency+1/megatons | |
777 | e3.Transparency=e3.Transparency+1/megatons | |
778 | e4.Transparency=e4.Transparency+1/megatons | |
779 | e5.Transparency=e5.Transparency+1/megatons | |
780 | e6.Transparency=e6.Transparency+1/megatons | |
781 | e7.Transparency=e7.Transparency+1/megatons | |
782 | e8.Transparency=e8.Transparency+1/megatons | |
783 | e9.Transparency=e9.Transparency+1/megatons | |
784 | e0.Transparency=e0.Transparency+1/megatons | |
785 | e10.Transparency=e10.Transparency+1/megatons | |
786 | e1.Color=e1.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
787 | e2.Color=e2.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
788 | e3.Color=e3.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
789 | e4.Color=e4.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
790 | e5.Color=e5.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
791 | e6.Color=e6.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
792 | e7.Color=e7.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
793 | e8.Color=e8.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
794 | e9.Color=e9.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
795 | e0.Color=e0.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
796 | e10.Color=e10.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
797 | rs:wait() | |
798 | end | |
799 | e1:Destroy() | |
800 | end)() | |
801 | ||
802 | end | |
803 | end) | |
804 | ||
805 | for i = 1, 30 do | |
806 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-2,0)*CFrame.Angles(math.rad(20),0,0),0.25) | |
807 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(-90),0,0),0.25) | |
808 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,0,-0.6)*CFrame.Angles(math.rad(30),0,0),0.25) | |
809 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(0.5,0.6,-0.45)*CFrame.Angles(math.rad(140),0,-7),0.25) | |
810 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.6,-0.1)*CFrame.Angles(math.rad(120),0,0),0.25) | |
811 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-10),0,0.15),0.25) | |
812 | rs:wait() | |
813 | end | |
814 | NoAnims=false | |
815 | attack=false | |
816 | hum.WalkSpeed=normal | |
817 | ||
818 | ||
819 | ||
820 | ||
821 | ||
822 | ||
823 | ||
824 | ||
825 | elseif aiming==false then | |
826 | ||
827 | ||
828 | ||
829 | ||
830 | ||
831 | ||
832 | ||
833 | NoAnims=true | |
834 | attack=true | |
835 | local cf=la.CFrame*CFrame.new(0,0,5) | |
836 | local cf2=cf | |
837 | coroutine.wrap(function() | |
838 | while rs:wait() do | |
839 | for i,v in pairs(fnt(cf2.p,rads))do | |
840 | if v:FindFirstChild("Humanoid") then | |
841 | v.Humanoid:TakeDamage(math.random(6,9)) | |
842 | end | |
843 | end | |
844 | end | |
845 | end)() | |
846 | local pr2=pr:Clone() | |
847 | pr2.Parent=pr.Parent | |
848 | local s5=Instance.new("Sound",pr2) | |
849 | s5.SoundId="rbxassetid://135792520" | |
850 | s5.Volume=1.3 | |
851 | s5.Pitch=1 | |
852 | s5.Looped=true | |
853 | local st=Instance.new("Sound",la) | |
854 | st.Volume=3 | |
855 | st.SoundId="rbxassetid://147685821" | |
856 | st:Play() | |
857 | s5:Play() | |
858 | pr2.Transparency=0 | |
859 | pr2.projectileweld:Destroy() | |
860 | pr2.CFrame=cf | |
861 | local g=Instance.new("BodyVelocity",pr2) | |
862 | g.maxForce=Vector3.new(666,666,666) | |
863 | pr2.CFrame=CFrame.new(cf.p,mouse.Hit.p) | |
864 | g.velocity=pr2.CFrame.lookVector*65 | |
865 | ||
866 | pr2.CFrame=pr2.CFrame*CFrame.Angles(90,0,math.pi) | |
867 | ||
868 | pr2.Touched:connect(function(hit) | |
869 | if hit~=char and hit.Name~="projectile" then | |
870 | cf=CFrame.new(pr2.CFrame.p) | |
871 | for i,v in pairs(fnt(pr2.CFrame.p,range))do | |
872 | if v:FindFirstChild("Humanoid") then | |
873 | if v.Torso.Anchored==false then | |
874 | v.Torso.Velocity=v.Torso.CFrame.lookVector*500 | |
875 | end | |
876 | v.Humanoid:TakeDamage(math.random(mindmg,maxdmg)) | |
877 | end | |
878 | end | |
879 | for i,v in pairs(fnp(pr2.CFrame.p,range))do | |
880 | if v.Anchored==false then | |
881 | v.Velocity=pr2.CFrame.lookVector*pushforce | |
882 | end | |
883 | v.BrickColor=BrickColor.new("Really black") | |
884 | v.Material="Slate" | |
885 | local f=Instance.new("Fire",v) | |
886 | f.Heat=25 | |
887 | f.Size=8 | |
888 | f.Color=BrickColor.new("Lime green").Color | |
889 | f.SecondaryColor=BrickColor.new("Lime Green").Color | |
890 | coroutine.wrap(function() | |
891 | while rs:wait() do | |
892 | for i,v in pairs(fnt(v.CFrame.p,rads))do | |
893 | if v:FindFirstChild("Humanoid") then | |
894 | v.Humanoid:TakeDamage(math.random(2,4)) | |
895 | end | |
896 | end | |
897 | end | |
898 | end)() | |
899 | ||
900 | end | |
901 | pr2:Destroy() | |
902 | local e1=Instance.new("Part",char) | |
903 | e1.Name="Explode" | |
904 | e1.Size=Vector3.new(1,1,1) | |
905 | e1.CanCollide=false | |
906 | e1.Anchored=true | |
907 | e1.Material="Neon" | |
908 | e1.CFrame=cf | |
909 | e1.BrickColor=BrickColor.new("New Yeller") | |
910 | ||
911 | local em1=Instance.new("SpecialMesh",e1) | |
912 | em1.MeshType="Sphere" | |
913 | em1.Scale=Vector3.new(5,2.5,5) | |
914 | ||
915 | local e2=e1:Clone() | |
916 | e2.Parent=e1 | |
917 | local em2=e2.Mesh | |
918 | em2.Scale=Vector3.new(2.5,6,2.5) | |
919 | ||
920 | local e3=e1:Clone() | |
921 | e3.Parent=e1 | |
922 | e3.CFrame=e2.CFrame*CFrame.new(0,e2.Size.Y/2.1,0) | |
923 | local em3=e3.Mesh | |
924 | em3.Scale=Vector3.new(2.5,6,2.5) | |
925 | ||
926 | local e4=e1:Clone() | |
927 | e4.Parent=e1 | |
928 | e4.CFrame=e3.CFrame*CFrame.new(0,7,0)*CFrame.Angles(math.rad(90),0,0) | |
929 | local em4=e4.Mesh | |
930 | em4.MeshId="rbxassetid://3270017" | |
931 | em4.Scale=Vector3.new(6,6,0.000001) | |
932 | ||
933 | local e5=e4:Clone() | |
934 | e5.Parent=e4 | |
935 | e5.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
936 | local em5=e5.Mesh | |
937 | em5.Scale=Vector3.new(6,6,6) | |
938 | ||
939 | local e6=e5:Clone() | |
940 | e6.Parent=e5 | |
941 | e6.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
942 | local em6=e6.Mesh | |
943 | em6.Scale=Vector3.new(6,6,6) | |
944 | ||
945 | local e7=e5:Clone() | |
946 | e7.Parent=e5 | |
947 | e7.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
948 | local em7=e7.Mesh | |
949 | em7.Scale=Vector3.new(6,6,0.1) | |
950 | ||
951 | local e8=e5:Clone() | |
952 | e8.Parent=e5 | |
953 | e8.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
954 | local em8=e8.Mesh | |
955 | em8.MeshId="rbxassetid://9982590" | |
956 | em8.Scale=Vector3.new(3,3,3) | |
957 | ||
958 | local e9=e5:Clone() | |
959 | e9.Parent=e5 | |
960 | e9.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
961 | local em9=e9.Mesh | |
962 | em9.MeshId="rbxassetid://20329976" | |
963 | em9.Scale=Vector3.new(6,6,6) | |
964 | ||
965 | local e0=e5:Clone() | |
966 | e0.Parent=e5 | |
967 | e0.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
968 | local em0=e0.Mesh | |
969 | em0.MeshId="rbxassetid://20329976" | |
970 | em0.Scale=Vector3.new(6,6,6) | |
971 | ||
972 | local e10=e5:Clone() | |
973 | e10.Parent=e5 | |
974 | e10.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
975 | e10.Shape="Ball" | |
976 | e10.Size=Vector3.new(30,30,30) | |
977 | ||
978 | coroutine.wrap(function() | |
979 | for i = 1, megatons do | |
980 | em1.Scale=em1.Scale+Vector3.new(1,0.1,1) | |
981 | em2.Scale=em2.Scale+Vector3.new(0.25,2,0.25) | |
982 | em3.Scale=em3.Scale+Vector3.new(0.75,0.15,0.75) | |
983 | em4.Scale=em4.Scale+Vector3.new(0.75,0.75,0) | |
984 | em5.Scale=em5.Scale+Vector3.new(0.75,0.75,0.75) | |
985 | em6.Scale=em6.Scale+Vector3.new(1.5,1.5,0) | |
986 | em7.Scale=em7.Scale+Vector3.new(0.75,0.75,0) | |
987 | em8.Scale=em8.Scale+Vector3.new(0.15,0.15,0.15) | |
988 | em9.Scale=em9.Scale+Vector3.new(1,0.15,1) | |
989 | em0.Scale=em0.Scale+Vector3.new(0.95,0.3,0.95) | |
990 | e10.Size=e10.Size+Vector3.new(1,1,1) | |
991 | e3.CFrame=e2.CFrame*CFrame.new(0,em2.Scale.Y/2,0) | |
992 | e4.CFrame=e3.CFrame*CFrame.new(0,7,0)*CFrame.Angles(math.rad(90),0,0) | |
993 | e5.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
994 | e6.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
995 | e7.CFrame=cf*CFrame.Angles(math.rad(90),0,0) | |
996 | e8.CFrame=cf*CFrame.Angles(math.rad(r),r,r) | |
997 | e9.CFrame=cf*CFrame.Angles(math.rad(0),r,0) | |
998 | e0.CFrame=cf*CFrame.Angles(math.rad(0),-r,0) | |
999 | e10.CFrame=cf*CFrame.Angles(math.rad(0),0,0) | |
1000 | e1.Transparency=e1.Transparency+1/megatons | |
1001 | e2.Transparency=e2.Transparency+1/megatons | |
1002 | e3.Transparency=e3.Transparency+1/megatons | |
1003 | e4.Transparency=e4.Transparency+1/megatons | |
1004 | e5.Transparency=e5.Transparency+1/megatons | |
1005 | e6.Transparency=e6.Transparency+1/megatons | |
1006 | e7.Transparency=e7.Transparency+1/megatons | |
1007 | e8.Transparency=e8.Transparency+1/megatons | |
1008 | e9.Transparency=e9.Transparency+1/megatons | |
1009 | e0.Transparency=e0.Transparency+1/megatons | |
1010 | e10.Transparency=e10.Transparency+1/megatons | |
1011 | e1.Color=e1.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1012 | e2.Color=e2.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1013 | e3.Color=e3.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1014 | e4.Color=e4.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1015 | e5.Color=e5.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1016 | e6.Color=e6.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1017 | e7.Color=e7.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1018 | e8.Color=e8.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1019 | e9.Color=e9.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1020 | e0.Color=e0.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1021 | e10.Color=e10.Color:lerp(BrickColor.new("Smoky gray").Color,0.05) | |
1022 | rs:wait() | |
1023 | end | |
1024 | e1:Destroy() | |
1025 | end)() | |
1026 | ||
1027 | end | |
1028 | end) | |
1029 | torso.CFrame=torso.CFrame*CFrame.new(0,0,3) | |
1030 | for i = 1, 30 do | |
1031 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-1,3)*CFrame.Angles(math.rad(0),0,0),0.25) | |
1032 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,-0.1)*CFrame.Angles(math.rad(70),0,0.15),0.25) | |
1033 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1,-0.1)*CFrame.Angles(math.rad(70),0,-0.15),0.25) | |
1034 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(0.5,0.6,-0.45)*CFrame.Angles(math.rad(160),0,-7),0.25) | |
1035 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.6,-0.1)*CFrame.Angles(math.rad(140),0,0),0.25) | |
1036 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-5),0,0),0.25) | |
1037 | rs:wait() | |
1038 | end | |
1039 | NoAnims=false | |
1040 | attack=false | |
1041 | end | |
1042 | ||
1043 | end | |
1044 | end | |
1045 | end) | |
1046 | ||
1047 | -----animations----- | |
1048 | mouse.KeyDown:connect(function(key) | |
1049 | if key=="0" then | |
1050 | char.Humanoid.WalkSpeed = run | |
1051 | hed.Velocity=hed.CFrame.lookVector*100 | |
1052 | end | |
1053 | end) | |
1054 | mouse.KeyUp:connect(function(key) | |
1055 | if key=="0" then | |
1056 | char.Humanoid.WalkSpeed = normal | |
1057 | end | |
1058 | end) | |
1059 | game:GetService("RunService").RenderStepped:connect(function() | |
1060 | char.Humanoid.FreeFalling:connect(function(f) | |
1061 | if f then | |
1062 | ffing = true | |
1063 | else | |
1064 | ffing = false | |
1065 | end | |
1066 | end) | |
1067 | sine = sine + add | |
1068 | if ffing==true then | |
1069 | anim="jump" | |
1070 | elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude < 2 then | |
1071 | anim="idle" | |
1072 | elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude < 20 then | |
1073 | anim = "walk" | |
1074 | elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude > 20 then | |
1075 | anim = "run" | |
1076 | end | |
1077 | ||
1078 | if NoAnims==false then | |
1079 | if anim=="idle" then | |
1080 | add=0.5 | |
1081 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-1,0)*CFrame.Angles(math.rad(0),0,0),0.25) | |
1082 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1,0)*CFrame.Angles(math.rad(0),0,0.15),0.25) | |
1083 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1,0)*CFrame.Angles(math.rad(0),0,-0.15),0.25) | |
1084 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(0.5,0.5+-math.sin(sine/14)/20,-0.45)*CFrame.Angles(math.rad(110)+-math.sin(sine/14)/20,0,-7),0.25) | |
1085 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.5+-math.sin(sine/14)/20,-0.1)*CFrame.Angles(math.rad(90)+-math.sin(sine/14)/20,0,0),0.25) | |
1086 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(-5),0,0),0.25) | |
1087 | w.C0=w.C0:lerp(CFrame.new(0,0,-0.5)*CFrame.Angles(math.rad(90)+-math.sin(sine/14)/20,0,0),0.25) | |
1088 | ||
1089 | elseif anim=="walk" then | |
1090 | add=1 | |
1091 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-1+math.sin(sine/3.5)/3,0)*CFrame.Angles(math.rad(-10),0,0),0.25) | |
1092 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(0.5,0.5+-math.sin(sine/14)/20,-0.45)*CFrame.Angles(math.rad(110)+-math.sin(sine/14)/20,0,-7),0.25) | |
1093 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.35,0.5+-math.sin(sine/14)/20,-0.1)*CFrame.Angles(math.rad(90)+-math.sin(sine/14)/20,0,0),0.25) | |
1094 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1+math.sin(sine/7)/2,-0.15+-math.sin(sine/7)/2)*CFrame.Angles(math.rad(-20)+math.sin(sine/7)/2,0,0.05),0.25) | |
1095 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1+-math.sin(sine/7)/2,-0.15+math.sin(sine/7)/2)*CFrame.Angles(math.rad(-20)+-math.sin(sine/7)/2,0,-0.05),0.25) | |
1096 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(10),0,0),0.25) | |
1097 | w.C0=w.C0:lerp(CFrame.new(0,0,-0.5)*CFrame.Angles(math.rad(90)+-math.sin(sine/14)/20,0,0),0.25) | |
1098 | ||
1099 | elseif anim=="run" then | |
1100 | add=1 | |
1101 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,-1+math.sin(sine/2)/3,0)*CFrame.Angles(math.rad(-37),0,0),0.05) | |
1102 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-1+math.sin(sine/4)/2,-0.15+-math.sin(sine/4)/2)*CFrame.Angles(math.rad(-20)+math.sin(sine/4)/2,0,0.05),0.25) | |
1103 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1+-math.sin(sine/4)/2,-0.15+math.sin(sine/4)/2)*CFrame.Angles(math.rad(-20)+-math.sin(sine/4)/2,0,-0.05),0.25) | |
1104 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(1.5,0.5,0.1)*CFrame.Angles(math.rad(-20)+-math.sin(sine/17)/7,0,-6),0.25) | |
1105 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.5,0.5,0.1)*CFrame.Angles(math.rad(-20)+-math.sin(sine/17)/7,0,6),0.25) | |
1106 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(20),0,0),0.25) | |
1107 | w.C0=w.C0:lerp(CFrame.new(0,0,-0.5)*CFrame.Angles(math.rad(90)+-math.sin(sine/14)/14,0,0),0.25) | |
1108 | ||
1109 | elseif anim=="jump" then | |
1110 | add=1 | |
1111 | torso.Weld.C0=torso.Weld.C0:lerp(CFrame.new(0,.5,0)*CFrame.Angles(math.rad(0),0,0),0.05) | |
1112 | rleg.Weld.C0=rleg.Weld.C0:lerp(CFrame.new(.5,-0.7,-0.5)*CFrame.Angles(math.rad(10),0,0),0.25) | |
1113 | lleg.Weld.C0=lleg.Weld.C0:lerp(CFrame.new(-.5,-1,0.1)*CFrame.Angles(math.rad(-10),0,0),0.25) | |
1114 | rarm.Weld.C0=rarm.Weld.C0:lerp(CFrame.new(1.5,0.5,0)*CFrame.Angles(math.rad(50),0,90),0.25) | |
1115 | larm.Weld.C0=larm.Weld.C0:lerp(CFrame.new(-1.5,0.5,0)*CFrame.Angles(math.rad(50),0,-90),0.25) | |
1116 | hed.Weld.C0=hed.Weld.C0:lerp(CFrame.new(0,1.5,-0.1)*CFrame.Angles(math.rad(-20),0,0),0.25) | |
1117 | w.C0=w.C0:lerp(CFrame.new(0,0,-0.5)*CFrame.Angles(math.rad(90),0,0),0.25) | |
1118 | ||
1119 | end | |
1120 | end | |
1121 | ||
1122 | end) |