View difference between Paste ID: 4VkEnPcL and TdJCMT9t
SHOW: | | - or go back to the newest paste.
1-
--Thanks to someone they name i will not say is this being traded around.--
1+
-- This script has been converted to FE by iPxter
2-
--If they read this, fuck you.--
2+
3
4-
--Anyways Enjoy.--
4+
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6-
--||    CREATED BY SHACKLUSTER THE EDIT BY XDAVODIOX    ||
6+
do
7-
--\\====================================================//--
7+
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10-
--Well that text under this tet is nothing anymore.--
10+
	--RemoteEvent for communicating
11-
--You are a fucking faggot if you leaked this bitch.--
11+
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15-
local Player = game.Players.localPlayer
15+
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30-
Player = game.Players.LocalPlayer
30+
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = game:GetService("Players").LocalPlayer
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end
86
87
local Players = game:GetService("Players")
88
local MainCmd = "script"
89
local CmdSub = #MainCmd + 1
90
91
for _, Child in pairs(script:GetChildren()) do
92
	if Child:IsA("Script") then
93
		Child.Disabled = true
94
	end
95
end
96
97
function OnChatted(owner, message)
98
	if message:sub(1, CmdSub) == MainCmd .."/" then
99
		local scriptChildren = script:GetChildren()
100
		for _, Child in pairs(scriptChildren) do
101
			if message:sub(CmdSub + 1) == Child.Name:lower() then
102
				local New = Child:Clone()
103
				New.Parent = owner.Backpack or owner.PlayerGui
104
				New.Disabled = false
105
			end
106
		end
107
	end 
108
end
109
110
function ConnectPlr(name)
111
	for _, PossiblePlayer in pairs(Players:GetChildren()) do
112
		if PossiblePlayer:IsA("Player") then
113
			local Player = PossiblePlayer
114
			if Player.Name == name then
115
				Player.Chatted:Connect(function(MESSAGE)
116
					OnChatted(Player, MESSAGE:lower())
117
				end)
118
			else
119
				error("No player found!")
120
			end
121
		end
122
	end
123
end
124
125
return ConnectPlr
126
127
local Player = owner
128
local Character = Player.Character
129
local Humanoid = Character.Humanoid
130
local LeftArm = Character["Left Arm"]
131
local RightArm = Character["Right Arm"]
132
local LeftLeg = Character["Left Leg"]
133
local RightLeg = Character["Right Leg"]
134
local Head = Character.Head
135
local Torso = Character.Torso
136
local RootPart = Character.HumanoidRootPart
137
local RootJoint = RootPart.RootJoint
138
local txt = Instance.new("BillboardGui", Character)
139
local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
140
local velocity = RootPart.Velocity.y
141
CV = "Maroon"
142
Player = owner
143-
plr=Game.Players.LocalPlayer
143+
144
warn("Edit by XDavodioX")
145
local txt = Instance.new("BillboardGui", Character)
146
txt.Adornee = Character.Head
147
txt.Name = "_status"
148
txt.Size = UDim2.new(2, 0, 1.2, 0)
149
txt.StudsOffset = Vector3.new(-9, 8, 0)
150
local text = Instance.new("TextLabel", txt)
151
text.Size = UDim2.new(10, 0, 7, 0)
152
text.FontSize = "Size24"
153
text.TextScaled = true
154
text.TextTransparency = 0
155
text.BackgroundTransparency = 1
156
text.TextTransparency = 0
157
text.TextStrokeTransparency = 1
158
text.Font = "Code"
159
v = Instance.new("Part")
160
v.Name = "ColorBrick"
161
v.Parent = Player.Character
162
v.FormFactor = "Symmetric"
163
v.Anchored = true
164
v.CanCollide = false
165
v.BottomSurface = "Smooth"
166
v.TopSurface = "Smooth"
167
v.Size = Vector3.new(10, 5, 3)
168
v.Transparency = 1
169
v.CFrame = Character.Torso.CFrame
170
v.BrickColor = BrickColor.new(CV)
171
v.Transparency = 1
172
touchCounter = 0
173
local cR=255
174
local cG=0
175
local cB=0
176
local flg5=1 local omgidk=1
177
local add=15
178
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
179
	if omgidk>10000 then omgidk=0 end
180
	omgidk=omgidk+1
181
	if cR>=255 then flg5=1 end
182
	if cG>=255 then flg5=2 end
183
	if cB>=255 then flg5=3 end
184
	if flg5==1 then cR=cR-add cG=cG+add end
185
	if flg5==2 then cG=cG-add cB=cB+add end
186
	if flg5==3 then cB=cB-add cR=cR+add end
187
	color=Color3.fromRGB(cR,cG,cB)
188
	text.TextColor3 = color
189
end)
190
v.Shape = "Block"
191
text.Text = Player.Name..", The Rainbow Puncher"
192
function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
193
	for _, c in pairs(workspace:children()) do
194
		local hum = c:findFirstChild("Humanoid")
195-
Player = game:GetService("Players").LocalPlayer
195+
196
			local head = hit
197
			if head ~= nil then
198
				local targ = head.Position - Part.Position
199
				local mag = targ.magnitude
200
				if Magnitude >= mag and c.Name ~= Player.Name then
201-
Mouse = Player:GetMouse()
201+
202
					Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, 0.1, HitSound, HitPitch)
203
				end
204
			end
205
		end
206
	end
207
end
208
209
Parts={}
210
function GetDiscoColor(hue)
211
    local section = hue % 1 * 3
212
    local secondary = 0.5 * math.pi * (section % 1)
213
    if section < 1 then
214
        return Vector3.new(1, 1 - math.cos(secondary), 1 - math.sin(secondary))
215
    elseif section < 2 then
216
        return Vector3.new(1 - math.sin(secondary), 1, 1 - math.cos(secondary))
217
    else
218
        return Vector3.new(1 - math.cos(secondary), 1 - math.sin(secondary), 1)
219
    end
220
end
221
Part = function(x,y,z,color,tr,cc,an,parent)
222
    local p = Instance.new('Part',parent or Weapon)
223
    p.formFactor = 'Custom'
224
    p.Size = Vector3.new(x,y,z)
225
    p.BrickColor = BrickColor.new(color)
226
    p.CanCollide = cc
227
    p.Transparency = tr
228
    p.Anchored = an
229
    p.TopSurface,p.BottomSurface = 0,0
230
    p:BreakJoints''
231
    table.insert(Parts,p)
232
    return p
233
end
234
Weld = function(p0,p1)
235
    local w = Instance.new('Motor',p0)
236
    w.Part0 = p0
237
    w.Part1 = p1
238
    return w 
239
end
240
Mesh = function(par,num,x,y,z)
241
    local msh = 0
242
    if num == 1 then
243
        msh = Instance.new("SpecialMesh",par)
244
        msh.MeshId='rbxasset://fonts/torso.mesh'
245
        msh.TextureId='rbxasset://25701026'
246
    end
247
    if num == 2 then
248
        msh = Instance.new("SpecialMesh",par)
249
        msh.MeshId='rbxasset://fonts/head.mesh'
250
        msh.TextureId='rbxassetid://25701026'
251
    end
252
    msh.Scale = Vector3.new(x,y,z)
253
    return msh
254
end
255
plr=owner
256
char=plr.Character
257
for _,v in pairs(char:GetChildren()) do
258
    if v.ClassName=="Part" then
259
        v.Transparency=1
260
    elseif v.ClassName=="Hat" then
261
        v.Handle.Mesh.TextureId='rbxassetid://25701026'
262
        table.insert(Parts,v.Handle)
263
    end
