View difference between Paste ID: yYe07H0R and V1Sr8kNe
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4-
local Player = game.Players.localPlayer
4+
local RealPlayer = Player
5
do
6
	print("FE Compatibility code V2 by Mokiros")
7
	local RealPlayer = RealPlayer
8
	script.Parent = RealPlayer.Character
9
10
	--Fake event to make stuff like Mouse.KeyDown work
11
	local Disconnect_Function = function(this)
12
		this[1].Functions[this[2]] = nil
13
	end
14
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15
	local FakeEvent_Metatable = {__index={
16
		Connect = function(this,f)
17
			local i = tostring(math.random(0,10000))
18
			while this.Functions[i] do
19
				i = tostring(math.random(0,10000))
20
			end
21
			this.Functions[i] = f
22
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24
	}}
25
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
26
	local function fakeEvent()
27
		return setmetatable({Functions={}},FakeEvent_Metatable)
28
	end
29
30
	--Creating fake input objects with fake variables
31
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
32
    FakeMouse.keyUp = FakeMouse.KeyUp
33
    FakeMouse.keyDown = FakeMouse.KeyDown
34
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
35
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
36
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
37
	end}
38
	--Merged 2 functions into one by checking amount of arguments
39
	CAS.UnbindAction = CAS.BindAction
40
41
	--This function will trigger the events that have been :Connect()'ed
42
	local function TriggerEvent(self,ev,...)
43
		for _,f in pairs(self[ev].Functions) do
44
			f(...)
45
		end
46
	end
47
	FakeMouse.TriggerEvent = TriggerEvent
48
	UIS.TriggerEvent = TriggerEvent
49
50
	--Client communication
51
	local Event = Instance.new("RemoteEvent")
52
	Event.Name = "UserInput_Event"
53
	Event.OnServerEvent:Connect(function(plr,io)
54
	    if plr~=RealPlayer then return end
55
		FakeMouse.Target = io.Target
56
		FakeMouse.Hit = io.Hit
57
		if not io.isMouse then
58
			local b = io.UserInputState == Enum.UserInputState.Begin
59
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
60
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
61
			end
62
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
63
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
64
			end
65
			for _,t in pairs(CAS.Actions) do
66
				for _,k in pairs(t.Keys) do
67
					if k==io.KeyCode then
68
						t.Function(t.Name,io.UserInputState,io)
69
					end
70
				end
71
			end
72
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
73
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
74
	    end
75
	end)
76
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
77
	local Mouse = owner:GetMouse()
78
	local UIS = game:GetService("UserInputService")
79
	local input = function(io,RobloxHandled)
80
		if RobloxHandled then return end
81
		--Since InputObject is a client-side instance, we create and pass table instead
82
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
83
	end
84
	UIS.InputBegan:Connect(input)
85
	UIS.InputEnded:Connect(input)
86
87
	local h,t
88
	--Give the server mouse data every second frame, but only if the values changed
89
	--If player is not moving their mouse, client won't fire events
90
	local HB = game:GetService("RunService").Heartbeat
91
	while true do
92
		if h~=Mouse.Hit or t~=Mouse.Target then
93
			h,t=Mouse.Hit,Mouse.Target
94
			Event:FireServer({isMouse=true,Target=t,Hit=h})
95
		end
96
		--Wait 2 frames
97
		for i=1,2 do
98
			HB:Wait()
99
		end
100
	end]==],script)
101
102
	----Sandboxed game object that allows the usage of client-side methods and services
103
	--Real game object
104
	local RealGame = game
105
106
	--Metatable for fake service
107
	local FakeService_Metatable = {
108
		__index = function(self,k)
109
			local s = rawget(self,"_RealService")
110
			if s then
111
				return typeof(s[k])=="function"
112
				and function(_,...)return s[k](s,...)end or s[k]
113
			end
114
		end,
115
		__newindex = function(self,k,v)
116
			local s = rawget(self,"_RealService")
117
			if s then s[k]=v end
118
		end
119
	}
120
	local function FakeService(t,RealService)
121
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
122
		return setmetatable(t,FakeService_Metatable)
123
	end
124
125
	--Fake game object
126
	local FakeGame = {
127
		GetService = function(self,s)
128
			return rawget(self,s) or RealGame:GetService(s)
129
		end,
130
		Players = FakeService({
131
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
132
		},"Players"),
133
		UserInputService = FakeService(UIS,"UserInputService"),
134
		ContextActionService = FakeService(CAS,"ContextActionService"),
135
		RunService = FakeService({
136
			_btrs = {},
137
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
138
			BindToRenderStep = function(self,name,_,fun)
139
				self._btrs[name] = self.Heartbeat:Connect(fun)
140
			end,
141
			UnbindFromRenderStep = function(self,name)
142
				self._btrs[name]:Disconnect()
143
			end,
144
		},"RunService")
145
	}
146
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
147
	FakeGame.service = FakeGame.GetService
148
	FakeService(FakeGame,game)
149
	--Changing owner to fake player object to support owner:GetMouse()
150
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
151
end
152
153
print("Made by SezHu for Void's Script Builder. If logged, please do not remove credit.")
154
wait(1 / 60)
155
Effects = { }
156
local Player = owner
157
local Character = Player.Character
158
local Humanoid = Character.Humanoid
159
Humanoid.WalkSpeed = 100
160
local Mouse = Player:GetMouse()
161
local LeftArm = Character["Left Arm"]
162
local RightArm = Character["Right Arm"]
163
local LeftLeg = Character["Left Leg"]
164
local RightLeg = Character["Right Leg"]
165
local Head = Character.Head
166
local Torso = Character.Torso
167
local Camera = game.Workspace.CurrentCamera
168
local RootPart = Character.HumanoidRootPart
169
local RootJoint = RootPart.RootJoint
170
local attack = false
171
local Anim = 'Idle'
172
local attacktype = 1
173
local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
174
local velocity = RootPart.Velocity.y
175
local sine = 0
176
local change = 1
177
local Create = LoadLibrary("RbxUtility").Create
178
Head.face.Texture = "http://www.roblox.com/asset/?id=948473243"
179
Humanoid.Health = math.huge
180
Instance.new("ForceField",Character).Visible = false
181
hit = nil
182
oof = false
183
for y,t in pairs(Character:GetChildren()) do
184
			if t:IsA("Accessory") and t:FindFirstChild("Handle") then
