View difference between Paste ID: i8LRz2Lg and mQCPk9HE
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
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.016666666666666666)
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-
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1126+
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-
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1159+
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-
    Instance.new("DistortionSoundEffect", S2).Level = 0.8
1199+
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(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(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(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-
  game.Lighting.Outlines = false
1440+
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
  function attackone()
1592
    attack = true
1593
    for i = 0, 1, 0.12 do
1594
      swait()
1595
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1596
      PlayAnimationFromTable({
1597
        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),
1598
        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),
1599
        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),
1600
        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),
1601
        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),
1602
        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)
1603
      }, 0.3, false)
1604
    end
1605
    MagnitudeDamage(HitboxR, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1)
1606
    CFuncs.Sound.Create("200632136", HitboxR, 1, 1)
1607
    RootPart.Velocity = RootPart.CFrame.lookVector * 40
1608
    for i = 0, 1, 0.11 do
1609
      swait()
1610
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1611
      PlayAnimationFromTable({
1612
        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),
1613
        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),
1614
        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),
1615
        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),
1616
        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),
1617
        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)
1618
      }, 0.45, false)
1619
    end
1620
    attack = false
1621
  end
1622
  function attacktwo()
1623
    attack = true
1624
    for i = 0, 1, 0.12 do
1625
      swait()
1626
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1627
      PlayAnimationFromTable({
1628
        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),
1629
        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),
1630
        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),
1631
        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),
1632
        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),
1633
        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)
1634
      }, 0.34, false)
1635
    end
1636
    MagnitudeDamage(HitboxL, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1.1)
1637
    CFuncs.Sound.Create("200632136", HitboxL, 1, 1)
1638
    RootPart.Velocity = RootPart.CFrame.lookVector * 40
1639
    for i = 0, 1, 0.12 do
1640
      swait()
1641
      RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
1642
      PlayAnimationFromTable({
1643
        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),
1644
        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),
1645
        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),
1646
        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),
1647
        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),
1648
        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)
1649
      }, 0.45, false)
1650
    end
1651
    attack = false
1652
  end
1653
  function findNearestTorso(pos)
1654
    local list = game.Workspace:children()
1655
    local torso
1656
    local dist = 1000
1657
    local temp, human, temp2
1658
    for x = 1, #list do
1659
      temp2 = list[x]
1660
      if temp2.className == "Model" and temp2.Name ~= Character.Name then
1661
        temp = temp2:findFirstChild("Torso")
1662
        human = temp2:findFirstChild("Humanoid")
1663
        if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
1664
          local dohit = true
1665
          if dohit == true then
1666
            torso = temp
1667
            dist = (temp.Position - pos).magnitude
1668
          end
1669
        end
1670
      end
1671
    end
1672
    return torso, dist
1673
  end
1674
  function TrueAim(aim)
1675
    local target, distance = findNearestTorso(Mouse.Hit.p)
1676
    local tehcf = HitboxR.CFrame * CFrame.fromEulerAnglesXYZ(1.57, 0, 0).lookVector
1677
    if aim ~= nil then
1678
      tehcf = aim
1679
    end
1680
    table.insert(Effects, {
1681
      tehcf,
1682
      "Shoot",
1683
      30,
1684
      HitboxR.Position,
1685
      10,
1686
      15,
1687
      0,
1688
      3,
1689
      HitboxR,
1690
      target
1691
    })
1692
  end
1693
  function FireProjectiles()
1694
    attack = true
1695
    Humanoid.WalkSpeed = 20
1696
    CFuncs.Sound.Create("300915902", HitboxR, 1, 0.8)
1697
    for i = 0, 1, 0.1 do
1698
      swait()
1699
      Effects.Elec.Create(HitboxR.CFrame, 2, 2, 2)
1700
      PlayAnimationFromTable({
1701
        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),
1702
        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),
1703
        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),
1704
        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),
1705
        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),
1706
        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)
1707
      }, 0.3, false)
1708
    end
1709
    for i = 0, 1, 0.1 do
1710
      swait()
1711
      Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1712
      Effects.Block.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1713
      Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1714
      PlayAnimationFromTable({
1715
        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),
1716
        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),
1717
        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),
1718
        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),
1719
        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),
1720
        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)
1721
      }, 0.2, false)
1722
    end
1723
    for i = 1, 10 do
1724
      for i = 0, 1, 0.3 do
1725
        swait()
1726
        Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1727
        Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1728
        PlayAnimationFromTable({
1729
          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),
1730
          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),
1731
          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),
1732
          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),
1733
          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),
1734
          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)
1735
        }, 0.3, false)
1736
      end
1737
      CFuncs.Sound.Create("300916105", HitboxR, 1, 1.2)
1738
      CFuncs.Sound.Create("300916014", HitboxR, 1, 1)
1739
      Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 2, 2, 2, 0.07)
1740
      local MouseLook = CFrame.new((HitboxR.Position + Mouse.Hit.p) / 2, Mouse.Hit.p)
1741
      TrueAim(MouseLook.lookVector)
1742
      for i = 0, 1, 0.3 do
1743
        swait()
1744
        Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
1745
        Effects.Sphere2.Create(BrickColor.new("Really black"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
1746
        PlayAnimationFromTable({
1747
          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),
1748
          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),
1749
          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),
1750
          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),
1751
          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),
1752
          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)
1753
        }, 0.3, false)
1754
      end
1755
    end
1756
    Humanoid.WalkSpeed = 30
1757
    attack = false
1758
  end
1759
  Mouse.KeyDown:connect(function(k)
1760
    k = k:lower()
1761
    if attack == false and ora == false and k == "z" and IsWearingArmor == false and Invisible == false then
1762
      ora = true
1763
      ORA()
1764
    elseif attack == false and k == "x" and IsWearingArmor == false and Invisible == false then
1765
      GRABEMBOIGRABEM()
1766
    elseif attack == false and k == "q" and IsWearingArmor == false and Invisible == false then
1767
      FireProjectiles()
1768
    elseif attack == false and k == "f" and Invisible == false and IsWearingArmor == false then
1769
      Invisible = true
1770
      Effects.Sphere.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1)
1771
      Effects.Block.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
1772
      Disappear()
1773
    elseif attack == false and k == "f" and Invisible == true and IsWearingArmor == false then
1774
      Invisible = false
1775
      CFuncs.Sound.Create("463010917", Torso, 1, 1)
1776
      Effects.Sphere.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.08)
1777
      for i = 1, 2 do
1778
        Effects.Block.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
1779
      end
1780
      for i = 1, 20 do
