View difference between Paste ID: k2ycGdjK and hcpc6vzL
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-
local Plr = Plrs.LocalPlayer
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
87
	local h,t
88
	--Give the server mouse data every second frame, but only if the values changed
89
	--If player is not moving their mouse, client won't fire events
90
	local HB = game:GetService("RunService").Heartbeat
91
	while true do
92
		if h~=Mouse.Hit or t~=Mouse.Target then
93
			h,t=Mouse.Hit,Mouse.Target
94
			Event:FireServer({isMouse=true,Target=t,Hit=h})
95
		end
96
		--Wait 2 frames
97
		for i=1,2 do
98
			HB:Wait()
99
		end
100
	end]==],script)
101
102
	----Sandboxed game object that allows the usage of client-side methods and services
103
	--Real game object
104
	local RealGame = game
105
106
	--Metatable for fake service
107
	local FakeService_Metatable = {
108
		__index = function(self,k)
109
			local s = rawget(self,"_RealService")
110
			if s then
111
				return typeof(s[k])=="function"
112
				and function(_,...)return s[k](s,...)end or s[k]
113
			end
114
		end,
115
		__newindex = function(self,k,v)
116
			local s = rawget(self,"_RealService")
117
			if s then s[k]=v end
118
		end
119
	}
120
	local function FakeService(t,RealService)
121
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
122
		return setmetatable(t,FakeService_Metatable)
123
	end
124
125
	--Fake game object
126
	local FakeGame = {
127
		GetService = function(self,s)
128
			return rawget(self,s) or RealGame:GetService(s)
129
		end,
130
		Players = FakeService({
131
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
132
		},"Players"),
133
		UserInputService = FakeService(UIS,"UserInputService"),
134
		ContextActionService = FakeService(CAS,"ContextActionService"),
135
		RunService = FakeService({
136
			_btrs = {},
137
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
138
			BindToRenderStep = function(self,name,_,fun)
139
				self._btrs[name] = self.Heartbeat:Connect(fun)
140
			end,
141
			UnbindFromRenderStep = function(self,name)
142
				self._btrs[name]:Disconnect()
143
			end,
144
		},"RunService")
145
	}
146
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
147
	FakeGame.service = FakeGame.GetService
148
	FakeService(FakeGame,game)
149
	--Changing owner to fake player object to support owner:GetMouse()
150
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
151
end
152
153
-- Created by Nebula_Zorua --
154
-- Banisher Infinite --
155
-- A fanmade banisher --
156
-- Discord: Nebula the Zorua#6969
157
-- Youtube: https://www.youtube.com/channel/UCo9oU9dCw8jnuVLuy4_SATA
158
159
wait(1/60)
160
161
--// Initializing \\--
162
local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
163
local Plrs = S.Players
164
local Plr = owner
165
local Char = Plr.Character
166
local Hum = Char:FindFirstChildOfClass'Humanoid'
167
local RArm = Char["Right Arm"]
168
local LArm = Char["Left Arm"]
169
local RLeg = Char["Right Leg"]
170
local LLeg = Char["Left Leg"]	
171
local Root = Char:FindFirstChild'HumanoidRootPart'
172
local Torso = Char.Torso
173
local Head = Char.Head
174
local NeutralAnims = true
175
local Attack = false
176
local BloodPuddles = {}
177
local Effects = {}
178
local Debounces = {Debounces={}}
179
local Mouse = Plr:GetMouse()
180
local Hit = {}
181
local Sine = 0
182
local Change = 1
183
local BanishedEvents = {}
184
185
186
--// Effect Thread System \\--
187
188
189
--// Debounce System \\--
190
191
function Debounces:New(name,cooldown)
192
	local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
193
	setmetatable(aaaaa,{__index = Debounces})
194
	Debounces.Debounces[name] = aaaaa
195
	return aaaaa
196
end
197
198
function Debounces:Use(overrideUsable)
199
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
200
	if(self.Usable or overrideUsable)then
201
		self.Usable = false
202
		self.CoolingDown = true
203
		local LastUse = time()
204
		self.LastUse = LastUse
205
		delay(self.Cooldown or 2,function()
206
			if(self.LastUse == LastUse)then
207
				self.CoolingDown = false
208
				self.Usable = true
209
			end
210
		end)
211
	end
212
end
213
214
function Debounces:Get(name)
215
	assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
216
	for i,v in next, Debounces.Debounces do
217
		if(i == name)then
218
			return v;
219
		end
220
	end
221
end
222
223
function Debounces:GetProgressPercentage()
224
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
225
	if(self.CoolingDown and not self.Usable)then
226
		return math.max(
227
			math.floor(
228
				(
229
					(time()-self.LastUse)/self.Cooldown or 2
230
				)*100
231
			)
232
		)
233
	else
234
		return 100
235
	end
236
end
237
238
--// Shortcut Variables \\--
239
local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
240
local C3 = {N=Color3.new,RGB=Color3.fromRGB,HSV=Color3.fromHSV,tHSV=Color3.toHSV}
241
local V3 = {N=Vector3.new,FNI=Vector3.FromNormalId,A=Vector3.FromAxis}
242
local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge,RRNG = function(min,max,div) return math.rad(math.random(min,max)/(div or 1)) end}
243
local R3 = {N=Region3.new}
244
local De = S.Debris
245
local WS = workspace
246
local Lght = S.Lighting
247
local RepS = S.ReplicatedStorage
248
local IN = Instance.new
249
--// Instance Creation Functions \\--
250
251
function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
252
	local Sound = IN("Sound")
253
	Sound.SoundId = "rbxassetid://".. tostring(id or 0)
254
	Sound.Pitch = pitch or 1
255
	Sound.Volume = volume or 1
256
	Sound.Looped = looped or false
257
	if(autoPlay)then
258
		coroutine.wrap(function()
259
			repeat wait() until Sound.IsLoaded
260
			Sound.Playing = autoPlay or false
261
		end)()
262
	end
263
	if(not looped and effect)then
264
		Sound.Stopped:connect(function()
265
			Sound.Volume = 0
266
			Sound:destroy()
267
		end)
268
	elseif(effect)then
269
		warn("Sound can't be looped and a sound effect!")
270
	end
271
	Sound.Parent =parent or Torso
272
	return Sound
273
end
274
function Part(parent,color,material,size,cframe,anchored,cancollide)
275
	local part = IN("Part")
276
	part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or C3.N(0,0,0)
277
	part.Material = material or Enum.Material.SmoothPlastic
278
	part.TopSurface,part.BottomSurface=10,10
279
	part.Size = size or V3.N(1,1,1)
280
	part.CFrame = cframe or CF.N(0,0,0)
281
	part.Anchored = anchored or true
282
	part.CanCollide = cancollide or false
283
	part.Parent = parent or Char
284
	return part
285
end
286
function Mesh(parent,meshtype,meshid,textid,scale,offset)
287
	local part = IN("SpecialMesh")
288
	part.MeshId = meshid or ""
289
	part.TextureId = textid or ""
290
	part.Scale = scale or V3.N(1,1,1)
291
	part.Offset = offset or V3.N(0,0,0)
292
	part.MeshType = meshtype or Enum.MeshType.Sphere
293
	part.Parent = parent
294
	return part
295
end
296
297
NewInstance = function(instance,parent,properties)
298
	local inst = Instance.new(instance,parent)
299
	if(properties)then
300
		for i,v in next, properties do
301
			pcall(function() inst[i] = v end)
302
		end
303
	end
304
	return inst;
305
end
306
307
308
309
--// Extended ROBLOX tables \\--
310
local Instance = setmetatable({ClearChildrenOfClass = function(where,class,recursive) local children = (recursive and where:GetDescendants() or where:GetChildren()) for _,v in next, children do if(v:IsA(class))then v:destroy();end;end;end},{__index = Instance})
311
--// Customization \\--
312
313
local Frame_Speed = 60 -- The frame speed for swait. 1 is automatically divided by this
314
local Remove_Hats = false
315
local Remove_Clothing = false
316
local PlayerSize = 1
317
local DamageColor = BrickColor.new'Really red'
318
local MusicID = 1119237438
319
local ChatSounds = {["You will know pain."] = 907333294,["Submit now."] = 907330103,["I will show you true power."] = 907329532, ["Your death is assured."] = 907332670, ["My attacks will tear you apart!"] = 907329893, ["Most worrying indeed."] = 1395854043}
320
local TauntDialogues = {"I'll cut you!", "I'll blast your head off!","Submit now.","Your death is assured.", "I will show you true power.", "You will know pain.","My attacks will tear you apart!"}
321
322
--// Weapon and GUI creation, and Character Customization \\--
323
324
if(Remove_Hats)then Instance.ClearChildrenOfClass(Char,"Accessory",true) end
325
if(Remove_Clothing)then Instance.ClearChildrenOfClass(Char,"Clothing",true) Instance.ClearChildrenOfClass(Char,"ShirtGraphic",true) end
326
local Effects = IN("Folder",Char)
327
Effects.Name = "Effects"
328
329
pcall(function() Char.ReaperShadowHead.Eye1.BrickColor = BrickColor.new'Really red' Char.ReaperShadowHead.Eye1.Material = 'Glass' end)
330
pcall(function() Char.ReaperShadowHead.Eye2.BrickColor = BrickColor.new'Really red' Char.ReaperShadowHead.Eye2.Material = 'Glass' end)
331
pcall(function() Char.LeftWing.BrickColor = BrickColor.new'Really red' Char.LeftWing.Transparency = 0.5 end)
332
333
New = function(Object, Parent, Name, Data)
334
	local Object = Instance.new(Object)
335
	for Index, Value in pairs(Data or {}) do
336
		Object[Index] = Value
337
	end
338
	Object.Parent = Parent
339
	Object.Name = Name
340
	return Object
341
end
342
	
