View difference between Paste ID: qFiW99QM and VAyku8TR
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||			   CREATED BY SHACKLUSTER
3
--\\====================================================//--
4
5
6
7
wait(0.2)
8
9
10
11
Player = game:GetService("Players").LocalPlayer
12
PlayerGui = Player.PlayerGui
13
Cam = workspace.CurrentCamera
14
Backpack = Player.Backpack
15
Character = Player.Character
16
Humanoid = Character.Humanoid
17
Mouse = Player:GetMouse()
18
RootPart = Character["HumanoidRootPart"]
19
Torso = Character["Torso"]
20
Head = Character["Head"]
21
RightArm = Character["Right Arm"]
22
LeftArm = Character["Left Arm"]
23
RightLeg = Character["Right Leg"]
24
LeftLeg = Character["Left Leg"]
25
RootJoint = RootPart["RootJoint"]
26
Neck = Torso["Neck"]
27
RightShoulder = Torso["Right Shoulder"]
28
LeftShoulder = Torso["Left Shoulder"]
29
RightHip = Torso["Right Hip"]
30
LeftHip = Torso["Left Hip"]
31
local NormalMusicLink = "rbxassetid://596220347"
32
local sick = Instance.new("Sound",Character)
33
sick.SoundId = "rbxassetid://596220347"
34
sick.Looped = true
35
sick.Pitch = 1
36
sick.Volume = 0.6
37
sick:Play()
38
39
IT = Instance.new
40
CF = CFrame.new
41
VT = Vector3.new
42
RAD = math.rad
43
C3 = Color3.new
44
UD2 = UDim2.new
45
BRICKC = BrickColor.new
46
ANGLES = CFrame.Angles
47
EULER = CFrame.fromEulerAnglesXYZ
48
COS = math.cos
49
ACOS = math.acos
50
SIN = math.sin
51
ASIN = math.asin
52
ABS = math.abs
53
MRANDOM = math.random
54
FLOOR = math.floor
55
56
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
57
	local NEWMESH = IT(MESH)
58
	if MESH == "SpecialMesh" then
59
		NEWMESH.MeshType = MESHTYPE
60
		if MESHID ~= "nil" and MESHID ~= "" then
61
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
62
		end
63
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
64
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
65
		end
66
	end
67
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
68
	NEWMESH.Scale = SCALE
69
	NEWMESH.Parent = PARENT
70
	return NEWMESH
71
end
72
73
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
74
	local NEWPART = IT("Part")
75
	NEWPART.formFactor = FORMFACTOR
76
	NEWPART.Reflectance = REFLECTANCE
77
	NEWPART.Transparency = TRANSPARENCY
78
	NEWPART.CanCollide = false
79
	NEWPART.Locked = true
80
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
81
	NEWPART.Name = NAME
82
	NEWPART.Size = SIZE
83
	NEWPART.Position = Torso.Position
84
	NEWPART.Material = MATERIAL
85
	NEWPART:BreakJoints()
86
	NEWPART.Parent = PARENT
87
	return NEWPART
88
end
89
90
91
--//=================================\\
92
--||		  CUSTOMIZATION
93
--\\=================================//
94
95
Class_Name = "Template"
96
Weapon_Name = "Add-ons"
97
98
Custom_Colors = {
99
	Custom_Color_1 = BRICKC("Really red"); --1st color for the weapon.
100
	Custom_Color_2 = BRICKC("Really blue"); --2nd color for the weapon.
101
102
	Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
103
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
104
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
105
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
106
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
107
108
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
109
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
110
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
111
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
112
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
113
}
114
115
116
Player_Size = 1 --Size of the player.
117
Animation_Speed = 3
118
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
119
120
local Speed = 100
121
local Effects2 = {}
122
123
--//=================================\\
124
--|| 	  END OF CUSTOMIZATION
125
--\\=================================//
126
127
	local function weldBetween(a, b)
128
	    local weldd = Instance.new("ManualWeld")
129
	    weldd.Part0 = a
130
	    weldd.Part1 = b
131
	    weldd.C0 = CFrame.new()
132
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
133
	    weldd.Parent = a
134
	    return weldd
135
	end
136
137
function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
138
local acs = Instance.new("Part")
139
acs.CanCollide = false
140
acs.Anchored = false
141
acs.Size = Vector3.new(0,0,0)
142
acs.CFrame = attachmentpart.CFrame
143
acs.Parent = Character
144
acs.BrickColor = color
145
    local meshs = Instance.new("SpecialMesh")
146
    meshs.MeshId = mesh
147
    meshs.TextureId = texture
148
    meshs.Parent = acs
149
    meshs.Scale = scale
150
    meshs.Offset = offset
151
weldBetween(attachmentpart,acs)
152
end
153
154
function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
155
if TYPE == "Gem" then
156
	local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
157
	acs.Anchored = false
158
    acs.CanCollide = false
159
	acs.CFrame = PART.CFrame
160
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
161
weldBetween(PART,acs)
162
elseif TYPE == "Skull" then
163
	local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
164
	acs.Anchored = false
165
    acs.CanCollide = false
166
	acs.CFrame = PART.CFrame
167
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
168
weldBetween(PART,acs)
169
elseif TYPE == "Eye" then
170
	local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
171
	acs.Anchored = false
172
    acs.CanCollide = false
173
	acs.CFrame = PART.CFrame
174
	local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
