View difference between Paste ID: HdpTpd4R and 1NV2BCYW
SHOW: | | - or go back to the newest paste.
1
-- This script has been converted to FE by iPxter
2
3
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12-
Player = game:GetService("Players").LocalPlayer
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-
Mouse = Player:GetMouse()
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 = owner
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
	function nooutline(part)
88
		part.TopSurface,part.BottomSurface,part.LeftSurface,part.RightSurface,part.FrontSurface,part.BackSurface = 10,10,10,10,10,10
89
	end
90
91
script.Name = "Banisher Gun V3 / 1"
92
--//====================================================\\--
93
--||	CREATED BY SHACKLUSTER Edit By NameClan
94
--\\====================================================//--
95
96
script:ClearAllChildren()
97
wait(0.2)
98
99
local LIGHTHITSOUNDS = {"1177780949","1177781153","1177784554"}
100
local FireSound = "904051531"
101
local LAUGHS = {834001699,834001752,834001797,834001828}
102
Player = owner
103
PlayerGui = Player.PlayerGui
104
Cam = workspace.CurrentCamera
105
Backpack = Player.Backpack
106
Character = Player.Character
107
Humanoid = Character.Humanoid
108
RootPart = Character["HumanoidRootPart"]
109
Torso = Character["Torso"]
110
Head = Character["Head"]
111
RightArm = Character["Right Arm"]
112
LeftArm = Character["Left Arm"]
113
RightLeg = Character["Right Leg"]
114
LeftLeg = Character["Left Leg"]
115
local sick = Instance.new("Sound",Character)
116
q = Character:GetChildren()
117
for u = 1, #q do
118
if q[u].ClassName == "Accessory" then
119
q[u]:Destroy()
120
elseif q[u].ClassName == "CharacterMesh" then
121
q[u]:Destroy()
122
end
123
end
124
Head.face:Destroy()
125
Head.Mesh:Destroy()
126
newmesh = Instance.new("SpecialMesh")
127
newmesh.Scale = Vector3.new(1.1,1.1,1.1)
128
newmesh.MeshId = "http://www.roblox.com/asset/?id=0"
129
newmesh.TextureId = "http://www.roblox.com/asset/?id=0"
130
newmesh.Parent = Head
131
132
	local function weldBetween(a, b)
133
	    local weldd = Instance.new("ManualWeld")
134
	    weldd.Part0 = a
135
	    weldd.Part1 = b
136
	    weldd.C0 = CFrame.new()
137
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
138
	    weldd.Parent = a
139
	    return weldd
140
	end
141
RootJoint = RootPart["RootJoint"]
142
Neck = Torso["Neck"]
143
RightShoulder = Torso["Right Shoulder"]
144
LeftShoulder = Torso["Left Shoulder"]
145
RightHip = Torso["Right Hip"]
146
LeftHip = Torso["Left Hip"]
147
local TIME = 0
148
local sick = Instance.new("Sound",Torso)
149
150
IT = Instance.new
151
CF = CFrame.new
152
VT = Vector3.new
153
RAD = math.rad
154
C3 = Color3.new
155
UD2 = UDim2.new
156
BRICKC = BrickColor.new
157
ANGLES = CFrame.Angles
158
EULER = CFrame.fromEulerAnglesXYZ
159
COS = math.cos
160
ACOS = math.acos
161
SIN = math.sin
162
ASIN = math.asin
163
ABS = math.abs
164
MRANDOM = math.random
165
FLOOR = math.floor
166
167
168
it = Instance.new
169
170
    function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
171
        local fp=it("Part")
172
        fp.formFactor=formfactor
173
        fp.Parent=parent
174
        fp.Reflectance=reflectance
175
        fp.Transparency=transparency
176
        fp.CanCollide=false
177
        fp.Locked=true
178
        fp.BrickColor=BrickColor.new(tostring(brickcolor))
179
        fp.Name=name
180
        fp.Size=size
181
        fp.Position=Character.Torso.Position
182
        fp.Material=material
183
        fp:BreakJoints()
184
        return fp
185
    end
186
    
187
    function mesh(Mesh,part,meshtype,meshid,offset,scale)
188
        local mesh=it(Mesh)
189
        mesh.Parent=part
190
        if Mesh=="SpecialMesh" then
191
            mesh.MeshType=meshtype
192
            mesh.MeshId=meshid
193
        end
194
        mesh.Offset=offset
195
        mesh.Scale=scale
196
        return mesh
197
    end
198
    
199
    function weld(parent,part0,part1,c0,c1)
200
        local weld=it("Weld")
201
        weld.Parent=parent
202
        weld.Part0=part0
203
        weld.Part1=part1
204
        weld.C0=c0
205
        weld.C1=c1
206
        return weld
207
    end
208
209
q = "Really black"
210
Claw1=part(Enum.FormFactor.Custom,Character,Enum.Material.SmoothPlastic,0,0,q,"Claw",Vector3.new(0.400000006, 0.400000036, 0.400000006))
211
Claw1weld=weld(Character,RightArm,Claw1,CFrame.new(0.25, -2.3, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00980377197, -0.0303750038, 0.719708443, -5, 3.10001451e-005, 3.09999632e-005, 3.10008145e-005, 0, 0, 0, -4, -1))
212
mesh("SpecialMesh",Claw1,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=10681506",Vector3.new(0, 0, 0),Vector3.new(-1,-1.8,-1))
213
Claw2=part(Enum.FormFactor.Custom,Character,Enum.Material.SmoothPlastic,0,0,q,"Claw",Vector3.new(0.400000006, 0.400000036, 0.400000006))
214
Claw2weld=weld(Character,LeftArm,Claw2,CFrame.new(-0.25, -2.3, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00980377197, -0.0303750038, 0.719708443, 5, 3.10001451e-005, 3.09999632e-005, 3.10008145e-005, 0, 0, 0, -4, -1))
215
mesh("SpecialMesh",Claw2,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=10681506",Vector3.new(0, 0, 0),Vector3.new(-1,-1.8,-1))
216
217
--//=================================\\
218
--|| 	      USEFUL VALUES
219
--\\=================================//
220
221
Animation_Speed = 3
222
local FORCERESET = false
223
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
224
local Speed = 16
225
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
226
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
227
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
228
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
229
local DAMAGEMULTIPLIER = 1
230
local ANIM = "Idle"
231
local ATTACK = false
232
local EQUIPPED = false
233
local HOLD = false
234
local COMBO = 1
235
local COMBO2 = 1
236
local Rooted = false
237
local SINE = 0
238
local STAGGERHITANIM = false
239
local STAGGERANIM = false
240
local KEYHOLD = false
241
local CHANGE = 2 / Animation_Speed
242
local WALKINGANIM = false
243
local VALUE1 = false
244
local NOWALK = false
245
local VALUE2 = false
246
local INTRO = false
247
local TRANSFORMED = false
248
local ROBLOXIDLEANIMATION = IT("Animation")
249
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
250
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
251
--ROBLOXIDLEANIMATION.Parent = Humanoid
252
local WEAPONGUI = IT("ScreenGui", PlayerGui)
253
WEAPONGUI.Name = "BanishV3Gui"
254
local Weapon = IT("Model")
255
Weapon.Name = "Adds"
256
local Effects = IT("Folder", Weapon)
257
Effects.Name = "Effects"
258
local ANIMATOR = Humanoid.Animator
259
local ANIMATE = Character:FindFirstChild("Animate")
260
local UNANCHOR = true
261
local TOBANISH = {}
262
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
263
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
264
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
265
local HITBLOCKSOUNDS = {"199148933", "199148947"}
266
script.Parent = PlayerGui
267
268
--//=================================\\
269
--\\=================================//
270
271
272
--//=================================\\
273
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
274
--\\=================================//
275
276
277
Class_Name = "Beserker"
278
Weapon_Name = "Claws"
279
280
Custom_Colors = {
281
	Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
282
	Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
283
284
	Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
285
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
286
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
287
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
288
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
289
290
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
291
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
292
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
293
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
294
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
295
}
296
297
Mana_Bar_Background_Transparency = 0 --Transparency for the background of the mana bar.
298
Secondary_Mana_Bar_Background_Transparency = 0 --Transparency for the background of the secondary mana bar.
299
Health_Bar_Background_Transparency = 0 --Transparency for the background of the health bar.
300
Stun_Bar_Background_Transparency = 0 --Transparency for the background of the stun bar.
301
Ability_Background_Transparency = 0  --Transparency for the background of the abilities.
302
Stat_Background_Transparency = 0 --Transparency for the background of the stats.
303
304
Player_Size = 1 --Size of the player.
305
Animation_Speed = 2
306
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
307
308
Enable_Gui = false --Enables or disables the Weapon Gui. Also functions as hiding or showing the Gui.
309
Enable_Stats = false --Enables or disables stats.
310
Put_Stats_In_Character = false --Places stats in Character.
311
Enable_Stagger_Hit = false --Enables or disables staggering when hitting a hitbox of some sort.
312
Play_Hitbox_Hit_Sound = true --Plays a hit sound when hitting a hitbox of some sort.
313
Enable_Stagger = false --Enables or disables staggering.
314
Enable_Stun = false --Enables or disables the stun mechanic.
315
Enable_Abilities = false --Enables abilites with cooldowns and mana costs.
316
Enable_Secondary_Bar = false --Enables the secondary mana bar, if true.
317
318
Start_Equipped = false --Starts the player equipped with their weapon.
319
Start_Equipped_With_Equipped_Animation = false --Used in conjunction with the above option. Starts your equip animation.
320
Can_Equip_Or_Unequip = true --Enables or disables the ability to unequip or equip your weapon.
321
Disable_Animator = true --Disables the Animator in the humanoid.
322
Disable_Animate = true --Disables the Animate script in the character.
323
Disable_Moving_Arms = false --Keeps the arms from moving around.
324
Use_Motors_Instead_Of_Welds = false --Uses motors instead of welds to disable moving arms.
325
Walkspeed_Depends_On_Movement_Value = false --Walkspeed depends on movement value. Self-explanatory.
326
Disable_Jump = false --Disables jumping.
327
Use_HopperBin = true --Uses a hopperbin to do things.
328
329
Player_Size = 1 --Size of the player.
330
Animation_Speed = 2
331
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
332
333
Cooldown_1 = 0 --Cooldowns for abilites.
334
Cooldown_2 = 0
335
Cooldown_3 = 0
336
Cooldown_4 = 0
337
Skill_1_Mana_Cost = 0 --How much mana is required to use the skill.
338
Skill_2_Mana_Cost = 0
339
Skill_3_Mana_Cost = 0
340
Skill_4_Mana_Cost = 0
341
Max_Mana = 0 --Maximum amount of mana you can have.
342
Max_Secondary_Mana = 0 --Maximum amount of secondary mana you can have.
343
Mana_Name = "Mana" --Name for the mana bar.
344
Secondary_Mana_Name = "Block" --Name for the secondary mana bar.
345
Max_Stun = 1 --Maximum amount of stun you can have.
346
Recover_Mana = 0 --How much mana you gain.
347
Mana_Regen_Mode = "1" --Basically switches from one mana regen system to another.
348
Secondary_Mana_Regen_Mode = "1" --Basically switches from one secondary mana regen system to another.
349
Stun_Lose_Mode = "1" --Basically switches from one secondary stun loss system to another.
350
Recover_Secondary_Mana = 0 --How much secondary mana you gain.
351
Lose_Stun = 0 --How much stun you lose.
352
Stun_Wait = 0 --Delay between losing stun.
353
Mana_Wait = 0 --Delay between gaining mana.
354
Secondary_Mana_Wait = 0 --Delay between gaining secondary mana.
355
Menu_Update_Speed = 0 --How fast the Weapon Gui will update.
356
Constant_Update = false --Removes the delay between updating the Weapon GUI.
357
Show_Stats = false --Hides or shows stats.
358
Stat_Offset = 0.74 --For cosmetic purposes. {0.74, 0.78}
359
360
ArtificialHB = Instance.new("BindableEvent", script)
361
ArtificialHB.Name = "ArtificialHB"
362
363
script:WaitForChild("ArtificialHB")
364
365
frame = Frame_Speed
366
tf = 0
367
allowframeloss = false
368
tossremainder = false
369
lastframe = tick()
370
script.ArtificialHB:Fire()
371
372
game:GetService("RunService").Heartbeat:connect(function(s, p)
373
	tf = tf + s
374
	if tf >= frame then
375
		if allowframeloss then
376
			script.ArtificialHB:Fire()
377
			lastframe = tick()
378
		else
379
			for i = 1, math.floor(tf / frame) do
380
				script.ArtificialHB:Fire()
381
			end
382
		lastframe = tick()
383
		end
384
		if tossremainder then
385
			tf = 0
386
		else
387
			tf = tf - frame * math.floor(tf / frame)
388
		end
389
	end
390
end)
391
392
--//=================================\\
393
--\\=================================//
394
395
--//=================================\\
396
--|| 	      SOME FUNCTIONS
397
--\\=================================//
398
399
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
400
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
401
end
402
403
function PositiveAngle(NUMBER)
404
	if NUMBER >= 0 then
405
		NUMBER = 0
406
	end
407
	return NUMBER
408
end
409
410
function NegativeAngle(NUMBER)
411
	if NUMBER <= 0 then
412
		NUMBER = 0
413
	end
414
	return NUMBER
415
end
416
417
function Swait(NUMBER)
418
	if NUMBER == 0 or NUMBER == nil then
419
		ArtificialHB.Event:wait()
420
	else
421
		for i = 1, NUMBER do
422
			ArtificialHB.Event:wait()
423
		end
424
	end
425
end
426
427
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
428
	local NEWMESH = IT(MESH)
429
	if MESH == "SpecialMesh" then
430
		NEWMESH.MeshType = MESHTYPE
431
		if MESHID ~= "nil" and MESHID ~= "" then
432
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
433
		end
434
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
435
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
436
		end
437
	end
438
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
439
	NEWMESH.Scale = SCALE
440
	NEWMESH.Parent = PARENT
441
	return NEWMESH
442
end
443
444
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
445
	local NEWPART = IT("Part")
446
	NEWPART.formFactor = FORMFACTOR
447
	NEWPART.Reflectance = REFLECTANCE
448
	NEWPART.Transparency = TRANSPARENCY
449
	NEWPART.CanCollide = false
450
	NEWPART.Locked = true
451
	NEWPART.Anchored = true
452
	if ANCHOR == false then
453
		NEWPART.Anchored = false
454
	end
455
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
456
	NEWPART.Name = NAME
457
	NEWPART.Size = SIZE
458
	NEWPART.Position = Torso.Position
459
	NEWPART.Material = MATERIAL
460
	NEWPART:BreakJoints()
461
	NEWPART.Parent = PARENT
462
	return NEWPART
463
end
464
465
	local function weldBetween(a, b)
466
	    local weldd = Instance.new("ManualWeld")
467
	    weldd.Part0 = a
468
	    weldd.Part1 = b
469
	    weldd.C0 = CFrame.new()
470
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
471
	    weldd.Parent = a
472
	    return weldd
473
	end
474
475
476
function QuaternionFromCFrame(cf)
477
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
478
	local trace = m00 + m11 + m22
479
	if trace > 0 then 
480
		local s = math.sqrt(1 + trace)
481
		local recip = 0.5 / s
482
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
483
	else
484
		local i = 0
485
		if m11 > m00 then
486
			i = 1
487
		end
488
		if m22 > (i == 0 and m00 or m11) then
489
			i = 2
490
		end
491
		if i == 0 then
492
			local s = math.sqrt(m00 - m11 - m22 + 1)
493
			local recip = 0.5 / s
494
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
495
		elseif i == 1 then
496
			local s = math.sqrt(m11 - m22 - m00 + 1)
497
			local recip = 0.5 / s
498
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
499
		elseif i == 2 then
500
			local s = math.sqrt(m22 - m00 - m11 + 1)
501
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
502
		end
503
	end
504
end
505
 
506
function QuaternionToCFrame(px, py, pz, x, y, z, w)
507
	local xs, ys, zs = x + x, y + y, z + z
508
	local wx, wy, wz = w * xs, w * ys, w * zs
509
	local xx = x * xs
510
	local xy = x * ys
511
	local xz = x * zs
512
	local yy = y * ys
513
	local yz = y * zs
514
	local zz = z * zs
515
	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))