185
				t.Handle.Transparency = 1
186
			end
187
end
188
Character.Shirt:Remove()
189
Character.Pants:Remove()
190
pants = Instance.new("Pants", Character)
191
pants.PantsTemplate = "http://www.roblox.com/asset/?id=242242068"
192
 DHandle = Instance.new("Part")
193
 DMesh = Instance.new("SpecialMesh")
194
DWeld = Instance.new("Weld")
195
DHandle.Parent = Character
196
DHandle.Name = "Handle"
197
DHandle.CanCollide = false
198
DHandle.Locked = true
199
DHandle.Size = Vector3.new(1.93, 1.77, 1.6)
200
DMesh.Parent = DHandle
201
DMesh.Scale = DMesh.Scale
202
DWeld.Parent = DHandle
203
DWeld.Name = "no"
204
DWeld.Part0 = Head 
205
DWeld.Part1 = DHandle
206
DWeld.C0 = CFrame.new(0,.4,0) * CFrame.fromEulerAnglesXYZ(math.rad(-1),0,0)VertexColor = Vector3.new(1,1,1)
207
DHandle.Transparency = 0
208
DMesh.MeshId = "http://www.roblox.com/asset/?id=12259089"
209
DMesh.TextureId = "http://www.roblox.com/asset/?id=12259192"
210
local m = Create("Model"){
211
	Parent = Character,
212
	Name = "WeaponModel",
213
}
214
215
Humanoid.Animator.Parent = nil
216
Character.Animate.Parent = nil
217
218
local newMotor = function(part0, part1, c0, c1)
219
	local w = Create('Motor'){
220
		Parent = part0,
221
		Part0 = part0,
222
		Part1 = part1,
223
		C0 = c0,
224
		C1 = c1,
225
	}
226
	return w
227
end
228
229
function clerp(a, b, t)
230
	return a:lerp(b, t)
231
end
232
233
RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
234
NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
235
236
local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0)) 
237
local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
238
local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0))
239
local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0))
240
RootJoint.C1 = CFrame.new(0, 0, 0)
241
RootJoint.C0 = CFrame.new(0, 0, 0)
242
Torso.Neck.C1 = CFrame.new(0, 0, 0)
243
Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
244
245
local rarmc1 = RW.C1
246
local larmc1 = LW.C1
247
local rlegc1 = RH.C1
248
local llegc1 = LH.C1
249
250
local resetc1 = false
251
252
function PlayAnimationFromTable(table, speed, bool)
253
	RootJoint.C0 = clerp(RootJoint.C0, table[1], speed) 
254
	Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed) 
255
	RW.C0 = clerp(RW.C0, table[3], speed) 
256
	LW.C0 = clerp(LW.C0, table[4], speed) 
257
	RH.C0 = clerp(RH.C0, table[5], speed) 
258
	LH.C0 = clerp(LH.C0, table[6], speed) 
259
	if bool == true then
260
		if resetc1 == false then
261
			resetc1 = true
262
			RootJoint.C1 = RootJoint.C1
263
			Torso.Neck.C1 = Torso.Neck.C1
264
			RW.C1 = rarmc1
265
			LW.C1 = larmc1
266
			RH.C1 = rlegc1
267
			LH.C1 = llegc1
268
		end
269
	end
270
end
271
272
ArtificialHB = Create("BindableEvent", script){
273
	Parent = script,
274
	Name = "Heartbeat",
275
}
276
277
script:WaitForChild("Heartbeat")
278
279
frame = 1 / 500
280
tf = 0
281
allowframeloss = false
282
tossremainder = false
283
lastframe = tick()
284
script.Heartbeat:Fire()
285
286
game:GetService("RunService").Heartbeat:connect(function(s, p)
287
	tf = tf + s
288
	if tf >= frame then
289
		if allowframeloss then
290
			script.Heartbeat:Fire()
291
			lastframe = tick()
292
		else
293
			for i = 1, math.floor(tf / frame) do
294
				script.Heartbeat:Fire()
295
			end
296
			lastframe = tick()
297
		end
298
		if tossremainder then
299
			tf = 0
300
		else
301
			tf = tf - frame * math.floor(tf / frame)
302
		end
303
	end
304
end)
305
306
function swait(num)
307
	if num == 0 or num == nil then
308
		ArtificialHB.Event:wait()
309
	else
310
		for i = 0, num do
311
			ArtificialHB.Event:wait()
312
		end
313
	end
314
end
315
316
function RemoveOutlines(part)
317
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
318
end
319
	
