View difference between Paste ID: 7J8c5nHw and vZ6VfRgq
SHOW: | | - or go back to the newest paste.
1
-- This script has been converted to FE by iPxter
2
3
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7-
Player = game:GetService("Players").LocalPlayer
7+
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13-
Mouse = Player:GetMouse()
13+
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = game:GetService("Players").LocalPlayer
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end
86
87
--//====================================================\\--
88
--||			   CREATED BY SHACKLUSTER
89
--\\====================================================//--
90
91
wait(0.2)
92
93
Player = owner
94
PlayerGui = Player.PlayerGui
95
Cam = workspace.CurrentCamera
96
Backpack = Player.Backpack
97
Character = Player.Character
98
Humanoid = Character.Humanoid
99
RootPart = Character["HumanoidRootPart"]
100
Torso = Character["Torso"]
101
Head = Character["Head"]
102
RightArm = Character["Right Arm"]
103
LeftArm = Character["Left Arm"]
104
RightLeg = Character["Right Leg"]
105
LeftLeg = Character["Left Leg"]
106
RootJoint = RootPart["RootJoint"]
107
Neck = Torso["Neck"]
108
RightShoulder = Torso["Right Shoulder"]
109
LeftShoulder = Torso["Left Shoulder"]
110
RightHip = Torso["Right Hip"]
111
LeftHip = Torso["Left Hip"]
112
local sick = Instance.new("Sound",Character)
113
sick.SoundId = "rbxassetid://170282324"
114
sick.Looped = true
115
sick.Volume = 1
116
117
IT = Instance.new
118
CF = CFrame.new
119
VT = Vector3.new
120
RAD = math.rad
121
C3 = Color3.new
122
UD2 = UDim2.new
123
BRICKC = BrickColor.new
124
ANGLES = CFrame.Angles
125
EULER = CFrame.fromEulerAnglesXYZ
126
COS = math.cos
127
ACOS = math.acos
128
SIN = math.sin
129
ASIN = math.asin
130
ABS = math.abs
131
MRANDOM = math.random
132
FLOOR = math.floor
133
134
--//=================================\\
135
--|| 	      USEFUL VALUES
136
--\\=================================//
137
138
Animation_Speed = 3
139
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
140
local Speed = 45
141
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
142
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
143
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
144
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
145
local DAMAGEMULTIPLIER = 1
146
local ANIM = "Idle"
147
local ATTACK = false
148
local EQUIPPED = false
149
local HOLD = false
150
local COMBO = 1
151
local Rooted = false
152
local SINE = 0
153
local KEYHOLD = false
154
local CHANGE = 2 / Animation_Speed
155
local WALKINGANIM = false
156
local VALUE1 = false
157
local VALUE2 = false
158
local ROBLOXIDLEANIMATION = IT("Animation")
159
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
160
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
161
--ROBLOXIDLEANIMATION.Parent = Humanoid
162
local WEAPONGUI = IT("ScreenGui", PlayerGui)
163
WEAPONGUI.Name = "Weapon GUI"
164
local Effects = IT("Folder", Character)
165
Effects.Name = "Effects"
166
local ANIMATOR = Humanoid.Animator
167
local ANIMATE = Character.Animate
168
local UNANCHOR = true
169
local HITPOS = nil
170
local HITFLOOR = nil
171
local LEFTWINGS = {}
172
local RIGHTWINGS = {}
173
local BODY = {}
174
175
--//=================================\\
176
--\\=================================//
177
178
179
--//=================================\\
180
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
181
--\\=================================//
182
183
ArtificialHB = Instance.new("BindableEvent", script)
184
ArtificialHB.Name = "ArtificialHB"
185
186
script:WaitForChild("ArtificialHB")
187
188
frame = Frame_Speed
189
tf = 0
190
allowframeloss = false
191
tossremainder = false
192
lastframe = tick()
193
script.ArtificialHB:Fire()
194
195
game:GetService("RunService").Heartbeat:connect(function(s, p)
196
	tf = tf + s
197
	if tf >= frame then
198
		if allowframeloss then
199
			script.ArtificialHB:Fire()
200
			lastframe = tick()
201
		else
202
			for i = 1, math.floor(tf / frame) do
203
				script.ArtificialHB:Fire()
204
			end
205
		lastframe = tick()
206
		end
207
		if tossremainder then
208
			tf = 0
209
		else
210
			tf = tf - frame * math.floor(tf / frame)
211
		end
212
	end
213
end)
214
215
--//=================================\\
216
--\\=================================//
217
218
--//=================================\\
219
--|| 	      SOME FUNCTIONS
220
--\\=================================//
221
222
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
223
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
224
end
225
226
function PositiveAngle(NUMBER)
227
	if NUMBER >= 0 then
