View difference between Paste ID: V1dJYVgp and gcYFXpu9
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,game,owner = owner,game
3
local RealPlayer = Player
4
do
5
	print("FE Compatibility code V2 by Mokiros")
6
	local RealPlayer = RealPlayer
7
	script.Parent = RealPlayer.Character
8
9
	--Fake event to make stuff like Mouse.KeyDown work
10
	local Disconnect_Function = function(this)
11
		this[1].Functions[this[2]] = nil
12
	end
13
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
14
	local FakeEvent_Metatable = {__index={
15
		Connect = function(this,f)
16
			local i = tostring(math.random(0,10000))
17
			while this.Functions[i] do
18
				i = tostring(math.random(0,10000))
19
			end
20
			this.Functions[i] = f
21
			return setmetatable({this,i},Disconnect_Metatable)
22
		end
23
	}}
24
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
25
	local function fakeEvent()
26
		return setmetatable({Functions={}},FakeEvent_Metatable)
27
	end
28
29
	--Creating fake input objects with fake variables
30
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
31
    FakeMouse.keyUp = FakeMouse.KeyUp
32
    FakeMouse.keyDown = FakeMouse.KeyDown
33
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
34
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
35
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
36
	end}
37
	--Merged 2 functions into one by checking amount of arguments
38
	CAS.UnbindAction = CAS.BindAction
39
40
	--This function will trigger the events that have been :Connect()'ed
41
	local function TriggerEvent(self,ev,...)
42
		for _,f in pairs(self[ev].Functions) do
43
			f(...)
44
		end
45
	end
46
	FakeMouse.TriggerEvent = TriggerEvent
47
	UIS.TriggerEvent = TriggerEvent
48
49
	--Client communication
50
	local Event = Instance.new("RemoteEvent")
51
	Event.Name = "UserInput_Event"
52
	Event.OnServerEvent:Connect(function(plr,io)
53
	    if plr~=RealPlayer then return end
54
		FakeMouse.Target = io.Target
55
		FakeMouse.Hit = io.Hit
56
		if not io.isMouse then
57
			local b = io.UserInputState == Enum.UserInputState.Begin
58
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
59
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
60
			end
61
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
62
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
63
			end
64
			for _,t in pairs(CAS.Actions) do
65
				for _,k in pairs(t.Keys) do
66
					if k==io.KeyCode then
67
						t.Function(t.Name,io.UserInputState,io)
68
					end
69
				end
70
			end
71
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
72
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
73
	    end
74
	end)
75
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
76
	local Mouse = owner:GetMouse()
77
	local UIS = game:GetService("UserInputService")
78
	local input = function(io,RobloxHandled)
79
		if RobloxHandled then return end
80
		--Since InputObject is a client-side instance, we create and pass table instead
81
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
82
	end
83
	UIS.InputBegan:Connect(input)
84
	UIS.InputEnded:Connect(input)
85
	local h,t
86
	--Give the server mouse data every second frame, but only if the values changed
87
	--If player is not moving their mouse, client won't fire events
88
	local HB = game:GetService("RunService").Heartbeat
89
	while true do
90
		if h~=Mouse.Hit or t~=Mouse.Target then
91
			h,t=Mouse.Hit,Mouse.Target
92
			Event:FireServer({isMouse=true,Target=t,Hit=h})
93
		end
94
		--Wait 2 frames
95
		for i=1,2 do
96
			HB:Wait()
97
		end
98
	end]==],script)
99
100
	----Sandboxed game object that allows the usage of client-side methods and services
101
	--Real game object
102
	local RealGame = game
103
104
	--Metatable for fake service
105
	local FakeService_Metatable = {
106
		__index = function(self,k)
107
			local s = rawget(self,"_RealService")
108
			if s then
109
				return typeof(s[k])=="function"
110
				and function(_,...)return s[k](s,...)end or s[k]
111
			end
112
		end,
113
		__newindex = function(self,k,v)
114
			local s = rawget(self,"_RealService")
115
			if s then s[k]=v end
116
		end
117
	}
118
	local function FakeService(t,RealService)
119
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
120
		return setmetatable(t,FakeService_Metatable)
121
	end
122
123
	--Fake game object
124
	local FakeGame = {
125
		GetService = function(self,s)
126
			return rawget(self,s) or RealGame:GetService(s)
127
		end,
128
		Players = FakeService({
129
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
130
		},"Players"),
131
		UserInputService = FakeService(UIS,"UserInputService"),
132
		ContextActionService = FakeService(CAS,"ContextActionService"),
133
		RunService = FakeService({
134
			_btrs = {},
135
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
136
			BindToRenderStep = function(self,name,_,fun)
137
				self._btrs[name] = self.Heartbeat:Connect(fun)
138
			end,
139
			UnbindFromRenderStep = function(self,name)
140
				self._btrs[name]:Disconnect()
141
			end,
142
		},"RunService")
143
	}
144
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
145
	FakeGame.service = FakeGame.GetService
146
	FakeService(FakeGame,game)
147
	--Changing owner to fake player object to support owner:GetMouse()
148
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
149
end
150
print("edited by 3677272ALT") 
151
 wait(0.016666666666666666)
152
plr = game.Players.LocalPlayer
153
mse = plr:GetMouse()
154
sound = Instance.new("Sound", game.Workspace)
155
sound.SoundId = "https://www.roblox.com/asset/?id=840567549"
156
canworld = true
157
mse.KeyDown:connect(function(key)
158
	key = key:lower()
159
	if key == "g" then
160
		if canworld == false then return end
161
		if canworld then
162
		canworld = false
163
		sound:Play()
164
		local function spawnpart()
165
		sphere = Instance.new("Part")
166
		--game.Debris:AddItem(sphere,3)
167
		local sm = Instance.new("SpecialMesh", sphere)
168
		sm.MeshType = "Sphere"
169
		sphere.Transparency = 0.5
170
		sphere.Anchored = true
171
		sphere.CanCollide = false
172
		sphere.Material = "SmoothPlastic"
173
		sphere.BrickColor = BrickColor.new("Lapis")
174
		end
175
		
176
		local function weld(lol)
177
			local weld = Instance.new("Weld", plr.Character.Torso)
178
			weld.Part0 = plr.Character.Torso
179
			weld.Part1 = lol
180
			weld.C0 = plr.Character.Torso.CFrame:inverse()
181
			weld.C1 = lol.CFrame:inverse()
182
		end
183
		wait(1.4)
184
		spawnpart()
185
			for i, v in pairs(game.Players:GetChildren()) do
186
			t = v.Character:FindFirstChild("Torso")
187
			if t then
188
				t.Anchored = true
189
				plr.Character:FindFirstChild("Torso").Anchored = false
190
			end
191
			RA = v.Character:FindFirstChild("Right Arm")
192
			if RA then
193
				RA.Anchored = true
194
				plr.Character:FindFirstChild("Right Arm").Anchored = false
195
			end
196
			LA = v.Character:FindFirstChild("Left Arm")
197
			if LA then
198
				LA.Anchored = true
199
				plr.Character:FindFirstChild("Left Arm").Anchored = false
200
			end
201
			RL = v.Character:FindFirstChild("Right Leg")
202
			if RL then
203
				RL.Anchored = true
204
				plr.Character:FindFirstChild("Right Leg").Anchored = false
205
			end
206
			LL = v.Character:FindFirstChild("Left Leg")
207
			if LL then
208
				LL.Anchored = true
209
				plr.Character:FindFirstChild("Left Leg").Anchored = false
210
			end
211
		end
212
		weld(sphere)
213
		cce = Instance.new("ColorCorrectionEffect", game.Lighting)
214
		cce.Saturation = -2
215
		--game.Debris:AddItem(cce, 5)
216
		sphere.Parent = game.Workspace
217
		for i = 1,10 do
218
			sphere.Size = sphere.Size + Vector3.new(50,50,50)
219
			wait()
220
			end
221
		--wait(5)
222
		
223
		end
224
	end
225
end
226
)
227
228
mse.KeyDown:connect(function(key)
229
	key = key:lower()
230
	if key == "h" then
231
canworld = true
232
		for i, v in pairs(game.Players:GetChildren()) do
233
		t = v.Character:FindFirstChild("Torso")
234
			if t then
235
				t.Anchored = false
236
			end
237
			RA = v.Character:FindFirstChild("Right Arm")
238
			if RA then
239
				RA.Anchored = false
240
			end
241
			LA = v.Character:FindFirstChild("Left Arm")
242
			if LA then
243
				LA.Anchored = false
244
			end
245
			RL = v.Character:FindFirstChild("Right Leg")
246
			if RL then
247
				RL.Anchored = false
248
			end
249
			LL = v.Character:FindFirstChild("Left Leg")
250
			if LL then
251
				LL.Anchored = false
252
			end
253
		end
254
		cce.Saturation = 0
255
sphere:Destroy()
256
end
257
end)
258
259
  Effects = {}
260
  local Player = game.Players.localPlayer
261
  local Character = Player.Character
262
  Character.Archivable = true
263
  AdvancingFortress = Character:Clone()
264
  AdvancingFortress.Parent = Character
265
  torso = AdvancingFortress.Torso
266
  hum = AdvancingFortress.Humanoid
267
  AdvancingFortress.Name = "Advancing Fortress"
268
  pl = AdvancingFortress
269
  for i, v in pairs(AdvancingFortress:GetChildren()) do
270
    if v:IsA("BasePart") then
271
      v.Transparency = 1
272
    end
273
  end
274
  local Humanoid = AdvancingFortress.Humanoid
275
  local Mouse = Player:GetMouse()
276
  local LeftArm = AdvancingFortress["Left Arm"]
277
  local RightArm = AdvancingFortress["Right Arm"]
278
  local LeftLeg = AdvancingFortress["Left Leg"]
279
  local RightLeg = AdvancingFortress["Right Leg"]
280
  local Head = AdvancingFortress.Head
281
  local Torso = AdvancingFortress.Torso
282
  local Camera = game.Workspace.CurrentCamera
283
  local RootPart = AdvancingFortress.HumanoidRootPart
284
  local RootJoint = RootPart.RootJoint
285
  local attack = false
286
  local Anim = "Idle"
287
  local attacktype = 1
288
  local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
289
  local velocity = RootPart.Velocity.y
290
  local sine = 0
291
  local change = 1
292
  local Create = LoadLibrary("RbxUtility").Create
293
  local TimeStop = false
294
  local m = Create("Model")({
295
    Parent = AdvancingFortress,
296
    Name = "WeaponModel"
297
  })
298
  Head.face:remove()
299
  AdvancingFortress.Head.Name = "FHead"
300
  AdvancingFortress.Torso.Name = "FTorso"
301
  AdvancingFortress.HumanoidRootPart.Name = "FHumanoidRootPart"
302
  Humanoid.Animator.Parent = nil
303
  AdvancingFortress.Animate.Parent = nil
304
  local function newMotor(part0, part1, c0, c1)
305
    local w = Create("Weld")({
306
      Parent = part0,
307
      Part0 = part0,
308
      Part1 = part1,
309
      C0 = c0,
310
      C1 = c1
311
    })
312
    return w
313
  end
314
  function clerp(a, b, t)
315
    return a:lerp(b, t)
316
  end
317
  RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
318
  NeckCF = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
319
  local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
320
  local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
321
  local RH = newMotor(Torso, RightLeg, CFrame.new(0.5, -2, 0), CFrame.new(0, 0, 0))
322
  local LH = newMotor(Torso, LeftLeg, CFrame.new(-0.5, -2, 0), CFrame.new(0, 0, 0))
323
  RootJoint.C1 = CFrame.new(0, 0, 0)
324
  RootJoint.C0 = CFrame.new(0, 0, 0)
325
  Torso.Neck.C1 = CFrame.new(0, 0, 0)
326
  Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
327
  local rarmc1 = RW.C1
328
  local larmc1 = LW.C1
329
  local rlegc1 = RH.C1
330
  local llegc1 = LH.C1
331
  local resetc1 = false
332
  function PlayAnimationFromTable(table, speed, bool)
333
    RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
334
    Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
335
    RW.C0 = clerp(RW.C0, table[3], speed)
336
    LW.C0 = clerp(LW.C0, table[4], speed)
337
    RH.C0 = clerp(RH.C0, table[5], speed)
338
    LH.C0 = clerp(LH.C0, table[6], speed)
339
    if bool == true and resetc1 == false then
340
      resetc1 = true
341
      RootJoint.C1 = RootJoint.C1
342
      Torso.Neck.C1 = Torso.Neck.C1
343
      RW.C1 = rarmc1
344
      LW.C1 = larmc1
345
      RH.C1 = rlegc1
346
      LH.C1 = llegc1
347
    end
348
  end
349
  ArtificialHB = Create("BindableEvent", script)({Parent = script, Name = "Heartbeat"})
350
  script:WaitForChild("Heartbeat")
351
  frame = 0.03333333333333333
352
  tf = 0
353
  allowframeloss = false
354
  tossremainder = false
355
  lastframe = tick()
356
  script.Heartbeat:Fire()
357
  game:GetService("RunService").Heartbeat:connect(function(s, p)
358
    tf = tf + s
359
    if tf >= frame then
360
      if allowframeloss then
361
        script.Heartbeat:Fire()
362
        lastframe = tick()
363
      else
364
        for i = 1, math.floor(tf / frame) do
365
          script.Heartbeat:Fire()
366
        end
367
        lastframe = tick()
368
      end
369
      if tossremainder then
370
        tf = 0
371
      else
372
        tf = tf - frame * math.floor(tf / frame)
373
      end
374
    end
375
  end)