320
CFuncs = {	
321
	Part = {
322
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
323
			local Part = Create("Part"){
324
				Parent = Parent,
325
				Reflectance = Reflectance,
326
				Transparency = Transparency,
327
				CanCollide = false,
328
				Locked = true,
329
				BrickColor = BrickColor.new(tostring(BColor)),
330
				Name = Name,
331
				Size = Size,
332
				Material = Material,
333
			}
334
			RemoveOutlines(Part)
335
			if Size == Vector3.new() then
336
				Part.Size = Vector3.new(0.2, 0.2, 0.2)
337
			else
338
				Part.Size = Size
339-
			Value = game:service("Players").LocalPlayer,
339+
340
			return Part
341
		end;
342
	};
343
	
344
	Mesh = {
345
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
346
			local Msh = Create(Mesh){
347
				Parent = Part,
348
				Offset = OffSet,
349
				Scale = Scale,
350
			}
351
			if Mesh == "SpecialMesh" then
352
				Msh.MeshType = MeshType
353
				Msh.MeshId = MeshId
354
			end
355
			return Msh
356
		end;
357
	};
358
359
	Weld = {
360
		Create = function(Parent, Part0, Part1, C0, C1)
361
			local Weld = Create("Weld"){
362
				Parent = Parent,
363
				Part0 = Part0,
364
				Part1 = Part1,
365
				C0 = C0,
366
				C1 = C1,
367
			}
368
			return Weld
369
		end;
370
	};
371
372
	Sound = {
373
		Create = function(id, par, vol, pit) 
374
			local Sound = Create("Sound"){
375
				Volume = vol,
376
				Pitch = pit or 1,
377
				SoundId = "rbxassetid://" .. id,
378
				Parent = par or workspace,
379
			}
380
			Sound:play() 
381
			return Sound
382
		end;
383
	};
384
	
385
	Decal = {
386
		Create = function(Color, Texture, Transparency, Name, Parent)
387
			local Decal = Create("Decal"){
388
				Color3 = Color,
389
				Texture = "rbxassetid://" .. Texture,
390
				Transparency = Transparency,
391
				Name = Name,
392
				Parent = Parent,
393
			}
394
			return Decal
395
		end;
396
	};
397
	
398
	BillboardGui = {
399
		Create = function(Parent, Image, Position, Size)
400
			local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
401
			BillPar.CFrame = CFrame.new(Position)
402
			local Bill = Create("BillboardGui"){
403
				Parent = BillPar,
404
				Adornee = BillPar,
405
				Size = UDim2.new(1, 0, 1, 0),
406
				SizeOffset = Vector2.new(Size, Size),
407
			}
408
			local d = Create("ImageLabel", Bill){
409
				Parent = Bill,
410
				BackgroundTransparency = 1,
411
				Size = UDim2.new(1, 0, 1, 0),
412
				Image = "rbxassetid://" .. Image,
413
			}
414
			return BillPar
415
		end
416
	};
417
	
418
	ParticleEmitter = {
419
		Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
420
			local Particle = Create("ParticleEmitter"){
421
				Parent = Parent,
422
				Color = ColorSequence.new(Color1, Color2),
423
				LightEmission = LightEmission,
424
				Size = Size,
425
				Texture = Texture,
426
				Transparency = Transparency,
427
				ZOffset = ZOffset,
428
				Acceleration = Accel,
429
				Drag = Drag,
430
				LockedToPart = LockedToPart,
431
				VelocityInheritance = VelocityInheritance,
432
				EmissionDirection = EmissionDirection,
433
				Enabled = Enabled,
434
				Lifetime = LifeTime,
435
				Rate = Rate,
436
				Rotation = Rotation,
437
				RotSpeed = RotSpeed,
438
				Speed = Speed,
439
				VelocitySpread = VelocitySpread,
440
			}
441
			return Particle
442
		end;
443
	};
444
	
445
	CreateTemplate = {
446
		
447
	};
448
}
449
450
function rayCast(Position, Direction, Range, Ignore)
451
	return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) 
452
end 
453
454
function FindNearestTorso(Position, Distance, SinglePlayer)
455
	if SinglePlayer then
456
		return (SinglePlayer.Torso.CFrame.p - Position).magnitude < Distance
457
	end
458
	local List = {}
459
	for i, v in pairs(workspace:GetChildren()) do
460
		if v:IsA("Model") then
461
			if v:findFirstChild("Torso") then
462
				if v ~= Character then
463
					if (v.Torso.Position - Position).magnitude <= Distance then
464
						table.insert(List, v)
465
					end 
466
				end 
467
			end 
468
		end 
469
	end
470
	return List
471
end
472
473
function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
474
	if hit.Parent == nil then
475
		return
476
	end
477
	local h = hit.Parent:FindFirstChild("Part")
478
	for _, v in pairs(hit.Parent:children()) do
479
		if v:IsA("Part") then
480
			h = v
481
		end
482
	end
483
	if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent.Name ~= "Base" and hit ~= nil then
484
		if hit.Parent:findFirstChild("DebounceHit") ~= nil then
485
			if hit.Parent.DebounceHit.Value == true then
486
				return
487
			end
488
		end
489
		local c = Create("ObjectValue"){
490
			Name = "creator",
491
			Value = owner,
492
			Parent = h,
493
		}
494
		game:GetService("Debris"):AddItem(c, .5)
495
		CFuncs.Sound.Create(HitSound, hit, 1, HitPitch) 
496
		local Damage = math.random(minim, maxim)
497
		local blocked = false
498
		local block = hit.Parent:findFirstChild("Block")
499
		if block ~= nil then
500
			if block.className == "IntValue" then
501
				if block.Value > 0 then
502
					blocked = true
503
					block.Value = block.Value - 1
504
					print(block.Value)
505
				end
506
			end
507
		end
508
		if Type == "Knockdown" then
509
			local hum = hit.Parent.Humanoid
510
			hum.PlatformStand = true
511
			coroutine.resume(coroutine.create(function(HHumanoid)
512
				swait(1)
513
				HHumanoid.PlatformStand = false
514
			end), hum)
515
			local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
516
			local bodvol = Create("BodyVelocity"){
517
				velocity = angle * knockback,
518
				P = 5000,
519
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
520
				Parent = hit,
521
			}
522
			local rl = Create("BodyAngularVelocity"){
523
				P = 3000,
524
				maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
525
				angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
526
				Parent = hit,
527
			}
528
			game:GetService("Debris"):AddItem(bodvol, .5)
529
			game:GetService("Debris"):AddItem(rl, .5)
530
		elseif Type == "Normal" then
531
			local vp = Create("BodyVelocity"){
532
				P = 500,
533
				maxForce = Vector3.new(math.huge, 0, math.huge),
534
				velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
535
			}
536
			if knockback > 0 then
537
				vp.Parent = hit
538
                                hit.Parent = workspace
539
                                hit.Anchored = false
540
                                hit.CanCollide = false
541
                                hit:BreakJoints()
542
			end
543
			game:GetService("Debris"):AddItem(vp, .5)
544
		elseif Type == "Up" then
545
			local bodyVelocity = Create("BodyVelocity"){
546
				velocity = Vector3.new(0, 20, 0),
547
				P = 5000,
548
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
549
				Parent = hit,
550
			}
551
			game:GetService("Debris"):AddItem(bodyVelocity, .5)
552
		elseif Type == "DarkUp" then
553
			coroutine.resume(coroutine.create(function()
554
				for i = 0, 1, 0.1 do
555
					swait()
556
					Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1)
557
				end
558
			end))
559
			local bodyVelocity = Create("BodyVelocity"){
560
				velocity = Vector3.new(0, 20, 0),
561
				P = 5000,
562
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
563
				Parent = hit,
564
			}
565
			game:GetService("Debris"):AddItem(bodyVelocity, 1)
566
		elseif Type == "Snare" then
567
			local bp = Create("BodyPosition"){
568
				P = 2000,
569
				D = 100,
570
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
571
				position = hit.Parent.Torso.Position,
572
				Parent = hit.Parent.Torso,
573
			}
574
			game:GetService("Debris"):AddItem(bp, 1)
575
		elseif Type == "Freeze" then
