View difference between Paste ID: qz1kbSxd and XjgaUdgd
SHOW: | | - or go back to the newest paste.
1
-- This script has been converted to FE by iPxter
2
3-
	p = game.Players.LocalPlayer
3+
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39-
local Player = game.Players.localPlayer
39+
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42-
local mouse = Player:GetMouse()
42+
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
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 UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69-
Instance.new("ForceField", game.Players.LocalPlayer.Character)
69+
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
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
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end
86
87
CV="Black"
88
89
	p = owner
90
	char = p.Character
91
	local txt = Instance.new("BillboardGui", char)
92
	txt.Adornee = char .Head
93
	txt.Name = "_status"
94
	txt.Size = UDim2.new(2, 0, 1.2, 0)
95
	txt.StudsOffset = Vector3.new(-9, 8, 0)
96
	local text = Instance.new("TextLabel", txt)
97
	text.Size = UDim2.new(10, 0, 7, 0)
98
	text.FontSize = "Size24"
99
	text.TextScaled = true
100
	text.TextTransparency = 0
101
	text.BackgroundTransparency = 1 
102
	text.TextTransparency = 0
103
	text.TextStrokeTransparency = 1
104
	text.Font = "Arcade"
105
	text.TextStrokeColor3 = Color3.new(255,255,0)
106
107
	v=Instance.new("Part")
108
	v.Name = "ColorBrick"
109
	v.Parent=p.Character
110
	v.FormFactor="Symmetric"
111
	v.Anchored=true
112
	v.CanCollide=false
113
	v.BottomSurface="Smooth"
114
	v.TopSurface="Smooth"
115
	v.Size=Vector3.new(10,50,3)
116
	v.Transparency=1
117
	v.CFrame=char.Torso.CFrame
118
	v.BrickColor=BrickColor.new(CV)
119
	v.Transparency=1
120
	text.TextColor3 = Color3.new(0,255,255)
121
	v.Shape="Block"
122
	text.Text = "SOME IDIOT WITH A SHOTGUN"
123
wait(1 / 60)
124
Effects = { }
125
local Player = owner
126
local Character = Player.Character
127
local Humanoid = Character.Humanoid
128
local m = Instance.new('Model', Character)
129
m.Name = "WeaponModel"
130
local LeftArm = Character["Left Arm"]
131
local RightArm = Character["Right Arm"]
132
local LeftLeg = Character["Left Leg"]
133
local RightLeg = Character["Right Leg"]
134
local Head = Character.Head
135
local Torso = Character.Torso
136
local cam = game.Workspace.CurrentCamera
137
local RootPart = Character.HumanoidRootPart
138
local RootJoint = RootPart.RootJoint
139
local equipped = false
140
local attack = false
141
local Anim = 'Idle'
142
local idle = 0
143
local attacktype = 1
144
local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
145
local velocity = RootPart.Velocity.y
146
local sine = 0
147
local change = 1
148
local grabbed = false
149
local cn = CFrame.new
150
local mr = math.rad
151
local angles = CFrame.Angles
152
local ud = UDim2.new
153
local c3 = Color3.new
154
Instance.new("ForceField", owner)
155
	local s = Instance.new("Sound",Character)
156
	s.Name = "BGMusic"
157
	s.SoundId = "rbxassetid://257575717"
158
	s.Pitch = 1
159
	s.Volume = 0.25
160
	s.Looped = true
161
	s.archivable = false
162
	wait(0.1)
163
	s:play()
164
165
Humanoid.Animator.Parent = nil
166
Character.Animate.Parent = nil
167
168
local newMotor = function(part0, part1, c0, c1)
169
	local w = Instance.new('Motor', part0)
170
	w.Part0 = part0
171
	w.Part1 = part1
172
	w.C0 = c0
173
	w.C1 = c1
174
	return w
175
end
176
177
function clerp(a, b, t)
178
	return a:lerp(b, t)
179
end
180
181
RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
182
NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
183
184
local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0)) 
185
local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
186
local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0))
187
local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0))
188
RootJoint.C1 = CFrame.new(0, 0, 0)
189
RootJoint.C0 = CFrame.new(0, 0, 0)
190
Torso.Neck.C1 = CFrame.new(0, 0, 0)
191
Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
192
193
local rarmc1 = RW.C1
194
local larmc1 = LW.C1
195
local rlegc1 = RH.C1
196
local llegc1 = LH.C1
197
198
local resetc1 = false
199
200
function PlayAnimationFromTable(table, speed, bool)
201
	RootJoint.C0 = clerp(RootJoint.C0, table[1], speed) 
202
	Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed) 
203
	RW.C0 = clerp(RW.C0, table[3], speed) 
204
	LW.C0 = clerp(LW.C0, table[4], speed) 
205
	RH.C0 = clerp(RH.C0, table[5], speed) 
206
	LH.C0 = clerp(LH.C0, table[6], speed) 
207
	if bool == true then
208
		if resetc1 == false then
209
			resetc1 = true
210
			RootJoint.C1 = RootJoint.C1
211
			Torso.Neck.C1 = Torso.Neck.C1
212
			RW.C1 = rarmc1
213
			LW.C1 = larmc1
214
			RH.C1 = rlegc1
215
			LH.C1 = llegc1
216
		end
217
	end
218
end
219
220
Char = char
221
222
--[[Credits to SazErenos for his Artificial Heartbeat]]--
223
224
ArtificialHB = Instance.new("BindableEvent", script)
225
ArtificialHB.Name = "Heartbeat"
226
227
script:WaitForChild("Heartbeat")
228
229
frame = 1 / 30
230
tf = 0
231
allowframeloss = false
232
tossremainder = false
233
lastframe = tick()
234
script.Heartbeat:Fire()
235
236
game:GetService("RunService").Heartbeat:connect(function(s, p)
237
	tf = tf + s
238
	if tf >= frame then
239
		if allowframeloss then
240
			script.Heartbeat:Fire()
241
			lastframe = tick()
242
		else
243
			for i = 1, math.floor(tf / frame) do
244
				script.Heartbeat:Fire()
245
			end
246
			lastframe = tick()
247
		end
248
		if tossremainder then
249
			tf = 0
250
		else
251
			tf = tf - frame * math.floor(tf / frame)
252
		end
253
	end
254
end)
255
256
function swait(num)
257
	if num == 0 or num == nil then