343
Ulta_Caliber = New("Model",Char,"Ulta_Caliber",{})
344
Handle = New("Part",Ulta_Caliber,"Handle",{Material = Enum.Material.Metal,Size = Vector3.new(1.13946342, 0.351685941, 0.328840196),CFrame = CFrame.new(-52.3439636, 4.31768751, -59.3824234, 0.5, -0.866025269, -1.57914513e-07, 0.866025269, 0.5, 3.60109915e-08, 4.7770822e-08, -1.5476347e-07, 1),CanCollide = false,})
345
WMesh =New("BlockMesh",Handle,"Mesh",{Scale = Vector3.new(1, 1, 0.855579317),})
346
Part2 = New("Part",Ulta_Caliber,"Part2",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(1.87730086, 0.396701694, 0.328840196),CFrame = CFrame.new(-50.9256058, 4.80724812, -59.3824234, 0.99999994, -2.24410021e-21, -1.57914513e-07, 0, 0.99999994, 3.60109773e-08, 1.57914499e-07, -3.60109809e-08, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
347
WMesh =New("BlockMesh",Part2,"Mesh",{Scale = Vector3.new(1, 1, 1.11225295),})
348
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1, -6.12576133e-15, 1.57914513e-07, 1.18124174e-14, 1, -3.60109809e-08, -1.57914513e-07, 3.60109809e-08, 1),C1 = CFrame.new(1.13315201, -0.98355484, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
349
Blade = New("Part",Ulta_Caliber,"Blade",{BrickColor = BrickColor.new("Quill grey"),Material = Enum.Material.Ice,Size = Vector3.new(0.328840256, 0.328840226, 0.572665811),CFrame = CFrame.new(-50.9072571, 4.11668205, -59.3754196, -2.32669322e-07, -0.00661635399, 0.999977946, -1.28771217e-06, 0.999977946, 0.00661635399, -1, -1.28614465e-06, -2.41184125e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.87451, 0.87451, 0.870588),})
350
WMesh =New("SpecialMesh",Blade,"Mesh",{Scale = Vector3.new(0.0978527591, 0.790156424, 1),MeshType = Enum.MeshType.Wedge,})
351
mot = New("Motor",Blade,"mot",{Part0 = Blade,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -2.32669336e-07, -1.28771228e-06, -1, -0.00661629438, 0.999978125, -1.28614465e-06, 0.999978125, 0.00661629438, -2.41184125e-07),C1 = CFrame.new(0.544277191, -1.34472656, 0.00700378418, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
352
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.1684952, 4.40930319, -59.3824196, 0.70710665, -0.70710665, -1.57914471e-07, 0.70710665, 0.70710665, 3.60109986e-08, 8.61987672e-08, -1.37126023e-07, 1),CanCollide = false,})
353
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.385011137, 0.748631597, 0.855579317),})
354
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.707106829, 0.707106829, 8.61987814e-08, -0.707106829, 0.707106829, -1.37126037e-07, -1.57914471e-07, 3.60110022e-08, 1),C1 = CFrame.new(1.16707611, -1.83820343, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
355
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-52.6288223, 3.82322454, -59.3824234, 5.96046377e-08, -0.999999881, -2.24250414e-08, 0.999999881, 5.96046519e-08, -5.41976775e-09, 5.41976064e-09, -2.2425013e-08, 1),CanCollide = false,})
356
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.543293059, 0.924025238, 0.855579317),})
357
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 5.96046519e-08, 1, 5.41976819e-09, -1, 5.96046519e-08, -2.24250307e-08, -2.24250307e-08, -5.41976686e-09, 1),C1 = CFrame.new(-0.570646286, -0.000537872314, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
358
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,FormFactor = Enum.FormFactor.Symmetric,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-52.8299942, 3.82262015, -59.3813744, 1.57915409e-07, 5.96046306e-08, 0.999999881, 4.68513015e-08, 0.999999881, -5.96046448e-08, -1, 4.68513228e-08, 1.57915395e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,})
359
WMesh =New("SpecialMesh",WPart,"Mesh",{Scale = Vector3.new(0.861996353, 0.541153729, 0.299452811),MeshType = Enum.MeshType.Wedge,})
360
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1.57915409e-07, 4.68513122e-08, -1, 5.96046519e-08, 1, 4.68513264e-08, 1, -5.9604659e-08, 1.57915409e-07),C1 = CFrame.new(-0.671756744, 0.173381805, 0.00104904175, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
361
WPart = New("Part",Ulta_Caliber,"Part",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(0.344652593, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.1012497, 4.28257656, -59.3753929, 0.70710665, 0.70710665, -1.20777344e-07, -0.70710665, 0.70710665, 1.25668052e-07, 1.74263192e-07, -3.45828965e-09, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
362
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 0.98605454, 0.727242351),})
363
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.707106829, -0.707106829, 1.74263207e-07, 0.707106829, 0.707106829, -3.45827589e-09, -1.20777329e-07, 1.25668066e-07, 1),C1 = CFrame.new(0.590950012, -1.0937767, 0.00703048706, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
364
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.7306976, 4.31373549, -59.3824272, 0.432455212, -0.901655316, 1.27368111e-07, 0.901655316, 0.432455212, -3.95984443e-07, 3.01960569e-07, 2.86087754e-07, 1),CanCollide = false,})
365
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.541154027, 0.370038033, 0.855579317),})
366
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.432455301, 0.901655436, 3.01960569e-07, -0.901655436, 0.432455301, 2.86087754e-07, 1.27368125e-07, -3.959845e-07, 1),C1 = CFrame.new(0.303211212, -0.533081055, -3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
367
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.7885818, 4.20838785, -59.3824234, 0.587423027, -0.809279799, -2.19202548e-07, 0.809279799, 0.587423027, -1.98992353e-07, 2.89805143e-07, -6.05034742e-08, 1),CanCollide = false,})
368
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.275924385, 0.370038033, 0.855579317),})
369
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.587423146, 0.809279919, 2.89805172e-07, -0.809279919, 0.587423146, -6.05035027e-08, -2.19202548e-07, -1.98992367e-07, 1),C1 = CFrame.new(0.183034897, -0.535625458, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
370
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.8400269, 4.15359306, -59.3824234, 0.760836244, -0.648943782, -2.6871362e-07, 0.648943782, 0.760836244, -1.52704587e-07, 3.035438e-07, -5.81968678e-08, 1),CanCollide = false,})
371
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.275924385, 0.370038033, 0.855579317),})
372
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.760836303, 0.648943841, 3.035438e-07, -0.648943841, 0.760836303, -5.8196882e-08, -2.68713649e-07, -1.52704587e-07, 1),C1 = CFrame.new(0.109859467, -0.518470764, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
373
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.9011612, 4.11773586, -59.3824234, 0.91851747, -0.395380199, -1.96948804e-08, 0.395380199, 0.91851747, -6.96443863e-07, 2.93450228e-07, 6.31909018e-07, 1),CanCollide = false,})
374
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.275924385, 0.370038033, 0.855579317),})
375
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.91851759, 0.395380259, 2.93450228e-07, -0.395380259, 0.91851759, 6.31909018e-07, -1.96948431e-08, -6.96443919e-07, 1),C1 = CFrame.new(0.0482387543, -0.483455658, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
376
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.356609762, 0.328840226, 0.328840196),CFrame = CFrame.new(-52.0863571, 4.12933016, -59.3824234, 0.991345346, 0.131278723, -5.39203029e-08, -0.131278723, 0.991345346, -9.33255933e-07, -6.90630628e-08, 9.32257819e-07, 1),CanCollide = false,})
377
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 0.370038033, 0.855579317),})
378
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.991345525, -0.131278753, -6.90630415e-08, 0.131278753, 0.991345525, 9.32257819e-07, -5.392031e-08, -9.33256047e-07, 1),C1 = CFrame.new(-0.034318924, -0.317272186, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
379
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-52.1749916, 4.05356789, -59.3820763, 0.991345346, 0.131278723, -5.39203029e-08, -0.131278723, 0.991345346, -9.33255933e-07, -6.90630628e-08, 9.32257819e-07, 1),CanCollide = false,})
380
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.994611204, 0.301591754, 0.699436307),})
381
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.991345525, -0.131278753, -6.90630415e-08, 0.131278753, 0.991345525, 9.32257819e-07, -5.392031e-08, -9.33256047e-07, 1),C1 = CFrame.new(-0.144248962, -0.278392792, 0.000347137451, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
382
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-52.0123367, 4.06675053, -59.3824272, 0.793815136, -0.608158827, -7.65793686e-08, 0.608158827, 0.793815136, -8.4843424e-07, 5.7677272e-07, 6.26927658e-07, 1),CanCollide = false,})
383
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.346509725, 0.370038033, 0.684463739),})
384
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.793815255, 0.608158886, 5.7677272e-07, -0.608158886, 0.793815255, 6.26927715e-07, -7.65793615e-08, -8.48434354e-07, 1),C1 = CFrame.new(-0.0515041351, -0.412666321, -3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
385
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.827166021, 0.351685941, 0.328840196),CFrame = CFrame.new(-52.1878128, 4.82334518, -59.3845367, 0.999954939, 0.00948500633, -7.15095894e-09, -0.00948500633, 0.999954939, 7.46392743e-08, 7.85854581e-09, -7.45681135e-08, 1),CanCollide = false,})
386
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 1, 0.573238373),})
387
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.999955058, -0.00948503613, 7.85857424e-09, 0.00948503613, 0.999955058, -7.45681064e-08, -7.1509394e-09, 7.46392885e-08, 1),C1 = CFrame.new(0.515987396, 0.117599487, -0.00211334229, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
388
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.364346951, 0.350982577, 0.328840196),CFrame = CFrame.new(-52.3578377, 4.71502256, -59.3845367, -0.870376885, -0.492385834, 1.83688564e-06, 0.492385834, -0.870376885, 4.2302986e-07, 1.3904895e-06, 1.2726523e-06, 1),CanCollide = false,})
389
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 1, 0.573238373),})
390
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.870377064, 0.492385924, 1.3904895e-06, -0.492385924, -0.870377064, 1.2726523e-06, 1.83688599e-06, 4.2302986e-07, 1),C1 = CFrame.new(0.337165833, 0.210681915, -0.00211334229, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
391
WPart = New("Part",Ulta_Caliber,"Part",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.2399673, 4.18922997, -59.3753929, 0.470120013, 0.882602334, -6.54556175e-07, -0.882602334, 0.470120013, -3.05826063e-07, 3.77971503e-08, 7.21487936e-07, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
392
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(0.789272487, 0.271646053, 0.727242351),})
393
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.470120043, -0.882602453, 3.77971396e-08, 0.882602453, 0.470120043, 7.21487936e-07, -6.54556288e-07, -3.0582612e-07, 1),C1 = CFrame.new(0.440750122, -1.02031708, 0.00703048706, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
394
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(1.22879124, 0.618263781, 0.328840196),CFrame = CFrame.new(-50.7363968, 4.58814573, -59.3824234, 0.999999881, -2.98023224e-08, -1.57914513e-07, 2.98023224e-08, 0.999999881, 3.60109738e-08, 1.57914499e-07, -3.60109844e-08, 1),CanCollide = false,})
395
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 1, 0.855579317),})
396
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1, -6.12576133e-15, 1.57914513e-07, 1.18124174e-14, 1, -3.60109809e-08, -1.57914513e-07, 3.60109809e-08, 1),C1 = CFrame.new(1.03800774, -1.25696564, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
397
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.859521151, 0.531045794, 0.328840196),CFrame = CFrame.new(-51.7777481, 4.63175058, -59.3824234, 0.999999881, -2.98023224e-08, -1.57914513e-07, 2.98023224e-08, 0.999999881, 3.60109738e-08, 1.57914499e-07, -3.60109844e-08, 1),CanCollide = false,})
398
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 1, 0.855579317),})
399
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1, -6.12576133e-15, 1.57914513e-07, 1.18124174e-14, 1, -3.60109809e-08, -1.57914513e-07, 3.60109809e-08, 1),C1 = CFrame.new(0.555093765, -0.333324432, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
400
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.414286286, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.4174423, 4.47936392, -59.3824234, 0.5, 0.866025209, 2.92257027e-08, -0.866025209, 0.5, 1.03682424e-07, 7.51787468e-08, -7.7151455e-08, 1),CanCollide = false,})
401
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 0.265229613, 0.855579317),})
402
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.50000006, -0.866025329, 7.51787468e-08, 0.866025329, 0.50000006, -7.7151455e-08, 2.92257365e-08, 1.03682439e-07, 1),C1 = CFrame.new(0.603277206, -0.721553802, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
403
WPart = New("Part",Ulta_Caliber,"Part",{Material = Enum.Material.Metal,Size = Vector3.new(0.527529478, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.0795135, 4.63236904, -59.3824196, -2.98023366e-08, -0.999999881, 3.74803335e-08, 0.999999881, -2.98023153e-08, -4.49242386e-08, 4.49242386e-08, 3.74803761e-08, 1),CanCollide = false,})
404
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 0.263090521, 0.855579317),})
405
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1.38707111e-16, 1, 4.49242421e-08, -1, -1.54506983e-15, 3.74803619e-08, 3.74803619e-08, -4.49242421e-08, 1),C1 = CFrame.new(1.40474701, -1.80373001, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
406
WPart = New("Part",Ulta_Caliber,"Part",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(1.17252171, 0.576061606, 0.328840196),CFrame = CFrame.new(-50.7363968, 4.55438519, -59.3753891, 0.999999881, -2.98023224e-08, -1.57914513e-07, 2.98023224e-08, 0.999999881, 3.60109738e-08, 1.57914499e-07, -3.60109844e-08, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
407
WMesh =New("BlockMesh",WPart,"Mesh",{Scale = Vector3.new(1, 1, 0.727242351),})
408
mot = New("Motor",WPart,"mot",{Part0 = WPart,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1, -6.12576133e-15, 1.57914513e-07, 1.18124174e-14, 1, -3.60109809e-08, -1.57914513e-07, 3.60109809e-08, 1),C1 = CFrame.new(1.00876999, -1.27384567, 0.00703430176, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
409
Blade = New("Part",Ulta_Caliber,"Blade",{BrickColor = BrickColor.new("Quill grey"),Material = Enum.Material.Ice,Size = Vector3.new(0.328840256, 0.328840226, 0.605763316),CFrame = CFrame.new(-49.3369522, 4.12218142, -59.3754158, 1.84564726e-07, 0.00661724806, -0.999978065, 5.00432975e-07, -0.999978065, -0.00661724806, -1, -4.99200723e-07, -1.87872132e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.87451, 0.87451, 0.870588),})
410
WMesh =New("SpecialMesh",Blade,"Mesh",{Scale = Vector3.new(0.0978527591, 0.779461861, 1),MeshType = Enum.MeshType.Wedge,})
411
mot = New("Motor",Blade,"mot",{Part0 = Blade,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1.84564712e-07, 5.00432975e-07, -1, 0.00661721826, -0.999978185, -4.9920078e-07, -0.999978185, -0.00661721826, -1.8787216e-07),C1 = CFrame.new(1.33419228, -2.70190048, 0.00700759888, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
412
Blade = New("Part",Ulta_Caliber,"Blade",{BrickColor = BrickColor.new("Quill grey"),Material = Enum.Material.Ice,Size = Vector3.new(0.328840256, 0.328840226, 0.835727096),CFrame = CFrame.new(-50.0582809, 4.11805487, -59.3754158, -2.32669322e-07, -0.00661635399, 0.999977946, -1.28771217e-06, 0.999977946, 0.00661635399, -1, -1.28614465e-06, -2.41184125e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.87451, 0.87451, 0.870588),})
413
WMesh =New("SpecialMesh",Blade,"Mesh",{Scale = Vector3.new(0.0978527591, 0.790156424, 1),MeshType = Enum.MeshType.Wedge,})
414
mot = New("Motor",Blade,"mot",{Part0 = Blade,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -2.32669336e-07, -1.28771228e-06, -1, -0.00661629438, 0.999978125, -1.28614465e-06, 0.999978125, 0.00661629438, -2.41184125e-07),C1 = CFrame.new(0.969955444, -2.07927704, 0.00700759888, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
415
Blade = New("Part",Ulta_Caliber,"Blade",{BrickColor = BrickColor.new("Quill grey"),Material = Enum.Material.Ice,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-49.5309296, 4.30089998, -59.3754158, -5.15544457e-07, -0.00661677122, -0.999978065, 1.41483298e-07, 0.999978065, -0.00661677122, 1, -1.44891516e-07, -5.14597104e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.87451, 0.87451, 0.870588),})
416
WMesh =New("SpecialMesh",Blade,"Mesh",{Scale = Vector3.new(0.0978527591, 0.31531024, 0.65928185),MeshType = Enum.MeshType.Wedge,})
417
mot = New("Motor",Blade,"mot",{Part0 = Blade,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -5.15544514e-07, 1.41483355e-07, 1, -0.00661674142, 0.999978185, -1.44891501e-07, -0.999978185, -0.00661674142, -5.14597104e-07),C1 = CFrame.new(1.39197922, -2.44455338, 0.00700759888, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
418
Blade2 = New("Part",Ulta_Caliber,"Blade2",{BrickColor = BrickColor.new("Black"),Material = Enum.Material.SmoothPlastic,FormFactor = Enum.FormFactor.Plate,Size = Vector3.new(0.328840256, 0.328840226, 1.44360781),CFrame = CFrame.new(-50.3589401, 4.14609241, -59.3749352, -1.8456474e-07, -0.00555405021, 0.999984503, 9.5615583e-08, -0.999984503, -0.00555405021, 1, 9.45890548e-08, 1.85092958e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.105882, 0.164706, 0.207843),})
419
WMesh =New("BlockMesh",Blade2,"Mesh",{Scale = Vector3.new(0.0458685458, 0.541722536, 1),})
420
mot = New("Motor",Blade2,"mot",{Part0 = Blade2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -1.8456474e-07, 9.56156043e-08, 1, -0.00555405021, -0.999984622, 9.45890548e-08, 0.999984622, -0.00555405021, 1.85092958e-07),C1 = CFrame.new(0.843906403, -1.80487823, 0.00748825073, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
421
Blade = New("Part",Ulta_Caliber,"Blade",{BrickColor = BrickColor.new("Quill grey"),Material = Enum.Material.Ice,Size = Vector3.new(0.328840256, 0.328840226, 0.705641866),CFrame = CFrame.new(-50.2675247, 4.12026787, -59.3754196, 1.84564726e-07, 0.00661724806, -0.999978065, 5.00432975e-07, -0.999978065, -0.00661724806, -1, -4.99200723e-07, -1.87872132e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.87451, 0.87451, 0.870588),})
422
WMesh =New("SpecialMesh",Blade,"Mesh",{Scale = Vector3.new(0.0978527591, 0.779461861, 1),MeshType = Enum.MeshType.Wedge,})
423
mot = New("Motor",Blade,"mot",{Part0 = Blade,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1.84564712e-07, 5.00432975e-07, -1, 0.00661721826, -0.999978185, -4.9920078e-07, -0.999978185, -0.00661721826, -1.8787216e-07),C1 = CFrame.new(0.867248535, -1.8969574, 0.00700378418, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
424
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.2174072, 4.39788437, -59.3824196, -1.49011626e-07, -0.999999881, -1.98068761e-07, 0.999999881, -1.49011612e-07, -3.30714123e-08, 3.30713661e-08, -1.98068761e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
425
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(0.0855581015, 0.188227236, 1.12080872),})
426
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -1.49011612e-07, 1, 3.30713732e-08, -1, -1.49011612e-07, -1.98068776e-07, -1.98068776e-07, -3.30714016e-08, 1),C1 = CFrame.new(1.13273048, -1.80155182, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
427
Part2 = New("Part",Ulta_Caliber,"Part2",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(0.520495594, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.9148941, 4.73376513, -59.3824234, 0.499999881, -0.866025329, -1.02213342e-07, 0.866025329, 0.499999881, 2.49974264e-09, 4.89418106e-08, -8.97692303e-08, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
428
WMesh =New("BlockMesh",Part2,"Mesh",{Scale = Vector3.new(1, 0.575376868, 1.11225307),})
429
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.5, 0.866025507, 4.89418248e-08, -0.866025507, 0.5, -8.97692303e-08, -1.02213335e-07, 2.49974352e-09, 1),C1 = CFrame.new(0.574869156, -0.163547516, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
430
Part2 = New("Part",Ulta_Caliber,"Part2",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(0.730803668, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.3537521, 4.49474096, -59.3824234, 0.999999881, -1.49011655e-07, -3.99031308e-07, 1.49011626e-07, 0.999999881, -1.96114058e-07, 3.99031364e-07, 1.9611403e-07, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
431
WMesh =New("BlockMesh",Part2,"Mesh",{Scale = Vector3.new(1, 0.701574802, 1.11225307),})
432
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1, 1.49011598e-07, 3.99031393e-07, -1.49011683e-07, 1, 1.9611403e-07, -3.99031364e-07, -1.96114087e-07, 1),C1 = CFrame.new(1.14843941, -1.63504791, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
433
Neon = New("Part",Ulta_Caliber,"Neon",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.368567139, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.4424782, 4.61851454, -59.3824234, -0.258819222, -0.965925694, -2.34842005e-07, 0.965925694, -0.258819222, -3.79127165e-08, -2.41607623e-08, -2.36652511e-07, 1),CanCollide = false,Color = Color3.new(1, 0, 0),})
434
WMesh =New("BlockMesh",Neon,"Mesh",{Scale = Vector3.new(1, 0.109086163, 1.12936485),})
435
mot = New("Motor",Neon,"mot",{Part0 = Neon,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.21126747, -1.49632263, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
436
Part2 = New("Part",Ulta_Caliber,"Part2",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,FormFactor = Enum.FormFactor.Symmetric,Size = Vector3.new(0.365753591, 0.62600112, 0.328840196),CFrame = CFrame.new(-49.9626884, 4.69178581, -59.3826065, 7.68042241e-07, -0.00064355135, -0.999999762, -9.31381408e-08, -0.999999762, 0.00064355135, -1, 9.26439014e-08, -7.68102325e-07),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.388235, 0.372549, 0.384314),})
437
WMesh =New("SpecialMesh",Part2,"Mesh",{Scale = Vector3.new(1, 1, 0.168976992),MeshType = Enum.MeshType.Wedge,})
438
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 7.68042412e-07, -9.31381976e-08, -1, -0.00064358121, -0.999999881, 9.26438943e-08, -0.999999881, 0.000643581152, -7.68102325e-07),C1 = CFrame.new(1.51461601, -1.87519455, -0.000183105469, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
439
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.419210047, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.2704659, 4.60726166, -59.3824196, -0.258819252, -0.965925813, -2.34842005e-07, 0.965925813, -0.258819252, -3.7912713e-08, -2.41607623e-08, -2.36652539e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
440
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(1, 0.188227236, 1.12080872),})
441
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.28752899, -1.65091705, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
442
Part2 = New("Part",Ulta_Caliber,"Part2",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.3136215, 4.95879316, -59.379261, 0.787994385, -0.615682065, 2.82908672e-07, 0.615682065, 0.787994385, -6.01714532e-07, 1.47534422e-07, 6.4832966e-07, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
443
WMesh =New("BlockMesh",Part2,"Mesh",{Scale = Vector3.new(0.840607285, 0.938997805, 0.442120701),})
444
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.787994564, 0.615682125, 1.47534436e-07, -0.615682125, 0.787994564, 6.4832966e-07, 2.82908701e-07, -6.01714646e-07, 1),C1 = CFrame.new(1.57038498, -1.43777466, 0.00316238403, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
445
CylinderWMesh =New("Part",Ulta_Caliber,"CylinderMesh",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Elasticity = 0,FormFactor = Enum.FormFactor.Symmetric,Size = Vector3.new(0.378414333, 0.377710849, 0.328840196),CFrame = CFrame.new(-50.0357437, 4.80339193, -59.39114, 2.98023224e-08, -0.999999881, 1.57914499e-07, -0.999999881, -2.98023224e-08, -3.60109773e-08, 3.60109915e-08, -1.57914499e-07, -1),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.388235, 0.372549, 0.384314),})
446
WMesh =New("CylinderMesh",CylinderWMesh,"Mesh",{Scale = Vector3.new(1, 1, 0.876968741),})
447
mot = New("Motor",CylinderWMesh,"mot",{Part0 = CylinderWMesh,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1.05101373e-15, -1, 3.6010988e-08, -1, -6.73767064e-15, -1.57914513e-07, 1.57914513e-07, -3.6010988e-08, -1),C1 = CFrame.new(1.57474327, -1.7561264, -0.00871658325, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
448
Barrel = New("Part",Ulta_Caliber,"Barrel",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Elasticity = 0,FormFactor = Enum.FormFactor.Symmetric,Size = Vector3.new(0.378414333, 0.377710849, 0.328840196),CFrame = CFrame.new(-50.0357437, 4.80443621, -59.3890343, 2.98023224e-08, -0.999999881, 1.57914499e-07, -0.999999881, -2.98023224e-08, -3.60109773e-08, 3.60109915e-08, -1.57914499e-07, -1),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
449
WMesh =New("CylinderMesh",Barrel,"Mesh",{Scale = Vector3.new(1, 1.00999999, 0.79932487),})
450
mot = New("Motor",Barrel,"mot",{Part0 = Barrel,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 1.05101373e-15, -1, 3.6010988e-08, -1, -6.73767064e-15, -1.57914513e-07, 1.57914513e-07, -3.6010988e-08, -1),C1 = CFrame.new(1.57564735, -1.75560379, -0.00661087036, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
451
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.5515137, 4.3936615, -59.3824234, -1.49011626e-07, -0.999999881, -1.98068761e-07, 0.999999881, -1.49011612e-07, -3.30714123e-08, 3.30713661e-08, -1.98068761e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
452
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(0.0855581015, 0.188227236, 1.12080872),})
453
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -1.49011612e-07, 1, 3.30713732e-08, -1, -1.49011612e-07, -1.98068776e-07, -1.98068776e-07, -3.30714016e-08, 1),C1 = CFrame.new(0.962020874, -1.51432037, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
454
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.419210047, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.1192398, 4.60677624, -59.3824196, -0.258819222, -0.965925694, -2.34842005e-07, 0.965925694, -0.258819222, -3.79127165e-08, -2.41607623e-08, -2.36652511e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
455
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(1, 0.188227236, 1.12080872),})
456
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.36272049, -1.78212357, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
457
Part2 = New("Part",Ulta_Caliber,"Part2",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(0.497987658, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.6954193, 4.64329672, -59.3824234, 0.258819222, 0.965925694, -2.51750805e-07, -0.965925694, 0.258819222, -1.35819789e-07, -6.60338912e-08, 2.78325388e-07, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
458
WMesh =New("BlockMesh",Part2,"Mesh",{Scale = Vector3.new(1, 0.562543094, 1.11225307),})
459
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.258819252, -0.965925813, -6.60338841e-08, 0.965925813, 0.258819252, 2.78325388e-07, -2.51750834e-07, -1.35819803e-07, 1),C1 = CFrame.new(1.10625839, -1.26487732, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
460
Neon = New("Part",Ulta_Caliber,"Neon",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.368567139, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.2807121, 4.61570024, -59.3824196, -0.258819252, -0.965925813, -2.34842005e-07, 0.965925813, -0.258819252, -3.7912713e-08, -2.41607623e-08, -2.36652539e-07, 1),CanCollide = false,Color = Color3.new(1, 0, 0),})
461
WMesh =New("BlockMesh",Neon,"Mesh",{Scale = Vector3.new(1, 0.109086163, 1.12936485),})
462
mot = New("Motor",Neon,"mot",{Part0 = Neon,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.28971481, -1.63782501, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
463
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.419210047, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.6045723, 4.60303879, -59.3824234, -0.258819282, -0.965925932, -2.34842005e-07, 0.965925932, -0.258819282, -3.79127094e-08, -2.41607623e-08, -2.36652568e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
464
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(1, 0.188227236, 1.12080872),})
465
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.11681747, -1.36368942, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
466
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.066185, 4.39740467, -59.3824196, -1.49011626e-07, -0.999999881, -1.98068761e-07, 0.999999881, -1.49011612e-07, -3.30714123e-08, 3.30713661e-08, -1.98068761e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
467
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(0.0855581015, 0.188227236, 1.12080872),})
468
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -1.49011612e-07, 1, 3.30713732e-08, -1, -1.49011612e-07, -1.98068776e-07, -1.98068776e-07, -3.30714016e-08, 1),C1 = CFrame.new(1.2079258, -1.93275452, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
469
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.419210047, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.4315338, 4.60514545, -59.3824234, -0.258819222, -0.965925694, -2.34842005e-07, 0.965925694, -0.258819222, -3.79127165e-08, -2.41607623e-08, -2.36652511e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
470
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(1, 0.188227236, 1.12080872),})
471
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.20516205, -1.5124855, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
472
Part2 = New("Part",Ulta_Caliber,"Part2",{BrickColor = BrickColor.new("Dark stone grey"),Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-51.9104652, 4.60788345, -59.3824272, -0.588878095, -0.808221817, 1.09032158e-06, 0.808221817, -0.588878095, 8.42210341e-07, -3.86262684e-08, 1.37718132e-06, 1),CanCollide = false,Color = Color3.new(0.388235, 0.372549, 0.384314),})
473
WMesh =New("BlockMesh",Part2,"Mesh",{Scale = Vector3.new(0.534737229, 0.787132502, 1.11225307),})
474
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.588878155, 0.808221936, -3.8626272e-08, -0.808221936, -0.588878155, 1.37718132e-06, 1.0903218e-06, 8.42210511e-07, 1),C1 = CFrame.new(0.468067169, -0.230323792, -3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
475
Part3 = New("Part",Ulta_Caliber,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Metal,Size = Vector3.new(0.328840256, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.3784828, 4.39577246, -59.3824234, -1.49011626e-07, -0.999999881, -1.98068761e-07, 0.999999881, -1.49011612e-07, -3.30714123e-08, 3.30713661e-08, -1.98068761e-07, 1),CanCollide = false,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
476
WMesh =New("BlockMesh",Part3,"Mesh",{Scale = Vector3.new(0.0855581015, 0.188227236, 1.12080872),})
477
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -1.49011612e-07, 1, 3.30713732e-08, -1, -1.49011612e-07, -1.98068776e-07, -1.98068776e-07, -3.30714016e-08, 1),C1 = CFrame.new(1.05036354, -1.66311264, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
478
Neon = New("Part",Ulta_Caliber,"Neon",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.368567139, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.1280746, 4.61569977, -59.3824196, -0.258819222, -0.965925694, -2.34842005e-07, 0.965925694, -0.258819222, -3.79127165e-08, -2.41607623e-08, -2.36652511e-07, 1),CanCollide = false,Color = Color3.new(1, 0, 0),})
479
WMesh =New("BlockMesh",Neon,"Mesh",{Scale = Vector3.new(1, 0.109086163, 1.12936485),})
480
mot = New("Motor",Neon,"mot",{Part0 = Neon,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.36603165, -1.7700119, 3.81469727e-06, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
481
Neon = New("Part",Ulta_Caliber,"Neon",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,Size = Vector3.new(0.368567139, 0.328840226, 0.328840196),CFrame = CFrame.new(-50.6162033, 4.61738539, -59.3824234, -0.258819222, -0.965925694, -2.34842005e-07, 0.965925694, -0.258819222, -3.79127165e-08, -2.41607623e-08, -2.36652511e-07, 1),CanCollide = false,Color = Color3.new(1, 0, 0),})
482
WMesh =New("BlockMesh",Neon,"Mesh",{Scale = Vector3.new(1, 0.109086163, 1.12936485),})
483
mot = New("Motor",Neon,"mot",{Part0 = Neon,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.258819252, 0.965925813, -2.41607623e-08, -0.965925813, -0.258819252, -2.36652511e-07, -2.3484202e-07, -3.79127165e-08, 1),C1 = CFrame.new(1.12342644, -1.34643555, 0, 0.50000006, 0.866025329, 4.77708291e-08, -0.866025329, 0.50000006, -1.5476347e-07, -1.57914513e-07, 3.60109951e-08, 1),})
484
485
486
if(PlayerSize ~= 1)then
487
	for _,v in next, Char:GetDescendats() do
488
		if(v:IsA'BasePart')then
489
			v.Size = v.Size * PlayerSize
490
		end
491
	end
492
end
493
494
for _,v in next, Ulta_Caliber:GetDescendants() do
495
	if(v:IsA'BasePart')then
496
		v.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
497
	end
498
end
499
local Music = Sound(Char,MusicID,1,3,true,false,true)
500
Music.Name = 'Music'
501
502
--// Stop animations \\--
503
for _,v in next, Hum:GetPlayingAnimationTracks() do
504
	v:Stop();
505
end
506
507
pcall(game.Destroy,Char:FindFirstChild'Animate')
508
pcall(game.Destroy,Hum:FindFirstChild'Animator')
509
510
--// Joints \\--
511
512
local LS = NewInstance('Motor',Char,{Part0=Torso,Part1=LArm,C0 = CF.N(-1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
513
local RS = NewInstance('Motor',Char,{Part0=Torso,Part1=RArm,C0 = CF.N(1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
514
local NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CF.N(0,1.5 * PlayerSize,0)})
515
local LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CF.N(-.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
516
local RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CF.N(.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
517
local RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
518
local HW = NewInstance('Weld',Char,{Part0=RArm,Part1=Handle,C0 = CF.N(0,-.5,-.4)* CF.A(M.R(0),M.R(90),M.R(-30))})
519
local LSC0 = LS.C0
520
local RSC0 = RS.C0
521
local NKC0 = NK.C0
522
local LHC0 = LH.C0
523
local RHC0 = RH.C0
524
local RJC0 = RJ.C0
525
526
--// Artificial HB \\--
527
528
local ArtificialHB = IN("BindableEvent", script)
529
ArtificialHB.Name = "Heartbeat"
530
531
script:WaitForChild("Heartbeat")
532
533
local tf = 0
534
local allowframeloss = false
535
local tossremainder = false
536
local lastframe = tick()
537
local frame = 1/Frame_Speed
538
ArtificialHB:Fire()
539
540
game:GetService("RunService").Heartbeat:connect(function(s, p)
541
	tf = tf + s
542
	if tf >= frame then
543
		if allowframeloss then
544
			script.Heartbeat:Fire()
545
			lastframe = tick()
546
		else
547
			for i = 1, math.floor(tf / frame) do
548
				ArtificialHB:Fire()
549
			end
550
			lastframe = tick()
551
		end
552
		if tossremainder then
553
			tf = 0
554
		else
555
			tf = tf - frame * math.floor(tf / frame)
556
		end
557
	end
558
end)
559
560
function swait(num)
561
	if num == 0 or num == nil then
562
		ArtificialHB.Event:wait()
563
	else
564
		for i = 0, num do
565
			ArtificialHB.Event:wait()
566
		end
567
	end
568
end
569
570
--// Effect Function(s) \\--
571
572
function Tween(obj,props,time,easing,direction,repeats,backwards)
573
	local info = TweenInfo.new(time or .5, easing or Enum.EasingStyle.Quad, direction or Enum.EasingDirection.Out, repeats or 0, backwards or false)
574
	local tween = S.TweenService:Create(obj, info, props)
575
	
576
	tween:Play()
577
end
578
579
function OnceWas(who,dontRemove)
580
	coroutine.wrap(function()
581
		local c = who:children()
582
		if(not dontRemove)then who:destroy() end
583
		for _,v in next, c do
584
			if(v:IsA'BasePart' and v.Transparency < 0.9)then
585
				local Prt = v:Clone()
586
				Prt.Parent = Effects
587
				Prt.BrickColor = BrickColor.new'Crimson'
588
				Prt.Material = Enum.Material.Glass
589
				Prt.CanCollide = false
590
				Prt.Anchored = true
591
				Prt:breakJoints()
592
				
593
				
594
				local part = Effect{
595
					Manual=Prt,
596
					Effect='Fade',
597
					Frames = 90,
598
				}
599
			end
600
		end
601
	end)()
602
end
603
604
function Bezier(startpos, pos2, pos3, endpos, t)
605
	local A = startpos:lerp(pos2, t)
606
	local B  = pos2:lerp(pos3, t)
607
	local C = pos3:lerp(endpos, t)
608
	local lerp1 = A:lerp(B, t)
609
	local lerp2 = B:lerp(C, t)
610
	local cubic = lerp1:lerp(lerp2, t)
611
	return cubic
612
end
613
614
function Effect(data)
615
	local FX = data.Effect or 'ResizeAndFade'
616
	local Parent = data.Parent or Effects
617
	local Color = data.Color or C3.N(0,0,0)
618
	local Size = data.Size or V3.N(1,1,1)
619
	local MoveDir = data.MoveDirection or nil
620
	local MeshData = data.Mesh or nil
621
	local SndData = data.Sound or nil
622
	local Frames = data.Frames or 45
623
	local Manual = data.Manual or nil
624
	local Material = data.Material or nil
625
	local CFra = data.CFrame or Torso.CFrame
626
	local Settings = data.FXSettings or {}
627
	local Snd,Prt,Msh;
628
	local Shape = data.Shape or Enum.PartType.Block
629
	coroutine.resume(coroutine.create(function()
630
		if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
631
			Prt = Manual
632
		else
633
			Prt = Part(Parent,Color,Material,Size,CFra,true,false)
634
			Prt.Shape = Shape
635
		end
636
		if(typeof(MeshData) == 'table')then
637
			Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
638
		elseif(typeof(MeshData) == 'Instance')then
639
			Msh = MeshData:Clone()
640
			Msh.Parent = Prt
641
		elseif(Shape == Enum.PartType.Block)then
642
			Msh = Mesh(Prt,Enum.MeshType.Brick)
643
		end
644
		if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
645
			Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
646
		end
647
		if(Snd)then
648
			repeat wait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
649
			Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
650
		end
651
		local MoveSpeed = nil;
652
		if(MoveDir)then
653
			MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
654
		end
655
		local Inc = M.RNG()-M.RNG()
656
		local Thingie = 0
657
		local Thingie2 = M.RNG(50,100)/100
658
		if(FX ~= 'Arc')then
659
			for i = 1, Frames do
660
				if(swait and typeof(swait) == 'function')then
661
					swait()
662
				else
663
					wait()
664
				end
665
				if(FX == 'ResizeAndFade')then
666
					if(not Settings.EndSize)then
667
						Settings.EndSize = V3.N(0,0,0)
668
					end
669
					local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize+Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
670
					if(Settings.EndIsIncrement)then
671
						Prt.Size = Prt.Size + Settings.EndSize					
672
					else
673
						Prt.Size = Prt.Size - grow/Frames
674
					end 
675
					Prt.Transparency = (i/Frames)
676
				elseif(FX == 'Fade')then
677
					Prt.Transparency = (i/Frames)
678
				end
679
				
680
				if(Settings.RandomizeCFrame)then
681
					Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
682
				end
683
				if(MoveDir and MoveSpeed)then
684
					local Orientation = Prt.Orientation
685
					Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
686
					Prt.Orientation = Orientation
687
				end
688
			end
689
			Prt:destroy() 
690
		else
691
			local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
692
			if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
693
			local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
694
			local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
695
			assert(start ~= nil,"You need to specify a start point!")
696
			assert(endP ~= nil,"You need to specify an end point!")
697
			for i = 0, 1, Settings.Speed or 0.01 do
698
				if(swait and typeof(swait) == 'function')then
699
					swait()
700
				else
701
					wait()
702
				end
703
				if(Settings.Home)then
704
					endP = Settings.Home.CFrame
705
				end
706
				Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
707
			end
708
			if(Settings.RemoveOnGoal)then
709
				Prt:destroy()
710
			end
711
		end
712
	end))
713
	return Prt,Msh,Snd
714
end	
715
716
717
function SoulSteal(whom)
718
	local torso = (whom:FindFirstChild'Head' or whom:FindFirstChild'Torso' or whom:FindFirstChild'UpperTorso' or whom:FindFirstChild'LowerTorso' or whom:FindFirstChild'HumanoidRootPart')
719
	print(torso)
720
	if(torso and torso:IsA'BasePart')then
721
		local Model = Instance.new("Model",Effects)
722
		Model.Name = whom.Name.."'s Soul"
723
		whom:BreakJoints()
724
		local Soul = Part(Model,BrickColor.new'Really red','Glass',V3.N(.5,.5,.5),torso.CFrame,true,false)
725
		Soul.Name = 'Head'
726
		NewInstance("Humanoid",Model,{Health=0,MaxHealth=0})
727
		Effect{
728
			Effect="Arc",
729
			Manual = Soul,
730
			FXSettings={
731
				Start=torso.CFrame,
732
				Home = Torso,
733
				RemoveOnGoal = true,
734
			}
735
		}
736
		local lastPoint = Soul.CFrame.p
737
	
738
		for i = 0, 1, 0.01 do 
739
				local point = CFrame.new(lastPoint, Soul.Position) * CFrame.Angles(-math.pi/2, 0, 0)
740
				local mag = (lastPoint - Soul.Position).magnitude
741
				Effect{
742
					Effect = "Fade",
743
					CFrame = point * CF.N(0, mag/2, 0),
744
					Size = V3.N(.5,mag+.5,.5),
745
					Color = Soul.BrickColor
746
				}
747
				lastPoint = Soul.CFrame.p
748
			swait()
749
		end
750
		for i = 1, 15 do
751
			Effect{
752
				Effect="Fade",
753
				Color = BrickColor.new'Really red',
754
				MoveDirection = (Torso.CFrame*CFrame.new(M.RNG(-40,40),M.RNG(-40,40),M.RNG(-40,40))).p
755
			}	
756
		end
757
	end
758
end
759
760
--// Other Functions \\ --
761
762
function Turn(position)
763
	Root.CFrame=CFrame.new(Root.CFrame.p,V3.N(position.X,Root.Position.Y,position.Z))
764
end
765
766
function Shoot(startP,endP)
767
	local part,pos,norm,dist = CastRay(startP,endP,1500)
768
	if(part and part.Parent and part.Parent ~= workspace)then
769
		local part = part
770
		local who = part.Parent;
771
		OnceWas(who)
772
		local plr = S.Players:GetPlayerFromCharacter(who)
773
		warn("Banished "..who.Name)
774
		if(plr)then
775
			BanishedEvents[plr] = plr.CharacterAdded:connect(function(c)
776
				c:destroy()
777
			end)
778
		end
779
		if(who:FindFirstChild'Head' and Hum.Health > 0)then
780
			ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(M.RNG(-3,3),1.5,M.RNG(-3,3))), "BANISHED", 1.5, C3.N(1,0,0))
781
		end
782
	end
783
	Effect{
784
		Effect='ResizeAndFade',
785
		Frames=45,
786
		Size=V3.N(.1,.1,.1),
787
		CFrame=Barrel.CFrame,
788
		Mesh ={MeshType=Enum.MeshType.Sphere},
789
		Color=BrickColor.new'Really red',
790
		FXSettings={
791
			EndSize=V3.N(.05,.05,.05),
792
			EndIsIncrement=true,
793
		}
794
	}
795
	Effect{
796
		Effect='ResizeAndFade',
797
		Frames=45,
798
		Size=V3.N(.1,.1,.1),
799
		CFrame=Barrel.CFrame,
800
		Mesh ={MeshType=Enum.MeshType.Sphere},
801
		Color=BrickColor.new'Really red',
802
		FXSettings={
803
			EndSize=V3.N(.1,.1,.1),
804
			EndIsIncrement=true,
805
		}
806
	}
807
	Effect{
808
		Effect='Fade',
809
		Frames=15,
810
		Size=V3.N(.15,.15,dist),
811
		CFrame=CF.N(Barrel.CFrame.p,pos)*CF.N(0,0,-dist/2),
812
		Color=BrickColor.new'Really red',
813
	}
814
	Effect{
815
		Effect='ResizeAndFade',
816
		Frames=45,
817
		Size=V3.N(.5,.5,.5),
818
		CFrame=CF.N(pos),
819
		Mesh ={MeshType=Enum.MeshType.Sphere},
820
		Color=BrickColor.new'Really red',
821
		FXSettings={
822
			EndSize=V3.N(.05,.05,.05),
823
			EndIsIncrement=true,
824
		}
825
	}
826
	for i = 1, 5 do
827
		Effect{
828
			Effect='ResizeAndFade',
829
			Frames=65,
830
			Size=V3.N(.2,.2,1),
831
			CFrame=CF.N(CF.N(pos)*CF.A(M.RRNG(-180,180),M.RRNG(-180,180),M.RRNG(-180,180))*CF.N(0,0,-2).p,pos),
832
			Mesh = {MeshType=Enum.MeshType.Sphere},
833
			Material=Enum.Material.Neon,
834
			Color=BrickColor.new'Really red',
835
			FXSettings={
836
				EndSize=V3.N(.005,.005,.05),
837
				EndIsIncrement=true,
838
			}
839
		}	
840
	end
841
end
842
843
function Chat(text)
844
	if(ChatSounds[text])then
845
		Sound(Head,ChatSounds[text],1,3,false,true,true)
846
	end
847
	--if(game.PlaceId ~= 843468296)then
848
		coroutine.wrap(function()
849
			if(Char:FindFirstChild'ChatGUI')then Char.ChatGUI:destroy() end
850
			local BBG = NewInstance("BillboardGui",Char,{Name='ChatGUI',Size=UDim2.new(0,100,0,40),StudsOffset=V3.N(0,3,0),Adornee=Head})
851
			local Txt = NewInstance("TextLabel",BBG,{Text = "",BackgroundTransparency=1,TextColor3=C3.N(1,0,0),BorderSizePixel=0,Font=Enum.Font.Garamond,TextSize=30,TextStrokeTransparency=1,Size=UDim2.new(1,0,.5,0)})
852
			local SND = Sound(Head,418252437,M.RNG(9,11)/10,3,false,false,true)
853
			for i = 1, #text do
854
				delay(i/25, function()
855
					SND.Pitch = M.RNG(9,11)/10
856
					SND.Volume = 3
857
					SND.Parent = Effects
858
					SND:Play()
859
					Txt.Text = text:sub(1,i)
860
				end)
861
			end
862
			delay((#text/25)+2, function()
863
				Txt.Text = ""
864
				for i = 1, #text do
865
					Txt.Text = Txt.Text.. string.char(M.RNG(0,126))
866
				end
867
			end)
868
			delay((#text/25)+3, function()
869
				BBG:destroy()
870
				SND:destroy()
871
			end)
872
		end)()
873
	--else
874
	--	Chat2(text)
875
	--end
876
end
877
878
function Chat2(text)
879
	coroutine.wrap(function()
880
		if(Char:FindFirstChild'ChatGUI')then Char.ChatGUI:destroy() end
881
		local BBG = NewInstance("BillboardGui",Char,{Name='ChatGUI',Size=UDim2.new(0,100,0,40),StudsOffset=V3.N(0,3,0),Adornee=Head})
882
		local offset = 0;
883
		local xsize = 0;
884
		for i = 1, #text do
885
			offset = offset - 16
886
			xsize = xsize + 32 	
887
			delay(i/25, function()
888
				local Txt = NewInstance("TextLabel",BBG,{Text = text:sub(i,i),Position=UDim2.new(0,offset,0,0),BackgroundTransparency=1,TextColor3=C3.N(1,0,0),BorderSizePixel=0,Font=Enum.Font.Garamond,TextSize=40,TextStrokeTransparency=1,Size=UDim2.new(1,0,.5,0)})
889
				offset = offset + 32
890
				while Txt and Txt.Parent do
891
					Txt.Rotation = M.RNG(-15,15)
892
					swait()
893
				end
894
			end)
895
		end
896
		BBG.Size = UDim2.new(0,xsize,0,40)
897
		delay((#text/25)+3, function()
898
			for _,v in next, BBG:children() do
899
				pcall(function() v.Text = string.char(M.RNG(0,126)) end)
900
			end
901
		end)
902
		delay((#text/25)+4, function()
903
			BBG:destroy()
904
		end)
905
	end)()
906
end
907
908
function getRegion(point,range,ignore)
909
    return workspace:FindPartsInRegion3WithIgnoreList(R3.N(point-V3.N(1,1,1)*range/2,point+V3.N(1,1,1)*range/2),ignore,100)
910
end
911
912
function clerp(startCF,endCF,alpha)
913
	return startCF:lerp(endCF, alpha)
914
end
915
916
function GetTorso(char)
917
	return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso' or char:FindFirstChild'LowerTorso' or char:FindFirstChild'HumanoidRootPart'
918
end
919
920
921
922
function ShowDamage(Pos, Text, Time, Color)
923
	coroutine.wrap(function()
924
	local Rate = (1 / 30)
925
	local Pos = (Pos or Vector3.new(0, 0, 0))
926
	local Text = (Text or "")
927
	local Time = (Time or 2)
928
	local Color = (Color or Color3.new(1, 0, 1))
929
	local EffectPart = NewInstance("Part",Effects,{
930
		Material=Enum.Material.SmoothPlastic,
931
		Reflectance = 0,
932
		Transparency = 1,
933
		CanCollide=false,
934
		BrickColor = BrickColor.new(Color),
935
		Name = "Effect",
936
		Size = Vector3.new(0,0,0),
937
		Anchored = true,
938
		CFrame = CFrame.new(Pos)
939
	})
940
	local BillboardGui = NewInstance("BillboardGui",EffectPart,{
941
		Size = UDim2.new(3.75, 0, 3.75, 0),
942
		Adornee = EffectPart,
943
	})
944
	local TextLabel = NewInstance("TextLabel",BillboardGui,{
945
		BackgroundTransparency = 1,
946
		Size = UDim2.new(1, 0, 1, 0),
947
		Text = Text,
948
		Font = "Arial",
949
		TextColor3 = Color,	
950
		TextStrokeColor3 = Color3.new(0,0,0),
951
		TextStrokeTransparency=0,
952
		TextScaled = true,
953
	})
954
	game.Debris:AddItem(EffectPart, (Time))
955
	EffectPart.Parent = game:GetService("Workspace")
956
	delay(0, function()
957
		local Frames = (Time / Rate)
958
		for Frame = 1, Frames do
959
			wait(Rate)
960
			local Percent = (Frame / Frames)
961
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
962
			TextLabel.TextTransparency = Percent
963
			TextLabel.TextStrokeTransparency = Percent
964
		end
965
		if EffectPart and EffectPart.Parent then
966
			EffectPart:Destroy()
967
		end
968
	end) end)()
969
end
970
971
972
function DealDamage(who,minDam,maxDam,Knock,Type,critChance,critMult)
973
	if(who)then
974
		local hum = who:FindFirstChildOfClass'Humanoid'
975
		local Damage = M.RNG(minDam,maxDam)
976
		local canHit = true
977
		if(hum)then
978
			for _, p in pairs(Hit) do
979
				if p[1] == hum then
980
					if(time() - p[2] < 0.1) then
981
						canHit = false
982
					else
983
						Hit[_] = nil
984
					end
985
				end
986
			end
987
			if(canHit)then
988
				if(hum.Health >= math.huge)then
989
					who:BreakJoints()
990
					if(who:FindFirstChild'Head' and hum.Health > 0)then
991
						ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "INSTANT", 1.5, C3.N(1,0,0))
992
					end
993
				else
994
					local player = S.Players:GetPlayerFromCharacter(who)
995
					if(Type == "Fire")then
996
						--idk..
997
					else
998
						local  c = Instance.new("ObjectValue",hum)
999
						c.Name = "creator"
1000
						c.Value = Plr
1001
						game:service'Debris':AddItem(c,0.35)
1002
						if(M.RNG(1,100) <= (critChance or 0))then
1003
							if(who:FindFirstChild'Head' and hum.Health > 0)then
1004
								ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "[CRIT] "..Damage*(critMult or 2), 1.5, BrickColor.new'New Yeller'.Color)
1005
							end
1006
							hum.Health = hum.Health - Damage*(critMult or 2)
1007
						else
1008
							if(who:FindFirstChild'Head' and hum.Health > 0)then
1009
								ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), Damage, 1.5, DamageColor.Color)
1010
							end
1011
							hum.Health = hum.Health - Damage
1012
						end
1013
						if(Type == 'Knockback' and GetTorso(who))then
1014
							local angle = GetTorso(who).Position - Root.Position + Vector3.new(0, 0, 0).unit
1015
							local body = NewInstance('BodyVelocity',GetTorso(who),{
1016
								P = 500,
1017
								maxForce = V3.N(math.huge,0,math.huge),
1018
								velocity = Root.CFrame.lookVector * Knock + Root.Velocity / 1.05
1019
							})
1020
							game:service'Debris':AddItem(body,.5)	
1021
						elseif(Type == 'Knockdown' and GetTorso(who))then
1022
							local rek = GetTorso(who)
1023
							print(rek)
1024
							hum.PlatformStand = true
1025
							delay(1,function()
1026
								hum.PlatformStand = false
1027
							end)
1028
							local angle = (GetTorso(who).Position - (Root.Position + Vector3.new(0, 0, 0))).unit
1029
							local bodvol = NewInstance("BodyVelocity",rek,{
1030
								velocity = angle * Knock,
1031
								P = 5000,
1032
								maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
1033
							})
1034
							local rl = NewInstance("BodyAngularVelocity",rek,{
1035
								P = 3000,
1036
								maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
1037
								angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
1038
							})
1039
							game:GetService("Debris"):AddItem(bodvol, .5)
1040
							game:GetService("Debris"):AddItem(rl, .5)
1041
						end
1042
					end
1043
				end
1044
			end
1045
			table.insert(Hit,{hum,time()})
1046
		end
1047
	end
1048
end
1049
1050
function ClosestPart(pos,range)
1051
	local mag,closest = math.huge;
1052
	for _,v in next, getRegion(pos,range or 10,{Char}) do
1053
		if((v.CFrame.p-pos).magnitude < mag)then
1054
			mag = (v.CFrame.p-pos).magnitude
1055
			closest = v
1056
		end
1057
	end
1058
	return closest
1059
end
1060
1061
function AOEBanish(pos,range)
1062
	local mag,closest = math.huge;
1063
	for _,v in next, getRegion(pos,range or 10,{Char}) do
1064
		local who = v.Parent
1065
		if((v.CFrame.p-pos).magnitude < mag and who and who ~= workspace and not Char:IsAncestorOf(v))then
1066
			local plr = S.Players:GetPlayerFromCharacter(who)
1067
			if(plr)then
1068
				BanishedEvents[plr] = plr.CharacterAdded:connect(function(c)
1069
					c:destroy()
1070
				end)
1071
			end
1072
			warn("Banished "..who.Name)
1073
			if(who:FindFirstChild'Head' and Hum.Health > 0)then
1074
				ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(M.RNG(-3,3),1.5,M.RNG(-3,3))), "BANISHED", 1.5, C3.N(1,0,0))
1075
			end
1076
			OnceWas(who)
1077
		end
1078
	end
1079
end
1080
1081
function AOEDamage(where,range,minDam,maxDam,Knock,Type,critChance,critMult)
1082
	for _,v in next, getRegion(where,range,{Char}) do
1083
		if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
1084
			DealDamage(v.Parent,minDam,maxDam,Knock,Type,critChance,critMult)
1085
		end
1086
	end
1087
end
1088
1089
function AOEHeal(where,range,amount)
1090
	local healed = {}
1091
	for _,v in next, getRegion(where,range,{Char}) do
1092
		local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid' or nil)
1093
		if(hum and not healed[hum])then
1094
			hum.Health = hum.Health + amount
1095
			if(v.Parent:FindFirstChild'Head' and hum.Health > 0)then
1096
				ShowDamage((v.Parent.Head.CFrame * CF.N(0, 0, (v.Parent.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "+"..amount, 1.5, BrickColor.new'Lime green'.Color)
1097
			end
1098
		end
1099
	end
1100
end
1101
1102
function CastRay(startPos,endPos,range,ignoreList)
1103
	local ray = Ray.new(startPos,(endPos-startPos).unit*range)
1104
	local part,pos,norm = workspace:FindPartOnRayWithIgnoreList(ray,ignoreList or {Char},false,true)
1105
	return part,pos,norm,(pos and (startPos-pos).magnitude)
1106
end
1107
1108
--// Attack Functions \\--
1109
1110
1111
function Show_Mercy()
1112
	Chat "I will show you mercy."
1113
	ShowDamage((Head.CFrame * CF.N(0, 0, (Head.Size.Z / 2)).p+V3.N(M.RNG(-3,3),1.5,M.RNG(-3,3))), "DEBANISHED", 1.5, C3.N(.7,0,0))
1114
1115
	for p,v in next, BanishedEvents do
1116
		warn("Unbanished "..p.Name)
1117
		v:disconnect()
1118
		BanishedEvents[p] = nil
1119
	end
1120
end
1121
1122
function Banishing_Storm()
1123
	Attack = true
1124
	NeutralAnims = false
1125
	Hum.AutoRotate = false
1126
	for i = 0, 2.3, .1 do
1127
		swait()
1128
		Turn(Mouse.Hit.p)
1129
		local Alpha = .15
1130
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
1131
		LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1132
		RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1133
		LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
1134
		RS.C0 = clerp(RS.C0,CFrame.new(1.46891451, 0.639140844, 0.117049158, 0.947687626, 0.107383646, 0.300595015, 0.195006967, -0.940317333, -0.278883517, 0.252707064, 0.322912514, -0.912067294),Alpha)
1135
		NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
1136
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110755987, -0.74960357, -0.415038228, -5.42402267e-06, -2.98023224e-07, 1.00000024, -0.500007331, 0.866021454, -2.48476863e-06, -0.866021395, -0.500007272, -4.7981739e-06),Alpha)
1137
	end
1138
	local numberFall = 0;
1139
	repeat
1140
		for i = 0, .8, 0.1 do
1141
			swait()
1142
			Turn(Mouse.Hit.p)
1143
			local Alpha = .3
1144
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
1145
			LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1146
			RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1147
			LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
1148
			RS.C0 = clerp(RS.C0,CFrame.new(1.47921813, 0.661770463, 0.060773734, 0.947700858, 0.195051998, 0.252622485, 0.194988579, -0.980473101, 0.0255415048, 0.252671421, 0.0250527933, -0.967227817),Alpha)
1149
			NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
1150
			HW.C0 = clerp(HW.C0,CFrame.new(-0.110747263, -0.749596298, -0.415039092, -1.66893005e-06, -5.14090061e-06, 1.00000012, -0.500009954, 0.866019845, 3.60608101e-06, -0.866019726, -0.500009894, -3.9935112e-06),Alpha)
1151
		end
1152
		Sound(Barrel,238353911,M.RNG(7,13)/10,10,false,true,true)
1153
		local part,pos,dist = Shoot(Barrel.CFrame.p,Barrel.CFrame*CF.N(0,-1500,0).p)
1154
		if(not part)then
1155
			numberFall = numberFall + 1
1156
		end
1157
		Effect{
1158
			Effect='ResizeAndFade',
1159
			Frames=45,
1160
			Size=V3.N(.1,.1,.1),
1161
			CFrame=Barrel.CFrame,
1162
			Mesh ={MeshType=Enum.MeshType.Sphere},
1163
			Color=BrickColor.new'Really red',
1164
			FXSettings={
1165
				EndSize=V3.N(.05,.05,.05),
1166
				EndIsIncrement=true,
1167
			}
1168
		}
1169
		Effect{
1170
			Effect='ResizeAndFade',
1171
			Frames=45,
1172
			Size=V3.N(.1,.1,.1),
1173
			CFrame=Barrel.CFrame,
1174
			Mesh ={MeshType=Enum.MeshType.Sphere},
1175
			Color=BrickColor.new'Really red',
1176
			FXSettings={
1177
				EndSize=V3.N(.1,.1,.1),
1178
				EndIsIncrement=true,
1179
			}
1180
		}
1181
		for i = 0, .7, 0.1 do
1182
			swait()
1183
			Turn(Mouse.Hit.p)
1184
			local Alpha = .3
1185
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
1186
			LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1187
			RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1188
			LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
1189
			RS.C0 = clerp(RS.C0,CFrame.new(1.47678053, 0.526562393, 0.174270749, 0.947701395, 0.126782924, 0.292896599, 0.194988653, -0.956529498, -0.216866404, 0.252669275, 0.262636065, -0.931225359),Alpha)
1190
			NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
1191
			HW.C0 = clerp(HW.C0,CFrame.new(-0.110761039, -0.749590993, -0.415038049, 5.96046448e-07, -4.7236681e-06, 1.00000012, -0.500009775, 0.866019845, 4.39817086e-06, -0.866019845, -0.500009775, -1.90734863e-06),Alpha)
1192
		end
1193
	until not S.UserInputService:IsKeyDown(Enum.KeyCode.Z)
1194
	delay(2, function()
1195
		for i = 1, numberFall*2 do
1196
			local part,pos,dist = ClosestPart(Mouse.Hit.p,2),Mouse.Hit.p+V3.N(M.RNG(-100,100)/100,0,M.RNG(-100,100)/100),1500
1197
			Effect{
1198
				Effect='Fade',
1199
				Frames=15,
1200
				Size=V3.N(.15,dist,.15),
1201
				CFrame=CF.N(pos)*CF.N(0,dist/2,0),
1202
				Color=BrickColor.new'Really red',
1203
			}
1204
			Effect{
1205
				Effect='ResizeAndFade',
1206
				Frames=45,
1207
				Size=V3.N(.5,.5,.5),
1208
				CFrame=CF.N(pos),
1209
				Mesh ={MeshType=Enum.MeshType.Sphere},
1210
				Color=BrickColor.new'Really red',
1211
				FXSettings={
1212
					EndSize=V3.N(.05,.05,.05),
1213
					EndIsIncrement=true,
1214
				}
1215
			}
1216
			for i = 1, 5 do
1217
				Effect{
1218
					Effect='ResizeAndFade',
1219
					Frames=65,
1220
					Size=V3.N(.2,.2,1),
1221
					CFrame=CF.N(CF.N(pos)*CF.A(M.RRNG(-180,180),M.RRNG(-180,180),M.RRNG(-180,180))*CF.N(0,0,-2).p,pos),
1222
					Mesh = {MeshType=Enum.MeshType.Sphere},
1223
					Material=Enum.Material.Neon,
1224
					Color=BrickColor.new'Really red',
1225
					FXSettings={
1226
						EndSize=V3.N(.005,.005,.05),
1227
						EndIsIncrement=true,
1228
					}
1229
				}	
1230
			end
1231
			if(part and part.Parent and part.Parent ~= workspace)then
1232
				local part = part
1233
				local who = part.Parent
1234
				OnceWas(who)
1235
				local plr = S.Players:GetPlayerFromCharacter(who)
1236
				if(plr)then
1237
					BanishedEvents[plr] = plr.CharacterAdded:connect(function(c)
1238
						c:destroy()
1239
					end)
1240
				end
1241
				if(who:FindFirstChild'Head' and Hum.Health > 0)then
1242
					ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(M.RNG(-3,3),1.5,M.RNG(-3,3))), "BANISHED", 1.5, C3.N(1,0,0))
1243
				end
1244
			end
1245
			swait(5)
1246
		end	
1247
	end)
1248
	Hum.AutoRotate = true
1249
	Attack = false
1250
	NeutralAnims = true
1251
end
1252
1253
function Spectral_Banish()
1254
	Attack = true
1255
	Chat "If you desire to be a ghost.."
1256
	swait(120)
1257
	Chat "Then move on to the afterlife!"
1258
	NeutralAnims = false
1259
	Hum.AutoRotate = false	
1260
	for i = 0, 6, .1 do
1261
		swait()
1262
		Turn(Mouse.Hit.p)
1263
		local Alpha = .15
1264
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
1265
		LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1266
		RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1267
		LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
1268
		RS.C0 = clerp(RS.C0,CFrame.new(1.46891451, 0.639140844, 0.117049158, 0.947687626, 0.107383646, 0.300595015, 0.195006967, -0.940317333, -0.278883517, 0.252707064, 0.322912514, -0.912067294),Alpha)
1269
		NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
1270
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110755987, -0.74960357, -0.415038228, -5.42402267e-06, -2.98023224e-07, 1.00000024, -0.500007331, 0.866021454, -2.48476863e-06, -0.866021395, -0.500007272, -4.7981739e-06),Alpha)
1271
	end
1272
	for i = 0, .8, 0.1 do
1273
		swait()
1274
		Turn(Mouse.Hit.p)
1275
		local Alpha = .3
1276
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
1277
		LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1278
		RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1279
		LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
1280
		RS.C0 = clerp(RS.C0,CFrame.new(1.47921813, 0.661770463, 0.060773734, 0.947700858, 0.195051998, 0.252622485, 0.194988579, -0.980473101, 0.0255415048, 0.252671421, 0.0250527933, -0.967227817),Alpha)
1281
		NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
1282
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110747263, -0.749596298, -0.415039092, -1.66893005e-06, -5.14090061e-06, 1.00000012, -0.500009954, 0.866019845, 3.60608101e-06, -0.866019726, -0.500009894, -3.9935112e-06),Alpha)
1283
	end
1284
	Sound(Barrel,238353911,M.RNG(7,13)/10,10,false,true,true)
1285
	Effect{
1286
		Effect='ResizeAndFade',
1287
		Frames=45,
1288
		Size=V3.N(.1,.1,.1),
1289
		CFrame=Barrel.CFrame,
1290
		Mesh ={MeshType=Enum.MeshType.Sphere},
1291
		Color=BrickColor.new'Really red',
1292
		FXSettings={
1293
			EndSize=V3.N(.05,.05,.05),
1294
			EndIsIncrement=true,
1295
		}
1296
	}
1297
	Effect{
1298
		Effect='ResizeAndFade',
1299
		Frames=45,
1300
		Size=V3.N(.1,.1,.1),
1301
		CFrame=Barrel.CFrame,
1302
		Mesh ={MeshType=Enum.MeshType.Sphere},
1303
		Color=BrickColor.new'Really red',
1304
		FXSettings={
1305
			EndSize=V3.N(.1,.1,.1),
1306
			EndIsIncrement=true,
1307
		}
1308
	}
1309
	for i = 1, 5 do
1310
		local angles = CF.A(M.RRNG(-180,180),M.RRNG(-180,180),M.RRNG(-180,180))
1311
		local cf = Barrel.CFrame
1312
		Effect{
1313
			Effect='ResizeAndFade',
1314
			Frames=65,
1315
			Size=V3.N(.2,.2,1),
1316
			CFrame=CF.N(CF.N(cf.p)*angles*CF.N(0,0,-2).p,cf.p),
1317
			Mesh = {MeshType=Enum.MeshType.Sphere},
1318
			Material=Enum.Material.Neon,
1319
			Color=BrickColor.new'Really red',
1320
			MoveDirection=CF.N(CF.N(cf.p)*angles*CF.N(0,0,-25).p,cf.p).p,
1321
			FXSettings={
1322
				EndSize=V3.N(.005,.005,.05),
1323
				EndIsIncrement=true,
1324
			}
1325
		}	
1326
	end
1327
	Effect{
1328
		Effect='Fade',
1329
		Frames=35,
1330
		Size=V3.N(.15,2048,.15),
1331
		CFrame=CF.N(Barrel.CFrame.p)*CF.N(0,2048/2,0),
1332
		Color=BrickColor.new'Really red',
1333
	}
1334
	for i = 0, .8, .1 do
1335
		swait()
1336
		Turn(Mouse.Hit.p)
1337
		local Alpha = .15
1338
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
1339
		LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1340
		RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
1341
		LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
1342
		RS.C0 = clerp(RS.C0,CFrame.new(1.46891451, 0.639140844, 0.117049158, 0.947687626, 0.107383646, 0.300595015, 0.195006967, -0.940317333, -0.278883517, 0.252707064, 0.322912514, -0.912067294),Alpha)
1343
		NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
1344
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110755987, -0.74960357, -0.415038228, -5.42402267e-06, -2.98023224e-07, 1.00000024, -0.500007331, 0.866021454, -2.48476863e-06, -0.866021395, -0.500007272, -4.7981739e-06),Alpha)
1345
	end
1346
	for _,v in next, S.Players:players() do
1347
		if(v.Character and v.Character:FindFirstChild'Head' and not v.Character.Parent)then
1348
			pcall(function()
1349
				v.Character.Parent = workspace
1350
				local tor = v.Character:FindFirstChild'Head'
1351
				Effect{
1352
					Effect='Fade',
1353
					Frames=15,
1354
					Size=V3.N(.15,2048,.15),
1355
					CFrame=CF.N(tor.CFrame.p)*CF.N(0,2048/2,0),
1356
					Color=BrickColor.new'Really red',
1357
				}
1358
				Effect{
1359
					Effect='ResizeAndFade',
1360
					Frames=45,
1361
					Size=V3.N(.5,.5,.5),
1362
					CFrame=CF.N(tor.CFrame.p),
1363
					Mesh ={MeshType=Enum.MeshType.Sphere},
1364
					Color=BrickColor.new'Really red',
1365
					FXSettings={
1366
						EndSize=V3.N(.05,.05,.05),
1367
						EndIsIncrement=true,
1368
					}
1369
				}
1370
				for i = 1, 5 do
1371
					Effect{
1372
						Effect='ResizeAndFade',
1373
						Frames=65,
1374
						Size=V3.N(.2,.2,1),
1375
						CFrame=CF.N(CF.N(tor.CFrame.p)*CF.A(M.RRNG(-180,180),M.RRNG(-180,180),M.RRNG(-180,180))*CF.N(0,0,-2).p,tor.CFrame.p),
1376
						Mesh = {MeshType=Enum.MeshType.Sphere},
1377
						Material=Enum.Material.Neon,
1378
						Color=BrickColor.new'Really red',
1379
						FXSettings={
1380
							EndSize=V3.N(.005,.005,.05),
1381
							EndIsIncrement=true,
1382
						}
1383
					}	
1384
				end
1385
				local asd = v.Character;
1386
				OnceWas(asd)
1387
				v.Character:destroy()
1388
				BanishedEvents[v] = v.CharacterAdded:connect(function(c)
1389
					c:destroy()
1390
				end)
1391
			end)
1392
		end
1393
	end
1394
	Hum.AutoRotate = true
1395
	Attack = false
1396
	NeutralAnims = true
1397
end
1398
1399
function Teleport()
1400
	Attack = true
1401
	NeutralAnims = false
1402
	Hum.AutoRotate = false
1403
	repeat
1404
		Turn(Mouse.Hit.p)
1405
		swait()
1406
		local Alpha = .1
1407
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
1408
		LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1409
		RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1410
		LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
1411
		RS.C0 = clerp(RS.C0,CFrame.new(1.56039762, 0.53398639, -0.0236691795, 0.0156120034, -0.99157083, 0.128623411, 0.00628500059, -0.128539219, -0.991684735, 0.999858379, 0.0162905809, 0.00422526803),Alpha)
1412
		NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
1413
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749616861, -0.415070713, 0, 0, 1, -0.500001788, 0.866024435, 0, -0.866024435, -0.500001788, 0),Alpha)
1414
	until not S.UserInputService:IsKeyDown(Enum.KeyCode.C)
