View difference between Paste ID: tRr9cbub and DAKZyP0e
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient()then error("say h/ not hl/ ya dummy")end;print("get rekt");InternalData = {}
2
do
3
    script.Parent = owner.Character
4
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
5
    local function NewFakeEvent()
6
        local Bind = Instance.new("BindableEvent")
7
        local Fake;Fake = {Connections = {},
8
        fakeEvent=true;
9
        Connect=function(self,Func)
10
            Bind.Event:connect(Func)
11
            self.Connections[Bind] = true
12
            return setmetatable({Connected = true},{
13
            __index = function (self,Index)
14
                if Index:lower() == "disconnect" then
15
                    return function() Fake.Connections[Bind] = false;self.Connected = false end
16
                end
17
                return Fake[Index]
18
            end;
19
            __tostring = function() return "Connection" end;
20
        })
21
        end}
22
        Fake.connect = Fake.Connect;return Fake;
23
    end
24
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
25
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
26
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
27
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
28
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
29
    local function TriggerEvent(self,Event,...)
30
        local Trigger = Mouse[Event]
31
        if Trigger and Trigger.fakeEvent and Trigger.Connections then
32
            for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
33
        end
34
    end
35
    Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
36
    Event.OnServerEvent:Connect(function(FiredBy,Input)
37
        if FiredBy.Name ~= owner.Name then return end
38
        if Input.MouseEvent then
39
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
40
        else
41
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
42
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
43
            for _,Action in pairs(ContextActionService.Actions) do
44
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
45
            end
46
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
47
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
48
        end
49
    end)
50
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
51
    Event.Parent = NLS([[
52
        local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
53
        local Input = function(Input,gameProcessedEvent)
54
            if gameProcessedEvent then return end
55
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
56
        end
57
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
58
        local Hit,Target
59
        while wait(1/30) do
60
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
61
                Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
62
            end
63
        end
64
    ]],owner.Character)