175
weldBetween(PART,acs)
176
end
177
end
178
179
--//=================================\\
180
--|| 	      USEFUL VALUES
181
--\\=================================//
182
183
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
184
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
185
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
186
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
187
local CO1 = 0
188
local CO2 = 0
189
local CO3 = 0
190
local CO4 = 0
191
local CHANGEDEFENSE = 0
192
local CHANGEDAMAGE = 0
193
local CHANGEMOVEMENT = 0
194
local ANIM = "Idle"
195
local ATTACK = false
196
local EQUIPPED = false
197
local HOLD = false
198
local COMBO = 999
199
local LASTPOINT = nil
200
local BLCF = nil
201
local SCFR = nil
202
local STAGGERHITANIM = false
203
local STAGGERANIM = false
204
local STUNANIM = false
205
local CRITCHANCENUMBER = 0
206
local IDLENUMBER = 0
207
local DONUMBER = 0
208
local HANDIDLE = false
209
local SINE = 0
210
local CHANGE = 2 / Animation_Speed
211
local WALKINGANIM = false
212
local WALK = 0
213
local DISABLEJUMPING = false
214
local HASBEENBLOCKED = false
215
local STUNDELAYNUMBER = 0
216
local MANADELAYNUMBER = 0
217
local SECONDARYMANADELAYNUMBER = 0
218
local ROBLOXIDLEANIMATION = IT("Animation")
219
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
220
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
221
--ROBLOXIDLEANIMATION.Parent = Humanoid
222
local WEAPONGUI = IT("ScreenGui", nil)
223
WEAPONGUI.Name = "Weapon GUI"
224
local WEAPONTOOL = IT("HopperBin", nil)
225
WEAPONTOOL.Name = Weapon_Name
226
local Weapon = IT("Model")
227
Weapon.Name = Weapon_Name
228
local Effects = IT("Folder", Weapon)
229
Effects.Name = "Effects"
230
local ANIMATOR = Humanoid.Animator
231
local ANIMATE = Character.Animate
232
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
233
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
234
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
235
local HITBLOCKSOUNDS = {"199148933", "199148947"}
236
local UNANCHOR = true
237
238
--//=================================\\
239
--\\=================================//
240
241
--//=================================\\
242
--||			  STATS
243
--\\=================================//
244
245
if Character:FindFirstChild("Stats") ~= nil then
246
Character:FindFirstChild("Stats").Parent = nil
247
end
248
249
local Stats = IT("Folder", nil)
250
Stats.Name = "Stats"
251
local ChangeStat = IT("Folder", Stats)
252
ChangeStat.Name = "ChangeStat"
253
local Defense = IT("NumberValue", Stats)
254
Defense.Name = "Defense"
255
Defense.Value = 1
256
local Movement = IT("NumberValue", Stats)
257
Movement.Name = "Movement"
258
Movement.Value = 1
259
local Damage = IT("NumberValue", Stats)
260
Damage.Name = "Damage"
261
Damage.Value = math.huge
262
local Mana = IT("NumberValue", Stats)
263
Mana.Name = "Mana"
264
Mana.Value = 0
265
local SecondaryMana = IT("NumberValue", Stats)
266
SecondaryMana.Name = "SecondaryMana"
267
SecondaryMana.Value = 0
268
local CanCrit = IT("BoolValue", Stats)
269
CanCrit.Name = "CanCrit"
270
CanCrit.Value = false
271
local CritChance = IT("NumberValue", Stats)
272
CritChance.Name = "CritChance"
273
CritChance.Value = 20
274
local CanPenetrateArmor = IT("BoolValue", Stats)
275
CanPenetrateArmor.Name = "CanPenetrateArmor"
276
CanPenetrateArmor.Value = false
277
local AntiTeamKill = IT("BoolValue", Stats)
278
AntiTeamKill.Name = "AntiTeamKill"
279
AntiTeamKill.Value = false
280
local Rooted = IT("BoolValue", Stats)
281
Rooted.Name = "Rooted"
282
Rooted.Value = false
283
local Block = IT("BoolValue", Stats)
284
Block.Name = "Block"
285
Block.Value = false
286
local RecentEnemy = IT("ObjectValue", Stats)
287
RecentEnemy.Name = "RecentEnemy"
288
RecentEnemy.Value = nil
289
local StaggerHit = IT("BoolValue", Stats)
290
StaggerHit.Name = "StaggerHit"
291
StaggerHit.Value = false
292
local Stagger = IT("BoolValue", Stats)
293
Stagger.Name = "Stagger"
294
Stagger.Value = false
295
local Stun = IT("BoolValue", Stats)
296
Stun.Name = "Stun"
297
Stun.Value = false
298
local StunValue = IT("NumberValue", Stats)
299
StunValue.Name = "StunValue"
300
StunValue.Value = 0
301
302
303
--//=================================\\
304
--\\=================================//
305
306
307
308
309
310
--//=================================\\
311
--|| 	     DEBUFFS / BUFFS
312
--\\=================================//
313
314
local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
315
DEFENSECHANGE1.Name = "ChangeDefense"
316
DEFENSECHANGE1.Value = 0
317
318
local MOVEMENTCHANGE1 = IT("NumberValue", nil)
319
MOVEMENTCHANGE1.Name = "ChangeMovement"
320
MOVEMENTCHANGE1.Value = 0
321
322
--//=================================\\
323
--\\=================================//
324
325
326
327
328
329
--//=================================\\
330
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
331
--\\=================================//
332
333
ArtificialHB = Instance.new("BindableEvent", script)
334
ArtificialHB.Name = "ArtificialHB"
335
336
script:WaitForChild("ArtificialHB")
337
338
frame = Frame_Speed
339
tf = 0
340
allowframeloss = false
341
tossremainder = false
342
lastframe = tick()
343
script.ArtificialHB:Fire()
344
345
game:GetService("RunService").Heartbeat:connect(function(s, p)
346
	tf = tf + s
347
	if tf >= frame then
348
		if allowframeloss then
349
			script.ArtificialHB:Fire()
350
			lastframe = tick()
351
		else
352
			for i = 1, math.floor(tf / frame) do
353
				script.ArtificialHB:Fire()
354
			end
355
		lastframe = tick()
356
		end
357
		if tossremainder then
358
			tf = 0
359
		else
360
			tf = tf - frame * math.floor(tf / frame)
361
		end
362
	end
363
end)
364
365
--//=================================\\
366
--\\=================================//
367
368
369
370
371
372
--//=================================\\
373
--|| 	      SOME FUNCTIONS
374
--\\=================================//
375
376
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
377
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
378
end
379
380
function PositiveAngle(NUMBER)
381
	if NUMBER >= 0 then
382
		NUMBER = 0
383
	end
384
	return NUMBER
385
end
386
387
function NegativeAngle(NUMBER)
388
	if NUMBER <= 0 then
389
		NUMBER = 0
390
	end
391
	return NUMBER
392
end
393
394
function Swait(NUMBER)
395
	if NUMBER == 0 or NUMBER == nil then
396
		ArtificialHB.Event:wait()
397
	else
398
		for i = 1, NUMBER do
399
			ArtificialHB.Event:wait()
400
		end
401
	end
402
end
403
404
function QuaternionFromCFrame(cf)
405
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
406
	local trace = m00 + m11 + m22
407
	if trace > 0 then 
408
		local s = math.sqrt(1 + trace)
409
		local recip = 0.5 / s
410
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
411
	else
412
		local i = 0
413
		if m11 > m00 then
414
			i = 1
415
		end
416
		if m22 > (i == 0 and m00 or m11) then
417
			i = 2
418
		end
419
		if i == 0 then
420
			local s = math.sqrt(m00 - m11 - m22 + 1)
421
			local recip = 0.5 / s
422
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
423
		elseif i == 1 then
424
			local s = math.sqrt(m11 - m22 - m00 + 1)
425
			local recip = 0.5 / s
426
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
427
		elseif i == 2 then
428
			local s = math.sqrt(m22 - m00 - m11 + 1)
429
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
430
		end
431
	end
432
end
433
 
434
function QuaternionToCFrame(px, py, pz, x, y, z, w)
435
	local xs, ys, zs = x + x, y + y, z + z
436
	local wx, wy, wz = w * xs, w * ys, w * zs
437
	local xx = x * xs
438
	local xy = x * ys
439
	local xz = x * zs
440
	local yy = y * ys
441
	local yz = y * zs
442
	local zz = z * zs
443
	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))
444
end
445
 
446
function QuaternionSlerp(a, b, t)
447
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
448
	local startInterp, finishInterp;
449
	if cosTheta >= 0.0001 then
450
		if (1 - cosTheta) > 0.0001 then
451
			local theta = ACOS(cosTheta)
452
			local invSinTheta = 1 / SIN(theta)
453
			startInterp = SIN((1 - t) * theta) * invSinTheta
454
			finishInterp = SIN(t * theta) * invSinTheta
455
		else
456
			startInterp = 1 - t
457
			finishInterp = t
458
		end
459
	else
460
		if (1 + cosTheta) > 0.0001 then
461
			local theta = ACOS(-cosTheta)
462
			local invSinTheta = 1 / SIN(theta)
463
			startInterp = SIN((t - 1) * theta) * invSinTheta
464
			finishInterp = SIN(t * theta) * invSinTheta