376
  function swait(num)
377
    if num == 0 or num == nil then
378
      ArtificialHB.Event:wait()
379
    else
380
      for i = 0, num do
381
        ArtificialHB.Event:wait()
382
      end
383
    end
384
  end
385
  function RemoveOutlines(part)
386
    part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
387
  end
388
  CFuncs = {
389
    Part = {
390
      Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
391
        local Part = Create("Part")({
392
          Parent = Parent,
393
          Reflectance = Reflectance,
394
          Transparency = Transparency,
395
          CanCollide = false,
396
          Locked = true,
397
          BrickColor = BrickColor.new(tostring(BColor)),
398
          Name = Name,
399
          Size = Size,
400
          Material = Material
401
        })
402
        RemoveOutlines(Part)
403
        return Part
404
      end
405
    },
406
    Mesh = {
407
      Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
408
        local Msh = Create(Mesh)({
409
          Parent = Part,
410
          Offset = OffSet,
411
          Scale = Scale
412
        })
413
        if Mesh == "SpecialMesh" then
414
          Msh.MeshType = MeshType
415
          Msh.MeshId = MeshId
416
        end
417
        return Msh
418
      end
419
    },
420
    Weld = {
421
      Create = function(Parent, Part0, Part1, C0, C1)
422
        local Weld = Create("Weld")({
423
          Parent = Parent,
424
          Part0 = Part0,
425
          Part1 = Part1,
426
          C0 = C0,
427
          C1 = C1
428
        })
429
        return Weld
430
      end
431
    },
432
    Sound = {
433
      Create = function(id, par, vol, pit)
434
        local Sound = Create("Sound")({
435
          Volume = vol,
436
          Pitch = pit or 1,
437
          SoundId = "rbxassetid://" .. id,
438
          Parent = par or workspace
439
        })
440
        Sound:play()
441
        game:GetService("Debris"):AddItem(Sound, 130)
442
        return Sound
443
      end
444
    },
445
    Decal = {
446
      Create = function(Color, Texture, Transparency, Name, Parent)
447
        local Decal = Create("Decal")({
448
          Color3 = Color,
449
          Texture = "rbxassetid://" .. Texture,
450
          Transparency = Transparency,
451
          Name = Name,
452
          Parent = Parent
453
        })
454
        return Decal
455
      end
456
    },
457
    BillboardGui = {
458
      Create = function(Parent, Image, Position, Size)
459
        local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
460
        BillPar.CFrame = CFrame.new(Position)
461
        local Bill = Create("BillboardGui")({
462
          Parent = BillPar,
463
          Adornee = BillPar,
464
          Size = UDim2.new(1, 0, 1, 0),
465
          SizeOffset = Vector2.new(Size, Size)
466
        })
467
        local d = Create("ImageLabel", Bill)({
468
          Parent = Bill,
469
          BackgroundTransparency = 1,
470
          Size = UDim2.new(1, 0, 1, 0),
471
          Image = "rbxassetid://" .. Image
472
        })
473
        return BillPar
474
      end
475
    },
476
    ParticleEmitter = {
477
      Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
478
        local Particle = Create("ParticleEmitter")({
479
          Parent = Parent,
480
          Color = ColorSequence.new(Color1, Color2),
481
          LightEmission = LightEmission,
482
          Size = Size,
483
          Texture = Texture,
484
          Transparency = Transparency,
485
          ZOffset = ZOffset,
486
          Acceleration = Accel,
487
          Drag = Drag,
488
          LockedToPart = LockedToPart,
489
          VelocityInheritance = VelocityInheritance,
490
          EmissionDirection = EmissionDirection,
491
          Enabled = Enabled,
492
          Lifetime = LifeTime,
493
          Rate = Rate,
494
          Rotation = Rotation,
495
          RotSpeed = RotSpeed,
496
          Speed = Speed,
497
          VelocitySpread = VelocitySpread
498
        })
499
        return Particle
500
      end
501
    },
502
    CreateTemplate = {}
503
  }
504
  function rayCast(Position, Direction, Range, Ignore)
505
    return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
506
  end
507
  function FindNearestTorso(pos)
508
    local list = game.Workspace:children()
509
    local torso
510
    local dist = 1000
511
    local temp, human, temp2
512
    for x = 1, #list do
513
      temp2 = list[x]
514
      if temp2.className == "Model" and temp2.Name ~= Character.Name then
515
        temp = temp2:findFirstChild("Torso")
516
        human = temp2:findFirstChild("Humanoid")
517
        if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
518
          local dohit = true
519
          if dohit == true then
520
            torso = temp
521
            dist = (temp.Position - pos).magnitude
522
          end
523
        end
524
      end
525
    end
526
    return torso, dist
527
  end
528
  function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
529
    if hit.Parent == nil then
530
      return
531
    end
532
    local h = hit.Parent:FindFirstChild("Humanoid")
533
    for _, v in pairs(hit.Parent:children()) do
534
      if v:IsA("Humanoid") then
535
        h = v
536
      end
537
    end
538
    if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
539
      if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
540
        return
541
      end
542
      local c = Create("ObjectValue")({
543
        Name = "creator",
544
        Value = game:service("Players").LocalPlayer,
545
        Parent = h
546
      })
547
      game:GetService("Debris"):AddItem(c, 0.5)
548
      CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
549
      local Damage = math.random(minim, maxim)
550
      local blocked = false
551
      local block = hit.Parent:findFirstChild("Block")
552
      if block ~= nil and block.className == "IntValue" and block.Value > 0 then
553
        blocked = true
554
        block.Value = block.Value - 1
555
        print(block.Value)
556
      end
557
      if TimeStop == false then
558
        h.Health = h.Health - Damage
559
        ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Royal purple").Color)
560
      elseif TimeStop == true then
561
        repeat
562
          wait()
563
        until TimeStop == false
564
        h.Health = h.Health - Damage / 2
565
        ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Royal purple").Color)
566
      end
567
      if Type == "Knockdown" then
568
        local hum = hit.Parent.Humanoid
569
        hum.PlatformStand = true
570
        coroutine.resume(coroutine.create(function(HHumanoid)
571
          swait(1)
572
          HHumanoid.PlatformStand = false
573
        end), hum)
574
        local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
575
        local bodvol = Create("BodyVelocity")({
576
          velocity = angle * knockback,
577
          P = 5000,
578
          maxForce = Vector3.new(8000, 8000, 8000),
579
          Parent = hit
580
        })
581
        local rl = Create("BodyAngularVelocity")({
582
          P = 3000,
583
          maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
584
          angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
585
          Parent = hit
586
        })
587
        game:GetService("Debris"):AddItem(bodvol, 0.5)
588
        game:GetService("Debris"):AddItem(rl, 0.5)
589
      elseif Type == "Normal" then
590
        local vp = Create("BodyVelocity")({
591
          P = 500,
592
          maxForce = Vector3.new(math.huge, 0, math.huge),
593
          velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
594
        })
595
        if knockback > 0 then
596
          vp.Parent = hit.Parent.Torso
597
        end
598
        game:GetService("Debris"):AddItem(vp, 0.5)
599
      elseif Type == "Up" then
600
        local bodyVelocity = Create("BodyVelocity")({
601
          velocity = Vector3.new(0, 20, 0),
602
          P = 5000,
603
          maxForce = Vector3.new(8000, 8000, 8000),
604
          Parent = hit
605
        })
606
        game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
607
      elseif Type == "DarkUp" then
608
        coroutine.resume(coroutine.create(function()
609
          for i = 0, 1, 0.1 do
610
            swait()
611
            Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, 0.08, 1)
612
          end
613
        end))
614
        local bodyVelocity = Create("BodyVelocity")({
615
          velocity = Vector3.new(0, 20, 0),
616
          P = 5000,
617
          maxForce = Vector3.new(8000, 8000, 8000),
618
          Parent = hit
619
        })
620
        game:GetService("Debris"):AddItem(bodyVelocity, 1)
621
      elseif Type == "Snare" then
622
        local bp = Create("BodyPosition")({
623
          P = 2000,
624
          D = 100,
625
          maxForce = Vector3.new(math.huge, math.huge, math.huge),
626
          position = hit.Parent.Torso.Position,
627
          Parent = hit.Parent.Torso
628
        })
629
        game:GetService("Debris"):AddItem(bp, 1)
630
      elseif Type == "Freeze" then
631
        local BodPos = Create("BodyPosition")({
632
          P = 50000,
633
          D = 1000,
634
          maxForce = Vector3.new(math.huge, math.huge, math.huge),
635
          position = hit.Parent.Torso.Position,
636
          Parent = hit.Parent.Torso
637
        })
638
        local BodGy = Create("BodyGyro")({
639
          maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
640
          P = 20000,
641
          Parent = hit.Parent.Torso,
642
          cframe = hit.Parent.Torso.CFrame
643
        })
644
        hit.Parent.Torso.Anchored = true
645
        coroutine.resume(coroutine.create(function(Part)
646
          swait(1.5)
647
          Part.Anchored = false
648
        end), hit.Parent.Torso)
649
        game:GetService("Debris"):AddItem(BodPos, 3)
650
        game:GetService("Debris"):AddItem(BodGy, 3)
651
      end
652
      local debounce = Create("BoolValue")({
653
        Name = "DebounceHit",
654
        Parent = hit.Parent,
655
        Value = true
656
      })
657
      game:GetService("Debris"):AddItem(debounce, Delay)
658
      c = Create("ObjectValue")({
659
        Name = "creator",
660
        Value = Player,
661
        Parent = h
662
      })
663
      game:GetService("Debris"):AddItem(c, 0.5)
664
    end
665
  end
666
  function ShowDamage(Pos, Text, Time, Color)
667
    local Rate = 0.03333333333333333
668
    local Pos = Pos or Vector3.new(0, 0, 0)
669
    local Text = Text or ""
670
    local Time = Time or 2
671
    local Color = Color or Color3.new(1, 0, 1)
672
    local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
673
    EffectPart.Anchored = true
674
    local BillboardGui = Create("BillboardGui")({
675
      Size = UDim2.new(3, 0, 3, 0),
676
      Adornee = EffectPart,
677
      Parent = EffectPart
678
    })
679
    local TextLabel = Create("TextLabel")({
680
      BackgroundTransparency = 1,
681
      Size = UDim2.new(1, 0, 1, 0),
682
      Text = Text,
683
      Font = "SciFi",
684
      TextColor3 = Color,
685
      TextScaled = true,
686
      Parent = BillboardGui
687
    })
688
    game.Debris:AddItem(EffectPart, Time)
689
    EffectPart.Parent = game:GetService("Workspace")
690
    delay(0, function()
691
      local Frames = Time / Rate
692
      for Frame = 1, Frames do
693
        wait(Rate)
694
        local Percent = Frame / Frames
695
        EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
696
        TextLabel.TextTransparency = Percent
697
      end
698
      if EffectPart and EffectPart.Parent then
699
        EffectPart:Destroy()
700
      end
701
    end)
702
  end
703
  local STDamage = false
704
  function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
705
    for _, c in pairs(workspace:children()) do
706
      local hum = c:findFirstChild("Humanoid")
707
      if hum ~= nil then
708
        local head = c:findFirstChild("Torso")
709
        if head ~= nil then
710
          local targ = head.Position - Part.Position
711
          local mag = targ.magnitude
712
          if Magnitude >= mag and c.Name ~= Player.Name then
713
            Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, 0.1, HitSound, HitPitch)
714
            if STDamage == true then
715
              for i = 1, 3 do
716
                Effects.Block.Create(BrickColor.new("Royal purple"), head.CFrame, 1, 1, 1, 4, 4, 4, 0.07, 1)
717
              end
718
              for i = 1, 10 do
719
                CamShake(1, 70000)
720
                Effects.Break.Create(BrickColor.new("Royal purple"), head.CFrame, 1, 1, 1)
721
              end
722
            elseif STDamage == false then
723
              CamShake(1, 90000)
724
              Effects.Block.Create(BrickColor.new("Royal purple"), head.CFrame, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.07, 1)
725
              for i = 1, 2 do
726
                Effects.Break.Create(BrickColor.new("Royal purple"), head.CFrame, 0.4, 0.4, 0.4)
727
              end
728
            end
729
          end
730
        end
731
      end
732
    end
733
  end
734
  HHandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "HHandle", Vector3.new(1.09999979, 0.299999923, 1.0999999))
735
  HHandleWeld = CFuncs.Weld.Create(m, Head, HHandle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0646438599, -0.0500068665, -0.0646400452, -0.707107365, -3.21031663E-8, 0.707106411, -8.19564079E-8, 1.00000119, -1.41561088E-7, -0.707106352, 1.38630043E-7, -0.707107484))
736
  Eye1 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "cool yellow", "Eye1", Vector3.new(0.400000006, 0.200000003, 0.200000003))
737
  PartWeld = CFuncs.Weld.Create(m, HHandle, Eye1, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0381011963, -0.0574798584, 0.471725464, -2.89082527E-6, 0.173647985, -0.984807968, -6.2584877E-7, 0.984808922, 0.173648104, 1.00000012, 1.02902288E-6, -2.77161598E-6))
738
  CFuncs.Mesh.Create("SpecialMesh", Eye1, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
739
  Eye2 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "Cool yellow", "Eye2", Vector3.new(0.400000006, 0.200000003, 0.200000003))
