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