View difference between Paste ID: 7GHzTkcE and Xi002z0Y
SHOW: | | - or go back to the newest paste.
1-
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
1+
2
--||			   CREATED BY SHACKLUSTER
3
--\\====================================================//--
4
5
wait(0.2)if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
6
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
7
do
8
	print("FE Compatibility code by Mokiros")
9
	script.Parent = Player.Character
10
11
	--RemoteEvent for communicating
12
	local Event = Instance.new("RemoteEvent")
13
	Event.Name = "UserInput_Event"
14
15
	--Fake event to make stuff like Mouse.KeyDown work
16
	local function fakeEvent()
17
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
18
		t.connect = t.Connect
19
		return t
20
	end
21
22
	--Creating fake input objects with fake variables
23
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
24
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
25
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
26
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
27
	end}
28
	--Merged 2 functions into one by checking amount of arguments
29
	CAS.UnbindAction = CAS.BindAction
30
31
	--This function will trigger the events that have been :Connect()'ed
32
	local function te(self,ev,...)
33
		local t = m[ev]
34
		if t and t._fakeEvent and t.Function then
35
			t.Function(...)
36
		end
37
	end
38
	m.TrigEvent = te
39
	UIS.TrigEvent = te
40
41
	Event.OnServerEvent:Connect(function(plr,io)
42
	    if plr~=Player then return end
43
		if io.isMouse then
44
			m.Target = io.Target
45
			m.Hit = io.Hit
46
		else
47
			local b = io.UserInputState == Enum.UserInputState.Begin
48
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
49
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
50
			end
51
			for _,t in pairs(CAS.Actions) do
52
				for _,k in pairs(t.Keys) do
53
					if k==io.KeyCode then
54
						t.Function(t.Name,io.UserInputState,io)
55
					end
56
				end
57
			end
58
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
59
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
60
	    end
61
	end)
62
	Event.Parent = NLS([==[
63
	local Player = game:GetService("Players").LocalPlayer
64
	local Event = script:WaitForChild("UserInput_Event")
65
66
	local UIS = game:GetService("UserInputService")
67
	local input = function(io,a)
68
		if a then return end
69
		--Since InputObject is a client-side instance, we create and pass table instead
70
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
71
	end
72
	UIS.InputBegan:Connect(input)
73
	UIS.InputEnded:Connect(input)
74
75
	local Mouse = Player:GetMouse()
76
	local h,t
77
	--Give the server mouse data 30 times every second, but only if the values changed
78
	--If player is not moving their mouse, client won't fire events
79
	while wait(1/30) do
80
		if h~=Mouse.Hit or t~=Mouse.Target then
81
			h,t=Mouse.Hit,Mouse.Target
82
			Event:FireServer({isMouse=true,Target=t,Hit=h})
83
		end
84
	end]==],Player.Character)
85
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
86
end
87
88
Player = owner
89
PlayerGui = Player.PlayerGui
90
Cam = workspace.CurrentCamera
91
Backpack = Player.Backpack
92
Character = Player.Character
93
Humanoid = Character.Humanoid
94
RootPart = Character["HumanoidRootPart"]
95
Torso = Character["Torso"]
96
Head = Character["Head"]
97
RightArm = Character["Right Arm"]
98
LeftArm = Character["Left Arm"]
99
RightLeg = Character["Right Leg"]
100
LeftLeg = Character["Left Leg"]
101
RootJoint = RootPart["RootJoint"]
102
Neck = Torso["Neck"]
103
RightShoulder = Torso["Right Shoulder"]
104-
sick.SoundId = "rbxassetid://1130685064"
104+
105
RightHip = Torso["Right Hip"]
106
LeftHip = Torso["Left Hip"]
107
local sick = Instance.new("Sound",Character)
108
sick.SoundId = "rbxassetid://343860759"
109
sick.Looped = true
110
sick.Pitch = 1
111
sick.Volume = 1
112
sick:Play()
113
114
IT = Instance.new
115
CF = CFrame.new
116
VT = Vector3.new
117
RAD = math.rad
118
C3 = Color3.new
119
UD2 = UDim2.new
120
BRICKC = BrickColor.new
121
ANGLES = CFrame.Angles
122
EULER = CFrame.fromEulerAnglesXYZ
123
COS = math.cos
124
ACOS = math.acos
125
SIN = math.sin
126
ASIN = math.asin
127
ABS = math.abs
128
MRANDOM = math.random
129
FLOOR = math.floor
130
131
--//=================================\\
132-
local SIZE = 1
132+
133
--\\=================================//
134
135-
local Speed = 20
135+
136
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
137
local Speed = 25
138
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
139
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
140
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
141
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
142
local DAMAGEMULTIPLIER = 1
143
local ANIM = "Idle"
144
local ATTACK = false
145
local EQUIPPED = false
146
local HOLD = false
147
local COMBO = 1
148
local Rooted = false
149
local SINE = 0
150
local KEYHOLD = false
151
local CHANGE = 2 / Animation_Speed
152
local WALKINGANIM = false
153
local VALUE1 = false
154
local VALUE2 = false
155
local ROBLOXIDLEANIMATION = IT("Animation")
156
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
157
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
158
--ROBLOXIDLEANIMATION.Parent = Humanoid
159
local WEAPONGUI = IT("ScreenGui", PlayerGui)
160
WEAPONGUI.Name = "Weapon GUI"
161
local Effects = IT("Folder", Character)
162
Effects.Name = "Effects"
163
local ANIMATOR = Humanoid.Animator
164
local ANIMATE = Character.Animate
165
local UNANCHOR = true
166
local PLAYMAINANIM = true
167
local BOLTSOUNDS = {168586621,168586586,178452241}
168
169
--//=================================\\
170
--\\=================================//
171
172
173
--//=================================\\
174
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
175
--\\=================================//
176
177
ArtificialHB = Instance.new("BindableEvent", script)
178
ArtificialHB.Name = "ArtificialHB"
179
180
script:WaitForChild("ArtificialHB")
181
182
frame = Frame_Speed
183
tf = 0
184
allowframeloss = false
185
tossremainder = false
186
lastframe = tick()
187
script.ArtificialHB:Fire()
188
189
game:GetService("RunService").Heartbeat:connect(function(s, p)
190
	tf = tf + s
191
	if tf >= frame then
192
		if allowframeloss then
193
			script.ArtificialHB:Fire()
194
			lastframe = tick()
195
		else
196
			for i = 1, math.floor(tf / frame) do
197
				script.ArtificialHB:Fire()
198
			end
199
		lastframe = tick()
200
		end
201
		if tossremainder then
202
			tf = 0
203
		else
204
			tf = tf - frame * math.floor(tf / frame)
205
		end
206
	end
207
end)
208
209
--//=================================\\
210
--\\=================================//
211
212
--//=================================\\
213
--|| 	      SOME FUNCTIONS
214
--\\=================================//
215
216
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
217
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
218
end
219
220
function PositiveAngle(NUMBER)
221
	if NUMBER >= 0 then
222
		NUMBER = 0
223
	end
224
	return NUMBER
225
end
226
227
function NegativeAngle(NUMBER)
228
	if NUMBER <= 0 then
229
		NUMBER = 0
230
	end
231
	return NUMBER
232
end
233
234
function Swait(NUMBER)
235
	if NUMBER == 0 or NUMBER == nil then
236
		ArtificialHB.Event:wait()
237
	else
238
		for i = 1, NUMBER do
239
			ArtificialHB.Event:wait()
240
		end
241
	end
242
end
243
244
function ApplyDamage(Humanoid,Damage)
245
    Damage = Damage * DAMAGEMULTIPLIER
246
    if Humanoid.Health ~= 0 then
247
        Humanoid.Health = Humanoid.Health - Damage
248
    end
249
end
250
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
251
	local NEWMESH = IT(MESH)
252
	if MESH == "SpecialMesh" then
253
		NEWMESH.MeshType = MESHTYPE
254
		if MESHID ~= "nil" and MESHID ~= "" then
255
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
256
		end
257
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
258
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
259
		end
260
	end
261
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
262
	NEWMESH.Scale = SCALE
263
	NEWMESH.Parent = PARENT
264
	return NEWMESH
265
end
266
267
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
268
	local NEWPART = IT("Part")
269
	NEWPART.formFactor = FORMFACTOR
270
	NEWPART.Reflectance = REFLECTANCE
271
	NEWPART.Transparency = TRANSPARENCY
272
	NEWPART.CanCollide = false
273
	NEWPART.Locked = true
274
	NEWPART.Anchored = true