740
  PartWeld = CFuncs.Weld.Create(m, HHandle, Eye2, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0115432739, -0.0487277508, 0.482452393, -0.981060266, -0.173648134, -0.0858327746, -0.172987267, 0.984808922, -0.0151339322, 0.0871568322, 3.96735317E-7, -0.996194839))
741
  CFuncs.Mesh.Create("SpecialMesh", Eye2, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
742
  THandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "THandle", Vector3.new(1, 0.799999893, 1))
743
  THandleWeld = CFuncs.Weld.Create(m, Torso, THandle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
744
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.80000019, 0.300000012, 1.80000007))
745
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-6.10351563E-5, -1.04342794, -0.404396057, 1, -8.19564079E-8, 5.96046519E-8, -1.01078633E-7, 0.939694166, -0.342019171, 1.52638329E-8, 0.34201926, 0.939693213))
746
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
747
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 1.10000002, 0.300000012))
748
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-5.34057617E-5, -0.943422318, -1.35441589, 1, -8.19564079E-8, 5.96046519E-8, -1.01078633E-7, 0.939694166, -0.342019171, 1.52638329E-8, 0.34201926, 0.939693213))
749
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
750
  AHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "AHandleR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
751
  AHandleRWeld = CFuncs.Weld.Create(m, RightArm, AHandleR, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.209915161, 0.00999641418, -3.81469727E-6, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
752
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
753
  PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0999984741, 0.550004005, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
754
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
755
  PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.150001526, 0.200003624, -0.359994888, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
756
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
757
  PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149993896, 0.20000267, 0.359992981, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
758
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
759
  PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.209899902, -0.809997559, 5.7220459E-6, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
760
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
761
  PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.300003052, 0.650004387, 1.71661377E-5, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
762
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
763
  PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149993896, 0.650003433, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
764
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
765
  PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199996948, -0.049996376, -3.81469727E-6, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
766
  HitboxR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "HitboxR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
767
  HitboxRWeld = CFuncs.Weld.Create(m, AHandleR, HitboxR, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.700003624, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
768
  AHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "AHandleL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
769
  AHandleLWeld = CFuncs.Weld.Create(m, LeftArm, AHandleL, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.210014343, 0.00999736786, 1.14440918E-5, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
770
  HitboxL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "HitboxL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
771
  HitboxLWeld = CFuncs.Weld.Create(m, AHandleL, HitboxL, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.700003624, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
772
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
773
  PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149986267, 0.200001717, -0.360012054, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
774
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
775
  PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199989319, -0.0499982834, -9.53674316E-6, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
776
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
777
  PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149986267, 0.200001717, 0.359992981, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
778
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
779
  PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.21005249, -0.81000042, 2.28881836E-5, -1, -8.19564079E-8, -5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, -5.96046519E-8, -1.41561088E-7, -1.00000024))
780
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
781
  PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0999984741, 0.550003052, -5.7220459E-6, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
782
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
783
  PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.299995422, 0.650003433, -3.81469727E-6, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
784
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
785
  PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149993896, 0.65000248, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
786
  LHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "LHandleR", Vector3.new(1.02999997, 1.00999999, 1.19000006))
787
  LHandleRWeld = CFuncs.Weld.Create(m, RightLeg, LHandleR, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00498962402, -0.0950021744, 0.00499534607, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
788
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000012, 0.800000012, 0.200000003))
789
  PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00498962402, -0.00499916077, -0.604999542, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
790
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
791
  PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.600002289, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
792
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
793
  PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, -0.454998016, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
794
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.400000006, 1.20000005, 0.200000003))
795
  PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00499725342, -0.00499916077, -0.604999542, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
796
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
797
  PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00499725342, 0.0149993896, 0.00500297546, 2.28095047E-7, 1.00000775, 2.99581131E-7, -1.00000417, 5.63755016E-8, -4.06898749E-7, -2.98379774E-7, 2.07959161E-8, 1.0000037))
798
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
799
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
800
  WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.604999542, -0.504998207, 0.29499054, -2.98023224E-8, -6.70552254E-8, -1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
801
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
802
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
803
  WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.60499382, -0.495001793, 0.305000305, -5.96046519E-8, -1.41561088E-7, -1.00000024, -8.19564079E-8, -1.00000119, -1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
804
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
805
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
806
  WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.604999542, -0.495001793, 0.29499054, 2.98023224E-8, 6.70552254E-8, 1.00000012, -3.7252903E-8, -1.0000006, -7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
807
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
808
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
809
  WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.604999542, -0.504998207, 0.305000305, 2.98023224E-8, 6.70552254E-8, 1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, -1, -4.47034836E-8, -2.98023224E-8))
810
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
811
  LHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "LHandleL", Vector3.new(1.02999997, 1.00999999, 1.19000006))
812
  LHandleLWeld = CFuncs.Weld.Create(m, LeftLeg, LHandleL, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00498199463, -0.095000267, 0.00502204895, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
813
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
814
  PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.600001335, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
815
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.400000006, 1.20000005, 0.300000012))
816
  PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00499725342, -0.00500106812, -0.554998398, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
817
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
818
  PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, -0.454999924, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
819
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
820
  PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00499534607, 0.0149993896, 0.00500297546, 2.28095047E-7, 1.00000775, 2.99581131E-7, -1.00000417, 5.63755016E-8, -4.06898749E-7, -2.98379774E-7, 2.07959161E-8, 1.0000037))
821
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
822
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000012, 0.800000012, 0.300000012))
823
  PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00498962402, -0.00500106812, -0.554998398, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
824
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
825
  WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.554998398, -0.505000114, 0.305000305, 2.98023224E-8, 6.70552254E-8, 1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, -1, -4.47034836E-8, -2.98023224E-8))
826
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
827
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
828
  WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.554998398, -0.505000114, 0.29499054, -2.98023224E-8, -6.70552254E-8, -1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
829
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
830
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
831
  WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.554998398, -0.494999886, 0.29499054, 2.98023224E-8, 6.70552254E-8, 1.00000012, -3.7252903E-8, -1.0000006, -7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
832
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
833
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
834
  WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.554998398, -0.494999886, 0.305000305, -5.96046519E-8, -1.41561088E-7, -1.00000024, -8.19564079E-8, -1.00000119, -1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
835
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
836
  Shield = CFuncs.Part.Create(m, "Neon", 0, 0.5, "Royal purple", "Part", Vector3.new(9.1, 8.5, 0.2))
837
  CFuncs.Mesh.Create("SpecialMesh", Shield, "FileMesh", "rbxassetid://708292865", Vector3.new(0, 0, 0), Vector3.new(0.04, 0.04, 0.04))
838
  Shield.Parent = nil
839
  EffectModel = Create("Model")({Parent = Character, Name = "Effects"})
840
  Effects = {
841
    Block = {
842
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
843
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
844
        prt.Anchored = true
845
        prt.CFrame = cframe
846
        local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
847
        game:GetService("Debris"):AddItem(prt, 10)
848
        if Type == 1 or Type == nil then
849
          table.insert(Effects, {
850
            prt,
851
            "Block1",
852
            delay,
853
            x3,
854
            y3,
855
            z3,
856
            msh
857
          })
858
        elseif Type == 2 then
859
          table.insert(Effects, {
860
            prt,
861
            "Block2",
862
            delay,
863
            x3,
864
            y3,
865
            z3,
866
            msh
867
          })
868
        end
869
      end
870
    },
871
    Cylinder = {
872
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
873
        local prt = CFuncs.Part .. Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
874
        prt.Anchored = true
875
        prt.CFrame = cframe
876
        local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
877
        game:GetService("Debris"):AddItem(prt, 2)
878
        Effects[#Effects + 1] = {
879
          prt,
880
          "Cylinder",
881
          delay,
882
          x3,
883
          y3,
884
          z3
885
        }
886
      end
887
    },
888
    Head = {
889
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
890
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
891
        prt.Anchored = true
892
        prt.CFrame = cframe
893
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "nil", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
894
        game:GetService("Debris"):AddItem(prt, 10)
895
        table.insert(Effects, {
896
          prt,
897
          "Cylinder",
898
          delay,
899
          x3,
900
          y3,
901
          z3,
902
          msh
903
        })
904
      end
905
    },
906
    Sphere = {
907
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
908
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
909
        prt.Anchored = true
910
        prt.CFrame = cframe
911
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
912
        game:GetService("Debris"):AddItem(prt, 10)
913
        table.insert(Effects, {
914
          prt,
915
          "Cylinder",
916
          delay,
917
          x3,
918
          y3,
919
          z3,
920
          msh
921
        })
922
      end
923
    },
924
    Sphere2 = {
925
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
926
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
927
        prt.Anchored = true
928
        prt.CFrame = cframe
929
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
930
        game:GetService("Debris"):AddItem(prt, 10)
931
        table.insert(Effects, {
932
          prt,
933
          "Cylinder",
934
          delay,
935
          x3,
936
          y3,
937
          z3,
938
          msh
939
        })
940
      end
941
    },
942
    Elec = {
943
      Create = function(cff, x, y, z)
944
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("Royal purple"), "Part", Vector3.new(1, 1, 1))
945
        prt.Anchored = true
946
        prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
947
        prt.CFrame = CFrame.new(prt.Position)
948
        game:GetService("Debris"):AddItem(prt, 2)
949
        local xval = math.random() / 2
950
        local yval = math.random() / 2
951
        local zval = math.random() / 2
952
        local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
953
        table.insert(Effects, {
954
          prt,
955
          "Elec",
956
          0.1,
957
          x,
958
          y,
959
          z,
960
          xval,
961
          yval,
962
          zval
963
        })
964
      end
965
    },
966
    Ring = {
967
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
968
        local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
969
        prt.Anchored = true
970
        prt.CFrame = cframe
971
        local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
972
        game:GetService("Debris"):AddItem(prt, 10)
973
        table.insert(Effects, {
974
          prt,
975
          "Cylinder",
976
          delay,
977
          x3,
978
          y3,
979
          z3,
980
          msh
981
        })
982
      end
983
    },
984
    Wave = {
985
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
986
        local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
987
        prt.Anchored = true
988
        prt.CFrame = cframe
989
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
990
        game:GetService("Debris"):AddItem(prt, 10)
991
        table.insert(Effects, {
992
          prt,
993
          "Cylinder",
994
          delay,
995
          x3,
996
          y3,
997
          z3,
998
          msh
999
        })
1000
      end
1001
    },
1002
    Break = {
1003
      Create = function(brickcolor, cframe, x1, y1, z1)
1004
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
1005
        prt.Anchored = true
1006
        prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1007
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1008
        local num = math.random(10, 50) / 1000
1009
        game:GetService("Debris"):AddItem(prt, 10)
1010
        table.insert(Effects, {
1011
          prt,
1012
          "Shatter",
1013
          num,
1014
          prt.CFrame,
1015
          math.random() - math.random(),
1016
          0,
1017
          math.random(50, 100) / 100
1018
        })
1019
      end
1020
    },
1021
    Fire = {
1022
      Create = function(brickcolor, cframe, x1, y1, z1, delay)
1023
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
1024
        prt.Anchored = true
1025
        prt.CFrame = cframe
1026
        msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1027
        game:GetService("Debris"):AddItem(prt, 10)
1028
        table.insert(Effects, {
1029
          prt,
1030
          "Fire",
1031
          delay,
1032
          1,
1033
          1,
1034
          1,
1035
          msh
1036
        })
1037
      end
1038
    },
1039
    FireWave = {
1040
      Create = function(brickcolor, cframe, x1, y1, z1)
1041
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
1042
        prt.Anchored = true
1043
        prt.CFrame = cframe
1044
        msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1045
        local d = Create("Decal")({
1046
          Parent = prt,
1047
          Texture = "rbxassetid://26356434",
1048
          Face = "Top"
1049
        })
1050
        local d = Create("Decal")({
1051
          Parent = prt,
1052
          Texture = "rbxassetid://26356434",
1053
          Face = "Bottom"
1054
        })
1055
        game:GetService("Debris"):AddItem(prt, 10)
1056
        table.insert(Effects, {
1057
          prt,
1058
          "FireWave",
1059
          1,
1060
          30,
1061
          math.random(400, 600) / 100,
1062
          msh
1063
        })
1064
      end
1065
    },
1066
    Lightning = {
1067
      Create = function(p0, p1, tym, ofs, col, th, tra, last)
1068
        local magz = (p0 - p1).magnitude
1069
        local curpos = p0
1070
        local trz = {
1071
          -ofs,
1072
          ofs
1073
        }
1074
        for i = 1, tym do
1075
          local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
1076
          local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
1077
          local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
1078
          li.Material = "Neon"
1079
          if tym == i then
1080
            local magz2 = (curpos - p1).magnitude
1081
            li.Size = Vector3.new(th, th, magz2)
1082
            li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
1083
            table.insert(Effects, {
1084
              li,
1085
              "Disappear",
1086
              last
1087
            })
1088
          else
1089
            li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
1090
            curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
1091
            game.Debris:AddItem(li, 10)
1092
            table.insert(Effects, {
1093
              li,
1094
              "Disappear",
1095
              last
1096
            })
1097
          end
1098
        end
1099
      end
1100
    },
1101
    EffectTemplate = {}
1102
  }
1103
  local Invisible = true
1104
  function Reappear()
