View difference between Paste ID: wktPPajG and mQCPk9HE
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2-
  wait(0.016666666666666666)
2+
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("FE Compatibility code V2 by Mokiros")
7
	local RealPlayer = RealPlayer
8
	script.Parent = RealPlayer.Character
9
10
	--Fake event to make stuff like Mouse.KeyDown work
11
	local Disconnect_Function = function(this)
12
		this[1].Functions[this[2]] = nil
13
	end
14
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15
	local FakeEvent_Metatable = {__index={
16
		Connect = function(this,f)
17
			local i = tostring(math.random(0,10000))
18
			while this.Functions[i] do
19
				i = tostring(math.random(0,10000))
20
			end
21
			this.Functions[i] = f
22
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24
	}}
25
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
26
	local function fakeEvent()
27
		return setmetatable({Functions={}},FakeEvent_Metatable)
28
	end
29
30
	--Creating fake input objects with fake variables
31
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
32
    FakeMouse.keyUp = FakeMouse.KeyUp
33
    FakeMouse.keyDown = FakeMouse.KeyDown
34
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
35
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
36
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
37
	end}
38
	--Merged 2 functions into one by checking amount of arguments
39
	CAS.UnbindAction = CAS.BindAction
40
41
	--This function will trigger the events that have been :Connect()'ed
42
	local function TriggerEvent(self,ev,...)
43
		for _,f in pairs(self[ev].Functions) do
44
			f(...)
45
		end
46
	end
47
	FakeMouse.TriggerEvent = TriggerEvent
48
	UIS.TriggerEvent = TriggerEvent
49
50
	--Client communication
51
	local Event = Instance.new("RemoteEvent")
52
	Event.Name = "UserInput_Event"
53
	Event.OnServerEvent:Connect(function(plr,io)
54
	    if plr~=RealPlayer then return end
55
		FakeMouse.Target = io.Target
56
		FakeMouse.Hit = io.Hit
57
		if not io.isMouse then
58
			local b = io.UserInputState == Enum.UserInputState.Begin
59
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
60
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
61
			end
62
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
63
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
64
			end
65
			for _,t in pairs(CAS.Actions) do
66
				for _,k in pairs(t.Keys) do
67
					if k==io.KeyCode then
68
						t.Function(t.Name,io.UserInputState,io)
69
					end
70
				end
71
			end
72
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
73
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
74
	    end
75
	end)
76
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
77
	local Mouse = owner:GetMouse()
78
	local UIS = game:GetService("UserInputService")
79
	local input = function(io,RobloxHandled)
80
		if RobloxHandled then return end
81
		--Since InputObject is a client-side instance, we create and pass table instead
82
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
83
	end
84
	UIS.InputBegan:Connect(input)
85
	UIS.InputEnded:Connect(input)
86
	local h,t
87
	--Give the server mouse data every second frame, but only if the values changed
88
	--If player is not moving their mouse, client won't fire events
89
	local HB = game:GetService("RunService").Heartbeat
90
	while true do
91
		if h~=Mouse.Hit or t~=Mouse.Target then
92
			h,t=Mouse.Hit,Mouse.Target
93
			Event:FireServer({isMouse=true,Target=t,Hit=h})
94
		end
95
		--Wait 2 frames
96
		for i=1,2 do
97
			HB:Wait()
98
		end
99
	end]==],script)
100
101
	----Sandboxed game object that allows the usage of client-side methods and services
102
	--Real game object
103
	local RealGame = game
104
105
	--Metatable for fake service
106
	local FakeService_Metatable = {
107
		__index = function(self,k)
108
			local s = rawget(self,"_RealService")
109
			if s then
110
				return typeof(s[k])=="function"
111
				and function(_,...)return s[k](s,...)end or s[k]
112
			end
113
		end,
114
		__newindex = function(self,k,v)
115
			local s = rawget(self,"_RealService")
116
			if s then s[k]=v end
117
		end
118
	}
119
	local function FakeService(t,RealService)
120
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
121
		return setmetatable(t,FakeService_Metatable)
122
	end
123
124
	--Fake game object
125
	local FakeGame = {
126
		GetService = function(self,s)
127
			return rawget(self,s) or RealGame:GetService(s)
128
		end,
129
		Players = FakeService({
130
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
131
		},"Players"),
132
		UserInputService = FakeService(UIS,"UserInputService"),
133
		ContextActionService = FakeService(CAS,"ContextActionService"),
134
		RunService = FakeService({
135
			_btrs = {},
136
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
137
			BindToRenderStep = function(self,name,_,fun)
138
				self._btrs[name] = self.Heartbeat:Connect(fun)
139
			end,
140
			UnbindFromRenderStep = function(self,name)
141
				self._btrs[name]:Disconnect()
142
			end,
143
		},"RunService")
144
	}
145
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
146
	FakeGame.service = FakeGame.GetService
147
	FakeService(FakeGame,game)
148
	--Changing owner to fake player object to support owner:GetMouse()
149
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
150
end
151
152
print("Za Warudo!")
153
  wait(0.01)
154
  Effects = {}
155
  local Player = game.Players.localPlayer
156
  local Character = Player.Character
157
  Character.Archivable = true
158
  AdvancingFortress = Character:Clone()
159
  AdvancingFortress.Parent = Character
160
  torso = AdvancingFortress.Torso
161
  hum = AdvancingFortress.Humanoid
162
  AdvancingFortress.Name = "Advancing Fortress"
163
  pl = AdvancingFortress
164
  for i, v in pairs(AdvancingFortress:GetChildren()) do
165
    if v:IsA("BasePart") then
166
      v.Transparency = 1
167
    end
168
  end
169
  local Humanoid = AdvancingFortress.Humanoid
170
  local Mouse = Player:GetMouse()
171
  local LeftArm = AdvancingFortress["Left Arm"]
172
  local RightArm = AdvancingFortress["Right Arm"]
173
  local LeftLeg = AdvancingFortress["Left Leg"]
174
  local RightLeg = AdvancingFortress["Right Leg"]
175
  local Head = AdvancingFortress.Head
176
  local Torso = AdvancingFortress.Torso
177
  local Camera = game.Workspace.CurrentCamera
178
  local RootPart = AdvancingFortress.HumanoidRootPart
179
  local RootJoint = RootPart.RootJoint
180
  local attack = false
181
  local Anim = "Idle"
182
  local attacktype = 1
183
  local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
184
  local velocity = RootPart.Velocity.y
185
  local sine = 0
186
  local change = 1
187
  local Create = LoadLibrary("RbxUtility").Create
188
  local TimeStop = false
189
  local m = Create("Model")({
190
    Parent = AdvancingFortress,
191
    Name = "WeaponModel"
192
  })
193
  Head.face:remove()
194
  AdvancingFortress.Head.Name = "FHead"
195
  AdvancingFortress.Torso.Name = "FTorso"
196
  AdvancingFortress.HumanoidRootPart.Name = "FHumanoidRootPart"
197
  Humanoid.Animator.Parent = nil
198
  AdvancingFortress.Animate.Parent = nil
199
  local function newMotor(part0, part1, c0, c1)
200
    local w = Create("Weld")({
201
      Parent = part0,
202
      Part0 = part0,
203
      Part1 = part1,
204
      C0 = c0,
205
      C1 = c1
206
    })
207
    return w
208
  end
209
  function clerp(a, b, t)
210
    return a:lerp(b, t)
211
  end
212
  RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
213
  NeckCF = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
214
  local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
215
  local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
216
  local RH = newMotor(Torso, RightLeg, CFrame.new(0.5, -2, 0), CFrame.new(0, 0, 0))
217
  local LH = newMotor(Torso, LeftLeg, CFrame.new(-0.5, -2, 0), CFrame.new(0, 0, 0))
218
  RootJoint.C1 = CFrame.new(0, 0, 0)
219
  RootJoint.C0 = CFrame.new(0, 0, 0)
220
  Torso.Neck.C1 = CFrame.new(0, 0, 0)
221
  Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
222
  local rarmc1 = RW.C1
223
  local larmc1 = LW.C1
224
  local rlegc1 = RH.C1
225
  local llegc1 = LH.C1
226
  local resetc1 = false
227
  function PlayAnimationFromTable(table, speed, bool)
228
    RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
229
    Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
230
    RW.C0 = clerp(RW.C0, table[3], speed)
231
    LW.C0 = clerp(LW.C0, table[4], speed)
232
    RH.C0 = clerp(RH.C0, table[5], speed)
233
    LH.C0 = clerp(LH.C0, table[6], speed)
234
    if bool == true and resetc1 == false then
235
      resetc1 = true
236
      RootJoint.C1 = RootJoint.C1
237
      Torso.Neck.C1 = Torso.Neck.C1
238
      RW.C1 = rarmc1
239
      LW.C1 = larmc1
240
      RH.C1 = rlegc1
241
      LH.C1 = llegc1
242
    end
243
  end
244
  ArtificialHB = Create("BindableEvent", script)({Parent = script, Name = "Heartbeat"})
245
  script:WaitForChild("Heartbeat")
246
  frame = 0.03333333333333333
247
  tf = 0
248
  allowframeloss = false
249
  tossremainder = false
250
  lastframe = tick()
251
  script.Heartbeat:Fire()
252
  game:GetService("RunService").Heartbeat:connect(function(s, p)
253
    tf = tf + s
254
    if tf >= frame then
255
      if allowframeloss then
256
        script.Heartbeat:Fire()
257
        lastframe = tick()
258
      else
259
        for i = 1, math.floor(tf / frame) do
260
          script.Heartbeat:Fire()
261
        end
262
        lastframe = tick()
263
      end
264
      if tossremainder then
265
        tf = 0
266
      else
267
        tf = tf - frame * math.floor(tf / frame)
268
      end
269
    end
270
  end)
271
  function swait(num)
272
    if num == 0 or num == nil then
273
      ArtificialHB.Event:wait()
274
    else
275
      for i = 0, num do
276
        ArtificialHB.Event:wait()
277
      end
278
    end
279
  end
280
  function RemoveOutlines(part)
281
    part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
282
  end
283
  CFuncs = {
284
    Part = {
285
      Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
286
        local Part = Create("Part")({
287
          Parent = Parent,
288
          Reflectance = Reflectance,
289
          Transparency = Transparency,
290
          CanCollide = false,
291
          Locked = true,
292
          BrickColor = BrickColor.new(tostring(BColor)),
293
          Name = Name,
294
          Size = Size,
295
          Material = Material
296
        })
297
        RemoveOutlines(Part)
298
        return Part
299
      end
300
    },
301
    Mesh = {
302
      Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
303
        local Msh = Create(Mesh)({
304
          Parent = Part,
305
          Offset = OffSet,
306
          Scale = Scale
307
        })
308
        if Mesh == "SpecialMesh" then
309
          Msh.MeshType = MeshType
310
          Msh.MeshId = MeshId
311
        end
312
        return Msh
313
      end
314
    },
315
    Weld = {
316
      Create = function(Parent, Part0, Part1, C0, C1)
317
        local Weld = Create("Weld")({
318
          Parent = Parent,
319
          Part0 = Part0,
320
          Part1 = Part1,
321
          C0 = C0,
322
          C1 = C1
323
        })
324
        return Weld
325
      end
326
    },
327
    Sound = {
328
      Create = function(id, par, vol, pit)
329
        local Sound = Create("Sound")({
330
          Volume = vol,
331
          Pitch = pit or 1,
332
          SoundId = "rbxassetid://" .. id,
333
          Parent = par or workspace
334
        })
335
        Sound:play()
336
        game:GetService("Debris"):AddItem(Sound, 130)
337
        return Sound
338
      end
339
    },
340
    Decal = {
341
      Create = function(Color, Texture, Transparency, Name, Parent)
342
        local Decal = Create("Decal")({
343
          Color3 = Color,
344
          Texture = "rbxassetid://" .. Texture,
345
          Transparency = Transparency,
346
          Name = Name,
347
          Parent = Parent
348
        })
349
        return Decal
350
      end
351
    },
352
    BillboardGui = {
353
      Create = function(Parent, Image, Position, Size)
354
        local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
355
        BillPar.CFrame = CFrame.new(Position)
356
        local Bill = Create("BillboardGui")({
357
          Parent = BillPar,
358
          Adornee = BillPar,
359
          Size = UDim2.new(1, 0, 1, 0),
360
          SizeOffset = Vector2.new(Size, Size)
361
        })
362
        local d = Create("ImageLabel", Bill)({
363
          Parent = Bill,
364
          BackgroundTransparency = 1,
365
          Size = UDim2.new(1, 0, 1, 0),
366
          Image = "rbxassetid://" .. Image
367
        })
368
        return BillPar
369
      end
370
    },
371
    ParticleEmitter = {
372
      Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
373
        local Particle = Create("ParticleEmitter")({
374
          Parent = Parent,
375
          Color = ColorSequence.new(Color1, Color2),
376
          LightEmission = LightEmission,
377
          Size = Size,
378
          Texture = Texture,
379
          Transparency = Transparency,
380
          ZOffset = ZOffset,
381
          Acceleration = Accel,
382
          Drag = Drag,
383
          LockedToPart = LockedToPart,
384
          VelocityInheritance = VelocityInheritance,
385
          EmissionDirection = EmissionDirection,
386
          Enabled = Enabled,
387
          Lifetime = LifeTime,
388
          Rate = Rate,
389
          Rotation = Rotation,
390
          RotSpeed = RotSpeed,
391
          Speed = Speed,
392
          VelocitySpread = VelocitySpread
393
        })
394
        return Particle
395
      end
396
    },
397
    CreateTemplate = {}
398
  }
399
  function rayCast(Position, Direction, Range, Ignore)
400
    return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
401
  end
402
  function FindNearestTorso(pos)
403
    local list = game.Workspace:children()
404
    local torso
405
    local dist = 1000
406
    local temp, human, temp2
407
    for x = 1, #list do
408
      temp2 = list[x]
409
      if temp2.className == "Model" and temp2.Name ~= Character.Name then
410
        temp = temp2:findFirstChild("Torso")
411
        human = temp2:findFirstChild("Humanoid")
412
        if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
413
          local dohit = true
414
          if dohit == true then
415
            torso = temp
416
            dist = (temp.Position - pos).magnitude
417
          end
418
        end
419
      end
420
    end
421
    return torso, dist
422
  end
423
  function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
424
    if hit.Parent == nil then
425
      return
426
    end
427
    local h = hit.Parent:FindFirstChild("Humanoid")
428
    for _, v in pairs(hit.Parent:children()) do
429
      if v:IsA("Humanoid") then
430
        h = v
431
      end
432
    end
433
    if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
434
      if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
435
        return
436
      end
437
      local c = Create("ObjectValue")({
438
        Name = "creator",
439
        Value = game:service("Players").LocalPlayer,
440
        Parent = h
441
      })
442
      game:GetService("Debris"):AddItem(c, 0.5)
443
      CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
444
      local Damage = math.random(minim, maxim)
445
      local blocked = false