516
end
517
 
518
function QuaternionSlerp(a, b, t)
519
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
520
	local startInterp, finishInterp;
521
	if cosTheta >= 0.0001 then
522
		if (1 - cosTheta) > 0.0001 then
523
			local theta = ACOS(cosTheta)
524
			local invSinTheta = 1 / SIN(theta)
525
			startInterp = SIN((1 - t) * theta) * invSinTheta
526
			finishInterp = SIN(t * theta) * invSinTheta
527
		else
528
			startInterp = 1 - t
529
			finishInterp = t
530
		end
531
	else
532
		if (1 + cosTheta) > 0.0001 then
533
			local theta = ACOS(-cosTheta)
534
			local invSinTheta = 1 / SIN(theta)
535
			startInterp = SIN((t - 1) * theta) * invSinTheta
536
			finishInterp = SIN(t * theta) * invSinTheta
537
		else
538
			startInterp = t - 1
539
			finishInterp = t
540
		end
541
	end
542
	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
543
end
544
545
function Clerp(a, b, t)
546
	local qa = {QuaternionFromCFrame(a)}
547
	local qb = {QuaternionFromCFrame(b)}
548
	local ax, ay, az = a.x, a.y, a.z
549
	local bx, by, bz = b.x, b.y, b.z
550
	local _t = 1 - t
551
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
552
end
553
554
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
555
	local frame = IT("Frame")
556
	frame.BackgroundTransparency = TRANSPARENCY
557
	frame.BorderSizePixel = BORDERSIZEPIXEL
558
	frame.Position = POSITION
559
	frame.Size = SIZE
560
	frame.BackgroundColor3 = COLOR
561
	frame.BorderColor3 = BORDERCOLOR
562
	frame.Name = NAME
563
	frame.Parent = PARENT
564
	return frame
565
end
566
567
568
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
569
	local label = IT("TextLabel")
570
	label.BackgroundTransparency = 1
571
	label.Size = UD2(1, 0, 1, 0)
572
	label.Position = UD2(0, 0, 0, 0)
573
	label.TextColor3 = TEXTCOLOR
574
	label.TextStrokeTransparency = STROKETRANSPARENCY
575
	label.TextTransparency = TRANSPARENCY
576
	label.FontSize = TEXTFONTSIZE
577
	label.Font = TEXTFONT
578
	label.BorderSizePixel = BORDERSIZEPIXEL
579
	label.TextScaled = false
580
	label.Text = TEXT
581
	label.Name = NAME
582
	label.Parent = PARENT
583
	return label
584
end
585
586
function NoOutlines(PART)
587
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
588
end
589
590
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
591
	local NEWWELD = IT(TYPE)
592
	NEWWELD.Part0 = PART0
593
	NEWWELD.Part1 = PART1
594
	NEWWELD.C0 = C0
595
	NEWWELD.C1 = C1
596
	NEWWELD.Parent = PARENT
597
	return NEWWELD
598
end
599
600
local S = IT("Sound")
601
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
602
	local NEWSOUND = nil
603
	coroutine.resume(coroutine.create(function()
604
		NEWSOUND = S:Clone()
605
		NEWSOUND.Parent = PARENT
606
		NEWSOUND.Volume = VOLUME
607
		NEWSOUND.Pitch = PITCH
608
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
609
		NEWSOUND:play()
610
		if DOESLOOP == true then
611
			NEWSOUND.Looped = true
612
		else
613
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
614
			NEWSOUND:remove()
615
		end
616
	end))
617
	return NEWSOUND
618
end
619
620
function CFrameFromTopBack(at, top, back)
621
	local right = top:Cross(back)
622
	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)
623
end
624
625
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
626
function WACKYEFFECT(Table)
627
	local TYPE = (Table.EffectType or "Sphere")
628
	local SIZE = (Table.Size or VT(1,1,1))
629
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
630
	local TRANSPARENCY = (Table.Transparency or 0)
631
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
632
	local CFRAME = (Table.CFrame or Torso.CFrame)
633
	local MOVEDIRECTION = (Table.MoveToPos or nil)
634
	local ROTATION1 = (Table.RotationX or 0)
635
	local ROTATION2 = (Table.RotationY or 0)
636
	local ROTATION3 = (Table.RotationZ or 0)
637
	local MATERIAL = (Table.Material or "Neon")
638
	local COLOR = (Table.Color or C3(1,1,1))
639
	local TIME = (Table.Time or 45)
640
	local SOUNDID = (Table.SoundID or nil)
641
	local SOUNDPITCH = (Table.SoundPitch or nil)
642
	local SOUNDVOLUME = (Table.SoundVolume or nil)
643
	coroutine.resume(coroutine.create(function()
644
		local PLAYSSOUND = false
645
		local SOUND = nil
646
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
647
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
648
			PLAYSSOUND = true
649
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
650
		end
651
		EFFECT.Color = COLOR
652
		local MSH = nil
653
		if TYPE == "Sphere" then
654
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
655
		elseif TYPE == "Block" then
656
			MSH = IT("BlockMesh",EFFECT)
657
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
658
		elseif TYPE == "Wave" then
659
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
660
		elseif TYPE == "Ring" then
661
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
662
		elseif TYPE == "Slash" then
663
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
664
		elseif TYPE == "Round Slash" then
665
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
666
		elseif TYPE == "Swirl" then
667
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
668
		elseif TYPE == "Skull" then
669
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
670
		elseif TYPE == "Crystal" then
671
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
672
		end
673
		if MSH ~= nil then
674
			local MOVESPEED = nil
675
			if MOVEDIRECTION ~= nil then
676
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
677
			end
678
			local GROWTH = SIZE - ENDSIZE
679
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
680
			if TYPE == "Block" then
681
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
682
			else
683
				EFFECT.CFrame = CFRAME
684
			end
685
			for LOOP = 1, TIME+1 do
686
				Swait()
687
				MSH.Scale = MSH.Scale - GROWTH/TIME
688
				if TYPE == "Wave" then
689
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
690
				end
691
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
692
				if TYPE == "Block" then
693
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
694
				else
695
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
696
				end
697
				if MOVEDIRECTION ~= nil then
698
					local ORI = EFFECT.Orientation
699
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
700
					EFFECT.Orientation = ORI
701
				end
702
			end
703
			if PLAYSSOUND == false then
704
				EFFECT:remove()
705
			else
706
				SOUND.Stopped:Connect(function()
707
					EFFECT:remove()
708
				end)
709
			end
710
		else
711
			if PLAYSSOUND == false then
712
				EFFECT:remove()
713
			else
714
				repeat Swait() until SOUND.Playing == false
715
				EFFECT:remove()
716
			end
717
		end
718
	end))
719
end
720
721
function MakeForm(PART,TYPE)
722
	if TYPE == "Cyl" then