1105
    for _, i in pairs(AdvancingFortress:children()) do
1106
      if i:IsA("BasePart") then
1107
        coroutine.resume(coroutine.create(function(Part)
1108
          for i = 0, 1, 0.3 do
1109
            swait()
1110
            Part.Transparency = -i
1111
          end
1112
          Part.Transparency = 0
1113
        end), i)
1114
      end
1115
    end
1116
    for _, i in pairs(m:children()) do
1117
      if i:IsA("BasePart") then
1118
        coroutine.resume(coroutine.create(function(Part)
1119
          for i = 0, 1, 0.3 do
1120
            swait()
1121
            Part.Transparency = i
1122
          end
1123
          Part.Transparency = 0
1124
        end), i)
1125
      end
1126
    end
1127
  end
1128
  function ReappearArmorOnly()
1129
    for _, i in pairs(m:children()) do
1130
      if i:IsA("BasePart") then
1131
        coroutine.resume(coroutine.create(function(Part)
1132
          for i = 0, 1, 0.3 do
1133
            swait()
1134
            Part.Transparency = i
1135
          end
1136
          Part.Transparency = 0
1137
        end), i)
1138
      end
1139
    end
1140
  end
1141
  function Disappear()
1142
    for _, i in pairs(AdvancingFortress:children()) do
1143
      if i:IsA("BasePart") then
1144
        coroutine.resume(coroutine.create(function(Part)
1145
          for i = 0, 1, 0.3 do
1146
            swait()
1147
            Part.Transparency = i
1148
          end
1149
          Part.Transparency = 1
1150
        end), i)
1151
      end
1152
    end
1153
    for _, i in pairs(m:children()) do
1154
      if i:IsA("BasePart") then
1155
        coroutine.resume(coroutine.create(function(Part)
1156
          for i = 0, 1, 0.3 do
1157
            swait()
1158
            Part.Transparency = i
1159
          end
1160
          Part.Transparency = 1
1161
        end), i)
1162
      end
1163
    end
1164
  end
1165
  function DisappearArmorOnly()
1166
    for _, i in pairs(m:children()) do
1167
      if i:IsA("BasePart") then
1168
        coroutine.resume(coroutine.create(function(Part)
1169
          for i = 0, 1, 0.3 do
1170
            swait()
1171
            Part.Transparency = i
1172
          end
1173
          Part.Transparency = 1
1174
        end), i)
1175
      end
1176
    end
1177
  end
1178
  function CamShake(time, freq)
1179
    coroutine.resume(coroutine.create(function()
1180
      local cam = game:GetService("Workspace").CurrentCamera
1181
      local time = 10
1182
      local seed = Vector3.new(math.random(100, 200) / freq, math.random(100, 200) / freq, 0)
1183
      if math.random(1, 2) == 1 then
1184
        seed = Vector3.new(-seed.x, seed.y, 0)
1185
      end
1186
      if math.random(1, 2) == 1 then
1187
        seed = Vector3.new(seed.x, -seed.y, 0)
1188
      end
1189
      cam.CoordinateFrame = CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(seed.x * time, seed.y * time, 0) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude)
1190
      for i = 1, time do
1191
        cam.CoordinateFrame = CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(-seed.x, -seed.y, 0) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude)
1192
        wait()
1193
      end
1194
    end))
1195
  end
1196
  local ora = false
1197
  function ORA()
1198
    attack = true
1199
    local S = CFuncs.Sound.Create("161823027", Torso, 1, 1)
1200
    S.Looped = true
1201
    if ora == true then
1202
      while ora == true do
1203
        CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
1204
        MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
1205
        for i = 0, 1, 0.8 do
1206
          swait()
1207
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1208
          PlayAnimationFromTable({
1209
            CFrame.new(-0.561874092, -0.346845925, -0.435822666, 0.64278698, -0.323744029, 0.694272816, 0, 0.906308115, 0.422617555, -0.766044974, -0.271653026, 0.582563102) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1210
            CFrame.new(8.9481473E-6, 1.49999249, 5.2684918E-6, 0.704669476, 0.0560214818, -0.707321048, -0.0868221819, 0.996195257, -0.0075956285, 0.704204142, 0.0667634308, 0.706852198) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1211
            CFrame.new(1.97048378, 0.808467984, -0.254994273, -0.457079947, -0.7819345, 0.423859, 0.842444837, -0.227779076, 0.488266319, -0.285246044, 0.580254436, 0.762849629) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1212
            CFrame.new(-1.18535733, 0.530705392, -0.713678956, 0.778861284, -0.400152355, 0.482962847, 0.492400557, -0.0868335962, -0.866026342, 0.388479888, 0.912325621, 0.129403993) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1213
            CFrame.new(0.708622813, -1.45549953, -0.199998885, 0.984808087, -0.167729571, -0.0449446738, 0.173646823, 0.951251328, 0.254887581, 1.4603138E-6, -0.258819878, 0.965925694) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1214
            CFrame.new(-0.604502141, -1.943735, 5.15520573E-4, 0.982544005, 0.00845471025, 0.185841322, -0.0717865527, 0.938827574, 0.336824685, -0.17162481, -0.34428525, 0.923045695) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1215
          }, 0.8, false)
1216
        end
1217
        CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
1218
        MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
1219
        for i = 0, 1, 0.8 do
1220
          swait()
1221
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1222
          PlayAnimationFromTable({
1223
            CFrame.new(1.1920929E-6, -0.0170394331, -0.52941519, 0.70710516, -2.21270369E-7, -0.707108498, 0.18301405, 0.965925574, 0.183012888, 0.683014154, -0.258820117, 0.683010995) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1224
            CFrame.new(-1.22189522E-6, 1.49999356, 1.04308128E-6, 0.707110465, 0.122788236, 0.696360528, -1.4748274E-6, 0.98480773, -0.173648238, -0.707103193, 0.122787461, 0.696368098) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1225
            CFrame.new(1.44562268, 0.333473027, -0.475224167, 0.907739162, 0.217196256, 0.358959734, 0.40125221, -0.199453548, -0.893991232, -0.122576535, 0.955528319, -0.268199235) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1226
            CFrame.new(-1.884794, 0.881342709, -0.770847201, 0.0912726, 0.688403964, -0.719562054, -0.91795665, -0.221949756, -0.328776807, -0.386037856, 0.690535009, 0.611666858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1227
            CFrame.new(0.789779902, -1.8586235, 0.161380947, 0.965926766, -0.258817255, -8.10623169E-6, 0.243211254, 0.907672405, 0.342022836, -0.0885141194, -0.330371499, 0.939691722) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1228
            CFrame.new(-0.73783946, -1.45406294, -0.215006173, 0.882573366, -0.0180292428, 0.469829261, -0.163172901, 0.925412893, 0.342031717, -0.440952569, -0.378531486, 0.813802838) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1229
          }, 0.8, false)
1230
        end
1231
        CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
1232
        MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
1233
        for i = 0, 1, 0.8 do
1234
          swait()
1235
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1236
          PlayAnimationFromTable({
1237
            CFrame.new(0.215482175, -0.0393944569, -0.126133978, 0.259671897, -0.351393819, 0.8994959, -0.075478971, 0.921212733, 0.381667405, -0.962742627, -0.167001322, 0.212690249) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1238
            CFrame.new(-1.26510859E-5, 1.49999118, -2.16066837E-7, 0.420251548, -0.0215960592, -0.90715003, -0.100918382, 0.992402375, -0.0703775883, 0.901778162, 0.12112467, 0.414879382) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1239
            CFrame.new(1.81840861, 0.705381036, -0.347923756, -0.236346364, -0.883376777, 0.404705286, 0.945798516, -0.113677993, 0.304209948, -0.222726092, 0.454668403, 0.862362981) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1240
            CFrame.new(-1.21960759, 0.420275182, -0.728423595, -0.57802856, -0.255150676, 0.775100708, 0.665436089, -0.697164714, 0.266751111, 0.472311139, 0.669969678, 0.572767615) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1241
            CFrame.new(0.620917439, -1.53014767, -0.12091887, 0.707106113, 0.241845652, -0.66446346, -1.2293458E-6, 0.939692676, 0.342019886, 0.707107484, -0.241843566, 0.664462805) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1242
            CFrame.new(-0.873213649, -1.89646459, -0.100004375, 0.933012128, 0.353242815, -0.0686147735, -0.258823931, 0.791241407, 0.554028153, 0.249997303, -0.499155849, 0.829665601) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1243
          }, 0.8, false)
1244
        end
1245
        CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
1246
        MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
1247
        for i = 0, 1, 0.8 do
1248
          swait()
1249
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1250
          PlayAnimationFromTable({
1251
            CFrame.new(0.299998224, -0.0468490347, -0.211314023, 0.642786682, -2.87348001E-7, -0.766045272, 0.323744863, 0.906307757, 0.271653205, 0.694272637, -0.42261824, 0.582562685) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1252
            CFrame.new(2.71201134E-6, 1.4999969, 8.94069672E-7, 0.642777503, 0.133020476, 0.754416466, 4.31999706E-6, 0.984809279, -0.173647597, -0.766052961, 0.111620098, 0.633012772) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1253
            CFrame.new(1.27057993, 0.327670783, -0.599993467, 0.638493001, 0.280156553, -0.716825664, -0.769049883, 0.196164608, -0.608343422, -0.0298155248, 0.939697862, 0.340704083) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1254
            CFrame.new(-1.86040878, 1.02262986, -0.452570885, 0.386218816, 0.717701018, -0.579433978, -0.403004408, -0.433759809, -0.805879354, -0.829712272, 0.544763446, 0.121709965) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1255
            CFrame.new(0.779964924, -1.75316048, -0.0263362825, 0.826099217, -0.36394459, 0.43023771, 0.181541473, 0.894650102, 0.40822047, -0.533481896, -0.259124577, 0.805140793) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1256
            CFrame.new(-0.724003315, -1.47219872, -0.266945302, 0.766038954, -0.166370958, 0.620890498, 4.09781933E-6, 0.965925932, 0.258819997, -0.642794192, -0.198263675, 0.739937425) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1257
          }, 0.8, false)
1258
        end
1259
        CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
1260
        MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
1261
      end
1262
    end
1263
    S:Stop()
1264
    local S2 = CFuncs.Sound.Create("402454350", Torso, 1.5, 1)
1265
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1266
    for i = 0, 1, 0.13 do
1267
      swait()
1268
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -3), 0.5)
1269
      PlayAnimationFromTable({
1270
        CFrame.new(2.68220901E-6, -0.0739577487, 0.0232374109, 0.707105994, -3.47710994E-7, -0.707107604, -0.122787997, 0.98480767, -0.122788213, 0.696364999, 0.173648596, 0.696363389) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1271
        CFrame.new(-5.36441803E-7, 1.49999356, -1.28149986E-6, 0.707105994, -0.122788511, 0.696365297, -3.47710994E-7, 0.984808028, 0.173649326, -0.707107604, -0.122788727, 0.696363688) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1272
        CFrame.new(1.13747835, 0.382733107, -0.729447305, 0.579597414, 0.772029877, -0.260839432, -0.351051509, -0.0523141921, -0.934893906, -0.735411942, 0.633429527, 0.240701318) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1273
        CFrame.new(-1.53455412, 0.605712295, -0.542039633, 0.786121905, 0.427828372, -0.446066588, -0.606968522, 0.398195386, -0.687771559, -0.116626531, 0.811420619, 0.572708428) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1274
        CFrame.new(0.903839946, -1.70734286, 0.373858094, 0.863655448, -0.430708885, 0.261895239, 0.187955216, 0.757234871, 0.625514567, -0.46773085, -0.491004646, 0.734943748) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1275
        CFrame.new(-0.596739769, -1.62411702, -0.0967329144, 0.725493789, -0.291957259, 0.623233199, -0.081900157, 0.86250174, 0.499382436, -0.683338165, -0.41334182, 0.601828396) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1276
      }, 0.2, false)
1277
    end
1278
    CFuncs.Sound.Create("471881954", HitboxR, 1, 1)
1279
    MagnitudeDamage(HitboxR, 7, 10, 15, 50, "Normal", "610359590", 1)
1280
    for i = 0, 1, 0.1 do
1281
      swait()
1282
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
1283
      PlayAnimationFromTable({
1284
        CFrame.new(-0.338160992, -0.0772590488, -0.484170675, 0.307024002, -0.153706044, 0.939207554, -0.403236002, 0.872901201, 0.274671286, -0.86205399, -0.463052958, 0.206021816) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1285
        CFrame.new(-0.0502282679, 1.50051379, -0.0864891857, 0.502356887, -0.246090144, -0.828901231, -0.00520065427, 0.957766473, -0.287500501, 0.864644766, 0.148738697, 0.479860842) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1286
        CFrame.new(1.81698525, 1.20575511, -0.168038458, 0.0800605565, -0.859217465, 0.505307972, 0.457053572, -0.418860257, -0.784640014, 0.885828495, 0.293771386, 0.359173566) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1287
        CFrame.new(-1.66351938, 0.691055655, 0.203685582, 0.309526145, 0.793331623, -0.524231553, -0.937197804, 0.347743452, -0.0271089375, 0.160791725, 0.499699503, 0.851144433) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1288
        CFrame.new(0.971616864, -1.6145575, 0.096719563, 0.544056833, -0.203144252, -0.814085484, 0.51142931, 0.849463344, 0.129818588, 0.665161908, -0.486975014, 0.566052973) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1289
        CFrame.new(-0.676943898, -1.44413579, 0.206094518, 0.884253025, 0.0570309162, -0.463512957, 0.209485695, 0.838620007, 0.502824426, 0.417387724, -0.541723251, 0.729605079) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1290
      }, 0.6, false)