264
end
265
t=Part(1,1,1,'',0,false,false,char)
266
Mesh(t,1,1,1,1)
267
Weld(char.Torso,t)
268
a=Part(1,1,1,'',0,false,false,char)
269
Mesh(a,1,.5,1,1)
270
Weld(char['Right Arm'],a)
271
a=Part(1,1,1,'',0,false,false,char)
272
Mesh(a,1,.5,1,1)
273
Weld(char['Left Arm'],a)
274
l=Part(1,1,1,'',0,false,false,char)
275
Mesh(l,1,.5,1,1)
276
Weld(char['Right Leg'],l)
277
l=Part(1,1,1,'',0,false,false,char)
278
Mesh(l,1,.5,1,1)
279
Weld(char['Left Leg'],l)
280
h=Part(1,1,1,'',0,false,false,char)
281
Mesh(h,2,1,1,1)
282
Weld(char.Head,h)
283
Spawn(function()
284
    while(coroutine.yield())do
285
        for i=1,#Parts do
286
            Parts[i].Mesh.VertexColor=GetDiscoColor(tick()*.8)--vertex 4 lyfe
287
        end
288
    end;
289
end);
290
291
char.Head.face:Destroy()
292
293
for i,v in pairs(char:GetChildren()) do
294
	if v.ClassName == "Accessory" then
295
		v:Remove()
296
	elseif v.ClassName == "Shirt" then
297
		v:Remove()
298
	elseif v.ClassName == "Pants" then
299
		v:Remove()
300
	elseif v.ClassName == "ShirtGraphic" then
301
		v:Remove()
302
		end		
303
end
304
305
wait(0.3)
306
307
Player = owner
308
PlayerGui = Player.PlayerGui
309
Cam = workspace.CurrentCamera
310
Backpack = Player.Backpack
311
Character = Player.Character
312
Humanoid = Character.Humanoid
313
RootPart = Character["HumanoidRootPart"]
314
Torso = Character["Torso"]
315
Head = Character["Head"]
316
RightArm = Character["Right Arm"]
317
LeftArm = Character["Left Arm"]
318
RightLeg = Character["Right Leg"]
319
LeftLeg = Character["Left Leg"]
320
RootJoint = RootPart["RootJoint"]
321
Neck = Torso["Neck"]
322
RightShoulder = Torso["Right Shoulder"]
323
LeftShoulder = Torso["Left Shoulder"]
324
RightHip = Torso["Right Hip"]
325
LeftHip = Torso["Left Hip"]
326
local sick = Instance.new("Sound",Character)
327
sick.SoundId = "rbxassetid://198584962"
328
sick.Looped = true
329
sick.Pitch = 1
330
sick.Volume = 86783
331
sick:Play()
332
333
IT = Instance.new
334
CF = CFrame.new
335
VT = Vector3.new
336
RAD = math.rad
337
C3 = Color3.new
338
UD2 = UDim2.new
339
BRICKC = BrickColor.new
340
ANGLES = CFrame.Angles
341
EULER = CFrame.fromEulerAnglesXYZ
342
COS = math.cos
343
ACOS = math.acos
344
SIN = math.sin
345
ASIN = math.asin
346
ABS = math.abs
347
MRANDOM = math.random
348
FLOOR = math.floor
349
350
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
351
	local NEWMESH = IT(MESH)
352
	if MESH == "SpecialMesh" then
353
		NEWMESH.MeshType = MESHTYPE
354
		if MESHID ~= "nil" and MESHID ~= "" then
355
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
356
		end
357
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
358
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
359
		end
360
	end
361
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
362
	NEWMESH.Scale = SCALE
363
	NEWMESH.Parent = PARENT
364
	return NEWMESH
365
end
366
367
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
368
	local NEWPART = IT("Part")
369
	NEWPART.formFactor = FORMFACTOR
370
	NEWPART.Reflectance = REFLECTANCE
371
	NEWPART.Transparency = TRANSPARENCY
372
	NEWPART.CanCollide = false
373
	NEWPART.Locked = true
374
	NEWPART.Anchored = true
375
	if ANCHOR == false then
376
		NEWPART.Anchored = false
377
	end
378
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
379
	NEWPART.Name = NAME
380
	NEWPART.Size = SIZE
381
	NEWPART.Position = Torso.Position
382
	NEWPART.Material = MATERIAL
383
	NEWPART:BreakJoints()
384
	NEWPART.Parent = PARENT
385
	return NEWPART
386
end
387
388
389
function CreatePart1(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, NAME, SIZE, ANCHOR)
390
	local NEWPART = IT("Part")
391
	NEWPART.formFactor = FORMFACTOR
392
	NEWPART.Reflectance = REFLECTANCE
393
	NEWPART.Transparency = TRANSPARENCY
394
	NEWPART.CanCollide = false
395
	NEWPART.Locked = true
396
	NEWPART.Anchored = true
397
	if ANCHOR == false then
398
		NEWPART.Anchored = false
399
	end
400
	NEWPART.Name = NAME
401
	NEWPART.Size = SIZE
402
	NEWPART.Position = Torso.Position
403
	NEWPART.Material = MATERIAL
404
	NEWPART:BreakJoints()
405
	NEWPART.Parent = PARENT
406
	return NEWPART
407
end
408
409
--//=================================\\
410
--||		  CUSTOMIZATION
411
--\\=================================//
412
413
Player_Size = 1 --Size of the player.
414
Animation_Speed = 6
415
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
416
417
local Speed = 500
418
local Effects2 = {}
419
420
local Rainbow = { --This is the main color set. Try to use more than just a few, make it fade in order as well
421
"Crimson", 
422
"Bright red", 
423
"Neon orange", 
424
"Deep orange", 
425
"Bright yellow", 
426
"New Yeller", 
427
"Br. yellowish green", 
428
"Lime green", 
429
"Sea green", 
430
"Bright bluish green",
431
"Bright blue", 
432
"Lavender",
433
"Royal purple",
434
"Eggplant",
435
"Hot pink"
436
}
437
438
--//=================================\\
439
--|| 	  END OF CUSTOMIZATION
440
--\\=================================//
441
442
	local function weldBetween(a, b)
443
	    local weldd = Instance.new("ManualWeld")
444
	    weldd.Part0 = a
445
	    weldd.Part1 = b
446
	    weldd.C0 = CFrame.new()
447
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
448
	    weldd.Parent = a
449
	    return weldd
450
	end
451
452
--//=================================\\
453
--|| 	      USEFUL VALUES
454
--\\=================================//
455
456
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
457
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
458
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
459
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
460
local CHANGEDEFENSE = 0
461
local CHANGEDAMAGE = 0
462
local CHANGEMOVEMENT = 0
463
local ANIM = "Idle"
464
local ATTACK = false
465
local EQUIPPED = false
466
local HOLD = false
467
local COMBO = 1
468
local Rooted = false
469
local SINE = 0
470
local KEYHOLD = false
471
local CHANGE = 2 / Animation_Speed
472
local WALKINGANIM = false
473
local WALK = 0
474
local VALUE1 = false
475
local VALUE2 = false
476
local ROBLOXIDLEANIMATION = IT("Animation")
477
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
478
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
479
--ROBLOXIDLEANIMATION.Parent = Humanoid
480
local WEAPONGUI = IT("ScreenGui", PlayerGui)
481
WEAPONGUI.Name = "Weapon GUI"
482
local Weapon = IT("Model")
483
Weapon.Name = "Adds"
484
local HITFLOOR = nil
485
local Effects = IT("Folder", Weapon)
486
Effects.Name = "Effects"
487
local ANIMATOR = Humanoid.Animator
488
local ANIMATE = Character.Animate
489
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
490
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
491
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
492
local HITBLOCKSOUNDS = {"199148933", "199148947"}
493
local UNANCHOR = true
494
495
rainbowNumber = 1
496
497
local SKILLTEXTCOLOR = BrickColor.new(Rainbow[rainbowNumber]).Color
498
499
--//=================================\\
500
--\\=================================//
501
502
503
504
505
--//=================================\\
506
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
507
--\\=================================//
508
509
ArtificialHB = Instance.new("BindableEvent", script)
510
ArtificialHB.Name = "ArtificialHB"
511
512
script:WaitForChild("ArtificialHB")
513
514
frame = Frame_Speed
515
tf = 0
516
allowframeloss = false
517
tossremainder = false
518
lastframe = tick()
519
script.ArtificialHB:Fire()
520
521
game:GetService("RunService").Heartbeat:connect(function(s, p)
522
	tf = tf + s
523
	if tf >= frame then
524
		if allowframeloss then
525
			script.ArtificialHB:Fire()
526
			lastframe = tick()
527
		else
528
			for i = 1, math.floor(tf / frame) do
529
				script.ArtificialHB:Fire()
530
			end
531
		lastframe = tick()
532
		end
533
		if tossremainder then
534
			tf = 0
535
		else
536
			tf = tf - frame * math.floor(tf / frame)
537
		end
538
	end
539
end)
540
541
--//=================================\\
542
--\\=================================//
543
544
545
546
--//=================================\\
547
--|| 	      SOME FUNCTIONS
548
--\\=================================//
549
550
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
551
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
552
end
553
554
function PositiveAngle(NUMBER)
555
	if NUMBER >= 0 then