1415
	Sound(Barrel,238353911,M.RNG(7,13)/10,10,false,true,true)
1416
	local pos,dist = Mouse.Hit.p,(Barrel.CFrame.p-Mouse.Hit.p).magnitude
1417
	Effect{
1418
		Effect='ResizeAndFade',
1419
		Frames=45,
1420
		Size=V3.N(.1,.1,.1),
1421
		CFrame=Barrel.CFrame,
1422
		Mesh ={MeshType=Enum.MeshType.Sphere},
1423
		Color=BrickColor.new'Really red',
1424
		FXSettings={
1425
			EndSize=V3.N(.05,.05,.05),
1426
			EndIsIncrement=true,
1427
		}
1428
	}
1429
	Effect{
1430
		Effect='ResizeAndFade',
1431
		Frames=45,
1432
		Size=V3.N(.1,.1,.1),
1433
		CFrame=Barrel.CFrame,
1434
		Mesh ={MeshType=Enum.MeshType.Sphere},
1435
		Color=BrickColor.new'Really red',
1436
		FXSettings={
1437
			EndSize=V3.N(.1,.1,.1),
1438
			EndIsIncrement=true,
1439
		}
1440
	}
1441
1442
	Effect{
1443
		Effect='Fade',
1444
		Frames=15,
1445
		Size=V3.N(.15,.15,dist),
1446
		CFrame=CF.N(Barrel.CFrame.p,pos)*CF.N(0,0,-dist/2),
1447
		Color=BrickColor.new'Really red',
1448
	}