576
			local BodPos = Create("BodyPosition"){
577
				P = 50000,
578
				D = 1000,
579
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
580
				position = hit.Parent.Torso.Position,
581
				Parent = hit.Parent.Torso,
582
			}
583
			local BodGy = Create("BodyGyro") {
584
				maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
585
				P = 20e+003,
586
				Parent = hit.Parent.Torso,
587
				cframe = hit.Parent.Torso.CFrame,
588
			}
589
			hit.Parent.Torso.Anchored = true
590
			coroutine.resume(coroutine.create(function(Part) 
591
				swait(1.5)
592
				Part.Anchored = false
593
			end), hit.Parent.Torso)
594
			game:GetService("Debris"):AddItem(BodPos, 3)
595
			game:GetService("Debris"):AddItem(BodGy, 3)
596
		end
597
		local debounce = Create("BoolValue"){
598
			Name = "DebounceHit",
599
			Parent = hit.Parent,
600
			Value = true,
601
		}
602
		game:GetService("Debris"):AddItem(debounce, Delay)
603
		c = Create("ObjectValue"){
604
			Name = "creator",
605
			Value = Player,
606
			Parent = h,
607
		}
608
		game:GetService("Debris"):AddItem(c, .5)
609
	end
610
end
611
612
function ShowDamage(Pos, Text, Time, Color)
613
	local Rate = (1 / 30)
614
	local Pos = (Pos or Vector3.new(0, 0, 0))
615
	local Text = (Text or "")
616
	local Time = (Time or 2)
617
	local Color = (Color or Color3.new(1, 0, 1))
618
	local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
619
	EffectPart.Anchored = true
620
	local BillboardGui = Create("BillboardGui"){
621
		Size = UDim2.new(3, 0, 3, 0),
622
		Adornee = EffectPart,
623
		Parent = EffectPart,
624
	}
625
	local TextLabel = Create("TextLabel"){
626
		BackgroundTransparency = 1,
627
		Size = UDim2.new(1, 0, 1, 0),
628
		Text = Text,
629
		Font = "Garamond",
630
		TextColor3 = Torso.Color,
631
		TextScaled = true,
632
		Parent = BillboardGui,
633
	}
634
	game.Debris:AddItem(EffectPart, (Time))
635
	EffectPart.Parent = game:GetService("Workspace")
636
	delay(0, function()
637
		local Frames = (Time / Rate)
638
		for Frame = 1, Frames do
639
			wait(Rate)
640
			local Percent = (Frame / Frames)
641
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
642
			TextLabel.TextTransparency = Percent
643
		end
644
		if EffectPart and EffectPart.Parent then
645
			EffectPart:Destroy()
646
		end
647
	end)
648
end
649
650
651
652
653
function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
654
	for _, c in pairs(workspace:children()) do
655
		local hum = c:findFirstChild("Humanoid")
656
		if hum ~= nil then
657
			local head = hit
658
			if head ~= nil then
659
				local targ = head.Position - Part.Position
660
				local mag = targ.magnitude
661
				if mag <= Magnitude and c.Name ~= Player.Name then 
662
			CFuncs.Sound.Create("324867021", head, 1, 1)
663
					Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, .1, HitSound, HitPitch)
664
				end
665
			end
666
		end
667
	end