446
      local block = hit.Parent:findFirstChild("Block")
447
      if block ~= nil and block.className == "IntValue" and block.Value > 0 then
448
        blocked = true
449
        block.Value = block.Value - 1
450
        print(block.Value)
451
      end
452
      if TimeStop == false then
453
        h.Health = h.Health - Damage
454
        ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Really red").Color)
455
      elseif TimeStop == true then
456
        repeat
457
          wait()
458
        until TimeStop == false
459
        h.Health = h.Health - Damage / 2
460
        ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Really red").Color)
461
      end
462
      if Type == "Knockdown" then
463
        local hum = hit.Parent.Humanoid
464
        hum.PlatformStand = true
465
        coroutine.resume(coroutine.create(function(HHumanoid)
466
          swait(1)
467
          HHumanoid.PlatformStand = false
468
        end), hum)
469
        local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
470
        local bodvol = Create("BodyVelocity")({
471
          velocity = angle * knockback,
472
          P = 5000,
473
          maxForce = Vector3.new(8000, 8000, 8000),
474
          Parent = hit
475
        })
476
        local rl = Create("BodyAngularVelocity")({
477
          P = 3000,
478
          maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
479
          angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
480
          Parent = hit
481
        })
482
        game:GetService("Debris"):AddItem(bodvol, 0.5)
483
        game:GetService("Debris"):AddItem(rl, 0.5)
484
      elseif Type == "Normal" then
485
        local vp = Create("BodyVelocity")({
486
          P = 500,
487
          maxForce = Vector3.new(math.huge, 0, math.huge),
488
          velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
489
        })
490
        if knockback > 0 then
491
          vp.Parent = hit.Parent.Torso
492
        end
493
        game:GetService("Debris"):AddItem(vp, 0.5)
494
      elseif Type == "Up" then
495
        local bodyVelocity = Create("BodyVelocity")({
496
          velocity = Vector3.new(0, 20, 0),
497
          P = 5000,
498
          maxForce = Vector3.new(8000, 8000, 8000),
499
          Parent = hit
500
        })
501
        game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
502
      elseif Type == "DarkUp" then
503
        coroutine.resume(coroutine.create(function()
504
          for i = 0, 1, 0.1 do
505
            swait()
506
            Effects.Block.Create(BrickColor.new("Really black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, 0.08, 1)
507
          end
508
        end))
509
        local bodyVelocity = Create("BodyVelocity")({
510
          velocity = Vector3.new(0, 20, 0),
511
          P = 5000,
512
          maxForce = Vector3.new(8000, 8000, 8000),
513
          Parent = hit
514
        })
515
        game:GetService("Debris"):AddItem(bodyVelocity, 1)
516
      elseif Type == "Snare" then
517
        local bp = Create("BodyPosition")({
518
          P = 2000,
519
          D = 100,
520
          maxForce = Vector3.new(math.huge, math.huge, math.huge),
521
          position = hit.Parent.Torso.Position,
522
          Parent = hit.Parent.Torso
523
        })
524
        game:GetService("Debris"):AddItem(bp, 1)
525
      elseif Type == "Freeze" then
526
        local BodPos = Create("BodyPosition")({
527
          P = 50000,
528
          D = 1000,
529
          maxForce = Vector3.new(math.huge, math.huge, math.huge),
530
          position = hit.Parent.Torso.Position,
531
          Parent = hit.Parent.Torso
532
        })
533
        local BodGy = Create("BodyGyro")({
534
          maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
535
          P = 20000,
536
          Parent = hit.Parent.Torso,
537
          cframe = hit.Parent.Torso.CFrame
538
        })
539
        hit.Parent.Torso.Anchored = true
540
        coroutine.resume(coroutine.create(function(Part)
541
          swait(1.5)
542
          Part.Anchored = false
543
        end), hit.Parent.Torso)
544
        game:GetService("Debris"):AddItem(BodPos, 3)
545
        game:GetService("Debris"):AddItem(BodGy, 3)
546
      end
547
      local debounce = Create("BoolValue")({
548
        Name = "DebounceHit",
549
        Parent = hit.Parent,
550
        Value = true
551
      })
552
      game:GetService("Debris"):AddItem(debounce, Delay)
553
      c = Create("ObjectValue")({
554
        Name = "creator",
555
        Value = Player,
556
        Parent = h
557
      })
558
      game:GetService("Debris"):AddItem(c, 0.5)
559
    end
560
  end
561
  function ShowDamage(Pos, Text, Time, Color)
562
    local Rate = 0.03333333333333333
563
    local Pos = Pos or Vector3.new(0, 0, 0)
564
    local Text = Text or ""
565
    local Time = Time or 2
566
    local Color = Color or Color3.new(1, 0, 1)
567
    local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
568
    EffectPart.Anchored = true
569
    local BillboardGui = Create("BillboardGui")({
570
      Size = UDim2.new(3, 0, 3, 0),
571
      Adornee = EffectPart,
572
      Parent = EffectPart
573
    })
574
    local TextLabel = Create("TextLabel")({
575
      BackgroundTransparency = 1,
576
      Size = UDim2.new(1, 0, 1, 0),
577
      Text = Text,
578
      Font = "SciFi",
579
      TextColor3 = Color,
580
      TextScaled = true,
581
      Parent = BillboardGui
582
    })
583
    game.Debris:AddItem(EffectPart, Time)
584
    EffectPart.Parent = game:GetService("Workspace")
585
    delay(0, function()
586
      local Frames = Time / Rate
587
      for Frame = 1, Frames do
588
        wait(Rate)
589
        local Percent = Frame / Frames
590
        EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
591
        TextLabel.TextTransparency = Percent
592
      end
593
      if EffectPart and EffectPart.Parent then
594
        EffectPart:Destroy()
595
      end
596
    end)
597
  end
598
  local STDamage = false
599
  function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
600
    for _, c in pairs(workspace:children()) do
601
      local hum = c:findFirstChild("Humanoid")
602
      if hum ~= nil then
603
        local head = c:findFirstChild("Torso")
604
        if head ~= nil then
605
          local targ = head.Position - Part.Position
606
          local mag = targ.magnitude
607
          if Magnitude >= mag and c.Name ~= Player.Name then
608
            Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, 0.1, HitSound, HitPitch)
609
            if STDamage == true then
610
              for i = 1, 3 do
611
                Effects.Block.Create(BrickColor.new("Really black"), head.CFrame, 1, 1, 1, 4, 4, 4, 0.07, 1)
612
              end
613
              for i = 1, 10 do
614
                CamShake(1, 70000)
615
                Effects.Break.Create(BrickColor.new("Really black"), head.CFrame, 1, 1, 1)
616
              end
617
            elseif STDamage == false then
618
              CamShake(1, 90000)
619
              Effects.Block.Create(BrickColor.new("Really black"), head.CFrame, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.07, 1)
620
              for i = 1, 2 do
621
                Effects.Break.Create(BrickColor.new("Really black"), head.CFrame, 0.4, 0.4, 0.4)
622
              end
623
            end
624
          end
625
        end
626
      end
627
    end
628
  end
629
  HHandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "HHandle", Vector3.new(1.09999979, 0.299999923, 1.0999999))
630
  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))
631
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.09999979, 0.399999917, 1.0999999))
632
  PartWeld = CFuncs.Weld.Create(m, HHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.350002289, 0, 1.00000024, -3.21031663E-8, -5.96046448E-8, -3.21031663E-8, 1.00000119, 1.38630043E-7, -5.96046448E-8, 1.38630043E-7, 1.00000024))
633
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.09999979, 0.499999911, 1.0999999))
634
  PartWeld = CFuncs.Weld.Create(m, HHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-7.62939453E-6, -0.400001526, 7.62939453E-6, 1.00000024, -3.21031663E-8, -5.96046448E-8, -3.21031663E-8, 1.00000119, 1.38630043E-7, -5.96046448E-8, 1.38630043E-7, 1.00000024))
635
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.499999821, 0.299999893, 0.200000003))
636
  PartWeld = CFuncs.Weld.Create(m, HHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.300033569, -0.800000191, -0.44997406, 1.00000024, -3.21031663E-8, -5.96046448E-8, -3.21031663E-8, 1.00000119, 1.38630043E-7, -5.96046448E-8, 1.38630043E-7, 1.00000024))
637
  Eye1 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "Really red", "Eye1", Vector3.new(0.400000006, 0.200000003, 0.200000003))
638
  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))
639
  CFuncs.Mesh.Create("SpecialMesh", Eye1, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
640
  Eye2 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "Really red", "Eye2", Vector3.new(0.400000006, 0.200000003, 0.200000003))
641
  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))
642
  CFuncs.Mesh.Create("SpecialMesh", Eye2, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
643
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.499999821, 0.300000012, 0.200000003))
644
  PartWeld = CFuncs.Weld.Create(m, HHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.299995422, -0.800000191, 0.449989319, 5.96046448E-8, -1.38630043E-7, -1.00000024, -3.21031663E-8, 1.00000119, 1.38630043E-7, 1.00000024, -3.21031663E-8, -5.96046448E-8))
645
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.10000002, 0.999999881, 1.0999999))
646
  PartWeld = CFuncs.Weld.Create(m, HHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.200004578, -0.150001526, 0.200012207, 1.00000024, -3.21031663E-8, -5.96046448E-8, -3.21031663E-8, 1.00000119, 1.38630043E-7, -5.96046448E-8, 1.38630043E-7, 1.00000024))
647
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.600000024))
648
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.449981689, -0.750000954, 0.250007629, 5.96046448E-8, -1.38630043E-7, -1.00000024, -3.21031663E-8, 1.00000119, 1.38630043E-7, 1.00000024, -3.21031663E-8, -5.96046448E-8))
649
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
650
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.20000005, 0.200000003, 0.200000003))
651
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0500011444, -0.449970245, 0.650001526, 3.21031663E-8, -1.00000119, -1.38630043E-7, -5.96046448E-8, 1.38630043E-7, 1.00000024, -1.00000024, 3.21031663E-8, 5.96046448E-8))
652
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
653
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.5))
654
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.449970245, -1.05000114, 0.300033569, -5.96046448E-8, 1.38630043E-7, 1.00000024, -3.21031663E-8, 1.00000119, 1.38630043E-7, -1.00000024, 3.21031663E-8, 5.96046448E-8))
655
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
656
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.5))
657
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.449996948, -1.05000019, 0.300014496, 1.00000024, -3.21031663E-8, -5.96046448E-8, -3.21031663E-8, 1.00000119, 1.38630043E-7, -5.96046448E-8, 1.38630043E-7, 1.00000024))
658
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
659
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.20000005, 0.200000003, 0.200000003))
660
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0500011444, -0.650009155, 0.449989319, 3.21031663E-8, -1.00000119, -1.38630043E-7, 5.96046448E-8, -1.38630043E-7, -1.00000024, 1.00000024, -3.21031663E-8, -5.96046448E-8))
661
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
662
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.600000024))
663
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.450012207, -0.750001907, 0.249996185, -1.00000024, 3.21031663E-8, 5.96046448E-8, -3.21031663E-8, 1.00000119, 1.38630043E-7, 5.96046448E-8, -1.38630043E-7, -1.00000024))
664
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
665
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.300000012, 0.200000003))
666
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.449985504, -0.800001144, 0.0500106812, 5.96046448E-8, -1.38630043E-7, -1.00000024, -3.21031663E-8, 1.00000119, 1.38630043E-7, 1.00000024, -3.21031663E-8, -5.96046448E-8))
667
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
668
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.300000012, 0.200000003))
669
  WedgeWeld = CFuncs.Weld.Create(m, HHandle, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.44997406, -0.800002098, 0.0500030518, -1.00000024, 3.21031663E-8, 5.96046448E-8, -3.21031663E-8, 1.00000119, 1.38630043E-7, 5.96046448E-8, -1.38630043E-7, -1.00000024))
670
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
671
  THandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "THandle", Vector3.new(1, 0.799999893, 1))
672
  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))
673
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.19999981, 0.699999928, 1.20000005))
674
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.328445435, -0.67606163, -0.323509216, 0.709785044, 0.0255700666, -0.70395416, -2.32494262E-4, 0.999350607, 0.0360652842, 0.704418302, -0.0254352745, 0.709329426))
675
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.99999994, 0.499999851, 0.900000036))
676
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.354995728, 0.217259884, 0.408233643, 0.709785223, -0.157498211, -0.686585248, -2.32138293E-4, 0.974633098, -0.2238141, 0.704418123, 0.159019142, 0.691742837))
677
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.80000019, 0.700000048, 0.800000012))
678
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-3.81469727E-5, -0.843423843, -1.0044136, 1, -8.19564079E-8, 5.96046519E-8, -1.01078633E-7, 0.939694166, -0.342019171, 1.52638329E-8, 0.34201926, 0.939693213))
679
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
680
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.60000014, 0.400000006, 1.39999998))
681
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-3.81469727E-5, -0.793423653, -0.504411697, 1, -8.19564079E-8, 5.96046519E-8, -1.01078633E-7, 0.939694166, -0.342019171, 1.52638329E-8, 0.34201926, 0.939693213))
682
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
683
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.19999981, 0.499999911, 1.19999993))
684
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.198799133, -0.0796661377, -0.194431305, 0.709785044, 0.0255700666, -0.70395416, -2.32494262E-4, 0.999350607, 0.0360652842, 0.704418302, -0.0254352745, 0.709329426))
685
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.80000019, 0.300000012, 1.80000007))
686
  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))
687
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
688
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.200000003, 1.10000002, 0.300000012))
689
  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))
690
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
691
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.09999979, 0.499999911, 1.0999999))
692
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.11920929, 0.416726112, -0.115348816, 0.709785044, 0.0255700666, -0.70395416, -2.32494262E-4, 0.999350607, 0.0360652842, 0.704418302, -0.0254352745, 0.709329426))
693
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.39999986, 1.19999993, 1.39999986))
694
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.218803406, -0.55094862, 0.222564697, 0.709785223, -0.157498211, -0.686585248, -2.32138293E-4, 0.974633098, -0.2238141, 0.704418123, 0.159019142, 0.691742837))
695
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.999999762, 0.300000012, 0.799999893))
696
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0691986084, 0.816726685, -0.165359497, 0.709785044, 0.0255700666, -0.70395416, -2.32494262E-4, 0.999350607, 0.0360652842, 0.704418302, -0.0254352745, 0.709329426))
697
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.899999976, 0.499999851, 0.899999917))
698
  PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.331642151, 0.516366959, 0.335166931, 0.709785223, -0.157498211, -0.686585248, -2.32138293E-4, 0.974633098, -0.2238141, 0.704418123, 0.159019142, 0.691742837))
699
  AHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "AHandleR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
700
  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))
701
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
702
  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))
703
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
704
  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))
705
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
706
  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))
707
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
708
  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))
709
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
710
  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))
711
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
712
  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))
713
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
714
  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))
715
  HitboxR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "HitboxR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
716
  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))