275
	if ANCHOR == false then
276
		NEWPART.Anchored = false
277
	end
278
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
279
	NEWPART.Name = NAME
280
	NEWPART.Size = SIZE
281
	NEWPART.Position = Torso.Position
282
	NEWPART.Material = MATERIAL
283
	NEWPART:BreakJoints()
284
	NEWPART.Parent = PARENT
285
	return NEWPART
286
end
287
288
	local function weldBetween(a, b)
289
	    local weldd = Instance.new("ManualWeld")
290
	    weldd.Part0 = a
291
	    weldd.Part1 = b
292
	    weldd.C0 = CFrame.new()
293
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
294
	    weldd.Parent = a
295
	    return weldd
296
	end
297
298
299
function QuaternionFromCFrame(cf)
300
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
301
	local trace = m00 + m11 + m22
302
	if trace > 0 then 
303
		local s = math.sqrt(1 + trace)
304
		local recip = 0.5 / s
305
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
306
	else
307
		local i = 0
308
		if m11 > m00 then
309
			i = 1
310
		end
311
		if m22 > (i == 0 and m00 or m11) then
312
			i = 2
313
		end
314
		if i == 0 then
315
			local s = math.sqrt(m00 - m11 - m22 + 1)
316
			local recip = 0.5 / s
317
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
318
		elseif i == 1 then
319
			local s = math.sqrt(m11 - m22 - m00 + 1)
320
			local recip = 0.5 / s
321
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
322
		elseif i == 2 then
323
			local s = math.sqrt(m22 - m00 - m11 + 1)
324
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
325
		end
326
	end
327
end
328
 
329
function QuaternionToCFrame(px, py, pz, x, y, z, w)
330
	local xs, ys, zs = x + x, y + y, z + z
331
	local wx, wy, wz = w * xs, w * ys, w * zs
332
	local xx = x * xs
333
	local xy = x * ys
334
	local xz = x * zs
335
	local yy = y * ys
336
	local yz = y * zs
337
	local zz = z * zs
338
	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))
339
end
340
 
341
function QuaternionSlerp(a, b, t)
342
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
343
	local startInterp, finishInterp;
344
	if cosTheta >= 0.0001 then
345
		if (1 - cosTheta) > 0.0001 then
346
			local theta = ACOS(cosTheta)
347
			local invSinTheta = 1 / SIN(theta)
348
			startInterp = SIN((1 - t) * theta) * invSinTheta
349
			finishInterp = SIN(t * theta) * invSinTheta
350
		else
351
			startInterp = 1 - t
352
			finishInterp = t
353
		end
354
	else
355
		if (1 + cosTheta) > 0.0001 then
356
			local theta = ACOS(-cosTheta)
357
			local invSinTheta = 1 / SIN(theta)
358
			startInterp = SIN((t - 1) * theta) * invSinTheta
359
			finishInterp = SIN(t * theta) * invSinTheta
360
		else
361
			startInterp = t - 1
362
			finishInterp = t
363
		end
364
	end
365
	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
366
end
367
368
function Clerp(a, b, t)
369
	local qa = {QuaternionFromCFrame(a)}
370
	local qb = {QuaternionFromCFrame(b)}
371
	local ax, ay, az = a.x, a.y, a.z
372
	local bx, by, bz = b.x, b.y, b.z
373
	local _t = 1 - t
374
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
375
end
376
377
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
378
	local frame = IT("Frame")
379
	frame.BackgroundTransparency = TRANSPARENCY
380
	frame.BorderSizePixel = BORDERSIZEPIXEL
381
	frame.Position = POSITION
382
	frame.Size = SIZE
383
	frame.BackgroundColor3 = COLOR
384
	frame.BorderColor3 = BORDERCOLOR
385
	frame.Name = NAME
386
	frame.Parent = PARENT
387
	return frame
388
end
389
390
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
391
	local label = IT("TextLabel")
392
	label.BackgroundTransparency = 1
393
	label.Size = UD2(1, 0, 1, 0)
394
	label.Position = UD2(0, 0, 0, 0)
395
	label.TextColor3 = TEXTCOLOR
396
	label.TextStrokeTransparency = STROKETRANSPARENCY
397
	label.TextTransparency = TRANSPARENCY
398
	label.FontSize = TEXTFONTSIZE
399
	label.Font = TEXTFONT
400
	label.BorderSizePixel = BORDERSIZEPIXEL
401
	label.TextScaled = false
402
	label.Text = TEXT
403
	label.Name = NAME
404
	label.Parent = PARENT
405
	return label
406
end
407
408
function NoOutlines(PART)
409
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
410
end
411
412
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
413
	local NEWWELD = IT(TYPE)
414
	NEWWELD.Part0 = PART0
415
	NEWWELD.Part1 = PART1
416
	NEWWELD.C0 = C0
417
	NEWWELD.C1 = C1
418
	NEWWELD.Parent = PARENT
419
	return NEWWELD
420
end
421
422
local S = IT("Sound")
423
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
424
	local NEWSOUND = nil
425
	coroutine.resume(coroutine.create(function()
426
		NEWSOUND = S:Clone()
427
		NEWSOUND.Parent = PARENT
428
		NEWSOUND.Volume = VOLUME
429
		NEWSOUND.Pitch = PITCH
430
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
431
		NEWSOUND:play()
432
		if DOESLOOP == true then
433
			NEWSOUND.Looped = true
434
		else
435
			repeat wait(1) until NEWSOUND.Playing == false
436
			NEWSOUND:remove()
437
		end
438
	end))
439
	return NEWSOUND
440
end
441
442
local EyeSizes={
443
	NumberSequenceKeypoint.new(0,2,0),
444
	NumberSequenceKeypoint.new(1,0,0)
445-
PE.Color = ColorSequence.new(BRICKC("Dirt brown").Color,BRICKC("Dirt brown").Color)
445+
446
local EyeTrans={
447
	NumberSequenceKeypoint.new(0,0.5,0),
448
	NumberSequenceKeypoint.new(1,1,0)
449
}
450
local PE=Instance.new("ParticleEmitter",nil)
451
PE.LightEmission=.8
452
PE.Color = ColorSequence.new(BRICKC("Crimson").Color,BRICKC("Really blue").Color)
453
PE.Size=NumberSequence.new(EyeSizes)
454
PE.Transparency=NumberSequence.new(EyeTrans)
455
PE.Lifetime=NumberRange.new(0.35,1)
456
PE.Rotation=NumberRange.new(0,360)
457
PE.Rate=100
458
PE.VelocitySpread = 10000
459
PE.Acceleration = Vector3.new(0,85,0)
460
PE.Drag = 5
461
PE.Speed = NumberRange.new(0.1,5)
462
PE.Texture="http://www.roblox.com/asset/?id=1460745664"
463
PE.ZOffset = 0.5
464
PE.Name = "PE"
465
PE.Enabled = false
466
467
function Fire(art)
468
	local PARTICLES = PE:Clone()
469
	PARTICLES.Parent = art
470
	PARTICLES.Enabled = true
471
	return PARTICLES
472
end
473
474
function CFrameFromTopBack(at, top, back)
475
	local right = top:Cross(back)
476
	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)
477
end
478
479
--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})
480
function WACKYEFFECT(Table)
481
	local TYPE = (Table.EffectType or "Sphere")
482
	local SIZE = (Table.Size or VT(1,1,1))
483
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
484
	local TRANSPARENCY = (Table.Transparency or 0)
485
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
486
	local CFRAME = (Table.CFrame or Torso.CFrame)
487
	local MOVEDIRECTION = (Table.MoveToPos or nil)
488
	local ROTATION1 = (Table.RotationX or 0)
489
	local ROTATION2 = (Table.RotationY or 0)
490
	local ROTATION3 = (Table.RotationZ or 0)
491
	local MATERIAL = (Table.Material or "Neon")
492
	local COLOR = (Table.Color or C3(1,1,1))
493
	local TIME = (Table.Time or 45)
494
	local SOUNDID = (Table.SoundID or nil)
495
	local SOUNDPITCH = (Table.SoundPitch or nil)
496
	local SOUNDVOLUME = (Table.SoundVolume or nil)