556
		NUMBER = 0
557
	end
558
	return NUMBER
559
end
560
561
function NegativeAngle(NUMBER)
562
	if NUMBER <= 0 then
563
		NUMBER = 0
564
	end
565
	return NUMBER
566
end
567
568
function Swait(NUMBER)
569
	if NUMBER == 0 or NUMBER == nil then
570
		ArtificialHB.Event:wait()
571
	else
572
		for i = 1, NUMBER do
573
			ArtificialHB.Event:wait()
574
		end
575
	end
576
end
577
578
function QuaternionFromCFrame(cf)
579
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
580
	local trace = m00 + m11 + m22
581
	if trace > 0 then 
582
		local s = math.sqrt(1 + trace)
583
		local recip = 0.5 / s
584
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
585
	else
586
		local i = 0
587
		if m11 > m00 then
588
			i = 1
589
		end
590
		if m22 > (i == 0 and m00 or m11) then
591
			i = 2
592
		end
593
		if i == 0 then
594
			local s = math.sqrt(m00 - m11 - m22 + 1)
595
			local recip = 0.5 / s
596
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
597
		elseif i == 1 then
598
			local s = math.sqrt(m11 - m22 - m00 + 1)
599
			local recip = 0.5 / s
600
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
601
		elseif i == 2 then
602
			local s = math.sqrt(m22 - m00 - m11 + 1)
603
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
604
		end
605
	end
606
end
607
 
608
function QuaternionToCFrame(px, py, pz, x, y, z, w)
609
	local xs, ys, zs = x + x, y + y, z + z
610
	local wx, wy, wz = w * xs, w * ys, w * zs
611
	local xx = x * xs
612
	local xy = x * ys
613
	local xz = x * zs
614
	local yy = y * ys
615
	local yz = y * zs
616
	local zz = z * zs
617
	return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
618
end
619
 
620
function QuaternionSlerp(a, b, t)
621
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
622
	local startInterp, finishInterp;
623
	if cosTheta >= 0.0001 then
624
		if (1 - cosTheta) > 0.0001 then
625
			local theta = ACOS(cosTheta)
626
			local invSinTheta = 1 / SIN(theta)
627
			startInterp = SIN((1 - t) * theta) * invSinTheta
628
			finishInterp = SIN(t * theta) * invSinTheta
629
		else
630
			startInterp = 1 - t
631
			finishInterp = t
632
		end
633
	else
634
		if (1 + cosTheta) > 0.0001 then
635
			local theta = ACOS(-cosTheta)
636
			local invSinTheta = 1 / SIN(theta)
637
			startInterp = SIN((t - 1) * theta) * invSinTheta
638
			finishInterp = SIN(t * theta) * invSinTheta
639
		else
640
			startInterp = t - 1
641
			finishInterp = t
642
		end
643
	end
644
	return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
645
end
646
647
function Clerp(a, b, t)
648
	local qa = {QuaternionFromCFrame(a)}
649
	local qb = {QuaternionFromCFrame(b)}
650
	local ax, ay, az = a.x, a.y, a.z
651
	local bx, by, bz = b.x, b.y, b.z
652
	local _t = 1 - t
653
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
654
end
655
656
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
657
	local frame = IT("Frame")
658
	frame.BackgroundTransparency = TRANSPARENCY
659
	frame.BorderSizePixel = BORDERSIZEPIXEL
660
	frame.Position = POSITION
661
	frame.Size = SIZE
662
	frame.BackgroundColor3 = COLOR
663
	frame.BorderColor3 = BORDERCOLOR
664
	frame.Name = NAME
665
	frame.Parent = PARENT
666
	return frame
667
end
668
669
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
670
	local label = IT("TextLabel")
671
	label.BackgroundTransparency = 1
672
	label.Size = UD2(1, 0, 1, 0)
673
	label.Position = UD2(0, 0, 0, 0)
674
	label.TextColor3 = TEXTCOLOR
675
	label.TextStrokeTransparency = STROKETRANSPARENCY
676
	label.TextTransparency = TRANSPARENCY
677
	label.FontSize = TEXTFONTSIZE
678
	label.Font = TEXTFONT
679
	label.BorderSizePixel = BORDERSIZEPIXEL
680
	label.TextScaled = false
681
	label.Text = TEXT
682
	label.Name = NAME
683
	label.Parent = PARENT
684
	return label
685
end
686
687
function NoOutlines(PART)
688
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
689
end
690
691
692
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
693
	local NEWWELD = IT(TYPE)
694
	NEWWELD.Part0 = PART0
695
	NEWWELD.Part1 = PART1
696
	NEWWELD.C0 = C0
697
	NEWWELD.C1 = C1
698
	NEWWELD.Parent = PARENT
699
	return NEWWELD
700
end
701
702
function CreateSound(ID, PARENT, VOLUME, PITCH)
703
	local NEWSOUND = nil
704
	coroutine.resume(coroutine.create(function()
705
		NEWSOUND = IT("Sound", PARENT)
706
		NEWSOUND.Volume = VOLUME
707
		NEWSOUND.Pitch = PITCH
708
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
709
		Swait()
710
		NEWSOUND:play()
711
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
712
	end))
713
	return NEWSOUND
714
end
715
716
function CFrameFromTopBack(at, top, back)
717
	local right = top:Cross(back)
718
	return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
719
end
720
721
function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
722
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(0,0,0))
723
	local mesh = IT("SpecialMesh",wave)
724
	mesh.MeshType = "FileMesh"
725
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
726
	mesh.Scale = SIZE
727
	mesh.Offset = VT(0,0,-SIZE.X/8)
728
	wave.CFrame = CFRAME
729
	coroutine.resume(coroutine.create(function(PART)
730
		for i = 1, WAIT do
731
			Swait()
732
			mesh.Scale = mesh.Scale + GROW
733
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
734
			if DOESROT == true then
735
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
736
			end
737
			wave.Transparency = wave.Transparency + (0.5/WAIT)
738
			if wave.Transparency > 0.99 then
739
				wave:remove()
740
			end
741
		end
742
	end))
743
end
744
745
function CreateWave2(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
746
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(0,0,0))
747
	local mesh = IT("SpecialMesh",wave)
748
	mesh.MeshType = "FileMesh"
749
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
750
	mesh.Scale = SIZE
751
	--mesh.Offset = VT(0,0,-SIZE.X/8)
752
	wave.CFrame = CFRAME
753
	coroutine.resume(coroutine.create(function(PART)
754
		for i = 1, WAIT do
755
			Swait()
756
			mesh.Scale = mesh.Scale + GROW
757
			--mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
758
			if DOESROT == true then
759
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
760
			end
761
			wave.Transparency = wave.Transparency + (0.5/WAIT)
762
			if wave.Transparency > 0.99 then
763
				wave:remove()
764
			end
765
		end
766
	end))
767
end
768
769
function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
770
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(0,0,0))
771
	local mesh = IT("SpecialMesh",wave)
772
	mesh.MeshType = "FileMesh"
773
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
774
	mesh.Scale = SIZE
775
	wave.CFrame = CFRAME
776
	coroutine.resume(coroutine.create(function(PART)
777
		for i = 1, WAIT do
778
			Swait()
779
			mesh.Scale = mesh.Scale + GROW
780
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
781
			if DOESROT == true then
782
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
783
			end
784
			wave.Transparency = wave.Transparency + (0.5/WAIT)
785
			if wave.Transparency > 0.99 then
786
				wave:remove()
787
			end
788
		end
789
	end))