723
		local MSH = IT("CylinderMesh",PART)
724
	elseif TYPE == "Ball" then
725
		local MSH = IT("SpecialMesh",PART)
726
		MSH.MeshType = "Sphere"
727
	elseif TYPE == "Wedge" then
728
		local MSH = IT("SpecialMesh",PART)
729
		MSH.MeshType = "Wedge"
730
	end
731
end
732
733
local asd = Instance.new("ParticleEmitter")
734
asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
735
asd.LightEmission = .1
736
asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
737
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
738
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
739
asd.Transparency = bbb
740
asd.Size = aaa
741
asd.ZOffset = .9
742
asd.Acceleration = Vector3.new(0, -15, 0)
743
asd.LockedToPart = false
744
asd.EmissionDirection = "Back"
745
asd.Lifetime = NumberRange.new(1, 2)
746
asd.Rotation = NumberRange.new(-100, 100)
747
asd.RotSpeed = NumberRange.new(-100, 100)
748
asd.Speed = NumberRange.new(10)
749
asd.Enabled = false
750
asd.VelocitySpread = 999
751
752
function getbloody(victim,amount)
753
	local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
754
	PART.CFrame = victim.CFrame
755
	local HITPLAYERSOUNDS = {"356551938","264486467"}
756
	Debris:AddItem(PART,5)
757
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
758
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
759
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
760
	local prtcl = asd:Clone()
761
	prtcl.Parent = PART
762
	prtcl:Emit(amount*10)
763
end
764
765
local Particle = IT("ParticleEmitter",nil)
766
Particle.Enabled = false
767
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
768
Particle.LightEmission = 0.5
769
Particle.Rate = 150
770
Particle.ZOffset = 1
771
Particle.Rotation = NumberRange.new(-180, 180)
772
Particle.RotSpeed = NumberRange.new(-180, 180)
773
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
774
Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
775
776
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
777
function ParticleEmitter(Table)
778
	local PRTCL = Particle:Clone()
779
	local Speed = Table.Speed or 5
780
	local Drag = Table.Drag or 0
781
	local Size1 = Table.Size1 or 1
782
	local Size2 = Table.Size2 or 5
783
	local Lifetime1 = Table.Lifetime1 or 1
784
	local Lifetime2 = Table.Lifetime2 or 1.5
785
	local Parent = Table.Parent or Torso
786
	local Emit = Table.Emit or 100
787
	local Offset = Table.Offset or 360
788
	local Acel = Table.Acel or VT(0,0,0)
789
	local Enabled = Table.Enabled or false
790
	PRTCL.Parent = Parent
791
	PRTCL.Size = NumberSequence.new(Size1,Size2)
792
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
793
	PRTCL.Speed = NumberRange.new(Speed)
794
	PRTCL.VelocitySpread = Offset
795
	PRTCL.Drag = Drag
796
	PRTCL.Acceleration = Acel
797
	if Enabled == false then
798
		PRTCL:Emit(Emit)
799
		Debris:AddItem(PRTCL,Lifetime2)
800
	else
801
		PRTCL.Enabled = true
802
	end
803
	return PRTCL
804
end
805
806
function SpawnTrail(FROM,TO,BIG)
807
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
808
	MakeForm(TRAIL,"Cyl")
809
	local DIST = (FROM - TO).Magnitude
810
	if BIG == true then
811
		TRAIL.Size = VT(0.5,DIST,0.5)
812
	else
813
		TRAIL.Size = VT(0.25,DIST,0.25)
814
	end
815
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
816
	coroutine.resume(coroutine.create(function()
817
		for i = 1, 5 do
818
			Swait()
819
			TRAIL.Transparency = TRAIL.Transparency + 0.1
820
		end
821
		TRAIL:remove()
822
	end))
823
end
824
825
Debris = game:GetService("Debris")
826
827
function CastProperRay(StartPos, EndPos, Distance, Ignore)
828
	local DIRECTION = CF(StartPos,EndPos).lookVector
829
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
830
end
831
832
function turnto(position)
833
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
834
end
835
836
--//=================================\\
837
--||	      RESIZE PLAYER
838
--\\=================================//
839
840
if Player_Size ~= 1 then
841
RootPart.Size = RootPart.Size * Player_Size
842
Torso.Size = Torso.Size * Player_Size
843
Head.Size = Head.Size * Player_Size
844
RightArm.Size = RightArm.Size * Player_Size
845
LeftArm.Size = LeftArm.Size * Player_Size
846
RightLeg.Size = RightLeg.Size * Player_Size
847
LeftLeg.Size = LeftLeg.Size * Player_Size
848
RootJoint.Parent = RootPart
849
Neck.Parent = Torso
850
RightShoulder.Parent = Torso
851
LeftShoulder.Parent = Torso
852
RightHip.Parent = Torso
853
LeftHip.Parent = Torso
854
	
855
RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
856
	RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
857
	Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
858
	Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
859
	RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
860
	LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
861
	if Disable_Moving_Arms == false then
862
		RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
863
		LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
864
	else
865
		RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
866
		LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
867
	end
868
	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))
869
	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))
870
	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))
871
	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))
872
end
873
874
875
--//=================================\\
876
--\\=================================//
877
878
--//=================================\\
879
--||	     WEAPON CREATION
880
--\\=================================//
881
882
local PRT = CreatePart(3, char, "Fabric", 0, 0, "", "The Mask", VT(1,1,1),false)
883
PRT.Color = C3(0,0,0)
884
local MaskWeld = CreateWeldOrSnapOrMotor("Weld", hed, hed, PRT, CF(0,0.2,0), CF(0, 0.15, 0))
885
CreateMesh("SpecialMesh", PRT, "FileMesh", "62146989", "145633085", VT(1.1,1.1,1.1)*1.05, VT(0,0,0))
886
887
function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
888
	local TORSO = Torso
889
	local HUM = Humanoid
890
	if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
891
		coroutine.wrap(function()
892
			VT = Vector3.new
893
			MRANDOM = math.random
894
			local A = TIME
895
			local B = INTENSITY
896
			local C = true
897
			local HUMANOID = Humanoid
898
			local TIMER = A or 35
899
			local SHAKE = B or 5
900
			local FADE = C or true
901
			if HUMANOID then
902
				local FADER = SHAKE / TIMER
903
				for i = 1, TIMER do
904
					wait()
905
					HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
906
				end
907
				HUMANOID.CameraOffset = VT(0, 0, 0)
908
			end
909
910
		end)()
911
	end
912
end
913
914
915
local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Hood", VT(1,1,1),false)
916
PRT.Color = C3(0,0,0)
917
local HoodWeld = CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.2,0), CF(0, 0, 0))
918
CreateMesh("SpecialMesh", PRT, "FileMesh", "76062497", "", VT(1,1,1)*1.05, VT(0,0,0))
919
local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Scarf", VT(1,1,1),false)
920
PRT.Color = C3(0,0,0)
921
922
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1.1,1,0.525),false)
923
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(-0.75, 0.51, 0) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
924
MakeForm(Part,"Wedge")
925
926
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1,1,1.2),false)
927
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
928
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
929
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), CF(0, 0, 0))
930
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
931
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), CF(0, 0, 0))
932
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Dark stone grey", "Metal", VT(0.8,0.8,1.225),false)
933
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
934
local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eon", VT(0.5,0.5,1.25),false)
935
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
936
937
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1.1,1,0.525),false)
938
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(-0.75, 0.51, 0) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
939
MakeForm(Part,"Wedge")
940
941
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1,1,1.2),false)
942
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
943
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
944
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), CF(0, 0, 0))
945
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
946
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), CF(0, 0, 0))
947
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Dark stone grey", "Metal", VT(0.8,0.8,1.225),false)
948
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
949
local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eon", VT(0.5,0.5,1.25),false)
950
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
951
952
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1.1,1,0.525),false)
953
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(-0.75, 0.51, 0) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
954
MakeForm(Part,"Wedge")
955
956
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1,1,1.2),false)
957
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
958
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
959
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), CF(0, 0, 0))
960
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
961
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), CF(0, 0, 0))
962
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Dark stone grey", "Metal", VT(0.8,0.8,1.225),false)
963
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
964
local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eon", VT(0.5,0.5,1.25),false)
965
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
966
967
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
968
function WACKYEFFECT(Table)
969
	local TYPE = (Table.EffectType or "Sphere")
970
	local SIZE = (Table.Size or VT(1,1,1))
971
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
972
	local TRANSPARENCY = (Table.Transparency or 0)
973
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
974
	local CFRAME = (Table.CFrame or Torso.CFrame)
975
	local MOVEDIRECTION = (Table.MoveToPos or nil)
976
	local ROTATION1 = (Table.RotationX or 0)
977
	local ROTATION2 = (Table.RotationY or 0)
978
	local ROTATION3 = (Table.RotationZ or 0)
979
	local MATERIAL = (Table.Material or "Neon")
980
	local COLOR = (Table.Color or C3(1,1,1))
981
	local TIME = (Table.Time or 45)
982
	local SOUNDID = (Table.SoundID or nil)
983
	local SOUNDPITCH = (Table.SoundPitch or nil)
984
	local SOUNDVOLUME = (Table.SoundVolume or nil)
985
	coroutine.resume(coroutine.create(function()
986
		local PLAYSSOUND = false
987
		local SOUND = nil
988
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Really red"), "Effect", VT(1,1,1), true)
989
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
990
			PLAYSSOUND = true
991
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
992
		end
993
		EFFECT.Color = COLOR
994
		local MSH = nil
995
		if TYPE == "Sphere" then
996
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
997
		elseif TYPE == "Block" then
998
			MSH = IT("BlockMesh",EFFECT)
999
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
1000
		elseif TYPE == "Wave" then
1001
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1002
		elseif TYPE == "Ring" then
1003
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
1004
		elseif TYPE == "Slash" then
1005
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1006
		elseif TYPE == "Round Slash" then
1007
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1008
		elseif TYPE == "Swirl" then
1009
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
1010
		elseif TYPE == "Skull" then
1011
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
1012
		elseif TYPE == "Crystal" then
1013
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
1014
		end
1015
		if MSH ~= nil then
1016
			local MOVESPEED = nil
1017
			if MOVEDIRECTION ~= nil then
1018
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
1019
			end
1020
			local GROWTH = SIZE - ENDSIZE
1021
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
1022
			if TYPE == "Block" then
1023
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1024
			else
1025
				EFFECT.CFrame = CFRAME
1026
			end
1027
			for LOOP = 1, TIME+1 do
1028
				Swait()
1029
				MSH.Scale = MSH.Scale - GROWTH/TIME
1030
				if TYPE == "Wave" then
1031
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
1032
				end
1033
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
1034
				if TYPE == "Block" then
1035
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1036
				else
1037
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
1038
				end
1039
				if MOVEDIRECTION ~= nil then
1040
					local ORI = EFFECT.Orientation
1041
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
1042
					EFFECT.Orientation = ORI
1043
				end
1044
			end
1045
			if PLAYSSOUND == false then
1046
				EFFECT:remove()
1047
			else
1048
				SOUND.Stopped:Connect(function()
1049
					EFFECT:remove()
1050
				end)
1051
			end
1052
		else
1053
			if PLAYSSOUND == false then
1054
				EFFECT:remove()
1055
			else
1056
				repeat Swait() until SOUND.Playing == false
1057
				EFFECT:remove()
1058
			end
1059
		end
1060
	end))
1061
end
1062
1063
1064
function CreateRing(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
1065
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
1066
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "559831844", "", SIZE, VT(0, 0, 0))
1067
	wave.CFrame = CFRAME