1449
	for i = 0, .3, .05 do
1450
		swait()
1451
		local Alpha = .3
1452
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
1453
		LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1454
		RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1455
		LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
1456
		RS.C0 = clerp(RS.C0,CFrame.new(1.43598688, 0.64456445, -0.0224216785, 0.0156120034, -0.933606386, 0.357960403, 0.00628500059, -0.357905358, -0.933736861, 0.999858379, 0.0168272816, 0.000280098058),Alpha)
1457
		NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
1458
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749611259, -0.415075362, 0, 0, 1, -0.500002265, 0.866024256, 0, -0.866024256, -0.500002265, 0),Alpha)
1459
	end
1460
	OnceWas(Char,true)
1461
	Torso.CFrame = CF.N(pos)*CF.N(0,3,0)
1462
	for i = 1, 15 do
1463
		local angles = CF.A(M.RRNG(-180,180),M.RRNG(-180,180),M.RRNG(-180,180))
1464
		local cf = Torso.CFrame
1465
		Effect{
1466
			Effect='ResizeAndFade',
1467
			Frames=65,
1468
			Size=V3.N(2,2,10),
1469
			CFrame=CF.N(CF.N(cf.p)*angles*CF.N(0,0,-2).p,cf.p),
1470
			Mesh = {MeshType=Enum.MeshType.Sphere},
1471
			Material=Enum.Material.Neon,
1472
			Color=BrickColor.new'Really red',
1473
			MoveDirection=CF.N(CF.N(cf.p)*angles*CF.N(0,0,-25).p,cf.p).p,
1474
			FXSettings={
1475
				EndSize=V3.N(.005,.005,.05),
1476
				EndIsIncrement=true,
1477
			}
1478
		}	