465
		else
466
			startInterp = t - 1
467
			finishInterp = t
468
		end
469
	end
470
	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
471
end
472
473
function Clerp(a, b, t)
474
	local qa = {QuaternionFromCFrame(a)}
475
	local qb = {QuaternionFromCFrame(b)}
476
	local ax, ay, az = a.x, a.y, a.z
477
	local bx, by, bz = b.x, b.y, b.z
478
	local _t = 1 - t
479
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
480
end
481
482
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
483
	local frame = IT("Frame")
484
	frame.BackgroundTransparency = TRANSPARENCY
485
	frame.BorderSizePixel = BORDERSIZEPIXEL
486
	frame.Position = POSITION
487
	frame.Size = SIZE
488
	frame.BackgroundColor3 = COLOR
489
	frame.BorderColor3 = BORDERCOLOR
490
	frame.Name = NAME
491
	frame.Parent = PARENT
492
	return frame
493
end
494
495
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
496
	local label = IT("TextLabel")
497
	label.BackgroundTransparency = 1
498
	label.Size = UD2(1, 0, 1, 0)
499
	label.Position = UD2(0, 0, 0, 0)
500
	label.TextColor3 = C3(255, 255, 255)
501
	label.TextStrokeTransparency = STROKETRANSPARENCY
502
	label.TextTransparency = TRANSPARENCY
503
	label.FontSize = TEXTFONTSIZE
504
	label.Font = TEXTFONT
505
	label.BorderSizePixel = BORDERSIZEPIXEL
506
	label.TextScaled = true
507
	label.Text = TEXT
508
	label.Name = NAME
509
	label.Parent = PARENT
510
	return label
511
end
512
513
function NoOutlines(PART)
514
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
515
end
516
517
518
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
519
	local NEWWELD = IT(TYPE)
520
	NEWWELD.Part0 = PART0
521
	NEWWELD.Part1 = PART1
522
	NEWWELD.C0 = C0
523
	NEWWELD.C1 = C1
524
	NEWWELD.Parent = PARENT
525
	return NEWWELD
526
end
527
528
function CreateSound(ID, PARENT, VOLUME, PITCH)
529
	coroutine.resume(coroutine.create(function()
530
		local NEWSOUND = IT("Sound", PARENT)
531
		NEWSOUND.Volume = VOLUME
532
		NEWSOUND.Pitch = PITCH
533
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
534
		Swait()
535
		NEWSOUND:play()
536
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
537
	end))