1068
	coroutine.resume(coroutine.create(function(PART)
1069
		for i = 1, WAIT do
1070
			Swait()
1071
			mesh.Scale = mesh.Scale + GROW
1072
			if DOESROT == true then
1073
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
1074
			end
1075
			wave.Transparency = wave.Transparency + 0.5 / WAIT
1076
			if wave.Transparency > 0.99 then
1077
				wave:remove()
1078
			end
1079
		end
1080
	end))
1081
end
1082
1083
function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
1084
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
1085
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
1086
	wave.CFrame = CFRAME
1087
	coroutine.resume(coroutine.create(function(PART)
1088
		for i = 1, WAIT do
1089
			Swait()
1090
			mesh.Scale = mesh.Scale + GROW
1091
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
1092
			if DOESROT == true then
1093
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
1094
			end
1095
			wave.Transparency = wave.Transparency + 0.5 / WAIT
1096
			if wave.Transparency > 0.99 then
1097
				wave:remove()
1098
			end
1099
		end
1100
	end))
1101
end
1102
1103
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1104
function WACKYEFFECT(Table)
1105
	local TYPE = (Table.EffectType or "Sphere")
1106
	local SIZE = (Table.Size or VT(1,1,1))
1107
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
1108
	local TRANSPARENCY = (Table.Transparency or 0)
1109
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
1110
	local CFRAME = (Table.CFrame or Torso.CFrame)
1111
	local MOVEDIRECTION = (Table.MoveToPos or nil)
1112
	local ROTATION1 = (Table.RotationX or 0)
1113
	local ROTATION2 = (Table.RotationY or 0)
1114
	local ROTATION3 = (Table.RotationZ or 0)
1115
	local MATERIAL = (Table.Material or "Neon")
1116
	local COLOR = (Table.Color or C3(1,1,1))
1117
	local TIME = (Table.Time or 45)
1118
	local SOUNDID = (Table.SoundID or nil)
1119
	local SOUNDPITCH = (Table.SoundPitch or nil)
1120
	local SOUNDVOLUME = (Table.SoundVolume or nil)
1121
	coroutine.resume(coroutine.create(function()
1122
		local PLAYSSOUND = false
1123
		local SOUND = nil
1124
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
1125
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
1126
			PLAYSSOUND = true
1127
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
1128
		end
1129
		EFFECT.Color = COLOR
1130
		local MSH = nil
1131
		if TYPE == "Sphere" then
1132
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
1133
		elseif TYPE == "Block" then
1134
			MSH = IT("BlockMesh",EFFECT)
1135
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
1136
		elseif TYPE == "Wave" then
1137
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1138
		elseif TYPE == "Ring" then
1139
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
1140
		elseif TYPE == "Slash" then
1141
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1142
		elseif TYPE == "Round Slash" then
1143
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1144
		elseif TYPE == "Swirl" then
1145
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
1146
		elseif TYPE == "Skull" then
1147
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
1148
		elseif TYPE == "Crystal" then
1149
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
1150
		end
1151
		if MSH ~= nil then
1152
			local MOVESPEED = nil
1153
			if MOVEDIRECTION ~= nil then
1154
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
1155
			end
1156
			local GROWTH = SIZE - ENDSIZE
1157
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
1158
			if TYPE == "Block" then
1159
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1160
			else
1161
				EFFECT.CFrame = CFRAME
1162
			end
1163
			for LOOP = 1, TIME+1 do
1164
				Swait()
1165
				MSH.Scale = MSH.Scale - GROWTH/TIME
1166
				if TYPE == "Wave" then
1167
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
1168
				end
1169
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
1170
				if TYPE == "Block" then
1171
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1172
				else
1173
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
1174
				end
1175
				if MOVEDIRECTION ~= nil then
1176
					local ORI = EFFECT.Orientation
1177
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
1178
					EFFECT.Orientation = ORI
1179
				end
1180
			end
1181
			if PLAYSSOUND == false then
1182
				EFFECT:remove()
1183
			else
1184
				SOUND.Stopped:Connect(function()
1185
					EFFECT:remove()
1186
				end)
1187
			end
1188
		else
1189
			if PLAYSSOUND == false then
1190
				EFFECT:remove()
1191
			else
1192
				repeat Swait() until SOUND.Playing == false
1193
				EFFECT:remove()
1194
			end
1195
		end
1196
	end))
1197
end
1198
1199
function Slice(KIND, SIZE, WAIT, CFRAME, COLOR, GROW)
1200
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
1201
	local mesh
1202
	if KIND == "Base" then
1203
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0, SIZE / 10, SIZE / 10), VT(0, 0, 0))
1204
	elseif KIND == "Thin" then
1205
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
1206
	elseif KIND == "Round" then
1207
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
1208
	end
1209
	wave.CFrame = CFRAME
1210
	coroutine.resume(coroutine.create(function(PART)
1211
		for i = 1, WAIT do
1212
			Swait()
1213
			mesh.Scale = mesh.Scale + GROW / 10
1214
			wave.Transparency = wave.Transparency + 0.5 / WAIT
1215
			if wave.Transparency > 0.99 then
1216
				wave:remove()
1217
			end
1218
		end
1219
	end))
1220
end
1221
1222
function CreateRing(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
1223
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
1224
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "559831844", "", SIZE, VT(0, 0, 0))
1225
	wave.CFrame = CFRAME
1226
	coroutine.resume(coroutine.create(function(PART)
1227
		for i = 1, WAIT do
1228
			Swait()
1229
			mesh.Scale = mesh.Scale + GROW
1230
			if DOESROT == true then
1231
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
1232
			end
1233
			wave.Transparency = wave.Transparency + 0.5 / WAIT
1234
			if wave.Transparency > 0.99 then
1235
				wave:remove()
1236
			end
1237
		end
1238
	end))
1239
end
1240
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
1241
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
1242
	local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
1243
	wave.CFrame = CFRAME
1244
	coroutine.resume(coroutine.create(function(PART)
1245
		for i = 1, WAIT do
1246
			Swait()
1247
			mesh.Scale = mesh.Scale + GROW
1248
			wave.Transparency = wave.Transparency + 1 / WAIT
1249
			if wave.Transparency > 0.99 then
1250
				wave:remove()
1251
			end
1252
		end
1253
	end))
1254
end
1255
1256
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
1257
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
1258
	local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
1259
	wave.CFrame = CFRAME
1260
	coroutine.resume(coroutine.create(function(PART)
1261
		for i = 1, WAIT do
1262
			Swait()
1263
			mesh.Scale = mesh.Scale + GROW
1264
			wave.Transparency = wave.Transparency + 1 / WAIT
1265
			if wave.Transparency > 0.99 then
1266
				wave:remove()
1267
			end
1268
		end
1269
	end))
1270
end
1271
1272
1273
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1274
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1275
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1276
MakeForm(Part,"Wedge")
1277
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1278
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1279
MakeForm(Part,"Wedge")
1280
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1281
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1282
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1283
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1284
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1285
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1286
MakeForm(Part,"Cyl")
1287
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1288
for i = 1, 8 do
1289
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1290
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1291
end
1292
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1293
MakeForm(Part,"Cyl")
1294
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1295
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1296
MakeForm(Part,"Ball")
1297
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1298
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1299
MakeForm(Part,"Wedge")
1300
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1301
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1302
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1303
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1304
MakeForm(Part,"Cyl")
1305
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1306
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1307
MakeForm(Part,"Cyl")
1308
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1309
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1310
MakeForm(Part,"Cyl")
1311
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1312
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1313
MakeForm(Part,"Wedge")
1314
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1315
local LASTPART = Handle
1316
for i = 1, 10 do
1317
	if LASTPART == Handle then
1318
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1319
		LASTPART = Part
1320
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1321
	else
1322
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1323
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1324
		LASTPART = Part
1325
	end
1326
end
1327
1328
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1329
MakeForm(Barrel,"Cyl")
1330
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1331
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1332
MakeForm(Part,"Cyl")
1333
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1334
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1335
MakeForm(Part,"Wedge")
1336
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1337
local Hole2 = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1338
MakeForm(Hole2,"Cyl")
1339
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole2, CF(0, 0.98, 0), CF(0, 0, 0))
1340
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1341
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1342
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1343
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1344
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1345
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1346
coroutine.resume(coroutine.create(function()
1347
	while wait() do
1348
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1349
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1350
	end
1351
end))
1352
1353
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole2, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1354
--ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1355
1356
for _, c in pairs(Weapon:GetDescendants()) do
1357
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1358
		c.Material = "Glass"
1359
		c.Color = C3(0,0,0)
1360
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1361
		c.Color = C3(1,0,0)
1362
		c.Material = "Neon"
1363
	end
1364
end
1365
1366
Weapon.Parent = Character
1367
for _, c in pairs(Weapon:GetChildren()) do
1368
	if c.ClassName == "Part" then
1369
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1370
	end
1371
end
1372
1373
function ParticleEmitter(Table)
1374
	local PRTCL = Particle:Clone()
1375
	local Speed = Table.Speed or 5
1376
	local Drag = Table.Drag or 0
1377
	local Size1 = Table.Size1 or 1
1378
	local Size2 = Table.Size2 or 5
1379
	local Lifetime1 = Table.Lifetime1 or 1
1380
	local Lifetime2 = Table.Lifetime2 or 1.5
1381
	local Parent = Table.Parent or Torso
1382
	local Emit = Table.Emit or 100
1383
	local Offset = Table.Offset or 360
1384
	local Acel = Table.Acel or VT(0,0,0)
1385
	local Enabled = Table.Enabled or false
1386
	PRTCL.Parent = Parent
1387
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1388
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1389
	PRTCL.Speed = NumberRange.new(Speed)
1390
	PRTCL.VelocitySpread = Offset
1391
	PRTCL.Drag = Drag
1392
	PRTCL.Acceleration = Acel
1393
	if Enabled == false then
1394
		PRTCL:Emit(Emit)
1395
		Debris:AddItem(PRTCL,Lifetime2)
1396
	else
1397
		PRTCL.Enabled = true
1398
	end
1399
	return PRTCL
1400
end
1401
1402
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1403
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1404
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1405
MakeForm(Part,"Wedge")
1406
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1407
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1408
MakeForm(Part,"Wedge")
1409
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1410
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1411
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1412
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1413
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1414
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1415
MakeForm(Part,"Cyl")
1416
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1417
for i = 1, 8 do
1418
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1419
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1420
end
1421
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1422
MakeForm(Part,"Cyl")
1423
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1424
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1425
MakeForm(Part,"Ball")
1426
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1427
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1428
MakeForm(Part,"Wedge")
1429
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1430
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1431
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1432
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1433
MakeForm(Part,"Cyl")
1434
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1435
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1436
MakeForm(Part,"Cyl")
1437
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1438
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1439
MakeForm(Part,"Cyl")
1440
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1441
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1442
MakeForm(Part,"Wedge")
1443
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1444
local LASTPART = Handle
1445
for i = 1, 10 do
1446
	if LASTPART == Handle then
1447
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1448
		LASTPART = Part
1449
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1450
	else
1451
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1452
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1453
		LASTPART = Part
1454
	end
1455
end
1456
1457
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1458
MakeForm(Barrel,"Cyl")
1459
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1460
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1461
MakeForm(Part,"Cyl")
1462
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1463
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1464
MakeForm(Part,"Wedge")
1465
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1466
local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1467
MakeForm(Hole,"Cyl")
1468
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
1469
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1470
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1471
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1472
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1473
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1474
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1475
coroutine.resume(coroutine.create(function()
1476
	while wait() do
1477
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1478
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1479
	end
1480
end))
1481
1482
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1483
--ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1484
1485
for _, c in pairs(Weapon:GetDescendants()) do
1486
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1487
		c.Material = "Glass"
