View difference between Paste ID: WDjuvcq5 and aGh78Xkv
SHOW: | | - or go back to the newest paste.
1
-- Synapse Decompiler
2
-- Purchase Here: https://brack4712.xyz/synapse/purchase/
3
-- This script has been converted to FE by iPxter
4
5
6
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
7
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
8
do
9
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
10
	script.Parent = Player.Character
11
12
	--RemoteEvent for communicating
13
	local Event = Instance.new("RemoteEvent")
14
	Event.Name = "UserInput_Event"
15
16
	--Fake event to make stuff like Mouse.KeyDown work
17
	local function fakeEvent()
18
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
19
		t.connect = t.Connect
20
		return t
21
	end
22
23
	--Creating fake input objects with fake variables
24
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
25
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
26
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
27
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
28
	end}
29
	--Merged 2 functions into one by checking amount of arguments
30
	CAS.UnbindAction = CAS.BindAction
31
32
	--This function will trigger the events that have been :Connect()'ed
33
	local function te(self,ev,...)
34
		local t = m[ev]
35
		if t and t._fakeEvent and t.Function then
36
			t.Function(...)
37
		end
38
	end
39
	m.TrigEvent = te
40
	UIS.TrigEvent = te
41
42
	Event.OnServerEvent:Connect(function(plr,io)
43
	    if plr~=Player then return end
44
		if io.isMouse then
45
			m.Target = io.Target
46
			m.Hit = io.Hit
47
		else
48
			local b = io.UserInputState == Enum.UserInputState.Begin
49
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
50
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
51
			end
52
			for _,t in pairs(CAS.Actions) do
53
				for _,k in pairs(t.Keys) do
54
					if k==io.KeyCode then
55
						t.Function(t.Name,io.UserInputState,io)
56
					end
57
				end
58
			end
59
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
60
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
61
	    end
62
	end)
63
	Event.Parent = NLS([==[
64
	local Player = game:GetService("Players").LocalPlayer
65
	local Event = script:WaitForChild("UserInput_Event")
66
67
	local UIS = game:GetService("UserInputService")
68
	local input = function(io,a)
69
		if a then return end
70
		--Since InputObject is a client-side instance, we create and pass table instead
71
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
72
	end
73
	UIS.InputBegan:Connect(input)
74
	UIS.InputEnded:Connect(input)
75
76
	local Mouse = Player:GetMouse()
77
	local h,t
78
	--Give the server mouse data 30 times every second, but only if the values changed
79
	--If player is not moving their mouse, client won't fire events
80
	while wait(1/30) do
81
		if h~=Mouse.Hit or t~=Mouse.Target then
82
			h,t=Mouse.Hit,Mouse.Target
83
			Event:FireServer({isMouse=true,Target=t,Hit=h})
84
		end
85
	end]==],Player.Character)
86
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
87
end
88
89
wait(0.2)
90
Player = owner
91
PlayerGui = Player.PlayerGui
92
Cam = workspace.CurrentCamera
93
Backpack = Player.Backpack
94
Character = Player.Character
95
Humanoid = Character.Humanoid
96
RootPart = Character.HumanoidRootPart
97
Torso = Character.Torso
98
Head = Character.Head
99
RightArm = Character["Right Arm"]
100
LeftArm = Character["Left Arm"]
101
RightLeg = Character["Right Leg"]
102
LeftLeg = Character["Left Leg"]
103
RootJoint = RootPart.RootJoint
104
Neck = Torso.Neck
105
RightShoulder = Torso["Right Shoulder"]
106
LeftShoulder = Torso["Left Shoulder"]
107
RightHip = Torso["Right Hip"]
108
LeftHip = Torso["Left Hip"]
109
local sick = Instance.new("Sound", Character)
110
sick.SoundId = "rbxassetid://859912308"
111
sick.Looped = true
112
sick.Pitch = 1
113
sick.Volume = 1
114
sick:Play()
115
IT = Instance.new
116
CF = CFrame.new
117
VT = Vector3.new
118
RAD = math.rad
119
C3 = Color3.new
120
UD2 = UDim2.new
121
BRICKC = BrickColor.new
122
ANGLES = CFrame.Angles
123
EULER = CFrame.fromEulerAnglesXYZ
124
COS = math.cos
125
ACOS = math.acos
126
SIN = math.sin
127
ASIN = math.asin
128
ABS = math.abs
129
MRANDOM = math.random
130
FLOOR = math.floor
131
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
132
	local NEWMESH = IT(MESH)
133
	if MESH == "SpecialMesh" then
134
		NEWMESH.MeshType = MESHTYPE
135
		if MESHID ~= "nil" and MESHID ~= "" then
136
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id=" .. MESHID
137
		end
138
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
139
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id=" .. TEXTUREID
140
		end
141
	end
142
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
143
	NEWMESH.Scale = SCALE
144
	NEWMESH.Parent = PARENT
145
	return NEWMESH
146
end
147
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
148
	local NEWPART = IT("Part")
149
	NEWPART.formFactor = FORMFACTOR
150
	NEWPART.Reflectance = REFLECTANCE
151
	NEWPART.Transparency = TRANSPARENCY
152
	NEWPART.CanCollide = false
153
	NEWPART.Locked = true
154
	NEWPART.Anchored = true
155
	if ANCHOR == false then
156
		NEWPART.Anchored = false
157
	end
158
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
159
	NEWPART.Name = NAME
160
	NEWPART.Size = SIZE
161
	NEWPART.Position = Torso.Position
162
	NEWPART.Material = MATERIAL