538
end
539
540
541
--//=================================\\
542
--\\=================================//
543
544
545
--//=================================\\
546
--||	     WEAPON CREATION
547
--\\=================================//
548
549
local Handle = CreatePart(3, Weapon, "Brick", 0, 0, "Tawny", "Handle", VT(1.8,3.5,1.8))
550
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0 * Player_Size, -1.5 * Player_Size, 1 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
551
local HandlePart = CreatePart(3, Weapon, "Brick", 0, 0, "Tawny", "Handle", VT(2.2,1,2.2))
552
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Handle, HandlePart, CF(0 * Player_Size, 2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
553
local HandlePart = CreatePart(3, Weapon, "Brick", 0, 0, "Tawny", "Handle", VT(2,0.3,2))
554
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Handle, HandlePart, CF(0 * Player_Size, -0.2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
555
local HandlePart = CreatePart(3, Weapon, "Brick", 0, 0, "Tawny", "Handle", VT(2,0.3,2))
556
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Handle, HandlePart, CF(0 * Player_Size, -1.2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
557
local Opening = CreatePart(3, Weapon, "Plastic", 0, 0, "Really black", "Handle", VT(1.2,0.6,0.1))
558
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", Opening, Handle, Opening, CF(0 * Player_Size, -0.8 * Player_Size, 0.9 * Player_Size) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
559
local HandlePart = CreatePart(3, Weapon, "Metal", 0, 0, "Stone grey", "Handle", VT(1,1,0.1))
560
local decal = Instance.new("Decal",HandlePart)
561
decal.Texture = "http://www.roblox.com/asset/?id=140490792"
562
decal.Face = "Back"
563
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Handle, HandlePart, CF(0 * Player_Size, 0.6 * Player_Size, 0.9 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
564
565
for _, c in pairs(Weapon:GetChildren()) do
566
	if c.ClassName == "Part" then
567
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
568
	end
569
end
570
571
local chuck = Instance.new("Sound",Effects)
572
chuck.SoundId = "rbxassetid://11900833"
573
chuck.Pitch = 2
574
chuck.Volume = 1
575
576
Weapon.Parent = Character
577
578
Humanoid.Died:connect(function()
579
	ATTACK = true
580
end)
581
582
print(Class_Name.." loaded.")
583
584
--//=================================\\
585
--\\=================================//
586
587
function dealdamage(hit,min,max,maxstrength,beserk)
588
	if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
589
		local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
590
		local dmg = math.random(min,max)
591
		if humanoid.Health > 0 then
592
			if beserk == true then
593
				humanoid.Health = 0
594
			else
595
				CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
596
				--hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
597
				humanoid.Health = humanoid.Health - dmg
598
				--StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(255/255, 0, 0))
599
				local defence = Instance.new("BoolValue",hit.Parent)
600
				defence.Name = ("HitBy"..Player.Name)
601
				game:GetService("Debris"):AddItem(defence, 0.05)
602
			end
603
		end
604
	end
605
end
606
607
--//=================================\\
608
--\\=================================//
609
610
function chatfunc(text)
611
local chat = coroutine.wrap(function()
612
if Character:FindFirstChild("TalkingBillBoard")~= nil then
613
Character:FindFirstChild("TalkingBillBoard"):destroy()
614
end
615
local naeeym2 = Instance.new("BillboardGui",Character)
616
naeeym2.Size = UDim2.new(0,100,0,40)
617
naeeym2.StudsOffset = Vector3.new(0,3,0)
618
naeeym2.Adornee = Character.Head
619
naeeym2.Name = "TalkingBillBoard"
620
local tecks2 = Instance.new("TextLabel",naeeym2)
621
tecks2.BackgroundTransparency = 1
622
tecks2.BorderSizePixel = 0
623
tecks2.Text = ""
624
tecks2.Font = "SciFi"
625
tecks2.TextSize = 30
626
tecks2.TextStrokeTransparency = 1
627
tecks2.TextColor3 = Color3.new(0,0,0)
628
tecks2.TextStrokeColor3 = Color3.new(0,0,0)
629
tecks2.Size = UDim2.new(1,0,0.5,0)
630
local tecks3 = Instance.new("TextLabel",naeeym2)
631
tecks3.BackgroundTransparency = 1
632
tecks3.BorderSizePixel = 0
633
tecks3.Text = ""
634
tecks3.Font = "SciFi"
635
tecks3.TextSize = 30
636
tecks3.TextStrokeTransparency = 1
637
tecks3.TextColor3 = Color3.new(0,0,0)
638
tecks3.TextStrokeColor3 = Color3.new(0,0,0)
639
tecks3.Size = UDim2.new(1,0,0.5,0)
640
for i = 1,string.len(text),1 do
641
tecks2.Text = string.sub(text,1,i)
642
tecks3.Text = string.sub(text,1,i)
643
wait(0.01)
644
end
645
wait(2)
646
for i = 1, 50 do
647
Swait()
648
tecks2.Position = tecks2.Position - UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
649
tecks2.Rotation = tecks2.Rotation - .8
650
tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
651
tecks2.TextTransparency = tecks2.TextTransparency + .04
652
tecks3.Position = tecks2.Position - UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
653
tecks3.Rotation = tecks2.Rotation + .8
654
tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
655
tecks3.TextTransparency = tecks2.TextTransparency + .04
656
end
657
naeeym2:Destroy()
658
end)
659
chat()
660
end
661
662
function onChatted(msg)
663
	if msg == "1" then
664
		chatfunc("Spell card! Mailman's Wrath!")
665
		StartPosition()
666
		Swait(70)
667
		MailmansWrath()
668
	elseif msg == "2" then
669
		StartPosition()
670
		chatfunc("Spell card! Papercut Chaos!")
671
		Swait(70)
672
		PapercutChaos()
673
	elseif msg == "3" then
674
		StartPosition()
675
		chatfunc("Spell card! Mailbox Madness!")
676
		MailboxMadness()
677
	elseif msg == "4" then
678
		StartPosition()
679
		chatfunc("SUPER SPELL CARD! MAIL FRENZY!!")
680
        FinalInbox()
681
		Swait(80)
682
    elseif msg == "5" then
683
        StartPosition()
684
        chatfunc("SUPER SPELL CARD! SONIC MAIL FRENZY!!")
685
        Swait(80)
686
        SonicMail()
687
    elseif msg == "6" then
688
        StartPosition()
689
        chatfunc("HASTA LA VISTA,BABY!")
690
        Swait(100)
691
        chatfunc("SKRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRAAAAAAAA")
692
        MailmansWrath2()
693
        MailmansWrath2()
694
        MailboxMadness2()
695
        MailboxMadness2()
696
        SonicMail() 
697
        SonicMail()
698
        MailmansWrath2()
699
	end
700
end
701
Player.Chatted:connect(onChatted)
702
703
--//=================================\\
704
--||	 	DANMAKU MADNESS
705
--\\=================================//
706
707
local Mail = Instance.new("Part")
708
	Mail.Size = Vector3.new(2, 0.05, 1)
709
	Mail.Color = Color3.new(1,1,1)
710
	Mail.CanCollide = false
711
	local maildecal = Instance.new("Decal",Mail)
712
	maildecal.Face = "Top"
713
	maildecal.Texture = "http://www.roblox.com/asset/?id=8052441"
714
	Mail.BottomSurface = "Smooth"
715
	Mail.Name = "Mail"
716
717
function ShootMail(part,strength,debris)
718
	local mail = Mail:Clone()
719
	mail.CFrame = part.CFrame
720
	mail.Parent = Effects
721
	game:GetService("Debris"):AddItem(mail ,debris)
722
	local bv = Instance.new("BodyVelocity") 
723
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
724
	bv.velocity = part.CFrame.lookVector*strength
725
	bv.Parent = mail
726
	bv.Name = "DASH"
727
	local hit = mail.Touched:connect(function(hit) 
728
		if hit.Parent ~= Character and hit.Parent.ClassName ~= "Accessory" and hit.Name ~= "Mail" then
729
			dealdamage(hit,15,45,40)
730
		end
731
	end)
732
	return mail
733
end
734
735
function MagicSphere(BRICKCOLOR, MATERIAL, PART, CFRAME, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
736
end
737
738
739
function StartPosition()
740
	ATTACK = true
741
	Rooted = true
742
	for i=0, 1, 0.1 / Animation_Speed/1.2 do
743
		Swait()
744
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, -0 * Player_Size, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.15 / Animation_Speed)
745
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), 0.15 / Animation_Speed)
746
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
747
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
748
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size -0.25, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
749
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.25, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
750
	end
751
end
752
753
function MailmansWrath2()
754
	local twist = 0
755
	local twist2 = false
756
	local twist3 = 1
757
	local spinpart = Instance.new("Part",Weapon)
758
	spinpart.Anchored = true
759
	spinpart.CanCollide = false
760
	spinpart.Transparency = 1
761
	spinpart.CFrame = Opening.CFrame
762
	local spinpart2 = Instance.new("Part",Weapon)
763
	spinpart2.Anchored = true
764
	spinpart2.CanCollide = false
765
	spinpart2.Transparency = 1
766
	spinpart2.CFrame = Opening.CFrame
767
	for i = 1, 30 do
768
		chuck:Play()
769
		MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
770
		twist = twist + 1
771
		spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
772
		spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
773
		if twist == 10 then
774
			spinpart.CFrame = Opening.CFrame
775
			spinpart2.CFrame = Opening.CFrame
776
			twist = 0
777
		end
778
		ShootMail(spinpart,65,2)
779
		ShootMail(spinpart2,65,2)
780
		Swait(1.5)
781
	end
782
	spinpart.CFrame = Opening.CFrame
783
	spinpart2.CFrame = Opening.CFrame
784
	twist = 10
785
	for i = 1, 40 do
786
		chuck:Play()
787
		MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
788
		twist = twist + 1
789
		if twist2 == true then
790
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
791
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
792
		elseif twist2 == false then
793
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
794
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
795
		end
796
		if twist == 20 then
797
			if twist2 == false then
798
				twist2 = true
799
			elseif twist2 == true then
800
				twist2 = false
801
			end
802
			twist = 0
803
		end
804
		ShootMail(spinpart,65,2)
805
		ShootMail(spinpart2,65,2)
806
		Swait(1.5)
807
	end
808
	spinpart.CFrame = Opening.CFrame
809
	spinpart2.CFrame = Opening.CFrame
810
	twist = 0
811
	for i = 1, 30 do
812
		chuck:Play()
813
		MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
814
		twist = twist + 1
815
		spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.15, 0)
816
		spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.15, 0)
817
		if twist == 10 then
818
			spinpart.CFrame = Opening.CFrame
819
			spinpart2.CFrame = Opening.CFrame
820
			twist = 0
821
		end
822
		ShootMail(spinpart,75,2)
823
		ShootMail(spinpart2,75,2)
824
		Swait(1.5)
825
	end
826
	spinpart:remove()
827
	spinpart2:remove()
828
	ATTACK = false
829
	Rooted = false
830
end
831
function MailmansWrath()
832
	local twist = 0
833
	local twist2 = false
834
	local twist3 = 1
835
	local spinpart = Instance.new("Part",Weapon)
836
	spinpart.Anchored = true
837
	spinpart.CanCollide = false
838
	spinpart.Transparency = 1
839
	spinpart.CFrame = Opening.CFrame
840
	local spinpart2 = Instance.new("Part",Weapon)
841
	spinpart2.Anchored = true
842
	spinpart2.CanCollide = false
843
	spinpart2.Transparency = 1
844
	spinpart2.CFrame = Opening.CFrame
845
	for i = 1, 30 do
846
		chuck:Play()
847
		MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
848
		twist = twist + 1
849
		spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
850
		spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
851
		if twist == 10 then
852
			spinpart.CFrame = Opening.CFrame
853
			spinpart2.CFrame = Opening.CFrame
854
			twist = 0
855
		end
856
		ShootMail(spinpart,65,2)
857
		ShootMail(spinpart2,65,2)
858
		Swait(5)
859
	end
860
	spinpart.CFrame = Opening.CFrame