65
end
66
RealGame = game;game = setmetatable({},{
67
    __index = function (self,Index)
68
        local Sandbox = function (Thing)
69
            if Thing:IsA("Player") then
70
                local RealPlayer = Thing
71
                return setmetatable({},{
72
                    __index = function (self,Index)
73
                        local Type = type(RealPlayer[Index])
74
                        if Type == "function" then
75
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
76
                                return function (self)return InternalData["Mouse"] end
77
                            end
78
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
79
                        end
80
                        return RealPlayer[Index]
81
                    end;
82
                    __tostring = function(self) return RealPlayer.Name end
83
                })
84
            end
85
        end
86
        if RealGame[Index] then
87
            local Type = type(RealGame[Index])
88
            if Type == "function" then
89
                if Index:lower() == "getservice" or Index:lower() == "service" then
90
                    return function (self,Service)
91
                        local FakeServices = {
92
                            ["players"] = function()
93
                                return setmetatable({},{
94
                                    __index = function (self2,Index2)
95
                                        local RealService = RealGame:GetService(Service)
96
                                        local Type2 = type(Index2)
97
                                        if Type2 == "function" then
98
                                            return function (self,...) return RealService[Index2](RealService,...)end
99
                                        else
100
                                            if Index2:lower() == "localplayer" then return Sandbox(owner) end
101
                                            return RealService[Index2]
102
                                        end
103
                                    end;
104
                                    __tostring = function(self) return RealGame:GetService(Service).Name end
105
                                })
106
                            end;
107
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
108
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
109
                            ["runservice"] = function()
110
                                return setmetatable({},{
111
                                    __index = function(self2,Index2)
112
                                        local RealService = RealGame:GetService(Service)
113
                                        local Type2 = type(Index2)
114
                                        if Type2 == "function" then
115
                                            return function (self,...) return RealService[Index2](RealService,...) end
116
                                        else
117
                                            local RunServices = {
118
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
119
                                                ["renderstepped"] = function() return RealService["Stepped"] end
120
                                            }
121
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
122
                                            return RealService[Index2]
123
                                        end
124
                                    end
125
                                })
126
                            end
127
                        }
128
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
129
                        return RealGame:GetService(Service)
130
                    end
131
                end
132
                return function (self,...) return RealGame[Index](RealGame,...) end
133
            else
134
                if game:GetService(Index) then return game:GetService(Index) end
135
                return RealGame[Index]
136
            end
137
        end
138
        return nil
139
    end
140
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("running the script noob")
141
142
143
CV="White"
144
145
	p = game.Players.LocalPlayer
146
	char = p.Character
147
	local txt = Instance.new("BillboardGui", char)
148
	txt.Adornee = char .Head
149
	txt.Name = "_status"
150
	txt.Size = UDim2.new(2, 0, 1.2, 0)
151
	txt.StudsOffset = Vector3.new(-9, 8, 0)
152
	local text = Instance.new("TextLabel", txt)
153
	text.Size = UDim2.new(10, 0, 7, 0)
154
	text.FontSize = "Size24"
155
	text.TextScaled = true
156
	text.TextTransparency = 0
157
	text.BackgroundTransparency = 1 
158
	text.TextTransparency = 0
159
	text.TextStrokeTransparency = 1
160
	text.Font = "Arcade"
161
	text.TextStrokeColor3 = Color3.new(0,0,255)
162
163
	v=Instance.new("Part")
164
	v.Name = "ColorBrick"
165
	v.Parent=p.Character
166
	v.FormFactor="Symmetric"
167
	v.Anchored=true
168
	v.CanCollide=false
169
	v.BottomSurface="Smooth"
170
	v.TopSurface="Smooth"
171
	v.Size=Vector3.new(10,5,3)
172
	v.Transparency=1
173
	v.CFrame=char.Torso.CFrame
174
	v.BrickColor=BrickColor.new(CV)
175
	v.Transparency=1
176
	text.TextColor3 = Color3.new(255,255,0)
177
	v.Shape="Block"
178
	text.Text = "JOJO BIZZARE ADVENTURE GUN"
179
wait(1 / 60)
180
Effects = { }
181
local Player = game.Players.localPlayer
182
local Character = Player.Character
183
local Humanoid = Character.Humanoid
184
local mouse = Player:GetMouse()
185
local m = Instance.new('Model', Character)
186
m.Name = "WeaponModel"
187
local LeftArm = Character["Left Arm"]
188
local RightArm = Character["Right Arm"]
189
local LeftLeg = Character["Left Leg"]
190
local RightLeg = Character["Right Leg"]
191
local Head = Character.Head
192
local Torso = Character.Torso
193
local cam = game.Workspace.CurrentCamera
194
local RootPart = Character.HumanoidRootPart
195
local RootJoint = RootPart.RootJoint
196
local equipped = false
197
local attack = false
198
local Anim = 'Idle'
199
local idle = 0
200
local attacktype = 1
201
local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
202
local velocity = RootPart.Velocity.y
203
local sine = 0
204
local change = 1
205
local grabbed = false
206
local cn = CFrame.new
207
local mr = math.rad
208
local angles = CFrame.Angles
209
local ud = UDim2.new
210
local c3 = Color3.new
211
Instance.new("ForceField", game.Players.LocalPlayer.Character)
212
	local s = Instance.new("Sound",Character)
213
	s.Name = "BGMusic"
214
	s.SoundId = "rbxassetid://519992991"
215
	s.Pitch = 1
216
	s.Volume = 0.25
217
	s.Looped = true
218
	s.archivable = false
219
	wait(0.1)
220
	s:play()
221
222
Humanoid.Animator.Parent = nil
223
Character.Animate.Parent = nil
224
225
local newMotor = function(part0, part1, c0, c1)
226
	local w = Instance.new('Motor', part0)
227
	w.Part0 = part0
228
	w.Part1 = part1
229
	w.C0 = c0
230
	w.C1 = c1
231
	return w
232
end
233
234
function clerp(a, b, t)
235
	return a:lerp(b, t)
236
end
237
238
RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
239
NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
240
241
local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0)) 
242
local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
243
local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0))
244
local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0))
245
RootJoint.C1 = CFrame.new(0, 0, 0)
246
RootJoint.C0 = CFrame.new(0, 0, 0)
247
Torso.Neck.C1 = CFrame.new(0, 0, 0)
248
Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
249
250
local rarmc1 = RW.C1
251
local larmc1 = LW.C1
252
local rlegc1 = RH.C1
253
local llegc1 = LH.C1
254
255
local resetc1 = false
256
257
function PlayAnimationFromTable(table, speed, bool)
258
	RootJoint.C0 = clerp(RootJoint.C0, table[1], speed) 
259
	Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed) 
260
	RW.C0 = clerp(RW.C0, table[3], speed) 
261
	LW.C0 = clerp(LW.C0, table[4], speed) 
262
	RH.C0 = clerp(RH.C0, table[5], speed) 
263
	LH.C0 = clerp(LH.C0, table[6], speed) 
264
	if bool == true then
265
		if resetc1 == false then
266
			resetc1 = true
267
			RootJoint.C1 = RootJoint.C1
268
			Torso.Neck.C1 = Torso.Neck.C1
269
			RW.C1 = rarmc1
270
			LW.C1 = larmc1
271
			RH.C1 = rlegc1
272
			LH.C1 = llegc1
273
		end
274
	end