1479
	end
1480
	OnceWas(Char,true)
1481
	for i = 0, .4, .05 do
1482
		swait()
1483
		local Alpha = .3
1484
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
1485
		LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1486
		RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1487
		LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
1488
		RS.C0 = clerp(RS.C0,CFrame.new(1.56039762, 0.53398639, -0.0236691795, 0.0156120034, -0.99157083, 0.128623411, 0.00628500059, -0.128539219, -0.991684735, 0.999858379, 0.0162905809, 0.00422526803),Alpha)
1489
		NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
1490
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749616861, -0.415070713, 0, 0, 1, -0.500001788, 0.866024435, 0, -0.866024435, -0.500001788, 0),Alpha)
1491
	end
1492
	Attack = false
1493
	NeutralAnims = true
1494
	Hum.AutoRotate = true
1495
end
1496
1497
function BGone()
1498
	Attack = true
1499
	NeutralAnims = false
1500
	Hum.AutoRotate = false
1501
	Chat "Be gone.."
1502
	--repeat 
1503
	for i = 0, 9, .1 do
1504
		Turn(Mouse.Hit.p)
1505
		swait()
1506
		Hum.WalkSpeed = 0
1507
		local Alpha = .1
1508
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0296121463, -0.249109969, -0.153551444, -0.000328990631, -0.0094739655, -0.999952853, 0.204196915, 0.978885293, -0.0093415454, 0.978927732, -0.204190359, 0.0016125096),Alpha)
1509
		LH.C0 = clerp(LH.C0,CFrame.new(-0.475788742, -0.651965797, 0.0191618577, 0.978805363, 0.204197079, 0.0156120053, -0.204313993, 0.978885233, 0.00628500246, -0.0139989806, -0.0093415454, 0.999858379),Alpha)