717
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.5, 0.200000003))
718
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.200012207, -0.149997711, 0.360010147, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
719
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
720
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.300000012))
721
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, -1.30999851, 0.659896851, -5.96046519E-8, 1.41561088E-7, -1.00000024, -8.19564079E-8, 1.00000119, -1.41561088E-7, 1, -8.19564079E-8, 5.96046519E-8))
722
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
723
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.5, 0.200000003))
724
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199981689, -0.149998665, 0.359991074, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
725
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
726
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.899999976))
727
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-1.90734863E-6, 0.309997559, -0.0598983765, -5.96046519E-8, 1.41561088E-7, -1.00000024, 8.19564079E-8, -1.00000119, 1.41561088E-7, -1, 8.19564079E-8, -5.96046519E-8))
728
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
729
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.300000012))
730
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-3.81469727E-6, 0.309999466, 0.659896851, 5.96046519E-8, -1.41561088E-7, 1.00000024, 8.19564079E-8, -1.00000119, 1.41561088E-7, 1, -8.19564079E-8, 5.96046519E-8))
731
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
732
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.01999998, 0.200000003, 0.300000012))
733
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-5.7220459E-6, 0.200003624, 0.150016785, 5.96046519E-8, -1.41561088E-7, 1.00000024, -8.19564079E-8, 1.00000119, -1.41561088E-7, -1, 8.19564079E-8, -5.96046519E-8))
734
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
735
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.300000012, 0.200000003))
736
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-9.53674316E-6, -1.06000042, 0.490097046, 5.96046519E-8, -1.41561088E-7, 1.00000024, -8.19564079E-8, 1.00000119, -1.41561088E-7, -1, 8.19564079E-8, -5.96046519E-8))
737
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
738
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.01999998, 0.200000003, 0.200000003))
739
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-5.7220459E-6, 0.20000267, 0.299995422, -5.96046519E-8, 1.41561088E-7, -1.00000024, -8.19564079E-8, 1.00000119, -1.41561088E-7, 1, -8.19564079E-8, 5.96046519E-8))
740
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
741
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.5, 0.200000003))
742
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(7.62939453E-6, 0.659999847, 0.490089417, -5.96046519E-8, 1.41561088E-7, -1.00000024, 8.19564079E-8, -1.00000119, 1.41561088E-7, -1, 8.19564079E-8, -5.96046519E-8))
743
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
744
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.900000095))
745
  WedgeWeld = CFuncs.Weld.Create(m, AHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-5.7220459E-6, -1.30999947, -0.0598831177, 5.96046519E-8, -1.41561088E-7, 1.00000024, -8.19564079E-8, 1.00000119, -1.41561088E-7, -1, 8.19564079E-8, -5.96046519E-8))
746
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
747
  AHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "AHandleL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
748
  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))
749
  HitboxL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "HitboxL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
750
  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))
751
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
752
  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))
753
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
754
  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))
755
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
756
  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))
757
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
758
  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))
759
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
760
  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))
761
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
762
  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))
763
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
764
  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))
765
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.300000012))
766
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-3.81469727E-6, 0.309998512, 0.660064697, 5.96046519E-8, 1.41561088E-7, 1.00000024, -8.19564079E-8, -1.00000119, -1.41561088E-7, 1, 8.19564079E-8, 5.96046519E-8))
767
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
768
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.5, 0.200000003))
769
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199989319, -0.149998665, 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))
770
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
771
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.900000095))
772
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-2.47955322E-5, -1.30999947, -0.060043335, 5.96046519E-8, 1.41561088E-7, 1.00000024, 8.19564079E-8, 1.00000119, 1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
773
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
774
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.01999998, 0.200000003, 0.300000012))
775
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-5.7220459E-6, 0.20000267, 0.150001526, 5.96046519E-8, 1.41561088E-7, 1.00000024, 8.19564079E-8, 1.00000119, 1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
776
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
777
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.5, 0.200000003))
778
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.199836731, -0.149998665, 0.36003685, -1, -8.19564079E-8, -5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, -5.96046519E-8, -1.41561088E-7, -1.00000024))
779
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
780
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.5, 0.200000003))
781
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(1.52587891E-5, 0.659998894, 0.489944458, -5.96046519E-8, -1.41561088E-7, -1.00000024, -8.19564079E-8, -1.00000119, -1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
782
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
783
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.5, 0.200000003))
784
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.199981689, -0.149999619, 0.360010147, -1, -8.19564079E-8, -5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, -5.96046519E-8, -1.41561088E-7, -1.00000024))
785
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
786
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.899999976))
787
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(2.67028809E-5, 0.309998512, -0.0600509644, -5.96046519E-8, -1.41561088E-7, -1.00000024, -8.19564079E-8, -1.00000119, -1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
788
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
789
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.300000012, 0.200000003))
790
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-1.33514404E-5, -1.06000042, 0.489936829, 5.96046519E-8, 1.41561088E-7, 1.00000024, 8.19564079E-8, 1.00000119, 1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
791
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
792
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.01999998, 0.200000003, 0.200000003))
793
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(7.62939453E-6, 0.200003624, 0.299987793, -5.96046519E-8, -1.41561088E-7, -1.00000024, 8.19564079E-8, 1.00000119, 1.41561088E-7, 1, 8.19564079E-8, 5.96046519E-8))
794
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
795
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(1.19999993, 0.200000003, 0.300000012))
796
  WedgeWeld = CFuncs.Weld.Create(m, AHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(9.53674316E-6, -1.30999947, 0.660049438, -5.96046519E-8, -1.41561088E-7, -1.00000024, 8.19564079E-8, 1.00000119, 1.41561088E-7, 1, 8.19564079E-8, 5.96046519E-8))
797
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
798
  LHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "LHandleR", Vector3.new(1.02999997, 1.00999999, 1.19000006))
799
  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))
800
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.800000012, 0.800000012, 0.200000003))
801
  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))
802
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
803
  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))
804
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
805
  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))
806
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.400000006, 1.20000005, 0.200000003))
807
  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))
808
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
809
  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))
810
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
811
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
812
  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))
813
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
814
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
815
  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))
816
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
817
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
818
  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))
819
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
820
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
821
  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))
822
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
823
  LHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "LHandleL", Vector3.new(1.02999997, 1.00999999, 1.19000006))
824
  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))
825
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
826
  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))
827
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.400000006, 1.20000005, 0.300000012))
828
  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))
829
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
830
  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))
831
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
832
  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))
833
  CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
834
  Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Part", Vector3.new(0.800000012, 0.800000012, 0.300000012))
835
  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))
836
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
837
  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))
838
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
839
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
840
  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))
841
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
842
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
843
  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))
844
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
845
  Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Really black", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
846
  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))
847
  CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
848
  Shield = CFuncs.Part.Create(m, "Neon", 0, 0.5, "Really red", "Part", Vector3.new(9.1, 8.5, 0.2))
849
  CFuncs.Mesh.Create("SpecialMesh", Shield, "FileMesh", "rbxassetid://708292865", Vector3.new(0, 0, 0), Vector3.new(0.04, 0.04, 0.04))
850
  Shield.Parent = nil
851
  EffectModel = Create("Model")({Parent = Character, Name = "Effects"})
852
  Effects = {
853
    Block = {
854
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
855
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
856
        prt.Anchored = true
857
        prt.CFrame = cframe
858
        local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
859
        game:GetService("Debris"):AddItem(prt, 10)
860
        if Type == 1 or Type == nil then
861
          table.insert(Effects, {
862
            prt,
863
            "Block1",
864
            delay,
865
            x3,
866
            y3,
867
            z3,
868
            msh
869
          })
870
        elseif Type == 2 then
871
          table.insert(Effects, {
872
            prt,
873
            "Block2",
874
            delay,
875
            x3,
876
            y3,
877
            z3,
878
            msh
879
          })
880
        end
881
      end
882
    },
883
    Cylinder = {
884
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
885
        local prt = CFuncs.Part .. Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
886
        prt.Anchored = true
887
        prt.CFrame = cframe
888
        local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
889
        game:GetService("Debris"):AddItem(prt, 2)
890
        Effects[#Effects + 1] = {
891
          prt,
892
          "Cylinder",
893
          delay,
894
          x3,
895
          y3,
896
          z3
897
        }
898
      end
899
    },
900
    Head = {
901
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
902
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
903
        prt.Anchored = true
904
        prt.CFrame = cframe
905
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "nil", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
906
        game:GetService("Debris"):AddItem(prt, 10)
907
        table.insert(Effects, {
908
          prt,
909
          "Cylinder",
910
          delay,
911
          x3,
912
          y3,
913
          z3,
914
          msh
915
        })
916
      end
917
    },
918
    Sphere = {
919
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
920
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
921
        prt.Anchored = true
922
        prt.CFrame = cframe
923
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
924
        game:GetService("Debris"):AddItem(prt, 10)
925
        table.insert(Effects, {
926
          prt,
927
          "Cylinder",
928
          delay,
929
          x3,
930
          y3,
931
          z3,
932
          msh
933
        })
934
      end
935
    },
936
    Sphere2 = {
937
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
938
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
939
        prt.Anchored = true
940
        prt.CFrame = cframe
941
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
942
        game:GetService("Debris"):AddItem(prt, 10)
943
        table.insert(Effects, {
944
          prt,
945
          "Cylinder",
946
          delay,
947
          x3,
948
          y3,
949
          z3,
950
          msh
951
        })
952
      end
953
    },
954
    Elec = {
955
      Create = function(cff, x, y, z)
956
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("Purple"), "Part", Vector3.new(1, 1, 1))
957
        prt.Anchored = true
958
        prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
959
        prt.CFrame = CFrame.new(prt.Position)
960
        game:GetService("Debris"):AddItem(prt, 2)
961
        local xval = math.random() / 2
962
        local yval = math.random() / 2
963
        local zval = math.random() / 2
964
        local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
965
        table.insert(Effects, {
966
          prt,
967
          "Elec",
968
          0.1,
969
          x,
970
          y,
971
          z,
972
          xval,
973
          yval,
974
          zval
975
        })
976
      end
977
    },
978
    Ring = {
979
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
980
        local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
981
        prt.Anchored = true
982
        prt.CFrame = cframe
983
        local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
984
        game:GetService("Debris"):AddItem(prt, 10)
985
        table.insert(Effects, {
986
          prt,
987
          "Cylinder",
988
          delay,
989
          x3,
990
          y3,
991
          z3,
992
          msh
993
        })
994
      end
995
    },
996
    Wave = {
997
      Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
998
        local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
999
        prt.Anchored = true
1000
        prt.CFrame = cframe
1001
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1002
        game:GetService("Debris"):AddItem(prt, 10)
1003
        table.insert(Effects, {
1004
          prt,
1005
          "Cylinder",
1006
          delay,
1007
          x3,
1008
          y3,
1009
          z3,
1010
          msh
1011
        })
1012
      end
1013
    },
1014
    Break = {
1015
      Create = function(brickcolor, cframe, x1, y1, z1)
1016
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
1017
        prt.Anchored = true
1018
        prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1019
        local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1020
        local num = math.random(10, 50) / 1000
1021
        game:GetService("Debris"):AddItem(prt, 10)
1022
        table.insert(Effects, {
1023
          prt,
1024
          "Shatter",
1025
          num,
1026
          prt.CFrame,
1027
          math.random() - math.random(),
1028
          0,
1029
          math.random(50, 100) / 100
1030
        })
1031
      end
1032
    },
1033
    Fire = {
1034
      Create = function(brickcolor, cframe, x1, y1, z1, delay)
1035
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
1036
        prt.Anchored = true
1037
        prt.CFrame = cframe
1038
        msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1039
        game:GetService("Debris"):AddItem(prt, 10)
1040
        table.insert(Effects, {
1041
          prt,
1042
          "Fire",
1043
          delay,
1044
          1,
1045
          1,
1046
          1,
1047
          msh
1048
        })
1049
      end
1050
    },
1051
    FireWave = {
1052
      Create = function(brickcolor, cframe, x1, y1, z1)
1053
        local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
1054
        prt.Anchored = true
1055
        prt.CFrame = cframe
1056
        msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1057
        local d = Create("Decal")({
1058
          Parent = prt,
1059
          Texture = "rbxassetid://26356434",
1060
          Face = "Top"
1061
        })
1062
        local d = Create("Decal")({
1063
          Parent = prt,
1064
          Texture = "rbxassetid://26356434",
1065
          Face = "Bottom"
1066
        })
1067
        game:GetService("Debris"):AddItem(prt, 10)
1068
        table.insert(Effects, {
1069
          prt,
1070
          "FireWave",
1071
          1,
1072
          30,
1073
          math.random(400, 600) / 100,
1074
          msh
1075
        })
1076
      end
1077
    },
1078
    Lightning = {
1079
      Create = function(p0, p1, tym, ofs, col, th, tra, last)
1080
        local magz = (p0 - p1).magnitude
1081
        local curpos = p0
1082
        local trz = {
1083
          -ofs,
1084
          ofs
1085
        }
1086
        for i = 1, tym do
1087
          local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
1088
          local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
1089
          local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
1090
          li.Material = "Neon"
1091
          if tym == i then
1092
            local magz2 = (curpos - p1).magnitude
1093
            li.Size = Vector3.new(th, th, magz2)
1094
            li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
1095
            table.insert(Effects, {
1096
              li,
1097
              "Disappear",
1098
              last
1099
            })
1100
          else
1101
            li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
1102
            curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
1103
            game.Debris:AddItem(li, 10)
1104
            table.insert(Effects, {
1105
              li,
1106
              "Disappear",
1107
              last
1108
            })
1109
          end
1110
        end
1111
      end
1112
    },
1113
    EffectTemplate = {}
1114
  }
1115
  local Invisible = true
1116
  function Reappear()
1117
    for _, i in pairs(AdvancingFortress:children()) do
1118
      if i:IsA("BasePart") then
1119
        coroutine.resume(coroutine.create(function(Part)
1120
          for i = 0, 1, 0.3 do
1121
            swait()
1122
            Part.Transparency = -i
1123
          end
1124
          Part.Transparency = 0
1125
        end), i)
1126
      end
1127
    end
1128
    for _, i in pairs(m:children()) do
1129
      if i:IsA("BasePart") then
1130
        coroutine.resume(coroutine.create(function(Part)
1131
          for i = 0, 1, 0.3 do
1132
            swait()
1133
            Part.Transparency = i
1134
          end
1135
          Part.Transparency = 0
1136
        end), i)
1137
      end
1138
    end
1139
  end
1140
  function ReappearArmorOnly()
1141
    for _, i in pairs(m:children()) do
1142
      if i:IsA("BasePart") then
1143
        coroutine.resume(coroutine.create(function(Part)
1144
          for i = 0, 1, 0.3 do
1145
            swait()
1146
            Part.Transparency = i
1147
          end
1148
          Part.Transparency = 0
1149
        end), i)
1150
      end
1151
    end
1152
  end
1153
  function Disappear()