790
end
791
792
793
function Slice(SIZE,WAIT,CFRAME,COLOR,GROW)
794
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC("Maroon"), "Effect", VT(1,1,1), true)
795
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
796
	wave.CFrame = CFRAME
797
	coroutine.resume(coroutine.create(function(PART)
798
		for i = 1, WAIT do
799
			Swait()
800
			mesh.Scale = mesh.Scale * GROW
801
			wave.Transparency = wave.Transparency + (0.5/WAIT)
802
			if wave.Transparency > 0.99 then
803
				wave:remove()
804
			end
805
		end
806
	end))
807
end
808
809
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
810
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Maroon"), "Effect", VT(1,1,1), true)
811
	local mesh = IT("SpecialMesh",wave)
812
	mesh.MeshType = "Sphere"
813
	mesh.Scale = SIZE
814
	mesh.Offset = VT(0,0,0)
815
	wave.CFrame = CFRAME
816
	coroutine.resume(coroutine.create(function(PART)
817
		for i = 1, WAIT do
818
			Swait()
819
			mesh.Scale = mesh.Scale + GROW
820
			wave.Transparency = wave.Transparency + (1/WAIT)
821
			if wave.Transparency > 0.99 then
822
				wave:remove()
823
			end
824
		end
825
	end))
826
end
827
828
function MakeForm(PART,TYPE)
829
	if TYPE == "Cyl" then
830
		local MSH = IT("CylinderMesh",PART)
831
	elseif TYPE == "Ball" then
832
		local MSH = IT("SpecialMesh",PART)
833
		MSH.MeshType = "Sphere"
834
	elseif TYPE == "Wedge" then
835
		local MSH = IT("SpecialMesh",PART)
836
		MSH.MeshType = "Wedge"
837
	end
838
end
839
840
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
841
	if FLOOR ~= nil then
842
		coroutine.resume(coroutine.create(function()
843
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
844
			PART.CFrame = CF(POSITION)
845
			for i = 1, 45 do
846
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
847
				RingPiece.Material = FLOOR.Material
848
				RingPiece.Color = FLOOR.Color
849
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE*4, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
850
				Debris:AddItem(RingPiece,SWAIT/100)
851
			end
852
			PART:remove()
853
		end))
854
	end
855
end
856
857
function CheckTableForString(Table, String)
858
	for i, v in pairs(Table) do
859
		if string.find(string.lower(String), string.lower(v)) then
860
			return true
861
		end
862
	end
863
	return false
864
end
865
866
function CheckIntangible(Hit)
867
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
868
	if Hit and Hit.Parent then
869
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
870
			return true
871
		end
872
	end
873
	return false
874
end
875
876
Debris = game:GetService("Debris")
877
878
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
879
	local Direction = CFrame.new(StartPos, Vec).lookVector
880
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
881
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
882
	if RayHit and CheckIntangible(RayHit) then
883
		if DelayIfHit then
884
			wait()
885
		end
886
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
887
	end
888
	return RayHit, RayPos, RayNormal
889
end
890
891
function turnto(position)
892
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
893
end
894
895
--//=================================\\
896
--||	     WEAPON CREATION
897
--\\=================================//
898
local FIST = CreatePart1(3, Weapon, "Neon", 0, 0, "Neon Gauntlet Part1", VT(1.01*Player_Size,1.4*Player_Size,1.01*Player_Size),false)
899
Light = Instance.new("PointLight",FIST)
900
Light.Brightness = 0.85
901
touchCounter = 0
902
local cR=255
903
local cG=0
904
local cB=0
905
local flg5=1 local omgidk=1
906
local add=7.5
907
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
908
	if omgidk>10000 then omgidk=0 end
909
	omgidk=omgidk+1
910
	if cR>=255 then flg5=1 end
911
	if cG>=255 then flg5=2 end
912
	if cB>=255 then flg5=3 end
913
	if flg5==1 then cR=cR-add cG=cG+add end
914
	if flg5==2 then cG=cG-add cB=cB+add end
915
	if flg5==3 then cB=cB-add cR=cR+add end
916
	color=Color3.fromRGB(cR,cG,cB)
917
	Light.Color = color
918
end)
919
local weld = CreateWeldOrSnapOrMotor("Weld", FIST, RightArm, FIST, CF(0 * Player_Size, -0.25 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
920
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.2*Player_Size,0.3*Player_Size,1.2*Player_Size),false)
921
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.6 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
922
923
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
924
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
925
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
926
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
927
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
928
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
929
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
930
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
931
932
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,1.1*Player_Size),false)
933
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
934
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Maroon", "Neon Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,1*Player_Size),false)
935
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.05 * Player_Size, -0.375 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
936
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
937
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
938
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
939
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, 0.33 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
940
local part = CreatePart(3, Weapon, "Metal", 0, 0, "Maroon", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
941
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, -0.33 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
942
touchCounter = 0
943
local cR=255
944
local cG=0
945
local cB=0
946
local flg5=1 local omgidk=1
947
local add=7.5
948
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
949
	if omgidk>10000 then omgidk=0 end
950
	omgidk=omgidk+1
951
	if cR>=255 then flg5=1 end
952
	if cG>=255 then flg5=2 end
953
	if cB>=255 then flg5=3 end
954
	if flg5==1 then cR=cR-add cG=cG+add end
955
	if flg5==2 then cG=cG-add cB=cB+add end
956
	if flg5==3 then cB=cB-add cR=cR+add end
957
	color=Color3.fromRGB(cR,cG,cB)
958
	local d = Weapon:FindFirstChild("Neon Gauntlet Part")
959
	if d then
960
		d.Color = color
961
	end
962
	local d = Weapon:FindFirstChild("Neon Gauntlet Part1")
963
	if d then
964
		d.Color = color
965
	end
966
end)
967
for _, c in pairs(Weapon:GetChildren()) do
968
	if c.ClassName == "Part" then
969
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
970
	end
971
end
972
973
Weapon.Parent = Character
974
975
local BODY = {}
976
977
for _, c in pairs(Character:GetChildren()) do
978
	if c.ClassName == "Part" then
979
		table.insert(BODY,{c,Character})
980
		for _, q in pairs(c:GetChildren()) do
981
			if q.ClassName == "Motor6D" or q.ClassName == "Weld" or q.ClassName == "ManualWeld" then
982
				table.insert(BODY,{q,c})
983
			end
984
		end
985
	end
986
end
987
988
function refit()
989
	Character.Parent = workspace
990
	for e = 1, #BODY do
991
		if BODY[e] ~= nil then
992
			local STUFF = BODY[e]
993
			local PART = STUFF[1]
994
			local PARENT = STUFF[2]
995
			PART.Parent = PARENT
996
		end
997
	end
998
end
999
1000
Humanoid.HealthChanged:connect(function()
1001
	Humanoid.Parent = nil
1002
	Humanoid.MaxHealth = "inf"
1003
	Humanoid.Health = "inf"
1004
	refit()
1005
	Humanoid.Parent = Character
1006
end)
1007
1008
Humanoid.Died:connect(function()
1009
	Humanoid.Parent = nil
1010
	Humanoid.MaxHealth = "inf"
1011
	Humanoid.Health = "inf"
1012
	refit()
1013
	Humanoid.Parent = Character
1014
end)
1015
1016
Humanoid.Died:connect(function()
1017
	ATTACK = true
1018
end)
1019
1020
function onTouched(brick)
1021
    local humn = brick.Parent:FindFirstChildOfClass("Humanoid")
1022
    if humn then
1023
       humn.Health = -1
1024
    end