1291
    end
1292
    attack = false
1293
  end
1294
  function CastleCrusherFist()
1295
    attack = true
1296
    STDamage = true
1297
    local S2 = CFuncs.Sound.Create("402454350", Torso, 1, 1)
1298
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1299
    for i = 0, 1, 0.1 do
1300
      swait()
1301
      Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1302
      Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1303
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.2)
1304
      PlayAnimationFromTable({
1305
        CFrame.new(-5.99771738E-7, -0.00717129931, 0.169464022, 0.422617912, -2.2671E-7, -0.906308055, -0.309975952, 0.939692557, -0.144544229, 0.851650834, 0.342020661, 0.397130787) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1306
        CFrame.new(-0.0102166235, 1.52751005, -0.239579424, 0.456926107, -0.171424359, 0.872835577, -0.167732254, 0.94705075, 0.273807496, -0.87355268, -0.271512181, 0.403976858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1307
        CFrame.new(0.944673777, 0.474064022, -0.539126158, 0.229199454, 0.762564063, 0.604949772, 0.809601307, 0.195682317, -0.553402781, -0.540382624, 0.616607308, -0.572522938) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1308
        CFrame.new(-1.61232829, 0.309644789, -0.24482432, 0.455398798, 0.536860108, -0.710207343, -0.887026072, 0.205374956, -0.413530886, -0.076149486, 0.818293095, 0.569735885) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1309
        CFrame.new(1.08113468, -1.48232126, 0.656104684, 0.81421864, -0.517612338, 0.262917578, 0.175395042, 0.651024699, 0.738514543, -0.553430021, -0.555197835, 0.620862961) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1310
        CFrame.new(-0.427128136, -1.50760674, -0.0473105907, 0.804508269, -0.373179317, 0.462065101, -0.173640698, 0.596196175, 0.783836842, -0.567992628, -0.71083647, 0.414845526) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1311
      }, 0.2, false)
1312
    end
1313
    MagnitudeDamage(HitboxR, 10, 50, 80, 100, "Normal", "610359515", 1)
1314
    Effects.Wave.Create(BrickColor.new("Royal purple"), RootPart.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)), 0.5, 0.5, 0.5, 0.6, 0.6, 0.6, 0.06)
1315
    CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
1316
    CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
1317
    for i = 0, 1, 0.08 do
1318
      swait()
1319
      Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1320
      Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1321
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
1322
      PlayAnimationFromTable({
1323
        CFrame.new(-3.57627869E-7, -0.116980031, -2.22140098, 0.342020035, -6.11579551E-8, 0.939692736, -0.604023039, 0.766044259, 0.219846413, -0.71984607, -0.642787933, 0.262002468) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1324
        CFrame.new(-1.13248825E-6, 1.49999046, 8.94069672E-7, 0.422608167, -0.383014679, -0.82140249, -1.36196613E-5, 0.906310022, -0.422613323, 0.906312764, 0.17861104, 0.383008778) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1325
        CFrame.new(1.72490048, 1.25688744, -0.021425128, -0.678134382, -0.731868863, 0.0670941696, 0.667953849, -0.575675249, 0.47163111, -0.306547582, 0.364645123, 0.879239857) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1326
        CFrame.new(-1.70565486, 0.469353855, 0.162862837, 0.82686162, 0.55728358, 0.0757693052, -0.414878726, 0.513436973, 0.751176, 0.379712611, -0.652546048, 0.655748963) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1327
        CFrame.new(0.757160306, -1.48393714, -0.193787217, 0.601814985, 0.305624545, -0.737842917, -2.98023224E-8, 0.923879623, 0.382683486, 0.798635662, -0.230304718, 0.556004763) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1328
        CFrame.new(-0.908789515, -1.60188651, -0.0663503706, 0.696367741, 0.548584938, -0.462741733, -0.173660636, 0.7544052, 0.633021533, 0.696362019, -0.360454619, 0.620610356) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1329
      }, 0.6, false)
1330
    end
1331
    STDamage = false
1332
    attack = false
1333
  end
1334
  function CastleCrusherFist()
1335
    attack = true
1336
    STDamage = true
1337
    local S2 = CFuncs.Sound.Create("402454350", Torso, 1, 1)
1338
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1339
    for i = 0, 1, 0.1 do
1340
      swait()
1341
      Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1342
      Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1343
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.5)
1344
      PlayAnimationFromTable({
1345
        CFrame.new(-5.99771738E-7, -0.00717129931, 0.169464022, 0.422617912, -2.2671E-7, -0.906308055, -0.309975952, 0.939692557, -0.144544229, 0.851650834, 0.342020661, 0.397130787) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1346
        CFrame.new(-0.0102166235, 1.52751005, -0.239579424, 0.456926107, -0.171424359, 0.872835577, -0.167732254, 0.94705075, 0.273807496, -0.87355268, -0.271512181, 0.403976858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1347
        CFrame.new(0.944673777, 0.474064022, -0.539126158, 0.229199454, 0.762564063, 0.604949772, 0.809601307, 0.195682317, -0.553402781, -0.540382624, 0.616607308, -0.572522938) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1348
        CFrame.new(-1.61232829, 0.309644789, -0.24482432, 0.455398798, 0.536860108, -0.710207343, -0.887026072, 0.205374956, -0.413530886, -0.076149486, 0.818293095, 0.569735885) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1349
        CFrame.new(1.08113468, -1.48232126, 0.656104684, 0.81421864, -0.517612338, 0.262917578, 0.175395042, 0.651024699, 0.738514543, -0.553430021, -0.555197835, 0.620862961) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1350
        CFrame.new(-0.427128136, -1.50760674, -0.0473105907, 0.804508269, -0.373179317, 0.462065101, -0.173640698, 0.596196175, 0.783836842, -0.567992628, -0.71083647, 0.414845526) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1351
      }, 0.2, false)
1352
    end
1353
    Effects.Wave.Create(BrickColor.new("Royal purple"), RootPart.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)), 0.5, 0.5, 0.5, 0.6, 0.6, 0.6, 0.06)
1354
    Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 140
1355
    CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
1356
    CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
1357
    for i = 0, 1, 0.08 do
1358
      swait()
1359
      MagnitudeDamage(HitboxR, 5, 50, 80, 100, "Normal", "610359515", 1)
1360
      Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1361
      Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1362
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 1)
1363
      PlayAnimationFromTable({
1364
        CFrame.new(-3.57627869E-7, -0.116980031, -2.22140098, 0.342020035, -6.11579551E-8, 0.939692736, -0.604023039, 0.766044259, 0.219846413, -0.71984607, -0.642787933, 0.262002468) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1365
        CFrame.new(-1.13248825E-6, 1.49999046, 8.94069672E-7, 0.422608167, -0.383014679, -0.82140249, -1.36196613E-5, 0.906310022, -0.422613323, 0.906312764, 0.17861104, 0.383008778) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1366
        CFrame.new(1.72490048, 1.25688744, -0.021425128, -0.678134382, -0.731868863, 0.0670941696, 0.667953849, -0.575675249, 0.47163111, -0.306547582, 0.364645123, 0.879239857) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1367
        CFrame.new(-1.70565486, 0.469353855, 0.162862837, 0.82686162, 0.55728358, 0.0757693052, -0.414878726, 0.513436973, 0.751176, 0.379712611, -0.652546048, 0.655748963) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1368
        CFrame.new(0.757160306, -1.48393714, -0.193787217, 0.601814985, 0.305624545, -0.737842917, -2.98023224E-8, 0.923879623, 0.382683486, 0.798635662, -0.230304718, 0.556004763) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1369
        CFrame.new(-0.908789515, -1.60188651, -0.0663503706, 0.696367741, 0.548584938, -0.462741733, -0.173660636, 0.7544052, 0.633021533, 0.696362019, -0.360454619, 0.620610356) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1370
      }, 0.6, false)
1371
    end
1372
    STDamage = false
1373
    attack = false
1374
  end
1375
  function weld5(part0, part1, c0, c1)
1376
    local weeld = Instance.new("Weld", part0)
1377
    weeld.Part0 = part0
1378
    weeld.Part1 = part1
1379
    weeld.C0 = c0
1380
    weeld.C1 = c1
1381
    return weeld
1382
  end
1383
  local Grab = false
1384
  function GRABEMBOIGRABEM()
1385
    attack = true
1386
    gp = nil
1387
    con1 = HitboxR.Touched:connect(function(hit)
1388
      local ht = hit.Parent
1389
      local hum1 = ht:FindFirstChild("Humanoid")
1390
      if Grab == false then
1391
        if hum1 ~= nil and hit.Parent ~= Character then
1392
          hum1.PlatformStand = true
1393
          gp = ht
1394
          Grab = true
1395
          local asd = weld5(RightArm, ht:FindFirstChild("Torso"), CFrame.new(0, -1.5, 0), CFrame.new(0, 0, 0))
1396
          asd.Parent = RightArm
1397
          asd.Name = "asd"
1398
          asd.C0 = asd.C0 * CFrame.Angles(math.rad(-90), 0, 0)
1399
          CFuncs.Sound.Create("200632821", Torso, 1, 1)
1400
        elseif hum1 == nil then
1401
          con1:disconnect()
1402
          wait()
1403
          return
1404
        end
1405
      end
1406
    end)
1407
    for i = 0, 1, 0.2 do
1408
      swait()
1409
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.3)
1410
      PlayAnimationFromTable({
1411
        CFrame.new(-1.08022243E-4, -0.233785003, -0.0873367637, 0.499999821, -1.78813863E-7, -0.866025507, 0.150383934, 0.984807789, 0.0868239477, 0.852868676, -0.173648283, 0.492403716) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1412
        CFrame.new(-1.2665987E-7, 1.49999368, -1.02072954E-6, 0.573575675, 0.0713936985, 0.816035628, -5.01982868E-7, 0.996194899, -0.0871551931, -0.819152594, 0.049989678, 0.571393132) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1413
        CFrame.new(1.47017705, 0.884583473, 0.0280318335, 0.886720777, -0.205462068, 0.414139926, 0.236241817, -0.568640172, -0.787933052, 0.397386849, 0.796513736, -0.455686152) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1414
        CFrame.new(-1.76647317, 0.409804255, -0.03838256, 0.444113791, 0.836516619, -0.320940912, -0.836516619, 0.258818626, -0.482962757, -0.320940822, 0.482962757, 0.814704895) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1415
        CFrame.new(0.838749349, -1.98392951, 0.15807499, 0.830397308, -0.277826965, 0.48296237, 0.167731524, 0.951251447, 0.258818328, -0.53132534, -0.133914024, 0.836516857) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1416
        CFrame.new(-0.811016142, -1.63281643, -0.179561377, 0.642214835, 0.00870995224, 0.76647532, -0.0151349902, 0.999884725, 0.00131897628, -0.766375303, -0.0124476701, 0.642272472) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1417
      }, 0.3, false)
1418
    end
1419
    for i = 0, 1, 0.1 do
1420
      swait()
1421
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
1422
      PlayAnimationFromTable({
1423
        CFrame.new(0.159273595, -0.292363107, -0.115490548, 0.0844330043, -0.144068986, 0.985959053, -0.357129037, 0.919379771, 0.164923266, -0.930231094, -0.366039604, 0.0261747837) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1424
        CFrame.new(4.81307507E-6, 1.49999106, -3.65450978E-6, 0.171444774, -0.100317284, -0.980072975, -0.0616287738, 0.991762042, -0.11229457, 0.983264267, 0.0796530023, 0.163850009) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1425
        CFrame.new(1.73932612, 1.06159639, 0.141945362, -0.153680667, -0.913934886, 0.375639945, 0.659919798, -0.377877831, -0.649395287, 0.735450923, 0.148092732, 0.661196351) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1426
        CFrame.new(-1.68730593, 0.429691374, -0.418232322, 0.633863091, 0.519853055, -0.57268703, -0.772902489, 0.453472316, -0.443829596, 0.028971523, 0.723958433, 0.689235032) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1427
        CFrame.new(0.51381135, -1.74729896, 0.0663300753, 0.422899842, 0.615153313, -0.665388703, -0.0435856879, 0.747240186, 0.66312325, 0.905127704, -0.251433372, 0.342819571) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1428
        CFrame.new(-0.991570175, -1.5009346, -0.1830419, 0.415304065, 0.586875141, -0.695054054, -0.166150108, 0.800146103, 0.576333642, 0.894380629, -0.123870395, 0.429813296) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1429
      }, 0.3, false)
1430
    end
1431
    if Grab == true then
1432
      for i = 1, 5 do
1433
        for i = 0, 1, 0.35 do
1434
          swait()