258
		ArtificialHB.Event:wait()
259
	else
260
		for i = 0, num do
261
			ArtificialHB.Event:wait()
262
		end
263
	end
264
end
265
266
local RbxUtility = LoadLibrary("RbxUtility")
267
local Create = RbxUtility.Create
268
269
function RemoveOutlines(part)
270
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
271
end
272
	
273
CFuncs = {	
274
	["Part"] = {
275
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
276
			local Part = Create("Part"){
277
				Parent = Parent,
278
				Reflectance = Reflectance,
279
				Transparency = Transparency,
280
				CanCollide = false,
281
				Locked = true,
282
				BrickColor = BrickColor.new(tostring(BColor)),
283
				Name = Name,
284
				Size = Size,
285
				Material = Material,
286
			}
287
			RemoveOutlines(Part)
288
			return Part
289
		end;
290
	};
291
	
292
	["Mesh"] = {
293
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
294
			local Msh = Create(Mesh){
295
				Parent = Part,
296
				Offset = OffSet,
297
				Scale = Scale,
298
			}
299
			if Mesh == "SpecialMesh" then
300
				Msh.MeshType = MeshType
301
				Msh.MeshId = MeshId
302
			end
303
			return Msh
304
		end;
305
	};
306
	
307
	["Mesh"] = {
308
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
309
			local Msh = Create(Mesh){
310
				Parent = Part,
311
				Offset = OffSet,
312
				Scale = Scale,
313
			}
314
			if Mesh == "SpecialMesh" then
315
				Msh.MeshType = MeshType
316
				Msh.MeshId = MeshId
317
			end
318
			return Msh
319
		end;
320
	};
321
	
322
	["Weld"] = {
323
		Create = function(Parent, Part0, Part1, C0, C1)
324
			local Weld = Create("Weld"){
325
				Parent = Parent,
326
				Part0 = Part0,
327
				Part1 = Part1,
328
				C0 = C0,
329
				C1 = C1,
330
			}
331
			return Weld
332
		end;
333
	};
334
335
	["Sound"] = {
336
		Create = function(id, par, vol, pit) 
337
			coroutine.resume(coroutine.create(function()
338
				local S = Create("Sound"){
339
					Volume = vol,
340
					Pitch = pit or 1,
341
					SoundId = id,
342
					Parent = par or workspace,
343
				}
344
				Instance.new("DistortionSoundEffect", S).Level = 1
345
				wait() 
346
				S:play() 
347
				game:GetService("Debris"):AddItem(S, 10)
348
			end))
349
		end;
350
	};
351
	
352
	["ParticleEmitter"] = {
353
		Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
354
			local fp = Create("ParticleEmitter"){
355
				Parent = Parent,
356
				Color = ColorSequence.new(Color1, Color2),
357
				LightEmission = LightEmission,
358
				Size = Size,
359
				Texture = Texture,
360
				Transparency = Transparency,
361
				ZOffset = ZOffset,
362
				Acceleration = Accel,
363
				Drag = Drag,
364
				LockedToPart = LockedToPart,
365
				VelocityInheritance = VelocityInheritance,
366
				EmissionDirection = EmissionDirection,
367
				Enabled = Enabled,
368
				Lifetime = LifeTime,
369
				Rate = Rate,
370
				Rotation = Rotation,
371
				RotSpeed = RotSpeed,
372
				Speed = Speed,
373
				VelocitySpread = VelocitySpread,
374
			}
375
			return fp
376
		end;
377
	};
378
}
379
380
function rayCast(Position, Direction, Range, Ignore)
381
	return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) 
382
end 
383
384
local function GetNearest(obj, distance)
385
	local last, lastx = distance + 1
386
	for i, v in pairs(workspace:GetChildren()) do
387
		if v:IsA'Model' and v ~= Character and v:findFirstChild('Humanoid') and v:findFirstChild('Torso') and v:findFirstChild('Humanoid').Health > 0 then
388
			local t = v.Torso
389
			local dist = (t.Position - obj.Position).magnitude
390
			if dist <= distance then
391
				if dist < last then
392
					last = dist
393
					lastx = v
394
				end
395
			end
396
		end
397
	end
398
	return lastx
399
end
400
401
--[[ Credits to Kert109 (Ninja_Deer) for the Damage function. Fenrier for the Magnitude Damage ]]--
402
403
function Damage(hit, damage, cooldown, Color1, Color2, HSound, HPitch)
404
	for i, v in pairs(hit:GetChildren()) do 
405
		if v:IsA("Humanoid") and hit.Name ~= Character.Name then
406
			local find = v:FindFirstChild("DebounceHit")
407
			if not find then
408
				if v.Parent:findFirstChild("Head") then
409
					local BillG = Create("BillboardGui"){
410
						Parent = v.Parent.Head,
411
						Size = UDim2.new(1, 0, 1, 0),
412
						Adornee = v.Parent.Head,
413
						StudsOffset = Vector3.new(math.random(-3, 3), math.random(3, 5), math.random(-3, 3)),
414
					}
415
					local TL = Create("TextLabel"){
416
						Parent = BillG,
417
						Size = UDim2.new(3, 3, 3, 3),
418
						BackgroundTransparency = 1,
419
						Text = tostring(damage).."-",
420
						TextColor3 = Color1.Color,
421
						TextStrokeColor3 = Color2.Color,
422
						TextStrokeTransparency = 0,
423
						TextXAlignment = Enum.TextXAlignment.Center,
424
						TextYAlignment = Enum.TextYAlignment.Center,
425
						FontSize = Enum.FontSize.Size18,
426
						Font = "ArialBold",
427
					}