1781
        Effects.Break.Create(BrickColor.new("Really red"), Torso.CFrame, 1, 1, 1)
1782
      end
1783
      Reappear()
1784
    elseif attack == false and ShieldMode == false and k == "c" and IsWearingArmor == false and Invisible == false then
1785
      ShieldMode = true
1786
      HoloHexShield()
1787
    elseif attack == false and k == "v" and IsWearingArmor == false and Invisible == false then
1788
      CastleCrusherFist()
1789
    end
1790
    if k == "[" and IsWearingArmor == false and Invisible == false then
1791
      Armor("On")
1792
    end
1793
    if k == "]" and IsWearingArmor == true and Invisible == false then
1794
      Armor("Off")
1795
    end
1796
  end)
1797
  Mouse.KeyUp:connect(function(k)
1798
    k = k:lower()
1799
    if attack == true and ora == true and k == "z" and IsWearingArmor == false then
1800
      ora = false
1801
    elseif attack == true and ShieldMode == true and k == "c" and IsWearingArmor == false then
1802
      ShieldMode = false
1803
    end
1804
  end)
1805
  coroutine.resume(coroutine.create(function(Part, Part2)
1806
    while Part.Parent ~= nil do
1807
      swait(math.random(100, 150))
1808
      for i = 0, 1, 0.2 do
1809
        wait()
1810
        Eye1.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
1811
        Eye2.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
1812
      end
1813
      for i = 0, 1, 0.2 do
1814
        swait()
1815
        Eye1.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
1816
        Eye2.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
1817
      end
1818
    end
1819
  end), Eye1, Eye2)
1820
  while true do
1821
    swait()
1822
    for i, v in pairs(Character:children()) do
1823
      if v:IsA("Part") and IsWearingArmor == true then
1824
        v.Anchored = false
1825
      end
1826
    end
1827
    for i, v in pairs(AdvancingFortress:GetChildren()) do
1828
      if v:IsA("Part") then
1829
        v.Material = "SmoothPlastic"
1830
        v.CanCollide = false
1831
      elseif v:IsA("Humanoid") then
1832
        v:remove()
1833
      elseif v:IsA("Accessory") then
1834
        v:remove()
1835
      elseif v:IsA("Shirt") then
1836
        v:remove()
1837
      elseif v:IsA("Pants") then
1838
        v:remove()
1839
      elseif v:IsA("Script") or v:IsA("LocalScript") then
1840
        v:remove()
1841
      elseif v:IsA("BodyColors") then
1842
        v:remove()
1843
      end
1844
    end
1845
    HHandle.Transparency = 1
1846
    THandle.Transparency = 1
1847
    AHandleR.Transparency = 1
1848
    AHandleL.Transparency = 1
1849
    LHandleR.Transparency = 1
1850
    LHandleL.Transparency = 1
1851
    RootPart.Transparency = 1
1852
    HitboxR.Transparency = 1
1853
    HitboxL.Transparency = 1
1854
    Head.BrickColor = BrickColor.new("Really black")
1855
    Torso.BrickColor = BrickColor.new("Really black")
1856
    RightArm.BrickColor = BrickColor.new("Really black")
1857
    LeftArm.BrickColor = BrickColor.new("Really black")
1858
    RightLeg.BrickColor = BrickColor.new("Really black")
1859
    LeftLeg.BrickColor = BrickColor.new("Really black")
1860
    RootPart.Anchored = true
1861
    Torsovelocity = (Character.HumanoidRootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
1862
    velocity = Character.HumanoidRootPart.Velocity.y
1863
    sine = sine + change
1864
    Shield.Anchored = true
1865
    Shield.CFrame = Shield.CFrame:lerp(RootPart.CFrame * CFrame.new(0, 0, -3.2), 1)
1866
    local hit, pos = rayCast(Character.HumanoidRootPart.Position, CFrame.new(Character.HumanoidRootPart.Position, Character.HumanoidRootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
1867
    if Character.HumanoidRootPart.Velocity.y > 1 and hit == nil then
1868
      Anim = "Jump"
1869
      if attack == false then
1870
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1871
        PlayAnimationFromTable({
1872
          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),
1873
          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),
1874
          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),
1875
          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),
1876
          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),
1877
          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)
1878
        }, 0.3, false)
1879
      end
1880
    elseif Character.HumanoidRootPart.Velocity.y < -1 and hit == nil then
1881
      Anim = "Fall"
1882
      if attack == false then
1883
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1884
        PlayAnimationFromTable({
1885
          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),
1886
          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),
1887
          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),
1888
          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),
1889
          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),
1890
          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)
1891
        }, 0.3, false)
1892
      end
1893
    elseif Torsovelocity < 1 and hit ~= nil then
1894
      Anim = "Idle"
1895
      if attack == false then
1896
        change = 1
1897
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1898
        PlayAnimationFromTable({
1899
          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),
1900
          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),
1901
          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),
1902
          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),
1903
          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),
1904
          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)
1905
        }, 0.3, false)
1906
      end
1907
    elseif Torsovelocity > 2 and hit ~= nil then
1908
      Anim = "Walk"
1909
      if attack == false then
1910
        RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
1911
        PlayAnimationFromTable({
1912
          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),
1913
          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),
1914
          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),
1915
          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),
1916
          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),
1917
          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)
1918
        }, 0.3, false)
1919
      end
1920
    end
1921
    if 0 < #Effects then
1922
      for e = 1, #Effects do
1923
        if Effects[e] ~= nil then
1924
          local Thing = Effects[e]
1925
          if Thing ~= nil then
1926
            local Part = Thing[1]
1927
            local Mode = Thing[2]
1928
            local Delay = Thing[3]
1929
            local IncX = Thing[4]
1930
            local IncY = Thing[5]
1931
            local IncZ = Thing[6]
1932
            if Thing[2] == "Shoot" then
1933
              local Look = Thing[1]
1934
              local move = 30
1935
              if Thing[8] == 3 then
1936
                move = 10
1937
              end
1938
              local hit, pos = rayCast(Thing[4], Thing[1], move, m)
1939
              if Thing[10] ~= nil then
1940
                da = pos
1941
                cf2 = CFrame.new(Thing[4], Thing[10].Position)
1942
                cfa = CFrame.new(Thing[4], pos)
1943
                tehCF = cfa:lerp(cf2, 0.2)
1944
                Thing[1] = tehCF.lookVector
1945
              end
1946
              local mag = (Thing[4] - pos).magnitude
1947
              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)
1948
              if Thing[8] == 2 then