275
end
276
277
Char = char
278
279
--[[Credits to SazErenos for his Artificial Heartbeat]]--
280
281
ArtificialHB = Instance.new("BindableEvent", script)
282
ArtificialHB.Name = "Heartbeat"
283
284
script:WaitForChild("Heartbeat")
285
286
frame = 1 / 30
287
tf = 0
288
allowframeloss = false
289
tossremainder = false
290
lastframe = tick()
291
script.Heartbeat:Fire()
292
293
game:GetService("RunService").Heartbeat:connect(function(s, p)
294
	tf = tf + s
295
	if tf >= frame then
296
		if allowframeloss then
297
			script.Heartbeat:Fire()
298
			lastframe = tick()
299
		else
300
			for i = 1, math.floor(tf / frame) do
301
				script.Heartbeat:Fire()
302
			end
303
			lastframe = tick()
304
		end
305
		if tossremainder then
306
			tf = 0
307
		else
308
			tf = tf - frame * math.floor(tf / frame)
309
		end
310
	end
311
end)
312
313
function swait(num)
314
	if num == 0 or num == nil then
315
		ArtificialHB.Event:wait()
316
	else
317
		for i = 0, num do
318
			ArtificialHB.Event:wait()
319
		end
320
	end
321
end
322
323
local RbxUtility = LoadLibrary("RbxUtility")
324
local Create = RbxUtility.Create
325
326
function RemoveOutlines(part)
327
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
328
end
329
	
330
CFuncs = {	
331
	["Part"] = {
332
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
333
			local Part = Create("Part"){
334
				Parent = Parent,
335
				Reflectance = Reflectance,
336
				Transparency = Transparency,
337
				CanCollide = false,
338
				Locked = true,
339
				BrickColor = BrickColor.new(tostring(BColor)),
340
				Name = Name,
341
				Size = Size,
342
				Material = Material,
343
			}
344
			RemoveOutlines(Part)
345
			return Part
346
		end;
347
	};
348
	
349
	["Mesh"] = {
350
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
351
			local Msh = Create(Mesh){
352
				Parent = Part,
353
				Offset = OffSet,
354
				Scale = Scale,
355
			}
356
			if Mesh == "SpecialMesh" then
357
				Msh.MeshType = MeshType
358
				Msh.MeshId = MeshId
359
			end
360
			return Msh
361
		end;
362
	};
363
	
364
	["Mesh"] = {
365
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
366
			local Msh = Create(Mesh){
367
				Parent = Part,
368
				Offset = OffSet,
369
				Scale = Scale,
370
			}
371
			if Mesh == "SpecialMesh" then
372
				Msh.MeshType = MeshType
373
				Msh.MeshId = MeshId
374
			end
375
			return Msh
376
		end;
377
	};
378
	
379
	["Weld"] = {
380
		Create = function(Parent, Part0, Part1, C0, C1)
381
			local Weld = Create("Weld"){
382
				Parent = Parent,
383
				Part0 = Part0,
384
				Part1 = Part1,
385
				C0 = C0,
386
				C1 = C1,
387
			}
388
			return Weld
389
		end;
390
	};
391
392
	["Sound"] = {
393
		Create = function(id, par, vol, pit) 
394
			coroutine.resume(coroutine.create(function()
395
				local S = Create("Sound"){
396
					Volume = vol,
397
					Pitch = pit or 1,
398
					SoundId = id,
399
					Parent = par or workspace,
400
				}
401
				Instance.new("DistortionSoundEffect", S).Level = 1
402
				wait() 
403
				S:play() 
404
				game:GetService("Debris"):AddItem(S, 10)
405
			end))
406
		end;
407
	};
408
	
409
	["ParticleEmitter"] = {
410
		Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
411
			local fp = Create("ParticleEmitter"){
412
				Parent = Parent,
413
				Color = ColorSequence.new(Color1, Color2),
414
				LightEmission = LightEmission,
415
				Size = Size,
416
				Texture = Texture,
417
				Transparency = Transparency,
418
				ZOffset = ZOffset,
419
				Acceleration = Accel,
420
				Drag = Drag,
421
				LockedToPart = LockedToPart,
422
				VelocityInheritance = VelocityInheritance,
423
				EmissionDirection = EmissionDirection,
424
				Enabled = Enabled,
425
				Lifetime = LifeTime,
426
				Rate = Rate,
427
				Rotation = Rotation,
428
				RotSpeed = RotSpeed,
429
				Speed = Speed,
430
				VelocitySpread = VelocitySpread,
431
			}
432
			return fp
433
		end;
434
	};
435
}
436
437
function rayCast(Position, Direction, Range, Ignore)
438
	return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) 
439
end 
440
441
local function GetNearest(obj, distance)
442
	local last, lastx = distance + 1
443
	for i, v in pairs(workspace:GetChildren()) do
444
		if v:IsA'Model' and v ~= Character and v:findFirstChild('Humanoid') and v:findFirstChild('Torso') and v:findFirstChild('Humanoid').Health > 0 then
445
			local t = v.Torso
446
			local dist = (t.Position - obj.Position).magnitude