1025
end
1026
1027
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.13, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1028
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.60, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1029
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1030
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.7, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1031
local SKILL5FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.60, 0, 0.130, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame") 
1032
local SKILL6FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.13, 0, 0.130, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 6 Frame") 
1033
local SKILL7FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.01, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 7 Frame")
1034
1035
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[E] Ultra Punch", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 1")
1036
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[F] Punish", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 2")
1037
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Dash", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 3")
1038
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[Q] Ultimate Punch", SKILLTEXTCOLOR, 6, "SciFi", 0, 2, 1, "Text4")
1039
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[G] R.I.P World", SKILLTEXTCOLOR, 6, "SciFi", 0, 2, 1, "Text5")
1040
local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[R] Destruction", SKILLTEXTCOLOR, 6, "SciFi", 0, 2, 1, "Text6")
1041
local SKILL7TEXT = CreateLabel(SKILL7FRAME, "[T] Apocalypse", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text7")
1042
1043
--//=================================\\
1044
--||	     DAMAGE FUNCTIONS
1045
--\\=================================//
1046
1047
function onTouched(Torso)
1048
    local humn = brick.Parent:FindFirstChildOfClass("Humanoid")
1049
    if humn then
1050
       humn.Health = -1
1051
    end
1052
end
1053
1054
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
1055
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
1056
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
1057
	local BODYGYRO = IT("BodyGyro", STATPART)
1058
	local BODYPOSITION = IT("BodyPosition", STATPART)
1059
	BODYPOSITION.P = 2000
1060
	BODYPOSITION.D = 100
1061
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
1062
	BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
1063
	game:GetService("Debris"):AddItem(STATPART ,5)
1064
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
1065
	BILLBOARDGUI.Adornee = STATPART
1066
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
1067
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
1068
	BILLBOARDGUI.AlwaysOnTop = false
1069
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
1070
	TEXTLABEL.BackgroundTransparency = 1
1071
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
1072
	TEXTLABEL.Text = TEXT
1073
	TEXTLABEL.Font = "SciFi"
1074
	TEXTLABEL.FontSize="Size42"
1075
	TEXTLABEL.TextColor3 = COLOR
1076
	TEXTLABEL.TextStrokeTransparency = 1
1077
	TEXTLABEL.TextScaled = true
1078
	TEXTLABEL.TextWrapped = true
1079
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
1080
		if LABELTYPE == "Normal" then
1081
			for i = 1, 30 do
1082
				Swait()
1083
				STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
1084
				TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
1085
			end
1086
		elseif LABELTYPE == "Debuff" then
1087
			for i = 1, 30 do
1088
				Swait()
1089
				STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
1090
				TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
1091
			end
1092
		elseif LABELTYPE == "Shock" then
1093
			local ORIGIN = STATPART.Position
1094
			for i = 1, 30 do
1095
				Swait()
1096
				STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
1097
				TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
1098
			end
1099
		end
1100
		THEPART.Parent = nil
1101
	end),STATPART, BODYPOSITION, TEXTLABEL)
1102
end
1103
1104
--//=================================\\
1105
--||			DAMAGING
1106
--\\=================================//
1107
1108
function killnearest(position,range,maxstrength,direction)
1109
	for i,v in ipairs(workspace:GetChildren()) do
1110
	local body = v:GetChildren()
1111
		for part = 1, #body do
1112
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1113
				if(body[part].Position - position).Magnitude < range then
1114
					if v.ClassName == "Model" then
1115
						--v:BreakJoints()
1116
					end
1117
					local POS = position
1118
					coroutine.resume(coroutine.create(function()
1119
						body[part].Anchored = true
1120
						body[part].Parent = Effects
1121
						body[part].CanCollide = true
1122
						local SIZE = body[part].Size
1123
						body[part].Material = "Neon"
1124
						CreateSound("952306739", body[part], 2, MRANDOM(7, 12) / 10)
1125
						for i = 1, 75 do
1126
							Swait()
1127
							body[part].Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
1128
							body[part].Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
1129
						end
1130
						coroutine.resume(coroutine.create(function()
1131
							while true do
1132
								Swait()
1133
								body[part].Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
1134
								body[part].Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
1135
							end
1136
						end))
1137
						body[part].Anchored = false
1138
						body[part].Velocity = direction.lookVector*maxstrength
1139
					end))
1140
				end
1141
			end
1142
		end
1143
		if v.ClassName == "Part" then
1144
			if v.Anchored == false and (v.Position - position).Magnitude < range then
1145
				local POS = position
1146
				coroutine.resume(coroutine.create(function()
1147
					v.Anchored = true
1148
					v.Parent = Effects
1149
					local SIZE = v.Size
1150
					v.Material = "Neon"
1151
					CreateSound("952306739", v, 2, MRANDOM(7, 12) / 10)
1152
					for i = 1, 75 do
1153
						Swait()
1154
						v.Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
1155
						v.Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
1156
					end
1157
					coroutine.resume(coroutine.create(function()
1158
						while true do
1159
							Swait()
1160
							v.Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
1161
							v.Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
1162
						end
1163
					end))
1164
					v.Anchored = false
1165
					v.Velocity = direction.lookVector*maxstrength
1166
				end))
1167
			end
1168
		end
1169
	end
1170
end
1171
1172
--//=================================\\
1173
--||	ATTACK FUNCTIONS AND STUFF
1174
--\\=================================//
1175
1176
function AttackTemplate()
1177
	ATTACK = true
1178
	Rooted = false
1179
	for i=0, 1, 0.1 / Animation_Speed do
1180
		Swait()
1181
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1182
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1183
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1184
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1185
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1186
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1187
	end
1188
	ATTACK = false
1189
	Rooted = false
1190
end
1191
1192
function UltraPunch()
1193
	ATTACK = true
1194
	Rooted = false
1195
	local SPEED = Speed
1196
	Speed = 8
1197
	CreateSound("214876666", RightArm, 7.5, 0.8)
1198
	for i=0, 0, 0.1 / Animation_Speed do
1199
		Swait()
1200
		turnto(Mouse.Hit.p)
1201
		MagicSphere(VT(1,1,1),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-1/15,-1/15,-1/15))
1202
		MagicSphere(VT(2,2,2),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-2/15,-2/15,-2/15))
1203
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-85)), 0.15 / Animation_Speed)
1204
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(85)), 0.2 / Animation_Speed)
1205
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90+(MRANDOM(-45,45)/10)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1206
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1207
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1208
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1209
	end
1210
	for i=0, 0, 0.1 / Animation_Speed do
1211
		Swait()
1212
		turnto(Mouse.Hit.p)
1213
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 1 / Animation_Speed)
1214
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
1215
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1216
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1217
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1218
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1219
	end
1220
	local PART = CreatePart(3, Effects, "Neon", 0, 0.8, "Maroon", "Punch", VT(50,50,50),false)
1221
	PART.CFrame = RootPart.CFrame * CF(0,0,-25)
1222
	PART.Shape = "Ball"
1223
	local bv = Instance.new("BodyVelocity") 
1224
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1225
	bv.velocity = RootPart.CFrame.lookVector*600
1226
	bv.Parent = PART
1227
	bv.Name = "PROJECTILEVELOCITY"
1228
	CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(2.5,0.2,2.5))
1229
	CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Maroon",VT(3,0.2,3))
1230
	CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(2,0.6,2))
1231
	CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Maroon",VT(2.2,0.6,2.2))
1232
	CreateSound("414517163", Effects, 3.5, MRANDOM(7, 12) / 10)
1233
	coroutine.resume(coroutine.create(function()
1234
		for i = 1, 11 do
1235
			Swait()
1236
			PART.Transparency = PART.Transparency + 0.2/10
1237
			PART.Size = PART.Size + VT(5,5,5)
1238
			killnearest(PART.Position,PART.Size.Y/2+15,100,RootPart.CFrame)
1239
		end
1240
		PART:Destroy()
1241
	end))
1242
	for i=0, 0, 0.1 / Animation_Speed do
1243
		Swait()
1244
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(95)), 2 / Animation_Speed)
1245
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 3 / Animation_Speed)
1246
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1247
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-70), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 3 / Animation_Speed)
1248
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 3 / Animation_Speed)
1249
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 3 / Animation_Speed)
1250
	end
1251
	Speed = SPEED
1252
	ATTACK = false
1253
	Rooted = false
1254
end
1255
1256
function Punish()
1257
	Animation_Speed = 1