1510
		RH.C0 = clerp(RH.C0,CFrame.new(0.498535633, -0.912865818, 0.0149653442, 0.999878168, 5.14090061e-06, 0.0156120053, -0.000103279948, 0.999980271, 0.00628500246, -0.0156116625, -0.00628584996, 0.999858379),Alpha)
1511
		LS.C0 = clerp(LS.C0,CFrame.new(-1.29815638, 0.566930115, -0.00661327224, -0.237626657, 0.971231222, 0.0156120053, -0.971307039, -0.237746239, 0.00628500246, 0.00981588662, -0.0136705656, 0.999858379),Alpha)
1512
		RS.C0 = clerp(RS.C0,CFrame.new(1.24513125, 0.449408412, -0.155189604, 0.502771139, -0.519900203, -0.690597773, 0.303394169, 0.854222655, -0.422203362, 0.809427798, 0.00274830475, 0.587213099),Alpha)
1513
		NK.C0 = clerp(NK.C0,CFrame.new(-0.0153051838, 1.498806, -0.0364812165, 1.34855509e-06, 0.0477146953, 0.998861074, -0.00628432725, 0.998841345, -0.0477137454, -0.999980271, -0.00627710624, 0.000301202759),Alpha)
1514
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110760681, -0.749610901, -0.415069938, -1.63912773e-06, 9.19401646e-06, 1.00000024, -0.500005245, 0.866022348, -8.86109865e-06, -0.866022408, -0.500005245, 3.1888485e-06),Alpha)
1515
	end