447
			if dist <= distance then
448
				if dist < last then
449
					last = dist
450
					lastx = v
451
				end
452
			end
453
		end
454
	end
455
	return lastx
456
end
457
458
--[[ Credits to Kert109 (Ninja_Deer) for the Damage function. Fenrier for the Magnitude Damage ]]--
459
460
function Damage(hit, damage, cooldown, Color1, Color2, HSound, HPitch)
461
	for i, v in pairs(hit:GetChildren()) do 
462
		if v:IsA("Humanoid") and hit.Name ~= Character.Name then
463
			local find = v:FindFirstChild("DebounceHit")
464
			if not find then
465
				if v.Parent:findFirstChild("Head") then
466
					local BillG = Create("BillboardGui"){
467
						Parent = v.Parent.Head,
468
						Size = UDim2.new(1, 0, 1, 0),
469
						Adornee = v.Parent.Head,
470
						StudsOffset = Vector3.new(math.random(-3, 3), math.random(3, 5), math.random(-3, 3)),
471
					}
472
					local TL = Create("TextLabel"){
473
						Parent = BillG,
474
						Size = UDim2.new(3, 3, 3, 3),
475
						BackgroundTransparency = 1,
476
						Text = tostring(damage).."-",
477
						TextColor3 = Color1.Color,
478
						TextStrokeColor3 = Color2.Color,
479
						TextStrokeTransparency = 0,
480
						TextXAlignment = Enum.TextXAlignment.Center,
481
						TextYAlignment = Enum.TextYAlignment.Center,
482
						FontSize = Enum.FontSize.Size18,
483
						Font = "ArialBold",
484
					}
485
					coroutine.resume(coroutine.create(function()
486
						swait(1)
487
						for i = 0, 1, .1 do
488
							swait(.1)
489
							BillG.StudsOffset = BillG.StudsOffset + Vector3.new(0, .1, 0)
490
						end
491
						BillG:Destroy()
492
					end))
493
				end
494
				v.Health = v.Health - damage
495
				local bool = Create("BoolValue"){
496
					Parent = v,
497
					Name = "DebounceHit",
498
				}
499
				if HSound ~= nil and HPitch ~= nil then
500
					CFuncs["Sound"].Create(HSound, hit, 1, HPitch) 
501
				end
502
				game:GetService("Debris"):AddItem(bool, cooldown)
503
			end
504
		end
505
	end
506
end
507
508
function MagnitudeDamage(Part, magni, mindam, maxdam, Color1, Color2, HSound, HPitch)
509
	for _, c in pairs(workspace:children()) do
510
		local hum = c:findFirstChild("Humanoid")
511
		if hum ~= nil then
512
			local head = c:findFirstChild("Torso")
513
			if head ~= nil then
514
				local targ = head.Position - Part.Position
515
				local mag = targ.magnitude
516
				if mag <= magni and c.Name ~= Player.Name then 
517
					Damage(head.Parent, math.random(mindam, maxdam), 0.5, Color1, Color2, HSound, HPitch)
518
				end
519
			end
520
		end
521
	end