228
		NUMBER = 0
229
	end
230
	return NUMBER
231
end
232
233
function NegativeAngle(NUMBER)
234
	if NUMBER <= 0 then
235
		NUMBER = 0
236
	end
237
	return NUMBER
238
end
239
240
function Swait(NUMBER)
241
	if NUMBER == 0 or NUMBER == nil then
242
		ArtificialHB.Event:wait()
243
	else
244
		for i = 1, NUMBER do
245
			ArtificialHB.Event:wait()
246
		end
247
	end
248
end
249
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.TextStrokeColor3 = BRICKC"Really red".Color
397
	label.TextStrokeTransparency = STROKETRANSPARENCY
398
	label.TextTransparency = TRANSPARENCY
399
	label.FontSize = TEXTFONTSIZE
400
	label.Font = TEXTFONT
401
	label.BorderSizePixel = BORDERSIZEPIXEL
402
	label.TextScaled = false
403
	label.Text = TEXT
404
	label.Name = NAME
405
	label.Parent = PARENT
406
	return label
407
end
408
409
function NoOutlines(PART)
410
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
411
end
412
413
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
414
	local NEWWELD = IT(TYPE)
415
	NEWWELD.Part0 = PART0
416
	NEWWELD.Part1 = PART1
417
	NEWWELD.C0 = C0
418
	NEWWELD.C1 = C1
419
	NEWWELD.Parent = PARENT
420
	return NEWWELD
421
end
422
423
local S = IT("Sound")
424
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
425
	local NEWSOUND = nil
426
	coroutine.resume(coroutine.create(function()
427
		NEWSOUND = S:Clone()
428
		NEWSOUND.Parent = PARENT
429
		NEWSOUND.Volume = VOLUME
430
		NEWSOUND.Pitch = PITCH
431
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
432
		NEWSOUND:play()
433
		NEWSOUND.Name = "Audio"
434
		if DOESLOOP == true then
435
			NEWSOUND.Looped = true
436
		else
437
			repeat Swait() until NEWSOUND.Playing == false
438
			NEWSOUND:remove()
439
		end
440
	end))
441
	return NEWSOUND
442
end
443
444
function CFrameFromTopBack(at, top, back)
445
	local right = top:Cross(back)
446
	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)
447
end
448
449
--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})
450
function WACKYEFFECT(Table)
451
	local TYPE = (Table.EffectType or "Sphere")
452
	local SIZE = (Table.Size or VT(1,1,1))
453
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
454
	local TRANSPARENCY = (Table.Transparency or 0)
455
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
456
	local CFRAME = (Table.CFrame or Torso.CFrame)
457
	local MOVEDIRECTION = (Table.MoveToPos or nil)
458
	local ROTATION1 = (Table.RotationX or 0)
459
	local ROTATION2 = (Table.RotationY or 0)
460
	local ROTATION3 = (Table.RotationZ or 0)
461
	local MATERIAL = (Table.Material or "Neon")
462
	local COLOR = (Table.Color or C3(1,1,1))
463
	local TIME = (Table.Time or 45)
464
	local SOUNDID = (Table.SoundID or nil)
465
	local SOUNDPITCH = (Table.SoundPitch or nil)
466
	local SOUNDVOLUME = (Table.SoundVolume or nil)
467
	coroutine.resume(coroutine.create(function()
468
		local PLAYSSOUND = false
469
		local SOUND = nil
470
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
471
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
472
			PLAYSSOUND = true
473
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
474
		end
475
		EFFECT.Color = COLOR
476
		local MSH = nil
477
		if TYPE == "Sphere" then
478
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
479
		elseif TYPE == "Block" then
480
			MSH = IT("BlockMesh",EFFECT)
481
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
482
		elseif TYPE == "Box" then
483
			MSH = IT("BlockMesh",EFFECT)
484
			MSH.Scale = SIZE
485
		elseif TYPE == "Wave" then
486
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
487
		elseif TYPE == "Ring" then
488
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
489
		elseif TYPE == "Slash" then
490
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
491
		elseif TYPE == "Round Slash" then
492
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
493
		elseif TYPE == "Swirl" then
494
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
495
		elseif TYPE == "Skull" then
496
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
497
		elseif TYPE == "Crystal" then
498
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
499
		end
500
		if MSH ~= nil then
501
			local MOVESPEED = nil
502
			if MOVEDIRECTION ~= nil then
503
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
504
			end
505
			local GROWTH = SIZE - ENDSIZE
506
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
507
			if TYPE == "Block" then
508
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
509
			else
510
				EFFECT.CFrame = CFRAME
511
			end
512
			for LOOP = 1, TIME do
513
				Swait()
514
				MSH.Scale = MSH.Scale - GROWTH/TIME
515
				if TYPE == "Wave" then
516
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
517
				end
518
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
519
				if TYPE == "Block" then
520
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
521
				else
522
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
523
				end
524
				if MOVEDIRECTION ~= nil then
525
					local ORI = EFFECT.Orientation
526
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
527
					EFFECT.Orientation = ORI
528
				end
529
			end
530
			if PLAYSSOUND == false then
531
				EFFECT:remove()
532
			else
533
				repeat Swait() until SOUND.Playing == false
534
				EFFECT:remove()
535
			end
536
		else
537
			if PLAYSSOUND == false then
538
				EFFECT:remove()
539
			else
540
				repeat Swait() until SOUND.Playing == false
541
				EFFECT:remove()
542
			end
543
		end
544
	end))