1516
	--until not S.UserInputService:IsKeyDown(Enum.KeyCode.V)
1517
	
1518
	for i = 0, .7, 0.1 do
1519
		swait()
1520
		Hum.WalkSpeed = 0
1521
		local Alpha = .3
1522
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.00766070001, -0.269241363, -0.0518192649, 0.00021806825, 0.00368537591, 0.99999094, -0.166544884, 0.9860273, -0.00359759619, -0.986031651, -0.166542619, 0.000828802586),Alpha)
1523
		LH.C0 = clerp(LH.C0,CFrame.new(-0.497863114, -0.984335184, 0.0215952508, 0.987798393, 0.154953942, 0.0156120034, -0.155066714, 0.987884164, 0.00628500665, -0.0144489631, -0.00862922147, 0.999858379),Alpha)
1524
		RH.C0 = clerp(RH.C0,CFrame.new(0.462316692, -0.882526457, 0.015341443, 0.985910237, -0.166545048, 0.0156120034, 0.166465312, 0.9860273, 0.00628500665, -0.0164405983, -0.00359759573, 0.999858379),Alpha)
1525
		LS.C0 = clerp(LS.C0,CFrame.new(-1.34305215, 0.64557004, 0.206238627, 0.819938838, 0.417069167, 0.392114401, -0.412350535, 0.905431569, -0.100800663, -0.397073597, -0.0790382028, 0.914377153),Alpha)
1526
		RS.C0 = clerp(RS.C0,CFrame.new(1.3656987, 0.557721138, -0.0314715505, 0.0156120034, -0.985910237, 0.166545048, 0.00628500665, -0.166465312, -0.9860273, 0.999858379, 0.0164405983, 0.00359759573),Alpha)
1527
		NK.C0 = clerp(NK.C0,CFrame.new(0.0260951146, 1.49902618, -0.00289419782, -1.0067597e-06, 0.0574942529, -0.998345912, 0.00628517801, 0.998326182, 0.0574931316, 0.999980211, -0.00627472438, -0.000362364575),Alpha)
1528
		HW.C0 = clerp(HW.C0,CFrame.new(-0.11075601, -0.749610424, -0.415073156, 0, 0, 1, -0.500000238, 0.866025388, 0, -0.866025388, -0.500000238, 0),Alpha)
1529
	end
1530
1531
	Sound(Barrel,238353911,M.RNG(7,13)/10,10,false,true,true)
1532
	Sound(Barrel,415700134,1.6,10,false,true,true)
1533
	Sound(Barrel,138677306,1.2,7,false,true,true)
1534
	coroutine.wrap(function()
1535
		local cf = Root.CFrame * CF.N(0,0,-2)
1536
		for i = 1, 100 do
1537
			Effect{
1538
				Effect='ResizeAndFade',
1539
				CFrame = cf*CF.A(M.R(90),0,M.R(90)),
1540
				Size=V3.N(2,5,5),
1541
				Material=Enum.Material.Neon,
1542
				Color=BrickColor.new'Crimson',
1543
				Shape='Cylinder',
1544
				FXSettings={
1545
					EndSize=V3.N(0,.3,.3),
1546
					EndIsIncrement=true
1547
				}
1548
			}
1549
			for i = 1, 3 do
1550
				local angles = CF.A(M.RRNG(-180,180),M.RRNG(-180,180),M.RRNG(-180,180))
1551
				Effect{
1552
					Effect='ResizeAndFade',
1553
					Frames=65,
1554
					Size=V3.N(1,1,1),
1555
					CFrame=CF.N(CF.N(cf.p)*angles*CF.N(0,0,-10).p,cf.p),
1556
					Mesh = {MeshType=Enum.MeshType.Sphere},
1557
					Material=Enum.Material.Neon,
1558
					Color=BrickColor.new'Really red',
1559
					MoveDirection=CF.N(CF.N(cf.p)*angles*CF.N(0,0,-50).p,cf.p).p,
1560
					FXSettings={
1561
						EndSize=V3.N(0,0,.3),
1562
						EndIsIncrement=true,
1563
					}
1564
				}	
1565
			end
1566
			AOEBanish(cf.p,8)
1567
			cf = cf*CF.N(0,0,-2)
1568
			swait()
1569
		end
1570
	end)()
1571
	swait(30)
1572
	Hum.WalkSpeed = 16
1573
	Attack = false
1574
	NeutralAnims = true
1575
	Hum.AutoRotate = true
1576
end
1577
function Banisher_Bullet()
1578
	Attack = true
1579
	NeutralAnims = false
1580
	Hum.AutoRotate = false
1581
	for i = 0, .4, .1/3 do
1582
		Turn(Mouse.Hit.p)
1583
		swait()
1584
		local Alpha = .1
1585
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
1586
		LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1587
		RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1588
		LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
1589
		RS.C0 = clerp(RS.C0,CFrame.new(1.56039762, 0.53398639, -0.0236691795, 0.0156120034, -0.99157083, 0.128623411, 0.00628500059, -0.128539219, -0.991684735, 0.999858379, 0.0162905809, 0.00422526803),Alpha)
1590
		NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
1591
		HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749616861, -0.415070713, 0, 0, 1, -0.500001788, 0.866024435, 0, -0.866024435, -0.500001788, 0),Alpha)
1592
	end
1593
	repeat
1594
		for i = 0, .2, .1/3 do
1595
			Turn(Mouse.Hit.p)
1596
			swait()
1597
			local Alpha = .1
1598
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
1599
			LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1600
			RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1601
			LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
1602
			RS.C0 = clerp(RS.C0,CFrame.new(1.43598688, 0.64456445, -0.0224216785, 0.0156120034, -0.933606386, 0.357960403, 0.00628500059, -0.357905358, -0.933736861, 0.999858379, 0.0168272816, 0.000280098058),Alpha)
1603
			NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
1604
			HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749611259, -0.415075362, 0, 0, 1, -0.500002265, 0.866024256, 0, -0.866024256, -0.500002265, 0),Alpha)
1605
		end
1606
		Sound(Barrel,238353911,M.RNG(7,13)/10,10,false,true,true)
1607
		Shoot(Barrel.CFrame.p,Mouse.Hit.p)
1608
		for i = 0, .3, .1/3 do
1609
			swait()
1610
			local Alpha = .1
1611
			RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
1612
			LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1613
			RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
1614
			LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
1615
			RS.C0 = clerp(RS.C0,CFrame.new(1.46904922, 0.532365739, -0.0222326554, 0.0156120034, -0.987360775, 0.157718793, 0.00628500059, -0.157637998, -0.987477064, 0.999858379, 0.0164077543, 0.00374451769),Alpha)
1616
			NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
1617
			HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749605894, -0.415075004, 0, 0, 1, -0.50000155, 0.866024613, 0, -0.866024613, -0.50000149, 0),Alpha)
1618
		end
1619
	until not S.UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton1)
1620
	Hum.AutoRotate = true