1258
	ATTACK = true
1259
	Rooted = false
1260
	local HASGRABBED = false
1261
	local WELD = nil
1262
	local TORS = nil
1263
	local hitting = FIST.Touched:connect(function(hit) 
1264
		if hit.Parent:FindFirstChild("Humanoid") then
1265
			if hit.Parent.Humanoid.Health ~= 0 then
1266
				UNANCHOR = false
1267
				TORS = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
1268
				TORS.Anchored = true
1269
				TORS.CFrame = RightArm.CFrame * CF(0,-1.15,0) * ANGLES(RAD(90), RAD(0), RAD(0))
1270
           		WELD = weldBetween(RightArm,TORS)
1271
				HASGRABBED = true
1272
				Rooted = true
1273
			end
1274
		end
1275
	end)
1276
	for i=0, 2, 0.1 / Animation_Speed do
1277
		Swait()
1278
		if HASGRABBED == true then
1279
			break
1280
		end
1281
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 2 / Animation_Speed)
1282
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 2 / Animation_Speed)
1283
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
1284
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
1285
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
1286
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
1287
	end
1288
	hitting:disconnect()
1289
	if HASGRABBED == true then
1290
		TORS.Anchored = false
1291
        RootPart.Anchored = true
1292
		for i=0, 1.6, 0.1 / Animation_Speed do
1293
			Swait()
1294
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.2) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1295
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1296
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1297
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1298
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1299
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.3, -1) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1300
		end
1301
		CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.5,0.3,0.5))
1302
		CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,2,"Pearl",VT(0.6,0.3,0.6))
1303
		local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Maroon", "Sound", VT(0,0,0))
1304
		SOUNDPART.CFrame = RootPart.CFrame
1305
		Debris:AddItem(SOUNDPART,5)
1306
		CreateSound("357202073", SOUNDPART, 0, 1)
1307
		for i = 1, 16 do
1308
			Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(-180,180)), RAD(90)),"Pearl", 1 + MRANDOM(1,30)/15)
1309
		end
1310
		for i=0, 1.6, 0.1 / Animation_Speed do
1311
			Swait()
1312
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 50000000) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1313
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1314
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1315
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1316
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1317
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1318
		end
1319
		for i=0, 0.4, 0.1 / Animation_Speed do
1320
			Swait()
1321
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), 3 / Animation_Speed)
1322
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 3 / Animation_Speed)
1323
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1324
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 3 / Animation_Speed)
1325
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1326
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1327
		end
1328
		if HITFLOOR ~= nil then
1329
			CreateDebreeRing(HITFLOOR,CF(RootPart.Position)*CF(0,-3,0).p,15,VT(7,7,7),85)
1330
		end
1331
		CreateSound("414517163", Effects, 3.5, MRANDOM(7, 12) / 10)
1332
		WELD:remove()
1333
		for i = 1, 26 do
1334
			Swait()
1335
			killnearest(RootPart.Position,45,100,Torso.CFrame)
1336
			CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,5,"Pearl",VT(0.3,3,0.3))
1337
			CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Maroon",VT(1,0.4,1))
1338
			CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,5,"Maroon",VT(2.3,0.3,2.3))
1339
			Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Pearl", 1 + MRANDOM(1,30)/5)
1340
			Slice(0.1,65,CF(RightArm.CFrame*CF(0,-1,0).p) * ANGLES(RAD(MRANDOM(-20,20)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-20,20))),"Maroon", 1 + MRANDOM(1,30)/15)
1341
		end
1342
	end
1343
	UNANCHOR = true
1344
	ATTACK = false
1345
	Rooted = false
1346
	Animation_Speed = 8
1347
end
1348
1349
function Dash()
1350
	local ORIGIN = RootPart.Position
1351
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3,0.4))
1352
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3.1,0.6))
1353
	local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Maroon", "Sound", VT(0,0,0))
1354
	SOUNDPART.CFrame = RootPart.CFrame
1355
	Debris:AddItem(SOUNDPART,5)
1356
	CreateSound("357202032", SOUNDPART, 0, 1)
1357
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,3,0),VT(ORIGIN.X,Mouse.Hit.p.Y,ORIGIN.Z))
1358
	Swait()
1359
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3,0.4))
1360
	CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3.1,0.6))
1361
	local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Maroon", "Sound", VT(0,0,0))
1362
	SOUNDPART.CFrame = RootPart.CFrame
1363
	Debris:AddItem(SOUNDPART,5)
1364
	CreateSound("1295446488", SOUNDPART, 2.5, 1)
1365
		for i=0, 0.5, 0.1 / Animation_Speed do
1366
			Swait()
1367
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1368
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1369
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(190), RAD(-175)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1370
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1371
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1372
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1373
		end
1374
		ATTACK = false
1375
		Rooted = false
1376
	end
1377
function Begoner9000()
1378
	ATTACK = true
1379
	Rooted = true
1380
	CreateSound("255679384", RightArm, 8, 1)
1381
	for i=0, 0, 0.1 / Animation_Speed do
1382
		Swait()
1383
		turnto(Mouse.Hit.p)
1384
		CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,2,"Maroon",VT(0.2,0,0.2))
1385
		Slice(0.1,65,RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Maroon", 1.1)
1386
		MagicSphere(VT(0.2,0.2,0.2),15,CF(RightArm.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,RightArm.Position),"New Yeller",VT(0.001,0.001,1),0)
1387
		MagicSphere(VT(0.2,0.2,0.2),15,CF(RightArm.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,RightArm.Position),"Maroon",VT(0.001,0.001,2),0)
1388
		MagicSphere(VT(1,1,1),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-1/15,-1/15,-1/15))
1389
		MagicSphere(VT(2,2,2),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Maroon",VT(-2/15,-2/15,-2/15))
1390
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-85)), 0.15 / Animation_Speed)
1391
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(85)), 0.2 / Animation_Speed)
1392
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90+(MRANDOM(-45,45)/10)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1393
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1394
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1395
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1396
	end
1397
	for i=0, 0, 0.1 / Animation_Speed do
1398
		Swait()
1399
		turnto(Mouse.Hit.p)
1400
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 1 / Animation_Speed)
1401
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
1402
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1403
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1404
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1405
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1406
	end
1407
	MagicSphere(VT(4,4,4),100,RootPart.CFrame * CF(0,0,-6),"Maroon",VT(-0.04,-0.04,-0.04))
1408
	MagicSphere(VT(3.5,3.5,3.5),100,RootPart.CFrame * CF(0,0,-6),"Really black",VT(-0.035,-0.035,-0.035))
1409
	coroutine.resume(coroutine.create(function()
1410
		Swait(0.01)
1411
		for i = 1, 2 do
1412
			MagicSphere(VT(150,150,150),75,RootPart.CFrame * CF(0,0,-72*i),"Maroon",VT(-150/(150-(15*i)),-150/(150-(15*i)),-150/(150-(15*i))))
1413
			CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(4.5*i,0.2,4.5*i))
1414
			CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Maroon",VT(4*i,0.6,4*i))
1415
		end
1416
		killnearest(RootPart.CFrame * CF(0,0,-500).p,500,1000,RootPart.CFrame)
1417
		for i = 1, 3 do
1418
			CreateSound("414517163", Effects, 3.5, 0.8)
1419
			CreateSound("414517163", Effects, 3.5, 0.8)
1420
		end
1421
		coroutine.resume(coroutine.create(function()
1422
			for i = 1, 3 do
1423
				Swait()
1424
				for i = 1, 1 do
1425
					Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Pearl", 1 + MRANDOM(1,30)/5)
1426
				end
1427
				for i = 1, 2 do
1428
					Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Maroon", 1 + MRANDOM(1,30)/3)
1429
				end
1430
			end
1431
		end))
1432
	end))
1433
	for i=0, 0, 0.1 / Animation_Speed do
1434
		Swait()
1435
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(95)), 2 / Animation_Speed)
1436
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 3 / Animation_Speed)
1437
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1438
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-70), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 3 / Animation_Speed)
1439
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 3 / Animation_Speed)
1440
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 3 / Animation_Speed)
1441
	end