1154
    for _, i in pairs(AdvancingFortress:children()) do
1155
      if i:IsA("BasePart") then
1156
        coroutine.resume(coroutine.create(function(Part)
1157
          for i = 0, 1, 0.3 do
1158
            swait()
1159
            Part.Transparency = i
1160
          end
1161
          Part.Transparency = 1
1162
        end), i)
1163
      end
1164
    end
1165
    for _, i in pairs(m:children()) do
1166
      if i:IsA("BasePart") then
1167
        coroutine.resume(coroutine.create(function(Part)
1168
          for i = 0, 1, 0.3 do
1169
            swait()
1170
            Part.Transparency = i
1171
          end
1172
          Part.Transparency = 1
1173
        end), i)
1174
      end
1175
    end
1176
  end
1177
  function DisappearArmorOnly()
1178
    for _, i in pairs(m:children()) do
1179
      if i:IsA("BasePart") then
1180
        coroutine.resume(coroutine.create(function(Part)
1181
          for i = 0, 1, 0.3 do
1182
            swait()
1183
            Part.Transparency = i
1184
          end
1185
          Part.Transparency = 1
1186
        end), i)
1187
      end
1188
    end
1189
  end
1190
  function CamShake(time, freq)
1191
    coroutine.resume(coroutine.create(function()
1192
      local cam = game:GetService("Workspace").CurrentCamera
1193
      local time = 10
1194
      local seed = Vector3.new(math.random(100, 200) / freq, math.random(100, 200) / freq, 0)
1195
      if math.random(1, 2) == 1 then
1196
        seed = Vector3.new(-seed.x, seed.y, 0)
1197
      end
1198
      if math.random(1, 2) == 1 then
1199
        seed = Vector3.new(seed.x, -seed.y, 0)
1200
      end
1201
      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)
1202
      for i = 1, time do
1203
        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)
1204
        wait()
1205
      end
1206
    end))
1207
  end
1208
  local ora = false
1209
  function ORA()
1210
    attack = true
1211
    local S = CFuncs.Sound.Create("616593932", Torso, 1, 1)
1212
    S.Looped = true
1213
    if ora == true then
1214
      while ora == true do
1215
        CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
1216
        MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
1217
        for i = 0, 1, 0.8 do
1218
          swait()
1219
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1220
          PlayAnimationFromTable({
1221
            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),
1222
            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),
1223
            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),
1224
            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),
1225
            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),
1226
            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)
1227
          }, 0.8, false)
1228
        end
1229
        CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
1230
        MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
1231
        for i = 0, 1, 0.8 do
1232
          swait()
1233
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1234
          PlayAnimationFromTable({
1235
            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),
1236
            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),
1237
            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),
1238
            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),
1239
            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),
1240
            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)
1241
          }, 0.8, false)
1242
        end
1243
        CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
1244
        MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
1245
        for i = 0, 1, 0.8 do
1246
          swait()
1247
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1248
          PlayAnimationFromTable({
1249
            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),
1250
            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),
1251
            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),
1252
            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),
1253
            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),
1254
            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)
1255
          }, 0.8, false)
1256
        end
1257
        CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
1258
        MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
1259
        for i = 0, 1, 0.8 do
1260
          swait()
1261
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
1262
          PlayAnimationFromTable({
1263
            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),
1264
            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),
1265
            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),
1266
            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),
1267
            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),
1268
            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)
1269
          }, 0.8, false)
1270
        end
1271
        CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
1272
        MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
1273
      end
1274
    end
1275
    S:Stop()
1276
    local S2 = CFuncs.Sound.Create("276152532", Torso, 1.5, 1)
1277
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1278
    for i = 0, 1, 0.13 do
1279
      swait()
1280
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -3), 0.5)
1281
      PlayAnimationFromTable({
1282
        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),
1283
        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),
1284
        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),
1285
        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),
1286
        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),
1287
        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)
1288
      }, 0.2, false)
1289
    end
1290
    CFuncs.Sound.Create("471881954", HitboxR, 1, 1)
1291
    MagnitudeDamage(HitboxR, 7, 10, 15, 50, "Normal", "610359590", 1)
1292
    for i = 0, 1, 0.1 do
1293
      swait()
1294
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
1295
      PlayAnimationFromTable({
1296
        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),
1297
        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),
1298
        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),
1299
        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),
1300
        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),
1301
        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)
1302
      }, 0.6, false)
1303
    end
1304
    attack = false
1305
  end
1306
  function CastleCrusherFist()
1307
    attack = true
1308
    STDamage = true
1309
    local S2 = CFuncs.Sound.Create("276152532", Torso, 1, 1)
1310
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1311
    for i = 0, 1, 0.1 do
1312
      swait()
1313
      Effects.Block.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1314
      Effects.Break.Create(BrickColor.new("Really black"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1315
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.2)
1316
      PlayAnimationFromTable({
1317
        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),
1318
        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),
1319
        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),
1320
        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),
1321
        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),
1322
        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)
1323
      }, 0.2, false)
1324
    end
1325
    MagnitudeDamage(HitboxR, 10, 50, 80, 100, "Normal", "610359515", 1)
1326
    Effects.Wave.Create(BrickColor.new(""), 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)
1327
    CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
1328
    CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
1329
    for i = 0, 1, 0.08 do
1330
      swait()
1331
      Effects.Block.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1332
      Effects.Break.Create(BrickColor.new("Really black"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1333
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
1334
      PlayAnimationFromTable({
1335
        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),
1336
        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),
1337
        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),
1338
        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),
1339
        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),
1340
        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)
1341
      }, 0.6, false)
1342
    end
1343
    STDamage = false
1344
    attack = false
1345
  end
1346
  function CastleCrusherFist()
1347
    attack = true
1348
    STDamage = true
1349
    local S2 = CFuncs.Sound.Create("276152532", Torso, 1, 1)
1350
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1351
    for i = 0, 1, 0.1 do
1352
      swait()
1353
      Effects.Block.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1354
      Effects.Break.Create(BrickColor.new("Really black"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1355
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.5)
1356
      PlayAnimationFromTable({
1357
        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),
1358
        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),
1359
        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),
1360
        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),
1361
        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),
1362
        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)
1363
      }, 0.2, false)
1364
    end
1365
    Effects.Wave.Create(BrickColor.new("Really black"), 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)
1366
    Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 140
1367
    CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
1368
    CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
1369
    for i = 0, 1, 0.08 do
1370
      swait()
1371
      MagnitudeDamage(HitboxR, 5, 50, 80, 100, "Normal", "610359515", 1)
1372
      Effects.Block.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
1373
      Effects.Break.Create(BrickColor.new("Really black"), HitboxR.CFrame, 0.5, 0.5, 0.5)
1374
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 1)
1375
      PlayAnimationFromTable({
1376
        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),
1377
        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),
1378
        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),
1379
        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),
1380
        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),
1381
        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)
1382
      }, 0.6, false)
1383
    end
1384
    STDamage = false
1385
    attack = false
1386
  end
1387
  function weld5(part0, part1, c0, c1)
1388
    local weeld = Instance.new("Weld", part0)
1389
    weeld.Part0 = part0
1390
    weeld.Part1 = part1
1391
    weeld.C0 = c0
1392
    weeld.C1 = c1
1393
    return weeld
1394
  end
1395
  local Grab = false
1396
  function GRABEMBOIGRABEM()
1397
    attack = true
1398
    gp = nil
1399
    con1 = HitboxR.Touched:connect(function(hit)
1400
      local ht = hit.Parent
1401
      local hum1 = ht:FindFirstChild("Humanoid")
1402
      if Grab == false then
1403
        if hum1 ~= nil and hit.Parent ~= Character then
1404
          hum1.PlatformStand = true
1405
          gp = ht
1406
          Grab = true
1407
          local asd = weld5(RightArm, ht:FindFirstChild("Torso"), CFrame.new(0, -1.5, 0), CFrame.new(0, 0, 0))
1408
          asd.Parent = RightArm
1409
          asd.Name = "asd"
1410
          asd.C0 = asd.C0 * CFrame.Angles(math.rad(-90), 0, 0)
1411
          CFuncs.Sound.Create("200632821", Torso, 1, 1)
1412
        elseif hum1 == nil then
1413
          con1:disconnect()
1414
          wait()
1415
          return
1416
        end
1417
      end
1418
    end)
1419
    for i = 0, 1, 0.2 do
1420
      swait()
1421
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.3)
1422
      PlayAnimationFromTable({
1423
        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),
1424
        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),
1425
        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),
1426
        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),
1427
        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),
1428
        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)
1429
      }, 0.3, false)
1430
    end
1431
    for i = 0, 1, 0.1 do
1432
      swait()
1433
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
1434
      PlayAnimationFromTable({
1435
        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),
1436
        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),
1437
        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),
1438
        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),
1439
        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),
1440
        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)
1441
      }, 0.3, false)
1442
    end
1443
    if Grab == true then
1444
      for i = 1, 5 do
1445
        for i = 0, 1, 0.35 do
1446
          swait()
1447
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 13, -6), 0.3)
1448
          PlayAnimationFromTable({
1449
            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),
1450
            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),
1451
            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),
1452
            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),
1453
            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),
1454
            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)
1455
          }, 0.4, false)
1456
        end
1457
        for i = 0, 1, 0.3 do
1458
          swait()
1459
          RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
1460
          PlayAnimationFromTable({
1461
            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),
1462
            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),
1463
            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),
1464
            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),
1465
            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),
1466
            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)
1467
          }, 0.7, false)
1468
        end
1469
        local hit, pos = rayCast(HitboxR.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 100, Character)
1470
        if hit ~= nil then
1471
          MagnitudeDamage(HitboxR, 5, 10, 30, 0, "Normal", "610359515", 1.3)
1472
          Effects.Block.Create(BrickColor.new("Really black"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09, 1)
1473
          Effects.Wave.Create(BrickColor.new("Really black"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09)
1474
          Effects.Sphere.Create(BrickColor.new("Really black"), CFrame.new(pos), 3, 3, 3, 5, 5, 5, 0.09)
1475
        end
1476
      end
1477
    end
1478
    for i, v in pairs(RightArm:GetChildren()) do
1479
      if v.Name == "asd" and v:IsA("Weld") then
1480
        v:Remove()
1481
      end
1482
    end
1483
    Grab = false
1484
    con1:disconnect()
1485
    attack = false
1486
  end
1487
  local IsWearingArmor = false
1488
  function Armor(Mode)
1489
    attack = true
1490
    if IsWearingArmor == false and Mode == "On" then
1491
      IsWearingArmor = true
1492
      Disappear()
1493
      swait(10)
1494
      ReappearArmorOnly()
1495
      Character.Humanoid.MaxHealth = 500
1496
      Character.Humanoid.Health = 500
1497
      HHandleWeld.Part0 = Character.Head
1498
      THandleWeld.Part0 = Character.Torso
1499
      AHandleRWeld.Part0 = Character["Right Arm"]
1500
      AHandleLWeld.Part0 = Character["Left Arm"]
1501
      LHandleRWeld.Part0 = Character["Right Leg"]
1502
      LHandleLWeld.Part0 = Character["Left Leg"]
1503
      for i, v in pairs(AdvancingFortress:GetChildren()) do
1504
        if v:IsA("BasePart") then
1505
          v.Transparency = 1
1506
        end
1507
      end
1508
      for i, v in pairs(Character:GetChildren()) do
1509
        if v:IsA("Accessory") then
1510
          v.Handle.Transparency = 1
1511
        end
1512
      end
1513
    elseif IsWearingArmor == true and Mode == "Off" then
1514
      IsWearingArmor = false
1515
      DisappearArmorOnly()
1516
      for i, v in pairs(Character:GetChildren()) do
1517
        if v:IsA("Accessory") then
1518
          v.Handle.Transparency = 0
1519
        end
1520
      end
1521
      swait(10)
1522
      Reappear()
1523
      Character.Humanoid.MaxHealth = 100000000000000000
1524
      Character.Humanoid.Health = 100000000000000000
1525
      HHandleWeld.Part0 = Head
1526
      THandleWeld.Part0 = Torso
1527
      AHandleRWeld.Part0 = RightArm
1528
      AHandleLWeld.Part0 = LeftArm
1529
      LHandleRWeld.Part0 = RightLeg
1530
      LHandleLWeld.Part0 = LeftLeg
1531
      for i, v in pairs(AdvancingFortress:GetChildren()) do
1532
        if v:IsA("BasePart") then
1533
          v.Transparency = 0
1534
        end
1535
      end
1536
    end
1537
    attack = false
1538
  end
1539
  local ShieldMode = false
1540
  local ShieldCharge = false
1541
  function HoloHexShield()
1542
    attack = true
1543
    Shield.Parent = m
1544
    Shield.CanCollide = true
1545
    if ShieldMode == true then
1546
      while ShieldMode == true do
1547
        swait()
1548
        Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
1549
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1550
        PlayAnimationFromTable({
1551
          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),
1552
          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),
1553
          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),
1554
          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),
1555
          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),
1556
          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)
1557
        }, 0.3, false)
1558
      end
1559
    end
1560
    Shield.CanCollide = false
1561
    CFuncs.Sound.Create("200632211", HitboxR, 1, 0.8)
1562
    CFuncs.Sound.Create("200632875", HitboxR, 1, 0.9)
1563
    Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 160
1564
    Effects.Wave.Create(BrickColor.new("Really black"), 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)
1565
    for i = 0, 1, 0.05 do
1566
      swait()
1567
      MagnitudeDamage(Shield, 5, 10, 15, 20, "Normal", "610359515", 1.3)
1568
      Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
1569
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -3), 1)
1570
      PlayAnimationFromTable({
1571
        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),
1572
        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),
1573
        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),
1574
        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),
1575
        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),
1576
        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)
1577
      }, 0.5, false)
1578
    end
1579
    Shield.Parent = nil
1580
    attack = false
1581
  end
1582
  Mouse.Button1Down:connect(function()
1583
    if attack == false and attacktype == 1 then
1584
      attacktype = 2
1585
      attackone()
1586
    elseif attack == false and attacktype == 2 then
1587
      attacktype = 1
1588
      attacktwo()
1589
    end
1590
  end)
1591
  game.Lighting.Outlines = false
1592
  function attackone()
1593
    attack = true
1594
    for i = 0, 1, 0.12 do
1595
      swait()
1596
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1597
      PlayAnimationFromTable({
1598
        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),
1599
        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),
1600
        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),
1601
        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),
1602
        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),
1603
        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)
1604
      }, 0.3, false)
1605
    end
1606
    MagnitudeDamage(HitboxR, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1)
1607
    CFuncs.Sound.Create("200632136", HitboxR, 1, 1)
1608
    RootPart.Velocity = RootPart.CFrame.lookVector * 40
1609
    for i = 0, 1, 0.11 do
1610
      swait()
1611
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1612
      PlayAnimationFromTable({
1613
        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),
1614
        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),
1615
        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),
1616
        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),
1617
        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),