1949
                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)
1950
              end
1951
              Thing[4] = Thing[4] + Look * move
1952
              Thing[3] = Thing[3] - 1
1953
              if 2 < Thing[5] then
1954
                Thing[5] = Thing[5] - 0.3
1955
                Thing[6] = Thing[6] - 0.3
1956
              end
1957
              if hit ~= nil then
1958
                Thing[3] = 0
1959
                if Thing[8] == 1 or Thing[8] == 3 then
1960
                  Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
1961
                elseif Thing[8] == 2 then
1962
                  Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
1963
                  if hit.Parent:findFirstChild("Humanoid") ~= nil or hit.Parent.Parent:findFirstChild("Humanoid") ~= nil then
1964
                    ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Purple"), "Reference", Vector3.new())
1965
                    ref.Anchored = true
1966
                    ref.CFrame = CFrame.new(pos)
1967
                    CFuncs.Sound.Create("161006093", ref, 1, 1.2)
1968
                    game:GetService("Debris"):AddItem(ref, 0.2)
1969
                    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)
1970
                    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)
1971
                    MagnitudeDamage(ref, 15, Thing[5] / 1.5, Thing[6] / 1.5, 0, "Normal", "", 1)
1972
                  end
1973
                end
1974
                ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Really red"), "Reference", Vector3.new())
1975
                ref.Anchored = true
1976
                ref.CFrame = CFrame.new(pos)
1977
                Effects.Sphere.Create(Torso.BrickColor, CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
1978
                game:GetService("Debris"):AddItem(ref, 1)
1979
              end
1980
              if Thing[3] <= 0 then
1981
                table.remove(Effects, e)
1982
              end
1983
            end
1984
            if Thing[2] == "FireWave" then
1985
              if Thing[3] <= Thing[4] then
1986
                Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
1987
                Thing[3] = Thing[3] + 1
1988
                Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
1989
              else
1990
                Part.Parent = nil
1991
                table.remove(Effects, e)
1992
              end
1993
            end
1994
            if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
1995
              if Thing[1].Transparency <= 1 then
1996
                if Thing[2] == "Block1" then
1997
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1998
                  Mesh = Thing[7]
1999
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2000
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2001
                elseif Thing[2] == "Block2" then
2002
                  Thing[1].CFrame = Thing[1].CFrame
2003
                  Mesh = Thing[7]
2004
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2005
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2006
                elseif Thing[2] == "Fire" then
2007
                  Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
2008
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
2009
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2010
                elseif Thing[2] == "Cylinder" then
2011
                  Mesh = Thing[7]
2012
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2013
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2014
                elseif Thing[2] == "Blood" then
2015
                  Mesh = Thing[7]
2016
                  Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
2017
                  Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
2018
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2019
                elseif Thing[2] == "Elec" then
2020
                  Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
2021
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2022
                elseif Thing[2] == "Disappear" then
2023
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2024
                elseif Thing[2] == "Shatter" then
2025
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
2026
                  Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
2027
                  Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
2028
                  Thing[6] = Thing[6] + Thing[5]
2029
                end
2030
              else
2031
                Part.Parent = nil
2032
                table.remove(Effects, e)
2033
              end
2034
            end
2035
          end
2036
        end
2037
      end
2038
    end
2039
  end
2040
local Camera = game.Workspace.CurrentCamera
2041
local RootPart = Character.HumanoidRootPart
2042
local RootJoint = RootPart.RootJoint
2043
local attack = false
2044
local Anim = 'Idle'
2045
local attacktype = 1
2046
local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
2047
local velocity = RootPart.Velocity.y
2048
local sine = 0
2049
local change = 1
2050
local Create = LoadLibrary("RbxUtility").Create
2051
local TimeStop = false
2052
 
2053
local m = Create("Model"){
2054
    Parent = Character,
2055
    Name = "WeaponModel",
2056
}
2057
 
2058
Humanoid.Animator.Parent = nil
2059
Character.Animate.Parent = nil
2060
 
2061
local newMotor = function(part0, part1, c0, c1)
2062
    local w = Create('Motor'){
2063
        Parent = part0,
2064
        Part0 = part0,
2065
        Part1 = part1,
2066
        C0 = c0,
2067
        C1 = c1,
2068
    }
2069
    return w
2070
end
2071
 
2072
function clerp(a, b, t)
2073
    return a:lerp(b, t)
2074
end
2075
 
2076
RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
2077
NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
2078
 
2079
local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
2080
local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
2081
local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0))
2082
local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0))
2083
RootJoint.C1 = CFrame.new(0, 0, 0)
2084
RootJoint.C0 = CFrame.new(0, 0, 0)
2085
Torso.Neck.C1 = CFrame.new(0, 0, 0)
2086
Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
2087
 
2088
local rarmc1 = RW.C1
2089
local larmc1 = LW.C1
2090
local rlegc1 = RH.C1
2091
local llegc1 = LH.C1
2092
 
2093
local resetc1 = false
2094
 
2095
function PlayAnimationFromTable(table, speed, bool)
2096
    RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
2097
    Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
2098
    RW.C0 = clerp(RW.C0, table[3], speed)
2099
    LW.C0 = clerp(LW.C0, table[4], speed)
2100
    RH.C0 = clerp(RH.C0, table[5], speed)
2101
    LH.C0 = clerp(LH.C0, table[6], speed)
2102
    if bool == true then
2103
        if resetc1 == false then
2104
            resetc1 = true
2105
            RootJoint.C1 = RootJoint.C1
2106
            Torso.Neck.C1 = Torso.Neck.C1
2107
            RW.C1 = rarmc1
2108
            LW.C1 = larmc1
2109
            RH.C1 = rlegc1
2110
            LH.C1 = llegc1
2111
        end
2112
    end
2113
end
2114
 
2115
ArtificialHB = Create("BindableEvent", script){
2116
    Parent = script,
2117
    Name = "Heartbeat",
2118
}
2119
 
2120
script:WaitForChild("Heartbeat")
2121
 
2122
frame = 1 / 35
2123
tf = 0
2124
allowframeloss = false
2125
tossremainder = false
2126
lastframe = tick()
2127
script.Heartbeat:Fire()
2128
 
2129
game:GetService("RunService").Heartbeat:connect(function(s, p)
2130
    tf = tf + s
2131
    if tf >= frame then
2132
        if allowframeloss then
2133
            script.Heartbeat:Fire()
2134
            lastframe = tick()
2135
        else
2136
            for i = 1, math.floor(tf / frame) do
2137
                script.Heartbeat:Fire()
2138
            end
2139
            lastframe = tick()
2140
        end
2141
        if tossremainder then
2142
            tf = 0
2143
        else
2144
            tf = tf - frame * math.floor(tf / frame)
2145
        end
2146
    end
2147
end)
2148
 