1442
	ATTACK = false
1443
	Rooted = false
1444
end
1445
1446
--//=================================\\
1447
--||	  ASSIGN THINGS TO KEYS
1448
--\\=================================//
1449
1450
function MouseDown(Mouse)
1451
	if ATTACK == false then
1452
	end
1453
end
1454
1455
function MouseUp(Mouse)
1456
HOLD = false
1457
end
1458
1459
function KeyDown(Key)
1460
	KEYHOLD = true
1461
	if Key == "e" and ATTACK == false then
1462
		UltraPunch()
1463
	end
1464
1465
	if Key == "f" and ATTACK == false then
1466
		Punish()
1467
	end
1468
1469
	if Key == "c" and ATTACK == false then
1470
		Dash()
1471
	end
1472
1473
	if Key == "q" and ATTACK == false then
1474
		Begoner9000()()
1475
	end
1476
1477
	if Key == "t" and ATTACK == false then
1478
		Begoner9000()
1479
wait(0.43)
1480
		Begoner9000()
1481
wait(0.43)
1482
		Begoner9000()
1483
wait(0.43)
1484
		Begoner9000()
1485
wait(0.43)
1486
		Begoner9000()
1487
wait(0.43)
1488
		Begoner9000()
1489
wait(0.43)
1490
		Begoner9000()
1491
wait(0.43)
1492
		Begoner9000()
1493
wait(0.43)
1494
		Begoner9000()
1495
wait(0.43)
1496
		Begoner9000()
1497
	end
1498
1499
	if Key == "g" and ATTACK == false then
1500
		Begoner9000()
1501
		UltraPunch()
1502
wait(0.0001)
1503
		Begoner9000()
1504
		UltraPunch()
1505
wait(0.0001)
1506
		Begoner9000()
1507
		UltraPunch()
1508
wait(0.0001)
1509
		Begoner9000()
1510
		UltraPunch()
1511
wait(0.0001)
1512
		Begoner9000()
1513
		UltraPunch()
1514
wait(0.0001)
1515
		Begoner9000()
1516
		UltraPunch()
1517
wait(0.0001)
1518
		Begoner9000()
1519
		UltraPunch()
1520
wait(0.0001)
1521
		Begoner9000()
1522
		UltraPunch()
1523
wait(0.0001)
1524
		Begoner9000()
1525
		UltraPunch()
1526
wait(0.0001)
1527
		Begoner9000()
1528
		UltraPunch()
1529
wait(0.0001)
1530
		Begoner9000()
1531
		UltraPunch()
1532
wait(0.0001)
1533
		Begoner9000()
1534
		UltraPunch()
1535
wait(0.0001)
1536
		Begoner9000()
1537
		UltraPunch()
1538
wait(0.0001)
1539
		Begoner9000()
1540
		UltraPunch()
1541
wait(0.0001)
1542
		Begoner9000()
1543
		UltraPunch()
1544
wait(0.0001)
1545
		Begoner9000()
1546
		UltraPunch()
1547
wait(0.0001)
1548
		Begoner9000()
1549
		UltraPunch()
1550
wait(0.0001)
1551
		Begoner9000()
1552
		UltraPunch()
1553
wait(0.0001)
1554
		Begoner9000()
1555
		UltraPunch()
1556
wait(0.0001)
1557
		Begoner9000()
1558
		UltraPunch()
1559
wait(0.0001)
1560
		Begoner9000()
1561
		UltraPunch()
1562
wait(0.0001)
1563
		Begoner9000()
1564
		UltraPunch()
1565
wait(0.0001)
1566
		Begoner9000()
1567
		UltraPunch()
1568
wait(0.0001)
1569
		Begoner9000()
1570
		UltraPunch()
1571
wait(0.0001)
1572
		Begoner9000()
1573
		UltraPunch()
1574
wait(0.0001)
1575
		Begoner9000()
1576
		UltraPunch()
1577
wait(0.0001)
1578
		Begoner9000()
1579
		UltraPunch()
1580
wait(0.0001)
1581
		Begoner9000()
1582
		UltraPunch()
1583
wait(0.0001)
1584
		Begoner9000()
1585
		UltraPunch()
1586
wait(0.0001)
1587
		Begoner9000()
1588
		UltraPunch()
1589
wait(0.0001)
1590
		Begoner9000()
1591
		UltraPunch()
1592
wait(0.0001)
1593
		Begoner9000()
1594
		UltraPunch()
1595
wait(0.0001)
1596
		Begoner9000()
1597
		UltraPunch()
1598
wait(0.0001)
1599
		Begoner9000()
1600
		UltraPunch()
1601
wait(0.0001)
1602
		Begoner9000()
1603
		UltraPunch()
1604
wait(0.0001)
1605
		Begoner9000()
1606
		UltraPunch()
1607
wait(0.0001)
1608
		Begoner9000()
1609
		UltraPunch()
1610
wait(0.0001)
1611
		Begoner9000()
1612
		UltraPunch()
1613
wait(0.0001)
1614
		Begoner9000()
1615
		UltraPunch()
1616
wait(0.0001)
1617
		Begoner9000()
1618
		UltraPunch()
1619
wait(0.0001)
1620
		Begoner9000()
1621
		UltraPunch()
1622
wait(0.0001)
1623
		Begoner9000()
1624
		UltraPunch()
1625
wait(0.0001)
1626
		Begoner9000()
1627
		UltraPunch()
1628
wait(0.0001)
1629
		Begoner9000()
1630
		UltraPunch()
1631
wait(0.0001)
1632
		Begoner9000()
1633
		UltraPunch()
1634
wait(0.0001)
1635
		Begoner9000()
1636
		UltraPunch()
1637
wait(0.0001)
1638
		Begoner9000()
1639
		UltraPunch()
1640
wait(0.0001)
1641
		Begoner9000()
1642
		UltraPunch()
1643
wait(0.0001)
1644
		Begoner9000()
1645
		UltraPunch()
1646
wait(0.0001)
1647
		Begoner9000()
1648
		UltraPunch()
1649
wait(0.0001)
1650
		Begoner9000()
1651
		UltraPunch()
1652
wait(0.0001)
1653
		Begoner9000()
1654
		UltraPunch()
1655
wait(0.0001)
1656
		Begoner9000()
1657
		UltraPunch()
1658
wait(0.0001)
1659
		Begoner9000()
1660
		UltraPunch()
1661
wait(0.0001)
1662
		Begoner9000()
1663
		UltraPunch()
1664
wait(0.0001)
1665
		Begoner9000()
1666
		UltraPunch()
1667
wait(0.0001)
1668
		Begoner9000()
1669
		UltraPunch()
1670
wait(0.0001)
1671
		Begoner9000()
1672
		UltraPunch()
1673
wait(0.0001)
1674
		Begoner9000()
1675
		UltraPunch()
1676
wait(0.0001)
1677
		Begoner9000()
1678
		UltraPunch()
1679
wait(0.0001)
1680
		Begoner9000()
1681
		UltraPunch()
1682
wait(0.0001)
1683
		Begoner9000()
1684
		UltraPunch()
1685
wait(0.0001)
1686
		Begoner9000()
1687
		UltraPunch()
1688
wait(0.0001)
1689
		Begoner9000()
1690
		UltraPunch()
1691
wait(0.0001)
1692
		Begoner9000()
1693
		UltraPunch()
1694
wait(0.0001)
1695
		Begoner9000()
1696
		UltraPunch()
1697
wait(0.0001)
1698
		Begoner9000()
1699
		UltraPunch()
1700
wait(0.0001)
1701
		Begoner9000()
1702
		UltraPunch()
1703
wait(0.0001)
1704
		Begoner9000()
1705
		UltraPunch()
1706
wait(0.0001)
1707
		Begoner9000()
1708
		UltraPunch()
1709
wait(0.0001)
1710
		Begoner9000()
1711
		UltraPunch()
1712
wait(0.0001)
1713
		Begoner9000()
1714
		UltraPunch()
1715
wait(0.0001)
1716
		Begoner9000()
