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