522
end
523
524
Handle = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "Handle", Vector3.new(-0.399999946, 0.899999976, -0.400000095))
525
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))
526
FakeHandle = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "FakeHandle", Vector3.new(0.399999946, 0.899999976, 0.400000095))
527
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))
528
Barrel = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "Barrel", Vector3.new(0.399999946, 0.399999976, 0.400000095))
529
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))
530
Part = CFuncs["Part"].Create(m, Enum.Material.SmoothPlastic, 0, 0, "Medium stone grey", "Part", Vector3.new(-0.399999946, 0.299999952, -0.400000095))
531
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))
532
CFuncs["Mesh"].Create("SpecialMesh", Part, Enum.MeshType.FileMesh, "rbxassetid://431951823", Vector3.new(0, 0, 0), Vector3.new(0.00200000009, 0.00700000007, 0.003000010))
533
Part.Mesh.TextureId = "rbxassetid://431951829"
534
Part.Mesh.Scale = Vector3.new(-0.2, 0.2, -0.2)
535
536
EffectModel = Instance.new("Model", Character)
537
EffectModel.Name = "Effects"
538
539
Effects = {
540
	["Block"] = {
541
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
542
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
543
			prt.Anchored = true
544
			prt.CFrame = cframe
545
			local msh = CFuncs["Mesh"].Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
546
			game:GetService("Debris"):AddItem(prt, 10)
547
			if Type == 1 or Type == nil then
548
				table.insert(Effects, {
549
					prt,
550
					"Block1",
551
					delay,
552
					x3,
553
					y3,
554
					z3,
555
					msh
556
				})
557
			elseif Type == 2 then
558
				table.insert(Effects, {
559
					prt,
560
					"Block2",
561
					delay,
562
					x3,
563
					y3,
564
					z3,
565
					msh
566
				})
567
			end
568
		end;
569
	};
570
	
571
	["Cylinder"] = {
572
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
573
			local prt = CFuncs["Part"].Create(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
574
			prt.Anchored = true
575
			prt.CFrame = cframe
576
			local msh = CFuncs["Mesh"].Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
577
			game:GetService("Debris"):AddItem(prt, 2)
578
			Effects[#Effects + 1] = {
579
				prt,
580
				"Cylinder",
581
				delay,
582
				x3,
583
				y3,
584
				z3
585
			}
586
		end;
587
	};
588
	
589
	["Sphere"] = {
590
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
591
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
592
			prt.Anchored = true
593
			prt.CFrame = cframe
594
			local msh = CFuncs["Mesh"].Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
595
			game:GetService("Debris"):AddItem(prt, 10)
596
			table.insert(Effects, {
597
				prt,
598
				"Cylinder",
599
				delay,
600
				x3,
601
				y3,
602
				z3,
603
				msh
604
			})
605
		end;
606
	};
607
	
608
	["Elec"] = {
609
		Create = function(cff, x, y, z)
610
			local prt = CFuncs["Part"].Create(workspace, "Neon", 0, 0, BrickColor.new("Lime green"), "Part", Vector3.new(1, 1, 1))
611
			prt.Anchored = true
612
			prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
613
			prt.CFrame = CFrame.new(prt.Position)
614
			game:GetService("Debris"):AddItem(prt, 2)
615
			local xval = math.random() / 2
616
			local yval = math.random() / 2
617
			local zval = math.random() / 2
618
			local msh = CFuncs["Mesh"].Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
619
			table.insert(Effects, {
620
				prt,
621
				"Elec",
622
				0.1,
623
				x,
624
				y,
625
				z,
626
				xval,
627
				yval,
628
				zval
629
			})
630
		end;
631
632
	};
633
	
634
	["Ring"] = {
635
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
636
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
637
			prt.Anchored = true
638
			prt.CFrame = cframe
639
			local msh = CFuncs["Mesh"].Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
640
			game:GetService("Debris"):AddItem(prt, 10)
641
			table.insert(Effects, {
642
				prt,
643
				"Cylinder",
644
				delay,
645
				x3,
646
				y3,
647
				z3,
648
				msh
649
			})
650
		end;
651
	};
652
653
654
	["Wave"] = {
655
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
656
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
657
			prt.Anchored = true
658
			prt.CFrame = cframe
659
			local msh = CFuncs["Mesh"].Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
660
			game:GetService("Debris"):AddItem(prt, 10)
661
			table.insert(Effects, {
662
				prt,
663
				"Cylinder",
664
				delay,
665
				x3,
666
				y3,
667
				z3,
668
				msh
669
			})
670
		end;
671
	};
672
673
	["Break"] = {
674
		Create = function(brickcolor, cframe, x1, y1, z1)
675
			local prt = CFuncs["Part"].Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
676
			prt.Anchored = true
677
			prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
678
			local msh = CFuncs["Mesh"].Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
679
			local num = math.random(10, 50) / 1000
680
			game:GetService("Debris"):AddItem(prt, 10)
681
			table.insert(Effects, {
682
				prt,
683
				"Shatter",
684
				num,
685
				prt.CFrame,
686
				math.random() - math.random(),
687
				0,
688
				math.random(50, 100) / 100
689
			})
690
		end;
691
	};
692
}
693
694
Shoot2 = function(orgpos)
695
	local MouseLook = CFrame.new((orgpos + mouse.Hit.p) / 2, mouse.Hit.p)
696
	Effects["Sphere"].Create(BrickColor.new("White"), CFrame.new(orgpos), 5, 5, 5, 3, 3, 3, 0.1)
697
	table.insert(Effects, {
698
		MouseLook.lookVector,
699
		"Shoot2",
700
		50,
701
		orgpos,
702
		5,
703
		7,
704
		0,
705
		1,
706
		2
707
	})
708
end
709
710
function bulletstorm()
711
	attack = true
712
	CFuncs["Sound"].Create("rbxassetid://539881968", Torso, 1, 1) 
713
	text.Text = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
714
wait(1.5)
715
	for i = 0, 1, 0.025 do
716
		swait()
717
		PlayAnimationFromTable({
718
			CFrame.new(-0, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
719
			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), 
720
			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), 
721
			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), 
722
			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), 
723
			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), 
724
		}, .3, false)
725
	CFuncs["Sound"].Create("rbxassetid://539882114", Torso, 1, 1) 
726
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-20), math.rad(0)), 0.3)
727
Shoot2(Barrel.Position)
728
	text.Text = "guy with an inverted sniper rifle"
729
	end
730
731
	attack = false
732
end
733
734
function overload()
735
	attack = true