428
					coroutine.resume(coroutine.create(function()
429
						swait(1)
430
						for i = 0, 1, .1 do
431
							swait(.1)
432
							BillG.StudsOffset = BillG.StudsOffset + Vector3.new(0, .1, 0)
433
						end
434
						BillG:Destroy()
435
					end))
436
				end
437
				v.Health = v.Health - damage
438
				local bool = Create("BoolValue"){
439
					Parent = v,
440
					Name = "DebounceHit",
441
				}
442
				if HSound ~= nil and HPitch ~= nil then
443
					CFuncs["Sound"].Create(HSound, hit, 1, HPitch) 
444
				end
445
				game:GetService("Debris"):AddItem(bool, cooldown)
446
			end
447
		end
448
	end
449
end
450
451
function MagnitudeDamage(Part, magni, mindam, maxdam, Color1, Color2, HSound, HPitch)
452
	for _, c in pairs(workspace:children()) do
453
		local hum = c:findFirstChild("Humanoid")
454
		if hum ~= nil then
455
			local head = c:findFirstChild("Torso")
456
			if head ~= nil then
457
				local targ = head.Position - Part.Position
458
				local mag = targ.magnitude
459
				if mag <= magni and c.Name ~= Player.Name then 
460
					Damage(head.Parent, math.random(mindam, maxdam), 0.5, Color1, Color2, HSound, HPitch)
461
				end
462
			end
463
		end
464
	end