668
end
669
670
671
Handle=CFuncs.Part.Create(m,Enum.Material.Plastic,0,1,"Bright green","Handle",Vector3.new(1, 1.20000005, 1))
672
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.435136795, -0.716373444, -0.168147802, -0.184279382, -0.967371345, 0.173878923, -0.0978992507, -0.157963246, -0.982580066, 0.977986097, -0.198091835, -0.0655955523))
673
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
674
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-8.36849213e-05, 4.00039482, -5.86509705e-05, 3.83518636e-06, 8.29994678e-06, -1, 4.9972441e-06, -1.00000012, -8.29994678e-06, -1.00000012, -4.9949158e-06, -3.83518636e-06))
675
CFuncs.Mesh.Create("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.400000006, 1, 0.0500000007))
676
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
677
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-9.67979431e-05, -4.00035858, 0.499849081, -0.999994338, 5.56639861e-06, 1.65775418e-06, 5.24974894e-06, 0.999995232, -5.0291419e-06, -3.25776637e-06, -5.08874655e-06, -0.999990761))
678
CFuncs.Mesh.Create("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.0500000007, 1, 0.600000024))
679
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
680
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.17232513e-05, 3.20031929, -3.71932983e-05, 3.83518636e-06, 8.29994678e-06, -1, 4.9972441e-06, -1.00000012, -8.29994678e-06, -1.00000012, -4.9949158e-06, -3.83518636e-06))
681
CFuncs.Mesh.Create("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1.60000002, 0.400000006, 0.0500000007))
682
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
683
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(9.48905945e-05, -4.00033379, 0.499926567, 1, -5.21628408e-06, -3.65823939e-06, 5.21626544e-06, 1, -5.09625352e-06, 3.658266e-06, 5.09623442e-06, 1))
684
CFuncs.Mesh.Create("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.0500000007, 1, 0.600000024))
685
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
686
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-6.74724579e-05, 2.90030861, -2.95639038e-05, 3.83518636e-06, 8.29994678e-06, -1, 4.9972441e-06, -1.00000012, -8.29994678e-06, -1.00000012, -4.9949158e-06, -3.83518636e-06))
687
CFuncs.Mesh.Create("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.400000006, 0.400000006, 0.400000006))
688
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
689
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0976924896, -1.42856026, 1.57356262e-05, 3.90782952e-06, 0.275675088, -0.961250901, 5.61308116e-06, -0.96125102, -0.275675088, -1.00000012, -4.33286186e-06, -5.2973628e-06))
690
CFuncs.Mesh.Create("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.200000003, 1, 0.200000003))
691
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
692
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.93119049e-05, -0.700065613, 1.33514404e-05, 3.83518636e-06, 8.29994678e-06, -1, 4.9972441e-06, -1.00000012, -8.29994678e-06, -1.00000012, -4.9949158e-06, -3.83518636e-06))
693
CFuncs.Mesh.Create("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.5, 0.5, 0.5))
694
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
695
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0726666451, 1.43006897, 1.62124634e-05, -5.01610339e-06, 0.258840203, 0.96592015, -3.55858356e-06, 0.96592021, -0.258840173, -1.00000012, -4.73321415e-06, -3.92459333e-06))
696
CFuncs.Mesh.Create("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.200000003, 1, 0.200000003))
697
Part=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Dark stone grey","Part",Vector3.new(1, 1.20000005, 1))
698
PartWeld=CFuncs.Weld.Create(m,Handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.14848328e-05, 4.36306e-05, 2.00019836, 1, -5.38327731e-06, -2.46055424e-06, -2.4586916e-06, 8.36700201e-06, -1, 5.40760811e-06, 1, 8.37445259e-06))
699
CFuncs.Mesh.Create("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.200000003, 1, 0.200000003))
700
Shaft=CFuncs.Part.Create(m,Enum.Material.Plastic,0,0,"Brown","Shaft",Vector3.new(1, 3.60000014, 1))
701
ShaftWeld=CFuncs.Weld.Create(m,Handle,Shaft,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(2.21729279e-05, 1.20008087, -2.24113464e-05, 3.14228237e-06, 4.38094139e-06, -1.00000012, 2.94635538e-06, -1, -4.38839197e-06, -1, -2.95066275e-06, -3.14228237e-06))
702
CFuncs.Mesh.Create("CylinderMesh",Shaft,"","",Vector3.new(0, 0, 0),Vector3.new(0.300000012, 1, 0.300000012))
703
Hitbox=CFuncs.Part.Create(m,Enum.Material.Plastic,0,1,"Medium stone grey","Hitbox",Vector3.new(7, 3, 3))
704
HitboxWeld=CFuncs.Weld.Create(m,Handle,Hitbox,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.19377899, -0.184207916, -0.14117223, -0.00053447485, 0.99471724, -0.102652542, -0.999858558, 0.00119461119, 0.0167820305, 0.0168160032, 0.102646977, 0.994575679))
705
706
707
sref = CFuncs.Part.Create(Character, "Neon", 0, 1, BrickColor.new("Black"), "Reference", Vector3.new())
708
sref.Anchored = true
709
710
EffectModel = Create("Model"){
711
	Parent = Character,
712
	Name = "Effects",
713
}
714
715
Effects = {
716
	Block = {
717
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
718
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
719
			prt.Anchored = true
720
			prt.CFrame = cframe
721
			local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
722
			game:GetService("Debris"):AddItem(prt, 10)
723
			if Type == 1 or Type == nil then
724
				table.insert(Effects, {
725
					prt,
726
					"Block1",
727
					delay,
728
					x3,
729
					y3,
730
					z3,
731
					msh
732
				})
733
			elseif Type == 2 then
734
				table.insert(Effects, {
735
					prt,
736
					"Block2",
737
					delay,
738
					x3,
739
					y3,
740
					z3,
741
					msh
742
				})
743
			end
744
		end;
745
	};
746
	
747
	Cylinder = {
748
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
749
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
750
			prt.Anchored = true
751
			prt.CFrame = cframe
752
			local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
753
			game:GetService("Debris"):AddItem(prt, 2)
754
			table.insert(Effects, {
755
				prt,
756
				"Cylinder",
757
				delay,
758
				x3,
759
				y3,
760
				z3,
761
				msh
762
			})
763
		end;
764
	};
765
	
766
	Head = {
767
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
768
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
769
			prt.Anchored = true
770
			prt.CFrame = cframe
771
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
772
			game:GetService("Debris"):AddItem(prt, 10)
773
			table.insert(Effects, {
774
				prt,
775
				"Cylinder",
776
				delay,
777
				x3,
778
				y3,
779
				z3,
780
				msh
781
			})
782
		end;
783
	};
784
	
785
	Sphere = {
786
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
787
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
788
			prt.Anchored = true
789
			prt.CFrame = cframe
790
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
791
			game:GetService("Debris"):AddItem(prt, 10)
792
			table.insert(Effects, {
793
				prt,
794
				"Cylinder",
795
				delay,
796
				x3,
797
				y3,
798
				z3,
799
				msh
800
			})
801
		end;
802
	};
803
	
804
	Elect = {
805
		Create = function(cff, x, y, z)
806
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("New Yeller"), "Part", Vector3.new(1, 1, 1))
807
			prt.Anchored = true
808
			prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
809
			prt.CFrame = CFrame.new(prt.Position)
810
			game:GetService("Debris"):AddItem(prt, 2)
811
			local xval = math.random() / 2
812
			local yval = math.random() / 2
813
			local zval = math.random() / 2
814
			local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
815
			table.insert(Effects, {
816
				prt,
817
				"Elec",
818
				0.1,
819
				x,
820
				y,
821
				z,
822
				xval,
823
				yval,
824
				zval
825
			})
826
		end;
827
828
	};
829
	
830
	Ring = {
831
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
832
			local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
833
			prt.Anchored = true
834
			prt.CFrame = cframe
835
			local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
836
			game:GetService("Debris"):AddItem(prt, 10)
837
			table.insert(Effects, {
838
				prt,
839
				"Cylinder",
840
				delay,
841
				x3,
842
				y3,
843
				z3,
844
				msh
845
			})
846
		end;
847
	};
848
849
850
	Wave = {
851
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
852
			local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
853
			prt.Anchored = true
854
			prt.CFrame = cframe
855
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
856
			game:GetService("Debris"):AddItem(prt, 10)
857
			table.insert(Effects, {
858
				prt,
859
				"Cylinder",
860
				delay,
861
				x3,
862
				y3,
863
				z3,
864
				msh
865
			})
866
		end;
867
	};
868
869
	Break = {
870
		Create = function(brickcolor, cframe, x1, y1, z1)
871
			local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
872
			prt.Anchored = true
873
			prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
874
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
875
			local num = math.random(10, 50) / 1000
876
			game:GetService("Debris"):AddItem(prt, 10)
877
			table.insert(Effects, {
878
				prt,
879
				"Shatter",
880
				num,
881
				prt.CFrame,
882
				math.random() - math.random(),
883
				0,
884
				math.random(50, 100) / 100
885
			})
886
		end;
887
	};
888
	
889
	Fire = {
890
		Create = function(brickcolor, cframe, x1, y1, z1, delay)
891
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
892
			prt.Anchored = true
893
			prt.CFrame = cframe
894
			msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
895
			game:GetService("Debris"):AddItem(prt, 10)
896
			table.insert(Effects, {
897
				prt,
898
				"Fire",
899
				delay,
900
				1,
901
				1,
902
				1,
903
				msh
904
			})
905
		end;
906
	};
907
	