1435
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 13, -6), 0.3)
1436
          PlayAnimationFromTable({
1437
            CFrame.new(-0.0701122433, -0.336599797, -0.467321932, 0.694850504, -0.140219957, -0.70535183, 0.704946458, 0.326802045, 0.629484713, 0.142244101, -0.934633017, 0.325926095) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1438
            CFrame.new(-3.05473804E-6, 1.49998987, 8.94069672E-7, 0.707109332, 0.122785509, 0.696362555, 1.49011612E-6, 0.984807491, -0.173649877, -0.707104206, 0.122789055, 0.696367502) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1439
            CFrame.new(1.23286271, 0.549701929, -0.640782475, 0.740093768, 0.612683415, 0.277277708, 0.0735714883, 0.336068332, -0.938959956, -0.668469429, 0.715318501, 0.203645304) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1440
            CFrame.new(-1.63418663, 0.202915072, -0.0286649466, 0.865367413, 0.490698665, 0.101754986, -0.445756227, 0.846484005, -0.291146517, -0.228999093, 0.206590697, 0.951251805) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1441
            CFrame.new(0.702593744, -1.71321297, 0.369734973, 0.965928972, -0.148447216, 0.212003857, 1.10641122E-6, 0.819153726, 0.573574424, -0.258809477, -0.554031372, 0.791244447) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1442
            CFrame.new(-0.577289343, -1.34221494, -0.247686923, 0.766049445, -0.219846189, 0.604016602, 1.58697367E-6, 0.939692199, 0.342021465, -0.642781496, -0.262004316, 0.719851196) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1443
          }, 0.4, false)
1444
        end
1445
        for i = 0, 1, 0.3 do
1446
          swait()
1447
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
1448
          PlayAnimationFromTable({
1449
            CFrame.new(-0.170705646, -0.774955988, -0.472947001, 0.827218175, 0.130671635, 0.546475112, -0.561879098, 0.194839522, 0.803946257, -0.00142200035, -0.972091854, 0.234596446) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1450
            CFrame.new(-1.76951289E-7, 1.49999058, 2.2649765E-6, 0.80180192, -0.161171481, -0.575445414, 0.176131338, 0.983905077, -0.0301590711, 0.571044207, -0.0771723837, 0.817283988) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1451
            CFrame.new(1.59014189, 0.537312388, -0.263691217, 0.798337102, -0.524361372, 0.296147287, 0.455999702, 0.205153137, -0.866011977, 0.393347621, 0.826412499, 0.402889967) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1452
            CFrame.new(-1.41546631, 0.414666086, 0.337005794, 0.716736436, 0.581529975, 0.384852976, -0.56681174, 0.807305396, -0.164264664, -0.406218559, -0.100404784, 0.908243656) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1453
            CFrame.new(0.793360233, -1.59947133, 0.0620805621, 0.876221955, -0.148448378, -0.458477885, 0.368687749, 0.81915307, 0.439383447, 0.310339272, -0.55403173, 0.772486985) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1454
            CFrame.new(-0.535338402, -1.81867206, 0.817932665, 0.829598367, 0.11430642, -0.546535134, 0.32139504, 0.702652454, 0.634810925, 0.456587166, -0.702291727, 0.546181798) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1455
          }, 0.7, false)
1456
        end
1457
        local hit, pos = rayCast(HitboxR.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 100, Character)
1458
        if hit ~= nil then
1459
          MagnitudeDamage(HitboxR, 5, 10, 30, 0, "Normal", "610359515", 1.3)
1460
          Effects.Block.Create(BrickColor.new("Royal purple"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09, 1)
1461
          Effects.Wave.Create(BrickColor.new("Royal purple"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09)
1462
          Effects.Sphere.Create(BrickColor.new("Royal purple"), CFrame.new(pos), 3, 3, 3, 5, 5, 5, 0.09)
1463
        end
1464
      end
1465
    end
1466
    for i, v in pairs(RightArm:GetChildren()) do
1467
      if v.Name == "asd" and v:IsA("Weld") then
1468
        v:Remove()
1469
      end
1470
    end
1471
    Grab = false
1472
    con1:disconnect()
1473
    attack = false
1474
  end
1475
  local IsWearingArmor = false
1476
  function Armor(Mode)
1477
    attack = true
1478
    if IsWearingArmor == false and Mode == "On" then
1479
      IsWearingArmor = true
1480
      Disappear()
1481
      swait(10)
1482
      ReappearArmorOnly()
1483
      Character.Humanoid.MaxHealth = 500
1484
      Character.Humanoid.Health = 500
1485
      HHandleWeld.Part0 = Character.Head
1486
      THandleWeld.Part0 = Character.Torso
1487
      AHandleRWeld.Part0 = Character["Right Arm"]
1488
      AHandleLWeld.Part0 = Character["Left Arm"]
1489
      LHandleRWeld.Part0 = Character["Right Leg"]
1490
      LHandleLWeld.Part0 = Character["Left Leg"]
1491
      for i, v in pairs(AdvancingFortress:GetChildren()) do
1492
        if v:IsA("BasePart") then
1493
          v.Transparency = 1
1494
        end
1495
      end
1496
      for i, v in pairs(Character:GetChildren()) do
1497
        if v:IsA("Accessory") then
1498
          v.Handle.Transparency = 1
1499
        end
1500
      end
1501
    elseif IsWearingArmor == true and Mode == "Off" then
1502
      IsWearingArmor = false
1503
      DisappearArmorOnly()
1504
      for i, v in pairs(Character:GetChildren()) do
1505
        if v:IsA("Accessory") then
1506
          v.Handle.Transparency = 0
1507
        end
1508
      end
1509
      swait(10)
1510
      Reappear()
1511
      Character.Humanoid.MaxHealth = 100
1512
      Character.Humanoid.Health = 100
1513
      HHandleWeld.Part0 = Head
1514
      THandleWeld.Part0 = Torso
1515
      AHandleRWeld.Part0 = RightArm
1516
      AHandleLWeld.Part0 = LeftArm
1517
      LHandleRWeld.Part0 = RightLeg
1518
      LHandleLWeld.Part0 = LeftLeg
1519
      for i, v in pairs(AdvancingFortress:GetChildren()) do
1520
        if v:IsA("BasePart") then
1521
          v.Transparency = 0
1522
        end
1523
      end
1524
    end
1525
    attack = false
1526
  end
1527
  local ShieldMode = false
1528
  local ShieldCharge = false
1529
  function HoloHexShield()
1530
    attack = true
1531
    Shield.Parent = m
1532
    Shield.CanCollide = true
1533
    if ShieldMode == true then
1534
      while ShieldMode == true do
1535
        swait()
1536
        Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
1537
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1538
        PlayAnimationFromTable({
1539
          CFrame.new(-1.35600567E-6, -0.00759640103, -0.0868249983, 0.499999046, -1.78813579E-7, -0.866026044, 0.150384009, 0.984807789, 0.0868238211, 0.852869093, -0.173648283, 0.492402941) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1540
          CFrame.new(1.49011612E-7, 1.4999963, -2.08616257E-7, 0.499999046, 0.0754797831, 0.862731695, -1.78813579E-7, 0.996196151, -0.0871563852, -0.866026044, 0.0435779616, 0.498097092) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1541
          CFrame.new(1.50238657, 0.320674658, 0.252193451, 0.855209947, -0.376432747, -0.356249839, 0.469514668, 0.853786647, 0.224954769, 0.219480619, -0.35964793, 0.906907678) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1542
          CFrame.new(-0.944740474, 0.689363539, -0.718644142, 0.836517215, -0.545084715, 0.0558781698, -0.258834839, -0.482974619, -0.836504936, 0.482953727, 0.685287297, -0.545103252) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1543
          CFrame.new(0.61525929, -1.85127568, 0.120779425, 0.928754449, -0.162676111, 0.333104134, 0.0394990072, 0.93689239, 0.347407103, -0.368597984, -0.309496939, 0.876555264) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1544
          CFrame.new(-0.849455297, -1.60697818, -0.270956695, 0.696359396, -0.136922374, 0.704511464, -0.122786656, 0.944430828, 0.30491665, -0.707112312, -0.298836082, 0.640850842) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1545
        }, 0.3, false)
1546
      end
1547
    end
1548
    Shield.CanCollide = false
1549
    CFuncs.Sound.Create("200632211", HitboxR, 1, 0.8)
1550
    CFuncs.Sound.Create("200632875", HitboxR, 1, 0.9)
1551
    Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 160
1552
    Effects.Wave.Create(BrickColor.new("Royal purple"), RootPart.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)), 0.5, 0.5, 0.5, 0.6, 0.6, 0.6, 0.06)
1553
    for i = 0, 1, 0.05 do
1554
      swait()
1555
      MagnitudeDamage(Shield, 5, 10, 15, 20, "Normal", "610359515", 1.3)
1556
      Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
1557
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -3), 1)
1558
      PlayAnimationFromTable({
1559
        CFrame.new(8.64267349E-7, -0.183445007, -0.748600185, 0.499999046, -1.19209105E-7, -0.866026044, 0.496732056, 0.819152176, 0.28678751, 0.709407032, -0.573576331, 0.409575343) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1560
        CFrame.new(-7.15255737E-7, 1.50001967, -6.2584877E-7, 0.499999046, 0.36600244, 0.784893453, -1.19209105E-7, 0.90631634, -0.42262283, -0.866026044, 0.211310923, 0.453157306) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1561
        CFrame.new(1.76569033, 0.610707581, 0.171269983, 0.658267856, -0.680293143, -0.322312057, 0.725086272, 0.457917482, 0.514355659, -0.202320263, -0.572288036, 0.794703186) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1562
        CFrame.new(-1.07552779, 1.01543474, -0.975205183, 0.645357251, -0.653341353, -0.39580214, -0.64124006, -0.181770697, -0.745500326, 0.4151209, 0.734918237, -0.536255598) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1563
        CFrame.new(0.630614281, -1.76328135, 0.440194428, 0.866077662, -0.24334389, 0.436684549, -0.0614839792, 0.815044224, 0.57612747, -0.496114343, -0.525820255, 0.69092983) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1564
        CFrame.new(-0.857700765, -1.25810766, -0.239681423, 0.499215126, -0.257185757, 0.827429712, -0.238765404, 0.877132356, 0.416689515, -0.832931936, -0.405579239, 0.376470625) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1565
      }, 0.5, false)
1566
    end
1567
    Shield.Parent = nil
1568
    attack = false
1569
  end
1570
  Mouse.Button1Down:connect(function()
1571
    if attack == false and attacktype == 1 then
1572
      attacktype = 2
1573
      attackone()
1574
    elseif attack == false and attacktype == 2 then
1575
      attacktype = 1
1576
      attacktwo()
1577
    end
1578
  end)
1579
  game.Lighting.Outlines = false
1580
  function attackone()
1581
    attack = true
1582
    for i = 0, 1, 0.12 do
1583
      swait()