497
	coroutine.resume(coroutine.create(function()
498
		local PLAYSSOUND = false
499
		local SOUND = nil
500
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Crimson"), "Effect", VT(1,1,1), true)
501
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
502
			PLAYSSOUND = true
503
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
504
		end
505
		EFFECT.Color = COLOR
506
		local MSH = nil
507
		if TYPE == "Sphere" then
508
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
509
		elseif TYPE == "Block" or TYPE == "Box" then
510
			MSH = IT("BlockMesh",EFFECT)
511
			MSH.Scale = SIZE
512
		elseif TYPE == "Wave" then
513
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
514
		elseif TYPE == "Ring" then
515
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
516
		elseif TYPE == "Slash" then
517
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
518
		elseif TYPE == "Round Slash" then
519
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
520
		elseif TYPE == "Swirl" then
521
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
522
		elseif TYPE == "Skull" then
523
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
524
		elseif TYPE == "Crystal" then
525
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
526
		end
527
		if MSH ~= nil then
528
			local MOVESPEED = nil
529
			if MOVEDIRECTION ~= nil then
530
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
531
			end
532
			local GROWTH = SIZE - ENDSIZE
533
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
534
			if TYPE == "Block" then
535
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
536
			else
537
				EFFECT.CFrame = CFRAME
538
			end
539
			for LOOP = 1, TIME+1 do
540
				Swait()
541
				MSH.Scale = MSH.Scale - GROWTH/TIME
542
				if TYPE == "Wave" then
543
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
544
				end
545
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
546
				if TYPE == "Block" then
547
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
548
				else
549
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
550
				end
551
				if MOVEDIRECTION ~= nil then
552
					local ORI = EFFECT.Orientation
553
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
554
					EFFECT.Orientation = ORI
555
				end
556
			end
557
			if PLAYSSOUND == false then
558
				EFFECT:remove()
559
			else
560
				repeat wait(1) until SOUND.Playing == false
561
				EFFECT:remove()
562
			end
563
		else
564
			if PLAYSSOUND == false then
565
				EFFECT:remove()
566
			else
567
				repeat Swait() until SOUND.Playing == false
568
				EFFECT:remove()
569
			end
570
		end
571
	end))
572
end
573
574
function MakeForm(PART,TYPE)
575
	if TYPE == "Cyl" then
576
		local MSH = IT("CylinderMesh",PART)
577
	elseif TYPE == "Ball" then
578
		local MSH = IT("SpecialMesh",PART)
579
		MSH.MeshType = "Sphere"
580
	elseif TYPE == "Wedge" then
581
		local MSH = IT("SpecialMesh",PART)
582
		MSH.MeshType = "Wedge"
583
	end
584
end
585
586
Debris = game:GetService("Debris")
587
588
function CastProperRay(StartPos, EndPos, Distance, Ignore)
589
	local DIRECTION = CF(StartPos,EndPos).lookVector
590
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
591
end
592
593-
				---WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Dirt brown".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
593+
594
function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
595
	PLAYMAINANIM = false
596
	if WhichPose == "Cast1" then
597
		for i=0, Time, 0.1 / Animation_Speed do
598
			Swait()
599
			if Magic == true then
600
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
601
			end
602
			if Gyro ~= nil and Gyro ~= false then
603
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
604
			end
605
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
606
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
607
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
608
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
609-
				---WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
609+
610-
				---WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
610+
611
		end
612
	elseif WhichPose == "Cast2" then
613
		for i=0, Time, 0.1 / Animation_Speed do
614
			Swait()
615
			if Magic == true then
616
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
617
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
618
			end
619
			if Gyro ~= nil and Gyro ~= false then
620
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
621
			end
622
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
623
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
624
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
625
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
626-
				---WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
626+
627
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
628
		end
629
	elseif WhichPose == "RightArmUp" then
630
		for i=0, Time, 0.1 / Animation_Speed do
631
			Swait()
632
			if Magic == true then
633
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
634
			end
635
			if Gyro ~= nil and Gyro ~= false then
636
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
637
			end
638
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
639-
	 for i=0, Time, 0.1 / Animation_Speed do
639+
640-
            Swait()
640+
641-
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
641+
642-
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
642+
643-
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5*SIZE) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
643+
644-
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5*SIZE) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
644+
645-
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
645+
646-
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
646+
647-
        end
647+
648-
        HATWELD.Part0 = RightArm
648+
649-
        HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
649+
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
650-
        CreateSound(221057812,Torso,10,1,false)
650+
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
651-
        for i=0, Time*2, 0.1 / Animation_Speed do
651+
652-
            Swait()
652+
653-
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
653+
654-
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
654+
655-
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5*SIZE) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
655+
		HATWELD.Part0 = RightArm
656-
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5*SIZE) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
656+
		HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
657-
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
657+
		CreateSound(221057812,Torso,10,1,false)
658-
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
658+
		for i=0, Time*2, 0.1 / Animation_Speed do
659-
        end
659+
660-
        for i=0, Time, 0.1 / Animation_Speed do
660+
661-
            Swait()
661+
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
662-
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
662+
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
663-
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
663+
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
664-
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, -0.5*SIZE) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
664+
665-
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5*SIZE) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
665+
666-
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
666+
667-
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
667+
668-
            HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
668+
669-
        end
669+
670-
        HATWELD.Part0 = Head
670+
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
671-
        HATWELD.C0 = CF(0,0.35,0)
671+
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
672
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
673
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
674
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
675
			HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
676
		end
677
		HATWELD.Part0 = Head
678
		HATWELD.C0 = CF(0,0.35,0)
679
	elseif WhichPose == "Prepare key" then
680
		for i=0, Time, 0.1 / Animation_Speed do
681
			Swait()
682
			if Gyro ~= nil and Gyro ~= false then
683
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
684
			end
685
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
686
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
687
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
688
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
689
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
690
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
691
		end
692
	elseif WhichPose == "Turn key" then
693
		for i=0, Time, 0.1 / Animation_Speed do
694
			Swait()
695
			if Gyro ~= nil and Gyro ~= false then
696
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
697
			end
698
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
699
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
700
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
701
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
702
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
703
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
704
		end
705
	end
706
	PLAYMAINANIM = true
707
end
708
709
--Lightning({Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false})
710
function Lightning(Table)
711
	local Color = Table.Color or C3(1,1,1)
712
	local StartPos = Table.Start or Torso.Position
713
	local EndPos = Table.End or Mouse.Hit.p
714
	local SegmentLength = Table.SegmentL or 2
715
	local Thickness = Table.Thickness or 0.1
716
	local Dissapear = Table.DoesFade or false
717
	local Parent = Table.Ignore or Character
718
	local MaxDist = Table.MaxDist or 400
719
	local Branches = Table.Branches or false
720
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
721
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
722
	local LIGHTNINGMODEL = IT("Model",Effects)
723
	LIGHTNINGMODEL.Name = "Lightning"
724
	local LastBolt = nil
725
	for E = 1, DISTANCE do
726
		local ExtraSize = (DISTANCE-E)/15
727
		local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Crimson"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
728
		PART.Color = Color
729
		MakeForm(PART,"Cyl")
730
		if LastBolt == nil then
731
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
732
		else
733
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
734
		end
735
		LastBolt = PART
736
		if Branches == true then
737
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
738
			if CHOICE == 1 then
739
				local LASTBRANCH = nil
740
				for i = 1, MRANDOM(2,5) do
741
					local ExtraSize2 = ((DISTANCE-E)/25)/i
742
					local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Crimson"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
743
					PART.Color = Color
744
					MakeForm(PART,"Cyl")
745
					if LASTBRANCH == nil then
746
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
747
					else
748
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
749
					end
750
					LASTBRANCH = PART
751
				end
752
			end
753
		end
754
	end
755
	if Dissapear == true then