908
	FireWave = {
909
		Create = function(brickcolor, cframe, x1, y1, z1)
910
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
911
			prt.Anchored = true
912
			prt.CFrame = cframe
913
			msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
914
			local d = Create("Decal"){
915
				Parent = prt,
916
				Texture = "rbxassetid://26356434",
917
				Face = "Top",
918
			}
919
			local d = Create("Decal"){
920
				Parent = prt,
921
				Texture = "rbxassetid://26356434",
922
				Face = "Bottom",
923
			}
924
			game:GetService("Debris"):AddItem(prt, 10)
925
			table.insert(Effects, {
926
				prt,
927
				"FireWave",
928
				1,
929
				30,
930
				math.random(400, 600) / 100,
931
				msh
932
			})
933
		end;
934
	};
935
	
936
	Lightning = {
937
		Create = function(p0, p1, tym, ofs, col, th, tra, last)
938
			local magz = (p0 - p1).magnitude
939
			local curpos = p0
940
			local trz = {
941
				-ofs,
942
				ofs
943
			}
944
			for i = 1, tym do
945
				local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
946
				local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
947
				local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
948
				li.Material = "Neon"
949
				if tym == i then
950
					local magz2 = (curpos - p1).magnitude
951
					li.Size = Vector3.new(th, th, magz2)
952
					li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
953
					table.insert(Effects, {
954
						li,
955
						"Disappear",
956
						last
957
					})
958
				else
959
					do
960
						do
961
							li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
962
							curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
963
							game.Debris:AddItem(li, 10)
964
							table.insert(Effects, {
965
								li,
966
								"Disappear",
967
								last
968
							})
969
						end
970
					end
971
				end
972
			end
973
		end
974
	};
975
976
	EffectTemplate = {
977
978
	};
979
}
980
981
982
function ears()
983
	local quote = math.random(1, 10)
984
	if quote == 1 then
985
			ow = CFuncs.Sound.Create("276916733", Character, 10, 1)
986
                        Instance.new("DistortionSoundEffect", ow).Level = .95
987
	elseif quote == 2 then
988
			ow = CFuncs.Sound.Create("222045669", Character, 10, 1)
989
                        Instance.new("DistortionSoundEffect", ow).Level = .95
990
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "I played college ball yaknow", 1.5, BrickColor.new("Grey").Color)
991
	elseif quote == 3 then
992
			ow = CFuncs.Sound.Create("657527128", Character, 10, 1)
993
                        Instance.new("DistortionSoundEffect", ow).Level = .95      
994
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "Oof", 1.5, BrickColor.new("Grey").Color)
995
	elseif quote == 4 then
996
			CFuncs.Sound.Create("230292394", Character, 10, 1)
997
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "AAAAAH", 1.5, BrickColor.new("Grey").Color)
998
	elseif quote == 5 then
999
			CFuncs.Sound.Create("230255621", Character, 10, 1)
1000
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "SO", 1.5, BrickColor.new("Grey").Color)
1001
wait(.2)
1002
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "DAH", 1.5, BrickColor.new("Grey").Color)
1003
	elseif quote == 6 then
1004
			CFuncs.Sound.Create("230255698", Character, 10, 1)
1005
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "Y E S", 1.5, BrickColor.new("Grey").Color)
1006
	elseif quote == 7 then
1007
			CFuncs.Sound.Create("230255738", Character, 10, 1)
1008
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "OH", 1.5, BrickColor.new("Grey").Color)
1009
	elseif quote == 8 then
1010
			CFuncs.Sound.Create("230292118", Character, 10, 1)
1011
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "AAAAAAAA", 1.5, BrickColor.new("Grey").Color)
1012
	elseif quote == 9 then
1013
			CFuncs.Sound.Create("230292073", Character, 10, 1)
1014
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "UWEEEEEEEEEEH", 1.5, BrickColor.new("Grey").Color)
1015
	elseif quote == 10 then
1016
			ow = CFuncs.Sound.Create("225279648", Character, 10, 1)
1017
                        Instance.new("DistortionSoundEffect", ow).Level = .95
1018
ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), "help", 1.5, BrickColor.new("Grey").Color)
1019
	end
1020
	end
1021
1022
1023
1024
1025
1026
function joj()
1027
while oof == true do
1028
	attack = true
1029
	local con = Hitbox.Touched:connect(function(hit)
1030
	Damage(Hitbox, hit, 0, 0, math.random(300,300), "Normal", RootPart, 0.2, "148862502", 1)end)
1031
CFuncs.Sound.Create("233856140", Hitbox, 10, 1)
1032
	for i = 0, 1, 0.1 do
1033
		swait()
1034
		PlayAnimationFromTable({
1035
         CFrame.new(0.318533748, 1.11758709e-08, -0.186876655, 0.571150839, -0.107324705, 0.813798547, -0.321393877, 0.883022606, 0.342018932, -0.755309701, -0.456894249, 0.469845593) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1036
         CFrame.new(-0.136643112, 1.46224117, -0.102674514, 0.571150839, -0.321393877, -0.755309701, -0.107324705, 0.883022606, -0.456894249, 0.813798547, 0.342018932, 0.469845593) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1037
         CFrame.new(1.34420753, 1.19733691, -0.575926542, -0.0377464592, -0.0365618169, 0.998618245, -0.0365605801, -0.998610795, -0.0379435122, 0.998618245, -0.0379423201, 0.0363572836) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1038
         CFrame.new(-1.54852927, 1.0183481, -0.403962731, 0.992945313, -0.0193823874, 0.11697869, 0.0193829238, -0.946746707, -0.321395338, 0.116978586, 0.321395338, -0.93969202) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1039
         CFrame.new(1.30056286, -1.52663183, -0.684036016, 0.872286201, -0.321393877, -0.368541837, 0.13550131, 0.883022606, -0.449344397, 0.469847292, 0.342018932, 0.813797712) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1040
         CFrame.new(-0.0819230229, -1.98630714, -0.796365142, 0.843013644, -0.321393877, 0.431316614, 0.431316495, 0.883022606, -0.185032547, -0.321394026, 0.342018932, 0.883022547) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1041
		}, .3, false)
1042
	end
1043
		for i = 0, 1, 0.1 do
1044
		swait()