2149
function swait(num)
2150
    if num == 0 or num == nil then
2151
        ArtificialHB.Event:wait()
2152
    else
2153
        for i = 0, num do
2154
            ArtificialHB.Event:wait()
2155
        end
2156
    end
2157
end
2158
 
2159
function RemoveOutlines(part)
2160
    part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
2161
end
2162
   
2163
CFuncs = { 
2164
    Part = {
2165
        Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
2166
            local Part = Create("Part"){
2167
                Parent = Parent,
2168
                Reflectance = Reflectance,
2169
                Transparency = Transparency,
2170
                CanCollide = false,
2171
                Locked = true,
2172
                BrickColor = BrickColor.new(tostring(BColor)),
2173
                Name = Name,
2174
                Size = Size,
2175
                Material = Material,
2176
            }
2177
            RemoveOutlines(Part)
2178
            return Part
2179
        end;
2180
    };
2181
   
2182
    Mesh = {
2183
        Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
2184
            local Msh = Create(Mesh){
2185
                Parent = Part,
2186
                Offset = OffSet,
2187
                Scale = Scale,
2188
            }
2189
            if Mesh == "SpecialMesh" then
2190
                Msh.MeshType = MeshType
2191
                Msh.MeshId = MeshId
2192
            end
2193
            return Msh
2194
        end;
2195
    };
2196
 
2197
    Weld = {
2198
        Create = function(Parent, Part0, Part1, C0, C1)
2199
            local Weld = Create("Weld"){
2200
                Parent = Parent,
2201
                Part0 = Part0,
2202
                Part1 = Part1,
2203
                C0 = C0,
2204
                C1 = C1,
2205
            }
2206
            return Weld
2207
        end;
2208
    };
2209
 
2210
    Sound = {
2211
        Create = function(id, par, vol, pit)
2212
            local Sound = Create("Sound"){
2213
                Volume = vol,
2214
                Pitch = pit or 1,
2215
                SoundId = "rbxassetid://" .. id,
2216
                Parent = par or workspace,
2217
            }
2218
            Sound:play()
2219
            return Sound
2220
        end;
2221
    };
2222
   
2223
    Decal = {
2224
        Create = function(Color, Texture, Transparency, Name, Parent)
2225
            local Decal = Create("Decal"){
2226
                Color3 = Color,
2227
                Texture = "rbxassetid://" .. Texture,
2228
                Transparency = Transparency,
2229
                Name = Name,
2230
                Parent = Parent,
2231
            }
2232
            return Decal
2233
        end;
2234
    };
2235
   
2236
    BillboardGui = {
2237
        Create = function(Parent, Image, Position, Size)
2238
            local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
2239
            BillPar.CFrame = CFrame.new(Position)
2240
            local Bill = Create("BillboardGui"){
2241
                Parent = BillPar,
2242
                Adornee = BillPar,
2243
                Size = UDim2.new(1, 0, 1, 0),
2244
                SizeOffset = Vector2.new(Size, Size),
2245
            }
2246
            local d = Create("ImageLabel", Bill){
2247
                Parent = Bill,
2248
                BackgroundTransparency = 1,
2249
                Size = UDim2.new(1, 0, 1, 0),
2250
                Image = "rbxassetid://" .. Image,
2251
            }
2252
            return BillPar
2253
        end
2254
    };
2255
   
2256
    ParticleEmitter = {
2257
        Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
2258
            local Particle = Create("ParticleEmitter"){
2259
                Parent = Parent,
2260
                Color = ColorSequence.new(Color1, Color2),
2261
                LightEmission = LightEmission,
2262
                Size = Size,
2263
                Texture = Texture,
2264
                Transparency = Transparency,
2265
                ZOffset = ZOffset,
2266
                Acceleration = Accel,
2267
                Drag = Drag,
2268
                LockedToPart = LockedToPart,
2269
                VelocityInheritance = VelocityInheritance,
2270
                EmissionDirection = EmissionDirection,
2271
                Enabled = Enabled,
2272
                Lifetime = LifeTime,
2273
                Rate = Rate,
2274
                Rotation = Rotation,
2275
                RotSpeed = RotSpeed,
2276
                Speed = Speed,
2277
                VelocitySpread = VelocitySpread,
2278
            }
2279
            return Particle
2280
        end;
2281
    };
2282
   
2283
    CreateTemplate = {
2284
       
2285
    };
2286
}
2287
 
2288
function rayCast(Position, Direction, Range, Ignore)
2289
    return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
2290
end
2291
 
2292
function FindNearestTorso(Position, Distance, SinglePlayer)
2293
    if SinglePlayer then
2294
        return (SinglePlayer.Torso.CFrame.p - Position).magnitude < Distance
2295
    end
2296
    local List = {}
2297
    for i, v in pairs(workspace:GetChildren()) do
2298
        if v:IsA("Model") then
2299
            if v:findFirstChild("Torso") then
2300
                if v ~= Character then
2301
                    if (v.Torso.Position - Position).magnitude <= Distance then
2302
                        table.insert(List, v)
2303
                    end
2304
                end
2305
            end
2306
        end
2307
    end
2308
    return List
2309
end
2310
 
2311
function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
2312
    if hit.Parent == nil then
2313
        return
2314
    end
2315
    local h = hit.Parent:FindFirstChild("Humanoid")
2316
    for _, v in pairs(hit.Parent:children()) do
2317
        if v:IsA("Humanoid") then
2318
            h = v
2319
        end
2320
    end
2321
    if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
2322
        if hit.Parent:findFirstChild("DebounceHit") ~= nil then
2323
            if hit.Parent.DebounceHit.Value == true then
2324
                return
2325
            end
2326
        end
2327
        local c = Create("ObjectValue"){
2328
            Name = "creator",
2329
            Value = game:service("Players").LocalPlayer,
2330
            Parent = h,
2331
        }
2332
        game:GetService("Debris"):AddItem(c, .5)
2333
        CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
2334
        local Damage = math.random(minim, maxim)
2335
        local blocked = false
2336
        local block = hit.Parent:findFirstChild("Block")
2337
        if block ~= nil then
2338
            if block.className == "IntValue" then
2339
                if block.Value > 0 then
2340
                    blocked = true
2341
                    block.Value = block.Value - 1
2342
                    print(block.Value)
2343
                end
2344
            end