1488
		c.Color = C3(0,0,0)
1489
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1490
		c.Color = C3(1,0,0)
1491
		c.Material = "Neon"
1492
	end
1493
end
1494
1495
Weapon.Parent = Character
1496
for _, c in pairs(Weapon:GetChildren()) do
1497
	if c.ClassName == "Part" then
1498
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1499
	end
1500
end
1501
1502
local SKILLTEXTCOLOR = C3(1,0,0)
1503
local SKILLFONT = "Antique"
1504
local SKILLTEXTSIZE = 7
1505
1506
Humanoid.Died:connect(function()
1507
	ATTACK = true
1508
end)
1509
1510
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1511
--[[local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1512
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1513
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1514
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1515
]]
1516
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banisher Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
1517
--[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
1518
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
1519
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
1520
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
1521
]]
1522
function printbye(Name)
1523
	local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
1524
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
1525
end
1526
1527
workspace.ChildAdded:connect(function(instance)
1528
    for BANISH = 1, #TOBANISH do
1529
		if TOBANISH[BANISH] ~= nil then
1530
			if instance.Name == TOBANISH[BANISH] then
1531
				coroutine.resume(coroutine.create(function()
1532
					printbye(instance.Name)
1533
					instance:ClearAllChildren()
1534
					Debris:AddItem(instance,0.0005)
1535
				end))
1536
			end
1537
		end
1538
	end
1539
end)
1540
1541
--//=================================\\
1542
--||			DAMAGING
1543
--\\=================================//
1544
1545
function Banish(Foe)
1546
	if Foe then
1547
		coroutine.resume(coroutine.create(function()
1548
			--if game.Players:FindFirstChild(Foe.Name) then
1549
				table.insert(TOBANISH,Foe.Name)
1550
				printbye(Foe.Name)
1551
			--end
1552
			Foe.Archivable = true
1553
			local CLONE = Foe:Clone()
1554
			Foe:Destroy()
1555
			CLONE.Parent = Effects
1556
			CLONE:BreakJoints()
1557
			local MATERIALS = {"Glass","Neon"}
1558
			for _, c in pairs(CLONE:GetDescendants()) do
1559
				if c:IsA("BasePart") then
1560
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1561
 						CreateSound(340722848, c, 10, 1, false)
1562
					end
1563
					c.Anchored = true
1564
					c.Transparency = c.Transparency + 0.2
1565
					c.Material = MATERIALS[MRANDOM(1,2)]
1566
					c.Color = C3(1,0,0)
1567
					if c.ClassName == "MeshPart" then
1568
						c.TextureID = ""
1569
					end
1570
					if c:FindFirstChildOfClass("SpecialMesh") then
1571
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1572
					end
1573
					if c:FindFirstChildOfClass("Decal") then
1574
						c:FindFirstChildOfClass("Decal"):remove()
1575
					end
1576
					c.Name = "Banished"
1577
					c.CanCollide = false
1578
				else
1579
					c:remove()
1580
				end
1581
			end
1582
			local A = false
1583
			for i = 1, 35 do
1584
				if A == false then
1585
					A = true
1586
				elseif A == true then
1587
					A = false
1588
				end
1589
				for _, c in pairs(CLONE:GetDescendants()) do
1590
					if c:IsA("BasePart") then
1591
						c.Anchored = true
1592
						c.Material = MATERIALS[MRANDOM(1,2)]
1593
						c.Transparency = c.Transparency + 0.8/35
1594
						if A == false then
1595
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1596
						elseif A == true then
1597
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1598
						end
1599
					end
1600
				end
1601
				Swait()
1602
			end
1603
			CLONE:remove()
1604
		end))
1605
	end
1606
end
1607
1608
function ApplyAoE(POSITION,RANGE,ISBANISH)
1609
	local CHILDREN = workspace:GetDescendants()
1610
	for index, CHILD in pairs(CHILDREN) do
1611
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1612
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1613
			if HUM then
1614
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1615
				if TORSO then
1616
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1617
						if ISBANISH == true then
1618
							Banish(CHILD)
1619
						else
1620
							if ISBANISH == "Gravity" then
1621
								HUM.PlatformStand = true
1622
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1623
									local grav = Instance.new("BodyPosition",TORSO)
1624
									grav.D = 15
1625
									grav.P = 20000
1626
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1627
									grav.position = TORSO.Position
1628
									grav.Name = "V3BanishForce"..Player.Name
1629
								else
1630
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1631
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1632
								end
1633
							else
1634
								HUM.PlatformStand = false
1635
							end
1636
						end
1637
					elseif ISBANISH == "Gravity" then
1638
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1639
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1640
							HUM.PlatformStand = false
1641
						end
1642
					end
1643
				end
1644
			end
1645
		end
1646
	end
1647
end
1648
1649
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
1650
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
1651
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
1652
	local BODYGYRO = IT("BodyGyro", STATPART)
1653
	local BODYPOSITION = IT("BodyPosition", STATPART)
1654
	BODYPOSITION.P = 2000
1655
	BODYPOSITION.D = 100
1656
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
1657
	if LABELTYPE == "Normal" then
1658
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
1659
	elseif LABELTYPE == "Debuff" then
1660
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
1661
	elseif LABELTYPE == "Interruption" then
1662
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
1663
	end
1664
	game:GetService("Debris"):AddItem(STATPART ,5)
1665
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
1666
	BILLBOARDGUI.Adornee = STATPART
1667
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
1668
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
1669
	BILLBOARDGUI.AlwaysOnTop = false
1670
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
1671
	TEXTLABEL.BackgroundTransparency = 1
1672
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
1673
	TEXTLABEL.Text = TEXT
1674
	TEXTLABEL.Font = "SourceSans"
1675
	TEXTLABEL.FontSize="Size42"
1676
	TEXTLABEL.TextColor3 = COLOR
1677
	TEXTLABEL.TextStrokeTransparency = 0
1678
	TEXTLABEL.TextScaled = true
1679
	TEXTLABEL.TextWrapped = true
1680
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
1681
		wait(0.2)
1682
		for i=1, 5 do
1683
			wait()
1684
			THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
1685
		end
1686
		wait(1.2)
1687
		for i=1, 5 do
1688
			wait()
1689
			THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
1690
			THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
1691
			THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
1692
		end
1693
		THEPART.Parent = nil
1694
	end),STATPART, BODYPOSITION, TEXTLABEL)
1695
end
1696
1697
function IncreaseOrDecreaseStat(LOCATION, STAT, AMOUNT, DURATION, SHOWTHESTAT)
1698
	if LOCATION:FindFirstChild("Stats") ~= nil then
1699
		if LOCATION.Stats:FindFirstChild("Block") ~= nil then
1700
			if LOCATION.Stats:FindFirstChild("Block").Value == true then
1701
				return
1702
			end
1703
		end
1704
		if LOCATION.Stats:FindFirstChild("ChangeStat") ~= nil and LOCATION.Stats:FindFirstChild("Block").Value == false then
1705
			local NewStatChange = IT("NumberValue")
1706
			NewStatChange.Value = AMOUNT
1707
			if STAT == "Defense" then
1708
				NewStatChange.Name = "ChangeDefense"
1709
			elseif STAT == "Damage" then
1710
				NewStatChange.Name = "ChangeDamage"
1711
			elseif STAT == "Movement" then
1712
				NewStatChange.Name = "ChangeMovement"
1713
			end
1714
			if SHOWTHESTAT == true then
1715
				if AMOUNT < 0 then
1716
					StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "-"..STAT, C3(1, 1, 1))
1717
				elseif AMOUNT > 0 then
1718
					StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "+"..STAT, C3(1, 1, 1))
1719
				end
1720
			end
1721
			if DURATION ~= nil and DURATION ~= 0 then
1722
				local StatDuration = IT("NumberValue")
1723
				StatDuration.Name = "Duration"
1724
				StatDuration.Value = DURATION
1725
				StatDuration.Parent = NewStatChange
1726
			end
1727
			NewStatChange.Parent = LOCATION.Stats:FindFirstChild("ChangeStat")
1728
		end
1729
	end