545
end
546
547
function Shatter(Part)
548
	if Part.Transparency == 0 then
549
		local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, Part.BrickColor, "OOF", VT(0,0,0))
550
		Debris:AddItem(SOUNDPART,5)
551
		CreateSound("84005018", SOUNDPART, 3, MRANDOM(8,12)/10, false)
552
		local SIZE = Part.Size.X + Part.Size.Y + Part.Size.Z
553
		local SIZESET = SIZE/4
554
		local XOffset = Part.Size.X*1.5/SIZESET
555
		local YOffset = Part.Size.Y*1.5/SIZESET
556
		local ZOffset = Part.Size.Z*1.5/SIZESET
557
		for x = 1, math.ceil(XOffset) do
558
			for y = 1, math.ceil(YOffset) do
559
				for z = 1, math.ceil(ZOffset) do
560
					local SHARD = CreatePart(3, Effects, "Neon", 0, 0, Part.BrickColor, "Shard", VT(SIZE,SIZE,SIZE)/10, false)
561
					SHARD.CanCollide = true
562
					SHARD.CFrame = Part.CFrame*CF((Part.Size.X/2-x/4),(Part.Size.Y/2-y/4),(Part.Size.Z/2-z/4))
563
					SHARD.Velocity = VT(MRANDOM(-15,15),MRANDOM(-15,15),MRANDOM(-15,15))*3
564
					Debris:AddItem(SHARD,MRANDOM(10,25)/3)
565
				end
566
			end
567
		end
568
	end
569
	Part:remove()
570
end
571
572
function MakeForm(PART,TYPE)
573
	if TYPE == "Cyl" then
574
		local MSH = IT("CylinderMesh",PART)
575
	elseif TYPE == "Ball" then
576
		local MSH = IT("SpecialMesh",PART)
577
		MSH.MeshType = "Sphere"
578
	elseif TYPE == "Wedge" then
579
		local MSH = IT("SpecialMesh",PART)
580
		MSH.MeshType = "Wedge"
581
	end
582
end
583
584
Debris = game:GetService("Debris")
585
586
function CastProperRay(StartPos, EndPos, Distance, Ignore)
587
	local DIRECTION = CF(StartPos,EndPos).lookVector
588
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
589
end
590
591
function turnto(position)
592
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
593
end
594
595
--//=================================\\
596
--||	     WEAPON CREATION
597
--\\=================================//
598
599
local Back = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(1,1,0.35),false)
600
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Back, CF(0, 0.5, 1.2) * ANGLES(RAD(0),RAD(0),RAD(45)), CF(0, 0, 0))
601
602
local ANGLE = 35
603
for i = 1, 5 do
604
	local Wing = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.15,2+(i/2),0.15),false)
605
	local WingWeld = CreateWeldOrSnapOrMotor("Weld", Wing, Torso, Wing, CF(0, 1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0,1,0) * ANGLES(RAD(0), RAD(0), RAD(90)) * ANGLES(RAD(ANGLE), RAD(0), RAD(0)) * CF(0,3+(i/10),0) , CF(0, 0, 0))
606
	local Wing2 = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.25,1,0.25),false)
607
	CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing2, CF(0, 2+(i/2), 0) * ANGLES(RAD(25), RAD(0), RAD(0)), CF(0, 1, 0))
608
	ANGLE = ANGLE - 15
609
	table.insert(LEFTWINGS,WingWeld)
610
end
611
ANGLE = 35
612
for i = 1, 5 do
613
	local Wing = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.15,2+(i/2),0.15),false)