163
	NEWPART:BreakJoints()
164
	NEWPART.Parent = PARENT
165
	return NEWPART
166
end
167
Player_Size = 1
168
Animation_Speed = 3
169
Frame_Speed = 0.016666666666666666
170
local Speed = 16
171
local Effects2 = {}
172
local weldBetween = function(a, b)
173
	local weldd = Instance.new("ManualWeld")
174
	weldd.Part0 = a
175
	weldd.Part1 = b
176
	weldd.C0 = CFrame.new()
177
	weldd.C1 = b.CFrame:inverse() * a.CFrame
178
	weldd.Parent = a
179
	return weldd
180
end
181
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
182
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
183
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
184
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
185
local CHANGEDEFENSE = 0
186
local CHANGEDAMAGE = 0
187
local CHANGEMOVEMENT = 0
188
local ANIM = "Idle"
189
local ATTACK = false
190
local EQUIPPED = false
191
local HOLD = false
192
local COMBO = 1
193
local Rooted = false
194
local SINE = 0
195
local KEYHOLD = false
196
local CHANGE = 2 / Animation_Speed
197
local WALKINGANIM = false
198
local WALK = 0
199
local VALUE1 = false
200
local VALUE2 = false
201
local ROBLOXIDLEANIMATION = IT("Animation")
202
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
203
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
204
local WEAPONGUI = IT("ScreenGui", PlayerGui)
205
WEAPONGUI.Name = "Weapon GUI"
206
local Effects = IT("Folder", Character)
207
Effects.Name = "Effects"
208
local ANIMATOR = Humanoid.Animator
209
local ANIMATE = Character.Animate
210
local HITPLAYERSOUNDS = {
211
	"263032172",
212
	"263032182",
213
	"263032200",
214
	"263032221",
215
	"263032252",
216
	"263033191"
217
}
218
local HITARMORSOUNDS = {
219
	"199149321",
220
	"199149338",
221
	"199149367",
222
	"199149409",
223
	"199149452"
224
}
225
local HITWEAPONSOUNDS = {
226
	"199148971",
227
	"199149025",
228
	"199149072",
229
	"199149109",
230
	"199149119"
231
}
232
local HITBLOCKSOUNDS = {"199148933", "199148947"}
233
local UNANCHOR = true
234
local SKILLTEXTCOLOR = C3(0.0196078431372549, 0.09803921568627451, 0.0196078431372549)
235
ArtificialHB = Instance.new("BindableEvent", script)
236
ArtificialHB.Name = "ArtificialHB"
237
script:WaitForChild("ArtificialHB")
238
frame = Frame_Speed
239
tf = 0
240
allowframeloss = false
241
tossremainder = false
242
lastframe = tick()
243
script.ArtificialHB:Fire()
244
game:GetService("RunService").Heartbeat:connect(function(s, p)
245
	tf = tf + s
246
	if tf >= frame then
247
		if allowframeloss then
248
			script.ArtificialHB:Fire()
249
			lastframe = tick()
250
		else
251
			for i = 1, math.floor(tf / frame) do
252
				script.ArtificialHB:Fire()
253
			end
254
			lastframe = tick()
255
		end
256
		if tossremainder then
257
			tf = 0
258
		else
259
			tf = tf - frame * math.floor(tf / frame)
260
		end
261
	end
262
end)
263
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
264
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
265
end
266
function PositiveAngle(NUMBER)
267
	if NUMBER >= 0 then
268
		NUMBER = 0
269
	end
270
	return NUMBER
271
end
272
function NegativeAngle(NUMBER)
273
	if NUMBER <= 0 then
274
		NUMBER = 0
275
	end
276
	return NUMBER
277
end
278
function Swait(NUMBER)
279
	if NUMBER == 0 or NUMBER == nil then
280
		ArtificialHB.Event:wait()
281
	else
282
		for i = 1, NUMBER do
283
			ArtificialHB.Event:wait()
284
		end
285
	end
286
end
287
function QuaternionFromCFrame(cf)
288
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
289
	local trace = m00 + m11 + m22
290
	if trace > 0 then
291
		local s = math.sqrt(1 + trace)
292
		local recip = 0.5 / s
293
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
294
	else
295
		local i = 0
296
		if m00 < m11 then
297
			i = 1
298
		end
299
		if m22 > (i == 0 and m00 or m11) then
300
			i = 2
301
		end
302
		if i == 0 then
303
			local s = math.sqrt(m00 - m11 - m22 + 1)
304
			local recip = 0.5 / s
305
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
306
		elseif i == 1 then
307
			local s = math.sqrt(m11 - m22 - m00 + 1)
308
			local recip = 0.5 / s
309
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
310
		elseif i == 2 then
311
			local s = math.sqrt(m22 - m00 - m11 + 1)
312
			local recip = 0.5 / s
313
			return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
314
		end
315
	end
316
end
317
function QuaternionToCFrame(px, py, pz, x, y, z, w)
318
	local xs, ys, zs = x + x, y + y, z + z
319
	local wx, wy, wz = w * xs, w * ys, w * zs
320
	local xx = x * xs
321
	local xy = x * ys
322
	local xz = x * zs
323
	local yy = y * ys
324
	local yz = y * zs
325
	local zz = z * zs
326
	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))
327
end
328
function QuaternionSlerp(a, b, t)
329
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
330
	local startInterp, finishInterp
331
	if cosTheta >= 1.0E-4 then
332
		if 1 - cosTheta > 1.0E-4 then
333
			local theta = ACOS(cosTheta)