1730
end
1731
1732
--Usage: DamageFunction(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, hit, false, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
1733
function DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HIT, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
1734
	if HIT.Parent == nil then
1735
		return
1736
	end
1737
	local HITHUMANOID = HIT.Parent:FindFirstChild("Humanoid")
1738
	for _, v in pairs(HIT.Parent:GetChildren()) do
1739
		if v:IsA("Humanoid") then
1740
			HITHUMANOID = v
1741
		end
1742
	end
1743
	if HIT.Name == "Hitbox" and RANGED ~= true and HIT.Parent ~= Weapon and Enable_Stagger_Hit == true then
1744
		StaggerHit.Value = true
1745
		if Play_Hitbox_Hit_Sound == true then
1746
			if HITWEAPONSOUND ~= "" and HITWEAPONSOUND ~= "nil" then
1747
				CreateSound(HITWEAPONSOUND, HIT, 1, HITWEAPONSOUNDPITCH)
1748
			end
1749
		end
1750
		return
1751
	end
1752
	if HIT.Parent.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent.Parent:FindFirstChild("UpperTorso") ~= nil then
1753
		HITHUMANOID = HIT.Parent.Parent:FindFirstChild("Humanoid")
1754
	end
1755
	if HIT.Parent.ClassName == "Hat" or HIT.ClassName == "Accessory" then
1756
		HIT = HIT.Parent.Parent:FindFirstChild("Head")
1757
	end
1758
	if HITHUMANOID ~= nil and HIT.Parent.Name ~= Character.Name and (HIT.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent:FindFirstChild("UpperTorso") ~= nil) then
1759
		if HIT.Parent:FindFirstChild("DebounceHit") ~= nil then
1760
			if HIT.Parent.DebounceHit.Value == true then
1761
				return
1762
			end
1763
		end
1764
		if AntiTeamKill.Value == true then
1765
			if Player.Neutral == false and game.Players:GetPlayerFromCharacter(HIT.Parent) ~= nil then
1766
				if game.Players:GetPlayerFromCharacter(HIT.Parent).TeamColor == Player.TeamColor then
1767
					return
1768
				end
1769
			end
1770
		end
1771
		if HITEVENWHENDEAD == false then
1772
			if HIT.Parent:FindFirstChild("Humanoid") ~= nil then
1773
				if HIT.Parent:FindFirstChild("Humanoid").Health <= 0 then
1774
					return
1775
				end
1776
			end
1777
		end
1778
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1779
			if HIT.Parent.Stats:FindFirstChild("StunValue") ~= nil then
1780
				HIT.Parent.Stats:FindFirstChild("StunValue").Value = HIT.Parent.Stats:FindFirstChild("StunValue").Value + INCREASESTUN
1781
			end
1782
		end
1783
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1784
			if HIT.Parent.Stats:FindFirstChild("Stagger") ~= nil then
1785
				if STAGGER == true and Enable_Stagger == true then
1786
					HIT.Parent.Stats:FindFirstChild("Stagger").Value = true
1787
				end
1788
			end
1789
		end
1790
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1791
			if HIT.Parent.Stats:FindFirstChild("Block") ~= nil then
1792
				if HIT.Parent.Stats:FindFirstChild("Block").Value == true then
1793
					HASBEENBLOCKED = true
1794
					if HIT.Parent.Stats:FindFirstChild("Block"):FindFirstChild("BlockDebounce") == nil then
1795
						StatLabel("Interruption", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Blocked!", C3(0, 100 / 255, 255 / 255))
1796
						if RANGED ~= true then
1797
							if HITBLOCKSOUND ~= "" and HITBLOCKSOUND ~= "nil" then
1798
								CreateSound(HITBLOCKSOUND, HIT, 1, HITBLOCKSOUNDPITCH)
1799
							end
1800
						end
1801
						local BlockDebounce = IT("BoolValue", HIT.Parent.Stats:FindFirstChild("Block"))
1802
						BlockDebounce.Name = "BlockDebounce"
1803
						BlockDebounce.Value = true
1804
						if RANGED ~= true then
1805
							game:GetService("Debris"):AddItem(BlockDebounce, 0.5)
1806
						else
1807
							game:GetService("Debris"):AddItem(BlockDebounce, 0.1)
1808
						end
1809
					end
1810
					if RANGED ~= true and Enable_Stagger == true then
1811
						HIT.Parent.Stats:FindFirstChild("Block").Value = false
1812
						Stagger.Value = true
1813
					end
1814
					return
1815
				end
1816
			end
1817
		end
1818
		if DECREASETHESTAT ~= nil then
1819
			if HIT.Parent:FindFirstChild("Stats") ~= nil then
1820
				IncreaseOrDecreaseStat(HIT.Parent, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
1821
			end
1822
		end
1823
		local DAMAGE = MRANDOM(MINIMUMDAMAGE,MAXIMUMDAMAGE) * Damage.Value
1824
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1825
			if HIT.Parent.Stats:FindFirstChild("Defense") ~= nil then
1826
				if CanPenetrateArmor.Value == true then
1827
					DAMAGE = DAMAGE
1828
				else
1829
					DAMAGE = DAMAGE / HIT.Parent.Stats:FindFirstChild("Defense").Value
1830
				end
1831
			elseif HIT.Parent.Stats:FindFirstChild("Defense") == nil then
1832
				DAMAGE = DAMAGE
1833
			end
1834
		end
1835
		if CanCrit.Value == true then
1836
			CRITCHANCENUMBER = MRANDOM(1, CritChance.Value)
1837
			if CRITCHANCENUMBER == 1 then
1838
				DAMAGE = DAMAGE * 2
1839
			end
1840
		end
1841
		DAMAGE = math.floor(DAMAGE)
1842
		if HASBEENBLOCKED == false then
1843
			HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
1844
		end
1845
		if DAMAGE <= 3 and HASBEENBLOCKED == false then
1846
			if STAGGERHIT == true and Enable_Stagger_Hit == true and RANGED ~= true then
1847
				StaggerHit.Value = true
1848
			end
1849
			if HITARMORSOUND ~= "" and HITARMORSOUND ~= "nil" then
1850
				CreateSound(HITARMORSOUND, HIT, 1, HITARMORSOUNDPITCH)
1851
			end
1852
		elseif DAMAGE > 3 and HASBEENBLOCKED == false then
1853
			if HITPLAYERSOUND ~= "" and HITPLAYERSOUND ~= "nil" then
1854
				CreateSound(HITPLAYERSOUND, HIT, 1, HITPLAYERSOUNDPITCH)
1855
			end
1856
		end
1857
		if DAMAGE > 3 and DAMAGE < 20 and HASBEENBLOCKED == false then
1858
			if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
1859
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
1860
				CreateSound("296102734", HIT, 1, 1)
1861
			else
1862
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 220/255, 0))
1863
			end
1864
		elseif DAMAGE >= 20 and HASBEENBLOCKED == false then
1865
			if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
1866
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
1867
				CreateSound("296102734", HIT, 1, 1)
1868
			else
1869
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 0, 0))
1870
			end
1871
		elseif DAMAGE <= 3 and HASBEENBLOCKED == false then
1872
			if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
1873
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
1874
				CreateSound("296102734", HIT, 1, 1)
1875
			else
1876
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(225/255, 225/255, 225/255))
1877
			end
1878
		end
1879
		if TYPE == "Normal" then
1880
			local vp = IT("BodyVelocity")
1881
			vp.P=500
1882
			vp.maxForce = VT(math.huge, 0, math.huge)
1883
			if KNOCKBACKTYPE == 1 then
1884
				vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK + PROPERTY.Velocity / 1.05
1885
			elseif KNOCKBACKTYPE == 2 then
1886
				vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK
1887
			end
1888
			if KNOCKBACK > 0 and HASBEENBLOCKED == false then
1889
				vp.Parent = HIT--.Parent.Torso
1890
			end
1891
			game:GetService("Debris"):AddItem(vp, 0.5)
1892
		end
1893
		HASBEENBLOCKED = false
1894
		RecentEnemy.Value = HIT.Parent
1895
		local DebounceHit = IT("BoolValue", HIT.Parent)
1896
		DebounceHit.Name = "DebounceHit"
1897
		DebounceHit.Value = true
1898
		game:GetService("Debris"):AddItem(DebounceHit, DELAY)
1899
	end
1900
end
1901
1902
--Usage: MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Part, 5, true, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
1903
function MagnitudeDamage(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, PART, MAGNITUDE, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
1904
	for _, c in pairs(workspace:GetChildren()) do
1905
		local HUMANOID = c:FindFirstChild("Humanoid")
1906
		local HEAD = nil
1907
		if HUMANOID ~= nil then
1908
			for _, d in pairs(c:GetChildren()) do
1909
				if d.ClassName == "Model" and RANGED ~= true then
1910
					HEAD = d:FindFirstChild("Hitbox")
1911
					if HEAD ~= nil then
1912
						local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
1913
						if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
1914
							if Play_Hitbox_Hit_Sound == true then
1915
								local HitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
1916
								HitRefpart.Anchored = true
1917
								HitRefpart.CFrame = CF(HEAD.Position)
1918
								CreateSound(HITWEAPONSOUND, HitRefpart, 1, HITWEAPONSOUNDPITCH)
1919
							end
1920
							if Enable_Stagger_Hit == true then
1921
								StaggerHit.Value = true
1922
							end
1923
						end
1924
					end
1925
				elseif d:IsA"BasePart" then
1926
					HEAD = d
1927
					if HEAD ~= nil then
1928
						local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
1929
						if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
1930
							DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HEAD, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
1931
						end
1932
					end
1933
				end
1934
			end
1935
		end
1936
	end
1937
end
1938
1939
--Usage: MagnitudeBuffOrDebuff(Part, 5, "Defense", -0.1, 3, true, true)
1940
function MagnitudeBuffOrDebuff(PART, MAGNITUDE, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF, APPLYTOOTHERSINSTEAD)
1941
	if Player.Neutral == true then
1942
		IncreaseOrDecreaseStat(Character, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
1943
	end
1944
	for _, c in pairs(workspace:GetChildren()) do
1945
		local HUMANOID = c:FindFirstChild("Humanoid")
1946
		local THEHEAD = nil
1947
		if HUMANOID ~= nil then
1948
			if c:FindFirstChild("Torso") ~= nil then
1949
				THEHEAD = c:FindFirstChild("Torso")
1950
			elseif c:FindFirstChild("UpperTorso") ~= nil then
1951
				THEHEAD = c:FindFirstChild("UpperTorso")
1952
			end
1953
			if THEHEAD ~= nil then
1954
				local THEMAGNITUDE = (THEHEAD.Position - PART.Position).magnitude
1955
				print("yes 1")
1956
				if APPLYTOOTHERSINSTEAD == true then
1957
					if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
1958
						if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
1959
							if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
1960
								IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
1961
							end
1962
						end
1963
					end
1964
				elseif APPLYTOOTHERSINSTEAD == false then
1965
					if THEMAGNITUDE <= (MAGNITUDE * Player_Size) then
1966
						if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
1967
							if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
1968
								IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
1969
							end
1970
						end
1971
					end
1972
				end
1973
			end
1974
		end
1975
	end
1976
end
1977
1978
1979
1980
function AoEDamage(position,radius,min,max,maxstrength,critrate,critmultiplier,CanBeDodgedByJumping)
1981
	local dmg = math.random(min,max)
1982
	for i,v in ipairs(workspace:GetChildren()) do
1983
	if v:FindFirstChild("HitBy"..Player.Name) == nil then
1984
		local body = v:GetChildren()
1985
			for part = 1, #body do
1986
				if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1987
					if(body[part].Position - position).Magnitude < radius then
1988
						if v.ClassName == "Model" then
1989
							if v:FindFirstChildOfClass("Humanoid") then
1990
								if CanBeDodgedByJumping == true then
1991
									if body[part].Position.Y < position.Y+5 then
1992
										ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
1993
									end
1994
								else
1995
									ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
1996
								end
1997
								local bv = Instance.new("BodyVelocity") 
1998
								bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1999
								bv.velocity = RootPart.CFrame.lookVector*maxstrength
2000
								bv.Parent = body[part]
2001
								Debris:AddItem(bv,0.2)
2002
							end
2003
						end
2004
					end
2005
				end
2006
			end
2007
		end
2008
		if v:FindFirstChild("HitBy"..Player.Name) then
2009
			v:FindFirstChild("HitBy"..Player.Name):remove()
2010
		end
2011
	end
2012
end
2013
2014
function ApplyDamage(Humanoid,Damage,CritRate,CritMultiplier)
2015
	local defence = Instance.new("BoolValue",Humanoid.Parent)
2016
	defence.Name = ("HitBy"..Player.Name)
2017
	game:GetService("Debris"):AddItem(defence, 0.5)
2018
		Humanoid.Health = Humanoid.Health - Damage
2019
		if Humanoid.Parent:FindFirstChild("Head") then
2020
				StatLabel("Normal", Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), Damage, C3(0, 0, 0))
2021
			end
2022
		end
2023
	
2024
2025
--//=================================\\
2026
--||	ATTACK FUNCTIONS AND STUFF
2027
--\\=================================//
2028
2029
function Oblivion()
2030
	ATTACK = true
2031
	Rooted = true
2032
	for i=0, 2, 0.1 / Animation_Speed do
2033
		Swait()
2034
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2035
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2036
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2037
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2038
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2039
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2040
	end
2041
	for i=0, 0.5, 0.1 / Animation_Speed do
2042
		Swait()
2043
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2044
		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.5 / Animation_Speed)
2045
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75,0) * ANGLES(RAD(0), RAD(0), RAD(85)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2046
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2047
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(-15)), 0.5 / Animation_Speed)
2048
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(15)), 0.5 / Animation_Speed)
2049
	end
2050
	for i = 1, 75 do
2051
		Swait()
2052
		MagicSphere(VT(0.5,0.5,5),50,CF(Torso.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,Torso.Position),"Really red",VT(-0.005,-0.005,0.03),0)
2053
	end
2054
	CreateSound(LIGHTHITSOUNDS[MRANDOM(1,#LIGHTHITSOUNDS)], Torso, 10, 0.5)
2055
	CreateSound(LIGHTHITSOUNDS[MRANDOM(1,#LIGHTHITSOUNDS)], Torso, 10, 0.5)
2056
	AoEDamage(Torso.Position,45,45,58,0,false,2,2,false,true)
2057
	MagicSphere(VT(0,0,0),25,Torso.CFrame,"Really red",VT(5,5,5))
2058
	MagicSphere(VT(0,0,0),50,Torso.CFrame,"Lime green",VT(2.5,2.5,2.5))
2059
	MagicSphere(VT(0,0.2,0),30,Torso.CFrame*ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360))),"Really black",VT(6,0,6))
2060
	MagicSphere(VT(0,0.2,0),30,Torso.CFrame*ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360))),"Pearl",VT(6,0,6))