1621
	Attack = false
1622
	NeutralAnims = true
1623
end
1624
1625
function Taunt()
1626
	Attack = true
1627
	NeutralAnims = false
1628
	local taunt = 1 --M.RNG(1,3)
1629
	if(taunt == 1)then		
1630
		
1631
		local rad = 0
1632
		for i = 0, 6, 0.1 do
1633
			swait()
1634
			rad = rad + 35
1635
			local Alpha = .3
1636
			RJ.C0 = clerp(RJ.C0,CFrame.new(5.9524434e-13, 0.00629317388, 1.41309647e-06, 0.99999553, 9.4587449e-11, 0, -5.58664226e-12, 0.999980271, -0.00628617778, 9.31322575e-10, 0.00628615683, 0.99997592),Alpha)
1637
			LH.C0 = clerp(LH.C0,CFrame.new(-0.500225782, -0.996483386, 0.0217089336, 0.994214952, 0.10624785, 0.0156119671, -0.106356524, 0.994308293, 0.00628523249, -0.014855314, -0.00790933147, 0.999856234),Alpha)
1638
			RH.C0 = clerp(RH.C0,CFrame.new(0.512264967, -0.996646643, 0.0152785685, 0.994214535, -0.106250875, 0.0156119233, 0.106164388, 0.994328737, 0.00628523249, -0.0161911994, -0.0045914636, 0.999856234),Alpha)
1639
			LS.C0 = clerp(LS.C0,CFrame.new(-1.44726694, 0.503729105, -0.00388534926, 0.993391156, 0.113691822, 0.0156119671, -0.113801189, 0.993483663, 0.00628523249, -0.0147956526, -0.00802037865, 0.999856234),Alpha)
1640
			RS.C0 = clerp(RS.C0,CFrame.new(1.41887283, 0.461011291, -0.0306870341, 0.0158389043, -0.994383454, -0.104623824, 0.00844715256, 0.104766518, -0.994461119, 0.999836862, 0.0148673952, 0.0100591201),Alpha)
1641
			NK.C0 = clerp(NK.C0,CFrame.new(8.88854265e-06, 1.49895382, -0.0144050419, 0.566473544, 0.0473791771, -0.82271415, 0.00518015958, 0.99812144, 0.0610474497, 0.824061036, -0.0388435796, 0.56516397),Alpha)
1642
			HW.C0 = clerp(HW.C0,CFrame.new(-0.11075747, -0.749606431, -0.415068656, -5.63569483e-06, -1.58343755e-06, 1.00000012, -0.500001132, 0.866024792, -1.44650403e-06, -0.866024852, -0.500001192, -5.67225288e-06)*CF.A(0,0,M.R(rad)),Alpha)
1643
		end
1644
		Chat (TauntDialogues[M.RNG(1,#TauntDialogues)])
1645
		for i = 0, 6, 0.1 do
1646
			swait()
1647
			local Alpha = .3
1648
			RJ.C0 = clerp(RJ.C0,CFrame.new(5.9524434e-13, 0.00629317388, 1.41309647e-06, 0.99999553, 9.4587449e-11, 0, -5.58664226e-12, 0.999980271, -0.00628617778, 9.31322575e-10, 0.00628615683, 0.99997592),Alpha)
1649
			LH.C0 = clerp(LH.C0,CFrame.new(-0.500225782, -0.996483386, 0.0217089336, 0.994214952, 0.10624785, 0.0156119671, -0.106356524, 0.994308293, 0.00628523249, -0.014855314, -0.00790933147, 0.999856234),Alpha)
1650
			RH.C0 = clerp(RH.C0,CFrame.new(0.512264967, -0.996646643, 0.0152785685, 0.994214535, -0.106250875, 0.0156119233, 0.106164388, 0.994328737, 0.00628523249, -0.0161911994, -0.0045914636, 0.999856234),Alpha)
1651
			LS.C0 = clerp(LS.C0,CFrame.new(-1.44726694, 0.503729105, -0.00388534926, 0.993391156, 0.113691822, 0.0156119671, -0.113801189, 0.993483663, 0.00628523249, -0.0147956526, -0.00802037865, 0.999856234),Alpha)
1652
			RS.C0 = clerp(RS.C0,CFrame.new(1.30098641, 0.458334863, -0.45630464, 0.97372508, 0.226236522, 0.0259280894, 0.00073058781, 0.110756524, -0.99384743, -0.227716282, 0.967752993, 0.10768114),Alpha)
1653
			NK.C0 = clerp(NK.C0,CFrame.new(8.21147114e-06, 1.49895406, -0.0144038275, 0.99988234, -0.000873879122, 0.0151748769, -9.55477299e-05, 0.997964978, 0.0637657493, -0.015199719, -0.0637597144, 0.997847497),Alpha)
1654
			HW.C0 = clerp(HW.C0,CFrame.new(-0.110763341, -0.749599576, -0.415068239, -6.5267086e-06, -2.71201134e-06, 1.00000012, -0.500001013, 0.866024971, -9.23871994e-07, -0.866024971, -0.500001013, -7.01099634e-06),Alpha)
1655
		end
1656
	end
1657
	Attack = false
1658
	NeutralAnims = true	
1659
end
1660
1661
Mouse.KeyDown:connect(function(k)
1662
	if(Attack)then return end
1663
	if(k == 'x')then Show_Mercy() end
1664
	if(k == 'z')then Banishing_Storm() end
1665
	if(k == 'b')then Spectral_Banish() end
1666
	if(k == 'c')then Teleport() end
1667
	if(k == 'v')then BGone() end
1668
	if(k == 't')then Taunt() end
1669
	
1670
end)
1671
Mouse.Button1Down:connect(function()
1672
	if(Attack)then return end
1673
	Banisher_Bullet()
1674
end)
1675
--// Wrap it all up \\--
1676
1677
Plr.Chatted:connect(function(m)
1678
	local succ,text = pcall(function() return game:service'Chat':FilterStringForBroadcast(m,Plr) end)
1679
	if(not succ)then
1680
		text = string.rep("_",#text)
1681
	end
1682
	Chat(text)
1683
end)
1684
while true do
1685
	swait()
1686
	Sine = Sine + Change
1687
	--[[if(not Music or not Music.Parent)then
1688
		local a = Music.TimePosition
1689
		Music = Sound(Char,MusicID,1,1,true,false,true)
1690
		Music.Name = 'Music'
1691
		Music.TimePosition = a
1692
	end
1693
	Music.Volume = 1
1694
	Music.Pitch = 1
1695
	Music.Playing = true]]
1696
	Sine = Sine + Change
1697
	local hitfloor,posfloor = workspace:FindPartOnRay(Ray.new(Root.CFrame.p,((CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector).unit * 4), Char)
1698
	local Walking = (math.abs(Root.Velocity.x) > 1 or math.abs(Root.Velocity.z) > 1)
1699
	local State = (Hum.PlatformStand and 'Paralyzed' or Hum.Sit and 'Sit' or not hitfloor and Root.Velocity.y < -1 and "Fall" or not hitfloor and Root.Velocity.y > 1 and "Jump" or hitfloor and Walking and "Walk" or hitfloor and "Idle")
1700
	if(State == 'Walk')then
1701
		local wsVal = 32 / (Hum.WalkSpeed/14)
1702
		local Alpha = math.min(.1 * (Hum.WalkSpeed/16),1)
1703
		Change = 2
1704
		RH.C1 = RH.C1:lerp(CF.N(0,1,0)*CF.N(0,0-.2*M.C(Sine/wsVal),0+.4*M.C(Sine/wsVal))*CF.A(M.R(25+45*M.C(Sine/wsVal))+-M.S(Sine/wsVal),0,0),Alpha)
1705
		LH.C1 = LH.C1:lerp(CF.N(0,1,0)*CF.N(0,0+.2*M.C(Sine/wsVal),0-.4*M.C(Sine/wsVal))*CF.A(M.R(25-45*M.C(Sine/wsVal))+M.S(Sine/wsVal),0,0),Alpha)
1706
	else
1707
		RH.C1 = RH.C1:lerp(CF.N(0,1,0),.1)
1708
		LH.C1 = LH.C1:lerp(CF.N(0,1,0),.1)
1709
	end	
1710
	if(NeutralAnims)then	
1711
		if(State == 'Idle')then
1712
			Change = .5
1713
			local Alpha = .1
1714
			RJ.C0 = clerp(RJ.C0,CFrame.new(5.95311994e-13, 0.00629388914+.2*M.C(Sine/20), 1.41759301e-06, 0.99999553, 9.4587449e-11, 0, -5.58664226e-12, 0.999980271, -0.00628617778, 9.31322575e-10, 0.00628615683, 0.99997592),Alpha)
1715
			LH.C0 = clerp(LH.C0,CFrame.new(-0.560905516, -0.984790266-.2*M.C(Sine/20), 0.0225828942, 0.997905374, 0.0627432317, 0.0156119671, -0.062847726, 0.998003423, 0.00628523249, -0.0151864393, -0.00725326827, 0.999856234),Alpha)
1716
			RH.C0 = clerp(RH.C0,CFrame.new(0.507978499, -0.98526901-.2*M.C(Sine/20), 0.0152739538, 0.995106399, -0.0975458771, 0.0156119671, 0.0974583924, 0.995219886, 0.00628523249, -0.016150441, -0.00473298226, 0.999856234),Alpha)
1717
			LS.C0 = clerp(LS.C0,CFrame.new(-0.997352481, 0.328557909+.1*M.C(Sine/20), 0.373372614, 0.726782799, -0.595508456, 0.342274755, 0.369578063, 0.759076476, 0.535924494, -0.578960299, -0.263003558, 0.771770597),Alpha)
1718
			RS.C0 = clerp(RS.C0,CFrame.new(1.35597444, 0.402479589+.1*M.C(Sine/20), 0.0100756176, 0.788939416, -0.614269078, 0.0156119671, 0.614255786, 0.78908211, 0.00628523249, -0.0161799639, 0.00463105366, 0.999856234),Alpha)
1719
			NK.C0 = clerp(NK.C0,CFrame.new(4.35163702e-06, 1.4989562, -0.0144046843, 0.99999553, 3.67523171e-07, -1.62050128e-07, -3.56434612e-07, 0.997964919, 0.0637686774, 1.8440187e-07, -0.0637684539, 0.997960329)*CF.A(M.R(-6*-M.C(Sine/20)),0,0),Alpha)
1720
			HW.C0 = clerp(HW.C0,CFrame.new(-0.110785089, -0.749598742, -0.415072441, 2.87592411e-06, 1.69873238e-06, 1.00000012, -0.500000358, 0.866025329, 0, -0.866025269, -0.500000358, 3.33799494e-06),Alpha)
1721
		elseif(State == 'Walk')then
1722
			local wsVal = 32 / (Hum.WalkSpeed/14)
1723
			local Alpha = math.min(.1 * (Hum.WalkSpeed/16),1)
1724
			RJ.C0 = RJ.C0:lerp(RJC0*CF.N(0,0-.15*M.C(Sine/(wsVal/2)),0)*CF.A(0,M.R(0-15*M.S(Sine/wsVal)/2),0),Alpha)
1725
			NK.C0 = NK.C0:lerp(NKC0,Alpha)
1726
			LH.C0 = LH.C0:lerp(LHC0,Alpha)
1727
			RH.C0 = RH.C0:lerp(RHC0,Alpha)
1728
			LS.C0 = LS.C0:lerp(LSC0*CF.N(0,0,0-.3*M.S(Sine/wsVal))*CF.A(M.R(0+45*M.S(Sine/wsVal)),0,M.R(-5)),Alpha)
1729
			RS.C0 = clerp(RS.C0,CFrame.new(1.35597444, 0.402479589, 0.0100756176, 0.788939416, -0.614269078, 0.0156119671, 0.614255786, 0.78908211, 0.00628523249, -0.0161799639, 0.00463105366, 0.999856234),Alpha)
1730
		elseif(State == 'Jump' or State == 'Fall')then
1731
			if(Walking)then
1732
				local Alpha = .1
1733
				RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
1734
				LH.C0 = clerp(LH.C0,CFrame.new(-0.497912645, -1.0987643, -0.0683324337, 0.999878228, 0.00860835519, 0.0130246133, -0.00010142161, 0.837816596, -0.545952022, -0.015611981, 0.545884132, 0.837715328),Alpha)
1735
				RH.C0 = clerp(RH.C0,CFrame.new(0.499978393, -1.16382337, 0.109293163, 0.999878228, -0.0120433727, 0.00993486121, -0.00010142161, 0.631323814, 0.775519371, -0.015611981, -0.775425911, 0.631245613),Alpha)
1736
				LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
1737
				RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
1738
				NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
1739
			else
1740
				local Alpha = .1
1741
				RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
1742
				LH.C0 = clerp(LH.C0,CFrame.new(-0.504374504, -0.291219354, -0.487436086, 0.999878228, -0.00438931212, 0.0149825988, -0.00010142161, 0.957819223, 0.287371844, -0.015611981, -0.287338346, 0.957701981),Alpha)
1743
				RH.C0 = clerp(RH.C0,CFrame.new(0.453094482, -0.871358454, 0.0898642987, 0.985589385, -0.168456957, 0.0153662469, 0.162863791, 0.969548643, 0.182895929, -0.0457084104, -0.177757636, 0.983012319),Alpha)
1744
				LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
1745
				RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
1746
				NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
1747
			end
1748
		elseif(State == 'Paralyzed')then
1749
			-- paralyzed
1750
		elseif(State == 'Sit')then
1751
			-- sit
1752
		end
1753
	end
1754
end