756
		coroutine.resume(coroutine.create(function()
757
			for i = 1, 10 do
758
				Swait()
759
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
760
					if c.ClassName == "Part" then
761
						c.Transparency = i/10
762
					end
763
				end
764
			end
765
			LIGHTNINGMODEL:remove()
766-
local Create = LoadLibrary("RbxUtility").Create
766+
767
	elseif Dissapear == false then
768-
local chara = Character
768+
769-
local m = Create("Model"){
769+
770-
    Parent = Character,
770+
771-
    Name = "WeaponModel",
771+
772
773-
function chat(...)
773+
774-
    local txxt = {...}
774+
775-
    local ch = coroutine.wrap(function()
775+
776-
        if chara:FindFirstChild("Chatt")~= nil then
776+
777-
            Character:FindFirstChild("Chatt"):destroy()
777+
778-
        end
778+
779
	FACE.Color = C3(0,0,0)
780-
        local txt = Instance.new("BillboardGui", chara)
780+
781-
        txt.Adornee = chara.Head
781+
782-
        txt.Name = "Chatt"
782+
783-
        txt.Size = UDim2.new(2, 0, 1.2, 0)
783+
784-
        txt.StudsOffset = Vector3.new(-9, 7, 0)
784+
785-
        local text = Instance.new("TextLabel", txt)
785+
786-
        text.Size = UDim2.new(10, 0, 7, 0)
786+
787-
        text.TextSize = 33
787+
788-
        text.Font = Enum.Font.Antique
788+
789-
        text.TextScaled = false
789+
790-
        text.BackgroundTransparency = 1
790+
791-
        text.TextColor3 = Color3.new(1,1,1)
791+
792-
        text.TextStrokeTransparency = 0
792+
793-
        text.TextStrokeColor3 = Color3.fromRGB(81, 69, 69)
793+
794-
        text.Text = ""
794+
795-
        txxt = table.concat(txxt,"\t")
795+
796-
        for i = 1, #txxt do
796+
797-
            text.Text = txxt:sub(1,i)
797+
798-
           
798+
799-
        end
799+
800-
        wait(2)
800+
801-
        for trans = 0,1,00.1 do
801+
802-
            text.TextTransparency = trans
802+
803-
            text.TextStrokeTransparency = trans
803+
804-
            wait()
804+
805-
        end
805+
806-
        wait()
806+
807-
        txt:destroy()
807+
808-
    end)
808+
809-
   
809+
810-
    ch(...)
810+
811
MakeForm(BELT,"Cyl")
812-
Player.Chatted:connect(chat)
812+
813
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
814
BELT.Color = C3(15/255,15/255,15/255)
815
MakeForm(BELT,"Cyl")
816
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.7,0), CF(0, 0, 0))
817
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
818
BELT.Color = C3(15/255,15/255,15/255)
819
MakeForm(BELT,"Cyl")
820
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0.35,0), CF(0, 0, 0))
821
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
822
BELT.Color = C3(15/255,15/255,15/255)
823
MakeForm(BELT,"Cyl")
824
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.35,0), CF(0, 0, 0))
825
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.3,0.5,1.3),false)
826
MakeForm(BELT,"Ball")
827
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,HAT2.Size.Y/2,0), CF(0, 0, 0))
828
Humanoid.DisplayDistanceType = "None"
829
local naeeym2 = IT("BillboardGui",Character)
830
naeeym2.AlwaysOnTop = true
831
naeeym2.Size = UDim2.new(5,35,2,15)
832
naeeym2.StudsOffset = Vector3.new(0,3,0)
833
naeeym2.MaxDistance = 75
834
naeeym2.Adornee = Character.Head
835
naeeym2.Name = "Name"
836
naeeym2.PlayerToHideFrom = Player
837
local tecks2 = IT("TextLabel",naeeym2)
838
tecks2.BackgroundTransparency = 1
839
tecks2.TextScaled = true
840
tecks2.BorderSizePixel = 0
841
tecks2.Text = "Pixel Warden"
842
tecks2.Font = "Bodoni"
843
tecks2.TextSize = 30
844
tecks2.TextStrokeTransparency = 0.5
845
tecks2.TextColor3 = C3(0,0,0)
846
tecks2.TextStrokeColor3 = BRICKC"Really blue".Color
847
tecks2.Size = UDim2.new(1,0,0.5,0)
848
tecks2.Parent = naeeym2
849
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.6,0.1,1)/2,false)
850
MakeForm(EYE,"Ball")
851
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
852
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.6,0.1,1)/2,false)
853
MakeForm(EYE,"Ball")
854
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
855
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.1,1,1)/2,false)
856
MakeForm(EYE,"Ball")
857
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
858
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.1,1,1)/2,false)
859
MakeForm(EYE,"Ball")
860
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
861
862
local top = Instance.new("Shirt")
863
top.ShirtTemplate = "rbxassetid://12786196"
864
top.Parent = Character
865
top.Name = "Cloth"
866
local bottom = Instance.new("Pants")
867
bottom.PantsTemplate = "rbxassetid://326190288"
868
bottom.Parent = Character
869
bottom.Name = "Cloth"
870
for _, c in pairs(Character:GetChildren()) do
871
	if c.ClassName == "Part" and c.Name ~= "FaceGradient" and c.Name ~= "Hat" and c.Name ~= "Gem" then
872
		c.Material = "Neon"
873
		if c:FindFirstChildOfClass("ParticleEmitter") then
874
			c:FindFirstChildOfClass("ParticleEmitter"):remove()
875
		end
876-
naeeym2.StudsOffset = Vector3.new(0,2,0)
876+
877
		if c == Head then
878
			if c:FindFirstChild("face") then
879
				c.face:remove()
880
			end
881
		end
882
	elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
883
		c:remove()
884-
tecks2.Text = "Maniac Warden"
884+
885-
tecks2.Font = "Fantasy"
885+
886
	end
887-
tecks2.TextStrokeTransparency = 0
887+
888-
tecks2.TextColor3 = C3(1,1,1)
888+
889-
tecks2.TextStrokeColor3 = Color3.fromRGB(81, 62, 62)
889+
890
	if c:IsA("BasePart") and c.Name ~= "Handle" then
891
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
892-
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Dirt brown", "FaceGradient", VT(0.6,0.1,1)/2,false)
892+
893
		end
894
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
895-
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Dirt brown", "FaceGradient", VT(0.6,0.1,1)/2,false)
895+
896
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
897
	end
898-
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Dirt brown", "FaceGradient", VT(0.1,1,1)/2,false)
898+
899
for e = 1, #BODY do
900
	if BODY[e] ~= nil then
901-
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Dirt brown", "FaceGradient", VT(0.1,1,1)/2,false)
901+
902
		local PART = STUFF[1]
903
		local PARENT = STUFF[2]
904
		local MATERIAL = STUFF[3]
905
		local COLOR = STUFF[4]
906-
top.ShirtTemplate = "rbxassetid://1182218263"
906+
907
		if PART.ClassName == "Part" and PART ~= RootPart then
908
			PART.Material = MATERIAL
909
			PART.Color = COLOR
910-
bottom.PantsTemplate = "rbxassetid://1829011479"
910+
911
		end
912
		PART.AncestryChanged:Connect(function()
913
			PART.Parent = PARENT
914
		end)
915
	end
916
end
917
function refit()
918
	Character.Parent = workspace
919
	for e = 1, #BODY do
920
		if BODY[e] ~= nil then
921
			local STUFF = BODY[e]
922
			local PART = STUFF[1]
923
			local PARENT = STUFF[2]
924
			local MATERIAL = STUFF[3]
925
			local COLOR = STUFF[4]
926
			local TRANSPARENCY = STUFF[5]
927
			if PART.ClassName == "Part" and PART ~= RootPart then
928
				PART.Material = MATERIAL
929
				PART.Color = COLOR
930
				PART.Transparency = TRANSPARENCY
931
			end
932
			if PART.Parent ~= PARENT then
933
				Humanoid:remove()
934
				PART.Parent = PARENT
935
				Humanoid = IT("Humanoid",Character)
936
			end
937
		end
938
	end
939
end
940
local SKILLTEXTCOLOR = BRICKC"Really blue".Color
941
local SKILLFONT = "Bodoni"
942
local SKILLTEXTSIZE = 7
943
944
Humanoid.Died:connect(function()
945
	refit()
946
end)
947
948
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
949
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
950
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
951
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
952
local SKILL5FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.365, 0, 0.70, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
953
954
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Warden Zap", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 1")
955
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Warden Thunder", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 2")
956
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Inferno Ring", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
957
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Warden Wall", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
958
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Prison Key", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 5")
959
960
--//=================================\\
961
--||			DAMAGING
962
--\\=================================//
963-
       if BODY[e] ~= nil then
963+
964
965
function GoombaStomp(OBJECT)
966
	for _, c in pairs(OBJECT:GetChildren()) do
967
		if c:IsA("BasePart") then
968
			c.Size = VT(c.Size.X,0,c.Size.Z)
969
		end
970
	end
971
end
972
function ApplyAoE(POSITION,RANGE,FLING,BURN)
973
	local CHILDREN = workspace:GetDescendants()
974
	for index, CHILD in pairs(CHILDREN) do
975
		if CHILD.ClassName == "Model" and CHILD ~= Character then
976
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
977
			if HUM then
978
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
979
				if TORSO then
980
					if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
981
						CHILD:BreakJoints()
982
						if FLING ~= 0 then
983-
local SKILLTEXTCOLOR = BRICKC"Dirt brown".Color
983+
984
								if c:IsA("BasePart") and c.Transparency == 0 then
985
									if BURN == true then
986
										Fire(c)