334
			local invSinTheta = 1 / SIN(theta)
335
			startInterp = SIN((1 - t) * theta) * invSinTheta
336
			finishInterp = SIN(t * theta) * invSinTheta
337
		else
338
			startInterp = 1 - t
339
			finishInterp = t
340
		end
341
	elseif 1 + cosTheta > 1.0E-4 then
342
		local theta = ACOS(-cosTheta)
343
		local invSinTheta = 1 / SIN(theta)
344
		startInterp = SIN((t - 1) * theta) * invSinTheta
345
		finishInterp = SIN(t * theta) * invSinTheta
346
	else
347
		startInterp = t - 1
348
		finishInterp = t
349
	end
350
	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
351
end
352
function Clerp(a, b, t)
353
	local qa = {
354
		QuaternionFromCFrame(a)
355
	}
356
	local qb = {
357
		QuaternionFromCFrame(b)
358
	}
359
	local ax, ay, az = a.x, a.y, a.z
360
	local bx, by, bz = b.x, b.y, b.z
361
	local _t = 1 - t
362
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
363
end
364
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
365
	local frame = IT("Frame")
366
	frame.BackgroundTransparency = TRANSPARENCY
367
	frame.BorderSizePixel = BORDERSIZEPIXEL
368
	frame.Position = POSITION
369
	frame.Size = SIZE
370
	frame.BackgroundColor3 = COLOR
371
	frame.BorderColor3 = BORDERCOLOR
372
	frame.Name = NAME
373
	frame.Parent = PARENT
374
	return frame
375
end
376
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
377
	local label = IT("TextLabel")
378
	label.BackgroundTransparency = 1
379
	label.Size = UD2(1, 0, 1, 0)
380
	label.Position = UD2(0, 0, 0, 0)
381
	label.TextColor3 = TEXTCOLOR
382
	label.TextStrokeTransparency = STROKETRANSPARENCY
383
	label.TextTransparency = TRANSPARENCY
384
	label.FontSize = TEXTFONTSIZE
385
	label.Font = TEXTFONT
386
	label.BorderSizePixel = BORDERSIZEPIXEL
387
	label.TextScaled = false
388
	label.Text = TEXT
389
	label.Name = NAME
390
	label.Parent = PARENT
391
	return label
392
end
393
function NoOutlines(PART)
394
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
395
end
396
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
397
	local NEWWELD = IT(TYPE)
398
	NEWWELD.Part0 = PART0
399
	NEWWELD.Part1 = PART1
400
	NEWWELD.C0 = C0
401
	NEWWELD.C1 = C1
402
	NEWWELD.Parent = PARENT
403
	return NEWWELD
404
end
405
local S = IT("Sound")
406
function CreateSound(ID, PARENT, VOLUME, PITCH)
407
	local NEWSOUND
408
	coroutine.resume(coroutine.create(function()
409
		NEWSOUND = S:Clone()
410
		NEWSOUND.Parent = PARENT
411
		NEWSOUND.Volume = VOLUME
412
		NEWSOUND.Pitch = PITCH
413
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=" .. ID
414
		Swait()
415
		NEWSOUND:play()
416
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
417
	end))
418
	return NEWSOUND
419
end
420
function CFrameFromTopBack(at, top, back)
421
	local right = top:Cross(back)
422
	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)
423
end
424
function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
425
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
426
	wave.Color = COLOR
427
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
428
	wave.CFrame = CFRAME
429
	coroutine.resume(coroutine.create(function(PART)
430
		for i = 1, WAIT do
431
			Swait()
432
			mesh.Scale = mesh.Scale + GROW
433
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
434
			if DOESROT == true then
435
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
436
			end
437
			wave.Transparency = wave.Transparency + 0.5 / WAIT
438
			if wave.Transparency > 0.99 then
439
				wave:remove()
440
			end
441
		end
442
	end))
443
end
444
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
445
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
446
	wave.Color = COLOR
447
	local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
448
	wave.CFrame = CFRAME
449
	coroutine.resume(coroutine.create(function(PART)
450
		for i = 1, WAIT do
451
			Swait()
452
			mesh.Scale = mesh.Scale + GROW
453
			wave.Transparency = wave.Transparency + 1 / WAIT
454
			if wave.Transparency > 0.99 then
455
				wave:remove()
456
			end
457
		end
458
	end))
459
end
460
function Slice(KIND, SIZE, WAIT, CFRAME, COLOR, GROW)
461
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
462
	local mesh
463
	if KIND == "Base" then
464
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0, SIZE / 10, SIZE / 10), VT(0, 0, 0))
465
	elseif KIND == "Thin" then
466
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
467
	elseif KIND == "Round" then
468
		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
469
	end
470
	wave.CFrame = CFRAME
471
	coroutine.resume(coroutine.create(function(PART)
472
		for i = 1, WAIT do
473
			Swait()
474
			mesh.Scale = mesh.Scale + GROW / 10
475
			wave.Transparency = wave.Transparency + 0.5 / WAIT
476
			if wave.Transparency > 0.99 then
477
				wave:remove()
478
			end
479
		end
480
	end))
481
end
482
function MakeForm(PART, TYPE)
483
	if TYPE == "Cyl" then
484
		local MSH = IT("CylinderMesh", PART)
485
	elseif TYPE == "Ball" then
486
		local MSH = IT("SpecialMesh", PART)
487
		MSH.MeshType = "Sphere"
488
	elseif TYPE == "Wedge" then
489
		local MSH = IT("SpecialMesh", PART)