861
	spinpart2.CFrame = Opening.CFrame
862
	twist = 10
863
	for i = 1, 40 do
864
		chuck:Play()
865
		MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
866
		twist = twist + 1
867
		if twist2 == true then
868
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
869
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
870
		elseif twist2 == false then
871
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
872
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
873
		end
874
		if twist == 20 then
875
			if twist2 == false then
876
				twist2 = true
877
			elseif twist2 == true then
878
				twist2 = false
879
			end
880
			twist = 0
881
		end
882
		ShootMail(spinpart,65,2)
883
		ShootMail(spinpart2,65,2)
884
		Swait(5)
885
	end
886
	spinpart.CFrame = Opening.CFrame
887
	spinpart2.CFrame = Opening.CFrame
888
	twist = 0
889
	for i = 1, 30 do
890
		chuck:Play()
891
		MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
892
		twist = twist + 1
893
		spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.15, 0)
894
		spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.15, 0)
895
		if twist == 10 then
896
			spinpart.CFrame = Opening.CFrame
897
			spinpart2.CFrame = Opening.CFrame
898
			twist = 0
899
		end
900
		ShootMail(spinpart,75,2)
901
		ShootMail(spinpart2,75,2)
902
		Swait(5)
903
	end
904
	spinpart:remove()
905
	spinpart2:remove()
906
	ATTACK = false
907
	Rooted = false
908
end
909
910
911
function PapercutChaos()
912
	local twist = 0
913
	for i = 1, 5 do
914
	chuck:Play()
915
	MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
916
	local mail = ShootMail(Opening,25,20)
917
		for i = 1, 15 do
918
			chuck:Play()
919
			local spinpart = Instance.new("Part",Weapon)
920
			spinpart.Anchored = true
921
			spinpart.CanCollide = false
922
			spinpart.Transparency = 1
923
			spinpart.CFrame = mail.CFrame
924
			local spinpart2 = Instance.new("Part",Weapon)
925
			spinpart2.Anchored = true
926
			spinpart2.CanCollide = false
927
			spinpart2.Transparency = 1
928
			spinpart2.CFrame = mail.CFrame
929
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 70, 0)
930
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -70, 0)
931
			MagicSphere("Really black", "Neon", mail.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
932
			ShootMail(spinpart,35,2)
933
			ShootMail(spinpart2,35,2)
934
			spinpart:remove()
935
			spinpart2:remove()
936
			Swait(5)
937
		end
938
		mail:remove()
939
	end
940
	for i = 1, 2 do
941
	chuck:Play()
942
	MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
943
	local mail = ShootMail(Opening,45,20)
944
		for i = 1, 20 do
945
			twist = twist + 1
946
			chuck:Play()
947
			local spinpart = Instance.new("Part",Weapon)
948
			spinpart.Anchored = true
949
			spinpart.CanCollide = false
950
			spinpart.Transparency = 1
951
			spinpart.CFrame = mail.CFrame
952
			local spinpart2 = Instance.new("Part",Weapon)
953
			spinpart2.Anchored = true
954
			spinpart2.CanCollide = false
955
			spinpart2.Transparency = 1
956
			spinpart2.CFrame = mail.CFrame
957
			spinpart.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, twist, 0)
958
			spinpart2.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, -twist, 0)