2345
        end
2346
        if TimeStop == false then
2347
            h.Health = h.Health - Damage
2348
            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)
2349
        elseif TimeStop == true then
2350
            repeat wait() until TimeStop == false
2351
            h.Health = h.Health - (Damage / 2)
2352
            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)
2353
        end
2354
        if Type == "Knockdown" then
2355
            local hum = hit.Parent.Humanoid
2356
            hum.PlatformStand = true
2357
            coroutine.resume(coroutine.create(function(HHumanoid)
2358
                swait(1)
2359
                HHumanoid.PlatformStand = false
2360
            end), hum)
2361
            local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
2362
            local bodvol = Create("BodyVelocity"){
2363
                velocity = angle * knockback,
2364
                P = 5000,
2365
                maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
2366
                Parent = hit,
2367
            }
2368
            local rl = Create("BodyAngularVelocity"){
2369
                P = 3000,
2370
                maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
2371
                angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
2372
                Parent = hit,
2373
            }
2374
            game:GetService("Debris"):AddItem(bodvol, .5)
2375
            game:GetService("Debris"):AddItem(rl, .5)
2376
        elseif Type == "Normal" then
2377
            local vp = Create("BodyVelocity"){
2378
                P = 500,
2379
                maxForce = Vector3.new(math.huge, 0, math.huge),
2380
                velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
2381
            }
2382
            if knockback > 0 then
2383
                vp.Parent = hit.Parent.Torso
2384
            end
2385
            game:GetService("Debris"):AddItem(vp, .5)
2386
        elseif Type == "Up" then
2387
            local bodyVelocity = Create("BodyVelocity"){
2388
                velocity = Vector3.new(0, 20, 0),
2389
                P = 5000,
2390
                maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
2391
                Parent = hit,
2392
            }
2393
            game:GetService("Debris"):AddItem(bodyVelocity, .5)
2394
        elseif Type == "DarkUp" then
2395
            coroutine.resume(coroutine.create(function()
2396
                for i = 0, 1, 0.1 do
2397
                    swait()
2398
                    Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1)
2399
                end
2400
            end))
2401
            local bodyVelocity = Create("BodyVelocity"){
2402
                velocity = Vector3.new(0, 20, 0),
2403
                P = 5000,
2404
                maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
2405
                Parent = hit,
2406
            }
2407
            game:GetService("Debris"):AddItem(bodyVelocity, 1)
2408
        elseif Type == "Snare" then
2409
            local bp = Create("BodyPosition"){
2410
                P = 2000,
2411
                D = 100,
2412
                maxForce = Vector3.new(math.huge, math.huge, math.huge),
2413
                position = hit.Parent.Torso.Position,
2414
                Parent = hit.Parent.Torso,
2415
            }
2416
            game:GetService("Debris"):AddItem(bp, 1)
2417
        elseif Type == "Freeze" then
2418
            local BodPos = Create("BodyPosition"){
2419
                P = 50000,
2420
                D = 1000,
2421
                maxForce = Vector3.new(math.huge, math.huge, math.huge),
2422
                position = hit.Parent.Torso.Position,
2423
                Parent = hit.Parent.Torso,
2424
            }
2425
            local BodGy = Create("BodyGyro") {
2426
                maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
2427
                P = 20e+003,
2428
                Parent = hit.Parent.Torso,
2429
                cframe = hit.Parent.Torso.CFrame,
2430
            }
2431
            hit.Parent.Torso.Anchored = true
2432
            coroutine.resume(coroutine.create(function(Part)
2433
                swait(1.5)
2434
                Part.Anchored = false
2435
            end), hit.Parent.Torso)
2436
            game:GetService("Debris"):AddItem(BodPos, 3)
2437
            game:GetService("Debris"):AddItem(BodGy, 3)
2438
        end
2439
        local debounce = Create("BoolValue"){
2440
            Name = "DebounceHit",
2441
            Parent = hit.Parent,
2442
            Value = true,
2443
        }
2444
        game:GetService("Debris"):AddItem(debounce, Delay)
2445
        c = Create("ObjectValue"){
2446
            Name = "creator",
2447
            Value = Player,
2448
            Parent = h,
2449
        }
2450
        game:GetService("Debris"):AddItem(c, .5)
2451
    end
2452
end
2453
 
2454
function ShowDamage(Pos, Text, Time, Color)
2455
    local Rate = (1 / 30)
2456
    local Pos = (Pos or Vector3.new(0, 0, 0))
2457
    local Text = (Text or "")
2458
    local Time = (Time or 2)
2459
    local Color = (Color or Color3.new(1, 0, 1))
2460
    local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
2461
    EffectPart.Anchored = true
2462
    local BillboardGui = Create("BillboardGui"){
2463
        Size = UDim2.new(3, 0, 3, 0),
2464
        Adornee = EffectPart,
2465
        Parent = EffectPart,
2466
    }
2467
    local TextLabel = Create("TextLabel"){
2468
        BackgroundTransparency = 1,
2469
        Size = UDim2.new(1, 0, 1, 0),
2470
        Text = Text,
2471
        Font = "SciFi",
2472
        TextColor3 = Color,
2473
        TextScaled = true,
2474
        Parent = BillboardGui,
2475
    }
2476
    game.Debris:AddItem(EffectPart, (Time))
2477
    EffectPart.Parent = game:GetService("Workspace")
2478
    delay(0, function()
2479
        local Frames = (Time / Rate)
2480
        for Frame = 1, Frames do
2481
            wait(Rate)
2482
            local Percent = (Frame / Frames)
2483
            EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
2484
            TextLabel.TextTransparency = Percent
2485
        end
2486
        if EffectPart and EffectPart.Parent then
2487
            EffectPart:Destroy()
2488
        end
2489
    end)
2490
end
2491
 
2492
function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
2493
    for _, c in pairs(workspace:children()) do
2494
        local hum = c:findFirstChild("Humanoid")
2495
        if hum ~= nil then
2496
            local head = c:findFirstChild("Torso")
2497
            if head ~= nil then
2498
                local targ = head.Position - Part.Position
2499
                local mag = targ.magnitude
2500
                if mag <= Magnitude and c.Name ~= Player.Name then
2501
            for i = 1, 10 do
2502
                Effects.Elect.Create(head.CFrame, 10, 10, 10)
2503
            end
2504
            CFuncs.Sound.Create("324867021", head, 1, 1)
2505
            Effects.Sphere.Create(BrickColor.new("New Yeller"), head.CFrame, .5, .5, .5, .5, .5, .5, .05)