490
		MSH.MeshType = "Wedge"
491
	end
492
end
493
function CheckTableForString(Table, String)
494
	for i, v in pairs(Table) do
495
		if string.find(string.lower(String), string.lower(v)) then
496
			return true
497
		end
498
	end
499
	return false
500
end
501
function CheckIntangible(Hit)
502
	local ProjectileNames = {
503
		"Water",
504
		"Arrow",
505
		"Projectile",
506
		"Effect",
507
		"Rail",
508
		"Lightning",
509
		"Bullet"
510
	}
511
	if Hit and Hit.Parent and (not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid") then
512
		return true
513
	end
514
	return false
515
end
516
Debris = game:GetService("Debris")
517
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
518
	local Direction = CFrame.new(StartPos, Vec).lookVector
519
	local Ignore = type(Ignore) == "table" and Ignore or {Ignore}
520
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
521
	if RayHit and CheckIntangible(RayHit) then
522
		if DelayIfHit then
523
			wait()
524
		end
525
		RayHit, RayPos, RayNormal = CastZapRay(RayPos + Vec * 0.01, Vec, Length - (StartPos - RayPos).magnitude, Ignore, DelayIfHit)
526
	end
527
	return RayHit, RayPos, RayNormal
528
end
529
function FireArc(Part, ToLocation, AmountOfTime, Height, DoesCourontine)
530
	if DoesCourontine == false then
531
		local Direction = CF(Part.Position, ToLocation)
532
		local Distance = (Part.Position - ToLocation).magnitude
533
		for i = 1, AmountOfTime do
534
			Swait()
535
			Part.CFrame = Direction * CF(0, AmountOfTime / 200 + (AmountOfTime / Height - i * 2 / Height), -Distance / AmountOfTime)
536
			Direction = Part.CFrame
537
		end
538
		Part:remove()
539
	elseif DoesCourontine == true then
540
		coroutine.resume(coroutine.create(function()
541
			local Direction = CF(Part.Position, ToLocation)
542
			local Distance = (Part.Position - ToLocation).magnitude
543
			for i = 1, AmountOfTime do
544
				Swait()
545
				Part.CFrame = Direction * CF(0, AmountOfTime / 200 + (AmountOfTime / Height - i * 2 / Height), -Distance / AmountOfTime)
546
				Direction = Part.CFrame
547
			end
548
			Part:remove()
549
		end))
550
	end
551
end
552
function turnto(position)
553
	RootPart.CFrame = CFrame.new(RootPart.CFrame.p, VT(position.X, RootPart.Position.Y, position.Z)) * CFrame.new(0, 0, 0)
554
end
555
local naeeym2 = Instance.new("BillboardGui", Character)
556
naeeym2.AlwaysOnTop = true
557
naeeym2.Size = UDim2.new(5, 35, 2, 15)
558
naeeym2.StudsOffset = Vector3.new(0, 3, 0)
559
naeeym2.Adornee = Character.Head
560
naeeym2.Name = "Name"
561
naeeym2.PlayerToHideFrom = Player
562
local tecks2 = Instance.new("TextLabel", naeeym2)
563
tecks2.BackgroundTransparency = 1
564
tecks2.TextScaled = true
565
tecks2.BorderSizePixel = 0
566
tecks2.Text = "Dominus Praefectus"
567
tecks2.Font = "Fantasy"
568
tecks2.TextSize = 30
569
tecks2.TextStrokeTransparency = 0
570
tecks2.TextColor3 = SKILLTEXTCOLOR
571
tecks2.TextStrokeColor3 = Color3.new(0, 0, 0)
572
tecks2.Size = UDim2.new(1, 0, 0.5, 0)
573
tecks2.Parent = naeeym2
574
function Transparency(TRANS)
575
	tecks2.TextTransparency = TRANS
576
	tecks2.TextStrokeTransparency = TRANS
577
	for _, c in pairs(Character:GetChildren()) do
578
		if c.ClassName == "Part" and c ~= RootPart then
579
			c.Transparency = TRANS
580
			if c:FindFirstChildOfClass("Decal") then
581
				c:FindFirstChildOfClass("Decal").Transparency = TRANS
582
			end
583
		elseif c.ClassName == "Accessory" then
584
			c.Handle.Transparency = TRANS
585
		elseif c.ClassName == "Model" then
586
			for _, q in pairs(c:GetChildren()) do
587
				if q.ClassName == "Part" then
588
					q.Transparency = TRANS
589
					if q:FindFirstChildOfClass("Decal") then
590
						q:FindFirstChildOfClass("Decal").Transparency = TRANS
591
					end
592
				end
593
			end
594
		end
595
	end
596
end
597
Humanoid.Died:connect(function()
598
	Humanoid.Parent = nil
599
	Humanoid.MaxHealth = "inf"
600
	Humanoid.Health = "inf"
601
	refit()
602
	Humanoid.Parent = Character
603
	CreateSound("907330011", Head, 10, 1)
604
end)
605
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.8, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 1 Frame")
606
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.5, 0, 0.8, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 2 Frame")
607
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.1, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill 3 Frame")
608
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Governor Bomb", SKILLTEXTCOLOR, 7, "Fantasy", 0, 2, 0, "Text 1")
609
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Command Rush", SKILLTEXTCOLOR, 7, "Fantasy", 0, 2, 0, "Text 2")
610
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ruler", SKILLTEXTCOLOR, 12, "Antique", 0, 2, 0, "Text 3")
611
local SKILLEFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill Warp Frame")
612
local SKILLETEXT = CreateLabel(SKILLEFRAME, "[Q] Monarch Hop", SKILLTEXTCOLOR, 7, "Antique", 0, 2, 0, "Text Warp")
613
function killnearest(position, range, maxstrength)
614
	for i, v in ipairs(workspace:GetChildren()) do
615
		local body = v:GetChildren()
616
		for part = 1, #body do
617
			if (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character and range > (body[part].Position - position).Magnitude then
618
				if v.ClassName == "Model" then
619
					v:BreakJoints()
620
				end
621
				local bv = Instance.new("BodyVelocity")
622
				bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
623
				bv.velocity = CF(position, body[part].Position).lookVector * maxstrength
624
				bv.Parent = body[part]
625
				Debris:AddItem(bv, 0.2)
626
			end
627
		end
628
		if v.ClassName == "Part" and v.Anchored == false and range > (v.Position - position).Magnitude then
629
			v.Velocity = CFrame.new(position, v.Position).lookVector * 5 * maxstrength
630
		end
631
	end
632
end
633
function Governor_Bomb()
634
	local CENTER = CreatePart(3, Effects, "SmoothPlastic", 0, 1, SKILLTEXTCOLOR, "CenterPart", VT(0, 0, 0))
635
	local RAY = CreatePart(3, Effects, "Neon", 0, 1, SKILLTEXTCOLOR, "Laser01", VT(25, 25, 25))
636
	RAY.Color = SKILLTEXTCOLOR
637
	MakeForm(RAY, "Ball")
638
	local ECH = Mouse.Hit.p
639
	CENTER.CFrame = CF(Mouse.Hit.p)
640
	RAY.CFrame = CENTER.CFrame
641
	CreateSound("814168787", CENTER, 10, 0.6)
642
	for i = 1, 80 do
643
		Swait()
644
		RAY.Size = RAY.Size * 0.98
645
		RAY.Transparency = RAY.Transparency - 0.016666666666666666
646
	end
647
	killnearest(ECH, 25, 250)
648
	MagicSphere(VT(1, 1, 1), 55, CF(ECH), SKILLTEXTCOLOR, VT(2, 2, 2))
649
	MagicSphere(VT(0, 0, 0), 45, CF(ECH), C3(0, 0, 0), VT(2, 2, 2))
650
	CreateSound("314970790", CENTER, 10, 1)
651
	Debris:AddItem(CENTER, 5)
652
	RAY:remove()
653
end
654
function Command_Rush()
655
	ATTACK = true
656
	Rooted = false
657
	for i = 0, 1, 0.1 / Animation_Speed do
658
		Swait()
659
		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(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
660
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
661
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(25 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
662
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-25 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
663
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * 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)
664
		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)
665
	end
666
	Rooted = true
667
	local GYRO = IT("BodyGyro", RootPart)
668
	GYRO.D = 100
669
	GYRO.P = 2000
670
	GYRO.MaxTorque = VT(0, 4000000, 0)
671
	GYRO.cframe = CF(RootPart.Position, Mouse.Hit.p)
672
	for i = 1, 15 do
673
		for i = 1, 15 do
674
			Swait()
675
			GYRO.cframe = CF(RootPart.Position, Mouse.Hit.p)
676
			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(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
677
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
678
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(25 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
679
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-25 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
680
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * 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)
681
			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)
682
		end
683
		coroutine.resume(coroutine.create(function()
684
			local EYE = CreatePart(3, Effects, "Neon", 0, 0, "Really red", "Eyeball", VT(0, 0, 0))
685
			CreateSound("814168787", EYE, 10, 1)
686
			EYE.CFrame = RootPart.CFrame * CF(MRANDOM(-15, 15), MRANDOM(8, 20), MRANDOM(-15, 15))
687
			local M = CreateMesh("SpecialMesh", EYE, "FileMesh", "82326541", "82327419", VT(0, 0, 0), VT(0, 0, 0))
688
			MagicSphere(VT(0, 0, 0), 15, CF(EYE.Position), SKILLTEXTCOLOR, VT(1, 1, 1))
689
			local ATTACKI = false
690
			local TORS
691
			for i = 1, 10 do
692
				Swait()
693
				M.Scale = M.Scale + VT(0.1, 0.1, 0.1) * 3
694
				EYE.CFrame = EYE.CFrame * CF(0, 0, -0.5)
695
			end
696
			for i = 1, 100 do
697
				Swait()
698
				for _, c in pairs(workspace:GetChildren()) do
699
					if c.ClassName == "Model" and c ~= Character and c:FindFirstChildOfClass("Humanoid") and (c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")) then
700
						local HUMANOID = c:FindFirstChildOfClass("Humanoid")
701
						if 0 < HUMANOID.Health then
702
							local TORSO = c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")
703
							if (TORSO.Position - EYE.Position).Magnitude < 35 then
704
								ATTACKI = true
705
								TORS = TORSO
706
							end
707
						end
708
					end
709
				end
710
				if ATTACKI == true then
711
					break
712
				end
713
				EYE.CFrame = EYE.CFrame * CF(0, 0, -1)
714
			end
715
			if ATTACKI == false then
716
				for i = 1, 10 do
717
					Swait()
718
					M.Scale = M.Scale - VT(0.1, 0.1, 0.1) * 3
719
					EYE.CFrame = EYE.CFrame * CF(0, 0, -0.5)
720
				end
721
			else
722
				if TORS ~= nil then
723
					CreateSound("215395388", EYE, 10, 2)
724
					local DIST = (TORS.Position - EYE.Position).Magnitude
725
					MagicSphere(VT(0, 0, 0), 15, CF(EYE.Position), SKILLTEXTCOLOR, VT(1, 1, 1))
726
					MagicSphere(VT(1, 1, DIST), 15, CF(EYE.Position, TORS.Position) * CF(0, 0, -DIST / 2), SKILLTEXTCOLOR, VT(0, 0, 0))
727
					MagicSphere(VT(0, 0, 0), 15, CF(TORS.Position), SKILLTEXTCOLOR, VT(1, 1, 1))
728
					EYE.CFrame = CF(EYE.Position, TORS.Position)
729
					TORS.Parent:BreakJoints()
730
					Swait(35)
731
				end
732
				for i = 1, 10 do
733
					Swait()
734
					M.Scale = M.Scale - VT(0.1, 0.1, 0.1) * 3
735
				end
736
			end
737
			EYE:remove()
738
		end))
739
	end
740
	GYRO:remove()
741
	ATTACK = false
742
	Rooted = false
743
end
744
function Ruler()
745
	local HITFLOOR, HITPOS, NORMAL = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 7 * Player_Size, Character)
746
	if HITFLOOR ~= nil then
747
		do
748
			local HITBODIES = {}
749
			ATTACK = true
750
			Rooted = true
751
			local ABSOLUTE = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "SuperNova", VT(0, 0, 0))
752
			ABSOLUTE.Color = SKILLTEXTCOLOR
753
			MakeForm(ABSOLUTE, "Ball")
754
			CreateSound("814168787", ABSOLUTE, 10, 0.3)
755
			for i = 0, 4, 0.1 / Animation_Speed do
756
				Swait()
757
				ABSOLUTE.Size = ABSOLUTE.Size + VT(0.2, 0.2, 0.2)
758
				ABSOLUTE.CFrame = RootPart.CFrame * CF(0, 5 + ABSOLUTE.Size.Y / 2, 0)
759
				ABSOLUTE.Transparency = ABSOLUTE.Transparency - 0.01
760
				local CHARGE = CreatePart(3, Effects, "Neon", 0, 0, "Really red", "Star", VT(1, 1, 1))
761
				MakeForm(CHARGE, "Ball")
762
				CHARGE.Color = C3(0, 0, 0)
763
				CHARGE.CFrame = CF(RootPart.Position) * CF(MRANDOM(-15, 15), -6, MRANDOM(-15, 15))
764
				FireArc(CHARGE, ABSOLUTE.Position, 45, 45, true)
765
				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(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
766
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
767
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
768
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * 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)
769
				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)