987
									end
988
									local bv = Instance.new("BodyVelocity") 
989
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
990
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
991
									bv.Parent = c
992
									Debris:AddItem(bv,0.05)
993
								end
994
							end
995
						end
996
					end
997
				end
998
			end
999
		end
1000
	end
1001
end
1002
1003
--//=================================\\
1004
--||	ATTACK FUNCTIONS AND STUFF
1005
--\\=================================//
1006
1007
function Warden_Zap()
1008
	ATTACK = true
1009
	Rooted = false
1010
	local GYRO = IT("BodyGyro",RootPart)
1011
	GYRO.D = 750
1012
	GYRO.P = 20000
1013
	GYRO.MaxTorque = VT(0,40000000,0)
1014
	CreateSound(348663022,RightArm,1.5,2,false)
1015
	Pose("Cast1",0.8,1,true,GYRO)
1016
	local LightningTable = Lightning({Color = SKILLTEXTCOLOR, Start = RightArm.CFrame*CF(0,-1,0).p, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.2, DoesFade = true, Ignore = Character, MaxDist = 100, Branches = false})
1017
	local Hitpos = LightningTable.End
1018
	ApplyAoE(Hitpos,10,35)
1019
	WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(1,1,1)*15, Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = BOLTSOUNDS[MRANDOM(1,#BOLTSOUNDS)], SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1020
	for i = 1, 4 do
1021
		WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,45,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1022
	end
1023
	Pose("Cast1",0.8,1,true)
1024
	GYRO:remove()
1025
	ATTACK = false
1026
	Rooted = false
1027
end
1028
1029
function Warden_Thunder()
1030
	ATTACK = true
1031
	Rooted = false
1032
	local GYRO = IT("BodyGyro",RootPart)
1033
	GYRO.D = 750
1034
	GYRO.P = 20000
1035
	GYRO.MaxTorque = VT(0,40000000,0)
1036
	CreateSound(469345336,Torso,3,2,false)
1037
	Pose("Cast2",1.5,2,true,GYRO)
1038
	coroutine.resume(coroutine.create(function()
1039
		local FRAME = RootPart.CFrame
1040
		for i = 1, 25 do
1041
			local POS = FRAME*CF(MRANDOM(-17,17),0,-i*15)
1042
			local LightningTable = Lightning({Color = SKILLTEXTCOLOR, Start = POS*CF(0,85,0).p, End = POS*CF(0,-15,0).p, SegmentL = 3, Thickness = 0.4, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = true})
1043
			local Hitpos = LightningTable.End
1044
			ApplyAoE(Hitpos,20,15)
1045
			WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(1,1,1)*15, Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = BOLTSOUNDS[MRANDOM(1,#BOLTSOUNDS)], SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1046
			for i = 1, 4 do
1047
				WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,75,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1048
			end
1049
			wait(0.05)
1050
		end
1051
	end))
1052
	Pose("Cast2",1.5,0.7,true)
1053
	GYRO:remove()
1054-
	WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(1,1,1)*15, Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Dirt brown".Color, SoundID = BOLTSOUNDS[MRANDOM(1,#BOLTSOUNDS)], SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1054+
1055
	Rooted = false
1056-
		WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,45,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Dirt brown".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1056+
1057
1058
function Inferno_Ring()
1059
	ATTACK = true
1060
	Rooted = false
1061
	local GYRO = IT("BodyGyro",RootPart)
1062
	GYRO.D = 750
1063
	GYRO.P = 20000
1064
	GYRO.MaxTorque = VT(0,40000000,0)
1065
	local FIRE = IT("Model",Effects)
1066
	FIRE.Name = "Fire"
1067
	local MAIN = CreatePart(3, FIRE, "Neon", 0, 1, "Really blue", "Center", VT(0,0,0))
1068
	FIRE.PrimaryPart = MAIN
1069
	local FIRES = {}
1070
	for i = 1, 45 do
1071
		local PRT = CreatePart(3, FIRE, "Neon", 0, 1, "Really blue", "RingPart", VT(3,3,3))
1072
		PRT.CFrame = MAIN.CFrame*ANGLES(RAD(0),RAD((360/45)*i),RAD(0))*CF(0,0,20)
1073
		local F = Fire(PRT)
1074
		table.insert(FIRES,F)
1075
	end
1076
	repeat
1077
		FIRE:SetPrimaryPartCFrame(CF(Mouse.Hit.p))
1078
		Pose("Cast1",1.5,0.01,false,GYRO)
1079
	until HOLD == true
1080-
			WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(1,1,1)*15, Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Dirt brown".Color, SoundID = BOLTSOUNDS[MRANDOM(1,#BOLTSOUNDS)], SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1080+
1081
		for i = 1, 4 do
1082-
				WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,75,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Dirt brown".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1082+
1083
			CreateSound(463598785,MAIN,3,1,false)
1084
			for E = 1, #FIRES do
1085
				if FIRES[E] ~= nil then
1086
					FIRES[E].Acceleration = VT(0,300,0)
1087
					FIRES[E].Lifetime=NumberRange.new(0.35,1.5)
1088
				end
1089
			end
1090
			wait(0.3)
1091
		end
1092
		for E = 1, #FIRES do
1093
			if FIRES[E] ~= nil then
1094
				FIRES[E].Enabled = false
1095
			end
1096
		end
1097
		Debris:AddItem(FIRE,5)
1098
	end))
1099
	CreateSound(215395388,RightArm,3,2,false)
1100
	Pose("RightArmUp",1.5,0.5,true)
1101
	GYRO:remove()
1102-
	local MAIN = CreatePart(3, FIRE, "Neon", 0, 1, "Dirt brown", "Center", VT(0,0,0))
1102+
1103
	Rooted = false
1104
end
1105
1106-
		local PRT = CreatePart(3, FIRE, "Neon", 0, 1, "Dirt brown", "RingPart", VT(3,3,3))
1106+
function SwordBeam()
1107
	ATTACK = true
1108
	Rooted = false
1109
	local SWORDMODEL = IT("Model",Effects)
1110
	local HANDLE = CreatePart(3, SWORDMODEL, "Neon", 0, 0, "Shamrock", "Stic", VT(0.2,2,0.2),false)
1111
	local GRIP = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, HANDLE, CF(0,-1,0)* ANGLES(RAD(-90), RAD(90), RAD(0)), CF(0, -0.3, 0))
1112
	local PART = CreatePart(3, SWORDMODEL, "Neon", 0, 0, "Shamrock", "Stic", VT(1,0.2,0.2),false)
1113
	CreateWeldOrSnapOrMotor("Weld", HANDLE, HANDLE, PART, CF(0,1,0), CF(0, 0, 0))
1114
	local PART = CreatePart(3, SWORDMODEL, "Neon", 0, 0, "Pearl", "Stic", VT(0.5,2,0.1),false)
1115
	CreateWeldOrSnapOrMotor("Weld", HANDLE, HANDLE, PART, CF(0,2,0), CF(0, 0, 0))
1116
	local PART = CreatePart(3, SWORDMODEL, "Neon", 0, 0, "Pearl", "Stic", VT(0.25,2,0.1),false)
1117
	CreateWeldOrSnapOrMotor("Weld", HANDLE, HANDLE, PART, CF(0,2.25,0), CF(0, 0, 0))
1118
	for i=0, 1, 0.1 / Animation_Speed do
1119
		Swait()
1120
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1121
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1122
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(160), RAD(15), RAD(-2+sick.PlaybackLoudness/45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1123
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1124
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1125
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1126
	end
1127
	coroutine.resume(coroutine.create(function()
1128
		local BEAM = IT("Model",Effects)
1129
		local BASE = CreatePart(3, BEAM, "Neon", 0, 0, "Really blue", "Stic", VT(0.1,0.5,2))
1130
		BASE.CFrame = RootPart.CFrame*CF(1.5,-0.4,0)
1131
		local PART = CreatePart(3, BEAM, "Neon", 0, 0, "Really blue", "Stic", VT(0.1,0.25,2))
1132
		PART.CFrame = BASE.CFrame*CF(0,0,-0.2)
1133
		for i = 1, 4 do
1134
			local PART = CreatePart(3, BEAM, "Neon", 0, 0, "Really blue", "Stic", VT(0.1,0.75,0.1))
1135
			PART.CFrame = BASE.CFrame*CF(0,0,-0.8+(i/2.5))
1136
		end
1137
		BEAM.PrimaryPart = BASE
1138
		for i = 1, 75 do
1139
			wait()
1140
			BEAM:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0,-2))
1141
			local HITFLOOR = Raycast(BASE.Position, BASE.CFrame.lookVector, 2.1, Character)
1142
			if HITFLOOR then
1143
				if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
1144
					local HUM = HITFLOOR.Parent:FindFirstChildOfClass("Humanoid")
1145
					ApplyDamage(HUM,15)
1146
				end
1147
				break
1148
			end
1149
		end
1150
		BEAM:remove()
1151
	end))