2506
                    Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, .1, HitSound, HitPitch)
2507
                end
2508
            end
2509
        end
2510
    end
2511
end
2512
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))
2513
CFuncs.Mesh.Create("BlockMesh", Part6, "", "", Vector3.new(0, 0, 0), Vector3.new(0.48742649, 1, 1))
2514
sref = CFuncs.Part.Create(Character, "Neon", 0, 1, BrickColor.new("Black"), "Reference", Vector3.new())
2515
sref.Anchored = true
2516
 
2517
EffectModel = Create("Model"){
2518
    Parent = Character,
2519
    Name = "Effects",
2520
}
2521
 
2522
Effects = {
2523
    Block = {
2524
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
2525
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2526
            prt.Anchored = true
2527
            prt.CFrame = cframe
2528
            local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2529
            game:GetService("Debris"):AddItem(prt, 10)
2530
            if Type == 1 or Type == nil then
2531
                table.insert(Effects, {
2532
                    prt,
2533
                    "Block1",
2534
                    delay,
2535
                    x3,
2536
                    y3,
2537
                    z3,
2538
                    msh
2539
                })
2540
            elseif Type == 2 then
2541
                table.insert(Effects, {
2542
                    prt,
2543
                    "Block2",
2544
                    delay,
2545
                    x3,
2546
                    y3,
2547
                    z3,
2548
                    msh
2549
                })
2550
            end
2551
        end;
2552
    };
2553
   
2554
    Cylinder = {
2555
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2556
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
2557
            prt.Anchored = true
2558
            prt.CFrame = cframe
2559
            local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2560
            game:GetService("Debris"):AddItem(prt, 2)
2561
            table.insert(Effects, {
2562
                prt,
2563
                "Cylinder",
2564
                delay,
2565
                x3,
2566
                y3,
2567
                z3,
2568
                msh
2569
            })
2570
        end;
2571
    };
2572
   
2573
    Head = {
2574
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2575
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2576
            prt.Anchored = true
2577
            prt.CFrame = cframe
2578
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2579
            game:GetService("Debris"):AddItem(prt, 10)
2580
            table.insert(Effects, {
2581
                prt,
2582
                "Cylinder",
2583
                delay,
2584
                x3,
2585
                y3,
2586
                z3,
2587
                msh
2588
            })
2589
        end;
2590
    };
2591
   
2592
    Sphere = {
2593
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2594
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2595
            prt.Anchored = true
2596
            prt.CFrame = cframe
2597
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2598
            game:GetService("Debris"):AddItem(prt, 10)
2599
            table.insert(Effects, {
2600
                prt,
2601
                "Cylinder",
2602
                delay,
2603
                x3,
2604
                y3,
2605
                z3,
2606
                msh
2607
            })
2608
        end;
2609
    };
2610
   
2611
    Elect = {
2612
        Create = function(cff, x, y, z)
2613
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("New Yeller"), "Part", Vector3.new(1, 1, 1))
2614
            prt.Anchored = true
2615
            prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
2616
            prt.CFrame = CFrame.new(prt.Position)
2617
            game:GetService("Debris"):AddItem(prt, 2)
2618
            local xval = math.random() / 2
2619
            local yval = math.random() / 2
2620
            local zval = math.random() / 2
2621
            local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
2622
            table.insert(Effects, {
2623
                prt,
2624
                "Elec",
2625
                0.1,
2626
                x,
2627
                y,
2628
                z,
2629
                xval,
2630
                yval,
2631
                zval
2632
            })
2633
        end;
2634
 
2635
    };
2636
   
2637
    Ring = {
2638
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2639
            local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
2640
            prt.Anchored = true
2641
            prt.CFrame = cframe
2642
            local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2643
            game:GetService("Debris"):AddItem(prt, 10)
2644
            table.insert(Effects, {
2645
                prt,
2646
                "Cylinder",
2647
                delay,
2648
                x3,
2649
                y3,
2650
                z3,
2651
                msh
2652
            })
2653
        end;
2654-
    Instance.new("DistortionSoundEffect", DORA).Level = .95
2654+
2655
 
2656
 
2657
    Wave = {
2658
        Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
2659
            local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
2660
            prt.Anchored = true
2661
            prt.CFrame = cframe
2662
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2663
            game:GetService("Debris"):AddItem(prt, 10)
2664
            table.insert(Effects, {
2665
                prt,
2666
                "Cylinder",
2667
                delay,
2668
                x3,
2669
                y3,
2670
                z3,
2671
                msh
2672
            })
2673
        end;
2674
    };
2675
 
2676
    Break = {
2677
        Create = function(brickcolor, cframe, x1, y1, z1)
2678
            local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
2679
            prt.Anchored = true
2680
            prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
2681
            local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2682
            local num = math.random(10, 50) / 1000
2683
            game:GetService("Debris"):AddItem(prt, 10)
2684
            table.insert(Effects, {
2685
                prt,
2686
                "Shatter",
2687
                num,
2688
                prt.CFrame,
2689
                math.random() - math.random(),
2690
                0,
2691
                math.random(50, 100) / 100
2692
            })
2693
        end;
2694
    };
2695
   
2696
    Fire = {
2697
        Create = function(brickcolor, cframe, x1, y1, z1, delay)
2698
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
2699
            prt.Anchored = true
2700
            prt.CFrame = cframe
2701
            msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2702
            game:GetService("Debris"):AddItem(prt, 10)
2703
            table.insert(Effects, {
2704
                prt,
2705
                "Fire",
2706
                delay,
2707
                1,
2708
                1,
2709
                1,
2710
                msh
2711
            })
2712
        end;
2713
    };
2714
   
2715
    FireWave = {
2716
        Create = function(brickcolor, cframe, x1, y1, z1)
2717
            local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
2718
            prt.Anchored = true
2719
            prt.CFrame = cframe
2720
            msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
2721
            local d = Create("Decal"){
2722
                Parent = prt,
2723
                Texture = "rbxassetid://26356434",
2724
                Face = "Top",
2725
            }
2726
            local d = Create("Decal"){
2727
                Parent = prt,
2728
                Texture = "rbxassetid://26356434",
2729
                Face = "Bottom",
2730
            }
2731
            game:GetService("Debris"):AddItem(prt, 10)
2732
            table.insert(Effects, {
2733
                prt,
2734
                "FireWave",
2735
                1,
2736
                30,
2737-
local effect = Instance.new('ColorCorrectionEffect')
2737+
2738-
function TheWorld(Mode)
2738+
2739-
     if Mode == "Time Start" then
2739+
2740-
     Effects.Sphere.Create(BrickColor.new("Really black"), HitboxL.CFrame, .5, .5, .5, 1.5, 1.5, 1.5, .15)
2740+
2741-
        for i = 1,50 do
2741+
2742-
            if effect.Saturation <= 0 then
2742+
2743-
                effect.Saturation = effect.Saturation + i/50
2743+
2744
        Create = function(p0, p1, tym, ofs, col, th, tra, last)
2745-
            swait(1/30)
2745+
2746
            local curpos = p0
2747-
        freeParts()
2747+
2748-
        effect.Saturation = 0
2748+
2749-
        effect.Contrast = 0
2749+
2750-
        effect.Parent = nil
2750+
2751-
        workspace.Gravity = 196.2
2751+
2752
                local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
2753-
    if Mode == "Quick Stop" then
2753+
2754-
     CFuncs.Sound.Create("616576400", workspace, 1, 1)
2754+
2755-
     swait(60)
2755+
2756-
    Effects.Sphere.Create(BrickColor.new("Institutional white"), RootPart.CFrame, 1, 1, 1, 50, 50, 50, .01)
2756+
2757-
        effect.Parent = game.Lighting
2757+
2758-
        for i = 1,50 do
2758+
2759-
            effect.Saturation = -(i/10)
2759+
2760
                    table.insert(Effects, {
2761
                        li,
2762-
        stopParts(5555)
2762+
2763
                        last
2764
                    })
2765
                else
2766
                    do
2767
                        do
2768
                            li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
2769
                            curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
2770
                            game.Debris:AddItem(li, 10)
2771
                            table.insert(Effects, {
2772
                                li,
2773
                                "Disappear",
2774
                                last
2775
                            })
2776
                        end
2777
                    end
2778
                end
2779
            end
2780
        end
2781
    };
2782
 
2783
    EffectTemplate = {
2784
 
2785
    };
2786
}
2787
 
2788
local DORARA = false
2789
 
2790
function ORA()
2791
    attack = true
2792
    for i = 0, 1, 0.2 do
2793
        swait()
2794
        PlayAnimationFromTable({
2795
            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),
2796
            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),
2797
            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),
2798
            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),