770
				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)
771
			end
772
			CreateSound("907333406", Head, 10, 1)
773
			for i = 0, 2, 0.1 / Animation_Speed do
774
				Swait()
775
				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(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
776
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
777
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
778
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * 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)
779
				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)
780
				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)
781
			end
782
			coroutine.resume(coroutine.create(function()
783
				local PITS = {}
784
				CreateSound("178452217", ABSOLUTE, 10, 0.7)
785
				for i = 1, 6 do
786
					for i = 1, 10 do
787
						Swait()
788
						Slice("Thin", ABSOLUTE.Size.X / 20, 15, ABSOLUTE.CFrame * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180))), "Really black", VT(-0.01, 0, -0.01))
789
						ABSOLUTE.Size = ABSOLUTE.Size * 0.9
790
					end
791
					for i = 1, 10 do
792
						Swait()
793
						ABSOLUTE.Size = ABSOLUTE.Size * 1.12
794
					end
795
				end
796
				CreateSound("215395388", ABSOLUTE, 10, 0.6)
797
				CreateSound("215395388", ABSOLUTE, 10, 0.65)
798
				CreateSound("215395388", ABSOLUTE, 10, 0.7)
799
				for i = 1, 75 do
800
					Swait()
801
					local ICICLE = IT("CornerWedgePart", Effects)