2061
	ATTACK = false
2062
	Rooted = false
2063
end
2064
2065
function kiss()
2066
	ATTACK = true
2067
	Rooted = false
2068
	local HASGRABBED = false
2069
	local GRABTARGET = nil
2070
	local TORS = nil
2071
	local WELD = nil
2072
	for i=0, 1, 0.1 / Animation_Speed do
2073
		Swait()
2074
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.25, -0.25 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(22.5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2075
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-17.5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2076
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(120), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2077
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(120), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2078
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2079
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2080
	end
2081
	local GRAB1 = RightArm.Touched:Connect(function(hit)
2082
		if hit.Parent:FindFirstChild("Humanoid") then
2083
			if hit.Parent.Humanoid.Health ~= 0 then
2084
				UNANCHOR = false
2085
				RootPart.Anchored = true
2086
				TORS = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
2087
				TORS.CFrame = RootPart.CFrame * CF(0,0,-1.8) * ANGLES(RAD(0),RAD(180),RAD(0))
2088
           		WELD = weldBetween(RootPart,TORS)
2089
				HASGRABBED = true
2090
				Rooted = true
2091
			end
2092
		end
2093
	end)
2094
	local GRAB2 = LeftArm.Touched:Connect(function(hit)
2095
		if hit.Parent:FindFirstChild("Humanoid") then
2096
			if hit.Parent.Humanoid.Health ~= 0 then
2097
				UNANCHOR = false
2098
				RootPart.Anchored = true
2099
				TORS = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
2100
				TORS.CFrame = RootPart.CFrame * CF(0,0,-1.8) * ANGLES(RAD(0),RAD(180),RAD(0))
2101
           		WELD = weldBetween(RootPart,TORS)
2102
				HASGRABBED = true
2103
				Rooted = true
2104
			end
2105
		end
2106
	end)
2107
	for i=0, 1, 0.1 / Animation_Speed do
2108
		Swait()
2109
		if HASGRABBED == true then
2110
			break
2111
		end
2112
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.25, -0.25 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(22.5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2113
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-17.5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2114
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2115
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(35)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2116
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2117
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2118
	end
2119
	GRAB1:disconnect()
2120
	GRAB2:disconnect()
2121
	if HASGRABBED == true then
2122
		TORS.Anchored = false
2123
		GRABTARGET = TORS.Parent
2124
                HED = GRABTARGET:FindFirstChild("Head")
2125
		for i=0, 2, 0.1 / Animation_Speed do
2126
			Swait()
2127
			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)
2128
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2129
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2130
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2131
			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)
2132
			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)
2133
		end
2134
						local heart = CreatePart(1, HED, "SmoothPlastic", 0, 0, "Really red", "Heart", VT(1,1,1), false)
2135
                                                local msh = CreateMesh("SpecialMesh", heart, "FileMesh", "431221914", "", VT(0.3, 0.3, 0.3), VT(0,0,0))
2136
                                                CreateWeldOrSnapOrMotor("Weld", HED, heart, HED,CF(0, -2, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
2137
		local ECH = 0
2138
2139
		for i=0, 8, 0.1 / Animation_Speed do
2140
			Swait()
2141
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.25, -0.25 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(22.5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2142
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-17.5 - 2.5 * SIN(SINE / 12)), RAD(25 * SIN(SINE / 3)), RAD(0)), 0.5 / Animation_Speed)
2143
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2144
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2145
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2146
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2147
		end
2148
		WELD:remove()
2149
	end
2150
	UNANCHOR = true
2151
	ATTACK = false
2152
	Rooted = false
2153
end
2154
2155
function Kick()
2156
	ATTACK = true
2157
	Rooted = false
2158
	VALUE1 = true
2159
	NOWALK = true
2160
	if COMBO2 == 1 then
2161
		COMBO2 = 2
2162
		CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
2163
		for i=0, 0.5, 0.1 / Animation_Speed do
2164
			Swait()
2165
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(45)), 2 / Animation_Speed)
2166
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-45)), 2 / Animation_Speed)
2167
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2168
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(45)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2169
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
2170
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2171
		end
2172
	elseif COMBO2 == 2 then
2173
		COMBO2 = 1
2174
		CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
2175
		for i=0, 0.5, 0.1 / Animation_Speed do
2176
			Swait()
2177
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(-45)), 2 / Animation_Speed)
2178
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(45)), 2 / Animation_Speed)
2179
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2180
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2181
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2182
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(-90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
2183
		end
2184
	end
2185
	NOWALK = false
2186
	VALUE1 = false
2187
	ATTACK = false
2188
	Rooted = false
2189
end
2190
2191
function StaggerHitAnimation()
2192
	ATTACK = true
2193
	if Weapon:FindFirstChild("Hitbox") ~= nil then
2194
		for i = 1, MRANDOM(2, 4) do
2195
			ClangEffect("Bright yellow", "Neon", CF(Weapon:FindFirstChild("Hitbox").Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 20, 5, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
2196
		end
2197
	end
2198
	for i = 0, 1, 0.1 / Animation_Speed do
2199
		Swait()
2200
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-10), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
2201
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(30)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.3 / Animation_Speed)
2202
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-30), RAD(0), RAD(60)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
2203
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-20)) * ANGLES(RAD(0), RAD(20), RAD(0)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
2204
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.9 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
2205
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1.1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.3 / Animation_Speed)
2206
		if Stagger.Value == true or Stun.Value == true then
2207
			break
2208
		end
2209
	end
2210
	ATTACK = false
2211
end
2212
2213
function Shot()
2214
	ATTACK = true
2215
	Rooted = false
2216
	for i=0, 0.5, 0.1 / Animation_Speed do
2217
		Swait()
2218
		turnto(Mouse.Hit.p)
2219
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2220
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.5 / Animation_Speed)
2221
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(83), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2222
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(83), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2223
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2224
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2225
	end
2226
	repeat
2227
		for i=0, 0.5, 0.1 / Animation_Speed do
2228
			Swait()
2229
			turnto(Mouse.Hit.p)
2230
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2231
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.5 / Animation_Speed)
2232
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(83), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2233
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(83), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2234
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2235
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2236
		end
2237
		local HIT,POS = CastProperRay(Hole2.Position, Mouse.Hit.p, 1000, Character)
2238
		SpawnTrail(Hole2.Position,POS)
2239
		if HIT ~= nil then
2240
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
2241
				Banish(HIT.Parent)
2242
			end
2243
		end
2244
			local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
2245
		SpawnTrail(Hole.Position,POS)
2246
		if HIT ~= nil then
2247
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
2248
				Banish(HIT.Parent)
2249
			end
2250
		end
2251
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = Hole2.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2252
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2253
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2254
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2255
	CreateSound("159882477", Head, 6, 1)
2256
		for i=0, 0.5, 0.1 / Animation_Speed do
2257
			Swait()
2258
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2259
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.5 / Animation_Speed)
2260
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2261
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2262
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2263
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2264
		end
2265
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2266
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2267
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2268
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2269
	until KEYHOLD == false
2270
	ATTACK = false
2271
	Rooted = false
2272
end
2273
2274
function Punch()
2275
	ATTACK = true
2276
	Rooted = false
2277
	for i=0, 0.2, 0.1 / Animation_Speed do
2278
		Swait()
2279
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2280
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2281
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2282
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2283
		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)), 1 / Animation_Speed)
2284
		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)), 1 / Animation_Speed)
2285
	end
2286
	VALUE1 = true
2287
	if COMBO == 1 then
2288
		COMBO = 2
2289
		CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
2290
		for i=0, 0.3, 0.1 / Animation_Speed do
2291
			Swait()
2292
			RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.1)
2293
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 2 / Animation_Speed)
2294
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(65)), 2 / Animation_Speed)
2295
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2296
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(25)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2297
			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)
2298
			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)
2299
		end
2300
	elseif COMBO == 2 then
2301
		COMBO = 1
2302
		CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
2303
		for i=0, 0.3, 0.1 / Animation_Speed do
2304
			Swait()
2305
			RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.1)
2306
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(85)), 2 / Animation_Speed)
2307
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-80)), 2 / Animation_Speed)
2308
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2309
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2310
			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)
2311
			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)
2312
		end
2313
	end
2314
	VALUE1 = false
2315
	ATTACK = false
2316
	Rooted = false
2317
end
2318
2319
function AttackTemplate()
2320
	ATTACK = true
2321
	Rooted = false
2322
	for i=0, 1, 0.1 / Animation_Speed do
2323
		Swait()
2324
		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)
2325
		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)
2326
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2327
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2328
		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)
2329
		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)
2330
	end
2331
	ATTACK = false
2332
	Rooted = false
2333
end
2334
2335
function Nuke()
2336
	ATTACK = true
2337
	Rooted = true
2338
	local CHARGE = false
2339
	local BLASTS = {468991944, 468991990}
2340
	coroutine.resume(coroutine.create(function()
2341
		repeat
2342
			Swait()
2343
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(-45)), 2 / Animation_Speed)
2344
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(45)), 2 / Animation_Speed)
2345
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2346
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2347
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2348
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(-90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
2349
		until CHARGE == true
2350
		for i = 0, 0.4, 0.1 / Animation_Speed do
2351
			Swait()
2352
			WACKYEFFECT({
2353
				Time = 15,
2354
				EffectType = "Sphere",
2355
				Size = VT(60, 60, 60),
2356
				Size2 = VT(0, 0, 0),
2357
				Transparency = 1,
2358
				Transparency2 = 0.7,
2359
				CFrame = CF(RootPart.Position),
2360
				MoveToPos = nil,
2361
				RotationX = 0,
2362
				RotationY = 0,
2363
				RotationZ = 0,
2364
				Material = "Neon",
2365
				Color = C3(0, 0, 0),
2366
				SoundID = nil,
2367
				SoundPitch = nil,
2368
				SoundVolume = nil
2369
			})
2370
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(45)), 2 / Animation_Speed)
2371
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-45)), 2 / Animation_Speed)
2372
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2373
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(45)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2374
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
2375
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2376
		end