2799
            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),
2800
            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),
2801
        }, .3, false)
2802
    end
2803
    local DORA = CFuncs.Sound.Create("616593932", Torso, 1, 1)
2804
    Instance.new(DORA).Level = .95
2805
    DORA.Looped = true
2806
    local Con1 = HitboxL.Touched:connect(function(hit) Damage(HitboxL, hit, 1, 5, 0, "Normal", RootPart, 0, "260430117", 1) end)
2807
    local Con2 = HitboxR.Touched:connect(function(hit) Damage(HitboxR, hit, 1, 5, 0, "Normal", RootPart, 0, "260430117", 1) end)
2808
    while DORARA == true do
2809
        RootPart.Velocity = RootPart.CFrame.lookVector * 5
2810
        for i = 0, 1, 0.7 do
2811
            swait()
2812
            Effects.Elect.Create(HitboxL.CFrame, 4, 4, 4)
2813
            Effects.Sphere.Create(BrickColor.new("Really black"), HitboxL.CFrame, .5, .5, .5, 1.5, 1.5, 1.5, .15)
2814
            PlayAnimationFromTable({
2815
                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),
2816
                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),
2817
                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),
2818
                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),
2819
                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),
2820
                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),
2821
            }, .9, false)
2822
        end
2823
        CFuncs.Sound.Create("138087186", HitboxL, 1, 1)
2824
        Effects.Sphere.Create(BrickColor.new("Really black"), HitboxL.CFrame, .5, .5, .5, 2, 2, 2, .15)
2825
        RootPart.Velocity = RootPart.CFrame.lookVector * 5
2826
        for i = 0, 1, 0.7 do
2827
            swait()
2828
            Effects.Sphere.Create(BrickColor.new("Really black"), HitboxR.CFrame, .5, .5, .5, 1.5, 1.5, 1.5, .2)
2829
            PlayAnimationFromTable({
2830
                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),
2831
                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),
2832
                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),
2833
                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),
2834
                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),
2835
                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),
2836
            }, .9, false)
2837
        end
2838
        CFuncs.Sound.Create("138087186", HitboxR, 1, 1)
2839
        Effects.Sphere.Create(BrickColor.new("Really black"), HitboxR.CFrame, .5, .5, .5, 2, 2, 2, .2)
2840
        end
2841
    Con1:disconnect()
2842
    Con2:disconnect()
2843
    DORA:Stop()
2844
    attack = false
2845
end
2846
 
2847
local stoppedParts = {}
2848
 
2849
 
2850
function getAllParts()
2851
    local rtn = {}
2852
   
2853
    local function recurse(object)
2854
        for q,e in next, object:children() do
2855
            if e:isA'BasePart' and e.Name ~= "HumanoidRootPart" then
2856
                table.insert(rtn, e)
2857
            end
2858
            recurse(e)
2859
        end
2860
    end
2861
 
2862
    recurse(workspace)
2863
    return rtn
2864
end
2865
 
2866
function stopParts(distance)
2867
    stoppedParts = {}
2868
    for nada, part in next, getAllParts() do
2869
        local dist = (Torso.Position-part.Position).magnitude
2870
        if dist <= distance and part.Name ~='Base' and part.Name ~= 'Baseplate' and not part:isDescendantOf(Torso.Parent) and part.Anchored ~= true then
2871
            table.insert(stoppedParts, part)
2872
            if part.Name ~= "Torso" and part.Anchored ~= true then
2873
                part.Anchored = true
2874
            end
2875
        end
2876
    end
2877
end
2878
 
2879
 
2880
function freeParts()
2881
    for q,e in next, stoppedParts do
2882
        stoppedParts[q] = nil
2883
        e.Anchored = false
2884
    end
2885
end
2886
 
2887
 
2888
Mouse.Button1Down:connect(function()
2889
    if attack == false and DORARA == false then
2890
        DORARA = true
2891
        ORA()
2892
    end
2893
end)
2894
 
2895
Mouse.Button1Up:connect(function()
2896
    if attack == true and DORARA == true then
2897
        DORARA = false
2898
    end
2899
end)
2900
 
2901
Mouse.KeyDown:connect(function(k)
2902
    k = k:lower()
2903
    if attack == false and k == 'g' and TimeStop == false then
2904
        TimeStop = true
2905
        TheWorld("Quick Stop")
2906
    elseif attack == false and k == 'g' and TimeStop == true then
2907
        TimeStop = false
2908
        TheWorld("Time Start")
2909
    end
2910
end)
2911
 