1045
		PlayAnimationFromTable({
1046
         CFrame.new(-0.70452857, 1.34110451e-07, -0.85472101, 0.0479760207, 0.375900865, -0.925417125, -0.321394145, 0.883022726, 0.342018545, 0.945729494, 0.281014919, 0.163176239) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1047
         CFrame.new(-0.332258016, 1.42813265, -0.198432297, 0.0479760207, -0.321394145, 0.945729494, 0.375900865, 0.883022726, 0.281014919, -0.925417125, 0.342018545, 0.163176239) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1048
         CFrame.new(1.3427434, 0.740131199, -1.01291919, 0.0505371541, -0.0144109726, 0.998618364, 0.883102953, 0.467642725, -0.0379427671, -0.466449738, 0.883800209, 0.0363596678) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1049
         CFrame.new(-1.46270001, 0.38253215, -1.0271579, 0.992945492, -0.11697793, -0.01938124, 0.0193838775, 0.321395963, -0.946746528, 0.116977483, 0.939691901, 0.321396172) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1050
         CFrame.new(1.30056417, -1.52663159, -0.684035659, 0.872286379, -0.321394145, -0.368541002, 0.1355021, 0.883022726, -0.449344009, 0.469846606, 0.342018545, 0.813798249) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1051
         CFrame.new(-0.0819211155, -1.98630702, -0.796365023, 0.84301424, -0.321394145, 0.431315303, 0.431316257, 0.883022726, -0.18503274, -0.321392775, 0.342018545, 0.883023262) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1052
		}, .3, false)
1053
		end
1054
		con:Disconnect()
1055
		attack = false
1056
end
1057
end
1058
1059
Mouse.Button1Down:connect(function()
1060
	if attack == false and oof == false then
1061
		oof = true
1062
        joj()
1063
	end
1064
end)
1065
1066
1067
1068
Mouse.Button1Up:connect(function()
1069
	if attack == true and oof == true then
1070
		oof = false
1071
	end
1072
end)
1073
1074
1075
1076
1077
Mouse.KeyDown:connect(function(k)
1078
	k = k:lower()
1079
	if k == 't' then
1080
ears()
1081
	end
1082
end)
1083
1084
while true do
1085
	swait()
1086
	sref.CFrame = RightArm.CFrame * CFrame.new(0, -1.5, 0) * CFrame.fromEulerAnglesXYZ(-1.57, 0, 0)
1087
	for i, v in pairs(Character:GetChildren()) do
1088
		if v:IsA("Part") then
1089
			v.Material = "SmoothPlastic"
1090
		elseif v:IsA("Accessory") then
1091
			v:WaitForChild("Handle").Material = "SmoothPlastic"
1092
		end
1093
	end
1094
	Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
1095
	velocity = RootPart.Velocity.y
1096
	sine = sine + change
1097
	local hit, pos = rayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
1098
	if RootPart.Velocity.y > 1 and hit == nil then 
1099
		Anim = "Jump"
1100
		if attack == false then