802
					ICICLE.Locked = true
803
					ICICLE.CanCollide = false
804
					ICICLE.Anchored = true
805
					ICICLE.Color = C3(0, 0, 0)
806
					ICICLE.Material = "Neon"
807
					ICICLE.Size = VT(i / 3, i * 2, i / 3)
808
					ICICLE.CFrame = CF(HITPOS) * CF(MRANDOM(-ABSOLUTE.Size.X, ABSOLUTE.Size.X), 0, MRANDOM(-ABSOLUTE.Size.X / 1.5, ABSOLUTE.Size.X / 1.5)) * ANGLES(RAD(MRANDOM(-25, 25)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-25, 25)))
809
					table.insert(PITS, ICICLE)
810
					killnearest(ICICLE.Position, ICICLE.Size.Y / 1.5, -100)
811
					ABSOLUTE.Size = ABSOLUTE.Size * 1.03
812
					killnearest(ABSOLUTE.Position, ABSOLUTE.Size.X / 1.9, -100)
813
					for i = 1, 3 do
814
						Slice("Thin", ABSOLUTE.Size.X / 20, 5, ABSOLUTE.CFrame * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180))), "Really black", VT(-0.01, 0, -0.01))
815
					end
816
					CreateWave(VT(ABSOLUTE.Size.X / 1.5, 35, ABSOLUTE.Size.X / 1.5), 25, CF(HITPOS) * ANGLES(RAD(0), RAD(i * 5), RAD(0)), false, 0, C3(0, 0, 0), VT(i / 3, 0, i / 3))
817
				end
818
				ABSOLUTE.Transparency = 0
819
				for i = 1, 10 do