1618
        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)
1619
      }, 0.45, false)
1620
    end
1621
    attack = false
1622
  end
1623
  function attacktwo()
1624
    attack = true
1625
    for i = 0, 1, 0.12 do
1626
      swait()
1627
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1628
      PlayAnimationFromTable({
1629
        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),
1630
        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),
1631
        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),
1632
        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),
1633
        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),
1634
        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)
1635
      }, 0.34, false)
1636
    end
1637
    MagnitudeDamage(HitboxL, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1.1)
1638
    CFuncs.Sound.Create("200632136", HitboxL, 1, 1)
1639
    RootPart.Velocity = RootPart.CFrame.lookVector * 40
1640
    for i = 0, 1, 0.12 do
1641
      swait()
1642
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1643
      PlayAnimationFromTable({
1644
        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),
1645
        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),
1646
        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),
1647
        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),
1648
        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),
1649
        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)
1650
      }, 0.45, false)
1651
    end
1652
    attack = false
1653
  end
1654
  function findNearestTorso(pos)
1655
    local list = game.Workspace:children()
1656
    local torso
1657
    local dist = 1000
1658
    local temp, human, temp2
1659
    for x = 1, #list do
1660
      temp2 = list[x]
1661
      if temp2.className == "Model" and temp2.Name ~= Character.Name then
1662
        temp = temp2:findFirstChild("Torso")
1663
        human = temp2:findFirstChild("Humanoid")
1664
        if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
1665
          local dohit = true
1666
          if dohit == true then
1667
            torso = temp
1668
            dist = (temp.Position - pos).magnitude
1669
          end
1670
        end
1671
      end
1672
    end
1673
    return torso, dist
1674
  end
1675
  function TrueAim(aim)
1676
    local target, distance = findNearestTorso(Mouse.Hit.p)
1677
    local tehcf = HitboxR.CFrame * CFrame.fromEulerAnglesXYZ(1.57, 0, 0).lookVector
1678
    if aim ~= nil then
1679
      tehcf = aim
1680
    end
1681
    table.insert(Effects, {
1682
      tehcf,
1683
      "Shoot",
1684
      30,
1685
      HitboxR.Position,
1686
      10,
1687
      15,
1688
      0,
1689
      3,
1690
      HitboxR,
1691
      target
1692
    })
1693
  end
1694
  function FireProjectiles()
1695
    attack = true
1696
    Humanoid.WalkSpeed = 20
1697
    CFuncs.Sound.Create("300915902", HitboxR, 1, 0.8)
1698
    for i = 0, 1, 0.1 do
1699
      swait()
1700
      Effects.Elec.Create(HitboxR.CFrame, 2, 2, 2)
1701
      PlayAnimationFromTable({
1702
        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),
1703
        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),
1704
        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),
1705
        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),
1706
        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),
1707
        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)
1708
      }, 0.3, false)
1709
    end
1710
    for i = 0, 1, 0.1 do
1711
      swait()
1712
      Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1713
      Effects.Block.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1714
      Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1715
      PlayAnimationFromTable({
1716
        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),
1717
        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),
1718
        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),
1719
        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),
1720
        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),
1721
        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)
1722
      }, 0.2, false)
1723
    end
1724
    for i = 1, 10 do
1725
      for i = 0, 1, 0.3 do
1726
        swait()
1727
        Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1728
        Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1729
        PlayAnimationFromTable({
1730
          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),
1731
          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),
1732
          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),
1733
          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),
1734
          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),
1735
          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)
1736
        }, 0.3, false)
1737
      end
1738
      CFuncs.Sound.Create("300916105", HitboxR, 1, 1.2)
1739
      CFuncs.Sound.Create("300916014", HitboxR, 1, 1)
1740
      Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 2, 2, 2, 0.07)
1741
      local MouseLook = CFrame.new((HitboxR.Position + Mouse.Hit.p) / 2, Mouse.Hit.p)
1742
      TrueAim(MouseLook.lookVector)
1743
      for i = 0, 1, 0.3 do
1744
        swait()
1745
        Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1746
        Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1747
        PlayAnimationFromTable({
1748
          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),
1749
          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),
1750
          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),
1751
          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),
1752
          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),
1753
          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)
1754
        }, 0.3, false)
1755
      end
1756
    end
1757
    Humanoid.WalkSpeed = 30
1758
    attack = false
1759
  end
1760
  Mouse.KeyDown:connect(function(k)
1761
    k = k:lower()
1762
    if attack == false and ora == false and k == "z" and IsWearingArmor == false and Invisible == false then
1763
      ora = true
1764
      ORA()
1765
    elseif attack == false and k == "x" and IsWearingArmor == false and Invisible == false then
1766
      GRABEMBOIGRABEM()
1767
    elseif attack == false and k == "q" and IsWearingArmor == false and Invisible == false then
1768
      FireProjectiles()
1769
    elseif attack == false and k == "f" and Invisible == false and IsWearingArmor == false then
1770
      Invisible = true
1771
      Effects.Sphere.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1)
1772
      Effects.Block.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
1773
      Disappear()
1774
    elseif attack == false and k == "f" and Invisible == true and IsWearingArmor == false then
1775
      Invisible = false
1776
      CFuncs.Sound.Create("463010917", Torso, 1, 1)
1777
      Effects.Sphere.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.08)
1778
      for i = 1, 2 do
1779
        Effects.Block.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
1780
      end
1781
      for i = 1, 20 do
1782
        Effects.Break.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1)
1783
      end
1784
      Reappear()
1785
    elseif attack == false and ShieldMode == false and k == "c" and IsWearingArmor == false and Invisible == false then
1786
      ShieldMode = true
1787
      HoloHexShield()
1788
    elseif attack == false and k == "v" and IsWearingArmor == false and Invisible == false then
1789
      CastleCrusherFist()
1790
    end
1791
    if k == "[" and IsWearingArmor == false and Invisible == false then
1792
      Armor("On")
1793
    end
1794
    if k == "]" and IsWearingArmor == true and Invisible == false then
1795
      Armor("Off")
1796
    end
1797
  end)
1798
  Mouse.KeyUp:connect(function(k)
1799
    k = k:lower()
1800
    if attack == true and ora == true and k == "z" and IsWearingArmor == false then
1801
      ora = false
1802
    elseif attack == true and ShieldMode == true and k == "c" and IsWearingArmor == false then
1803
      ShieldMode = false
1804
    end
1805
  end)
1806
  coroutine.resume(coroutine.create(function(Part, Part2)
1807
    while Part.Parent ~= nil do
1808
      swait(math.random(100, 150))
1809
      for i = 0, 1, 0.2 do
1810
        wait()
1811
        Eye1.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
1812
        Eye2.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
1813
      end
1814
      for i = 0, 1, 0.2 do
1815
        swait()
1816
        Eye1.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
1817
        Eye2.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
1818
      end
1819
    end
1820
  end), Eye1, Eye2)
1821
  while true do
1822
    swait()
1823
    for i, v in pairs(Character:children()) do
1824
      if v:IsA("Part") and IsWearingArmor == true then
1825
        v.Anchored = false
1826
      end
1827
    end
1828
    for i, v in pairs(AdvancingFortress:GetChildren()) do
1829
      if v:IsA("Part") then
1830
        v.Material = "SmoothPlastic"
1831
        v.CanCollide = false
1832
      elseif v:IsA("Humanoid") then
1833
        v:remove()
1834
      elseif v:IsA("Accessory") then
1835
        v:remove()
1836
      elseif v:IsA("Shirt") then
1837
        v:remove()
1838
      elseif v:IsA("Pants") then
1839
        v:remove()
1840
      elseif v:IsA("Script") or v:IsA("LocalScript") then
1841
        v:remove()
1842
      elseif v:IsA("BodyColors") then
1843
        v:remove()
1844
      end
1845
    end
1846
    HHandle.Transparency = 1
1847
    THandle.Transparency = 1
1848
    AHandleR.Transparency = 1
1849
    AHandleL.Transparency = 1
1850
    LHandleR.Transparency = 1
1851
    LHandleL.Transparency = 1
1852
    RootPart.Transparency = 1
1853
    HitboxR.Transparency = 1
1854
    HitboxL.Transparency = 1
1855
    Head.BrickColor = BrickColor.new("Really black")
1856
    Torso.BrickColor = BrickColor.new("Really black")
1857
    RightArm.BrickColor = BrickColor.new("Really black")
1858
    LeftArm.BrickColor = BrickColor.new("Really black")
1859
    RightLeg.BrickColor = BrickColor.new("Really black")
1860
    LeftLeg.BrickColor = BrickColor.new("Really black")
1861
    RootPart.Anchored = true
1862
    Torsovelocity = (Character.HumanoidRootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
1863
    velocity = Character.HumanoidRootPart.Velocity.y
1864
    sine = sine + change
1865
    Shield.Anchored = true
1866
    Shield.CFrame = Shield.CFrame:lerp(RootPart.CFrame * CFrame.new(0, 0, -3.2), 1)
1867
    local hit, pos = rayCast(Character.HumanoidRootPart.Position, CFrame.new(Character.HumanoidRootPart.Position, Character.HumanoidRootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
1868
    if Character.HumanoidRootPart.Velocity.y > 1 and hit == nil then
1869
      Anim = "Jump"
1870
      if attack == false then
1871
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1872
        PlayAnimationFromTable({
1873
          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),
1874
          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),
1875
          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),
1876
          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),
1877
          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),
1878
          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)
1879
        }, 0.3, false)
1880
      end
1881
    elseif Character.HumanoidRootPart.Velocity.y < -1 and hit == nil then
1882
      Anim = "Fall"
1883
      if attack == false then
1884
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1885
        PlayAnimationFromTable({
1886
          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),
1887
          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),
1888
          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),
1889
          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),
1890
          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),
1891
          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)
1892
        }, 0.3, false)
1893
      end
1894
    elseif Torsovelocity < 1 and hit ~= nil then
1895
      Anim = "Idle"
1896
      if attack == false then
1897
        change = 1
1898
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1899
        PlayAnimationFromTable({
1900
          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),
1901
          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),
1902
          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),
1903
          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),
1904
          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),
1905
          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)
1906
        }, 0.3, false)
1907
      end
1908
    elseif Torsovelocity > 2 and hit ~= nil then
1909
      Anim = "Walk"
1910
      if attack == false then
1911
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1912
        PlayAnimationFromTable({
1913
          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),
1914
          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),
1915
          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),
1916
          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),
1917
          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),
1918
          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)
1919
        }, 0.3, false)
1920
      end
1921
    end
1922
    if 0 < #Effects then
1923
      for e = 1, #Effects do
1924
        if Effects[e] ~= nil then
1925
          local Thing = Effects[e]
1926
          if Thing ~= nil then
1927
            local Part = Thing[1]
1928
            local Mode = Thing[2]
1929
            local Delay = Thing[3]
1930
            local IncX = Thing[4]
1931
            local IncY = Thing[5]
1932
            local IncZ = Thing[6]
1933
            if Thing[2] == "Shoot" then
1934
              local Look = Thing[1]
1935
              local move = 30
1936
              if Thing[8] == 3 then
1937
                move = 10
1938
              end
1939
              local hit, pos = rayCast(Thing[4], Thing[1], move, m)
1940
              if Thing[10] ~= nil then
1941
                da = pos
1942
                cf2 = CFrame.new(Thing[4], Thing[10].Position)
1943
                cfa = CFrame.new(Thing[4], pos)
1944
                tehCF = cfa:lerp(cf2, 0.2)
1945
                Thing[1] = tehCF.lookVector
1946
              end
1947
              local mag = (Thing[4] - pos).magnitude
1948
              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)
1949
              if Thing[8] == 2 then
1950
                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)
1951
              end
1952
              Thing[4] = Thing[4] + Look * move
1953
              Thing[3] = Thing[3] - 1
1954
              if 2 < Thing[5] then
1955
                Thing[5] = Thing[5] - 0.3
1956
                Thing[6] = Thing[6] - 0.3
1957
              end
1958
              if hit ~= nil then
1959
                Thing[3] = 0
1960
                if Thing[8] == 1 or Thing[8] == 3 then
1961
                  Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
1962
                elseif Thing[8] == 2 then
1963
                  Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
1964
                  if hit.Parent:findFirstChild("Humanoid") ~= nil or hit.Parent.Parent:findFirstChild("Humanoid") ~= nil then
1965
                    ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Purple"), "Reference", Vector3.new())
1966
                    ref.Anchored = true
1967
                    ref.CFrame = CFrame.new(pos)
1968
                    CFuncs.Sound.Create("161006093", ref, 1, 1.2)
1969
                    game:GetService("Debris"):AddItem(ref, 0.2)
1970
                    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)
1971
                    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)
1972
                    MagnitudeDamage(ref, 15, Thing[5] / 1.5, Thing[6] / 1.5, 0, "Normal", "", 1)
1973
                  end
1974
                end
1975
                ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Really red"), "Reference", Vector3.new())
1976
                ref.Anchored = true
1977
                ref.CFrame = CFrame.new(pos)
1978
                Effects.Sphere.Create(Torso.BrickColor, CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
1979
                game:GetService("Debris"):AddItem(ref, 1)
1980
              end
1981
              if Thing[3] <= 0 then
1982
                table.remove(Effects, e)
1983
              end
1984
            end
1985
            if Thing[2] == "FireWave" then
1986
              if Thing[3] <= Thing[4] then
1987
                Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
1988
                Thing[3] = Thing[3] + 1
1989
                Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
1990
              else
1991
                Part.Parent = nil
1992
                table.remove(Effects, e)
1993
              end
1994
            end
1995
            if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
1996
              if Thing[1].Transparency <= 1 then
1997
                if Thing[2] == "Block1" then
1998
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1999
                  Mesh = Thing[7]
2000
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2001
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2002
                elseif Thing[2] == "Block2" then
2003
                  Thing[1].CFrame = Thing[1].CFrame
2004
                  Mesh = Thing[7]
2005
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2006
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2007
                elseif Thing[2] == "Fire" then
2008
                  Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
2009
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
2010
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2011
                elseif Thing[2] == "Cylinder" then
2012
                  Mesh = Thing[7]
2013
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2014
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2015
                elseif Thing[2] == "Blood" then
2016
                  Mesh = Thing[7]
2017
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
2018
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2019
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2020
                elseif Thing[2] == "Elec" then
2021
                  Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
2022
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2023
                elseif Thing[2] == "Disappear" then
2024
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2025
                elseif Thing[2] == "Shatter" then
2026
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2027
                  Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
2028
                  Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
2029
                  Thing[6] = Thing[6] + Thing[5]
2030
                end
2031
              else
2032
                Part.Parent = nil
2033
                table.remove(Effects, e)
2034
              end
2035
            end
2036
          end
2037
        end
2038
      end
2039
    end
2040
  end
2041
local Camera = game.Workspace.CurrentCamera
2042
local RootPart = Character.HumanoidRootPart
2043
local RootJoint = RootPart.RootJoint
2044
local attack = false
2045
local Anim = 'Idle'
2046
local attacktype = 1
2047
local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
2048
local velocity = RootPart.Velocity.y
2049
local sine = 0
2050
local change = 1
2051
local Create = LoadLibrary("RbxUtility").Create
2052
local TimeStop = false
2053
 
2054
local m = Create("Model"){
2055
    Parent = Character,
2056
    Name = "WeaponModel",
2057
}
2058
 
2059
Humanoid.Animator.Parent = nil
2060
Character.Animate.Parent = nil
2061
 
2062
local newMotor = function(part0, part1, c0, c1)
2063
    local w = Create('Motor'){
2064
        Parent = part0,
2065
        Part0 = part0,
2066
        Part1 = part1,
2067
        C0 = c0,
2068
        C1 = c1,
2069
    }
2070
    return w
2071
end
2072
 
2073
function clerp(a, b, t)
2074
    return a:lerp(b, t)
2075
end
2076
 
2077
RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
2078
NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
2079
 
2080
local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
2081
local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
2082
local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0))
2083
local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0))
2084
RootJoint.C1 = CFrame.new(0, 0, 0)
2085
RootJoint.C0 = CFrame.new(0, 0, 0)
2086
Torso.Neck.C1 = CFrame.new(0, 0, 0)
2087
Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
2088
 