614
	local WingWeld = CreateWeldOrSnapOrMotor("Weld", Wing, Torso, Wing, CF(0, 1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * CF(0,1,0) * ANGLES(RAD(0), RAD(0), RAD(-90)) * ANGLES(RAD(ANGLE), RAD(0), RAD(0)) * CF(0,3+(i/10),0) , CF(0, 0, 0))
615
	local Wing2 = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Wing", VT(0.25,1,0.25),false)
616
	CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing2, CF(0, 2+(i/2), 0) * ANGLES(RAD(25), RAD(0), RAD(0)), CF(0, 1, 0))
617
	ANGLE = ANGLE - 15
618
	table.insert(RIGHTWINGS,WingWeld)
619
end
620
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Eye", VT(0.3,0.3,0.3),false)
621
local EyeWeld = CreateWeldOrSnapOrMotor("Weld", Head, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(-5),RAD(25),RAD(0)) * CF(0,0,-0.45), CF(0,0,0))
622
local Eye2 = CreatePart(3, Character, "Neon", 0, 0.5, "Really red", "Eye", VT(0.5,0.5,0.29),false)
623
local EyeWeld2 = CreateWeldOrSnapOrMotor("Weld", Head, Head, Eye2, CF(0,0.2,0) * ANGLES(RAD(-5),RAD(25),RAD(0)) * CF(0,0,-0.45), CF(0,0,0))
624
625
local Eye3 = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Eye", VT(0.1,0.1,0.31),false)
626
local EyeWeld3 = CreateWeldOrSnapOrMotor("Weld", Head, Head, Eye3, CF(0,0.2,0) * ANGLES(RAD(-5),RAD(-25),RAD(0)) * CF(0,0,-0.45), CF(0,0,0))
627
628
local SKILLTEXTCOLOR = BRICKC"Really red".Color
629
local SKILLFONT = "SciFi"
630
local SKILLTEXTSIZE = 6
631
632
local naeeym2 = Instance.new("BillboardGui",Character)
633
naeeym2.AlwaysOnTop = true
634
naeeym2.Size = UDim2.new(5,35,2,15)
635
naeeym2.StudsOffset = Vector3.new(0,1.2,0)
636
naeeym2.Adornee = Character.Head
637
naeeym2.Name = "Name"
638
naeeym2.PlayerToHideFrom = Player
639
local tecks2 = Instance.new("TextLabel",naeeym2)
640
tecks2.BackgroundTransparency = 1
641
tecks2.TextScaled = true
642
tecks2.BorderSizePixel = 0
643
tecks2.Text = "Cyber Monarch"
644
tecks2.Font = SKILLFONT
645
tecks2.TextSize = 30
646
tecks2.TextStrokeTransparency = 0
647
tecks2.TextColor3 = C3(0,0,0)
648
tecks2.TextStrokeColor3 = BRICKC"Really red".Color
649
tecks2.Size = UDim2.new(1,0,0.5,0)
650
tecks2.Parent = naeeym2
651
652
for _, c in pairs(Character:GetChildren()) do
653
	if c.ClassName == "Part" then
654
		table.insert(BODY,{c,Character})
655
		for _, q in pairs(c:GetChildren()) do
656
			if q.ClassName == "Motor6D" or q.ClassName == "Weld" or q.ClassName == "ManualWeld" then
657
				table.insert(BODY,{q,c})
658
			end
659
		end
660
	end
661
end
662
663
function refit()
664
	Character.Parent = workspace
665
	for e = 1, #BODY do
666
		if BODY[e] ~= nil then
667
			local STUFF = BODY[e]
668
			local PART = STUFF[1]
669
			local PARENT = STUFF[2]
670
			PART.Parent = PARENT
671
		end
672
	end
673
end
674
675
Humanoid.HealthChanged:connect(function()
676
	Humanoid.Parent = nil
677
	Humanoid.MaxHealth = "inf"
678
	Humanoid.Health = "inf"
679
	refit()
680
	Humanoid.Parent = Character
681
end)
682
683
Humanoid.Died:connect(function()
684
	Humanoid.Parent = nil
685
	Humanoid.MaxHealth = "inf"
686
	Humanoid.Health = "inf"
687
	refit()
688
	Humanoid.Parent = Character
689
end)
690
691
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")
692
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")
693
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")
694
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")
695
696
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Cyber Out-Burst", C3(50/255, 0/255, 0/255), SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
697
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Techno Beam", C3(50/255, 0/255, 0/255), SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
698
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Techno Warp", C3(50/255, 0/255, 0/255), SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
699
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Cyber Smash", C3(50/255, 0/255, 0/255), SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
700
701
--//=================================\\
702
--||			DAMAGING
703
--\\=================================//
704
705
function killnearest(position,range,EFFECT)
706
	for i,v in ipairs(workspace:GetChildren()) do