820
					Swait()
821
					ABSOLUTE.Size = ABSOLUTE.Size * 0.9
822
					ABSOLUTE.Transparency = ABSOLUTE.Transparency + 0.1
823
				end
824
				Debris:AddItem(ABSOLUTE, 5)
825
				Swait(50)
826
				for i = 1, 10 do
827
					Swait()
828
					for e = 1, #PITS do
829
						if PITS[e] ~= nil then
830
							local E = PITS[e]
831
							E.Transparency = E.Transparency + 0.1
832
						end
833
					end
834
				end
835
				for e = 1, #PITS do
836
					if PITS[e] ~= nil then
837
						local E = PITS[e]
838
						E:remove()
839
					end
840
				end
841
			end))
842
			ATTACK = false
843
			Rooted = false
844
		end
845
	end
846
end
847
local Decal = IT("Decal")
848
function Monarch_Hop()
849
	ATTACK = true
850
	Rooted = false
851
	local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0, 0, 0))
852
	O1.CFrame = RootPart.CFrame * CF(0, 0, -3) * ANGLES(RAD(90), RAD(0), RAD(0))
853
	local decal = Decal:Clone()
854
	decal.Parent = O1
855
	decal.Face = "Top"
856
	decal.Texture = "http://www.roblox.com/asset/?id=332014171"
857
	local decal2 = Decal:Clone()
858
	decal2.Parent = O1
859
	decal2.Face = "Bottom"
860
	decal2.Texture = "http://www.roblox.com/asset/?id=332014171"
861
	local O2 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0, 0, 0))
862
	local POS = VT(RootPart.Position.X, Mouse.Hit.p.Y + 6, RootPart.Position.Z)
863
	O2.CFrame = CF(Mouse.Hit.p + VT(0, 6, 0), POS) * ANGLES(RAD(90), RAD(0), RAD(0))
864
	local ROOT = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Warphole", VT(0, 0, 0))
865
	ROOT.CFrame = CF(O2.Position, RootPart.Position)
866
	local decal = Decal:Clone()
867
	decal.Parent = O2
868
	decal.Face = "Top"
869
	decal.Texture = "http://www.roblox.com/asset/?id=332014171"
870
	local decal2 = Decal:Clone()
871
	decal2.Parent = O2
872
	decal2.Face = "Bottom"
873
	decal2.Texture = "http://www.roblox.com/asset/?id=332014171"
874
	CreateSound("84005018", O1, 10, 0.7)
875
	CreateSound("84005018", O2, 10, 0.7)
876
	for i = 1, 75 do
877
		Swait()
878
		O1.Size = O1.Size + VT(0.1, 0, 0.1)
879
		O1.CFrame = RootPart.CFrame * CF(0, 0, -3) * ANGLES(RAD(90), RAD(i), RAD(0))
880
		O2.Size = O2.Size + VT(0.1, 0, 0.1)
881
		O2.CFrame = O2.CFrame * ANGLES(RAD(0), RAD(i), RAD(0))
882
		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(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
883
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
884
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
885
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
886
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * 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)
887
		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)
888
	end
889
	Rooted = true
890
	UNANCHOR = false
891
	RootPart.Anchored = true
892
	VALUE1 = true
893
	for i = 1, 15 do
894
		Transparency(i / 15)
895
		Swait()
896
		RootPart.CFrame = RootPart.CFrame * CF(0, 0, -0.13)
897
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
898
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
899
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
900
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
901
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * 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)
902
		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)
903
	end
904
	RootPart.CFrame = ROOT.CFrame
905
	ROOT:remove()
906
	for i = 1, 15 do
907
		Transparency(1 - i / 15)
908
		Swait()
909
		RootPart.CFrame = RootPart.CFrame * CF(0, 0, -0.5)
910
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
911
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
912
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
913
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
914
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * 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)
915
		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)
916
	end
917
	VALUE1 = false
918
	coroutine.resume(coroutine.create(function()
919
		for i = 1, 75 do
920
			Swait()
921
			O1.Size = O1.Size - VT(0.1, 0, 0.1)
922
			O1.CFrame = O1.CFrame * ANGLES(RAD(0), RAD(i), RAD(0))
923
			O2.Size = O2.Size - VT(0.1, 0, 0.1)
924
			O2.CFrame = O2.CFrame * ANGLES(RAD(0), RAD(i), RAD(0))
925
		end
926
		O1:remove()
927
		O2:remove()
928
	end))
929
	UNANCHOR = true
930
	RootPart.Anchored = false
931
	ATTACK = false
932
	Rooted = false
933
end
934
function Roar()
935
	ATTACK = true
936
	Rooted = true
937
	local ROAR = CreateSound("131172215", Head, 10, 1)
938
	Swait()
939
	repeat
940
		Swait()
941
		ROAR.Parent = Head
942
		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)
943
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
944
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-45), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(15 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
945
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-45), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
946
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
947
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-15 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
948
	until ROAR.Playing == false
949
	ATTACK = false
950
	Rooted = false
951
end
952
function MouseDown(Mouse)
953
	if ATTACK == false then
954
	end
955
end
956
function MouseUp(Mouse)
957
	HOLD = false
958
end
959
function KeyDown(Key)
960
	KEYHOLD = true
961
	if Key == "z" and ATTACK == false then
962
		Governor_Bomb()
963
	end
964
	if Key == "b" and ATTACK == false then
965
		Command_Rush()
966
	end
967
	if Key == "c" and ATTACK == false then
968
		Ruler()
969
	end