2089
local rarmc1 = RW.C1
2090
local larmc1 = LW.C1
2091
local rlegc1 = RH.C1
2092
local llegc1 = LH.C1
2093
 
2094
local resetc1 = false
2095
 
2096
function PlayAnimationFromTable(table, speed, bool)
2097
    RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
2098
    Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
2099
    RW.C0 = clerp(RW.C0, table[3], speed)
2100
    LW.C0 = clerp(LW.C0, table[4], speed)
2101
    RH.C0 = clerp(RH.C0, table[5], speed)
2102
    LH.C0 = clerp(LH.C0, table[6], speed)
2103
    if bool == true then
2104
        if resetc1 == false then
2105
            resetc1 = true
2106
            RootJoint.C1 = RootJoint.C1
2107
            Torso.Neck.C1 = Torso.Neck.C1
2108
            RW.C1 = rarmc1
2109
            LW.C1 = larmc1
2110
            RH.C1 = rlegc1
2111
            LH.C1 = llegc1
2112
        end
2113
    end
2114
end
2115
 
2116
ArtificialHB = Create("BindableEvent", script){
2117
    Parent = script,
2118
    Name = "Heartbeat",
2119
}
2120
 
2121
script:WaitForChild("Heartbeat")
2122
 
2123
frame = 1 / 35
2124
tf = 0
2125
allowframeloss = false
2126
tossremainder = false
2127
lastframe = tick()
2128
script.Heartbeat:Fire()
2129
 
2130
game:GetService("RunService").Heartbeat:connect(function(s, p)
2131
    tf = tf + s
2132
    if tf >= frame then
2133
        if allowframeloss then
2134
            script.Heartbeat:Fire()
2135
            lastframe = tick()
2136
        else
2137
            for i = 1, math.floor(tf / frame) do
2138
                script.Heartbeat:Fire()
2139
            end
2140
            lastframe = tick()
2141
        end
2142
        if tossremainder then
2143
            tf = 0
2144
        else
2145
            tf = tf - frame * math.floor(tf / frame)
2146
        end
2147
    end
2148
end)
2149
 
2150
function swait(num)
2151
    if num == 0 or num == nil then
2152
        ArtificialHB.Event:wait()
2153
    else
2154
        for i = 0, num do
2155
            ArtificialHB.Event:wait()
2156
        end
2157
    end
2158
end
2159
 
2160
function RemoveOutlines(part)
2161
    part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
2162
end
2163
   
2164
CFuncs = { 
2165
    Part = {
2166
        Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
2167
            local Part = Create("Part"){
2168
                Parent = Parent,
2169
                Reflectance = Reflectance,
2170
                Transparency = Transparency,
2171
                CanCollide = false,
2172
                Locked = true,
2173
                BrickColor = BrickColor.new(tostring(BColor)),
2174
                Name = Name,
2175
                Size = Size,
2176
                Material = Material,
2177
            }
2178
            RemoveOutlines(Part)
2179
            return Part
2180
        end;
2181
    };
2182
   
2183
    Mesh = {
2184
        Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
2185
            local Msh = Create(Mesh){
2186
                Parent = Part,
2187
                Offset = OffSet,
2188
                Scale = Scale,
2189
            }
2190
            if Mesh == "SpecialMesh" then
2191
                Msh.MeshType = MeshType
2192
                Msh.MeshId = MeshId
2193
            end
2194
            return Msh
2195
        end;
2196
    };
2197
 
2198
    Weld = {
2199
        Create = function(Parent, Part0, Part1, C0, C1)
2200
            local Weld = Create("Weld"){
2201
                Parent = Parent,
2202
                Part0 = Part0,
2203
                Part1 = Part1,
2204
                C0 = C0,
2205
                C1 = C1,
2206
            }
2207
            return Weld
2208
        end;
2209
    };
2210
 
2211
    Sound = {
2212
        Create = function(id, par, vol, pit)
2213
            local Sound = Create("Sound"){
2214
                Volume = vol,
2215
                Pitch = pit or 1,
2216
                SoundId = "rbxassetid://" .. id,
2217
                Parent = par or workspace,
2218
            }
2219
            Sound:play()
2220
            return Sound
2221
        end;
2222
    };
2223
   
2224
    Decal = {
2225
        Create = function(Color, Texture, Transparency, Name, Parent)
2226
            local Decal = Create("Decal"){
2227
                Color3 = Color,
2228
                Texture = "rbxassetid://" .. Texture,
2229
                Transparency = Transparency,
2230
                Name = Name,
2231
                Parent = Parent,
2232
            }
2233
            return Decal
2234
        end;
2235
    };
2236
   
2237
    BillboardGui = {
2238
        Create = function(Parent, Image, Position, Size)
2239
            local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
2240
            BillPar.CFrame = CFrame.new(Position)
2241
            local Bill = Create("BillboardGui"){
2242
                Parent = BillPar,
2243
                Adornee = BillPar,
2244
                Size = UDim2.new(1, 0, 1, 0),
2245
                SizeOffset = Vector2.new(Size, Size),
2246
            }
2247
            local d = Create("ImageLabel", Bill){
2248
                Parent = Bill,
2249
                BackgroundTransparency = 1,
2250
                Size = UDim2.new(1, 0, 1, 0),
2251
                Image = "rbxassetid://" .. Image,
2252
            }
2253
            return BillPar
2254
        end
2255
    };
2256
   
2257
    ParticleEmitter = {
2258
        Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
2259
            local Particle = Create("ParticleEmitter"){
2260
                Parent = Parent,
2261
                Color = ColorSequence.new(Color1, Color2),
2262
                LightEmission = LightEmission,
2263
                Size = Size,
2264
                Texture = Texture,
2265
                Transparency = Transparency,
2266
                ZOffset = ZOffset,
2267
                Acceleration = Accel,
2268
                Drag = Drag,
2269
                LockedToPart = LockedToPart,
2270
                VelocityInheritance = VelocityInheritance,
2271
                EmissionDirection = EmissionDirection,
2272
                Enabled = Enabled,
2273
                Lifetime = LifeTime,
2274
                Rate = Rate,
2275
                Rotation = Rotation,
2276
                RotSpeed = RotSpeed,
2277
                Speed = Speed,
2278
                VelocitySpread = VelocitySpread,
2279
            }
2280
            return Particle
2281
        end;
2282
    };
2283
   
2284
    CreateTemplate = {
2285
       
2286
    };
2287
}
2288
 
2289
function rayCast(Position, Direction, Range, Ignore)
2290
    return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
2291
end
2292
 
2293
function FindNearestTorso(Position, Distance, SinglePlayer)
2294
    if SinglePlayer then
2295
        return (SinglePlayer.Torso.CFrame.p - Position).magnitude < Distance
2296
    end
2297
    local List = {}
2298
    for i, v in pairs(workspace:GetChildren()) do
2299
        if v:IsA("Model") then
2300
            if v:findFirstChild("Torso") then
2301
                if v ~= Character then
2302
                    if (v.Torso.Position - Position).magnitude <= Distance then
2303
                        table.insert(List, v)
2304
                    end
2305
                end
2306
            end
2307
        end
2308
    end
2309
    return List
2310
end
2311
 
2312
function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
2313
    if hit.Parent == nil then
2314
        return
2315
    end
2316
    local h = hit.Parent:FindFirstChild("Humanoid")
2317
    for _, v in pairs(hit.Parent:children()) do
2318
        if v:IsA("Humanoid") then
2319
            h = v
2320
        end
2321
    end
2322
    if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
2323
        if hit.Parent:findFirstChild("DebounceHit") ~= nil then
2324
            if hit.Parent.DebounceHit.Value == true then
2325
                return
2326
            end
2327
        end
2328
        local c = Create("ObjectValue"){
2329
            Name = "creator",
2330
            Value = game:service("Players").LocalPlayer,
2331
            Parent = h,
2332
        }
2333
        game:GetService("Debris"):AddItem(c, .5)
2334
        CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
2335
        local Damage = math.random(minim, maxim)
2336
        local blocked = false
2337
        local block = hit.Parent:findFirstChild("Block")
2338
        if block ~= nil then
2339
            if block.className == "IntValue" then
2340
                if block.Value > 0 then
2341
                    blocked = true
2342
                    block.Value = block.Value - 1
2343
                    print(block.Value)
2344
                end
2345
            end
2346
        end
2347
        if TimeStop == false then
2348
            h.Health = h.Health - Damage
2349
            ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, BrickColor.new("Bright yellow").Color)
2350
        elseif TimeStop == true then
2351
            repeat wait() until TimeStop == false
2352
            h.Health = h.Health - (Damage / 2)
2353
            ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, BrickColor.new("Bright yellow").Color)
2354
        end
2355
        if Type == "Knockdown" then
2356
            local hum = hit.Parent.Humanoid
2357
            hum.PlatformStand = true
2358
            coroutine.resume(coroutine.create(function(HHumanoid)
2359
                swait(1)
2360
                HHumanoid.PlatformStand = false
2361
            end), hum)
2362
            local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
2363
            local bodvol = Create("BodyVelocity"){
2364
                velocity = angle * knockback,
2365
                P = 5000,
2366
                maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
2367
                Parent = hit,
2368
            }
2369
            local rl = Create("BodyAngularVelocity"){
2370
                P = 3000,
2371
                maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
2372
                angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
2373
                Parent = hit,
2374
            }
2375
            game:GetService("Debris"):AddItem(bodvol, .5)
2376
            game:GetService("Debris"):AddItem(rl, .5)
2377
        elseif Type == "Normal" then
2378
            local vp = Create("BodyVelocity"){
2379
                P = 500,
2380
                maxForce = Vector3.new(math.huge, 0, math.huge),
2381
                velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
2382
            }
2383
            if knockback > 0 then
2384
                vp.Parent = hit.Parent.Torso
2385
            end
2386
            game:GetService("Debris"):AddItem(vp, .5)
2387
        elseif Type == "Up" then
2388
            local bodyVelocity = Create("BodyVelocity"){
2389
                velocity = Vector3.new(0, 20, 0),
2390
                P = 5000,
2391
                maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
2392
                Parent = hit,
2393
            }
2394
            game:GetService("Debris"):AddItem(bodyVelocity, .5)
2395
        elseif Type == "DarkUp" then
2396
            coroutine.resume(coroutine.create(function()
2397
                for i = 0, 1, 0.1 do
2398
                    swait()
2399
                    Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1)
2400
                end
2401
            end))
2402
            local bodyVelocity = Create("BodyVelocity"){
2403
                velocity = Vector3.new(0, 20, 0),
2404
                P = 5000,
2405
                maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
2406
                Parent = hit,
2407
            }
2408
            game:GetService("Debris"):AddItem(bodyVelocity, 1)
2409
        elseif Type == "Snare" then
2410
            local bp = Create("BodyPosition"){
2411
                P = 2000,
2412
                D = 100,
2413
                maxForce = Vector3.new(math.huge, math.huge, math.huge),
2414
                position = hit.Parent.Torso.Position,
2415
                Parent = hit.Parent.Torso,
2416
            }
2417
            game:GetService("Debris"):AddItem(bp, 1)
2418
        elseif Type == "Freeze" then
2419
            local BodPos = Create("BodyPosition"){
2420
                P = 50000,
2421
                D = 1000,
2422
                maxForce = Vector3.new(math.huge, math.huge, math.huge),
2423
                position = hit.Parent.Torso.Position,
2424
                Parent = hit.Parent.Torso,
2425
            }
2426
            local BodGy = Create("BodyGyro") {
2427
                maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
2428
                P = 20e+003,
2429
                Parent = hit.Parent.Torso,
2430
                cframe = hit.Parent.Torso.CFrame,
2431
            }
2432
            hit.Parent.Torso.Anchored = true
2433
            coroutine.resume(coroutine.create(function(Part)
2434
                swait(1.5)
2435
                Part.Anchored = false
2436
            end), hit.Parent.Torso)
2437
            game:GetService("Debris"):AddItem(BodPos, 3)
2438
            game:GetService("Debris"):AddItem(BodGy, 3)
2439
        end
2440
        local debounce = Create("BoolValue"){
2441
            Name = "DebounceHit",
2442
            Parent = hit.Parent,
2443
            Value = true,
2444
        }
2445
        game:GetService("Debris"):AddItem(debounce, Delay)
2446
        c = Create("ObjectValue"){
2447
            Name = "creator",
2448
            Value = Player,
2449
            Parent = h,
2450
        }
2451
        game:GetService("Debris"):AddItem(c, .5)
2452
    end
2453
end
2454
 
2455
function ShowDamage(Pos, Text, Time, Color)
2456
    local Rate = (1 / 30)
2457
    local Pos = (Pos or Vector3.new(0, 0, 0))
2458
    local Text = (Text or "")
2459
    local Time = (Time or 2)
2460
    local Color = (Color or Color3.new(1, 0, 1))
2461
    local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
2462
    EffectPart.Anchored = true
2463
    local BillboardGui = Create("BillboardGui"){
2464
        Size = UDim2.new(3, 0, 3, 0),
2465
        Adornee = EffectPart,
2466
        Parent = EffectPart,
2467
    }
2468
    local TextLabel = Create("TextLabel"){
2469
        BackgroundTransparency = 1,
2470
        Size = UDim2.new(1, 0, 1, 0),
2471
        Text = Text,
2472
        Font = "SciFi",
2473
        TextColor3 = Color,
2474
        TextScaled = true,
2475
        Parent = BillboardGui,
2476
    }
2477
    game.Debris:AddItem(EffectPart, (Time))
2478
    EffectPart.Parent = game:GetService("Workspace")