959
			MagicSphere("Really black", "Neon", mail.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
960
			ShootMail(spinpart,35,2)
961
			ShootMail(spinpart2,35,2)
962
			spinpart:remove()
963
			spinpart2:remove()
964
			Swait(5)
965
		end
966
		twist = 0
967
		mail:remove()
968
	end
969
	ATTACK = false
970
	Rooted = false
971
end
972
973
function MailboxMadness()
974
	for i = 1, 15 do
975
		chuck:Play()
976
		local part = Instance.new("Part")
977
		part.CFrame = RootPart.CFrame * CF(math.random(-35,35),0,math.random(-70,-35))
978
		part.Orientation = RootPart.Orientation
979
		part.CanCollide = false
980
		part.Anchored = true
981
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
982
		local spinpart = Instance.new("Part",Weapon)
983
		spinpart.Anchored = true
984
		spinpart.CanCollide = false
985
		spinpart.Transparency = 1
986
		spinpart.CFrame = part.CFrame
987
		local spinpart2 = Instance.new("Part",Weapon)
988
		spinpart2.Anchored = true
989
		spinpart2.CanCollide = false
990
		spinpart2.Transparency = 1
991
		spinpart2.CFrame = part.CFrame
992
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
993
		part:remove()
994
		for i = 1, 15 do
995
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
996
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
997
        coroutine.resume(coroutine.create(function()
998-
           for i = 1, 30 do
998+
999
			ShootMail(spinpart2,50,2)
1000
            wait(.05)
1001
            ShootMail(spinpart,50,2)
1002-
         end
1002+
1003
            wait(.05)
1004
            ShootMail(spinpart,50,2)
1005
			ShootMail(spinpart2,50,2)
1006
            wait(.05)
1007
            ShootMail(spinpart,50,2)
1008
			ShootMail(spinpart2,50,2)
1009
            wait(.05)
1010
			ShootMail(spinpart,50,2)
1011
			ShootMail(spinpart2,50,2)
1012
            wait(.05)
1013
            ShootMail(spinpart,50,2)
1014
			ShootMail(spinpart2,50,2)
1015
            wait(.05)
1016
            ShootMail(spinpart,50,2)
1017
			ShootMail(spinpart2,50,2)
1018
            wait(.05)
1019
            ShootMail(spinpart,50,2)
1020
			ShootMail(spinpart2,50,2)
1021
            wait(.05)
1022
			ShootMail(spinpart,50,2)
1023
			ShootMail(spinpart2,50,2)
1024
            wait(.05)
1025
            ShootMail(spinpart,50,2)
1026
			ShootMail(spinpart2,50,2)
1027
            wait(.05)
1028
            ShootMail(spinpart,50,2)
1029
			ShootMail(spinpart2,50,2)
1030
            wait(.05)
1031
            ShootMail(spinpart,50,2)
1032
			ShootMail(spinpart2,50,2)
1033
            wait(.05)
1034
			ShootMail(spinpart,50,2)
1035
			ShootMail(spinpart2,50,2)
1036
            wait(.05)
1037
            ShootMail(spinpart,50,2)
1038
			ShootMail(spinpart2,50,2)
1039
            wait(.05)
1040
            ShootMail(spinpart,50,2)
1041
			ShootMail(spinpart2,50,2)
1042
            wait(.05)
1043
            ShootMail(spinpart,50,2)
1044
			ShootMail(spinpart2,50,2)
1045
            wait(.05)
1046
			ShootMail(spinpart,50,2)
1047
			ShootMail(spinpart2,50,2)
1048
            wait(.05)
1049
            ShootMail(spinpart,50,2)
1050
			ShootMail(spinpart2,50,2)
1051
            wait(.05)
1052
            ShootMail(spinpart,50,2)
1053
			ShootMail(spinpart2,50,2)
1054
            wait(.05)
1055
            ShootMail(spinpart,50,2)
1056
			ShootMail(spinpart2,50,2)
1057
            wait(.05)
1058
			ShootMail(spinpart,50,2)
1059
			ShootMail(spinpart2,50,2)
1060
            wait(.05)
1061
            ShootMail(spinpart,50,2)
1062
			ShootMail(spinpart2,50,2)
1063
            wait(.05)
1064
            ShootMail(spinpart,50,2)
1065
			ShootMail(spinpart2,50,2)
1066
            wait(.05)
1067
            ShootMail(spinpart,50,2)
1068
			ShootMail(spinpart2,50,2)
1069
            wait(.05)
1070
       end))
1071
    end
1072
		spinpart:remove()
1073
		spinpart2:remove()
1074
		Swait(35)
1075
	end
1076
	ATTACK = false
1077
	Rooted = false
1078
end
1079
1080
function MailboxMadness2()
1081
	for i = 1, 15 do
1082
		chuck:Play()
1083
		local part = Instance.new("Part")
1084
		part.CFrame = RootPart.CFrame * CF(math.random(-35,35),0,math.random(-70,-35))
1085
		part.Orientation = RootPart.Orientation
1086
		part.CanCollide = false
1087
		part.Anchored = true
1088
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1089
		local spinpart = Instance.new("Part",Weapon)
1090
		spinpart.Anchored = true
1091
		spinpart.CanCollide = false
1092
		spinpart.Transparency = 1
1093
		spinpart.CFrame = part.CFrame
1094
		local spinpart2 = Instance.new("Part",Weapon)
1095
		spinpart2.Anchored = true
1096
		spinpart2.CanCollide = false
1097
		spinpart2.Transparency = 1
1098
		spinpart2.CFrame = part.CFrame
1099
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1100
		part:remove()
1101
		for i = 1, 15 do
1102
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1103
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
1104
			ShootMail(spinpart,50,2)
1105
			ShootMail(spinpart2,50,2)
1106
		end
1107
		spinpart:remove()
1108
		spinpart2:remove()
1109
		Swait(17)
1110
	end
1111
	ATTACK = false
1112
	Rooted = false
1113
end
1114
1115
function FinalInbox()
1116
1117
	local twist = 0
1118
	local twist2 = false
1119
	for i = 1, 5 do
1120
		local part = Instance.new("Part")
1121
		part.CFrame = RootPart.CFrame * CF(math.random(-35,35),0,math.random(-70,-35))
1122
		part.Orientation = RootPart.Orientation
1123
		part.CanCollide = false
1124
		part.Anchored = true
1125
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1126
		local spinpart = Instance.new("Part",Weapon)
1127
		spinpart.Anchored = true
1128
		spinpart.CanCollide = false
1129
		spinpart.Transparency = 1
1130
		spinpart.CFrame = part.CFrame
1131
		local spinpart2 = Instance.new("Part",Weapon)
1132
		spinpart2.Anchored = true
1133
		spinpart2.CanCollide = false
1134
		spinpart2.Transparency = 1
1135
		spinpart2.CFrame = part.CFrame
1136
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1137
		part:remove()
1138
		local spinpart3 = Instance.new("Part",Weapon)
1139
		spinpart3.Anchored = true
1140
		spinpart3.CanCollide = false
1141
		spinpart3.Transparency = 1
1142
		spinpart3.CFrame = RootPart.CFrame * CF(0,0,-50)
1143
		local spinpart4 = Instance.new("Part",Weapon)
1144
		spinpart4.Anchored = true
1145
		spinpart4.CanCollide = false
1146
		spinpart4.Transparency = 1
1147
		spinpart4.CFrame = RootPart.CFrame * CF(0,0,-50)
1148
		for i = 1, 30 do
1149
			chuck:Play()
1150
			spinpart3.CFrame = spinpart3.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1151
			spinpart4.CFrame = spinpart4.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1152
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1153
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1154
			ShootMail(spinpart,50,2)
1155
			ShootMail(spinpart2,-50,2)
1156
			ShootMail(spinpart3,100,1)
1157
			ShootMail(spinpart4,-100,1)
1158
			Swait(10)
1159
		end
1160
		spinpart:remove()
1161
		spinpart2:remove()
1162
		spinpart3:remove()
1163
		spinpart4:remove()
1164
	end
1165
	chuck:Play()
1166
	MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1167
	for i = 1, 2 do
1168
		twist = 10
1169
		local spinpart = Instance.new("Part",Weapon)
1170
		spinpart.Anchored = true
1171
		spinpart.CanCollide = false
1172
		spinpart.Transparency = 1
1173
		spinpart.CFrame = Opening.CFrame
1174
		local spinpart2 = Instance.new("Part",Weapon)
1175
		spinpart2.Anchored = true
1176
		spinpart2.CanCollide = false
1177
		spinpart2.Transparency = 1
1178
		spinpart2.CFrame = Opening.CFrame
1179
		local mail = ShootMail(Opening,25,20)
1180
		for i = 1, 50 do
1181
			chuck:Play()
1182
			MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1183
			twist = twist + 1
1184
			if twist2 == true then
1185
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1186
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
1187
			elseif twist2 == false then
1188
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
1189
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
1190
			end
1191
			if twist == 20 then
1192
				if twist2 == false then
1193
					twist2 = true
1194
				elseif twist2 == true then
1195
					twist2 = false
1196
				end
1197
				twist = 0
1198
			end
1199
			ShootMail(spinpart,125,1)
1200
			ShootMail(spinpart2,125,1)
1201
			local spinpart3 = Instance.new("Part",Weapon)
1202
			spinpart3.Anchored = true
1203
			spinpart3.CanCollide = false
1204
			spinpart3.Transparency = 1
1205
			spinpart3.CFrame = mail.CFrame
1206
			local spinpart4 = Instance.new("Part",Weapon)
1207
			spinpart4.Anchored = true
1208
			spinpart4.CanCollide = false
1209
			spinpart4.Transparency = 1
1210
			spinpart4.CFrame = mail.CFrame
1211
			spinpart3.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, twist, 0)
1212
			spinpart4.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, -twist, 0)
1213
			MagicSphere("Really black", "Neon", mail.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1214
			ShootMail(spinpart3,85,1)
1215
			ShootMail(spinpart4,85,1)
1216
			spinpart3:remove()
1217
			spinpart4:remove()
1218
			Swait(10)
1219
		end
1220
		spinpart:remove()
1221
		spinpart2:remove()
1222
		twist = 0
1223
		mail:remove()
1224
	end
1225
	for i = 1, 4 do
1226
		twist = 10
1227
		local spinpart = Instance.new("Part",Weapon)
1228
		spinpart.Anchored = true
1229
		spinpart.CanCollide = false
1230
		spinpart.Transparency = 1
1231
		spinpart.CFrame = Opening.CFrame
1232
		local spinpart2 = Instance.new("Part",Weapon)
1233
		spinpart2.Anchored = true
1234
		spinpart2.CanCollide = false
1235
		spinpart2.Transparency = 1
1236
		spinpart2.CFrame = Opening.CFrame
1237
		local spinpart5 = Instance.new("Part",Weapon)
1238
		spinpart5.Anchored = true
1239
		spinpart5.CanCollide = false
1240
		spinpart5.Transparency = 1
1241
		spinpart5.CFrame = RootPart.CFrame * CF(0,0,-50)
1242
		local spinpart6 = Instance.new("Part",Weapon)
1243
		spinpart6.Anchored = true
1244
		spinpart6.CanCollide = false
1245
		spinpart6.Transparency = 1
1246
		spinpart6.CFrame = RootPart.CFrame * CF(0,0,-50)
1247
		local mail = ShootMail(Opening,25,20)
1248
		for i = 1, 50 do
1249
			chuck:Play()
1250
			MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1251
			twist = twist + 1
1252
			spinpart5.CFrame = spinpart5.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.4, 0)