1101
			PlayAnimationFromTable({
1102
				CFrame.new(0, 0.0486936681, -0.0429394133, 1, 0, -0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1103
				CFrame.new(0, 1.48698187, -0.0992434025, 1, 0, 0, 0, 0.98480767, 0.173648626, -0, -0.173648626, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1104
				CFrame.new(1.66118193, 0.583681226, 0.430878729, 0.556951106, -0.772693694, -0.30454877, 0.830109596, 0.506009281, 0.234249175, -0.026898358, -0.383274168, 0.923242927) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1105
				CFrame.new(-1.65963519, 0.695907593, 0.339572817, 0.482961893, 0.810776234, 0.330741376, -0.866026103, 0.498096228, 0.0435779653, -0.129409045, -0.307477146, 0.94271481) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1106
				CFrame.new(0.499997795, -1.71809137, -0.102601528, 0.984807849, 3.55863392e-007, -0.173647791, 0.0593907312, 0.939692557, 0.336824298, 0.163175657, -0.342020214, 0.925416589) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1107
				CFrame.new(-0.599241376, -1.29528463, -0.396836221, 0.992403984, 0.086823605, 0.0871558413, -0.118890785, 0.858931601, 0.498097867, -0.0316142589, -0.504676282, 0.862729669) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1108
			}, .3, false)
1109
		end
1110
	elseif RootPart.Velocity.y < -1 and hit == nil then 
1111
		Anim = "Fall"
1112
		if attack == false then
1113
			PlayAnimationFromTable({
1114
				CFrame.new(-0, -0.0520263538, -0.0354017057, 1, 0, 0, 0, 0.965925872, 0.258818984, 0, -0.258818984, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1115
				CFrame.new(0, 1.51533091, -0.10684365, 1, 0, 0, 0, 0.965925872, 0.258819342, 0, -0.258819342, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1116
				CFrame.new(1.67554009, 0.885679007, 0.385592818, 0.374123871, -0.696466088, -0.61234498, 0.914592147, 0.386364758, 0.119345918, 0.153468132, -0.604696095, 0.781530797) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1117
				CFrame.new(-1.67474985, 0.999329269, 0.296636045, 0.250219911, 0.753912985, 0.607457995, -0.927206695, 0.367205799, -0.0738086402, -0.278707415, -0.544770718, 0.79091537) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1118
				CFrame.new(0.504494727, -1.81757987, -0.0935191363, 0.984807849, -0.0449431092, -0.167730823, 0.059390761, 0.99484998, 0.0821366012, 0.163175508, -0.0908504426, 0.982405365) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1119
				CFrame.new(-0.623603821, -1.49203336, -0.421764404, 0.992403865, 0.122534379, 0.0109562073, -0.118891656, 0.978150725, -0.17054674, -0.0316146575, 0.167948633, 0.985288799) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1120
			}, .3, false)
1121
		end
1122
	elseif Torsovelocity < 1 and hit ~= nil then
1123
		Anim = "Idle"
1124
		if attack == false then
1125
			change = 1
1126
		PlayAnimationFromTable({
1127
         CFrame.new(1.90734863e-06, 0, 0, 1, 0, 0, 0, 0.939692736, 0.342019886, 0, -0.342019916, 0.939692736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1128
         CFrame.new(-1.90734863e-06, 1.49520886, -0.307131112, 1, 0, 0, 0, 0.939692736, -0.342019916, 0, 0.342019886, 0.939692736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1129
         CFrame.new(1.37194049, -0.0753216743, -0.606283188, 0.229498088, 0.301554978, 0.925416291, 0.481514871, 0.791113436, -0.377204269, -0.845857084, 0.532169282, 0.0363558233) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1130
         CFrame.new(-1.5, 0.0121572316, -0.267316073, 1, 0, -0, 0, 0.642788708, -0.766043544, 0, 0.766043544, 0.642788708) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1131
         CFrame.new(0.699996471, -1.87938261, -0.684038877, 0.866025388, 0, -0.500000238, -0.171010032, 0.939692736, -0.296197921, 0.469846606, 0.342019886, 0.813797772) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1132
         CFrame.new(-0.756342053, -1.83849907, -0.79636544, 0.939692736, 0, 0.342019886, 0.116977625, 0.939692736, -0.321393639, -0.321393639, 0.342019886, 0.883022428) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1133
		}, .3, false)
1134
		end
1135
	elseif Torsovelocity > 2 and hit ~= nil then
1136
		Anim = "Walk"
1137
		if attack == false then
1138
			change = 2
1139
		PlayAnimationFromTable({
1140
         CFrame.new(1.90734863e-06, 0, 0, 1, 0, 0, 0, 0.939692736, 0.342019886, 0, -0.342019916, 0.939692736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1141
         CFrame.new(-1.90734863e-06, 1.49520886, -0.307131112, 1, 0, 0, 0, 0.939692736, -0.342019916, 0, 0.342019886, 0.939692736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1142
         CFrame.new(1.37194049, -0.0753216743, -0.606283188, 0.229498088, 0.301554978, 0.925416291, 0.481514871, 0.791113436, -0.377204269, -0.845857084, 0.532169282, 0.0363558233) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1143
         CFrame.new(-1.5, 0.0121572316, -0.267316073, 1, 0, -0, 0, 0.642788708, -0.766043544, 0, 0.766043544, 0.642788708) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1144
				CFrame.new(.5, -1.64 - 0.5 * math.cos(sine / 8) / 2, 0 + 2 *  math.sin(sine / 8) / 2) * CFrame.Angles(math.rad(-70 *  math.sin(sine / 8)), math.rad(-3), math.rad(0)),
1145
				CFrame.new(-.5, -1.64 + 0.5 * math.cos(sine / 8) / 2, 0 - 2 * math.sin(sine / 8) / 2) * CFrame.Angles(math.rad(70 *  math.sin(sine / 8)), math.rad(3), math.rad(0)),
1146
			}, .3, false)
1147
		end
1148
	end
1149
	if 0 < #Effects then
1150
		for e = 1, #Effects do
1151
			if Effects[e] ~= nil then
1152
				local Thing = Effects[e]
1153
				if Thing ~= nil then
1154
					local Part = Thing[1]
1155
					local Mode = Thing[2]
1156
					local Delay = Thing[3]
1157
					local IncX = Thing[4]
1158
					local IncY = Thing[5]
1159
					local IncZ = Thing[6]
1160
					if Thing[2] == "Shoot" then
1161
						local Look = Thing[1]
1162
						local move = 5
1163
						local hit, pos = rayCast(Thing[4], Thing[1], move, Character)
1164
						if Thing[10] ~= nil then
1165
							da = pos
1166
							cf2 = CFrame.new(Thing[4], Thing[10].Position)
1167
							cfa = CFrame.new(Thing[4], pos)
1168
							tehCF = cfa:lerp(cf2, 0.2)
1169
							Thing[1] = tehCF.lookVector
1170
						end
1171
						local mag = (Thing[4] - pos).magnitude
1172
						Effects.Elect.Create(CFrame.new((Thing[4] + pos) / 2, pos), 4, 4, 4)
1173
						Effects.Sphere.Create(BrickColor.new("New Yeller"), CFrame.new((Thing[4] + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0), 3, 3, 3, 5, 5, 5, 0.15)
1174
						Thing[4] = Thing[4] + Look * move
1175
						Thing[3] = Thing[3] - 1
1176
						if 2 < Thing[5] then
1177
							Thing[5] = Thing[5] - 0.3
1178
							Thing[6] = Thing[6] - 0.3
1179
						end
1180
						if hit ~= nil then
1181
							Thing[3] = 0
1182
							MagnitudeDamage(hit, 5, 10, 15, 0, "Normal", "161006093", 0.8)
1183
							ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Really red"), "Reference", Vector3.new())
1184
							ref.Anchored = true
1185
							ref.CFrame = CFrame.new(pos)
1186
							Effects.Block.Create(BrickColor.new("New Yeller"), CFrame.new(pos), 1, 1, 1, 2, 2, 2, .05)
1187
							Effects.Sphere.Create(BrickColor.new("New Yeller"), CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.03)
1188
							game:GetService("Debris"):AddItem(ref, 1)
1189
						end
1190
						if Thing[3] <= 0 then
1191
							table.remove(Effects, e)
1192
						end
1193
					end
1194
					do
1195
						do
1196
							if Thing[2] == "FireWave" then
1197
								if Thing[3] <= Thing[4] then
1198
									Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
1199
									Thing[3] = Thing[3] + 1
1200
									Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
1201
								else
1202
									Part.Parent = nil
1203
									table.remove(Effects, e)
1204
								end
1205
							end
1206
							if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
1207
								if Thing[1].Transparency <= 1 then
1208
									if Thing[2] == "Block1" then
1209
										Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1210
										Mesh = Thing[7]
1211
										Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1212
										Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1213
									else
1214
										if Thing[2] == "Block2" then
1215
											Thing[1].CFrame = Thing[1].CFrame
1216
											Mesh = Thing[7]
1217
											Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1218
											Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1219
										else
1220
											if Thing[2] == "Fire" then
1221
												Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
1222
												Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1223
												Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1224
											else
1225
												if Thing[2] == "Cylinder" then
1226
													Mesh = Thing[7]
1227
													Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1228
													Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1229
												else
1230
													if Thing[2] == "Blood" then
1231
														Mesh = Thing[7]
1232
														Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
1233
														Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1234
														Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1235
													else
1236
														if Thing[2] == "Elec" then
1237
															Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
1238
															Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1239
														else
1240
															if Thing[2] == "Disappear" then
1241
																Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1242
															end
1243
														end
1244
													end
1245
												end
1246
											end
1247
										end
1248
									end
1249
								else
1250
									Part.Parent = nil
1251
									table.remove(Effects, e)
1252
								end
1253
							end
1254
						end
1255
					end
1256
				end
1257
			end
1258
		end
1259
	end
1260
end