707
	local body = v:GetChildren()
708
		for part = 1, #body do
709
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
710
				local SIZE = body[part].Size.Magnitude
711
				if(body[part].Position - position).Magnitude < range + SIZE/2 then
712
					if v.ClassName == "Model" then
713
						if v:FindFirstChildOfClass("Humanoid") ~= nil then
714
							if v:FindFirstChildOfClass("Humanoid").Health > 0 then
715
								v:BreakJoints()
716
								if EFFECT == "Glitch" then
717
									coroutine.resume(coroutine.create(function()
718
										local ORIGINPOS = body[part].CFrame
719
										local SIZE = body[part].Size
720
										for i = 1, 100 do
721
											Swait()
722
											local PART = body[part]
723
											PART.Anchored = true
724
											PART.Size = SIZE*MRANDOM(5,15)/10
725
											PART.CFrame = ORIGINPOS*CF(MRANDOM(-15,15)/15,MRANDOM(-15,15)/15,MRANDOM(-15,15)/15)
726
										end
727
										body[part]:remove()
728
									end))
729
								elseif EFFECT == "Shatter" then
730
									for _, c in pairs(v:GetChildren()) do
731
										if c.ClassName == "Part" or c.ClassName == "MeshPart" then
732
											Shatter(c)
733
										end
734
									end
735
								end
736
							end
737
						end
738
					end
739
				end
740
			end
741
		end
742
	end
743
end
744
745
--//=================================\\
746
--||	ATTACK FUNCTIONS AND STUFF
747
--\\=================================//
748
749
function CyberOutburst()
750
	if HITFLOOR ~= nil then
751
		ATTACK = true
752
		Rooted = true
753
		for i=0, 2, 0.1 / Animation_Speed do
754
			Swait()