2479
    delay(0, function()
2480
        local Frames = (Time / Rate)
2481
        for Frame = 1, Frames do
2482
            wait(Rate)
2483
            local Percent = (Frame / Frames)
2484
            EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
2485
            TextLabel.TextTransparency = Percent
2486
        end
2487
        if EffectPart and EffectPart.Parent then
2488
            EffectPart:Destroy()
2489
        end
2490
    end)
2491
end
2492
 
2493
function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
2494
    for _, c in pairs(workspace:children()) do
2495
        local hum = c:findFirstChild("Humanoid")
2496
        if hum ~= nil then
2497
            local head = c:findFirstChild("Torso")
2498
            if head ~= nil then
2499
                local targ = head.Position - Part.Position
2500
                local mag = targ.magnitude
2501
                if mag <= Magnitude and c.Name ~= Player.Name then
2502
            for i = 1, 10 do
2503
                Effects.Elect.Create(head.CFrame, 10, 10, 10)
2504
            end
2505
            CFuncs.Sound.Create("324867021", head, 1, 1)
2506
            Effects.Sphere.Create(BrickColor.new("New Yeller"), head.CFrame, .5, .5, .5, .5, .5, .5, .05)
2507
                    Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, .1, HitSound, HitPitch)
2508
                end
2509
            end
2510
        end
2511
    end
2512
end
2513
Part6Weld = CFuncs.Weld.Create(m, HandleL, Part6, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.349294543, -0.151140213, 0.00573730469, 1, 0, 0, 0, -1, -0, 0, 0, -1))
2514
CFuncs.Mesh.Create("BlockMesh", Part6, "", "", Vector3.new(0, 0, 0), Vector3.new(0.48742649, 1, 1))
2515
sref = CFuncs.Part.Create(Character, "Neon", 0, 1, BrickColor.new("Black"), "Reference", Vector3.new())
2516
sref.Anchored = true
2517
 
2518
EffectModel = Create("Model"){
2519
    Parent = Character,
2520
    Name = "Effects",
2521
}
2522
 
2523
Effects = {
2524
    Block = {
2525
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
2526
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2527
            prt.Anchored = true
2528
            prt.CFrame = cframe
2529
            local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2530
            game:GetService("Debris"):AddItem(prt, 10)
2531
            if Type == 1 or Type == nil then
2532
                table.insert(Effects, {
2533
                    prt,
2534
                    "Block1",
2535
                    delay,
2536
                    x3,
2537
                    y3,
2538
                    z3,
2539
                    msh
2540
                })
2541
            elseif Type == 2 then
2542
                table.insert(Effects, {
2543
                    prt,
2544
                    "Block2",
2545
                    delay,
2546
                    x3,
2547
                    y3,
2548
                    z3,
2549
                    msh
2550
                })
2551
            end
2552
        end;
2553
    };
2554
   
2555
    Cylinder = {
2556
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2557
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
2558
            prt.Anchored = true
2559
            prt.CFrame = cframe
2560
            local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2561
            game:GetService("Debris"):AddItem(prt, 2)
2562
            table.insert(Effects, {
2563
                prt,
2564
                "Cylinder",
2565
                delay,
2566
                x3,
2567
                y3,
2568
                z3,
2569
                msh
2570
            })
2571
        end;
2572
    };
2573
   
2574
    Head = {
2575
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2576
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2577
            prt.Anchored = true
2578
            prt.CFrame = cframe
2579
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2580
            game:GetService("Debris"):AddItem(prt, 10)
2581
            table.insert(Effects, {
2582
                prt,
2583
                "Cylinder",
2584
                delay,
2585
                x3,
2586
                y3,
2587
                z3,
2588
                msh
2589
            })
2590
        end;
2591
    };
2592
   
2593
    Sphere = {
2594
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2595
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2596
            prt.Anchored = true
2597
            prt.CFrame = cframe
2598
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2599
            game:GetService("Debris"):AddItem(prt, 10)
2600
            table.insert(Effects, {
2601
                prt,
2602
                "Cylinder",
2603
                delay,
2604
                x3,
2605
                y3,
2606
                z3,
2607
                msh
2608
            })
2609
        end;
2610
    };
2611
   
2612
    Elect = {
2613
        Create = function(cff, x, y, z)
2614
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("New Yeller"), "Part", Vector3.new(1, 1, 1))
2615
            prt.Anchored = true
2616
            prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
2617
            prt.CFrame = CFrame.new(prt.Position)
2618
            game:GetService("Debris"):AddItem(prt, 2)
2619
            local xval = math.random() / 2
2620
            local yval = math.random() / 2
2621
            local zval = math.random() / 2
2622
            local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
2623
            table.insert(Effects, {
2624
                prt,
2625
                "Elec",
2626
                0.1,
2627
                x,
2628
                y,
2629
                z,
2630
                xval,
2631
                yval,
2632
                zval
2633
            })
2634
        end;
2635
 
2636
    };
2637
   
2638
    Ring = {
2639
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2640
            local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
2641
            prt.Anchored = true
2642
            prt.CFrame = cframe
2643
            local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2644
            game:GetService("Debris"):AddItem(prt, 10)
2645
            table.insert(Effects, {
2646
                prt,
2647
                "Cylinder",
2648
                delay,
2649
                x3,
2650
                y3,
2651
                z3,
2652
                msh
2653
            })
2654
        end;
2655
    };
2656
 
2657
 
2658
    Wave = {
2659
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2660
            local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
2661
            prt.Anchored = true
2662
            prt.CFrame = cframe
2663
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2664
            game:GetService("Debris"):AddItem(prt, 10)
2665
            table.insert(Effects, {
2666
                prt,
2667
                "Cylinder",
2668
                delay,
2669
                x3,
2670
                y3,
2671
                z3,
2672
                msh
2673
            })
2674
        end;
2675
    };
2676
 
2677
    Break = {
2678
        Create = function(brickcolor, cframe, x1, y1, z1)
2679
            local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
2680
            prt.Anchored = true
2681
            prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
2682
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2683
            local num = math.random(10, 50) / 1000
2684
            game:GetService("Debris"):AddItem(prt, 10)
2685
            table.insert(Effects, {
2686
                prt,
2687
                "Shatter",
2688
                num,
2689
                prt.CFrame,
2690
                math.random() - math.random(),
2691
                0,
2692
                math.random(50, 100) / 100
2693
            })
2694
        end;
2695
    };
2696
   
2697
    Fire = {
2698
        Create = function(brickcolor, cframe, x1, y1, z1, delay)
2699
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2700
            prt.Anchored = true
2701
            prt.CFrame = cframe
2702
            msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2703
            game:GetService("Debris"):AddItem(prt, 10)
2704
            table.insert(Effects, {
2705
                prt,
2706
                "Fire",
2707
                delay,
2708
                1,
2709
                1,
2710
                1,
2711
                msh
2712
            })
2713
        end;
2714
    };
2715
   
2716
    FireWave = {
2717
        Create = function(brickcolor, cframe, x1, y1, z1)
2718
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
2719
            prt.Anchored = true
2720
            prt.CFrame = cframe
2721
            msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2722
            local d = Create("Decal"){
2723
                Parent = prt,
2724
                Texture = "rbxassetid://26356434",
2725
                Face = "Top",
2726
            }
2727
            local d = Create("Decal"){
2728
                Parent = prt,
2729
                Texture = "rbxassetid://26356434",
2730
                Face = "Bottom",
2731
            }
2732
            game:GetService("Debris"):AddItem(prt, 10)
2733
            table.insert(Effects, {
2734
                prt,
2735
                "FireWave",
2736
                1,
2737
                30,
2738
                math.random(400, 600) / 100,
2739
                msh
2740
            })
2741
        end;
2742
    };
2743
   
2744
    Lightning = {
2745
        Create = function(p0, p1, tym, ofs, col, th, tra, last)
2746
            local magz = (p0 - p1).magnitude
2747
            local curpos = p0
2748
            local trz = {
2749
                -ofs,
2750
                ofs
2751
            }
2752
            for i = 1, tym do
2753
                local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
2754
                local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
2755
                local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
2756
                li.Material = "Neon"
2757
                if tym == i then
2758
                    local magz2 = (curpos - p1).magnitude
2759
                    li.Size = Vector3.new(th, th, magz2)
2760
                    li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
2761
                    table.insert(Effects, {
2762
                        li,
2763
                        "Disappear",
2764
                        last
2765
                    })
2766
                else
2767
                    do
2768
                        do
2769
                            li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
2770
                            curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
2771
                            game.Debris:AddItem(li, 10)
2772
                            table.insert(Effects, {
2773
                                li,
2774
                                "Disappear",
2775
                                last
2776
                            })
2777
                        end
2778
                    end
2779
                end
2780
            end
2781
        end
2782
    };
2783
 
2784
    EffectTemplate = {
2785
 
2786
    };
2787
}
2788
 
2789
local DORARA = false
2790
 
2791
function ORA()
2792
    attack = true
2793
    for i = 0, 1, 0.2 do
2794
        swait()