736
	CFuncs["Sound"].Create("rbxassetid://159257147", Torso, 1, 1)
737
	text.Text = "AAAAAAAAAAAA"
738
Shoot2(LeftArm.Position)
739
Shoot2(RightArm.Position)
740
Shoot2(RightLeg.Position)
741
Shoot2(LeftLeg.Position)
742
Shoot2(Head.Position)
743
Shoot2(Torso.Position)
744
wait(0)
745
	attack = false
746
	text.Text = "guy with an inverted sniper rifle"
747
end
748
749
function overcharge()
750
        attack = true
751
	text.Text = "AAAAAAAAAAAA"
752
        CFuncs["Sound"].Create("rbxassetid://159257147", Torso, 1, 1)
753
	for i = 0, 1, 0.15 do
754
		swait()
755
		PlayAnimationFromTable({
756
			CFrame.new(-0.0325974114, -4.05311584e-006, 0.110728048, 0.64278698, 0, -0.766044974, 0, 1, 0, 0.766044974, 0, 0.64278698),
757
			CFrame.new(0, 1.50000095, 0, 0.64278698, 0, 0.766044974, 0, 1, 0, -0.766044974, 0, 0.64278698),
758
			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),
759
			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),
760
			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),
761
			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),
762
		}, .5, false)
763
	end
764
wait(3)
765
Shoot2(Barrel.Position)
766
Shoot2(Barrel.Position)
767
Shoot2(Handle.Position)
768
Shoot2(Handle.Position)
769
Shoot2(FakeHandle.Position)
770
Shoot2(FakeHandle.Position)
771
Shoot2(Barrel.Position)
772
Shoot2(Barrel.Position)
773
Shoot2(Handle.Position)
774
Shoot2(Handle.Position)
775
Shoot2(FakeHandle.Position)
776
Shoot2(FakeHandle.Position)
777
Shoot2(Barrel.Position)
778
Shoot2(Barrel.Position)
779
Shoot2(Handle.Position)
780
Shoot2(Handle.Position)
781
Shoot2(FakeHandle.Position)
782
Shoot2(FakeHandle.Position)
783
Shoot2(Barrel.Position)
784
Shoot2(Barrel.Position)
785
Shoot2(Handle.Position)
786
Shoot2(Handle.Position)
787
Shoot2(FakeHandle.Position)
788
Shoot2(FakeHandle.Position)
789
	for i = 0, 1, 0.15 do
790
		swait()
791
		PlayAnimationFromTable({
792
         CFrame.new(2.70828605e-006, -0.256154776, -0.071654655, 0.499999046, -1.78813579e-007, -0.866026044, 0.150384009, 0.984807789, 0.0868238211, 0.852869093, -0.173648283, 0.492402941),
793
         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),
794
         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),
795
         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),
796
         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),
797
         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),
798
		}, .35, false)
799
	text.Text = "guy with an inverted sniper rifle"
800
end
801
attack = false
802
end
803
804
function attackone()
805
	attack = true
806
	text.Text = "i have crippling depression"
807
808
howtobasic1 = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
809
howtobasic1.Volume = 45
810
howtobasic1.SoundId = "rbxassetid://539882069"
811
howtobasic2 = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
812
howtobasic2.Volume = 45
813
howtobasic2.SoundId = "rbxassetid://539881968"
814
howtobasic3 = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
815
howtobasic3.Volume = 45
816
howtobasic3.SoundId = "rbxassetid://539882114"
817
howtobasic = Instance.new("Sound", game.Players.LocalPlayer.Character.Torso)
818
howtobasic.Volume = 45
819
howtobasic.SoundId = "rbxassetid://539881843"
820
821
local Math = math.random(1,4)
822
		if Math == 1 then
823
			howtobasic:Play()
824
		end
825
		if Math == 2 then
826
			howtobasic1:Play()
827
		end
828
		if Math == 3 then
829
			howtobasic2:Play()
830
		end
831
		if Math == 4 then
832
			howtobasic3:Play()
833
		end
834
	for i = 0, 1, 0.025 do
835
		swait()
836
		PlayAnimationFromTable({
837
			CFrame.new(-0, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
838
			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), 
839
			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), 
840
			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), 
841
			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), 
842
			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), 
843
		}, .3, false)
844
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-20), math.rad(0)), 0.3)
845
	end
846
	CFuncs["Sound"].Create("rbxassetid://159490394", Barrel, 5, 1)
847
	text.Text = "JOJO BIZZARE ADVENTURE GUN"
848
	Shoot2(Barrel.Position)
849
	for i = 0, 1, 0.15 do
850
		swait()
851
		RootPart.Velocity = RootPart.CFrame.lookVector * -50
852
		PlayAnimationFromTable({
853
			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), 
854
			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), 
855
			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), 
856
			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), 