1717
		UltraPunch()
1718
wait(0.0001)
1719
		Begoner9000()
1720
		UltraPunch()
1721
wait(0.0001)
1722
		Begoner9000()
1723
		UltraPunch()
1724
wait(0.0001)
1725
		Begoner9000()
1726
		UltraPunch()
1727
wait(0.0001)
1728
		Begoner9000()
1729
		UltraPunch()
1730
wait(0.0001)
1731
		Begoner9000()
1732
		UltraPunch()
1733
wait(0.0001)
1734
		Begoner9000()
1735
		UltraPunch()
1736
wait(0.0001)
1737
		Begoner9000()
1738
		UltraPunch()
1739
wait(0.0001)
1740
		Begoner9000()
1741
		UltraPunch()
1742
wait(0.0001)
1743
		Begoner9000()
1744
		UltraPunch()
1745
wait(0.0001)
1746
		Begoner9000()
1747
		UltraPunch()
1748
wait(0.0001)
1749
		Begoner9000()
1750
		UltraPunch()
1751
wait(0.0001)
1752
		Begoner9000()
1753
		UltraPunch()
1754
wait(0.0001)
1755
		Begoner9000()
1756
		UltraPunch()
1757
wait(0.0001)
1758
		Begoner9000()
1759
		UltraPunch()
1760
wait(0.0001)
1761
		Begoner9000()
1762
		UltraPunch()
1763
wait(0.0001)
1764
		Begoner9000()
1765
		UltraPunch()
1766
wait(0.0001)
1767
		Begoner9000()
1768
		UltraPunch()
1769
wait(0.0001)
1770
		Begoner9000()
1771
		UltraPunch()
1772
wait(0.0001)
1773
		Begoner9000()
1774
		UltraPunch()
1775
wait(0.0001)
1776
		Begoner9000()
1777
		UltraPunch()
1778
wait(0.0001)
1779
		Begoner9000()
1780
		UltraPunch()
1781
wait(0.0001)
1782
		Begoner9000()
1783
		UltraPunch()
1784
wait(0.0001)
1785
		Begoner9000()
1786
		UltraPunch()
1787
wait(0.0001)
1788
		Begoner9000()
1789
		UltraPunch()
1790
wait(0.0001)
1791
		Begoner9000()
1792
		UltraPunch()
1793
wait(0.0001)
1794
		Begoner9000()
1795
		UltraPunch()
1796
wait(0.0001)
1797
		Begoner9000()
1798
		UltraPunch()
1799
	end
1800
1801
	if Key == "r" and ATTACK == false then
1802
		UltraPunch()
1803
wait(0.0002)
1804
		UltraPunch()
1805
wait(0.0002)
1806
		UltraPunch()
1807
wait(0.0002)
1808
		UltraPunch()
1809
wait(0.0002)
1810
		UltraPunch()
1811
wait(0.0002)
1812
		UltraPunch()
1813
wait(0.0002)
1814
		UltraPunch()
1815
wait(0.0002)
1816
		UltraPunch()
1817
wait(0.0002)
1818
		UltraPunch()
1819
wait(0.0002)
1820
		UltraPunch()
1821
wait(0.0002)
1822
		UltraPunch()
1823
wait(0.0002)
1824
		UltraPunch()
1825
wait(0.0002)
1826
		UltraPunch()
1827
wait(0.0002)
1828
		UltraPunch()
1829
wait(0.0002)
1830
		UltraPunch()
1831
wait(0.0002)
1832
		UltraPunch()
1833
wait(0.0002)
1834
		UltraPunch()
1835
wait(0.0002)
1836
		UltraPunch()
1837
wait(0.0002)
1838
		UltraPunch()
1839
wait(0.0002)
1840
		UltraPunch()
1841
wait(0.0002)
1842
		UltraPunch()
1843
wait(0.0002)
1844
		UltraPunch()
1845
	end
1846
1847
	if Key == "p" and ATTACK == false then
1848
		if Speed == 16 then
1849
			Speed = 150
1850
		elseif Speed == 150 then
1851
			Speed = 16
1852
		end
1853
	end
1854
end
1855
1856
function KeyUp(Key)
1857
	KEYHOLD = false
1858
end
1859
1860
	Mouse.Button1Down:connect(function(NEWKEY)
1861
		MouseDown(NEWKEY)
1862
	end)
1863
	Mouse.Button1Up:connect(function(NEWKEY)
1864
		MouseUp(NEWKEY)
1865
	end)
1866
	Mouse.KeyDown:connect(function(NEWKEY)
1867
		KeyDown(NEWKEY)
1868
	end)
1869
	Mouse.KeyUp:connect(function(NEWKEY)
1870
		KeyUp(NEWKEY)
1871
	end)
1872
1873
--//=================================\\
1874
--\\=================================//
1875
1876
1877
function unanchor()
1878
	if UNANCHOR == true then
1879
		g = Character:GetChildren()
1880
		for i = 1, #g do
1881
			if g[i].ClassName == "Part" then
1882
				g[i].Anchored = false
1883
			end
1884
		end
1885
	end
1886
end
1887
1888
1889
--//=================================\\
1890
--||	WRAP THE WHOLE SCRIPT UP
1891
--\\=================================//
1892
1893
Humanoid.Changed:connect(function(Jump)
1894
	if Jump == "Jump" and (Disable_Jump == true) then
1895
		Humanoid.Jump = false
1896
	end
1897
end)
1898
1899
while true do
1900
	Swait()
1901
	ANIMATE.Parent = nil
1902
	local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1903
	IDLEANIMATION:Play()
1904
	SINE = SINE + CHANGE
1905
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1906
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1907
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1908
	HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1909
	local WALKSPEEDVALUE = 0
1910
	if Speed < 35 then
1911
		WALKSPEEDVALUE = 48
1912
	else
1913
		WALKSPEEDVALUE = 48
1914
	end
1915
	if ANIM == "Walk" and TORSOVELOCITY > 1 and Rooted == false then
1916
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (1) / Animation_Speed)
1917
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1918
		if Speed < 35 then
1919
			RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(56 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1920
			LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(56 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1921
		else
1922
			RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1923
			LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1924
		end
1925
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) or Rooted == true then
1926
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1927
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1928
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1929
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1930
	end
1931
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1932
		ANIM = "Jump"
1933
		if ATTACK == false then
1934
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1935
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1936
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1937
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1938
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1939
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1940
	    end
1941
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1942
		ANIM = "Fall"
1943
		if ATTACK == false then
1944
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1945
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1946
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1947
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1948
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1949
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1950
		end
1951
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1952
		ANIM = "Idle"
1953
		if ATTACK == false then
1954
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1955
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1956
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1957
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1958
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1959
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1960
		end
1961
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil and Rooted == false then
1962
		ANIM = "Walk"
1963
		WALK = WALK + 1 / Animation_Speed
1964
		if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
1965
			WALK = 0
1966
			if WALKINGANIM == true then
1967
				WALKINGANIM = false
1968
			elseif WALKINGANIM == false then
1969
				WALKINGANIM = true
1970
			end
1971
		end
1972
		--RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1973
		--LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1974
		if ATTACK == false then
1975
			if Speed < 35 then
1976
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1977
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1978
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1979
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-30 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1980
				RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1981
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1982
			else
1983
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1984
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1985
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-30 * COS(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1986
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-80 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-30 * COS(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1987
				RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1988
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1989
			end
1990
		end
1991
	end
1992
	unanchor()
1993
	Humanoid.MaxHealth = "inf"
1994
	Humanoid.Health = "inf"
1995
	if Rooted == false then
1996
		Disable_Jump = false
1997
		Humanoid.WalkSpeed = Speed
1998
	elseif Rooted == true then
1999
		Disable_Jump = true
2000
		Humanoid.WalkSpeed = 0
2001
	end
2002
	local MATHS = {"0","1"}
2003
	Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
2004
	Humanoid.PlatformStand = false
2005
end
2006
2007
2008
--//====================================================\\--
2009
--||			  		 END OF SCRIPT
2010
--\\====================================================//--