2795
        PlayAnimationFromTable({
2796
            CFrame.new(4.76837158e-007, -0.107780606, -0.0868092626, 1, 0, 0, 0, 0.984807849, 0.173647985, 0, -0.173647985, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2797
            CFrame.new(0, 1.4999913, 2.38418608e-007, 1, 0, 0, 0, 1.00000012, 0, 0, 0, 1.00000012) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2798
            CFrame.new(1.50214899, 0.590444803, 0.195881441, 0.965925872, 3.76027884e-007, 0.258818895, 0.257834077, -0.0871552154, -0.962250412, 0.0225570519, 0.99619478, -0.0841855928) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2799
            CFrame.new(-1.60470915, 0.600643516, 0.204860806, 0.937436998, -0.0449436344, -0.345242023, -0.345831364, -0.00582624972, -0.938278675, 0.0401581824, 0.998972595, -0.0210046768) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2800
            CFrame.new(0.636808395, -1.93472588, -0.370165229, 0.936116338, -0.0517791435, -0.347858071, 0.0266665779, 0.996705353, -0.0765988752, 0.350678325, 0.0624292716, 0.934412897) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2801
            CFrame.new(-0.6665681, -1.92173398, -0.343467057, 0.962250233, 0.0613082647, 0.265171379, -0.0410595685, 0.99584806, -0.0812460929, -0.269051433, 0.0672912449, 0.960772276) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2802
        }, .3, false)
2803
    end
2804
    local DORA = CFuncs.Sound.Create("616593932", Torso, 1, 1)
2805
    Instance.new("DistortionSoundEffect", DORA).Level = .95
2806
    DORA.Looped = true
2807
    local Con1 = HitboxL.Touched:connect(function(hit) Damage(HitboxL, hit, 1, 5, 0, "Normal", RootPart, 0, "260430117", 1) end)
2808
    local Con2 = HitboxR.Touched:connect(function(hit) Damage(HitboxR, hit, 1, 5, 0, "Normal", RootPart, 0, "260430117", 1) end)
2809
    while DORARA == true do
2810
        RootPart.Velocity = RootPart.CFrame.lookVector * 5
2811
        for i = 0, 1, 0.7 do
2812
            swait()
2813
            Effects.Elect.Create(HitboxL.CFrame, 4, 4, 4)
2814
            Effects.Sphere.Create(BrickColor.new("Really black"), HitboxL.CFrame, .5, .5, .5, 1.5, 1.5, 1.5, .15)
2815
            PlayAnimationFromTable({
2816
                CFrame.new(-0.0223142356, -0.107780628, -0.249816686, 0.906307876, 0.0733869597, -0.416197479, 0, 0.98480773, 0.173648462, 0.422617942, -0.157378972, 0.892539084) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2817
                CFrame.new(-2.22850417e-007, 1.49999118, 1.16660271e-006, 0.906307936, 1.49011612e-008, 0.422617972, -7.27595761e-009, 1, 0, -0.422618032, 0, 0.906308055) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2818
                CFrame.new(1.5318948, 0.588474631, 0.207054406, 0.899958313, 0.340718478, 0.272003621, 0.314965397, -0.0767233223, -0.945997, -0.301449746, 0.9370296, -0.176362336) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2819
                CFrame.new(-1.27977741, 0.723447502, -1.20010054, 0.726744413, 0.46058476, -0.509611845, -0.503104627, -0.148215696, -0.851421177, -0.46768418, 0.875153661, 0.124007396) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2820
                CFrame.new(0.636807501, -1.93472636, -0.370165735, 0.868198872, -0.0517790169, 0.493507534, 0.075819321, 0.996705353, -0.0288097262, -0.490389913, 0.0624299645, 0.869264364) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2821
                CFrame.new(-0.666569352, -1.92173386, -0.343467534, 0.86083132, 0.0613082871, 0.505183935, -0.018632248, 0.995848, -0.0891051888, -0.508549333, 0.0672918186, 0.858399451) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2822
            }, .9, false)
2823
        end
2824
        CFuncs.Sound.Create("138087186", HitboxL, 1, 1)
2825
        Effects.Sphere.Create(BrickColor.new("Really black"), HitboxL.CFrame, .5, .5, .5, 2, 2, 2, .15)
2826
        RootPart.Velocity = RootPart.CFrame.lookVector * 5
2827
        for i = 0, 1, 0.7 do
2828
            swait()
2829
            Effects.Sphere.Create(BrickColor.new("Really black"), HitboxR.CFrame, .5, .5, .5, 1.5, 1.5, 1.5, .2)
2830
            PlayAnimationFromTable({
2831
                CFrame.new(0.0767437443, -0.107780531, -0.279432267, 0.866025388, -0.0868241936, 0.492404073, 0, 0.98480773, 0.173648342, -0.500000238, -0.150383845, 0.852868438) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2832
                CFrame.new(-2.61076184e-006, 1.4999913, -6.19508683e-007, 0.866025209, 2.98023224e-007, -0.500000656, -2.56928615e-007, 1, 1.1920929e-007, 0.500000596, 2.98023224e-008, 0.866025209) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2833
                CFrame.new(1.40606534, 0.812639356, -1.14933658, 0.82139349, -0.422619373, 0.383021921, 0.349686205, -0.157378837, -0.923553765, 0.450591207, 0.892538428, 0.0185142085) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2834
                CFrame.new(-1.64197171, 0.599264741, 0.212680459, 0.807513177, -0.456930667, -0.373010725, -0.413006425, 0.0134942085, -0.9106282, 0.421127379, 0.889400065, -0.177818552) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2835
                CFrame.new(0.636808515, -1.93472552, -0.37016958, 0.814187765, -0.0517790765, -0.578288436, 0.00593282748, 0.996705353, -0.0808905214, 0.580571651, 0.0624291934, 0.811812401) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2836
                CFrame.new(-0.666569233, -1.92173398, -0.343468547, 0.867917657, 0.0613080971, -0.492910266, -0.0864830092, 0.99584806, -0.0284160972, 0.489121556, 0.0672912076, 0.869616032) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2837
            }, .9, false)
2838
        end
2839
        CFuncs.Sound.Create("138087186", HitboxR, 1, 1)
2840
        Effects.Sphere.Create(BrickColor.new("Really black"), HitboxR.CFrame, .5, .5, .5, 2, 2, 2, .2)
2841
        end
2842
    Con1:disconnect()
2843
    Con2:disconnect()
2844
    DORA:Stop()
2845
    attack = false
2846
end
2847
 
2848
local stoppedParts = {}
2849
 
2850
 
2851
function getAllParts()
2852
    local rtn = {}
2853
   
2854
    local function recurse(object)
2855
        for q,e in next, object:children() do
2856
            if e:isA'BasePart' and e.Name ~= "HumanoidRootPart" then
2857
                table.insert(rtn, e)
2858
            end
2859
            recurse(e)
2860
        end
2861
    end
2862
 
2863
    recurse(workspace)
2864
    return rtn
2865
end
2866
 
2867
function stopParts(distance)
2868
    stoppedParts = {}
2869
    for nada, part in next, getAllParts() do
2870
        local dist = (Torso.Position-part.Position).magnitude
2871
        if dist <= distance and part.Name ~='Base' and part.Name ~= 'Baseplate' and not part:isDescendantOf(Torso.Parent) and part.Anchored ~= true then
2872
            table.insert(stoppedParts, part)
2873
            if part.Name ~= "Torso" and part.Anchored ~= true then
2874
                part.Anchored = true
2875
            end
2876
        end
2877
    end
2878
end
2879
 
2880
 
2881
function freeParts()
2882
    for q,e in next, stoppedParts do
2883
        stoppedParts[q] = nil
2884
        e.Anchored = false
2885
    end
2886
end
2887
 
2888
local effect = Instance.new('ColorCorrectionEffect')
2889
function TheWorld(Mode)
2890
     if Mode == "Time Start" then
2891
     Effects.Sphere.Create(BrickColor.new("Really black"), HitboxL.CFrame, .5, .5, .5, 1.5, 1.5, 1.5, .15)
2892
        for i = 1,50 do
2893
            if effect.Saturation <= 0 then
2894
                effect.Saturation = effect.Saturation + i/50
2895
            end
2896
            swait(1/30)
2897
        end
2898
        freeParts()
2899
        effect.Saturation = 0
2900
        effect.Contrast = 0
2901
        effect.Parent = nil
2902
        workspace.Gravity = 196.2
2903
    end
2904
    if Mode == "Quick Stop" then
2905
     CFuncs.Sound.Create("616576400", workspace, 1, 1)
2906
     swait(60)
2907
    Effects.Sphere.Create(BrickColor.new("Institutional white"), RootPart.CFrame, 1, 1, 1, 50, 50, 50, .01)
2908
        effect.Parent = game.Lighting
2909
        for i = 1,50 do
2910
            effect.Saturation = -(i/10)
2911
            swait()
2912
        end
2913
        stopParts(5555)
2914
    end
2915
end
2916
 
2917
Mouse.Button1Down:connect(function()
2918
    if attack == false and DORARA == false then
2919
        DORARA = true
2920
        ORA()
2921
    end
2922
end)
2923
 
2924
Mouse.Button1Up:connect(function()
2925
    if attack == true and DORARA == true then
2926
        DORARA = false
2927
    end
2928
end)
2929
 
2930
Mouse.KeyDown:connect(function(k)
2931
    k = k:lower()
2932
    if attack == false and k == 'g' and TimeStop == false then
2933
        TimeStop = true
2934
        TheWorld("Quick Stop")
2935
    elseif attack == false and k == 'g' and TimeStop == true then
2936
        TimeStop = false
2937
        TheWorld("Time Start")
2938
    end
2939
end)
2940
 
2941
while true do
2942
    swait()
2943
    sref.CFrame = RightArm.CFrame * CFrame.new(0, -1.5, 0) * CFrame.fromEulerAnglesXYZ(-1.57, 0, 0)
2944
    for i, v in pairs(Character:GetChildren()) do
2945
        if v:IsA("Part") then
2946
            v.Material = "SmoothPlastic"
2947
        elseif v:IsA("Accessory") then
2948
            v:WaitForChild("Handle").Material = "SmoothPlastic"
2949
        end
2950
    end
2951
    Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
2952
    velocity = RootPart.Velocity.y
2953
    sine = sine + change
2954
    local hit, pos = rayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
2955
    if RootPart.Velocity.y > 1 and hit == nil then
2956
        Anim = "Jump"
2957
        if attack == false then
2958
            PlayAnimationFromTable({
2959
                CFrame.new(0, 0.0486936681, -0.0429394133, 1, 0, -0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2960
                CFrame.new(0, 1.48698187, -0.0992434025, 1, 0, 0, 0, 0.98480767, 0.173648626, -0, -0.173648626, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2961
                CFrame.new(1.66118193, 0.583681226, 0.430878729, 0.556951106, -0.772693694, -0.30454877, 0.830109596, 0.506009281, 0.234249175, -0.026898358, -0.383274168, 0.923242927) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2962
                CFrame.new(-1.65963519, 0.695907593, 0.339572817, 0.482961893, 0.810776234, 0.330741376, -0.866026103, 0.498096228, 0.0435779653, -0.129409045, -0.307477146, 0.94271481) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2963
                CFrame.new(0.499997795, -1.71809137, -0.102601528, 0.984807849, 3.55863392e-007, -0.173647791, 0.0593907312, 0.939692557, 0.336824298, 0.163175657, -0.342020214, 0.925416589) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2964
                CFrame.new(-0.599241376, -1.29528463, -0.396836221, 0.992403984, 0.086823605, 0.0871558413, -0.118890785, 0.858931601, 0.498097867, -0.0316142589, -0.504676282, 0.862729669) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2965
            }, .3, false)
2966
        end
2967
    elseif RootPart.Velocity.y < -1 and hit == nil then
2968
        Anim = "Fall"
2969
        if attack == false then
2970
            PlayAnimationFromTable({
2971
                CFrame.new(-0, -0.0520263538, -0.0354017057, 1, 0, 0, 0, 0.965925872, 0.258818984, 0, -0.258818984, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2972
                CFrame.new(0, 1.51533091, -0.10684365, 1, 0, 0, 0, 0.965925872, 0.258819342, 0, -0.258819342, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2973
                CFrame.new(1.67554009, 0.885679007, 0.385592818, 0.374123871, -0.696466088, -0.61234498, 0.914592147, 0.386364758, 0.119345918, 0.153468132, -0.604696095, 0.781530797) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2974
                CFrame.new(-1.67474985, 0.999329269, 0.296636045, 0.250219911, 0.753912985, 0.607457995, -0.927206695, 0.367205799, -0.0738086402, -0.278707415, -0.544770718, 0.79091537) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2975
                CFrame.new(0.504494727, -1.81757987, -0.0935191363, 0.984807849, -0.0449431092, -0.167730823, 0.059390761, 0.99484998, 0.0821366012, 0.163175508, -0.0908504426, 0.982405365) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2976
                CFrame.new(-0.623603821, -1.49203336, -0.421764404, 0.992403865, 0.122534379, 0.0109562073, -0.118891656, 0.978150725, -0.17054674, -0.0316146575, 0.167948633, 0.985288799) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2977
            }, .3, false)
2978
        end
2979
    elseif Torsovelocity < 1 and hit ~= nil then
2980
        Anim = "Idle"
2981
        if attack == false then
2982
            change = 1
2983
            PlayAnimationFromTable({
2984
                CFrame.new(-0.0254490171, -0.100000001, -0.0245252885, 0.965925872, 0, 0.258818984, 0, 1, 0, -0.258818984, 0, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2985
                CFrame.new(-5.58793545e-008, 1.49999201, 2.23517418e-007, 0.965925872, 0.02255762, -0.257834077, 0, 0.996194661, 0.087155968, 0.258818984, -0.0841862038, 0.962250173) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2986
                CFrame.new(1.18608475, 0.561332762, -0.668662548, 0.815707564, 0.397307515, 0.420437992, 0.567439079, -0.408345699, -0.71502924, -0.112402454, 0.821827531, -0.558538496) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2987
                CFrame.new(-1.18486226, 0.664583206, -0.703545451, 0.801997423, -0.384815574, -0.456855893, -0.595755875, -0.459863067, -0.658483863, 0.0433037281, 0.800276875, -0.598065078) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2988
                CFrame.new(0.602607846, -1.89999723, -0.281901717, 0.938264608, -0.0318391919, -0.344450235, 0.0551190265, 0.996793628, 0.0580029301, 0.341499031, -0.0734078437, 0.937011182) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2989
                CFrame.new(-0.68740654, -1.99010217, 0.313043743, 0.998308659, 0.0566585623, -0.0130319893, -0.0526040196, 0.975744903, 0.212496698, 0.0247556716, -0.211451754, 0.977074862) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
2990
            }, .3, false)
2991
        end
2992
    elseif Torsovelocity > 2 and hit ~= nil then
2993
        Anim = "Walk"
2994
        if attack == false then
2995
            change = 2
2996
            PlayAnimationFromTable({
2997
                CFrame.new(-0, -0.331043243, -0.246173918, 1, 0, 0, 0, 0.906307876, 0.422617942, 0, -0.422617942, 0.906307876) * CFrame.new(0, .1, 0) * CFrame.Angles(0, math.rad(-5 * math.cos(sine / 7)), 0),
2998
                CFrame.new(0, 1.4999913, 6.55651093e-007, 1, 0, 0, 0, 0.965925813, -0.258818924, 0, 0.258818924, 0.965925813) * CFrame.new(0, 0, 0) * CFrame.Angles(0, math.rad(5 * math.cos(sine / 7)), 0),
2999
                CFrame.new(1.14562762, 0.526349247, -0.591056466, 0.825674891, 0.469375819, 0.312965363, 0.547643542, -0.533675969, -0.644419432, -0.135452792, 0.703474402, -0.697693527) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
3000
                CFrame.new(-1.14244175, 0.534408689, -0.582344949, 0.825674295, -0.469376504, -0.312966168, -0.547644734, -0.533675849, -0.644418597, 0.13545242, 0.703474045, -0.697693944) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
3001
                CFrame.new(.5, -1.64 - 0.5 * math.cos(sine / 8) / 2, 0 + 2 *  math.sin(sine / 8) / 2) * CFrame.Angles(math.rad(-70 *  math.sin(sine / 8)), math.rad(-3), math.rad(0)),
3002
                CFrame.new(-.5, -1.64 + 0.5 * math.cos(sine / 8) / 2, 0 - 2 * math.sin(sine / 8) / 2) * CFrame.Angles(math.rad(70 *  math.sin(sine / 8)), math.rad(3), math.rad(0)),
3003
            }, .3, false)
3004
        end
3005
    end
3006
    if 0 < #Effects then
3007
        for e = 1, #Effects do
3008
            if Effects[e] ~= nil then
3009
                local Thing = Effects[e]
3010
                if Thing ~= nil then
3011
                    local Part = Thing[1]
3012
                    local Mode = Thing[2]
3013
                    local Delay = Thing[3]
3014
                    local IncX = Thing[4]
3015
                    local IncY = Thing[5]
3016
                    local IncZ = Thing[6]
3017
                    if Thing[2] == "Shoot" then
3018
                        local Look = Thing[1]
3019
                        local move = 5
3020
                        local hit, pos = rayCast(Thing[4], Thing[1], move, Character)
3021
                        if Thing[10] ~= nil then
3022
                            da = pos
3023
                            cf2 = CFrame.new(Thing[4], Thing[10].Position)
3024
                            cfa = CFrame.new(Thing[4], pos)
3025
                            tehCF = cfa:lerp(cf2, 0.2)
3026
                            Thing[1] = tehCF.lookVector
3027
                        end
3028
                        local mag = (Thing[4] - pos).magnitude
3029
                        Effects.Elect.Create(CFrame.new((Thing[4] + pos) / 2, pos), 4, 4, 4)
3030
                        Effects.Sphere.Create(BrickColor.new("New Yeller"), CFrame.new((Thing[4] + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0), 3, 3, 3, 5, 5, 5, 0.15)
3031
                        Thing[4] = Thing[4] + Look * move
3032
                        Thing[3] = Thing[3] - 1
3033
                        if 2 < Thing[5] then
3034
                            Thing[5] = Thing[5] - 0.3
3035
                            Thing[6] = Thing[6] - 0.3
3036
                        end
3037
                        if hit ~= nil then
3038
                            Thing[3] = 0
3039
                            MagnitudeDamage(hit, 5, 10, 15, 0, "Normal", "161006093", 0.8)
3040
                            ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Really red"), "Reference", Vector3.new())
3041
                            ref.Anchored = true
3042
                            ref.CFrame = CFrame.new(pos)
3043
                            Effects.Block.Create(BrickColor.new("New Yeller"), CFrame.new(pos), 1, 1, 1, 2, 2, 2, .05)
3044
                            Effects.Sphere.Create(BrickColor.new("New Yeller"), CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.03)
3045
                            game:GetService("Debris"):AddItem(ref, 1)
3046
                        end
3047
                        if Thing[3] <= 0 then
3048
                            table.remove(Effects, e)
3049
                        end
3050
                    end
3051
                    do
3052
                        do
3053
                            if Thing[2] == "FireWave" then
3054
                                if Thing[3] <= Thing[4] then
3055
                                    Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
3056
                                    Thing[3] = Thing[3] + 1
3057
                                    Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
3058
                                else
3059
                                    Part.Parent = nil
3060
                                    table.remove(Effects, e)
3061
                                end
3062
                            end
3063
                            if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
3064
                                if Thing[1].Transparency <= 1 then
3065
                                    if Thing[2] == "Block1" then
3066
                                        Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
3067
                                        Mesh = Thing[7]
3068
                                        Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3069
                                        Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3070
                                    else
3071
                                        if Thing[2] == "Block2" then
3072
                                            Thing[1].CFrame = Thing[1].CFrame
3073
                                            Mesh = Thing[7]
3074
                                            Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3075
                                            Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3076
                                        else
3077
                                            if Thing[2] == "Fire" then
3078
                                                Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
3079
                                                Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
3080
                                                Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3081
                                            else
3082
                                                if Thing[2] == "Cylinder" then
3083
                                                    Mesh = Thing[7]
3084
                                                    Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3085
                                                    Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3086
                                                else
3087
                                                    if Thing[2] == "Blood" then
3088
                                                        Mesh = Thing[7]
3089
                                                        Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
3090
                                                        Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3091
                                                        Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3092
                                                    else
3093
                                                        if Thing[2] == "Elec" then
3094
                                                            Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
3095
                                                            Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3096
                                                        else
3097
                                                            if Thing[2] == "Disappear" then
3098
                                                                Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3099
                                                            end
3100
                                                        end
3101
                                                    end
3102
                                                end
3103
                                            end
3104
                                        end
3105
                                    end
3106
                                else
3107
                                    Part.Parent = nil
3108
                                    table.remove(Effects, e)
3109
                                end
3110
                            end
3111
                        end
3112
                    end
3113
                end
3114
            end
3115
        end
3116
    end
3117
end