755
			WACKYEFFECT({EffectType = "Box", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0, CFrame = Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0), MoveToPos = Torso.Position, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
756
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
757
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
758
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
759
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
760
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
761
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
762
		end
763
		for i=0, 2, 0.1 / Animation_Speed do
764
			Swait()
765
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
766
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
767
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
768
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
769
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
770
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
771
		end
772
		WACKYEFFECT({EffectType = "Block", Size = VT(1,1,1), Size2 = VT(25,25,25), Transparency = 0.25, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 178452241, SoundPitch = 0.6, SoundVolume = 6})
773
		WACKYEFFECT({EffectType = "Block", Size = VT(1,1,1), Size2 = VT(35,35,35), Transparency = 0.5, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 178452241, SoundPitch = 0.8, SoundVolume = 4})
774
		WACKYEFFECT({EffectType = "Block", Size = VT(1,1,1), Size2 = VT(40,40,40), Transparency = 0.75, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 178452241, SoundPitch = 1, SoundVolume = 2})
775
		for i=0, 0.4, 0.1 / Animation_Speed do
776
			Swait()
777
			killnearest(Torso.Position,45,"Glitch")
778
			WACKYEFFECT({Time = 75, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(5,5,5), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame, MoveToPos = Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
779
			WACKYEFFECT({Time = 45, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(10,10,10), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = CF(HITPOS)*ANGLES(RAD(0),RAD(MRANDOM(-180,180)),RAD(0))*CF(0,0,55).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
780
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
781
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
782
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
783
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(-35), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
784
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(20.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
785
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(20.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
786
		end
787
		ATTACK = false
788
		Rooted = false
789
	end
790
end
791
792
function Technobeam()
793
	ATTACK = true
794
	Rooted = false
795
	local GYRO = IT("BodyGyro",RootPart)
796
	GYRO.D = 100
797
	GYRO.P = 2000
798
	GYRO.MaxTorque = VT(0,4000000,0)
799
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
800
	CreateSound("93724183", RightArm, 5, 1, false)
801
	for i=1, 35 do
802
		Swait()
803
		WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 1, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-5,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
804
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
805
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
806
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
807
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
808
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
809
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
810
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
811
	end
812
	local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Lazer", VT(0,0,0))
813
	local LOOP = CreateSound("415700134", RightArm, 5, 1, false)
814
	local TOCH = BEAM.Touched:Connect(function(hit)
815
		if hit.Anchored == false and hit.Parent ~= Head and  hit.Parent ~= Character and hit.Parent ~= Effects then
816
			Shatter(hit)
817
		end
818
	end)
819
	local I = 0
820
	repeat
821
		Swait()
822
		I = I + 1
823
		if I <= 10 then
824
			BEAM.Transparency = BEAM.Transparency - 0.1
825
		end
826
		local STARTPOS = RightArm.CFrame*CF(0,-4,0).p
827
		local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
828
		local DISTANCE = (STARTPOS - ENDPOS).Magnitude
829
		BEAM.CFrame = CF(STARTPOS,ENDPOS)*CF(0,0,-DISTANCE/2)*ANGLES(RAD(0),RAD(0),RAD(I*5))
830
		BEAM.Size = VT(2,2,DISTANCE)
831
		WACKYEFFECT({Time = 5, EffectType = "Box", Size = VT(1,1,1), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = CF(ENDPOS), MoveToPos = CF(ENDPOS)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,15,0).p, RotationX = MRANDOM(-5,5), RotationY = MRANDOM(-5,5), RotationZ = MRANDOM(-5,5), Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
832
		WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = RightArm.CFrame*CF(0,-4,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
833
		WACKYEFFECT({Time = 5, EffectType = "Block", Size = VT(5,5,5), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.25, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
834
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
835
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
836
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
837
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
838
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
839
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
840
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
841
		if ENDHIT ~= nil then
842
			if ENDHIT.Anchored == false and ENDHIT.Parent ~= Effects then
843
				Shatter(ENDHIT)
844
			end
845
		end
846
	until LOOP.Playing == false
847
	GYRO:remove()
848
	BEAM:remove()
849
	ATTACK = false
850
	Rooted = false
851
end
852
853
function Technowarp()
854
	local FRAME = RootPart.Position
855
	for i = 1, 6 do
856
		WACKYEFFECT({Time = 15, EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,35,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(Torso.Position)*ANGLES(RAD(0),RAD(i*(360/5)),RAD(0))*CF(6,0,0), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = 1177785010, SoundPitch = 1, SoundVolume = 2})	
857
	end
858
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0),VT(FRAME.X,RootPart.Position.Y,FRAME.Z))
859
	for i = 1, 6 do
860
		WACKYEFFECT({Time = 15, EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,35,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(Torso.Position)*ANGLES(RAD(0),RAD(i*(360/5)),RAD(0))*CF(6,0,0), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = 1177785010, SoundPitch = 1, SoundVolume = 2})	
861
	end
862
end
863
864
function CyberSmash()
865
	ATTACK = true
866
	Rooted = false
867
	local GYRO = IT("BodyGyro",RootPart)
868
	GYRO.D = 100
869
	GYRO.P = 2000
870
	GYRO.MaxTorque = VT(0,4000000,0)
871
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
872
	local SMASH = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Block", VT(25,25,25))
873
	SMASH.CanCollide = true
874
	SMASH.Color = C3(0,0,0)
875
	local EF = Instance.new("SelectionBox",SMASH)
876
	EF.Adornee = SMASH
877
	EF.Color = BrickColor.new("Really red")
878
	EF.LineThickness = 0.2
879
	EF.Transparency = 1
880
	coroutine.resume(coroutine.create(function()
881
		for i = 1, 20 do
882
			Swait()
883
			SMASH.Transparency = SMASH.Transparency - 0.05
884
			EF.Transparency = SMASH.Transparency
885
		end
886
	end))
887
	repeat
888
		SMASH.CFrame = CF(Mouse.Hit.p)*CF(0,35,0)
889
		Swait()
890
		GYRO.cframe = CF(RootPart.Position,SMASH.Position)
891
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
892
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
893
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(130), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
894
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
895
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
896
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
897
	until HOLD == true and SMASH.Transparency < 0.99
898
	for i = 1, 25 do
899
		Swait()
900
		SMASH.CFrame = SMASH.CFrame*CF(0,15/25,0)
901
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
902
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
903
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(160), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
904
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
905
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
906
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
907
	end
908
	local TOCH = SMASH.Touched:Connect(function(hit)
909
		if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
910
			Shatter(hit)
911
		end
912
	end)
913
	local n0 = nil
914
	local HITFLOOR,HITPOS = Raycast(SMASH.Position, (CF(SMASH.Position, SMASH.Position + VT(0, -1, 0))).lookVector, 25000, Character)
915
	if HITFLOOR ~= nil then
916
		if HITFLOOR.Anchored == false and HITFLOOR.Parent ~= workspace then
917
			if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") or HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
918
				if HITFLOOR.Parent.ClassName == "Model" then
919
					HITFLOOR.Parent:BreakJoints()
920
				elseif HITFLOOR.Parent.Parent.ClassName == "Model" then
921
					HITFLOOR.Parent.Parent:BreakJoints()
922
				end
923
			end
924
			local POS = HITPOS
925
			n0,HITPOS = Raycast(POS, (CF(POS, POS + VT(0, -1, 0))).lookVector, 25000, HITFLOOR.Parent)
926
		end
927
	end
928
	killnearest(HITPOS,SMASH.Size.X/1.3,"Shatter")
929
	SMASH.CFrame = CF(HITPOS+VT(0,SMASH.Size.Y/2,0))
930
	WACKYEFFECT({Time = 25, EffectType = "Box", Size = VT(24,0,24), Size2 = VT(75,2,75), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 130972023, SoundPitch = 1, SoundVolume = 10})
931
	for i = 1, 25 do
932
		Swait()
933
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
934
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
935
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(30), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
936
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
937
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
938
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
939
	end
940
	coroutine.resume(coroutine.create(function()
941
		wait(0.2)
942
		TOCH:disconnect()
943
		wait(1.8)
944
		for i = 1, 100 do
945
			Swait()
946
			SMASH.Transparency = i/100
947
		end
948
		for i = 1, 10 do
949
			Swait()
950
			EF.Transparency = EF.Transparency + 0.1
951
		end
952
		SMASH:remove()
953
	end))
954
	GYRO:remove()
955
	ATTACK = false
956
	Rooted = false
957
end
958
959
--//=================================\\
960
--||	  ASSIGN THINGS TO KEYS
961
--\\=================================//
962
963
function MouseDown(Mouse)
964
	HOLD = true
965
	if ATTACK == false then
966
	end
967
end
968
969
function MouseUp(Mouse)
970
HOLD = false
971
end
972
973
function KeyDown(Key)
974
	if Key ~= "w" and Key ~= "a" and Key ~= "s" and Key ~= "d" then
975
		KEYHOLD = true
976
		if Key == "z" and ATTACK == false then
977
			CyberOutburst()
978
		end
979
	
980
		if Key == "b" and ATTACK == false then
981
			Technobeam()
982
		end
983
	
984
		if Key == "c" and ATTACK == false then
985
			Technowarp()
986
		end
987
	
988
		if Key == "v" and ATTACK == false then
989
			CyberSmash()
990
		end
991
992
		if Key == "t" then
993
			local TAUNT = CreateSound("132392118", Head, 10, 0.8)
994
			TAUNT.TimePosition = 1.1
995
		end
996
	end
997
end
998
999
function KeyUp(Key)
1000
	if Key ~= "w" and Key ~= "a" and Key ~= "s" and Key ~= "d" then
1001
		KEYHOLD = false
1002
	end
1003
end
1004
1005
	Mouse.Button1Down:connect(function(NEWKEY)
1006
		MouseDown(NEWKEY)
1007
	end)
1008
	Mouse.Button1Up:connect(function(NEWKEY)
1009
		MouseUp(NEWKEY)
1010
	end)
1011
	Mouse.KeyDown:connect(function(NEWKEY)
1012
		KeyDown(NEWKEY)
1013
	end)
1014
	Mouse.KeyUp:connect(function(NEWKEY)
1015
		KeyUp(NEWKEY)
1016
	end)
1017
1018
--//=================================\\
1019
--\\=================================//
1020
1021
1022
function unanchor()
1023
	if UNANCHOR == true then
1024
		g = Character:GetChildren()
1025
		for i = 1, #g do
1026
			if g[i].ClassName == "Part" then
1027
				g[i].Anchored = false
1028
			end
1029
		end
1030
	end
1031
end
1032
1033
1034
--//=================================\\
1035
--||	WRAP THE WHOLE SCRIPT UP
1036
--\\=================================//
1037
1038
Humanoid.Changed:connect(function(Jump)
1039
	if Jump == "Jump" and (Disable_Jump == true) then
1040
		Humanoid.Jump = false
1041
	end
1042
end)
1043
1044
Humanoid.HipHeight = 2
1045
1046
while true do
1047
	Swait()
1048
	refit()
1049
	Character.Parent = workspace
1050
	Humanoid.Parent = Character
1051
	ANIMATE.Parent = nil
1052
	local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1053
	IDLEANIMATION:Play()
1054
	SINE = SINE + CHANGE
1055
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1056
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1057
	HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25, Character)
1058
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1059
	EyeWeld3.C1 = Clerp(EyeWeld3.C1,CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-SINE*2)), 1 / Animation_Speed)
1060
	EyeWeld2.C1 = Clerp(EyeWeld2.C1,CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-SINE*2)), 1 / Animation_Speed)
1061
	EyeWeld.C1 = Clerp(EyeWeld.C1,CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(SINE*2)), 1 / Animation_Speed)
1062
	for LW = 1, #LEFTWINGS do
1063
		if LEFTWINGS[LW] ~= nil then
1064
			LEFTWINGS[LW].C1 = Clerp(LEFTWINGS[LW].C1, CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(2.5 * SIN(SINE / 12)), RAD(0), RAD(-3 + 3 * SIN(SINE / 12))), 1 / Animation_Speed)
1065
		end
1066
	end
1067
	for RW = 1, #RIGHTWINGS do
1068
		if RIGHTWINGS[RW] ~= nil then
1069
			RIGHTWINGS[RW].C1 = Clerp(RIGHTWINGS[RW].C1, CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(2.5 * SIN(SINE / 12)), RAD(0), RAD(3 - 3 * SIN(SINE / 12))), 1 / Animation_Speed)
1070
		end
1071
	end
1072
	if ATTACK == false then
1073
		if TORSOVELOCITY < 1 then
1074
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1075
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
1076
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1077
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1078
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1079
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1080
		elseif TORSOVELOCITY > 1 then
1081
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(2.5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1082
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-10 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-2.5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1083
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1084
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 12), -1) * ANGLES(RAD(25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1085
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1086
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1087
		end
1088
	end
1089
	for _, c in pairs(Character:GetChildren()) do
1090
		if c.ClassName == "Part" and c.Name ~= "Eye" then
1091
			c.Material = "Neon"
1092
			if c:FindFirstChildOfClass("ParticleEmitter") then
1093
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1094
			end
1095
			if c ~= Head and c ~= RootPart and c:FindFirstChild("BoxEffect") == nil then
1096
				local EF = Instance.new("SelectionBox",c)
1097
				EF.Adornee = c
1098
				EF.Color = BrickColor.new("Really red")
1099
				EF.LineThickness = 0.01
1100
				EF.Transparency = 0
1101
				EF.Name = "BoxEffect"
1102
			end
1103
			c.Color = C3(0,0,0)
1104
			if c == Head then
1105
				--[[if c:FindFirstChild("Dominus") == nil then
1106
					local M = CreateMesh("SpecialMesh", c, "FileMesh", "162384581", "162384608", VT(1,1,1)*1.1, VT(0,0,0))
1107
					M.Name = "Dominus"
1108
				end]]--
1109
				if c:FindFirstChild("face") then
1110
					c.face:remove()
1111
				end
1112
			end
1113
		elseif c.ClassName == "Shirt" or c.ClassName == "Pants" or c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
1114
			c:remove()
1115
		end
1116
	end
1117
	if HITFLOOR ~= nil and MRANDOM(1,6) == 1 then
1118
		local POSITION = CF(HITPOS)*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(MRANDOM(5,15),0,0).p
1119
		local BOXFLOOR,BOXPOS = Raycast(POSITION+VT(0,1,0), (CF(POSITION, POSITION + VT(0, -1, 0))).lookVector, 5, Character)
1120
		if BOXFLOOR ~= nil then
1121
			WACKYEFFECT({EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,15,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(BOXPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1122
		end
1123
	end
1124
	unanchor()
1125
	Humanoid.MaxHealth = "inf"
1126
	Humanoid.Health = "inf"
1127
	if Rooted == false then
1128
		Disable_Jump = false
1129
		Humanoid.WalkSpeed = Speed
1130
	elseif Rooted == true then
1131
		Disable_Jump = true
1132
		Humanoid.WalkSpeed = 0
1133
	end
1134
	for _, c in pairs(workspace:GetChildren()) do
1135
		if c.ClassName == "Model" and c:FindFirstChild("Humanoid") and c ~= Character then
1136
		end
1137
	end
1138
	script.Parent = WEAPONGUI
1139
	Humanoid.Name = "Monarch"
1140
	sick.Parent = Effects
1141
	sick.Pitch = 0.85
1142
	sick.Playing = true
1143
	for _, q in pairs(Head:GetChildren()) do
1144
		if q.ClassName == "Sound" and q.Name ~= "Audio" then
1145
			q:remove()
1146
		end
1147
	end
1148
	Humanoid.DisplayDistanceType = "None"
1149
end
1150
1151
--//=================================\\
1152
--\\=================================//
1153
1154
1155
1156
1157
1158
--//====================================================\\--
1159
--||			  		 END OF SCRIPT
1160
--\\====================================================//--