970
	if Key == "q" and ATTACK == false then
971
		Monarch_Hop()
972
	end
973
	if Key == "t" and ATTACK == false then
974
		Roar()
975
	end
976
end
977
function KeyUp(Key)
978
	KEYHOLD = false
979
end
980
Mouse.Button1Down:connect(function(NEWKEY)
981
	MouseDown(NEWKEY)
982
end)
983
Mouse.Button1Up:connect(function(NEWKEY)
984
	MouseUp(NEWKEY)
985
end)
986
Mouse.KeyDown:connect(function(NEWKEY)
987
	KeyDown(NEWKEY)
988
end)
989
Mouse.KeyUp:connect(function(NEWKEY)
990
	KeyUp(NEWKEY)
991
end)
992
function unanchor()
993
	if UNANCHOR == true then
994
		g = Character:GetChildren()
995
		for i = 1, #g do
996
			if g[i].ClassName == "Part" then
997
				g[i].Anchored = false
998
			end
999
		end
1000
	end
1001
end
1002
Humanoid.Changed:connect(function(Jump)
1003
	if Jump == "Jump" and Disable_Jump == true then
1004
		Humanoid.Jump = false
1005
	end
1006
end)
1007
Humanoid.HipHeight = 2
1008
Head:ClearAllChildren()
1009
local FF = IT("ForceField", Character)
1010
FF.Visible = false
1011
Speed = 35
1012
function refit()
1013
	RootJoint.Parent = RootPart
1014
	Neck.Parent = Torso
1015
	RightShoulder.Parent = Torso
1016
	LeftShoulder.Parent = Torso
1017
	RightHip.Parent = Torso
1018
	LeftHip.Parent = Torso
1019
	RootPart.Parent = Character
1020
	LeftArm.Parent = Character
1021
	RightArm.Parent = Character
1022
	RightLeg.Parent = Character
1023
	LeftLeg.Parent = Character
1024
	Torso.Parent = Character
1025
	Head.Parent = Character
1026
end
1027
local FOUNDFORGOTTEN = false
1028
while true do
1029
	Swait()
1030
	ANIMATE.Parent = nil
1031
	local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1032
	IDLEANIMATION:Play()
1033
	SINE = SINE + CHANGE
1034
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1035
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1036
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1037
	local HITFLOOR, HITPOS, NORMAL = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 7 * Player_Size, Character)
1038
	if ATTACK == false then
1039
		if TORSOVELOCITY < 1 then
1040
			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(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1041
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1042
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1043
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1044
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * 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)
1045
			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)
1046
		elseif TORSOVELOCITY > 1 then
1047
			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(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1048
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1049
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(15 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1050
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1051
			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)
1052
			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)
1053
		end
1054
	end
1055
	unanchor()
1056
	Humanoid.MaxHealth = "inf"
1057
	Humanoid.Health = "inf"
1058
	if Rooted == false then
1059
		Disable_Jump = false
1060
		Humanoid.WalkSpeed = Speed
1061
	elseif Rooted == true then
1062
		Disable_Jump = true
1063
		Humanoid.WalkSpeed = 0
1064
	end
1065
	for _, c in pairs(Character:GetChildren()) do
1066
		if c.ClassName == "Part" then
1067
			c.Material = "Neon"
1068
			if c:FindFirstChildOfClass("ParticleEmitter") then
1069
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1070
			end
1071
			if c == Torso then
1072
				c.Color = C3(0, 0, 0)
1073
			elseif c == RightArm then
1074
				c.Color = C3(0, 0.13, 0)
1075
			elseif c == LeftArm then
1076
				c.Color = C3(0, 0.13, 0)
1077
			elseif c == RightLeg then
1078
				c.Color = C3(0, 0.03, 0)
1079
			elseif c == LeftLeg then
1080
				c.Color = C3(0, 0.03, 0)
1081
			elseif c == Head then
1082
				if c:FindFirstChild("Dominus") == nil then
1083
					local M = CreateMesh("SpecialMesh", c, "FileMesh", "527245069", "527244862", VT(1, 1, 1) * 1.1, VT(0, 0, 0))
1084
					M.Name = "Dominus"
1085
				end
1086
				if c:FindFirstChild("face") then
1087
					c.face:remove()
1088
				end
1089
			end
1090
		elseif c.ClassName == "Shirt" or c.ClassName == "Pants" or c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
1091
			c:remove()
1092
		end
1093
	end
1094
	FF.Parent = Character
1095
	sick.Parent = Character
1096
	refit()
1097
	script.Parent = WEAPONGUI
1098
	Character.Parent = workspace
1099
	Humanoid.PlatformStand = false
1100
	Humanoid.Name = "Praefectus"
1101
	for _, c in pairs(game.Players:GetChildren()) do
1102
		if c.Character ~= nil and c.Character.Parent ~= workspace and c.Character.Parent ~= nil then
1103
			c.Character:BreakJoints()
1104
		end
1105
	end
1106
	FOUNDFORGOTTEN = false
1107
	Humanoid.DisplayDistanceType = "None"
1108
	for _, c in pairs(workspace:GetChildren()) do
1109
		if c.ClassName == "Model" then
1110
			for _, q in pairs(c:GetChildren()) do
1111
				if q.Name == "Forgotten Dominus" then
1112
					FOUNDFORGOTTEN = true
1113
				end
1114
			end
1115
		end
1116
	end
1117
	if FOUNDFORGOTTEN == true then
1118
		sick:Stop()
1119
	else
1120
		sick.Playing = true
1121
	end
1122
end