857
			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), 
858
			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), 
859
		}, .6, false)
860
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-30), math.rad(-20), math.rad(0)), 0.3)
861
	end
862
	for i = 0, 1, 0.15 do
863
		swait()
864
		RootPart.Velocity = RootPart.CFrame.lookVector * -100
865
		PlayAnimationFromTable({
866
			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), 
867
			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), 
868
			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), 
869
			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), 
870
			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), 
871
			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), 
872
		}, .2, false)
873
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3)
874
	end
875
	for i = 0, 1, 0.05 do
876
		swait()
877
		RootPart.Velocity = RootPart.CFrame.lookVector * -50
878
		PlayAnimationFromTable({
879
			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), 
880
			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), 
881
			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), 
882
			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), 
883
			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), 
884
			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), 
885
		}, .3, false)
886
		FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-60), math.rad(0)), 0.3)
887
	end
888
	for i = 0, 1, 0.13 do
889
		swait()
890
		PlayAnimationFromTable({
891
			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), 
892
			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), 
893
			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), 
894
			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), 
895
			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), 
896
			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), 
897
		}, .3, false)
898
	end
899
	attack = false
900
end
901
902
--[[Attacks]]--
903
904
mouse.Button1Down:connect(function()
905
	if attack == false and attacktype == 1 then
906
		attackone()
907
	end
908
end)
909
910
911
mouse.KeyDown:connect(function(k)
912
	k = k:lower()
913
	if attack == false and k == 'q' then
914
	  bulletstorm()
915
	elseif attack == false and k == 'e' then
916
          overload()
917
        elseif attack == false and k == 'r' then
918
          overcharge()
919
      end
920
end)
921
922
while true do
923
	swait()
924
	for i, v in pairs(Character:GetChildren()) do
925
		if v:IsA("Part") then
926
			v.Material = "SmoothPlastic"
927
		elseif v:IsA("Accessory") then
928
			v:WaitForChild("Handle").Material = "SmoothPlastic"
929
		end
930
	end
931
	Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
932
	velocity = RootPart.Velocity.y
933
	sine = sine + change
934
	local hit, pos = rayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
935
	if equipped == true or equipped == false then
936
		if RootPart.Velocity.y > 1 and hit == nil then 
937
			Anim = "Jump"
938
			if attack == false then
939
				PlayAnimationFromTable({
940
					CFrame.new(-0, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
941
					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), 
942
					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), 
943
					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), 
944
					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), 
945
					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), 
946
				}, .3, false)
947
			end
948
		elseif RootPart.Velocity.y < -60 and hit == nil then 
949
			Anim = "Fall"
950
			if attack == false then
951
				PlayAnimationFromTable({
952
					CFrame.new(-0, -0, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
953
					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), 
954
					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), 
955
					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), 
956
					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), 
957
					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), 
958
				}, .3, false)
959
			end
960
		elseif Torsovelocity < 1 and hit ~= nil then
961
			Anim = "Idle"
962
			if attack == false then
963
				change = 1
964
				PlayAnimationFromTable({
965
					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), 
966
					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), 
967
					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), 
968
					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), 
969
					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), 
970
					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), 
971
				}, .3, false)
972
				FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-20), math.rad(0)), 0.3)
973
			end
974
		elseif Torsovelocity > 2 and hit ~= nil then
975
			Anim = "Walk"
976
			if attack == false then
977
				change = 3
978
				PlayAnimationFromTable({
979
					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), 
980
					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), 
981
					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), 
982
					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), 
983
					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)),
984
					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)),
985
				}, .3, false)
986
				FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(-30), math.rad(0)), 0.3)
987
			end
988
		end
989
	end
990
	if 0 < #Effects then
991
		for e = 1, #Effects do
992
			if Effects[e] ~= nil then
993
				local Thing = Effects[e]
994
				if Thing ~= nil then
995
					local Part = Thing[1]
996
					local Mode = Thing[2]
997
					local Delay = Thing[3]
998
					local IncX = Thing[4]
999
					local IncY = Thing[5]
1000
					local IncZ = Thing[6]
1001
					if Thing[2] == "Shoot" then
1002
						local Look = Thing[1]
1003
						local hit, pos = rayCast(Thing[4], Look, 15, Character)
1004
						local mag = (Thing[4] - pos).magnitude
1005
						Thing[9] = Thing[9] + 0.5
1006
						Thing[5] = Thing[5] + 0.2
1007
						Thing[6] = Thing[6] + 0.2
1008
						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)
1009
						Thing[4] = Thing[4] + Look * 15
1010
						Thing[3] = Thing[3] - 1
1011
						if hit ~= nil then
1012
							Thing[3] = 0
1013
							ref = CFuncs["Part"].Create(workspace, "Neon", 0, 1, BrickColor.new("White"), "Reference", Vector3.new())