1253
			spinpart6.CFrame = spinpart6.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.4, 0)
1254
			if twist2 == true then
1255
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1256
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
1257
			elseif twist2 == false then
1258
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
1259
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
1260
			end
1261
			if twist == 20 then
1262
				if twist2 == false then
1263
					twist2 = true
1264
				elseif twist2 == true then
1265
					twist2 = false
1266
				end
1267
				twist = 0
1268
			end
1269
			ShootMail(spinpart,125,1)
1270
			ShootMail(spinpart2,125,1)
1271
			ShootMail(spinpart5,100,1)
1272
			ShootMail(spinpart6,-100,1)
1273
			local spinpart3 = Instance.new("Part",Weapon)
1274
			spinpart3.Anchored = true
1275
			spinpart3.CanCollide = false
1276
			spinpart3.Transparency = 1
1277
			spinpart3.CFrame = mail.CFrame
1278
			local spinpart4 = Instance.new("Part",Weapon)
1279
			spinpart4.Anchored = true
1280
			spinpart4.CanCollide = false
1281
			spinpart4.Transparency = 1
1282
			spinpart4.CFrame = mail.CFrame
1283
			spinpart3.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, twist, 0)
1284
			spinpart4.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, -twist, 0)
1285
			MagicSphere("Really black", "Neon", mail.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1286
			ShootMail(spinpart3,85,1)
1287
			ShootMail(spinpart4,85,1)
1288
			spinpart3:remove()
1289
			spinpart4:remove()
1290
			Swait(10)
1291
		end
1292
		spinpart:remove()
1293
		spinpart2:remove()
1294
		spinpart5:remove()
1295
		spinpart6:remove()
1296
		twist = 0
1297
		mail:remove()
1298
	end
1299
	ATTACK = false
1300
	Rooted = false
1301
end
1302
1303
function SonicMail()
1304
	local twist = 0
1305
	local twist2 = false
1306
for i = 1, 5 do
1307
		local part = Instance.new("Part")
1308
		part.CFrame = RootPart.CFrame * CF(math.random(-35,35),0,math.random(-70,-35))
1309
		part.Orientation = RootPart.Orientation
1310
		part.CanCollide = false
1311
		part.Anchored = true
1312
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1313
		local spinpart = Instance.new("Part",Weapon)
1314
		spinpart.Anchored = true
1315
		spinpart.CanCollide = false
1316
		spinpart.Transparency = 1
1317
		spinpart.CFrame = part.CFrame
1318
		local spinpart2 = Instance.new("Part",Weapon)
1319
		spinpart2.Anchored = true
1320
		spinpart2.CanCollide = false
1321
		spinpart2.Transparency = 1
1322
		spinpart2.CFrame = part.CFrame
1323
		MagicSphere("Really black", "Neon", part.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1324
		part:remove()
1325
		local spinpart3 = Instance.new("Part",Weapon)
1326
		spinpart3.Anchored = true
1327
		spinpart3.CanCollide = false
1328
		spinpart3.Transparency = 1
1329
		spinpart3.CFrame = RootPart.CFrame * CF(0,0,-50)
1330
		local spinpart4 = Instance.new("Part",Weapon)
1331
		spinpart4.Anchored = true
1332
		spinpart4.CanCollide = false
1333
		spinpart4.Transparency = 1
1334
		spinpart4.CFrame = RootPart.CFrame * CF(0,0,-50)
1335
		for i = 1, 30 do
1336
			chuck:Play()
1337
			spinpart3.CFrame = spinpart3.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1338
			spinpart4.CFrame = spinpart4.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1339
			spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1340
			spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1341
			ShootMail(spinpart,50,2)
1342
			ShootMail(spinpart2,-50,2)
1343
			ShootMail(spinpart3,100,1)
1344
			ShootMail(spinpart4,-100,1)
1345
			Swait(2)
1346
		end
1347
		spinpart:remove()
1348
		spinpart2:remove()
1349
		spinpart3:remove()
1350
		spinpart4:remove()
1351
	end
1352
	chuck:Play()
1353
	MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1354
	for i = 1, 2 do
1355
		twist = 10
1356
		local spinpart = Instance.new("Part",Weapon)
1357
		spinpart.Anchored = true
1358
		spinpart.CanCollide = false
1359
		spinpart.Transparency = 1
1360
		spinpart.CFrame = Opening.CFrame
1361
		local spinpart2 = Instance.new("Part",Weapon)
1362
		spinpart2.Anchored = true
1363
		spinpart2.CanCollide = false
1364
		spinpart2.Transparency = 1
1365
		spinpart2.CFrame = Opening.CFrame
1366
		local mail = ShootMail(Opening,25,20)
1367
		for i = 1, 50 do
1368
			chuck:Play()
1369
			MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1370
			twist = twist + 1
1371
			if twist2 == true then
1372
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1373
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
1374
			elseif twist2 == false then
1375
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
1376
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
1377
			end
1378
			if twist == 20 then
1379
				if twist2 == false then
1380
					twist2 = true
1381
				elseif twist2 == true then
1382
					twist2 = false
1383
				end
1384
				twist = 0
1385
			end
1386
			ShootMail(spinpart,125,1)
1387
			ShootMail(spinpart2,125,1)
1388
			local spinpart3 = Instance.new("Part",Weapon)
1389
			spinpart3.Anchored = true
1390
			spinpart3.CanCollide = false
1391
			spinpart3.Transparency = 1
1392
			spinpart3.CFrame = mail.CFrame
1393
			local spinpart4 = Instance.new("Part",Weapon)
1394
			spinpart4.Anchored = true
1395
			spinpart4.CanCollide = false
1396
			spinpart4.Transparency = 1
1397
			spinpart4.CFrame = mail.CFrame
1398
			spinpart3.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, twist, 0)
1399
			spinpart4.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, -twist, 0)
1400
			MagicSphere("Really black", "Neon", mail.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1401
			ShootMail(spinpart3,85,1)
1402
			ShootMail(spinpart4,85,1)
1403
			spinpart3:remove()
1404
			spinpart4:remove()
1405
			Swait(2)
1406
		end
1407
		spinpart:remove()
1408
		spinpart2:remove()
1409
		twist = 0
1410
		mail:remove()
1411
	end
1412
	for i = 1, 4 do
1413
		twist = 10
1414
		local spinpart = Instance.new("Part",Weapon)
1415
		spinpart.Anchored = true
1416
		spinpart.CanCollide = false
1417
		spinpart.Transparency = 1
1418
		spinpart.CFrame = Opening.CFrame
1419
		local spinpart2 = Instance.new("Part",Weapon)
1420
		spinpart2.Anchored = true
1421
		spinpart2.CanCollide = false
1422
		spinpart2.Transparency = 1
1423
		spinpart2.CFrame = Opening.CFrame
1424
		local spinpart5 = Instance.new("Part",Weapon)
1425
		spinpart5.Anchored = true
1426
		spinpart5.CanCollide = false
1427
		spinpart5.Transparency = 1
1428
		spinpart5.CFrame = RootPart.CFrame * CF(0,0,-50)
1429
		local spinpart6 = Instance.new("Part",Weapon)
1430
		spinpart6.Anchored = true
1431
		spinpart6.CanCollide = false
1432
		spinpart6.Transparency = 1
1433
		spinpart6.CFrame = RootPart.CFrame * CF(0,0,-50)
1434
		local mail = ShootMail(Opening,25,20)
1435
		for i = 1, 50 do
1436
			chuck:Play()
1437
			MagicSphere("Really black", "Neon", Opening.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1438
			twist = twist + 1
1439
			spinpart5.CFrame = spinpart5.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.4, 0)
1440
			spinpart6.CFrame = spinpart6.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.4, 0)