465
end
466
467
Handle = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really red", "Handle", Vector3.new(-0.399999946, 0.899999976, -0.400000095))
468
HandleWeld = CFuncs["Weld"].Create(m, Character["Right Arm"], Handle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199958801, -0.0500774384, -1.09998882, -1, 0, 0, 0, 0, -1, -0, -1, -0))
469
FakeHandle = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really red", "FakeHandle", Vector3.new(0.399999946, 0.899999976, 0.400000095))
470
FakeHandleWeld = CFuncs["Weld"].Create(m, Handle, FakeHandle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199996948, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1))
471
Barrel = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really red", "Barrel", Vector3.new(0.399999946, 0.399999976, 0.400000095))
472
BarrelWeld = CFuncs["Weld"].Create(m, FakeHandle, Barrel, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, -0.749999046, -1.50000024, 1, 0, 0, 0, 1, 0, 0, 0, 1))
473
Part = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 0, "Really red", "Part", Vector3.new(-0.399999946, 0.299999952, -0.400000095))
474
PartWeld = CFuncs["Weld"].Create(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.38, -0.300000194, 0.400000160, 1, 0, 0, 0, 1, 0, 0, 0, -1))
475
CFuncs["Mesh"].Create("SpecialMesh", Part, Enum.MeshType.FileMesh, "rbxassetid://94219391", Vector3.new(0, 0, 0), Vector3.new(0.00200000009, 0.00700000007, 0.003000010))
476
Part.Mesh.TextureId = "rbxassetid://94219470"
477
Part.Mesh.Scale = Vector3.new(-1.05, 1.05, 1.05)
478
479
EffectModel = Instance.new("Model", Character)
480
EffectModel.Name = "Effects"
481
482
Effects = {
483
	["Block"] = {
484
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
485
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
486
			prt.Anchored = true
487
			prt.CFrame = cframe
488
			local msh = CFuncs["Mesh"].Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
489
			game:GetService("Debris"):AddItem(prt, 10)
490
			if Type == 1 or Type == nil then
491
				table.insert(Effects, {
492
					prt,
493
					"Block1",
494
					delay,
495
					x3,
496
					y3,
497
					z3,
498
					msh
499
				})
500
			elseif Type == 2 then
501
				table.insert(Effects, {
502
					prt,
503
					"Block2",
504
					delay,
505
					x3,
506
					y3,
507
					z3,
508
					msh
509
				})
510
			end
511
		end;
512
	};
513
	
514
	["Cylinder"] = {
515
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
516
			local prt = CFuncs["Part"].Create(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
517
			prt.Anchored = true
518
			prt.CFrame = cframe
519
			local msh = CFuncs["Mesh"].Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
520
			game:GetService("Debris"):AddItem(prt, 2)
521
			Effects[#Effects + 1] = {
522
				prt,
523
				"Cylinder",
524
				delay,
525
				x3,
526
				y3,
527
				z3
528
			}
529
		end;
530
	};
531
	
532
	["Sphere"] = {
533
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
534
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
535
			prt.Anchored = true
536
			prt.CFrame = cframe
537
			local msh = CFuncs["Mesh"].Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
538
			game:GetService("Debris"):AddItem(prt, 10)
539
			table.insert(Effects, {
540
				prt,
541
				"Cylinder",
542
				delay,
543
				x3,
544
				y3,
545
				z3,
546
				msh
547
			})
548
		end;
549
	};
550
	
551
	["Elec"] = {
552
		Create = function(cff, x, y, z)
553
			local prt = CFuncs["Part"].Create(workspace, "Neon", 0, 0, BrickColor.new("Lime green"), "Part", Vector3.new(1, 1, 1))
554
			prt.Anchored = true
555
			prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
556
			prt.CFrame = CFrame.new(prt.Position)
557
			game:GetService("Debris"):AddItem(prt, 2)
558
			local xval = math.random() / 2
559
			local yval = math.random() / 2
560
			local zval = math.random() / 2
561
			local msh = CFuncs["Mesh"].Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
562
			table.insert(Effects, {
563
				prt,
564
				"Elec",
565
				0.1,
566
				x,
567
				y,
568
				z,
569
				xval,
570
				yval,
571
				zval
572
			})
573
		end;
574
575
	};
576
	
577
	["Ring"] = {
578
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
579
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
580
			prt.Anchored = true
581
			prt.CFrame = cframe
582
			local msh = CFuncs["Mesh"].Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
583
			game:GetService("Debris"):AddItem(prt, 10)
584
			table.insert(Effects, {
585
				prt,
586
				"Cylinder",
587
				delay,
588
				x3,
589
				y3,
590
				z3,
591
				msh
592
			})
593
		end;
594
	};
595
596
597
	["Wave"] = {
598
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
599
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
600
			prt.Anchored = true
601
			prt.CFrame = cframe
602
			local msh = CFuncs["Mesh"].Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
603
			game:GetService("Debris"):AddItem(prt, 10)
604
			table.insert(Effects, {
605
				prt,
606
				"Cylinder",
607
				delay,
608
				x3,
609
				y3,
610
				z3,
611
				msh
612
			})
613
		end;
614
	};
615
616
	["Break"] = {
617
		Create = function(brickcolor, cframe, x1, y1, z1)
618
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
619
			prt.Anchored = true
620
			prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
621
			local msh = CFuncs["Mesh"].Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
622
			local num = math.random(10, 50) / 1000
623
			game:GetService("Debris"):AddItem(prt, 10)
624
			table.insert(Effects, {
625
				prt,
626
				"Shatter",
627
				num,
628
				prt.CFrame,
629
				math.random() - math.random(),
630
				0,
631
				math.random(50, 100) / 100
632
			})
633
		end;
634
	};
635
}
636
637
Shoot2 = function(orgpos)
638
	local MouseLook = CFrame.new((orgpos + mouse.Hit.p) / 2, mouse.Hit.p)
639
	Effects["Sphere"].Create(BrickColor.new("White"), CFrame.new(orgpos), 5, 5, 5, 3, 3, 3, 0.1)
640
	table.insert(Effects, {
641
		MouseLook.lookVector,
642
		"Shoot2",
643
		50,
644
		orgpos,
645
		5,
646
		7,
647
		0,
648
		1,
649
		2
650
	})
651
end
652
653
function bulletstorm()
654
	attack = true
655
	CFuncs["Sound"].Create("rbxassetid://539881968", Torso, 1, 1) 
656
	text.Text = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
657
wait(1.5)
658
	for i = 0, 1, 0.025 do
659
		swait()
660
		PlayAnimationFromTable({
661
			CFrame.new(-0, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
662
			CFrame.new(0, 1.4999907, 3.42726707e-007, 1, 0, 0, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
663
			CFrame.new(0.431798398, 0.400000006, -0.888215482, 0.939692736, 0.342019886, 0, 0, 0, -1, -0.342019916, 0.939692736, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
664
			CFrame.new(-0.559965074, 0.300000012, -0.828456283, 0.939692736, -0.342019886, 0, 0, 0, -1, 0.342019916, 0.939692736, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
665
			CFrame.new(0.599619746, -1.99127948, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
666-
howtobasic1 = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
666+
667
		}, .3, false)
668
	CFuncs["Sound"].Create("rbxassetid://539882114", Torso, 1, 1) 
669-
howtobasic2 = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
669+
670
Shoot2(Barrel.Position)
671
	text.Text = "DOGE DUDEY"
672-
howtobasic3 = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
672+
673
674
	attack = false
675-
howtobasic = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
675+
676
677
function overload()
678
	attack = true
679
	CFuncs["Sound"].Create("rbxassetid://159257147", Torso, 1, 1)
680
	text.Text = "AAAAAAAAAAAA"
681
Shoot2(LeftArm.Position)
682
Shoot2(RightArm.Position)
683
Shoot2(RightLeg.Position)
684
Shoot2(LeftLeg.Position)
685
Shoot2(Head.Position)
686
Shoot2(Torso.Position)
687
wait(0)
688
	attack = false
689
	text.Text = "idiot with an inverted Doge"
690
end
691
692
function overcharge()
693
        attack = true
694
	text.Text = "AAAAAAAAAAAA"
695
        CFuncs["Sound"].Create("rbxassetid://159257147", Torso, 1, 1)
696
	for i = 0, 1, 0.15 do
697
		swait()
698
		PlayAnimationFromTable({
699
			CFrame.new(-0.0325974114, -4.05311584e-006, 0.110728048, 0.64278698, 0, -0.766044974, 0, 1, 0, 0.766044974, 0, 0.64278698),
700
			CFrame.new(0, 1.50000095, 0, 0.64278698, 0, 0.766044974, 0, 1, 0, -0.766044974, 0, 0.64278698),
701
			CFrame.new(1.10100186, 0.535800219, -0.637803555, 0.658456147, 0.673041463, 0.336824596, 0.280167073, 0.196174845, -0.939692438, -0.698528469, 0.713113427, -0.0593915135),
702
			CFrame.new(-1.62758517, 0.073027119, -0.378663093, 0.90510416, 0.321394593, -0.278374165, -0.392632991, 0.883023262, -0.25711751, 0.163174719, 0.342016995, 0.92541796),
703
			CFrame.new(0.644929826, -1.96549833, 0.164695352, 0.962249994, -0.148305506, 0.228211343, 0.0871559754, 0.962249756, 0.257835865, -0.257834762, -0.22821258, 0.938850582),
704
			CFrame.new(-0.750219464, -1.99537396, -0.240616962, 0.862504363, 0.0818999186, 0.499378443, -0.08583197, 0.99619472, -0.0151344473, -0.498717606, -0.0298091136, 0.866251826),
705
		}, .5, false)
706
	end
707
wait(3)
708
Shoot2(Barrel.Position)
709
Shoot2(Barrel.Position)
710
Shoot2(Handle.Position)
711
Shoot2(Handle.Position)
712
Shoot2(FakeHandle.Position)
713
Shoot2(FakeHandle.Position)
714
Shoot2(Barrel.Position)
715
Shoot2(Barrel.Position)
716
Shoot2(Handle.Position)
717
Shoot2(Handle.Position)
718
Shoot2(FakeHandle.Position)
719
Shoot2(FakeHandle.Position)
720
Shoot2(Barrel.Position)
721
Shoot2(Barrel.Position)
722
Shoot2(Handle.Position)
723
Shoot2(Handle.Position)
724
Shoot2(FakeHandle.Position)
725
Shoot2(FakeHandle.Position)
726
Shoot2(Barrel.Position)
727
Shoot2(Barrel.Position)
728
Shoot2(Handle.Position)
729
Shoot2(Handle.Position)
730
Shoot2(FakeHandle.Position)
731
Shoot2(FakeHandle.Position)
732
	for i = 0, 1, 0.15 do
733
		swait()
734
		PlayAnimationFromTable({
735
         CFrame.new(2.70828605e-006, -0.356254776, -0.071654655, 0.499999046, -1.78813579e-007, -0.866026044, 0.150384009, 0.984807789, 0.0868238211, 0.852869093, -0.173648283, 0.492402941),
736
         CFrame.new(4.34633694e-006, 1.49999607, 2.42484384e-006, 0.646143615, 0.0549410731, 0.761235893, -0.0851004422, 0.996372402, 0.000322267413, -0.758456767, -0.0649897307, 0.648474991),
737
         CFrame.new(1.86507177, 0.598104239, 0.183552518, -0.114682339, -0.981059372, -0.156110525, 0.981060445, -0.0871559381, -0.172987223, 0.156104773, -0.172992408, 0.9724738),
738
         CFrame.new(-1.52644157, 0.0874626189, -0.302744657, 0.95125103, 0.20658794, -0.229004204, -0.254887104, 0.944645047, -0.2065873, 0.173649222, 0.254886597, 0.951251268),
739
         CFrame.new(0.623469114, -1.90178788, 0.0298061967, 0.992532074, -0.0928985924, 0.079056859, 0.0757590532, 0.97739321, 0.197391063, -0.0956070125, -0.189927697, 0.977131963),
740
         CFrame.new(-0.786503196, -1.67652178, -0.389780819, 0.631277382, 0.179900557, 0.754403591, -0.0723632798, 0.982144117, -0.173656344, -0.772174001, 0.0550341941, 0.6330235),
741
		}, .35, false)
742
	text.Text = "idiot with a ShotGun"
743
end
744
attack = false
745
end
746
747
function attackone()
748
	attack = true
749
	text.Text = "SHOTGUN POWERRRRR!!!3"
750
751
howtobasic1 = Instance.new("Sound", owner.Torso)
752
howtobasic1.Volume = 45
753
howtobasic1.SoundId = "rbxassetid://539882069"
754
howtobasic2 = Instance.new("Sound", owner.Torso)
755
howtobasic2.Volume = 45
756
howtobasic2.SoundId = "rbxassetid://175678956"
757
howtobasic3 = Instance.new("Sound", owner.Torso)
758
howtobasic3.Volume = 45
759
howtobasic3.SoundId = "rbxassetid://539882114"
760
howtobasic = Instance.new("Sound", owner.Torso)
761
howtobasic.Volume = 45
762
howtobasic.SoundId = "rbxassetid://175678956"
763
764
local Math = math.random(1,4)
765
		if Math == 1 then
766
			howtobasic:Play()
767
		end
768
		if Math == 2 then
769
			howtobasic1:Play()
770
		end
771
		if Math == 3 then
772
			howtobasic2:Play()
773
		end
774
		if Math == 4 then
775
			howtobasic3:Play()
776
		end
777
	for i = 0, 1, 0.025 do
778
		swait()
779
		PlayAnimationFromTable({
780
			CFrame.new(-0, -0, -0, 1, 0, 0, 1, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
781
			CFrame.new(0, 1.4999907, 3.42726707e-007, 1, 0, 0, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
782
			CFrame.new(0.431798398, 0.400000006, -0.888215482, 0.939692736, 0.342019886, 0, 0, 0, -1, -0.342019916, 0.939692736, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
783
			CFrame.new(-0.559965074, 0.300000012, -0.828456283, 0.939692736, -0.342019886, 0, 0, 0, -1, 0.342019916, 0.939692736, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
784
			CFrame.new(0.599619746, -1.99127948, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
785
			CFrame.new(-0.599619746, -1.99127901, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661, 0, -0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
786
		}, .3, false)
787
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-20), math.rad(0)), 0.3)
788
	end
789
	CFuncs["Sound"].Create("rbxassetid://145799973", Barrel, 5, 1)
790
	text.Text = "SOME IDIOT WITH A DOGE"
791
	Shoot2(Barrel.Position)
792
	for i = 0, 1, 0.15 do
793
		swait()
794
		RootPart.Velocity = RootPart.CFrame.lookVector * -50
795
		PlayAnimationFromTable({
796
			CFrame.new(-0, -0.281125277, 0.157014638, 1, 0, -0, 0, 0.906307876, -0.422617942, 0, 0.422617942, 0.906307876) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
797
			CFrame.new(0, 1.4999938, 1.05202198e-005, 1, 0, -0, 0, 0.965925813, 0.258818924, -0, -0.258818924, 0.965925813) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
798
			CFrame.new(0.406597674, 0.817824185, -0.957423151, 0.939692974, 0.280165672, -0.196174338, -5.36441803e-007, -0.573575616, -0.819152534, -0.34201926, 0.769751906, -0.538984895) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
799
			CFrame.new(-0.506752789, 0.775180221, -0.974653006, 0.939692974, -0.280165732, 0.196174279, 5.36441803e-007, -0.573575556, -0.819152713, 0.34201926, 0.769752145, -0.538984716) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
800
			CFrame.new(0.566868722, -1.61683154, -0.13679418, 0.954536259, -0.174988821, -0.241328761, 0.172366679, 0.984509468, -0.0321052969, 0.243208498, -0.0109513998, 0.969912171) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
801
			CFrame.new(-0.545306504, -1.37044179, -0.679420352, 0.996202111, 0.0754783303, 0.0434113704, -0.0434117466, 0.862729907, -0.503797948, -0.0754781216, 0.49999994, 0.862729967) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
802
		}, .6, false)
803
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-30), math.rad(-20), math.rad(0)), 0.3)
804
	end
805
	for i = 0, 1, 0.15 do
806
		swait()
807
		RootPart.Velocity = RootPart.CFrame.lookVector * -100
808
		PlayAnimationFromTable({
809
			CFrame.new(-0, -0.795007467, 0.0831707418, 1, 0, -0, 0, 0.76604414, -0.642788053, 0, 0.642788053, 0.76604414) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
810
			CFrame.new(0, 1.49999774, 1.20103359e-005, 1, 0, -0, 0, 0.965925634, 0.258819878, -0, -0.258819878, 0.965925634) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
811
			CFrame.new(1.70605683, 1.21151328, -0.185158521, 0.893217862, -0.29338178, -0.340718448, -0.340719074, -0.936116338, -0.0871595442, -0.293381065, 0.193941653, -0.936116695) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
812
			CFrame.new(-1.69524968, 1.05172348, -0.252849877, 0.812758088, 0.493294626, 0.309975445, 0.582562625, -0.694268882, -0.422624737, 0.00672781467, 0.524071693, -0.851647615) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
813
			CFrame.new(0.689150453, -1.88461804, -0.0157705098, 0.954536736, -0.174989104, -0.241326213, 0.172367141, 0.984509468, -0.0321044922, 0.243205875, -0.0109517872, 0.969912887) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
814
			CFrame.new(-0.536899447, -1.34506011, -0.583059072, 0.99620223, 0.0226762109, 0.0840658173, -0.043412663, 0.966281295, 0.253803402, -0.0754759163, -0.256489068, 0.963595748) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
815
		}, .2, false)
816
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3)
817
	end
818
	for i = 0, 1, 0.05 do
819
		swait()
820
		RootPart.Velocity = RootPart.CFrame.lookVector * -50
821
		PlayAnimationFromTable({
822
			CFrame.new(-0, -2.09708667, 0.108620644, 1, 0, -0, 0, 0.573575675, -0.819152594, 0, 0.819152594, 0.573575675) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
823
			CFrame.new(0, 1.53697455, -0.422635257, 1, 0, -0, 0, 0.766043842, 0.64278841, -0, -0.64278841, 0.766043842) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
824
			CFrame.new(1.57810855, 0.650130272, 0.33058399, 0.930655897, -0.284022599, -0.230674848, 0.352510452, 0.527023435, 0.773293555, -0.0980618149, -0.800985396, 0.590598404) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
825
			CFrame.new(-1.38994181, 0.87733829, 0.667137444, 0.963715255, 0.08906921, 0.251633942, -0.25866431, 0.0788001418, 0.962747812, 0.0659223944, -0.992903471, 0.0989798903) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
826
			CFrame.new(0.774198592, -1.52057803, -0.607582211, 0.954536974, -0.272207022, -0.121501081, 0.172365844, 0.83655864, -0.520057499, 0.243206039, 0.475471497, 0.845445395) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
827
			CFrame.new(-0.530096769, -1.05517173, -0.660005629, 0.99620223, 0.0226761587, 0.0840661526, -0.0434127897, 0.966280818, 0.253804684, -0.0754762068, -0.256490231, 0.96359539) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
828
		}, .3, false)
829
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-60), math.rad(0)), 0.3)
830
	end
831
	for i = 0, 1, 0.13 do
832
		swait()
833
		PlayAnimationFromTable({
834
			CFrame.new(-0, -1.01349139, -0.251608461, 1, 0, 0, 0, 0.707105339, 0.707108378, 0, -0.707108378, 0.707105339) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
835
			CFrame.new(0.0127754211, 1.44207788, 0.0749337673, 1, 0, 0, 0, 0.939691544, -0.342023343, 0, 0.342023343, 0.939691544) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
836
			CFrame.new(1.62296665, 0.191783041, -0.192457974, 0.930656254, -0.329096794, 0.159920022, 0.352511466, 0.923570275, -0.150843769, -0.098055169, 0.196757287, 0.975536823) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
837
			CFrame.new(-0.870643735, 0.71258086, -0.942903101, 0.18127799, -0.372358024, -0.910213113, -0.781424284, 0.507405519, -0.363202393, 0.597088516, 0.777103186, -0.19898814) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
838
			CFrame.new(0.214147568, -1.73508716, -0.0895051956, 0.924306214, 0.282332808, -0.256800473, -0.113861978, 0.846218646, 0.520528436, 0.364271581, -0.451887846, 0.814311981) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
839
			CFrame.new(-0.535767198, -0.599929333, -0.996632636, 0.996202111, 0.0754788443, 0.0434101112, -0.0434126705, 0.862728953, -0.503799856, -0.0754773915, 0.500001788, 0.862729192) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
840
		}, .3, false)
841
	end
842
	attack = false
843
end
844
845
--[[Attacks]]--
846
847
mouse.Button1Down:connect(function()
848
	if attack == false and attacktype == 1 then
849
		attackone()
850
	end
851
end)
852
853
854
mouse.KeyDown:connect(function(k)
855
	k = k:lower()
856
	if attack == false and k == 'q' then
857
	  bulletstorm()
858
	elseif attack == false and k == 'e' then
859
          overload()
860
        elseif attack == false and k == 'r' then
861
          overcharge()
862
      end
863
end)
864
865
while true do
866
	swait()
867
	for i, v in pairs(Character:GetChildren()) do
868
		if v:IsA("Part") then
869
			v.Material = "SmoothPlastic"
870
		elseif v:IsA("Accessory") then
871
			v:WaitForChild("Handle").Material = "SmoothPlastic"
872
		end
873
	end
874
	Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
875
	velocity = RootPart.Velocity.y
876
	sine = sine + change
877
	local hit, pos = rayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
878
	if equipped == true or equipped == false then
879
		if RootPart.Velocity.y > 1 and hit == nil then 
880
			Anim = "Jump"
881
			if attack == false then
882
				PlayAnimationFromTable({
883
					CFrame.new(-0, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
884
					CFrame.new(0, 1.49221826, -0.044082582, 1, 0, 0, 0, 0.984807849, 0.173647985, 0, -0.173647985, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
885
					CFrame.new(1.66304386, 0.182627335, 0.00782334805, 0.883022726, -0.392632574, 0.257119894, 0.321392894, 0.905103981, 0.2783764, -0.342019886, -0.163176134, 0.925416708) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
886
					CFrame.new(-1.66570556, 0.224230319, 0.110721856, 0.903736115, 0.408218145, -0.128915116, -0.34750703, 0.875426054, 0.33595863, 0.25000003, -0.258819014, 0.933012724) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
887
					CFrame.new(0.499999166, -1.99999452, 4.76837158e-007, 0.984807849, -5.94328526e-007, -0.173648044, 0.0449439958, 0.965925872, 0.254886925, 0.167730987, -0.258819073, 0.951251388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
888
					CFrame.new(-0.499999404, -1.51703107, -0.129407585, 0.965925753, 6.6929374e-007, 0.258819193, -0.0669879839, 0.965925813, 0.24999994, -0.24999994, -0.258819163, 0.933012724) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
889
				}, .3, false)
890
			end
891
		elseif RootPart.Velocity.y < -60 and hit == nil then 
892
			Anim = "Fall"
893
			if attack == false then
894
				PlayAnimationFromTable({
895
					CFrame.new(-0, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
896
					CFrame.new(0, 1.49221873, -0.0440826714, 1, 0, 0, 0, 0.984807849, 0.173647985, 0, -0.173647985, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
897
					CFrame.new(1.76076102, 0.406842887, 0.0212866664, 0.695482016, -0.670965135, 0.257119834, 0.611573994, 0.74059701, 0.278376371, -0.377202988, -0.0363579579, 0.925416648) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
898
					CFrame.new(-1.68029141, 0.390803367, 0.155905366, 0.70961535, 0.692695498, -0.128914997, -0.625963271, 0.703777075, 0.335958213, 0.323444158, -0.157705069, 0.933012843) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
899
					CFrame.new(0.693307817, -1.96826017, -0.0605875254, 0.986561239, -0.127662987, -0.101976946, 0.137943029, 0.985269904, 0.101069227, 0.0875720233, -0.113777988, 0.989639223) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
900
					CFrame.new(-0.526552737, -1.81498528, -0.152177691, 0.965925574, 0.0449441113, 0.254888207, -0.066988036, 0.994663239, 0.0784704387, -0.250001162, -0.0928710476, 0.963781357) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
901
				}, .3, false)
902
			end
903
		elseif Torsovelocity < 1 and hit ~= nil then
904
			Anim = "Idle"
905
			if attack == false then
906
				change = 1
907
				PlayAnimationFromTable({
908
					CFrame.new(1.22602091e-006, -0.219458103, 1.46111324e-006, 0.76604414, 0, 0.642788053, 0, 1, 0, -0.642788053, 0, 0.76604414) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
909
					CFrame.new(0, 1.49999201, 0, 0.707106233, 0, -0.707107306, 0, 1, 0, 0.707107306, 0, 0.707106233) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
910
					CFrame.new(0.571566343, -0.0739164352, -0.639066696, 0.939692855, 0.340718329, -0.0298085809, -0.241844058, 0.600305915, -0.762328327, -0.241844922, 0.723563433, 0.646503866) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
911
					CFrame.new(-0.628383756, -0.12163578, -0.696761668, 0.939692736, -0.342020065, -5.06639481e-007, 0.196173996, 0.538984895, -0.819152653, 0.280166954, 0.769751549, 0.573575616) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
912
					CFrame.new(0.624118924, -1.79798961, 0.0678238794, 0.995454907, -0.0383867361, -0.0871553123, 0.0385330059, 0.999257326, -4.09960694e-006, 0.0870907605, -0.00335427374, 0.996194839) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
913
					CFrame.new(-0.53866595, -1.82180798, 0.00821807235, 0.977763176, 0.0281341001, 0.207816422, -0.0287620034, 0.999586344, -1.4934686e-007, -0.207730502, -0.00597707182, 0.978167892) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
914
				}, .3, false)
915
				FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-20), math.rad(0)), 0.3)
916
			end
917
		elseif Torsovelocity > 2 and hit ~= nil then
918
			Anim = "Walk"
919
			if attack == false then
920
				change = 3
921
				PlayAnimationFromTable({
922
					CFrame.new(0, -0.0240751095, -0.146390602, 1, 0, 0, 0, 0.965925872, 0.258818984, 0, -0.258818984, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
923
					CFrame.new(0, 1.49999237, -1.81794167e-006, 1, 0, 0, 0, 0.984807789, -0.173647881, 0, 0.173647881, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
924
					CFrame.new(0.172261134, 0.427689523, -1.09730911, 0.644483984, 0.748984814, -0.153825179, 0.413525045, -0.510645986, -0.753815472, -0.643146515, 0.422211438, -0.638827145) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
925
					CFrame.new(-1.1922102, 0.363029838, -0.448653877, 0.935289383, -0.110854559, -0.33607316, -0.341521561, -0.531564534, -0.775114357, -0.0927196145, 0.839732468, -0.535025835) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
926
					CFrame.new(.5, -1.85 - 0.5 * math.cos(sine / 8) / 2, 0 + 1.8 *  math.sin(sine / 8) / 2) * angles(math.rad(-50 *  math.sin(sine / 8)), math.rad(0), math.rad(0)),
927
					CFrame.new(-.5, -1.85 + 0.5 * math.cos(sine / 8) / 2, 0 - 1.8 * math.sin(sine / 8) / 2) * angles(math.rad(50 *  math.sin(sine / 8)), math.rad(0), math.rad(0)),
928
				}, .3, false)
929
				FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-30), math.rad(0)), 0.3)
930
			end
931
		end
932
	end
933
	if 0 < #Effects then
934
		for e = 1, #Effects do
935
			if Effects[e] ~= nil then
936
				local Thing = Effects[e]
937
				if Thing ~= nil then
938
					local Part = Thing[1]
939
					local Mode = Thing[2]
940
					local Delay = Thing[3]
941
					local IncX = Thing[4]
942
					local IncY = Thing[5]
943
					local IncZ = Thing[6]
944
					if Thing[2] == "Shoot" then
945
						local Look = Thing[1]
946
						local hit, pos = rayCast(Thing[4], Look, 15, Character)
947
						local mag = (Thing[4] - pos).magnitude
948
						Thing[9] = Thing[9] + 0.5
949
						Thing[5] = Thing[5] + 0.2
950
						Thing[6] = Thing[6] + 0.2
951
						Effects["Cylinder"].Create(BrickColor.new("White"), CFrame.new((Thing[4] + pos) / 2, pos) * angles(1.57, 0, 0), Thing[9], mag * 5, Thing[9], -0.2, 0, -0.2, 0.1)
952
						Thing[4] = Thing[4] + Look * 15
953
						Thing[3] = Thing[3] - 1
954
						if hit ~= nil then
955
							Thing[3] = 0
956
							ref = CFuncs["Part"].Create(workspace, "Neon", 0, 1, BrickColor.new("White"), "Reference", Vector3.new())
957
							ref.Anchored = true
958
							ref.CFrame = CFrame.new(pos)
959
							Effects["Sphere"].Create(BrickColor.new("Bright yellow"), CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
960
							CFuncs["Sound"].Create("rbxassetid://539881968", ref, 0.1, 1)
961
							game:GetService("Debris"):AddItem(ref, 10)
962
						end
963
						if Thing[3] <= 0 then
964
							table.remove(Effects, e)
965
						end
966
					end
967
					do
968
						if Thing[2] == "Shoot2" then
969
							local Look = Thing[1]
970
							local hit, pos = rayCast(Thing[4], Look, 3, Character)
971
							local mag = (Thing[4] - pos).magnitude
972
							Thing[9] = Thing[9] + 0.5
973
							Thing[5] = Thing[5] + 0.2
974
							Thing[6] = Thing[6] + 0.2
975
							Effects["Sphere"].Create(BrickColor.new("Bright yellow"), CFrame.new((Thing[4] + pos) / 2, pos), 25, 25, 25, -5, -5, -5, 0.2)
976
							Thing[4] = Thing[4] + Look * 3
977
							Thing[3] = Thing[3] + 5
978
							if hit ~= nil then
979
								Thing[3] = 0
980
								ref = CFuncs["Part"].Create(workspace, "Neon", 0, 1, BrickColor.new("White"), "Reference", Vector3.new())
981
								ref.Anchored = true
982
								ref.CFrame = CFrame.new(pos)
983
								Effects["Sphere"].Create(BrickColor.new("Really yellow"), CFrame.new(pos), 25, 25, 25, 5, 5, 5, 0.01)
984
								Effects["Sphere"].Create(BrickColor.new("Bright yellow"), CFrame.new(pos), 10, 10, 10, 15, 15, 15, 0.01)
985
								Effects["Block"].Create(BrickColor.new("White"), CFrame.new(pos), 10, 10, 10, 15, 15, 15, 0.01, 1)
986
								Effects["Wave"].Create(BrickColor.new("Really red"), CFrame.new(pos), 2, 2, 2, 3, 3, 3, 0.01)
987
								CFuncs["Sound"].Create("rbxassetid://151778863", ref, 1, 1)
988
								CFuncs["Sound"].Create("rbxassetid://151778863", Sphere, 0.5, 1)
989
								CFuncs["Sound"].Create("rbxassetid://151778863", Sphere, 0.1, 1)
990
								local e = Instance.new("Explosion", ref)
991
								e.Position = ref.Position
992
								e.BlastRadius = 400
993
								e.DestroyJointRadiusPercent = 400
994
								e.Visible = false
995
								e.ExplosionType = "CratersAndDebris"
996
								game:GetService("Debris"):AddItem(ref, 2)
997
							end
998
							if Thing[3] <= 0 then
999
								table.remove(Effects, e)
1000
							end
1001
						end
1002
						do
1003
							do
1004
								if Thing[2] ~= "Shoot" and Thing[2] ~= "DecreaseStat" and Thing[2] ~= "showDamage" and Thing[2] ~= "Shoot2" then
1005
									if Thing[1].Transparency <= 1 then
1006
										if Thing[2] == "Block1" then
1007
											Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1008
											Mesh = Thing[7]
1009
											Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1010
											Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1011
										else
1012
											if Thing[2] == "Block2" then
1013
												Thing[1].CFrame = Thing[1].CFrame
1014
												Mesh = Thing[7]
1015
												Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1016
												Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1017
											else
1018
												if Thing[2] == "Block3" then
1019
													Thing[8].C0 = CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) * Thing[9]
1020
													Mesh = Thing[7]
1021
													Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1022
													Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1023
												else
1024
													if Thing[2] == "Cylinder" then
1025
														Mesh = Thing[7]
1026
														Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1027
														Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1028
													else
1029
														if Thing[2] == "Cylinder2" then
1030
															Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, Thing[8], 0)
1031
															Mesh = Thing[7]
1032
															Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1033
															Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1034
														else
1035
															if Thing[2] == "Blood" then
1036
																Mesh = Thing[7]
1037
																Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
1038
																Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1039
																Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1040
															else
1041
																if Thing[2] == "Elec" then
1042
																	Mesh = Thing[10]
1043
																	Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
1044
																	Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1045
																else
1046
																	if Thing[2] == "Disappear" then
1047
																		Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1048
																	end
1049
																end
1050
															end
1051
														end
1052
													end
1053
												end
1054
											end
1055
										end
1056
									else
1057
										Part.Parent = nil
1058
										table.remove(Effects, e)
1059
									end
1060
								end
1061
							end
1062
						end
1063
					end
1064
				end
1065
			end
1066
		end
1067
	end
1068
end