1014
							ref.Anchored = true
1015
							ref.CFrame = CFrame.new(pos)
1016
							Effects["Sphere"].Create(BrickColor.new("Bright yellow"), CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
1017
							CFuncs["Sound"].Create("rbxassetid://539881968", ref, 0.1, 1)
1018
							game:GetService("Debris"):AddItem(ref, 10)
1019
						end
1020
						if Thing[3] <= 0 then
1021
							table.remove(Effects, e)
1022
						end
1023
					end
1024
					do
1025
						if Thing[2] == "Shoot2" then
1026
							local Look = Thing[1]
1027
							local hit, pos = rayCast(Thing[4], Look, 3, Character)
1028
							local mag = (Thing[4] - pos).magnitude
1029
							Thing[9] = Thing[9] + 0.5
1030
							Thing[5] = Thing[5] + 0.2
1031
							Thing[6] = Thing[6] + 0.2
1032
							Effects["Sphere"].Create(BrickColor.new("Bright yellow"), CFrame.new((Thing[4] + pos) / 2, pos), 25, 25, 25, -5, -5, -5, 0.2)
1033
							Thing[4] = Thing[4] + Look * 3
1034
							Thing[3] = Thing[3] + 5
1035
							if hit ~= nil then
1036
								Thing[3] = 0
1037
								ref = CFuncs["Part"].Create(workspace, "Neon", 0, 1, BrickColor.new("White"), "Reference", Vector3.new())
1038
								ref.Anchored = true
1039
								ref.CFrame = CFrame.new(pos)
1040
								Effects["Sphere"].Create(BrickColor.new("Really yellow"), CFrame.new(pos), 25, 25, 25, 5, 5, 5, 0.01)
1041
								Effects["Sphere"].Create(BrickColor.new("Bright yellow"), CFrame.new(pos), 10, 10, 10, 15, 15, 15, 0.01)
1042
								Effects["Block"].Create(BrickColor.new("White"), CFrame.new(pos), 10, 10, 10, 15, 15, 15, 0.01, 1)
1043
								Effects["Wave"].Create(BrickColor.new("Smoky grey"), CFrame.new(pos), 2, 2, 2, 3, 3, 3, 0.01)
1044
								CFuncs["Sound"].Create("rbxassetid://10209236", ref, 1, 1)
1045
								CFuncs["Sound"].Create("rbxassetid://10209236", Sphere, 0.5, 1)
1046
								CFuncs["Sound"].Create("rbxassetid://10209236", Sphere, 0.1, 1)
1047
								local e = Instance.new("Explosion", ref)
1048
								e.Position = ref.Position
1049
								e.BlastRadius = 400
1050
								e.DestroyJointRadiusPercent = 400
1051
								e.Visible = false
1052
								e.ExplosionType = "CratersAndDebris"
1053
								game:GetService("Debris"):AddItem(ref, 2)
1054
							end
1055
							if Thing[3] <= 0 then
1056
								table.remove(Effects, e)
1057
							end
1058
						end
1059
						do
1060
							do
1061
								if Thing[2] ~= "Shoot" and Thing[2] ~= "DecreaseStat" and Thing[2] ~= "showDamage" and Thing[2] ~= "Shoot2" then
1062
									if Thing[1].Transparency <= 1 then
1063
										if Thing[2] == "Block1" then
1064
											Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1065
											Mesh = Thing[7]
1066
											Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1067
											Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1068
										else
1069
											if Thing[2] == "Block2" then
1070
												Thing[1].CFrame = Thing[1].CFrame
1071
												Mesh = Thing[7]
1072
												Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1073
												Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1074
											else
1075
												if Thing[2] == "Block3" then
1076
													Thing[8].C0 = CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) * Thing[9]
1077
													Mesh = Thing[7]
1078
													Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1079
													Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1080
												else
1081
													if Thing[2] == "Cylinder" then
1082
														Mesh = Thing[7]
1083
														Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1084
														Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1085
													else
1086
														if Thing[2] == "Cylinder2" then
1087
															Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, Thing[8], 0)
1088
															Mesh = Thing[7]
1089
															Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1090
															Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1091
														else
1092
															if Thing[2] == "Blood" then
1093
																Mesh = Thing[7]
1094
																Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
1095
																Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1096
																Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1097
															else
1098
																if Thing[2] == "Elec" then
1099
																	Mesh = Thing[10]
1100
																	Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
1101
																	Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1102
																else
1103
																	if Thing[2] == "Disappear" then
1104
																		Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1105
																	end
1106
																end
1107
															end
1108
														end
1109
													end
1110
												end
1111
											end
1112
										end
1113
									else
1114
										Part.Parent = nil
1115
										table.remove(Effects, e)
1116
									end
1117
								end
1118
							end
1119
						end
1120
					end
1121
				end
1122
			end
1123
		end
1124
	end
1125
end