1152
	for i=0, 0.05, 0.1 / Animation_Speed do
1153
		Swait()
1154
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1155
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1156
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(25), RAD(15), RAD(-2+sick.PlaybackLoudness/45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1157
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1158
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1159-
				WACKYEFFECT({Time = 35, EffectType = "Box", Size = WALL.Size, Size2 = WALL.Size*2, Transparency = 0, Transparency2 = 1, CFrame = WALL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Dirt brown".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1159+
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1160
	end
1161
	for i=0, 0.5, 0.1 / Animation_Speed do
1162
		Swait()
1163
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1164
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1165
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(-25), RAD(15), RAD(-2+sick.PlaybackLoudness/45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1166
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1167
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1168
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1169
	end
1170
	SWORDMODEL:remove()
1171
	ATTACK = false
1172
	Rooted = false
1173
end
1174
function QuestionMarkBlock2()
1175
	ATTACK = true
1176
	Rooted = true
1177
	local BLOCKMODEL = IT("Model",Effects)
1178
	local LOAD = false
1179
	local BLOCK = CreatePart(3, BLOCKMODEL, "Neon", 0, 0, "New Yeller", "Base", VT(2,2,2))
1180
	BLOCK.CFrame = CF(RootPart.CFrame*CF(0,15,0).p)
1181
	BLOCKMODEL.PrimaryPart = BLOCK
1182
	local FRAME = RootPart.CFrame*CF(0,15,0)
1183
	for i = 1, 4 do
1184
		local BASE = CreatePart(3, BLOCKMODEL, "Neon", 0, 1, "New Yeller", "Blocc", VT(1.3,1.3,2)*1.001)
1185
		BASE.CFrame = BLOCK.CFrame * ANGLES(RAD(0), RAD((360/4)*i), RAD(0))
1186
		local DECAL = IT("Decal",BASE)
1187
		DECAL.Texture = "http://www.roblox.com/asset/?id=1019185679"
1188
		local PART = CreatePart(3, BLOCKMODEL, "Neon", 0, 0, "Pearl", "Blocc", VT(0.2,0.2,2.1))
1189
		PART.CFrame = BASE.CFrame*CF(0.75,0.75,0)
1190
		local PART = CreatePart(3, BLOCKMODEL, "Neon", 0, 0, "Pearl", "Blocc", VT(0.2,0.2,2.1))
1191
		PART.CFrame = BASE.CFrame*CF(0.75,-0.75,0)
1192
	end
1193
	local LANDED = false
1194
	local HIT = false
1195
	local LOOP = 0
1196
	coroutine.resume(coroutine.create(function()
1197
		repeat
1198
			Swait()
1199
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1200
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(0), RAD(7.5-30*SIN(sick.PlaybackLoudness/300)), RAD(0 - 25 * SIN(SINE / 15))), 1 / Animation_Speed)
1201
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(0), RAD(-15), RAD(-2+sick.PlaybackLoudness/45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1202
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1203
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1204
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1205
		until LOAD == true
1206
		repeat
1207
			Swait()
1208
			if HIT == false then
1209
				local HITFLOOR = Raycast(BLOCK.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 1.2, BLOCKMODEL)
1210
				if HITFLOOR then
1211
					HIT = true
1212
					coroutine.resume(coroutine.create(function()
1213
						local CFRAME = BLOCK.CFrame
1214
						RootPart.Velocity = VT(0,0,0)
1215
						RootPart.RotVelocity = VT(0,0,0)
1216
						coroutine.resume(coroutine.create(function()
1217
							CreateSound(138702491, BLOCK, 10, 1, false)
1218
							local COIN = CreatePart(3, BLOCKMODEL, "Neon", 0, 1, "New Yeller", "Coin", VT(1.8,1.8,0))
1219
							COIN.CFrame = BLOCK.CFrame
1220
							local DECAL = IT("Decal",COIN)
1221
							DECAL.Texture = "http://www.roblox.com/asset/?id=1512322302"
1222
							local DECAL = IT("Decal",COIN)
1223
							DECAL.Texture = "http://www.roblox.com/asset/?id=1512322302"
1224
							DECAL.Face = "Back"
1225
							for i = 1, 15 do
1226
								wait()
1227
								COIN.CFrame = Clerp(FRAME, FRAME*CF(0,(15-(i/10)),0), 1 / Animation_Speed)
1228
							end
1229
							COIN:remove()
1230
						end))
1231
						for i = 1, 5 do
1232
							wait()
1233
							RootPart.Velocity = VT(0,-i*4,0)
1234
							RootPart.RotVelocity = VT(0,0,0)
1235
							BLOCKMODEL:SetPrimaryPartCFrame(Clerp(CFRAME, CFRAME*CF(0,(5-i),0), 1 / Animation_Speed))
1236
						end
1237
						BLOCK.BrickColor = BRICKC"Dirt brown"
1238
						for _, c in pairs(BLOCKMODEL:GetChildren()) do
1239
							if c:IsA("BasePart") and c.Name ~= "Base" then
1240
								c:remove()
1241
							end
1242
						end
1243
						Debris:AddItem(BLOCKMODEL,5)			
1244
					end))
1245
				end
1246
			else
1247
				local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1248
				if HITFLOOR then
1249
					LANDED = true
1250-
				local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Dirt brown", "KeyBase", VT(0.1, 1, 0.1),false)
1250+
1251
			end
1252
			LOOP = LOOP + 1
1253
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1254
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 2 / Animation_Speed)
1255-
					local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Dirt brown", "Key", VT(0.1, 0.1, 0.1),false)
1255+
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, -0.2) * ANGLES(RAD(150), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
1256
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 2 / Animation_Speed)
1257
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4-sick.PlaybackLoudness/800, -0.7) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1258
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.3) * ANGLES(RAD(-25), RAD(-80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 2 / Animation_Speed)
1259-
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Dirt brown", "Key", VT(0.3, 0.1, 0.1),false)
1259+
		until LANDED == true or ATTACK == false
1260
	end))
1261
	wait(0.3)
1262-
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Dirt brown", "Key", VT(0.3, 0.1, 0.1),false)
1262+
	LOAD = true
1263
	CreateSound(158309736, Torso, 10, 1, false)
1264
	local bv = Instance.new("BodyVelocity",RootPart) 
1265
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1266
	bv.velocity = CF(RootPart.Position,BLOCK.Position).lookVector*150
1267
	Debris:AddItem(bv,0.05)
1268
	repeat wait() until LANDED == true or LOOP > 45
1269
	Debris:AddItem(BLOCKMODEL,5)	
1270
	ATTACK = false
1271
	Rooted = false
1272
end
1273
function Warden_Wall()
1274
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 8, Character)
1275
	if HITFLOOR ~= nil then
1276
		if HITFLOOR.Anchored == true then
1277
			local WALL = HITFLOOR:Clone()