1584
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1585
      PlayAnimationFromTable({
1586
        CFrame.new(1.51857734E-4, -0.310488015, -0.087417841, 0.707106054, 5.26835073E-8, -0.707107484, 0.122787014, 0.984807968, 0.122786865, 0.696365058, -0.173646957, 0.696363688) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1587
        CFrame.new(0.101928703, 1.50244772, -0.0383823365, 0.76589334, 0.0762532279, 0.638430059, -0.0196644422, 0.995256186, -0.095281601, -0.642666996, 0.0604211651, 0.763759375) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1588
        CFrame.new(1.01774633, 0.557527065, -0.776187301, 0.541353703, 0.741649806, 0.396095604, 0.711713314, -0.153383806, -0.685520053, -0.447661191, 0.653015316, -0.610876858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1589
        CFrame.new(-1.07208586, 0.264054269, -0.716768324, 0.529938459, -0.260122895, -0.807156265, -0.752277017, 0.295165181, -0.589030504, 0.39146477, 0.919355154, -0.039265126) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1590
        CFrame.new(0.81415844, -1.89738977, 0.144144416, 0.866025925, -0.171008825, 0.469845951, -1.40815973E-6, 0.939692497, 0.342020512, -0.499999285, -0.296199232, 0.813797772) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1591
        CFrame.new(-0.818738878, -1.59999573, -0.397991776, 0.642786622, 0.0667650178, 0.763130188, 4.3399632E-7, 0.99619472, -0.0871558338, -0.766045213, 0.0560229495, 0.640340626) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1592
      }, 0.3, false)
1593
    end
1594
    MagnitudeDamage(HitboxR, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1)
1595
    CFuncs.Sound.Create("200632136", HitboxR, 1, 1)
1596
    RootPart.Velocity = RootPart.CFrame.lookVector * 40
1597
    for i = 0, 1, 0.11 do
1598
      swait()
1599
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1600
      PlayAnimationFromTable({
1601
        CFrame.new(0.31380862, -0.320521832, 0.0252371654, 0.249517962, -0.150383011, 0.956622124, -0.0458769947, 0.984923244, 0.166798219, -0.967282891, -0.0855060965, 0.238856897) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1602
        CFrame.new(0.101926193, 1.50244832, -0.0383800864, 0.337979913, 0.0762555003, -0.938059092, -0.0828148723, 0.995255768, 0.051067099, 0.937502801, 0.0604255944, 0.342691481) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1603
        CFrame.new(1.96121001, 0.774859428, -0.462411612, 0.340120375, -0.92077136, 0.191045195, 0.466549307, -0.0111669078, -0.884424806, 0.816486418, 0.389942825, 0.42578721) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1604
        CFrame.new(-1.36170578, 0.526111126, -0.597925961, 0.81348151, -0.212761745, -0.541276693, -0.539894938, 0.0697831511, -0.838834763, 0.216243982, 0.974609077, -0.0581016839) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1605
        CFrame.new(0.970680714, -1.68610644, -0.0975568295, 0.579166114, -0.127570763, -0.805166125, 0.110368893, 0.990856647, -0.0776019096, 0.807703912, -0.0439208932, 0.587950349) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1606
        CFrame.new(-0.827146292, -1.8113209, -0.0556658059, 0.816036701, 0.217413262, -0.535551846, -0.0871567726, 0.962250471, 0.257832885, 0.571391284, -0.163724124, 0.804180741) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1607
      }, 0.45, false)
1608
    end
1609
    attack = false
1610
  end
1611
  function attacktwo()
1612
    attack = true
1613
    for i = 0, 1, 0.12 do
1614
      swait()
1615
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1616
      PlayAnimationFromTable({
1617
        CFrame.new(-0.0382043272, -0.447743475, -0.209081307, 0.653245032, -0.0733856931, 0.753581822, -0.271655023, 0.906307638, 0.323743671, -0.706735075, -0.416198224, 0.572105408) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1618
        CFrame.new(-2.74181366E-6, 1.49999321, -3.4570694E-6, 0.707105815, -0.183012873, -0.683013678, -8.7171793E-7, 0.965925694, -0.258819759, 0.707107782, 0.183013588, 0.683011472) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1619
        CFrame.new(1.65075588, 0.743636727, -0.356577665, 0.542998552, -0.115416825, 0.831764221, 0.839699984, 0.0834951103, -0.536593378, -0.00751632452, 0.989801884, 0.142253295) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1620
        CFrame.new(-1.08620656, -0.00580590963, -0.864283919, 0.656464815, -0.698875248, 0.283949524, 0.478162557, 0.0943745971, -0.873186052, 0.583450615, 0.708990037, 0.396129608) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1621
        CFrame.new(0.856426239, -1.40340364, -0.356423855, 0.707105279, -0.122788861, -0.696365654, 9.42498446E-7, 0.98480767, -0.173648372, 0.707108438, 0.122787014, 0.696362913) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1622
        CFrame.new(-0.695387185, -1.90375674, -0.304245114, 0.92541647, 0.246137589, -0.288133472, -0.173648298, 0.951251149, 0.254887551, 0.336824656, -0.185843274, 0.923044682) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1623
      }, 0.34, false)
1624
    end
1625
    MagnitudeDamage(HitboxL, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1.1)
1626
    CFuncs.Sound.Create("200632136", HitboxL, 1, 1)
1627
    RootPart.Velocity = RootPart.CFrame.lookVector * 40
1628
    for i = 0, 1, 0.12 do
1629
      swait()
1630
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1631
      PlayAnimationFromTable({
1632
        CFrame.new(-0.479634404, -0.393727064, -0.220339894, 0.248309121, 0.219825819, -0.94340837, 0.019257009, 0.972597659, 0.231695861, 0.968489468, -0.0756994039, 0.237271711) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1633
        CFrame.new(-4.01586294E-6, 1.4999907, -1.59628689E-6, 0.237956509, -0.0991817266, 0.966198623, 0.22414881, 0.973527908, 0.0447304621, -0.945057809, 0.205928385, 0.253888786) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1634
        CFrame.new(1.08192515, 0.657660127, -1.1749661, 0.228772208, 0.493058115, 0.839379132, 0.874719322, 0.27430138, -0.399530977, -0.427234828, 0.825622678, -0.368534833) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1635
        CFrame.new(-1.23054802, 1.29996836, -0.754827142, 0.94838953, -0.316170156, 0.0243683457, -0.269034386, -0.84291333, -0.465958893, 0.167862713, 0.43535465, -0.88447094) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1636
        CFrame.new(0.839919031, -1.81287205, 0.0102108568, 0.808574855, -0.267538428, 0.524051666, 0.171010748, 0.95905602, 0.22575888, -0.562994003, -0.0929245204, 0.821220458) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1637
        CFrame.new(-0.846072078, -1.7213496, -0.247524291, 0.693717241, 0.0689389557, 0.716940701, -0.0478171073, 0.997620881, -0.0496601462, -0.718658566, 1.68083934E-4, 0.695363283) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1638
      }, 0.45, false)
1639
    end
1640
    attack = false
1641
  end
1642
  function findNearestTorso(pos)
1643
    local list = game.Workspace:children()
1644
    local torso
1645
    local dist = 1000
1646
    local temp, human, temp2
1647
    for x = 1, #list do
1648
      temp2 = list[x]
1649
      if temp2.className == "Model" and temp2.Name ~= Character.Name then
1650
        temp = temp2:findFirstChild("Torso")
1651
        human = temp2:findFirstChild("Humanoid")
1652
        if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
1653
          local dohit = true
1654
          if dohit == true then
1655
            torso = temp
1656
            dist = (temp.Position - pos).magnitude
1657
          end
1658
        end
1659
      end
1660
    end
1661
    return torso, dist
1662
  end
1663
  function TrueAim(aim)
1664
    local target, distance = findNearestTorso(Mouse.Hit.p)
1665
    local tehcf = HitboxR.CFrame * CFrame.fromEulerAnglesXYZ(1.57, 0, 0).lookVector
1666
    if aim ~= nil then
1667
      tehcf = aim
1668
    end
1669
    table.insert(Effects, {
1670
      tehcf,
1671
      "Shoot",
1672
      30,
1673
      HitboxR.Position,
1674
      10,
1675
      15,
1676
      0,
1677
      3,
1678
      HitboxR,
1679
      target
1680
    })
1681
  end
1682
  function FireProjectiles()
1683
    attack = true
1684
    Humanoid.WalkSpeed = 20
1685
    CFuncs.Sound.Create("300915902", HitboxR, 1, 0.8)
1686
    for i = 0, 1, 0.1 do
1687
      swait()
1688
      Effects.Elec.Create(HitboxR.CFrame, 2, 2, 2)
1689
      PlayAnimationFromTable({
1690
        CFrame.new(0, -0.100000001, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1691
        CFrame.new(0, 1.49999201, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1692
        CFrame.new(0.874554753, 1.14087927, -1.06730831, -0.166365892, 0.198266983, 0.965925813, 0.797995508, -0.548363924, 0.250000268, 0.579245627, 0.812396049, -0.0669871047) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1693
        CFrame.new(-0.257126778, 1.24225974, -0.962940335, 0.692363203, -0.593008757, -0.411064416, -0.708803177, -0.665577948, -0.233675212, -0.135024026, 0.453151852, -0.88114804) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1694
        CFrame.new(0.604643881, -1.9909004, 0.0280392915, 0.962250233, -0.0841861367, -0.258818984, 0.0871560201, 0.996194661, 4.23252061E-7, 0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1695
        CFrame.new(-0.604644895, -1.99090064, 0.0280393362, 0.962250233, 0.0841861367, 0.258818984, -0.0871560201, 0.996194661, 4.23252061E-7, -0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1696
      }, 0.3, false)
1697
    end
1698
    for i = 0, 1, 0.1 do
1699
      swait()
1700
      Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1701
      Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1702
      Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1703
      PlayAnimationFromTable({
1704
        CFrame.new(0, -0.100000001, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1705
        CFrame.new(0, 1.49999201, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1706
        CFrame.new(0.661153734, 0.568759024, -0.827975571, -0.166752055, 0.025078943, 0.985679924, 0.98324734, -0.0704026297, 0.168131784, 0.0736110285, 0.99720335, -0.012919019) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1707
        CFrame.new(-0.390097797, 0.861622274, -0.554995477, 0.351840883, -0.837056041, -0.418981194, -0.935129642, -0.294365793, -0.197183579, 0.0417199843, 0.461178988, -0.886325777) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1708
        CFrame.new(0.604644954, -1.9909004, 0.0280390829, 0.962250233, -0.0841861367, -0.258818984, 0.0871560201, 0.996194661, 4.23252061E-7, 0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1709
        CFrame.new(-0.604644775, -1.99090064, 0.0280380547, 0.962250233, 0.0841861367, 0.258818984, -0.0871560201, 0.996194661, 4.23252061E-7, -0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1710
      }, 0.2, false)
1711
    end
1712
    for i = 1, 10 do
1713
      for i = 0, 1, 0.3 do
1714
        swait()
1715
        Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1716
        Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1717
        PlayAnimationFromTable({
1718
          CFrame.new(0, -0.100000001, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1719
          CFrame.new(0, 1.49999201, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1720
          CFrame.new(0.661153734, 0.568759024, -0.827975571, -0.166752055, 0.025078943, 0.985679924, 0.98324734, -0.0704026297, 0.168131784, 0.0736110285, 0.99720335, -0.012919019) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1721
          CFrame.new(-0.390097797, 0.861622274, -0.554995477, 0.351840883, -0.837056041, -0.418981194, -0.935129642, -0.294365793, -0.197183579, 0.0417199843, 0.461178988, -0.886325777) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1722
          CFrame.new(0.604644954, -1.9909004, 0.0280390829, 0.962250233, -0.0841861367, -0.258818984, 0.0871560201, 0.996194661, 4.23252061E-7, 0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1723
          CFrame.new(-0.604644775, -1.99090064, 0.0280380547, 0.962250233, 0.0841861367, 0.258818984, -0.0871560201, 0.996194661, 4.23252061E-7, -0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1724
        }, 0.3, false)
1725
      end
1726
      CFuncs.Sound.Create("300916105", HitboxR, 1, 1.2)
1727
      CFuncs.Sound.Create("300916014", HitboxR, 1, 1)
1728
      Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 2, 2, 2, 0.07)
1729
      local MouseLook = CFrame.new((HitboxR.Position + Mouse.Hit.p) / 2, Mouse.Hit.p)
1730
      TrueAim(MouseLook.lookVector)
1731
      for i = 0, 1, 0.3 do
1732
        swait()
1733
        Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1734
        Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1735
        PlayAnimationFromTable({
1736
          CFrame.new(1.90734863E-6, -0.25291419, 0.238341585, 1, 0, 0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1737
          CFrame.new(0, 1.49999189, -1.1920929E-6, 1, 0, 0, 0, 0.98480767, 0.173648626, 0, -0.173648626, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1738
          CFrame.new(0.689965963, 0.767623663, -0.856841147, -0.544456005, 0.160545677, 0.823281765, 0.798456132, -0.201499581, 0.567332089, 0.256973624, 0.966241658, -0.0184810348) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1739
          CFrame.new(-0.392649293, 0.920519292, -0.977094412, 0.403439909, -0.887421727, -0.222977459, -0.91384387, -0.378501445, -0.147058249, 0.0461054072, 0.263095737, -0.963667512) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1740
          CFrame.new(0.598512471, -1.89166105, 0.0173719227, 0.962250233, -0.061308533, -0.265171409, 0.0871564373, 0.992403805, 0.0868248865, 0.257834017, -0.106658652, 0.960284173) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1741
          CFrame.new(-0.598512232, -1.89166129, 0.0173728764, 0.962250233, 0.061308533, 0.265171409, -0.0871564373, 0.992403805, 0.0868248865, -0.257834017, -0.106658652, 0.960284173) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1742
        }, 0.3, false)
1743
      end
1744
    end
1745
    Humanoid.WalkSpeed = 20
1746
    attack = false
1747
  end
1748
  Mouse.KeyDown:connect(function(k)
1749
    k = k:lower()
1750
    if attack == false and ora == false and k == "z" and IsWearingArmor == false and Invisible == false then
1751
      ora = true
1752
      ORA()
1753
    elseif attack == false and k == "x" and IsWearingArmor == false and Invisible == false then
1754
      GRABEMBOIGRABEM()
1755
    elseif attack == false and k == "q" and IsWearingArmor == false and Invisible == false then
1756
      FireProjectiles()
1757
    elseif attack == false and k == "f" and Invisible == false and IsWearingArmor == false then
1758
      Invisible = true
1759
      Effects.Sphere.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1)
1760
      Effects.Block.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
1761
      Disappear()
1762
    elseif attack == false and k == "f" and Invisible == true and IsWearingArmor == false then
1763
      Invisible = false
1764
      CFuncs.Sound.Create("463010917", Torso, 1, 1)
1765
      Effects.Sphere.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.08)
1766
      for i = 1, 2 do
1767
        Effects.Block.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
1768
      end
1769
      for i = 1, 20 do
1770
        Effects.Break.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1)
1771
      end
1772
      Reappear()
1773
    elseif attack == false and ShieldMode == false and k == "c" and IsWearingArmor == false and Invisible == false then
1774
      ShieldMode = true
1775
      HoloHexShield()
1776
    elseif attack == false and k == "v" and IsWearingArmor == false and Invisible == false then
1777
      CastleCrusherFist()
1778
    end
1779
    if k == "[" and IsWearingArmor == false and Invisible == false then
1780
      Armor("On")
1781
    end
1782
    if k == "]" and IsWearingArmor == true and Invisible == false then
1783
      Armor("Off")
1784
    end
1785
  end)
1786
  Mouse.KeyUp:connect(function(k)
1787
    k = k:lower()
1788
    if attack == true and ora == true and k == "z" and IsWearingArmor == false then
1789
      ora = false
1790
    elseif attack == true and ShieldMode == true and k == "c" and IsWearingArmor == false then
1791
      ShieldMode = false
1792
    end
1793
  end)
1794
  coroutine.resume(coroutine.create(function(Part, Part2)
1795
    while Part.Parent ~= nil do
1796
      swait(math.random(100, 150))
1797
      for i = 0, 1, 0.2 do
1798
        wait()
1799
        Eye1.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
1800
        Eye2.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
1801
      end
1802
      for i = 0, 1, 0.2 do
1803
        swait()
1804
        Eye1.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
1805
        Eye2.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
1806
      end
1807
    end
1808
  end), Eye1, Eye2)
1809
  while true do
1810
    swait()
1811
    for i, v in pairs(Character:children()) do
1812
      if v:IsA("Part") and IsWearingArmor == true then
1813
        v.Anchored = false
1814
      end
1815
    end
1816
    for i, v in pairs(AdvancingFortress:GetChildren()) do
1817
      if v:IsA("Part") then
1818
        v.Material = "SmoothPlastic"
1819
        v.CanCollide = false
1820
      elseif v:IsA("Humanoid") then
1821
        v:remove()
1822
      elseif v:IsA("Accessory") then
1823
        v:remove()
1824
      elseif v:IsA("Shirt") then
1825
        v:remove()
1826
      elseif v:IsA("Pants") then
1827
        v:remove()
1828
      elseif v:IsA("Script") or v:IsA("LocalScript") then
1829
        v:remove()
1830
      elseif v:IsA("BodyColors") then
1831
        v:remove()
1832
      end
1833
    end
1834
    HHandle.Transparency = 1
1835
    THandle.Transparency = 1
1836
    AHandleR.Transparency = 1
1837
    AHandleL.Transparency = 1
1838
    LHandleR.Transparency = 1
1839
    LHandleL.Transparency = 1
1840
    RootPart.Transparency = 1
1841
    HitboxR.Transparency = 1
1842
    HitboxL.Transparency = 1
1843
    Head.BrickColor = BrickColor.new("Royal purple")
1844
    Torso.BrickColor = BrickColor.new("Cyan")
1845
    RightArm.BrickColor = BrickColor.new("Royal purple")
1846
    LeftArm.BrickColor = BrickColor.new("Royal purple")
1847
    RightLeg.BrickColor = BrickColor.new("Royal purple")
1848
    LeftLeg.BrickColor = BrickColor.new("Royal purple")
1849
    RootPart.Anchored = true
1850
    Torsovelocity = (Character.HumanoidRootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
1851
    velocity = Character.HumanoidRootPart.Velocity.y
1852
    sine = sine + change
1853
    Shield.Anchored = true
1854
    Shield.CFrame = Shield.CFrame:lerp(RootPart.CFrame * CFrame.new(0, 0, -3.2), 1)
1855
    local hit, pos = rayCast(Character.HumanoidRootPart.Position, CFrame.new(Character.HumanoidRootPart.Position, Character.HumanoidRootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
1856
    if Character.HumanoidRootPart.Velocity.y > 1 and hit == nil then
1857
      Anim = "Jump"
1858
      if attack == false then
1859
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1860
        PlayAnimationFromTable({
1861
          CFrame.new(0, 0.00872418843, 0.0292903651, 1, 0, 0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1862
          CFrame.new(0, 1.49999177, -1.49011612E-7, 1, 0, 0, 0, 0.98480767, 0.173648626, 0, -0.173648626, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1863
          CFrame.new(1.64140427, 0.273908556, 0.192029893, 0.946035206, -0.31541416, 0.0743736848, 0.284469575, 0.91821146, 0.275617331, -0.155224368, -0.239586651, 0.958386064) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1864
          CFrame.new(-1.59350562, 0.239538491, 0.192243189, 0.935008764, 0.347148597, -0.0724328309, -0.312019885, 0.902400434, 0.297181845, 0.168529674, -0.255267143, 0.952069581) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1865
          CFrame.new(0.602718651, -1.95556056, 0.410092652, 0.978475571, 0.0150757888, -0.205834776, 0.0853612274, 0.878464639, 0.470120817, 0.187906027, -0.477568805, 0.85826844) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1866
          CFrame.new(-0.41903314, -1.41877925, -0.229210436, 0.962251842, -0.0299757104, 0.270510197, -0.084186092, 0.912393093, 0.400567293, -0.258819073, -0.408219665, 0.875425339) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1867
        }, 0.3, false)
1868
      end
1869
    elseif Character.HumanoidRootPart.Velocity.y < -1 and hit == nil then
1870
      Anim = "Fall"
1871
      if attack == false then
1872
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1873
        PlayAnimationFromTable({
1874
          CFrame.new(0, -0.0366669223, -0.0478199311, 1, 0, 0, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1875
          CFrame.new(0, 1.58110774, -0.115850762, 1, 0, 0, 0, 0.98480767, 0.173647821, 0, -0.173647821, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1876
          CFrame.new(1.72150326, 0.610064566, 0.0891361833, 0.724097908, -0.685675204, 0.0743751749, 0.645872176, 0.711960018, 0.275611937, -0.241932437, -0.151533186, 0.958387375) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1877
          CFrame.new(-1.69228244, 0.568353653, 0.082095027, 0.759895504, 0.646005511, -0.0724337399, -0.601845145, 0.741260946, 0.297183931, 0.24567467, -0.182231784, 0.952074111) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1878
          CFrame.new(0.60271728, -1.95556188, 0.410093039, 0.978470623, -0.00292155147, -0.206365243, 0.0853614658, 0.916095972, 0.391767859, 0.187905625, -0.400949359, 0.896622121) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1879
          CFrame.new(-0.453899324, -1.81726217, -0.229221463, 0.962255239, -0.00628663599, 0.272094905, -0.0841865242, 0.943832874, 0.319526881, -0.258820891, -0.33037129, 0.90767473) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1880
        }, 0.3, false)
1881
      end
1882
    elseif Torsovelocity < 1 and hit ~= nil then
1883
      Anim = "Idle"
1884
      if attack == false then
1885
        change = 1
1886
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1887
        PlayAnimationFromTable({
1888
          CFrame.new(0, -0.00190299738, -0.0435779989, 1, 0, 0, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1889
          CFrame.new(0, 1.49999213, 3.27825546E-7, 1, 0, 0, 0, 0.99619478, 0.0871553123, 0, -0.0871553123, 0.99619478) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1890
          CFrame.new(1.64141297, 0.173907071, -0.107973814, 0.946035922, -0.270955235, 0.177766502, 0.284470022, 0.957103431, -0.055051513, -0.155224428, 0.102649838, 0.982532144) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1891
          CFrame.new(-1.59350157, 0.139536366, -0.107754946, 0.935009062, 0.284010828, -0.212358981, -0.312018842, 0.943447471, -0.11203292, 0.168530986, 0.171011835, 0.970748305) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1892
          CFrame.new(0.602711678, -1.89952374, -0.0967197716, 0.978471398, -0.0562333167, -0.198576227, 0.0853610933, 0.986278713, 0.141314447, 0.187904745, -0.155223012, 0.969844699) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1893
          CFrame.new(-0.619029164, -1.90815639, -0.0860156417, 0.962250412, 0.0410595387, 0.269051194, -0.0841863081, 0.984977186, 0.150772721, -0.258818805, -0.167731494, 0.951251626) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1894
        }, 0.3, false)
1895
      end
1896
    elseif Torsovelocity > 2 and hit ~= nil then
1897
      Anim = "Walk"
1898
      if attack == false then
1899
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1900
        PlayAnimationFromTable({
1901
          CFrame.new(0, -0.0234659836, -0.171147972, 1, 0, 0, 0, 0.939692736, 0.342019886, 0, -0.342019916, 0.939692736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1902
          CFrame.new(0, 1.49999166, 1.1920929E-7, 1, 0, 0, 0, 0.98480773, -0.173648983, 0, 0.173648953, 0.98480773) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1903
          CFrame.new(1.60905385, 0.122740321, 0.227665678, 0.946036339, -0.320693314, 0.0465966538, 0.284468234, 0.89069742, 0.354595304, -0.155219615, -0.322205007, 0.93385905) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1904
          CFrame.new(-1.55878484, 0.127169654, 0.148623466, 0.93500936, 0.339513272, -0.102411598, -0.312018752, 0.924868107, 0.217401206, 0.168527737, -0.171317667, 0.970695019) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1905
          CFrame.new(0.585851789, -1.60362172, -0.143285036, 0.978476226, 0.0150748575, -0.205834031, 0.0853618756, 0.878461003, 0.470117748, 0.187905103, -0.477570593, 0.858265638) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1906
          CFrame.new(-0.563320339, -1.90456724, 0.225245774, 0.982039452, -0.00800410938, 0.188514173, -0.0707257539, 0.910641074, 0.407099873, -0.174927384, -0.413120717, 0.893718541) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
1907
        }, 0.3, false)
1908
      end
1909
    end
1910
    if 0 < #Effects then
1911
      for e = 1, #Effects do
1912
        if Effects[e] ~= nil then
1913
          local Thing = Effects[e]
1914
          if Thing ~= nil then
1915
            local Part = Thing[1]
1916
            local Mode = Thing[2]
1917
            local Delay = Thing[3]
1918
            local IncX = Thing[4]
1919
            local IncY = Thing[5]
1920
            local IncZ = Thing[6]
1921
            if Thing[2] == "Shoot" then
1922
              local Look = Thing[1]
1923
              local move = 30
1924
              if Thing[8] == 3 then
1925
                move = 10
1926
              end
1927
              local hit, pos = rayCast(Thing[4], Thing[1], move, m)
1928
              if Thing[10] ~= nil then
1929
                da = pos
1930
                cf2 = CFrame.new(Thing[4], Thing[10].Position)
1931
                cfa = CFrame.new(Thing[4], pos)
1932
                tehCF = cfa:lerp(cf2, 0.2)
1933
                Thing[1] = tehCF.lookVector
1934
              end
1935
              local mag = (Thing[4] - pos).magnitude
1936
              Effects.Head.Create(Torso.BrickColor, CFrame.new((Thing[4] + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0), 1, mag * 5, 1, 0.5, 0, 0.5, 0.2)
1937
              if Thing[8] == 2 then
1938
                Effects.Ring.Create(Torso.BrickColor, CFrame.new((Thing[4] + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0) * CFrame.fromEulerAnglesXYZ(1.57, 0, 0), 1, 1, 0.1, 0.5, 0.5, 0.1, 0.1, 1)
1939
              end
1940
              Thing[4] = Thing[4] + Look * move
1941
              Thing[3] = Thing[3] - 1
1942
              if 2 < Thing[5] then
1943
                Thing[5] = Thing[5] - 0.3
1944
                Thing[6] = Thing[6] - 0.3
1945
              end
1946
              if hit ~= nil then
1947
                Thing[3] = 0
1948
                if Thing[8] == 1 or Thing[8] == 3 then
1949
                  Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
1950
                elseif Thing[8] == 2 then
1951
                  Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
1952
                  if hit.Parent:findFirstChild("Humanoid") ~= nil or hit.Parent.Parent:findFirstChild("Humanoid") ~= nil then
1953
                    ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Royal purple"), "Reference", Vector3.new())
1954
                    ref.Anchored = true
1955
                    ref.CFrame = CFrame.new(pos)
1956
                    CFuncs.Sound.Create("161006093", ref, 1, 1.2)
1957
                    game:GetService("Debris"):AddItem(ref, 0.2)
1958
                    Effects.Block.Create(Torso.BrickColor, CFrame.new(ref.Position) * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 1, 1, 10, 10, 10, 0.1, 2)
1959
                    Effects.Ring.Create(BrickColor.new("Bright yellow"), CFrame.new(ref.Position) * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 1, 0.1, 4, 4, 0.1, 0.1)
1960
                    MagnitudeDamage(ref, 15, Thing[5] / 1.5, Thing[6] / 1.5, 0, "Normal", "", 1)
1961
                  end
1962
                end
1963
                ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Royal purple"), "Reference", Vector3.new())
1964
                ref.Anchored = true
1965
                ref.CFrame = CFrame.new(pos)
1966
                Effects.Sphere.Create(Torso.BrickColor, CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
1967
                game:GetService("Debris"):AddItem(ref, 1)
1968
              end
1969
              if Thing[3] <= 0 then
1970
                table.remove(Effects, e)
1971
              end
1972
            end
1973
            if Thing[2] == "FireWave" then
1974
              if Thing[3] <= Thing[4] then
1975
                Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
1976
                Thing[3] = Thing[3] + 1
1977
                Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
1978
              else
1979
                Part.Parent = nil
1980
                table.remove(Effects, e)
1981
              end
1982
            end
1983
            if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
1984
              if Thing[1].Transparency <= 1 then
1985
                if Thing[2] == "Block1" then
1986
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1987
                  Mesh = Thing[7]
1988
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1989
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1990
                elseif Thing[2] == "Block2" then
1991
                  Thing[1].CFrame = Thing[1].CFrame
1992
                  Mesh = Thing[7]
1993
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1994
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1995
                elseif Thing[2] == "Fire" then
1996
                  Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
1997
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1998
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1999
                elseif Thing[2] == "Cylinder" then
2000
                  Mesh = Thing[7]
2001
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2002
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2003
                elseif Thing[2] == "Blood" then
2004
                  Mesh = Thing[7]
2005
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
2006
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2007
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2008
                elseif Thing[2] == "Elec" then
2009
                  Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
2010
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2011
                elseif Thing[2] == "Disappear" then
2012
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2013
                elseif Thing[2] == "Shatter" then
2014
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2015
                  Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
2016
                  Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
2017
                  Thing[6] = Thing[6] + Thing[5]
2018
                end
2019
              else
2020
                Part.Parent = nil
2021
                table.remove(Effects, e)
2022
              end
2023
            end
2024
          end
2025
        end
2026
      end
2027
    end
2028
  end