2377
		coroutine.resume(coroutine.create(function()
2378
			local POS = RootPart.Position
2379
			wait(0.2)
2380
			for i = 1, 5 do
2381
				WACKYEFFECT({
2382
					Time = 65,
2383
					EffectType = "Sphere",
2384
					Size = VT(2, 2, 2),
2385
					Size2 = VT(0, 0, 500),
2386
					Transparency = 1,
2387
					Transparency2 = 0,
2388
					CFrame = CF(POS),
2389
					MoveToPos = nil,
2390
					RotationX = MRANDOM(-2, 2),
2391
					RotationY = MRANDOM(-12, 12),
2392
					RotationZ = MRANDOM(-2, 2),
2393
					Material = "Neon",
2394
					Color = C3(1, 0, 0),
2395
					SoundID = nil,
2396
					SoundPitch = nil,
2397
					SoundVolume = nil
2398
				})
2399
			end
2400
			wait(1)
2401
			SHAKECAM(POS, 9999999999, 25, 25)
2402
			ApplyAoE(POS, 450, true)
2403
			WACKYEFFECT({
2404
				Time = 85,
2405
				EffectType = "Sphere",
2406
				Size = VT(120, 120, 120),
2407
				Size2 = VT(350, 350, 350),
2408
				Transparency = 0,
2409
				Transparency2 = 1,
2410
				CFrame = CF(POS),
2411
				MoveToPos = nil,
2412
				RotationX = 0,
2413
				RotationY = 0,
2414
				RotationZ = 0,
2415
				Material = "Neon",
2416
				Color = C3(1, 1, 1),
2417
				SoundID = nil,
2418
				SoundPitch = 1,
2419
				SoundVolume = 10
2420
			})
2421
			for i = 1, 20 do
2422
				WACKYEFFECT({
2423
					Time = 85,
2424
					EffectType = "Sphere",
2425
					Size = VT(120, 120, 120),
2426
					Size2 = VT(120, 120, 144) + VT(i * 3, i * 3, i * 3),
2427
					Transparency = 0.8,
2428
					Transparency2 = 1,
2429
					CFrame = CF(POS),
2430
					MoveToPos = nil,
2431
					RotationX = 0,
2432
					RotationY = 0,
2433
					RotationZ = 0,
2434
					Material = "Neon",
2435
					Color = C3(0, 1, 0),
2436
					SoundID = nil,
2437
					SoundPitch = 1,
2438
					SoundVolume = 10
2439
				})
2440
				WACKYEFFECT({
2441
					Time = 100,
2442
					EffectType = "Wave",
2443
					Size = VT(25, 2, 25),
2444
					Size2 = VT(400, 0, 400) * 1.2,
2445
					Transparency = 0,
2446
					Transparency2 = 1,
2447
					CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
2448
					MoveToPos = nil,
2449
					RotationX = 0,
2450
					RotationY = 0,
2451
					RotationZ = 0,
2452
					Material = "Neon",
2453
					Color = C3(0, 0, 0),
2454
					SoundID = nil,
2455
					SoundPitch = nil,
2456
					SoundVolume = nil
2457
				})
2458
			end
2459
			local HITFLOOR, HITPOS = Raycast(POS, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
2460
			for i = 1, 5 do
2461
				CreateSound(438666077, Effects, 15, 1 - i / 15, false)
2462
				WACKYEFFECT({
2463
					Time = 120,
2464
					EffectType = "Wave",
2465
					Size = VT(150, 2, 150),
2466
					Size2 = VT(300 + i * 170, 0, 300 + i * 170) * 1.2,
2467
					Transparency = 0,
2468
					Transparency2 = 1,
2469
					CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)),
2470
					MoveToPos = nil,
2471
					RotationX = 0,
2472
					RotationY = 0,
2473
					RotationZ = 0,
2474
					Material = "Neon",
2475
					Color = C3(1, 0, 0),
2476
					SoundID = nil,
2477
					SoundPitch = nil,
2478
					SoundVolume = nil
2479
				})
2480
			end
2481
		end))
2482
		for i = 0, 1, 0.1 / Animation_Speed do
2483
			Swait()
2484
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2485
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2486
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2487
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2488
		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)), 1 / Animation_Speed)
2489
		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)), 1 / Animation_Speed)
2490
		end
2491
		ATTACK = false
2492
		Rooted = false
2493
	end))
2494
	for i = 1, 30 do
2495
		wait(0.01)
2496
		local POS = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * CF(0, 0, MRANDOM(10, 150))
2497
		local HITFLOOR, HITPOS = Raycast(POS.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
2498
		if HITFLOOR then
2499
			ApplyAoE(HITPOS, 65, true)
2500
			local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
2501
			WACKYEFFECT({
2502
				Time = 25,
2503
				EffectType = "Sphere",
2504
				Size = VT(22, 22, 22),
2505
				Size2 = VT(85, 85, 85),
2506
				Transparency = 0,
2507
				Transparency2 = 1,
2508
				CFrame = CF(HITPOS),
2509
				MoveToPos = nil,
2510
				RotationX = 0,
2511
				RotationY = 0,
2512
				RotationZ = 0,
2513
				Material = "Neon",
2514
				Color = C3(0, 0, 0),
2515
				SoundID = BLASTS[MRANDOM(1, #BLASTS)],
2516
				SoundPitch = MRANDOM(9, 12) / 10,
2517
				SoundVolume = 10
2518
			})
2519
			for e = 1, 3 do
2520
				WACKYEFFECT({
2521
					EffectType = "Wave",
2522
					Size = VT(25, 0, 25),
2523
					Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
2524
					Transparency = 0,
2525
					Transparency2 = 1,
2526
					CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
2527
					MoveToPos = nil,
2528
					RotationX = 0,
2529
					RotationY = 3,
2530
					RotationZ = 0,
2531
					Material = "Neon",
2532
					Color = C3(0, 1, 0),
2533
					SoundID = nil,
2534
					SoundPitch = nil,
2535
					SoundVolume = nil
2536
				})
2537
				WACKYEFFECT({
2538
					Time = 35,
2539
					EffectType = "Sphere",
2540
					Size = VT(22, 45, 22),
2541
					Size2 = VT(25, 45 + e * 75, 25),
2542
					Transparency = 0,
2543
					Transparency2 = 1,
2544
					CFrame = CF(HITPOS) * TURN,
2545
					MoveToPos = nil,
2546
					RotationX = 0,
2547
					RotationY = 0,
2548
					RotationZ = 0,
2549
					Material = "Neon",
2550
					Color = C3(1, 1, 1),
2551
					SoundID = nil,
2552
					SoundPitch = MRANDOM(9, 12) / 10,
2553
					SoundVolume = 10
2554
				})
2555
			end
2556
		end
2557
	end
2558
	CHARGE = true
2559
end
2560
2561
function Taunt()
2562
    CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
2563
	ATTACK = true
2564
	Rooted = true
2565
	for i=0, 0.3, 0.1 / Animation_Speed do
2566
		Swait()
2567
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2568
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2569
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2570
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-180)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2571
		if HITFLOOR then
2572
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2573
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2574
		elseif HITFLOOR == nil then
2575
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 2 / Animation_Speed)
2576
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 2 / Animation_Speed)
2577
		end
2578
	end
2579
	for i = 1, 8 do
2580
		for i=0, 0.2, 0.1 / Animation_Speed do
2581
			Swait()
2582
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2583
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2584
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.15, 0) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2585
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-180)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 0.7 / Animation_Speed)
2586
			if HITFLOOR then
2587
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2588
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2589
			elseif HITFLOOR == nil then
2590
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 2 / Animation_Speed)
2591
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 2 / Animation_Speed)
2592
			end
2593
		end
2594
    	CreateSound(FireSound, Gun1, 5, 1, false)
2595
		for i=0, 0.2, 0.1 / Animation_Speed do
2596
			Swait()
2597
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2598
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2599
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.7 / Animation_Speed)
2600
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, 0) * ANGLES(RAD(0), RAD(0), RAD(-180)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2601
			if HITFLOOR then
2602
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2603
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
2604
			elseif HITFLOOR == nil then
2605
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 2 / Animation_Speed)
2606
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 2 / Animation_Speed)
2607
			end
2608
		end
2609
		CreateSound(FireSound, Gun2, 5, 1, false)
2610
	end
2611
	ATTACK = false
2612
	Rooted = false
2613
end
2614
--//=================================\\
2615
--||	  ASSIGN THINGS TO KEYS
2616
--\\=================================//
2617
2618
function MouseDown(Mouse)
2619
	if ATTACK == false then
2620
	end
2621
end
2622
2623
function MouseUp(Mouse)
2624
HOLD = falseW
2625
end
2626
2627
function KeyDown(Key)
2628
	KEYHOLD = true
2629
	if Key == "z" and ATTACK == false then
2630
		Shot()
2631
	end
2632
2633
	if Key == "b" and ATTACK == false then
2634
                Kick()
2635
	end
2636
2637
	if Key == "n" and ATTACK == false then
2638
                Punch()
2639
	end
2640
2641
	if Key == "t" and ATTACK == false then
2642
                Taunt()
2643
	end
2644
2645
    if Key == "c" and ATTACK == false then
2646
                 kiss()
2647
	end
2648
2649
	if Key == "v" and ATTACK == false then
2650
                 Oblivion()
2651
	end
2652
2653
	if Key == "x" and ATTACK == false then
2654
                 Nuke()
2655
	end
2656
end
2657
2658
function KeyUp(Key)
2659
	KEYHOLD = false
2660
end
2661
2662
	Mouse.Button1Down:connect(function(NEWKEY)
2663
		MouseDown(NEWKEY)
2664
	end)
2665
	Mouse.Button1Up:connect(function(NEWKEY)
2666
		MouseUp(NEWKEY)
2667
	end)
2668
	Mouse.KeyDown:connect(function(NEWKEY)
2669
		KeyDown(NEWKEY)
2670
	end)
2671
	Mouse.KeyUp:connect(function(NEWKEY)
2672
		KeyUp(NEWKEY)
2673
	end)
2674
2675
--//=================================\\
2676
--\\=================================//
2677
2678
2679
function unanchor()
2680
	if UNANCHOR == true then
2681
		g = Character:GetChildren()
2682
		for i = 1, #g do
2683
			if g[i].ClassName == "Part" then
2684
				g[i].Anchored = false
2685
			end
2686
		end
2687
	end
2688
end
2689
2690
2691
--//=================================\\
2692
--||	WRAP THE WHOLE SCRIPT UP
2693
--\\=================================//
2694
2695
Humanoid.Changed:connect(function(Jump)
2696
	if Jump == "Jump" and (Disable_Jump == true) then
2697
		Humanoid.Jump = false
2698
	end
2699
end)
2700
2701
local CONNECT = nil
2702
2703
while true do
2704
	Swait()
2705
	ANIMATE.Parent = nil
2706
	if Character:FindFirstChildOfClass("Humanoid") == nil then
2707
		Humanoid = IT("Humanoid",Character)
2708
	end
2709
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
2710
	    v:Stop();
2711
	end
2712
	SINE = SINE + CHANGE
2713
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2714
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2715
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
2716
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
2717
	if ANIM == "Walk" and TORSOVELOCITY > 1 and NOWALK == false then
2718
		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 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2719
		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)
2720
		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(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2721
		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(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2722
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) or NOWALK == true then
2723
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2724
		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)
2725
		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)
2726
		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)
2727
	end
2728
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2729
		ANIM = "Jump"
2730
		if ATTACK == false then
2731
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2732
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2733
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2734
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2735
			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)
2736
			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)
2737
	    end
2738
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
2739
		ANIM = "Fall"
2740
		if ATTACK == false then
2741
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2742
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2743
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2744
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2745
			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)
2746
			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)
2747
		end
2748
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
2749
		ANIM = "Idle"
2750
		if ATTACK == false then
2751
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.15 / Animation_Speed)
2752
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
2753
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2754
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2755
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2756
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-76), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2757
		end
2758
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2759
		ANIM = "Walk"
2760
		if ATTACK == false then
2761
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(5), RAD(0), RAD(25)), 0.15 / Animation_Speed)
2762
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 0.15 / Animation_Speed)
2763
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2764
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2765
			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(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
2766
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.5+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-115), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
2767
		end
2768
	end
2769
	unanchor()
2770
	Humanoid.MaxHealth = "inf"
2771
	Humanoid.Health = "inf"
2772
	if Rooted == false then
2773
		Disable_Jump = false
2774
		Humanoid.WalkSpeed = Speed
2775
	elseif Rooted == true then
2776
		Disable_Jump = true
2777
		Humanoid.WalkSpeed = 0
2778
end
2779
2780
	sick.Parent = Torso
2781
	sick:resume()
2782
	sick.Volume = 1
2783
	sick.Pitch = 1
2784
	sick.SoundId = "rbxassetid://733456981"
2785
	sick.Name = "Un sen"
2786
end
2787
--//=================================\\
2788
--\\=================================//
2789
2790
2791
--//====================================================\\--
2792
--||			  		 END OF SCRIPT
2793
--\\====================================================//--