2912
while true do
2913
    swait()
2914
    sref.CFrame = RightArm.CFrame * CFrame.new(0, -1.5, 0) * CFrame.fromEulerAnglesXYZ(-1.57, 0, 0)
2915
    for i, v in pairs(Character:GetChildren()) do
2916
        if v:IsA("Part") then
2917
            v.Material = "SmoothPlastic"
2918
        elseif v:IsA("Accessory") then
2919
            v:WaitForChild("Handle").Material = "SmoothPlastic"
2920
        end
2921
    end
2922
    Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
2923
    velocity = RootPart.Velocity.y
2924
    sine = sine + change
2925
    local hit, pos = rayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
2926
    if RootPart.Velocity.y > 1 and hit == nil then
2927
        Anim = "Jump"
2928
        if attack == false then
2929
            PlayAnimationFromTable({
2930
                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),
2931
                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),
2932
                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),
2933
                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),
2934
                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),
2935
                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),
2936
            }, .3, false)
2937
        end
2938
    elseif RootPart.Velocity.y < -1 and hit == nil then
2939
        Anim = "Fall"
2940
        if attack == false then
2941
            PlayAnimationFromTable({
2942
                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),
2943
                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),
2944
                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),
2945
                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),
2946
                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),
2947
                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),
2948
            }, .3, false)
2949
        end
2950
    elseif Torsovelocity < 1 and hit ~= nil then
2951
        Anim = "Idle"
2952
        if attack == false then
2953
            change = 1
2954
            PlayAnimationFromTable({
2955
                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),
2956
                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),
2957
                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),
2958
                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),
2959
                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),
2960
                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),
2961
            }, .3, false)
2962
        end
2963
    elseif Torsovelocity > 2 and hit ~= nil then
2964
        Anim = "Walk"
2965
        if attack == false then
2966
            change = 2
2967
            PlayAnimationFromTable({
2968
                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),
2969
                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),
2970
                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),
2971
                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),
2972
                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)),
2973
                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)),
2974
            }, .3, false)
2975
        end
2976
    end
2977
    if 0 < #Effects then
2978
        for e = 1, #Effects do
2979
            if Effects[e] ~= nil then
2980
                local Thing = Effects[e]
2981
                if Thing ~= nil then
2982
                    local Part = Thing[1]
2983
                    local Mode = Thing[2]
2984
                    local Delay = Thing[3]
2985
                    local IncX = Thing[4]
2986
                    local IncY = Thing[5]
2987
                    local IncZ = Thing[6]
2988
                    if Thing[2] == "Shoot" then
2989
                        local Look = Thing[1]
2990
                        local move = 5
2991
                        local hit, pos = rayCast(Thing[4], Thing[1], move, Character)
2992
                        if Thing[10] ~= nil then
2993
                            da = pos
2994
                            cf2 = CFrame.new(Thing[4], Thing[10].Position)
2995
                            cfa = CFrame.new(Thing[4], pos)
2996
                            tehCF = cfa:lerp(cf2, 0.2)
2997
                            Thing[1] = tehCF.lookVector
2998
                        end
2999
                        local mag = (Thing[4] - pos).magnitude
3000
                        Effects.Elect.Create(CFrame.new((Thing[4] + pos) / 2, pos), 4, 4, 4)
3001
                        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)
3002
                        Thing[4] = Thing[4] + Look * move
3003
                        Thing[3] = Thing[3] - 1
3004
                        if 2 < Thing[5] then
3005
                            Thing[5] = Thing[5] - 0.3
3006
                            Thing[6] = Thing[6] - 0.3
3007
                        end
3008
                        if hit ~= nil then
3009
                            Thing[3] = 0
3010
                            MagnitudeDamage(hit, 5, 10, 15, 0, "Normal", "161006093", 0.8)
3011
                            ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Really red"), "Reference", Vector3.new())
3012
                            ref.Anchored = true
3013
                            ref.CFrame = CFrame.new(pos)
3014
                            Effects.Block.Create(BrickColor.new("New Yeller"), CFrame.new(pos), 1, 1, 1, 2, 2, 2, .05)
3015
                            Effects.Sphere.Create(BrickColor.new("New Yeller"), CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.03)
3016
                            game:GetService("Debris"):AddItem(ref, 1)
3017
                        end
3018
                        if Thing[3] <= 0 then
3019
                            table.remove(Effects, e)
3020
                        end
3021
                    end
3022
                    do
3023
                        do
3024
                            if Thing[2] == "FireWave" then
3025
                                if Thing[3] <= Thing[4] then
3026
                                    Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
3027
                                    Thing[3] = Thing[3] + 1
3028
                                    Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
3029
                                else
3030
                                    Part.Parent = nil
3031
                                    table.remove(Effects, e)
3032
                                end
3033
                            end
3034
                            if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
3035
                                if Thing[1].Transparency <= 1 then
3036
                                    if Thing[2] == "Block1" then
3037
                                        Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
3038
                                        Mesh = Thing[7]
3039
                                        Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3040
                                        Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3041
                                    else
3042
                                        if Thing[2] == "Block2" then
3043
                                            Thing[1].CFrame = Thing[1].CFrame
3044
                                            Mesh = Thing[7]
3045
                                            Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3046
                                            Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3047
                                        else
3048
                                            if Thing[2] == "Fire" then
3049
                                                Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
3050
                                                Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
3051
                                                Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3052
                                            else
3053
                                                if Thing[2] == "Cylinder" then
3054
                                                    Mesh = Thing[7]
3055
                                                    Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3056
                                                    Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3057
                                                else
3058
                                                    if Thing[2] == "Blood" then
3059
                                                        Mesh = Thing[7]
3060
                                                        Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
3061
                                                        Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
3062
                                                        Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3063
                                                    else
3064
                                                        if Thing[2] == "Elec" then
3065
                                                            Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
3066
                                                            Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3067
                                                        else
3068
                                                            if Thing[2] == "Disappear" then
3069
                                                                Thing[1].Transparency = Thing[1].Transparency + Thing[3]
3070
                                                            end
3071
                                                        end
3072
                                                    end
3073
                                                end
3074
                                            end
3075
                                        end
3076
                                    end
3077
                                else
3078
                                    Part.Parent = nil
3079
                                    table.remove(Effects, e)
3080
                                end
3081
                            end
3082
                        end
3083
                    end
3084
                end
3085
            end
3086
        end
3087
    end
3088
end