1441
			if twist2 == true then
1442
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.2, 0)
1443
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, 0.1, 0)
1444
			elseif twist2 == false then
1445
				spinpart.CFrame = spinpart.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.2, 0)
1446
				spinpart2.CFrame = spinpart2.CFrame * CFrame.fromEulerAnglesXYZ(0, -0.1, 0)
1447
			end
1448
			if twist == 20 then
1449
				if twist2 == false then
1450
					twist2 = true
1451
				elseif twist2 == true then
1452
					twist2 = false
1453
				end
1454
				twist = 0
1455
			end
1456
			ShootMail(spinpart,125,1)
1457
			ShootMail(spinpart2,125,1)
1458
			ShootMail(spinpart5,100,1)
1459
			ShootMail(spinpart6,-100,1)
1460
			local spinpart3 = Instance.new("Part",Weapon)
1461
			spinpart3.Anchored = true
1462
			spinpart3.CanCollide = false
1463
			spinpart3.Transparency = 1
1464
			spinpart3.CFrame = mail.CFrame
1465
			local spinpart4 = Instance.new("Part",Weapon)
1466
			spinpart4.Anchored = true
1467
			spinpart4.CanCollide = false
1468
			spinpart4.Transparency = 1
1469
			spinpart4.CFrame = mail.CFrame
1470
			spinpart3.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, twist, 0)
1471
			spinpart4.CFrame = mail.CFrame * CFrame.fromEulerAnglesXYZ(0, -twist, 0)
1472
			MagicSphere("Really black", "Neon", mail.CFrame, CF(0,0,0), VT(0,0,0), 50, 50, 50, -0.1, -0.1, -0.1, 0.02)
1473
			ShootMail(spinpart3,85,1)
1474
			ShootMail(spinpart4,85,1)
1475
			spinpart3:remove()
1476
			spinpart4:remove()
1477
			Swait(2)
1478
		end
1479
		spinpart:remove()
1480
		spinpart2:remove()
1481
		spinpart5:remove()
1482
		spinpart6:remove()
1483
		twist = 0
1484
		mail:remove()
1485
	end
1486
	ATTACK = false
1487
	Rooted = false
1488
end
1489
--//=================================\\
1490
--||	  ASSIGN THINGS TO KEYS
1491
--\\=================================//
1492
1493
Humanoid.Changed:connect(function(Jump)
1494
	if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
1495
		Humanoid.Jump = false
1496
	end
1497
end)
1498
1499
--//=================================\\
1500
--\\=================================//
1501
1502
1503
function unanchor()
1504
	if UNANCHOR == true then
1505
		g = Character:GetChildren()
1506
		for i = 1, #g do
1507
			if g[i].ClassName == "Part" then
1508
				g[i].Anchored = false
1509
			end
1510
		end
1511
	end
1512
end
1513
1514
1515
--//=================================\\
1516
--||	WRAP THE WHOLE SCRIPT UP
1517
--\\=================================//
1518
1519
Humanoid.Changed:connect(function(Jump)
1520
	if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
1521
		Humanoid.Jump = false
1522
	end
1523
end)
1524
1525
		ANIMATE.Parent = nil
1526
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1527
		IDLEANIMATION:Play()
1528
		Swait()
1529
		ANIMATOR.Parent = nil
1530
		Disable_Jump = true
1531
1532
while true do
1533
	Swait()
1534
	SINE = SINE + CHANGE
1535
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1536
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1537
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1538
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1539
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1540
		if ANIM == "Walk" and TORSOVELOCITY > 1 then
1541
			RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1542
			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)
1543
			RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1544
			LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1545
		elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1546
			RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1547
			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)
1548
			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)
1549
			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)
1550
		end
1551
		if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1552
			ANIM = "Jump"
1553
			if ATTACK == false then
1554
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1555
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1556
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1557
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1558
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1559
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1560
	        end
1561
		elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1562
			ANIM = "Fall"
1563
			if ATTACK == false then
1564
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1565
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1566
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1567
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1568
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1569
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1570
			end
1571
		elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1572
			ANIM = "Idle"
1573
			if ATTACK == false then
1574
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, -0 * Player_Size, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
1575
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
1576
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1577
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1578
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size -0.25, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1579
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.25, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1580
			end
1581
		elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1582
			ANIM = "Walk"
1583
			WALK = WALK + 1 / Animation_Speed
1584
			if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
1585
				WALK = 0
1586
				if WALKINGANIM == true then
1587
					WALKINGANIM = false
1588
				elseif WALKINGANIM == false then
1589
					WALKINGANIM = true
1590
				end
1591
			end
1592
			--RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1593
			--LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1594
			if ATTACK == false then
1595
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
1596
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
1597
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1598
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1599
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1600
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1601
			end
1602
		end
1603
if #Effects2>0 then
1604
for e=1,#Effects2 do
1605
if Effects2[e]~=nil then
1606
local Thing=Effects2[e]
1607
if Thing~=nil then
1608
local Part=Thing[1]
1609
local Mode=Thing[2]
1610
local Delay=Thing[3]
1611
local IncX=Thing[4]
1612
local IncY=Thing[5]
1613
local IncZ=Thing[6]
1614
local Part2=Thing[8]
1615
if Thing[1].Transparency<=1 then
1616
if Thing[2]=="Block1" then
1617
Thing[1].CFrame=Part2.CFrame
1618
Mesh=Thing[1].Mesh
1619
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1620
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1621
elseif Thing[2]=="Cylinder" then
1622
Mesh=Thing[1].Mesh
1623
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1624
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1625
elseif Thing[2]=="Blood" then
1626
Mesh=Thing[7]
1627
Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
1628
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1629
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1630
elseif Thing[2]=="Elec" then
1631
Mesh=Thing[1].Mesh
1632
Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
1633
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1634
elseif Thing[2]=="Disappear" then
1635
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1636
end
1637
else
1638
Part.Parent=nil
1639
table.remove(Effects2,e)
1640
end
1641
end
1642
end
1643
end
1644
end
1645
unanchor()
1646
Humanoid.MaxHealth = "inf"
1647
Humanoid.Health = "inf"
1648
if Rooted == false then
1649
	--Disable_Jump = false
1650
	Humanoid.WalkSpeed = Speed
1651
elseif Rooted == true then
1652
	Disable_Jump = true
1653
	Humanoid.WalkSpeed = 0
1654
end
1655
--print(TORSOVELOCITY)
1656
end
1657
1658
--//=================================\\
1659
--\\=================================//
1660
1661
1662
1663
1664
1665
--//====================================================\\--
1666
--||			  		 END OF SCRIPT
1667
--\\====================================================//--