1278-
					WACKYEFFECT({Time = 35, EffectType = "Crystal", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(1,1.45,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Dirt brown".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1278+
1279
			WALL.Parent = Effects
1280-
				WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1)*25, Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Dirt brown".Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1280+
1281
			WALL.CFrame = RootPart.CFrame*CF(0,-65/2.1,-5)*ANGLES(RAD(-15),RAD(0),RAD(0))
1282
			CreateSound(130972023,WALL,5,0.8,false)
1283
			ATTACK = true
1284
			Rooted = true
1285
			local HIT = WALL.Touched:Connect(function(hit)
1286
				if hit.Parent ~= Character then
1287
					hit:BreakJoints()
1288
				end
1289
			end)
1290
			coroutine.resume(coroutine.create(function()
1291
				WACKYEFFECT({Time = 35, EffectType = "Box", Size = WALL.Size, Size2 = WALL.Size*2, Transparency = 0, Transparency2 = 1, CFrame = WALL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1292
				for i = 1, 90 do
1293
					Swait()
1294
					WALL.CFrame = WALL.CFrame*CF(0,0.5,0)
1295
				end
1296
				HIT:disconnect()
1297
				wait(5)
1298
				for i = 1, 46 do
1299
					Swait()
1300
					WALL.CFrame = WALL.CFrame*CF(0,-1,0)
1301
				end
1302
				WALL:remove()
1303
			end))
1304
			Pose("RightArmUp",1.5,1.2,true)
1305
			ATTACK = false
1306
			Rooted = false
1307
		end
1308
	end
1309
end
1310
1311
function Prison_Key()
1312-
function Taunt3()
1312+
1313-
    ATTACK = true
1313+
1314-
    Rooted = true
1314+
1315-
    local TAUNT = CreateSound(159882635, Torso,17, 1, false)
1315+
1316-
    repeat
1316+
1317-
        Swait()
1317+
1318-
        TAUNT.Parent = Torso
1318+
1319-
        TAUNT.Playing = true
1319+
1320-
        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)
1320+
1321-
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(-0.02, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
1321+
1322-
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1322+
1323-
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1323+
1324-
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1324+
1325-
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1325+
1326-
    until TAUNT.TimePosition >= 1.25
1326+
1327-
    for i=0, 1.6, 0.1 / Animation_Speed do
1327+
1328-
        Swait()
1328+
1329-
        TAUNT.Parent = Torso
1329+
1330-
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(5)), 1 / Animation_Speed)
1330+
1331-
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
1331+
1332-
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1332+
1333-
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1333+
1334-
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1334+
1335-
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1335+
1336
			local LOCK2 = IT("Model",LOCK)
1337-
    ATTACK = false
1337+
1338-
    Rooted = false
1338+
1339
				local BASE = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 2.5, 1))
1340
				LOCK.PrimaryPart = BASE
1341
				BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
1342
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 1, 3))
1343
				PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
1344
				MakeForm(PRT,"Cyl")
1345
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(1, 1, 1))
1346
				PRT.Color = C3(0,0,0)
1347
				PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
1348
				MakeForm(PRT,"Cyl")
1349
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(0.5, 1, 1))
1350
				PRT.Color = C3(0,0,0)
1351
				PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
1352
				for i = 1, 45 do
1353
					local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
1354
					PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
1355
				end
1356
				local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
1357
				PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
1358
				LOCK2.PrimaryPart = PRT
1359
			---------------
1360
			local CHILDREN = LOCK:GetDescendants()
1361
			for index, CHILD in pairs(CHILDREN) do
1362
				if CHILD:IsA("BasePart") then
1363
					CHILD.Transparency = 1
1364
				end
1365
			end
1366
			for i = 1, 75 do
1367
				LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
1368
				Swait()
1369
				GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1370
				GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1371
				local CHILDREN = LOCK:GetDescendants()
1372
				for index, CHILD in pairs(CHILDREN) do
1373
					if CHILD:IsA("BasePart") then
1374
						CHILD.Transparency = CHILD.Transparency - 1/75
1375
					end
1376
				end
1377-
	if Key == "y" and ATTACK == false then
1377+
1378-
		Taunt3()
1378+
1379
			local KEY = IT("Model",Effects)
1380
			KEY.Name = "Key"
1381-
   if Key == "v" and ATTACK == false then
1381+
1382
				local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "KeyBase", VT(0.1, 1, 0.1),false)
1383
				KEY.PrimaryPart = KBASE
1384
				KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
1385-
	if Key == "x" and ATTACK == false then
1385+
1386
				for i = 1, 45 do
1387
					local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "Key", VT(0.1, 0.1, 0.1),false)
1388
					PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
1389
					weldBetween(KBASE,PRT)
1390
				end
1391
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "Key", VT(0.3, 0.1, 0.1),false)
1392
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
1393
				weldBetween(KBASE,PRT)
1394
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "Key", VT(0.3, 0.1, 0.1),false)
1395
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
1396
				weldBetween(KBASE,PRT)
1397
			--------------
1398
			Rooted = true
1399
			Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
1400
			coroutine.resume(coroutine.create(function()
1401
				for i = 1, 10 do
1402
					Swait()
1403
					GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1404
					GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1405
				end
1406
				CreateSound(1149318312,BASE,5,1,false)
1407
				CreateSound(160772554,BASE,3,1,false)
1408
				LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
1409
				for i = 1, 4 do
1410
					WACKYEFFECT({Time = 35, EffectType = "Crystal", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(1,1.45,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1411
				end
1412
				WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1)*25, Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1413
				wait(1)
1414
				TORSO.Parent.Parent = LOCK
1415
				for i = 1, 75 do
1416
					Swait()
1417
					local CHILDREN = KEY:GetDescendants()
1418
					for index, CHILD in pairs(CHILDREN) do
1419
						if CHILD:IsA("BasePart") then
1420
							CHILD.Transparency = i/25
1421
						end
1422
					end
1423
					local CHILDREN = LOCK:GetDescendants()
1424
					for index, CHILD in pairs(CHILDREN) do
1425
						if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
1426
							CHILD.Transparency = CHILD.Transparency + 1/75
1427
						elseif CHILD.ClassName == "Decal" then
1428
							CHILD.Transparency = CHILD.Transparency + 1/75
1429
						end
1430
					end
1431
				end
1432
				TORSO.Parent:ClearAllChildren()
1433
				KEY:remove()
1434
				LOCK:remove()
1435
			end))
1436
			Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
1437
			GYRO:remove()
1438-
    Swait()
1438+
1439-
           refit()
1439+
1440-
    script.Parent = WEAPONGUI
1440+
1441-
    for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1441+
1442-
        v:Stop();
1442+
1443
1444-
    ANIMATE.Parent = nil
1444+
1445-
    SINE = SINE + CHANGE*1.5
1445+
1446-
    local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1446+
1447-
    local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1447+
1448-
    local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
1448+
1449-
    local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
1449+
1450-
    if ANIM == "Walk" and TORSOVELOCITY > 1 then
1450+
1451-
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1451+
1452-
        Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * 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)
1452+
1453-
        RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 0.875*SIZE - 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1453+
1454-
        LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 0.875*SIZE + 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(-25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1454+
1455-
    elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1455+
1456-
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1456+
1457-
        Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1457+
1458-
        RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1458+
1459-
        LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1459+
1460
end
1461-
    if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1461+
1462-
        ANIM = "Jump"
1462+
1463-
        if ATTACK == false then
1463+
1464-
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1464+
1465-
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
1465+
1466-
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1466+
1467-
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1467+
1468-
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
1468+
1469-
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 1 / Animation_Speed)
1469+
1470-
        end
1470+
1471-
    elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1471+
1472-
        ANIM = "Fall"
1472+
1473-
        if ATTACK == false then
1473+
1474-
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1474+
1475-
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
1475+
1476-
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1476+
1477-
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1477+
1478-
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 1 / Animation_Speed)
1478+
1479-
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1 / Animation_Speed)
1479+
1480-
        end
1480+
    if Key == "y" and ATTACK == false then
1481-
    elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1481+
		QuestionMarkBlock2()
1482-
        ANIM = "Idle"
1482+
1483-
        if ATTACK == false then
1483+
1484-
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1484+
	if Key == "v" and ATTACK == false then
1485-
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1485+
1486-
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.2*SIZE, -0.5*SIZE) * ANGLES(RAD(35), RAD(-15 + 2.5 * SIN(SINE / 12)), RAD(-85 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1486+
1487-
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.2*SIZE, -0.5*SIZE) * ANGLES(RAD(35), RAD(15 - 2.5 * SIN(SINE / 12)), RAD(85 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1487+
1488-
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1488+
	if Key == "m" and ATTACK == false then
1489-
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1489+
		SwordBeam()
1490-
        end
1490+
1491-
    elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1491+
    
1492-
        ANIM = "Walk"
1492+
   if Key == "x" and ATTACK == false then
1493-
        if ATTACK == false then
1493+
1494-
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.1*SIZE) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
1494+
1495-
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(15 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 1/ Animation_Speed)
1495+
1496-
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(-55 + 2.5 * SIN(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1496+
1497-
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(55 - 2.5 * SIN(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1497+
1498-
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE , -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1498+
1499-
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1499+
1500-
        end
1500+
1501
function KeyUp(Key)
1502
	KEYHOLD = false
1503
end
1504
1505
	Mouse.Button1Down:connect(function(NEWKEY)
1506
		MouseDown(NEWKEY)
1507
	end)
1508
	Mouse.Button1Up:connect(function(NEWKEY)
1509
		MouseUp(NEWKEY)
1510
	end)
1511
	Mouse.KeyDown:connect(function(NEWKEY)
1512
		KeyDown(NEWKEY)
1513
	end)
1514
	Mouse.KeyUp:connect(function(NEWKEY)
1515
		KeyUp(NEWKEY)
1516
	end)
1517
1518-
			c.Color = C3(1,1,1)
1518+
1519-
			if c == Head then
1519+
1520-
				if c:FindFirstChild("face") then
1520+
1521-
					c.face:remove()
1521+
1522
function unanchor()
1523
	if UNANCHOR == true then
1524
		g = Character:GetChildren()
1525
		for i = 1, #g do
1526
			if g[i].ClassName == "Part" then
1527
				g[i].Anchored = false
1528
			end
1529
		end
1530-
	sick.SoundId = "rbxassetid://1130685064"
1530+
1531
end
1532
1533
1534
--//=================================\\
1535
--||	WRAP THE WHOLE SCRIPT UP
1536
--\\=================================//
1537
1538
Humanoid.Changed:connect(function(Jump)
1539
	if Jump == "Jump" and (Disable_Jump == true) then
1540
		Humanoid.Jump = false
1541
	end
1542
end)
1543
1544
while true do
1545
	Swait()
1546
	script.Parent = WEAPONGUI
1547
	ANIMATE.Parent = nil
1548
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1549
	    v:Stop();
1550
	end
1551
	Humanoid.JumpPower = 75
1552
	SINE = SINE + CHANGE
1553
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1554
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1555
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1556
	local WALKSPEEDVALUE = 4 / (Humanoid.WalkSpeed / 16)
1557
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1558
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1559
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1560
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.825 - 0.175 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.1- 0.5 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1561
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.825 + 0.175 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.1+ 0.5 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1562
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1563
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1564
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1565
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1566
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1567
	end
1568
	if HITFLOOR == nil then
1569
		ANIM = "Midair"
1570
		local JUMPHIT = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 5, Character)
1571
		if JUMPHIT ~= nil and TORSOVERTICALVELOCITY < 0 then
1572
			if JUMPHIT.Name == "Head" and JUMPHIT:FindFirstChild("Stomped") == nil then
1573
				local HIT = IT("Folder",JUMPHIT)
1574
				HIT.Name = "Stomped"
1575
				CreateSound(165013277, JUMPHIT, 10, 1, false)
1576
				RootPart.Velocity = VT(0,80,0)
1577
				GoombaStomp(JUMPHIT.Parent)
1578
			elseif JUMPHIT.Parent.ClassName == "Accessory" then
1579
				local HEAD = JUMPHIT.Parent.Parent:FindFirstChild("Head")
1580
				if HEAD then
1581
					if HEAD:FindFirstChild("Stomped") == nil then
1582
						local HIT = IT("Folder",HEAD)
1583
						HIT.Name = "Stomped"
1584
						CreateSound(165013277, HEAD, 10, 1, false)
1585
						RootPart.Velocity = VT(0,80,0)
1586
						GoombaStomp(HEAD.Parent)
1587
					end
1588
				end
1589
			end
1590
		end
1591
		local JUMPHIT = Raycast(RootPart.CFrame*CF(1,0,0).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 5, Character)
1592
		if JUMPHIT ~= nil and TORSOVERTICALVELOCITY < 0 then
1593
			if JUMPHIT.Name == "Head" and JUMPHIT:FindFirstChild("Stomped") == nil then
1594
				local HIT = IT("Folder",JUMPHIT)
1595
				HIT.Name = "Stomped"
1596
				CreateSound(165013277, JUMPHIT, 10, 1, false)
1597
				RootPart.Velocity = VT(0,80,0)
1598
				GoombaStomp(JUMPHIT.Parent)
1599
			elseif JUMPHIT.Parent.ClassName == "Accessory" then
1600
				local HEAD = JUMPHIT.Parent.Parent:FindFirstChild("Head")
1601
				if HEAD then
1602
					if HEAD:FindFirstChild("Stomped") == nil then
1603
						local HIT = IT("Folder",HEAD)
1604
						HIT.Name = "Stomped"
1605
						CreateSound(165013277, HEAD, 10, 1, false)
1606
						RootPart.Velocity = VT(0,80,0)
1607
						GoombaStomp(HEAD.Parent)
1608
					end
1609
				end
1610
			end
1611
		end
1612
		local JUMPHIT = Raycast(RootPart.CFrame*CF(-1,0,0).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 5, Character)
1613
		if JUMPHIT ~= nil and TORSOVERTICALVELOCITY < 0 then
1614
			if JUMPHIT.Name == "Head" and JUMPHIT:FindFirstChild("Stomped") == nil then
1615
				local HIT = IT("Folder",JUMPHIT)
1616
				HIT.Name = "Stomped"
1617
				CreateSound(165013277, JUMPHIT, 10, 1, false)
1618
				RootPart.Velocity = VT(0,80,0)
1619
				GoombaStomp(JUMPHIT.Parent)
1620
			elseif JUMPHIT.Parent.ClassName == "Accessory" then
1621
				local HEAD = JUMPHIT.Parent.Parent:FindFirstChild("Head")
1622
				if HEAD then
1623
					if HEAD:FindFirstChild("Stomped") == nil then
1624
						local HIT = IT("Folder",HEAD)
1625
						HIT.Name = "Stomped"
1626
						CreateSound(165013277, HEAD, 10, 1, false)
1627
						RootPart.Velocity = VT(0,80,0)
1628
						GoombaStomp(HEAD.Parent)
1629
					end
1630
				end
1631
			end
1632
		end
1633
		if ATTACK == false then
1634
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1635
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 2 / Animation_Speed)
1636
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, -0.2) * ANGLES(RAD(150), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
1637
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 2 / Animation_Speed)
1638
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4-sick.PlaybackLoudness/800, -0.7) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1639
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.3) * ANGLES(RAD(-25), RAD(-80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 2 / Animation_Speed)
1640
	    end
1641
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1642
		ANIM = "Idle"
1643
		JUMPED = false
1644
		if ATTACK == false then
1645
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0+sick.PlaybackLoudness/800) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1646
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(0), RAD(7.5-30*SIN(sick.PlaybackLoudness/300)), RAD(0 - 25 * SIN(SINE / 15))), 1 / Animation_Speed)
1647
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(0), RAD(-15), RAD(-2+sick.PlaybackLoudness/45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1648
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1649
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1650
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1651
		end
1652
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1653
		ANIM = "Walk"
1654
		JUMPED = false
1655
		if ATTACK == false then
1656
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1+sick.PlaybackLoudness/800) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
1657
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1+sick.PlaybackLoudness/800) - 1)) * ANGLES(RAD(5 - 2 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(7.5-30*SIN(sick.PlaybackLoudness/300)), RAD(0)), 1 / Animation_Speed)
1658
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5+sick.PlaybackLoudness/1200, 0) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * RIGHTSHOULDERC0, 0.35 / Animation_Speed)
1659
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(0), RAD(55), RAD(-12)) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1660
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1-sick.PlaybackLoudness/800, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-3)), 2 / Animation_Speed)
1661
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1-sick.PlaybackLoudness/800, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(3)), 2 / Animation_Speed)
1662
		end
1663
	end
1664
	unanchor()
1665
	Humanoid.MaxHealth = "inf"
1666
	Humanoid.Health = "inf"
1667
	if Rooted == false then
1668
		Disable_Jump = false
1669
		Humanoid.WalkSpeed = Speed
1670
	elseif Rooted == true then
1671
		Disable_Jump = true
1672
		Humanoid.WalkSpeed = 0
1673
	end
1674
	for _, c in pairs(Character:GetChildren()) do
1675
		if c.ClassName == "Part" and c.Name ~= "Eye" then
1676
			c.Material = "Neon"
1677
			if c:FindFirstChildOfClass("ParticleEmitter") then
1678
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1679
			end
1680
			 if Head:FindFirstChild("face") then
1681
        Head.face.Texture = "rbxassetid://403870689"
1682
    end
1683
         c.Color = C3(0,0,0)
1684
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
1685
			c:remove()
1686
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
1687
			c:remove()
1688
		end
1689
	end
1690
	sick.SoundId = "rbxassetid://343860759"
1691
	sick.Looped = true
1692
	sick.Pitch = 1
1693
	sick.Volume = 10000
1694
	sick:Resume()
1695
	sick.Parent = Torso
1696
	refit()
1697
	if Head:FindFirstChildOfClass("Sound") then
1698
		Head:FindFirstChildOfClass("Sound"):remove()
1699
	end
1700
end
1701
1702
--//=================================\\
1703
--\\=================================//
1704
1705
1706
1707
1708
1709
--//====================================================\\--
1710
--||			  		 END OF SCRIPT
1711
--\\====================================================//--