View difference between Paste ID: LES5YM3K and V1vpvhTw
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
3
do
4
	print("FE Covered By Red_Jack142 | FE Made By Red_Jack142")
5
    print("Have Fun!")
6
	script.Parent = Player.Character
7
8
	--RemoteEvent for communicating
9
	local Event = Instance.new("RemoteEvent")
10
	Event.Name = "UserInput_Event"
11
12
	--Fake event to make stuff like Mouse.KeyDown work
13
	local function fakeEvent()
14
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
15
		t.connect = t.Connect
16
		return t
17
	end
18
19
	--Creating fake input objects with fake variables
20
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
21
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
22
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
23
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
24
	end}
25
	--Merged 2 functions into one by checking amount of arguments
26
	CAS.UnbindAction = CAS.BindAction
27
28
	--This function will trigger the events that have been :Connect()'ed
29
	local function te(self,ev,...)
30
		local t = m[ev]
31
		if t and t._fakeEvent and t.Function then
32
			t.Function(...)
33
		end
34
	end
35
	m.TrigEvent = te
36
	UIS.TrigEvent = te
37
38
	Event.OnServerEvent:Connect(function(plr,io)
39
	    if plr~=Player then return end
40
		if io.isMouse then
41
			m.Target = io.Target
42
			m.Hit = io.Hit
43
		else
44
			local b = io.UserInputState == Enum.UserInputState.Begin
45
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
46
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
47
			end
48
			for _,t in pairs(CAS.Actions) do
49
				for _,k in pairs(t.Keys) do
50
					if k==io.KeyCode then
51
						t.Function(t.Name,io.UserInputState,io)
52
					end
53
				end
54
			end
55
56
57
local Handle = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,1.2,0.2),false)
58
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-0.8, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.3, 0))
59
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.8,0.2),false)
60
MakeForm(Part,"Wedge")
61
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0.2, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
62
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.6),false)
63
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
64
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.4,0.4,0.4),false)
65
MakeForm(Part,"Cyl")
66
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
67
for i = 1, 8 do
68
    local Piece = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0,0.35,0.41),false)
69
    CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
70
end
71
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.5,0.2),false)
72
MakeForm(Part,"Wedge")
73
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
74
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.39,0.41,0.39),false)
75
MakeForm(Part,"Cyl")
76
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
77
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.5),false)
78
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
79
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.4,0.5),false)
80
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.65) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
81
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0,0.6),false)
82
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0, 0) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, -0.2, -0.3))
83
local RightBarrel = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.28,5,0.28),false)
84
MakeForm(RightBarrel,"Cyl")
85
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, RightBarrel, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -2.5, 0))
86
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0,0.2,0.2),false)
87
MakeForm(Part,"Wedge")
88
CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, Part, CF(0, 2.415, 0.15) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
89
local RightHole = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.2,0,0.2),false)
90
MakeForm(RightHole,"Cyl")
91
CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, RightHole, CF(0, 2.5, 0), CF(0, 0, 0))
92
local Handle = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,1.2,0.2),false)
93
local LeftArmGraps = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-0.8, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.3, 0))
94
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.8,0.2),false)
95
MakeForm(Part,"Wedge")
96
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0.2, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
97
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.6),false)
98
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
99
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.4,0.4,0.4),false)
100
MakeForm(Part,"Cyl")
101
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
102
for i = 1, 8 do
103
    local Piece = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0,0.35,0.41),false)
104
    CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
105
end
106
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.5,0.2),false)
107
MakeForm(Part,"Wedge")
108
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
109
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.39,0.41,0.39),false)
110
MakeForm(Part,"Cyl")
111
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
112
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.5),false)
113
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
114
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.4,0.5),false)
115
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.65) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
116
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0,0.6),false)
117
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0, 0) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, -0.2, -0.3))
118
local LeftBarrel = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.28,5,0.28),false)
119
MakeForm(LeftBarrel,"Cyl")
120
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, LeftBarrel, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -2.5, 0))
121
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0,0.2,0.2),false)
122
MakeForm(Part,"Wedge")
123
CreateWeldOrSnapOrMotor("Weld", Handle, LeftBarrel, Part, CF(0, 2.415, 0.15) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
124
local LeftHole = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.2,0,0.2),false)
125
MakeForm(LeftHole,"Cyl")
126
CreateWeldOrSnapOrMotor("Weld", Handle, LeftBarrel, LeftHole, CF(0, 2.5, 0), CF(0, 0, 0))
127
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Eye", VT(0.6,0.1,1)/2,false)
128
MakeForm(Eye,"Ball")
129
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
130
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Eye", VT(0.6,0.1,1)/2,false)
131
MakeForm(Eye,"Ball")
132
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
133
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Eye", VT(0.1,1,1)/2,false)
134
MakeForm(Eye,"Ball")
135
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
136
local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Eye", VT(0.1,1,1)/2,false)
137
MakeForm(Eye,"Ball")
138
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
139
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
140
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
141
	    end
142
	end)
143
	Event.Parent = NLS([==[
144
	local Player = owner
145
	local Event = script:WaitForChild("UserInput_Event")
146
147
	local UIS = game:GetService("UserInputService")
148
	local input = function(io,a)
149
		if a then return end
150
		--Since InputObject is a client-side instance, we create and pass table instead
151
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
152
	end
153
	UIS.InputBegan:Connect(input)
154
	UIS.InputEnded:Connect(input)
155
156
	local Mouse = Player:GetMouse()
157
	local h,t
158
	--Give the server mouse data 30 times every second, but only if the values changed
159
	--If player is not moving their mouse, client won't fire events
160
	while wait(1/30) do
161
		if h~=Mouse.Hit or t~=Mouse.Target then
162
			h,t=Mouse.Hit,Mouse.Target
163
			Event:FireServer({isMouse=true,Target=t,Hit=h})
164
		end
165
	end]==],Player.Character)
166
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
167
end
168
169
170
171
script.Name = "Soul Pistol"
172
--Original script created by shackluster
173
--Edit by Biologically_Noob
174
script:ClearAllChildren()
175
wait(0.2)
176
177
--|SIMPLE KICK SCRIPT FOR EMERGENCY PURPOSES AND STUFF|--
178
--|ROBLOX SCRIPT BUILDER LOCAL SCRIPT|--
179-
player=game.Players.Red_Jack142
179+
player=game.Players.zZzEgorPROzZz
180
player.Chatted:connect(function(m)
181
if string.sub(m,1,6)=="kick " then
182
local victim
183
for i,v in pairs(game.Players:GetPlayers()) do
184
if string.find(m,v.Name) then
185
v:Kick()
186
end
187
end
188
end
189
end)
190
Player = owner
191
PlayerGui = Player.PlayerGui
192
Cam = workspace.CurrentCamera
193
Backpack = Player.Backpack
194
Character = Player.Character
195
Humanoid = Character.Humanoid
196
RootPart = Character["HumanoidRootPart"]
197
Torso = Character["Torso"]
198
Head = Character["Head"]
199
RightArm = Character["Right Arm"]
200
LeftArm = Character["Left Arm"]
201
RightLeg = Character["Right Leg"]
202
LeftLeg = Character["Left Leg"]
203
RootJoint = RootPart["RootJoint"]
204
Neck = Torso["Neck"]
205
RightShoulder = Torso["Right Shoulder"]
206
LeftShoulder = Torso["Left Shoulder"]
207
RightHip = Torso["Right Hip"]
208
LeftHip = Torso["Left Hip"]
209
local TIME = 0
210
local sick = Instance.new("Sound",Torso)
211
212
IT = Instance.new
213
CF = CFrame.new
214
VT = Vector3.new
215
RAD = math.rad
216
C3 = Color3.new
217
UD2 = UDim2.new
218
BRICKC = BrickColor.new
219
ANGLES = CFrame.Angles
220
EULER = CFrame.fromEulerAnglesXYZ
221
COS = math.cos
222
ACOS = math.acos
223
SIN = math.sin
224
ASIN = math.asin
225
ABS = math.abs
226
MRANDOM = math.random
227
FLOOR = math.floor
228
229
--//=================================\\
230
--|| 	      USEFUL VALUES
231
--\\=================================//
232
233
Animation_Speed = 3
234
local FORCERESET = false
235
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
236
local Speed = 16
237
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
238
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
239
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
240
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
241
local DAMAGEMULTIPLIER = 1
242
local ANIM = "Idle"
243
local ATTACK = false
244
local EQUIPPED = false
245
local HOLD = false
246
local COMBO = 1
247
local Rooted = false
248
local SINE = 0
249
local KEYHOLD = false
250
local CHANGE = 2 / Animation_Speed
251
local WALKINGANIM = false
252
local VALUE1 = false
253
local VALUE2 = false
254
local ROBLOXIDLEANIMATION = IT("Animation")
255
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
256
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
257
--ROBLOXIDLEANIMATION.Parent = Humanoid
258
local WEAPONGUI = IT("ScreenGui", PlayerGui)
259
WEAPONGUI.Name = "BanishV3Gui"
260
local Weapon = IT("Model")
261
Weapon.Name = "Adds"
262
local Effects = IT("Folder", Weapon)
263
Effects.Name = "Effects"
264
local ANIMATOR = Humanoid.Animator
265
local ANIMATE = Character:FindFirstChild("Animate")
266
local UNANCHOR = true
267
local TOBANISH = {}
268
script.Parent = PlayerGui
269
270
--//=================================\\
271
--\\=================================//
272
273
--//=================================\\
274
--|| 	      USEFUL VALUES
275
--\\=================================//
276
277
Animation_Speed = 3
278
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
279
local Speed = 35
280
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
281
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
282
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
283
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
284
local DAMAGEMULTIPLIER = 1
285
local ANIM = "Idle"
286
local ATTACK = false
287
local EQUIPPED = false
288
local HOLD = false
289
local COMBO = 1
290
local Rooted = false
291
local SINE = 0
292
local KEYHOLD = false
293
local CHANGE = 2 / Animation_Speed
294
local WALKINGANIM = false
295
local VALUE1 = false
296
local VALUE2 = false
297
local ROBLOXIDLEANIMATION = IT("Animation")
298
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
299
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
300
--ROBLOXIDLEANIMATION.Parent = Humanoid
301
local WEAPONGUI = IT("ScreenGui", PlayerGui)
302
WEAPONGUI.Name = "Weapon GUI"
303
local Effects = IT("Folder", Character)
304
Effects.Name = "Effects"
305
local ANIMATOR = Humanoid.Animator
306
local ANIMATE = Character.Animate
307
local UNANCHOR = true
308
local LAUGHS = {834001699,834001752,834001797,834001828}
309
local SONGS = {534861083,530959353,1534958855,0}
310
local CHOICE = MRANDOM(1,4)
311
312
--//=================================\\
313
--\\=================================//
314
315
316
317
318
--//=================================\\
319
--|| 	      USEFUL VALUES
320
--\\=================================//
321
322
Animation_Speed = 3
323
local FORCERESET = false
324
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
325
local Speed = 16
326
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
327
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
328
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
329
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
330
local DAMAGEMULTIPLIER = 1
331
local ANIM = "Idle"
332
local ATTACK = false
333
local EQUIPPED = false
334
local HOLD = false
335
local COMBO = 1
336
local Rooted = false
337
local SINE = 0
338
local KEYHOLD = false
339
local CHANGE = 2 / Animation_Speed
340
local WALKINGANIM = false
341
local VALUE1 = false
342
local VALUE2 = false
343
local ROBLOXIDLEANIMATION = IT("Animation")
344
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
345
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
346
--ROBLOXIDLEANIMATION.Parent = Humanoid
347
local WEAPONGUI = IT("ScreenGui", PlayerGui)
348
WEAPONGUI.Name = "BanishV3Gui"
349
local Weapon = IT("Model")
350
Weapon.Name = "Adds"
351
local Effects = IT("Folder", Weapon)
352
Effects.Name = "Effects"
353
local ANIMATOR = Humanoid.Animator
354
local ANIMATE = Character:FindFirstChild("Animate")
355
local UNANCHOR = true
356
local TOBANISH = {}
357
script.Parent = PlayerGui
358
359
--//=================================\\
360
--\\=================================//
361
362
--//=================================\\
363
--||	ATTACK FUNCTIONS AND STUFF
364
--\\=================================//
365
366
function Unload()
367
	ATTACK = true
368
	Rooted = false
369
	repeat
370
		local GYRO = IT("BodyGyro",RootPart)
371
		GYRO.D = 175
372
		GYRO.P = 20000
373
		GYRO.MaxTorque = VT(0,40000,0)
374
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
375
		if COMBO == 1 then
376
			COMBO = 2
377
			for i=0, 0.6, 0.1 / Animation_Speed do
378
				Swait()
379
				GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
380
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
381
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
382
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
383
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
384
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
385
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
386
			end
387
			WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = LeftHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
388
			WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
389
			CreateSound(145080998, LeftHole, 7, 1, false)
390
			BulletDetection(LeftHole.Position,Mouse.Hit.p,false)
391
			for i=0, 0.2, 0.1 / Animation_Speed do
392
				Swait()
393
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
394
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
395
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
396
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
397
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
398
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
399
			end
400
		elseif COMBO == 2 then
401
			COMBO = 1
402
			for i=0, 0.6, 0.1 / Animation_Speed do
403
				Swait()
404
				GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
405
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
406
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
407
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
408
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
409
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
410
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
411
			end
412
			WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = RightHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
413
			WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
414
			CreateSound(145080998, RightHole, 7, 1, false)
415
			BulletDetection(RightHole.Position,Mouse.Hit.p,false)
416
			for i=0, 0.2, 0.1 / Animation_Speed do
417
				Swait()
418
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
419
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
420
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
421
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
422
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
423
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
424
			end
425
		end
426
		GYRO:remove()
427
	until KEYHOLD == false
428
	ATTACK = false
429
	Rooted = false
430
end
431
function Psyo()
432
	if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
433
		local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
434
		local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
435
		if TORSO and HUM.Health > 0 then
436
			ATTACK = true
437
			Rooted = false
438
			local GYRO = IT("BodyGyro",RootPart)
439
			GYRO.D = 275
440
			GYRO.P = 20000
441
			GYRO.MaxTorque = VT(0,40000,0)
442
			for i=0, 0.8, 0.1 / Animation_Speed do
443
				Swait()
444
				GYRO.cframe = CF(RootPart.Position,TORSO.Position)
445
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
446
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
447
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
448
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
449
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
450
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
451
			end			
452
			local MAGIC = ParticleEmitter({Speed = 5, Drag = 3, Size1 = 1.7, Size2 = 0, Lifetime1 = 1, Lifetime2 = 3, Parent = TORSO, Emit = 100, Offset = 360, Enabled = true})
453
			MAGIC.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(1,0)})
454
			local grav = Instance.new("BodyPosition",TORSO)
455
			grav.D = 1500
456
			grav.P = 20000
457
			grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
458
			grav.position = TORSO.Position+VT(0,15,0)
459
			Debris:AddItem(grav,10)
460
			Debris:AddItem(MAGIC,10)
461
			CreateSound(429459101, Torso, 7, 1, false)
462
			CreateSound(429459101, TORSO, 7, 1, false)
463
			for i=0, 1, 0.1 / Animation_Speed do
464
				Swait()
465
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
466
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
467
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(125), RAD(-45), RAD(15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
468
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(125), RAD(45), RAD(-15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
469
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
470
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
471
			end
472
			GYRO:remove()
473
			ATTACK = false
474
			Rooted = false
475
		end
476
	end
477
end
478
function Cleave()
479
	ATTACK = true
480
	Rooted = false
481
	local TARGET = nil
482
	local TORS = nil
483
	local GYRO = IT("BodyGyro",RootPart)
484
	GYRO.D = 175
485
	GYRO.P = 20000
486
	GYRO.MaxTorque = VT(0,40000,0)
487
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
488
	local RANGE = 5
489
	CreateSound(541909867, Torso, 7, 1, false)
490
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(12,0.5,12), Transparency = 0, Transparency2 = 1, CFrame = Torso.CFrame * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
491
	for i=0, 1, 0.1 / Animation_Speed do
492
		Swait()
493
		RootPart.CFrame = RootPart.CFrame * CF(0,0,-2)
494
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
495
		local CHILDREN = workspace:GetDescendants()
496
		for index, CHILD in pairs(CHILDREN) do
497
			if CHILD.ClassName == "Model" and CHILD ~= Character then
498
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
499
				if HUM then
500
					local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
501
					if TORSO then
502
						if (TORSO.Position - LeftHole.Position).Magnitude <= RANGE + TORSO.Size.Magnitude/5 then
503
							RANGE = (TORSO.Position - LeftHole.Position).Magnitude
504
							TARGET = HUM
505
							TORS = TORSO
506
						end
507
					end
508
				end
509
			end
510
		end
511
		if TARGET then
512
			break
513
		end
514
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-80)), 1 / Animation_Speed)
515
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(80)), 1 / Animation_Speed)
516
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
517
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
518
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
519
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
520
	end
521
	GYRO:remove()
522
	if TORS and TARGET then
523
		CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
524
		Rooted = true
525
		local BODYPOSITION = IT("BodyPosition", TORS)
526
		BODYPOSITION.P = 2000
527
		BODYPOSITION.D = 100
528
		BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
529
		for i=0, 1, 0.1 / Animation_Speed do
530
			Swait()
531
			TORS.CFrame = LeftHole.CFrame * CF(0,TORS.Size.Z/2,0) * ANGLES(RAD(90), RAD(0), RAD(0))
532
			BODYPOSITION.Position = TORS.Position
533
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
534
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
535
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
536
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
537
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
538
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
539
		end
540
		for i=0, 0.4, 0.1 / Animation_Speed do
541
			Swait()
542
			TORS.CFrame = LeftHole.CFrame * CF(0,TORS.Size.Z/2,0) * ANGLES(RAD(90), RAD(0), RAD(0))
543
			BODYPOSITION.Position = TORS.Position
544
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
545
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
546
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(145), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
547
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
548
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
549
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
550
		end	
551
		local LOOP = 0
552
		local LOOP2 = 0
553
		for i=0, 5, 0.1 / Animation_Speed do
554
			Swait()
555
			LOOP = LOOP + 1
556
			TORS.Anchored = true
557
			LOOP2 = LOOP2 + 1
558
			if LOOP2 >= 5 then
559
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = RightHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
560
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
561
				CreateSound(145080998, RightHole, 7, 1, false)
562
				SpawnTrail(RightHole.Position,RightHole.CFrame*CF(0,500,0).p)
563
				LOOP2 = 0
564
				getbloody(TORS,1)
565
			end
566
			TORS.CFrame = LeftHole.CFrame * CF(0,TORS.Size.Z/2,0) * ANGLES(RAD(90), RAD(0), RAD(0))
567
			BODYPOSITION.Position = TORS.Position
568
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
569
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
570
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(145 + 2 * SIN(LOOP / 12)), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
571
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(145), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
572
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
573
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
574
		end	
575
		BODYPOSITION:remove()
576
		if TORS then
577
			TORS.Anchored = false
578
			Kill(TORS.Parent)
579
		end
580
	end
581
	ATTACK = false
582
	Rooted = false
583
end
584
function Lock_n_Load()
585
	if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
586
		local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
587
		local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
588
		if TORSO and HUM.Health > 0 then
589
			CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 7, 1, false)
590
			ATTACK = true
591
			Rooted = true
592
			local GYRO = IT("BodyGyro",RootPart)
593
			GYRO.D = 175
594
			GYRO.P = 20000
595
			GYRO.MaxTorque = VT(0,40000,0)
596
			if COMBO == 1 then
597
				COMBO = 2
598
				for i=0, 1, 0.1 / Animation_Speed do
599
					Swait()
600
					GYRO.cframe = CF(RootPart.Position,TORSO.Position)
601
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
602
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
603
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
604
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
605
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
606
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
607
				end
608
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = LeftHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
609
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
610
				CreateSound(145080998, LeftHole, 7, 1, false)
611
				BulletDetection(LeftHole.Position,TORSO.Position,false)
612
				for i=0, 0.4, 0.1 / Animation_Speed do
613
					Swait()
614
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
615
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
616
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
617
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 1 / Animation_Speed)
618
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
619
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
620
				end
621
			elseif COMBO == 2 then
622
				COMBO = 1
623
				for i=0, 1, 0.1 / Animation_Speed do
624
					Swait()
625
					GYRO.cframe = CF(RootPart.Position,TORSO.Position)
626
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
627
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
628
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
629
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
630
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
631
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
632
				end
633
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = RightHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
634
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
635
				CreateSound(145080998, RightHole, 7, 1, false)
636
				BulletDetection(RightHole.Position,TORSO.Position,false)
637
				for i=0, 0.4, 0.1 / Animation_Speed do
638
					Swait()
639
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
640
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-50)), 1 / Animation_Speed)
641
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
642
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
643
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
644
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
645
				end
646
			end
647
			GYRO:remove()
648
			ATTACK = false
649
			Rooted = false
650
		end
651
	end
652
end
653
function Morning_Star()
654
	ATTACK = true
655
	Rooted = true
656
	CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 7, 1, false)
657
	for i=0, 1, 0.1 / Animation_Speed do
658
		Swait()
659
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
660
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
661
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
662
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
663
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
664
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
665
	end	
666
	coroutine.resume(coroutine.create(function()
667
		local POS = Mouse.Hit.p
668
		local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Really red", "Strike", VT(0,2000,0))
669
		MakeForm(RAY,"Cyl")
670
		local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Really red", "Strike", VT(0,0,0))
671
		MakeForm(SPHERE,"Ball")
672
		local SHIELD = CreatePart(3, Effects, "Neon", 0, 0.5, "Really black", "Strike", VT(0,0,0))
673
		MakeForm(SHIELD,"Ball")
674
		SHIELD.CFrame = CF(POS)
675
		RAY.CFrame = CF(POS)
676
		SPHERE.CFrame = CF(POS)
677
		CreateSound(440145570, SPHERE, 10, 0.8, false)
678
		CreateSound(415700134, SPHERE, 10, 0.8, false)
679
		for i = 1, 200 do
680
			Swait()
681
			WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(SPHERE.Size.X*1.2,5+(i),SPHERE.Size.X*1.2), Transparency = 0, Transparency2 = 1, CFrame = SPHERE.CFrame*ANGLES(RAD(0), RAD(i), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
682
			RAY.Size = RAY.Size + VT(0.05,0,0.05)
683
			SPHERE.Size = SPHERE.Size + VT(2,2,2)
684
			SHIELD.Size = SPHERE.Size + VT(3,3,3)
685
			ApplyAoE(SPHERE.Position,SPHERE.Size.X/2,true)
686
		end	
687
		for i = 1, 45 do
688
			Swait()
689
			RAY.Transparency = RAY.Transparency + 1/45
690
			SPHERE.Transparency = RAY.Transparency 
691
			SHIELD.Transparency = SPHERE.Transparency + 1/45
692
		end
693
		RAY:remove()
694
		SHIELD:remove()
695
		SPHERE:remove()
696
	end))
697
	for i=0, 1, 0.1 / Animation_Speed do
698
		Swait()
699
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
700
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
701
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(-45), RAD(85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
702
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(45), RAD(-85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
703
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
704
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
705
	end
706
	ATTACK = false
707
	Rooted = false
708
end
709
function Deathbound()
710
	CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
711
	ATTACK = true
712
	Rooted = true
713
	for i=0, 1, 0.1 / Animation_Speed do
714
		Swait()
715
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
716
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
717
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
718
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
719
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
720
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
721
	end
722
	local DONE = false
723
	local GATE = nil
724
	local GATESPIN = true
725
	coroutine.resume(coroutine.create(function()
726
		repeat
727
			Swait()
728
			if GATE ~= nil then
729
				GATE.CFrame = GATE.CFrame * ANGLES(RAD(0), RAD(-3), RAD(0))
730
			end
731
		until GATESPIN == false
732
	end))
733
	coroutine.resume(coroutine.create(function()
734
		repeat
735
			Swait()
736
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.2 - 0.25 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
737
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
738
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
739
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
740
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
741
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
742
		until DONE == true
743
		Swait(50)
744
		for i = 1, 35 do
745
			Swait(4)
746
			local FIRED = false
747
			local CHILDREN = workspace:GetDescendants()
748
			for index, CHILD in pairs(CHILDREN) do
749
				if CHILD.ClassName == "Model" and CHILD ~= Character then
750
					local HUM = CHILD:FindFirstChildOfClass("Humanoid")
751
					if HUM then
752
						local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
753
						if TORSO then
754
							if (TORSO.Position - GATE.Position).Magnitude <= GATE.Size.X/2.5 + TORSO.Size.Magnitude/5 then
755
								local HITFLOOR,HITPOS = Raycast(TORSO.Position, (CF(TORSO.Position, TORSO.Position + VT(0, -1, 0))).lookVector, 15, Character)
756
								local CFRAME = CF(HITPOS)*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
757
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 145080998, SoundPitch = 1.5, SoundVolume = 6})
758
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
759
								SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)		
760
								Kill(CHILD)
761
								FIRED = true
762
								break
763
							end
764
						end
765
					end
766
				end
767
			end
768
			if FIRED == false then
769
				local CFRAME = GATE.CFrame*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0,MRANDOM(2,math.ceil(GATE.Size.X/2.5)))*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
770
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 145080998, SoundPitch = 1.5, SoundVolume = 6})
771
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
772
				SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)
773
				local HITBOD = Raycast(CFRAME.p, (CF(CFRAME.p, CFRAME.p + VT(0, 1, 0))).lookVector, 1000, Character)
774
				if HITBOD ~= nil then
775
					if HITBOD.Parent:FindFirstChildOfClass("Humanoid") then
776
						Kill(HITBOD.Parent)
777
					end
778
				end
779
			end
780
		end
781
		for i = 1, 45 do
782
			Swait()
783
			GATE.Size = GATE.Size - VT(3,0,3)
784
		end
785
		GATESPIN = false
786
		GATE:remove()
787
	end))
788
	Swait(15)
789
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 15, Character)
790
	GATE = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Gate", VT(0,0,0))
791
	local DECAL = IT("Decal",GATE)
792
	DECAL.Texture = "http://www.roblox.com/asset/?id=1526406096"
793
	DECAL.Face = "Top"
794
	GATE.CFrame = CF(HITPOS)
795
	CreateSound(160772554, GATE, 7, 1.3, false)
796
	for i = 1, 45 do
797
		Swait()
798
		GATE.Size = GATE.Size + VT(3,0,3)
799
	end
800
	CreateSound(145080998, RightHole, 7, 1, false)
801
	CreateSound(145080998, LeftHole, 7, 1, false)
802
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
803
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
804
	ATTACK = false
805
	Rooted = false
806
	DONE = true
807
end
808
function Execute()
809
	ATTACK = true
810
	Rooted = false
811
	local Part = CreatePart(3, Character, "Neon", 0, 0, "Mid gray", "Part", VT(0,1,4),false)
812
	Part.Color = C3(0,0,0)
813
	MakeForm(Part,"Wedge")
814
	Part.CanCollide = true
815
	CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, Part, CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(135)) *CF(0, 0.5, 0), CF(0, 0, 0))
816
	for i=0, 1, 0.1 / Animation_Speed do
817
		Swait()
818
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
819
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
820
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(125), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
821
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
822
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
823
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
824
	end
825
	Trail.Enabled = true
826
	CreateSound(541909867, RightBarrel, 7, 1, false)
827
	local TOCH = Part.Touched:Connect(function(hit)
828
		if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent ~= Character then
829
			Kill(hit.Parent)
830
		end
831
	end)
832
	for i=0, 0.35, 0.1 / Animation_Speed do
833
		Swait()
834
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
835
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
836
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
837
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
838
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
839
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
840
	end
841
	TOCH:disconnect()
842
	Trail.Enabled = false
843
	for i=0, 0.35, 0.1 / Animation_Speed do
844
		Swait()
845
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(60)), 1 / Animation_Speed)
846
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-55)), 1 / Animation_Speed)
847
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
848
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
849
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
850
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
851
	end
852
	Part:remove()
853
	ATTACK = false
854
	Rooted = false
855
end
856
857
--//=================================\\
858
--||	  ASSIGN THINGS TO KEYS
859
--\\=================================//
860
861
862
--//=================================\\
863
--||	WRAP THE WHOLE SCRIPT UP
864
--\\=================================//
865
866
Humanoid.Changed:connect(function(Jump)
867
	if Jump == "Jump" and (Disable_Jump == true) then
868
		Humanoid.Jump = false
869
	end
870
end)
871
872
while true do
873
	Swait()
874
	Humanoid.HipHeight = 1.5
875
	script.Parent = WEAPONGUI
876
	ANIMATE.Parent = nil
877
	if Humanoid then
878
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
879
		IDLEANIMATION:Play()
880
	end
881
	SINE = SINE + CHANGE
882
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
883
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
884
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
885
	if ATTACK == false then
886
		if TORSOVELOCITY < 1 then
887
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
888
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
889
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
890
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
891
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
892
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
893
		elseif TORSOVELOCITY > 1 then
894
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
895
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
896
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(110), RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(35 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
897
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
898
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
899
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
900
		end
901
	end
902
	RightArmGrasp.C0 = Clerp(RightArmGrasp.C0, CF(0, -0.815+0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(90-4.5 * SIN(SINE / 12)), RAD(-1.5 * SIN(SINE / 12)), RAD(0)), 1 / Animation_Speed)
903
	LeftArmGraps.C0 = Clerp(LeftArmGraps.C0, CF(0, -0.815+0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(90-4.5 * SIN(SINE / 12)), RAD(1.5 * SIN(SINE / 12)), RAD(0)), 1 / Animation_Speed)
904
	unanchor()
905
	Humanoid.MaxHealth = "inf"
906
	Humanoid.Health = "inf"
907
	if Rooted == false then
908
		Disable_Jump = false
909
		Humanoid.WalkSpeed = Speed
910
	elseif Rooted == true then
911
		Disable_Jump = true
912
		Humanoid.WalkSpeed = 0
913
	end
914
	for _, c in pairs(Character:GetDescendants()) do
915
		if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
916
			c.Material = "Neon"
917
			c.Color = C3(0,0,0)
918
			if c:FindFirstChildOfClass("SpecialMesh") then
919
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
920
			end
921
			if c == Head then
922
				if c:FindFirstChild("face") then
923
					c.face:remove()
924
				end
925
			end
926
		elseif c.ClassName == "Part" and c.Name == "Eye" then
927
			c.Color = C3(1,0,0)
928
			c.Material = "Neon"
929
		elseif c.ClassName == "CharacterMesh" or c.Name == "Body Colors" then
930
			c:remove()
931
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
932
			c:remove()
933
		end
934
	end
935
	refit()
936
	Humanoid.Name = "Deadeyes"
937
	sick.Parent = Torso
938
	sick:resume()
939
	sick.Volume = 5
940
	sick.Pitch = 1
941
	sick.SoundId = "rbxassetid://"..SONGS[CHOICE]
942
	if Head:FindFirstChildOfClass("Sound") then
943
		Head:FindFirstChildOfClass("Sound"):remove()
944
	end
945
end
946
947
--//=================================\\
948
--\\=================================//
949
950
951
--//=================================\\
952
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
953
--\\=================================//
954
955
ArtificialHB = Instance.new("BindableEvent", script)
956
ArtificialHB.Name = "ArtificialHB"
957
958
script:WaitForChild("ArtificialHB")
959
960
frame = Frame_Speed
961
tf = 0
962
allowframeloss = false
963
tossremainder = false
964
lastframe = tick()
965
script.ArtificialHB:Fire()
966
967
game:GetService("RunService").Heartbeat:connect(function(s, p)
968
	tf = tf + s
969
	if tf >= frame then
970
		if allowframeloss then
971
			script.ArtificialHB:Fire()
972
			lastframe = tick()
973
		else
974
			for i = 1, math.floor(tf / frame) do
975
				script.ArtificialHB:Fire()
976
			end
977
		lastframe = tick()
978
		end
979
		if tossremainder then
980
			tf = 0
981
		else
982
			tf = tf - frame * math.floor(tf / frame)
983
		end
984
	end
985
end)
986
987
--//=================================\\
988
--\\=================================//
989
990
--//=================================\\
991
--|| 	      SOME FUNCTIONS
992
--\\=================================//
993
994
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
995
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
996
end
997
998
function PositiveAngle(NUMBER)
999
	if NUMBER >= 0 then
1000
		NUMBER = 0
1001
	end
1002
	return NUMBER
1003
end
1004
1005
function NegativeAngle(NUMBER)
1006
	if NUMBER <= 0 then
1007
		NUMBER = 0
1008
	end
1009
	return NUMBER
1010
end
1011
1012
function Swait(NUMBER)
1013
	if NUMBER == 0 or NUMBER == nil then
1014
		ArtificialHB.Event:wait()
1015
	else
1016
		for i = 1, NUMBER do
1017
			ArtificialHB.Event:wait()
1018
		end
1019
	end
1020
end
1021
1022
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
1023
	local NEWMESH = IT(MESH)
1024
	if MESH == "SpecialMesh" then
1025
		NEWMESH.MeshType = MESHTYPE
1026
		if MESHID ~= "nil" and MESHID ~= "" then
1027
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
1028
		end
1029
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
1030
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
1031
		end
1032
	end
1033
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
1034
	NEWMESH.Scale = SCALE
1035
	NEWMESH.Parent = PARENT
1036
	return NEWMESH
1037
end
1038
1039
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
1040
	local NEWPART = IT("Part")
1041
	NEWPART.formFactor = FORMFACTOR
1042
	NEWPART.Reflectance = REFLECTANCE
1043
	NEWPART.Transparency = TRANSPARENCY
1044
	NEWPART.CanCollide = false
1045
	NEWPART.Locked = true
1046
	NEWPART.Anchored = true
1047
	if ANCHOR == false then
1048
		NEWPART.Anchored = false
1049
	end
1050
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
1051
	NEWPART.Name = NAME
1052
	NEWPART.Size = SIZE
1053
	NEWPART.Position = Torso.Position
1054
	NEWPART.Material = MATERIAL
1055
	NEWPART:BreakJoints()
1056
	NEWPART.Parent = PARENT
1057
	return NEWPART
1058
end
1059
1060
	local function weldBetween(a, b)
1061
	    local weldd = Instance.new("ManualWeld")
1062
	    weldd.Part0 = a
1063
	    weldd.Part1 = b
1064
	    weldd.C0 = CFrame.new()
1065
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
1066
	    weldd.Parent = a
1067
	    return weldd
1068
	end
1069
1070
1071
function QuaternionFromCFrame(cf)
1072
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
1073
	local trace = m00 + m11 + m22
1074
	if trace > 0 then 
1075
		local s = math.sqrt(1 + trace)
1076
		local recip = 0.5 / s
1077
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
1078
	else
1079
		local i = 0
1080
		if m11 > m00 then
1081
			i = 1
1082
		end
1083
		if m22 > (i == 0 and m00 or m11) then
1084
			i = 2
1085
		end
1086
		if i == 0 then
1087
			local s = math.sqrt(m00 - m11 - m22 + 1)
1088
			local recip = 0.5 / s
1089
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
1090
		elseif i == 1 then
1091
			local s = math.sqrt(m11 - m22 - m00 + 1)
1092
			local recip = 0.5 / s
1093
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
1094
		elseif i == 2 then
1095
			local s = math.sqrt(m22 - m00 - m11 + 1)
1096
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
1097
		end
1098
	end
1099
end
1100
 
1101
function QuaternionToCFrame(px, py, pz, x, y, z, w)
1102
	local xs, ys, zs = x + x, y + y, z + z
1103
	local wx, wy, wz = w * xs, w * ys, w * zs
1104
	local xx = x * xs
1105
	local xy = x * ys
1106
	local xz = x * zs
1107
	local yy = y * ys
1108
	local yz = y * zs
1109
	local zz = z * zs
1110
	return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
1111
end
1112
 
1113
function QuaternionSlerp(a, b, t)
1114
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
1115
	local startInterp, finishInterp;
1116
	if cosTheta >= 0.0001 then
1117
		if (1 - cosTheta) > 0.0001 then
1118
			local theta = ACOS(cosTheta)
1119
			local invSinTheta = 1 / SIN(theta)
1120
			startInterp = SIN((1 - t) * theta) * invSinTheta
1121
			finishInterp = SIN(t * theta) * invSinTheta
1122
		else
1123
			startInterp = 1 - t
1124
			finishInterp = t
1125
		end
1126
	else
1127
		if (1 + cosTheta) > 0.0001 then
1128
			local theta = ACOS(-cosTheta)
1129
			local invSinTheta = 1 / SIN(theta)
1130
			startInterp = SIN((t - 1) * theta) * invSinTheta
1131
			finishInterp = SIN(t * theta) * invSinTheta
1132
		else
1133
			startInterp = t - 1
1134
			finishInterp = t
1135
		end
1136
	end
1137
	return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
1138
end
1139
1140
function Clerp(a, b, t)
1141
	local qa = {QuaternionFromCFrame(a)}
1142
	local qb = {QuaternionFromCFrame(b)}
1143
	local ax, ay, az = a.x, a.y, a.z
1144
	local bx, by, bz = b.x, b.y, b.z
1145
	local _t = 1 - t
1146
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
1147
end
1148
1149
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
1150
	local frame = IT("Frame")
1151
	frame.BackgroundTransparency = TRANSPARENCY
1152
	frame.BorderSizePixel = BORDERSIZEPIXEL
1153
	frame.Position = POSITION
1154
	frame.Size = SIZE
1155
	frame.BackgroundColor3 = COLOR
1156
	frame.BorderColor3 = BORDERCOLOR
1157
	frame.Name = NAME
1158
	frame.Parent = PARENT
1159
	return frame
1160
end
1161
1162
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
1163
	local label = IT("TextLabel")
1164
	label.BackgroundTransparency = 1
1165
	label.Size = UD2(1, 0, 1, 0)
1166
	label.Position = UD2(0, 0, 0, 0)
1167
	label.TextColor3 = TEXTCOLOR
1168
	label.TextStrokeTransparency = STROKETRANSPARENCY
1169
	label.TextTransparency = TRANSPARENCY
1170
	label.FontSize = TEXTFONTSIZE
1171
	label.Font = TEXTFONT
1172
	label.BorderSizePixel = BORDERSIZEPIXEL
1173
	label.TextScaled = false
1174
	label.Text = TEXT
1175
	label.Name = NAME
1176
	label.Parent = PARENT
1177
	return label
1178
end
1179
1180
function NoOutlines(PART)
1181
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
1182
end
1183
1184
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
1185
	local NEWWELD = IT(TYPE)
1186
	NEWWELD.Part0 = PART0
1187
	NEWWELD.Part1 = PART1
1188
	NEWWELD.C0 = C0
1189
	NEWWELD.C1 = C1
1190
	NEWWELD.Parent = PARENT
1191
	return NEWWELD
1192
end
1193
1194
local S = IT("Sound")
1195
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
1196
	local NEWSOUND = nil
1197
	coroutine.resume(coroutine.create(function()
1198
		NEWSOUND = S:Clone()
1199
		NEWSOUND.Parent = PARENT
1200
		NEWSOUND.Volume = VOLUME
1201
		NEWSOUND.Pitch = PITCH
1202
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
1203
		NEWSOUND:play()
1204
		if DOESLOOP == true then
1205
			NEWSOUND.Looped = true
1206
		else
1207
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
1208
			NEWSOUND:remove()
1209
		end
1210
	end))
1211
	return NEWSOUND
1212
end
1213
1214
function CFrameFromTopBack(at, top, back)
1215
	local right = top:Cross(back)
1216
	return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
1217
end
1218
1219
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1220
function WACKYEFFECT(Table)
1221
	local TYPE = (Table.EffectType or "Sphere")
1222
	local SIZE = (Table.Size or VT(1,1,1))
1223
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
1224
	local TRANSPARENCY = (Table.Transparency or 0)
1225
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
1226
	local CFRAME = (Table.CFrame or Torso.CFrame)
1227
	local MOVEDIRECTION = (Table.MoveToPos or nil)
1228
	local ROTATION1 = (Table.RotationX or 0)
1229
	local ROTATION2 = (Table.RotationY or 0)
1230
	local ROTATION3 = (Table.RotationZ or 0)
1231
	local MATERIAL = (Table.Material or "Neon")
1232
	local COLOR = (Table.Color or C3(1,1,1))
1233
	local TIME = (Table.Time or 45)
1234
	local SOUNDID = (Table.SoundID or nil)
1235
	local SOUNDPITCH = (Table.SoundPitch or nil)
1236
	local SOUNDVOLUME = (Table.SoundVolume or nil)
1237
	coroutine.resume(coroutine.create(function()
1238
		local PLAYSSOUND = false
1239
		local SOUND = nil
1240
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
1241
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
1242
			PLAYSSOUND = true
1243
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
1244
		end
1245
		EFFECT.Color = COLOR
1246
		local MSH = nil
1247
		if TYPE == "Sphere" then
1248
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
1249
		elseif TYPE == "Block" then
1250
			MSH = IT("BlockMesh",EFFECT)
1251
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
1252
		elseif TYPE == "Wave" then
1253
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1254
		elseif TYPE == "Ring" then
1255
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
1256
		elseif TYPE == "Slash" then
1257
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1258
		elseif TYPE == "Round Slash" then
1259
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1260
		elseif TYPE == "Swirl" then
1261
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
1262
		elseif TYPE == "Skull" then
1263
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
1264
		elseif TYPE == "Crystal" then
1265
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
1266
		end
1267
		if MSH ~= nil then
1268
			local MOVESPEED = nil
1269
			if MOVEDIRECTION ~= nil then
1270
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
1271
			end
1272
			local GROWTH = SIZE - ENDSIZE
1273
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
1274
			if TYPE == "Block" then
1275
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1276
			else
1277
				EFFECT.CFrame = CFRAME
1278
			end
1279
			for LOOP = 1, TIME+1 do
1280
				Swait()
1281
				MSH.Scale = MSH.Scale - GROWTH/TIME
1282
				if TYPE == "Wave" then
1283
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
1284
				end
1285
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
1286
				if TYPE == "Block" then
1287
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1288
				else
1289
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
1290
				end
1291
				if MOVEDIRECTION ~= nil then
1292
					local ORI = EFFECT.Orientation
1293
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
1294
					EFFECT.Orientation = ORI
1295
				end
1296
			end
1297
			if PLAYSSOUND == false then
1298
				EFFECT:remove()
1299
			else
1300
				SOUND.Stopped:Connect(function()
1301
					EFFECT:remove()
1302
				end)
1303
			end
1304
		else
1305
			if PLAYSSOUND == false then
1306
				EFFECT:remove()
1307
			else
1308
				repeat Swait() until SOUND.Playing == false
1309
				EFFECT:remove()
1310
			end
1311
		end
1312
	end))
1313
end
1314
1315
function MakeForm(PART,TYPE)
1316
	if TYPE == "Cyl" then
1317
		local MSH = IT("CylinderMesh",PART)
1318
	elseif TYPE == "Ball" then
1319
		local MSH = IT("SpecialMesh",PART)
1320
		MSH.MeshType = "Sphere"
1321
	elseif TYPE == "Wedge" then
1322
		local MSH = IT("SpecialMesh",PART)
1323
		MSH.MeshType = "Wedge"
1324
	end
1325
end
1326
1327
function SpawnTrail(FROM,TO,BIG)
1328
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Cyan", "Trail", VT(0,0,0))
1329
	MakeForm(TRAIL,"Cyl")
1330
	local DIST = (FROM - TO).Magnitude
1331
	if BIG == true then
1332
		TRAIL.Size = VT(0.5,DIST,0.5)
1333
	else
1334
		TRAIL.Size = VT(0.25,DIST,0.25)
1335
	end
1336
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
1337
	coroutine.resume(coroutine.create(function()
1338
		for i = 1, 5 do
1339
			Swait()
1340
			TRAIL.Transparency = TRAIL.Transparency + 0.1
1341
		end
1342
		TRAIL:remove()
1343
	end))
1344
end
1345
1346
Debris = game:GetService("Debris")
1347
1348
function CastProperRay(StartPos, EndPos, Distance, Ignore)
1349
	local DIRECTION = CF(StartPos,EndPos).lookVector
1350
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
1351
end
1352
1353
function turnto(position)
1354
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
1355
end
1356
1357
--//=================================\\
1358
--||	     WEAPON CREATION
1359
--\\=================================//
1360
1361
local Particle = IT("ParticleEmitter",nil)
1362
Particle.Enabled = false
1363
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
1364
Particle.LightEmission = 0.5
1365
Particle.Rate = 150
1366
Particle.ZOffset = 0.2
1367
Particle.Rotation = NumberRange.new(-180, 180)
1368
Particle.RotSpeed = NumberRange.new(-180, 180)
1369
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
1370
Particle.Color = ColorSequence.new(C3(0,0,255),C3(0,255,255))
1371
local Particle2 = IT("ParticleEmitter",nil)
1372
Particle2.Enabled = false
1373
Particle2.Texture = "http://www.roblox.com/asset/?id=1369397597"
1374
Particle2.Color = ColorSequence.new(C3(0,0,255),C3(0,0,255))
1375
Particle2.LightEmission = 0
1376
Particle2.RotSpeed = NumberRange.new(0, 180)
1377
Particle2.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
1378
Particle2.LightEmission = 1
1379
Particle2.Rate = 20
1380
Particle2.RotSpeed = NumberRange.new(-20, 20)
1381
local Particle3 = IT("ParticleEmitter",nil)
1382
Particle3.Enabled = false
1383
Particle3.Texture = "http://www.roblox.com/asset/?id=1546470121"
1384
Particle3.Color = ColorSequence.new(C3(0,0,255),C3(0,0,255))
1385
Particle3.LightEmission = 0
1386
Particle3.RotSpeed = NumberRange.new(0, 180)
1387
Particle3.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.7),NumberSequenceKeypoint.new(0.3,.9),NumberSequenceKeypoint.new(1,1)})
1388
Particle3.LightEmission = 1
1389
Particle3.Rate = 20
1390
Particle3.RotSpeed = NumberRange.new(-20, 20)
1391
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
1392
function ParticleEmitter(Table)
1393
	local PRTCL = Particle:Clone()
1394
	local Speed = Table.Speed or 5
1395
	local Drag = Table.Drag or 0
1396
	local Size1 = Table.Size1 or 1
1397
	local Size2 = Table.Size2 or 5
1398
	local Lifetime1 = Table.Lifetime1 or 1
1399
	local Lifetime2 = Table.Lifetime2 or 1.5
1400
	local Parent = Table.Parent or Torso
1401
	local Emit = Table.Emit or 100
1402
	local Offset = Table.Offset or 360
1403
	local Acel = Table.Acel or VT(0,0,0)
1404
	local Enabled = Table.Enabled or false
1405
	PRTCL.Parent = Parent
1406
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1407
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1408
	PRTCL.Speed = NumberRange.new(Speed)
1409
	PRTCL.VelocitySpread = Offset
1410
	PRTCL.Drag = Drag
1411
	PRTCL.Acceleration = Acel
1412
	if Enabled == false then
1413
		PRTCL:Emit(Emit)
1414
		Debris:AddItem(PRTCL,Lifetime2)
1415
	else
1416
		PRTCL.Enabled = true
1417
	end
1418
	return PRTCL
1419
end
1420
function ParticleEmitter2(Table)
1421
	local PRTCL2 = Particle2:Clone()
1422
	local LockedToPart = Table.LTP or true
1423
	local Speed = Table.Speed or 0
1424
	local Drag = Table.Drag or 0
1425
	local Size1 = Table.Size1 or 1
1426
	local Size2 = Table.Size2 or 2
1427
	local Lifetime1 = Table.Lifetime1 or 1
1428
	local Lifetime2 = Table.Lifetime2 or 1
1429
	local Parent = Table.Parent or Torso
1430
	local Emit = Table.Emit or 100
1431
	local Offset = Table.Offset or 360
1432
	local Acel = Table.Acel or VT(0,0,0)
1433
	local Enabled = Table.Enabled or false
1434
	PRTCL2.Parent = Parent
1435
	PRTCL2.Size = NumberSequence.new(Size1,Size2)
1436
	PRTCL2.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1437
	PRTCL2.Speed = NumberRange.new(Speed)
1438
	PRTCL2.VelocitySpread = Offset
1439
	PRTCL2.Drag = Drag
1440
	PRTCL2.Acceleration = Acel
1441
		PRTCL2.Parent = Parent
1442
		PRTCL2.Size = NumberSequence.new(Size1,Size2)
1443
		PRTCL2.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1444
		PRTCL2.Speed = NumberRange.new(Speed)
1445
		PRTCL2.VelocitySpread = Offset
1446
		PRTCL2.Drag = Drag
1447
		PRTCL2.Acceleration = Acel
1448
		PRTCL2.LockedToPart = true
1449
	if Enabled == false then
1450
		PRTCL2:Emit(Emit)
1451
		Debris:AddItem(PRTCL2,Lifetime2)
1452
	else
1453
		PRTCL2.Enabled = true
1454
	end
1455
	return PRTCL2
1456
end
1457
function ParticleEmitter3(Table)
1458
	local PRTCL3 = Particle2:Clone()
1459
	local Speed = Table.Speed or 0
1460
	local Drag = Table.Drag or 0
1461
	local Size1 = Table.Size1 or 1
1462
	local Size2 = Table.Size2 or 2
1463
	local Lifetime1 = Table.Lifetime1 or 1
1464
	local Lifetime2 = Table.Lifetime2 or 1
1465
	local Parent = Table.Parent or Torso
1466
	local Emit = Table.Emit or 100
1467
	local Offset = Table.Offset or 0
1468
	local Acel = Table.Acel or VT(0,0,0)
1469
	local Enabled = Table.Enabled or false
1470
	PRTCL3.Parent = Parent
1471
	PRTCL3.Size = NumberSequence.new(Size1,Size2)
1472
	PRTCL3.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1473
	PRTCL3.Speed = NumberRange.new(Speed)
1474
	PRTCL3.VelocitySpread = Offset
1475
	PRTCL3.Drag = Drag
1476
	PRTCL3.Acceleration = Acel
1477
		PRTCL3.Parent = Parent
1478
		PRTCL3.Size = NumberSequence.new(Size1,Size2)
1479
		PRTCL3.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1480
		PRTCL3.Speed = NumberRange.new(Speed)
1481
		PRTCL3.VelocitySpread = Offset
1482
		PRTCL3.Drag = Drag
1483
		PRTCL3.Acceleration = Acel
1484
	if Enabled == false then
1485
		PRTCL3:Emit(Emit)
1486
		Debris:AddItem(PRTCL3,Lifetime2)
1487
	else
1488
		PRTCL3.Enabled = true
1489
	end
1490
	return PRTCL3
1491
end
1492
1493
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1494
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1495
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1496
MakeForm(Part,"Wedge")
1497
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1498
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1499
MakeForm(Part,"Wedge")
1500
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1501
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1502
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1503
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1504
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1505
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1506
MakeForm(Part,"Cyl")
1507
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1508
for i = 1, 8 do
1509
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1510
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1511
end
1512
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1513
MakeForm(Part,"Cyl")
1514
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1515
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1516
MakeForm(Part,"Ball")
1517
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1518
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1519
MakeForm(Part,"Wedge")
1520
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1521
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1522
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1523
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1524
MakeForm(Part,"Cyl")
1525
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1526
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1527
MakeForm(Part,"Cyl")
1528
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1529
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1530
MakeForm(Part,"Cyl")
1531
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1532
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1533
MakeForm(Part,"Wedge")
1534
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1535
local LASTPART = Handle
1536
for i = 1, 10 do
1537
	if LASTPART == Handle then
1538
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1539
		LASTPART = Part
1540
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1541
	else
1542
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1543
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1544
		LASTPART = Part
1545
	end
1546
end
1547
1548
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1549
MakeForm(Barrel,"Cyl")
1550
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1551
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1552
MakeForm(Part,"Cyl")
1553
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1554
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1555
MakeForm(Part,"Wedge")
1556
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1557
local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1558
MakeForm(Hole,"Cyl")
1559
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
1560
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1561
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1562
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1563
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1564
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1565
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1566
coroutine.resume(coroutine.create(function()
1567
	while wait() do
1568
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1569
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1570
	end
1571
end))
1572
--PARTICLES REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
1573
--[[
1574
	YEAH BOIIIIIIIII
1575
	PARTICLE TIME
1576
--]]
1577
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1578
--ParticleEmitter3({Speed = 0, Drag = 0, Size1 = 20, Size2 = 25, Lifetime1 = 0.3, Lifetime2 = 1, Parent = Barrel, Emit = 100, Offset = 0, Enabled = true, Acel = VT(0,0,0)})
1579
ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1580
ParticleEmitter2({Speed = 0, Drag = 0, Size1 = .5, Size2 = 1, Lifetime1 = 1, Lifetime2 = 1, Parent = Hole, Emit = 20, Offset = 360, Enabled = true, Acel = VT(0,0,0)})
1581
ParticleEmitter2({Speed = 0, Drag = 0, Size1 = 3, Size2 = 1, Lifetime1 = 1, Lifetime2 = 2, Parent = Handle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,0,0)})
1582
--Trails
1583
local A1 = Instance.new("Attachment",Barrel)
1584
local A2 = Instance.new("Attachment",Barrel)
1585
local Trail = Instance.new("Trail",Barrel)
1586
A1.Position = Vector3.new(0,1,0)
1587
A2.Position = Vector3.new(0,-0.8,0)
1588
Trail.Attachment0 = A1
1589
Trail.Attachment1 = A2
1590
Trail.LightEmission = 1
1591
Trail.Color = ColorSequence.new(Color3.new(0,0,0),Color3.new(0,0,0))
1592
Trail.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,.9),NumberSequenceKeypoint.new(1,1)})
1593
for _, c in pairs(Weapon:GetDescendants()) do
1594
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1595
		c.Material = "Glass"
1596
		c.Color = C3(0,0,0)
1597
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1598
		c.Color = C3(0,0,1)
1599
		c.Material = "Neon"
1600
	end
1601
end
1602
1603
Weapon.Parent = Character
1604
for _, c in pairs(Weapon:GetChildren()) do
1605
	if c.ClassName == "Part" then
1606
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1607
	end
1608
end
1609
1610
local SKILLTEXTCOLOR = C3(0,0,1)
1611
local SKILLFONT = "Antique"
1612
local SKILLTEXTSIZE = 7
1613
1614
Humanoid.Died:connect(function()
1615
	ATTACK = true
1616
end)
1617
1618
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1619
--[[local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1620
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1621
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1622
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1623
--]]
1624
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banisher Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
1625
--[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
1626
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
1627
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
1628
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
1629
--]]
1630
function printbye(Name)
1631
	local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
1632
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")
1633
		
1634
end
1635
1636
workspace.ChildAdded:connect(function(instance)
1637
    for BANISH = 1, #TOBANISH do
1638
		if TOBANISH[BANISH] ~= nil then
1639
			if instance.Name == TOBANISH[BANISH] then
1640
				coroutine.resume(coroutine.create(function()
1641
					printbye(instance.Name)
1642
					instance:ClearAllChildren()
1643
					Debris:AddItem(instance,0.0005)
1644
				end))
1645
			end
1646
		end
1647
	end
1648
end)
1649
1650
--//=================================\\
1651
--||			DAMAGING
1652
--\\=================================//
1653
1654
function Banish(Foe)
1655
	if Foe then
1656
		coroutine.resume(coroutine.create(function()
1657
			--if game.Players:FindFirstChild(Foe.Name) then
1658
				table.insert(TOBANISH,Foe.Name)
1659
				printbye(Foe.Name)
1660
			--end
1661
			Foe.Archivable = true
1662
			local CLONE = Foe:Clone()
1663
			Foe:Destroy()
1664
			CLONE.Parent = Effects
1665
			CLONE:BreakJoints()
1666
			local MATERIALS = {"Glass","Neon"}
1667
			for _, c in pairs(CLONE:GetDescendants()) do
1668
				if c:IsA("BasePart") then
1669
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1670
 						CreateSound(340722848, c, 10, 1, false)
1671
					end
1672
					c.Anchored = true
1673
					c.Transparency = c.Transparency + 0.2
1674
					c.Material = MATERIALS[MRANDOM(1,2)]
1675
					c.Color = C3(0,0,255)
1676
					if c.ClassName == "MeshPart" then
1677
						c.TextureID = ""
1678
					end
1679
					if c:FindFirstChildOfClass("SpecialMesh") then
1680
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1681
					end
1682
					if c:FindFirstChildOfClass("Decal") then
1683
						c:FindFirstChildOfClass("Decal"):remove()
1684
					end
1685
					c.Name = "Banished"
1686
					c.CanCollide = false
1687
				else
1688
					c:remove()
1689
				end
1690
			end
1691
			local A = false
1692
			for i = 1, 35 do
1693
				if A == false then
1694
					A = true
1695
				elseif A == true then
1696
					A = false
1697
				end
1698
				for _, c in pairs(CLONE:GetDescendants()) do
1699
					if c:IsA("BasePart") then
1700
						c.Anchored = true
1701
						c.Material = MATERIALS[MRANDOM(1,2)]
1702
						c.Transparency = c.Transparency + 0.8/35
1703
						if A == false then
1704
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1705
						elseif A == true then
1706
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1707
						end
1708
					end
1709
				end
1710
				Swait()
1711
			end
1712
			CLONE:remove()
1713
		end))
1714
	end
1715
end
1716
1717
function ApplyAoE(POSITION,RANGE,ISBANISH)
1718
	local CHILDREN = workspace:GetDescendants()
1719
	for index, CHILD in pairs(CHILDREN) do
1720
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1721
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1722
			if HUM then
1723
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1724
				if TORSO then
1725
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1726
						if ISBANISH == true then
1727
							Banish(CHILD)
1728
						else
1729
							if ISBANISH == "Gravity" then
1730
								HUM.PlatformStand = true
1731
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1732
									local grav = Instance.new("BodyPosition",TORSO)
1733
									grav.D = 15
1734
									grav.P = 20000
1735
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1736
									grav.position = TORSO.Position
1737
									grav.Name = "V3BanishForce"..Player.Name
1738
								else
1739
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1740
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1741
								end
1742
							else
1743
								HUM.PlatformStand = false
1744
							end
1745
						end
1746
					elseif ISBANISH == "Gravity" then
1747
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1748
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1749
							HUM.PlatformStand = false
1750
						end
1751
					end
1752
				end
1753
			end
1754
		end
1755
	end
1756
end
1757
1758
--//=================================\\
1759
--||	ATTACK FUNCTIONS AND STUFF
1760
--\\=================================//
1761
1762
function Banisher_Bullet()
1763
	ATTACK = true
1764
	Rooted = false
1765
	for i=0, 0.4, 0.1 / Animation_Speed do
1766
		Swait()
1767
		turnto(Mouse.Hit.p)
1768
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1769
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1770
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1771
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1772
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1773
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1774
	end
1775
	repeat
1776
		for i=0, 0.2, 0.1 / Animation_Speed do
1777
			Swait()
1778
			turnto(Mouse.Hit.p)
1779
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1780
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1781
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1782
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1783
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1784
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1785
		end
1786
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
1787
		SpawnTrail(Hole.Position,POS)
1788
		if HIT ~= nil then
1789
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1790
				Banish(HIT.Parent)
1791
			end
1792
		end
1793
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1794
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1795
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1796
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1797
		for i=0, 0.3, 0.1 / Animation_Speed do
1798
			Swait()
1799
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1800
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1801
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1802
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1803
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1804
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1805
		end
1806
	until KEYHOLD == false
1807
	ATTACK = false
1808
	Rooted = false
1809
end
1810
1811
function AttackTemplate()
1812
	ATTACK = true
1813
	Rooted = false
1814
	for i=0, 1, 0.1 / Animation_Speed do
1815
		Swait()
1816
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1817
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1818
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1819
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1820
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1821
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1822
	end
1823
	ATTACK = false
1824
	Rooted = false
1825
end
1826
1827
--//=================================\\
1828
--||	  ASSIGN THINGS TO KEYS
1829
--\\=================================//
1830
1831
function MouseDown(Mouse)
1832
	if ATTACK == false then
1833
	end
1834
end
1835
1836
function MouseUp(Mouse)
1837
HOLD = false
1838
end
1839
1840
function KeyDown(Key)
1841
	KEYHOLD = true
1842
	if Key == "z" and ATTACK == false then
1843
		Banisher_Bullet()
1844
	end
1845
1846
	if Key == "b" and ATTACK == false then
1847
	end
1848
1849
	if Key == "c" and ATTACK == false then
1850
	end
1851
1852
	if Key == "v" and ATTACK == false then
1853
	end
1854
1855
	if Key == "x" and ATTACK == false then
1856
	end
1857
end
1858
1859
function KeyUp(Key)
1860
	KEYHOLD = false
1861
end
1862
1863
	Mouse.Button1Down:connect(function(NEWKEY)
1864
		MouseDown(NEWKEY)
1865
	end)
1866
	Mouse.Button1Up:connect(function(NEWKEY)
1867
		MouseUp(NEWKEY)
1868
	end)
1869
	Mouse.KeyDown:connect(function(NEWKEY)
1870
		KeyDown(NEWKEY)
1871
	end)
1872
	Mouse.KeyUp:connect(function(NEWKEY)
1873
		KeyUp(NEWKEY)
1874
	end)
1875
1876
--//=================================\\
1877
--\\=================================//
1878
1879
1880
function unanchor()
1881
	if UNANCHOR == true then
1882
		g = Character:GetChildren()
1883
		for i = 1, #g do
1884
			if g[i].ClassName == "Part" then
1885
				g[i].Anchored = false
1886
			end
1887
		end
1888
	end
1889
end
1890
1891
1892
--//=================================\\
1893
--||	WRAP THE WHOLE SCRIPT UP
1894
--\\=================================//
1895
1896
Humanoid.Changed:connect(function(Jump)
1897
	if Jump == "Jump" and (Disable_Jump == true) then
1898
		Humanoid.Jump = false
1899
	end
1900
end)
1901
1902
local CONNECT = nil
1903
1904
while true do
1905
	Swait()
1906
	ANIMATE.Parent = nil
1907
	if Character:FindFirstChildOfClass("Humanoid") == nil then
1908
		Humanoid = IT("Humanoid",Character)
1909
	end
1910
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1911
	    v:Stop();
1912
	end
1913
	SINE = SINE + CHANGE
1914
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1915
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1916
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1917
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1918
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1919
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1920
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1921
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1922
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1923
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1924
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1925
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1926
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1927
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1928
	end
1929
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1930
		ANIM = "Jump"
1931
		if ATTACK == false then
1932
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1933
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1934
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1935
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1936
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1937
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1938
	    end
1939
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1940
		ANIM = "Fall"
1941
		if ATTACK == false then
1942
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1943
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1944
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1945
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1946
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1947
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1948
		end
1949
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1950
		ANIM = "Idle"
1951
		if ATTACK == false then
1952
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
1953
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 0.15 / Animation_Speed)
1954
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -0.5) * ANGLES(RAD(75), RAD(45), RAD(-25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1955
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1956
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1957
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1958
		end
1959
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1960
		ANIM = "Walk"
1961
		if ATTACK == false then
1962
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1963
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1964
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.1, -0.4) * ANGLES(RAD(150), RAD(0), RAD(0))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1965
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / Animation_Speed)
1966
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1967
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1968
		end
1969
	end
1970
	unanchor()
1971
	Humanoid.MaxHealth = math.huge
1972
	Humanoid.Health = math.huge
1973
----------------------------------------------------------------------------------
1974
local naeeym2 = Instance.new("BillboardGui",char)
1975
naeeym2.AlwaysOnTop = true
1976
naeeym2.Size = UDim2.new(5,35,2,15)
1977
naeeym2.StudsOffset = Vector3.new(0, 3.5, 0)
1978
naeeym2.Adornee = hed
1979
naeeym2.Name = "Name"
1980
--naeeym2.PlayerToHideFrom = Player
1981
local tecks2 = Instance.new("TextLabel",naeeym2)
1982
tecks2.BackgroundTransparency = 1
1983
tecks2.TextScaled = true
1984
tecks2.BorderSizePixel = 0
1985
tecks2.Font = Enum.Font.Antique
1986
tecks2.TextSize = 30
1987
tecks2.TextStrokeTransparency = 0
1988
tecks2.TextColor3 = Color3.new(0, 0, 0)
1989
tecks2.TextStrokeColor3 = Color3.new(0, 0, 0)
1990
tecks2.Size = UDim2.new(1,0,0.5,0)
1991
tecks2.Parent = naeeym2
1992
wait(0.1)
1993
tecks2.Text = "Possessed..?"
1994
--------------------------------------------------------
1995
local EyeSizes={
1996
	NumberSequenceKeypoint.new(0,0.65,0),
1997
	NumberSequenceKeypoint.new(0.5,0.7,0),
1998
	NumberSequenceKeypoint.new(1,0,0)
1999
}
2000
local EyeTrans={
2001
	NumberSequenceKeypoint.new(0,0,0),
2002
	NumberSequenceKeypoint.new(0.5,0,0),
2003
	NumberSequenceKeypoint.new(1,1,0)
2004
}
2005
local PE2=Instance.new("ParticleEmitter", ra)
2006
PE2.LightEmission=.9
2007
PE2.Color = ColorSequence.new(BrickC("Really red").Color,BrickC("Really blue").Color)
2008
PE2.Transparency=NumberSequence.new(EyeTrans)
2009
PE2.Lifetime=NumberRange.new(0.35)
2010
PE2.Rotation=NumberRange.new(0,360)
2011
PE2.Rate=999
2012
PE2.VelocitySpread = 10000
2013
PE2.Acceleration = Vector3.new(0,25,0)
2014
PE2.ZOffset = 0.5
2015
PE2.Drag = 0
2016
PE2.Speed = NumberRange.new(0,0,0)
2017
PE2.Texture="rbxasset://textures/particles/explosion01_implosion_main.dds"
2018
PE2.Name = "PE2"
2019
PE2.Enabled = true
2020
PE2.LockedToPart = true
2021
local EyeSizes={
2022
	NumberSequenceKeypoint.new(0,0.65,0),
2023
	NumberSequenceKeypoint.new(0.5,0.7,0),
2024
	NumberSequenceKeypoint.new(1,0,0)
2025
}
2026
local EyeTrans={
2027
	NumberSequenceKeypoint.new(0,0,0),
2028
	NumberSequenceKeypoint.new(0.5,0,0),
2029
	NumberSequenceKeypoint.new(1,1,0)
2030
}
2031
local PE3=Instance.new("ParticleEmitter", ra)
2032
PE3.LightEmission=.9
2033
PE3.Color = ColorSequence.new(BrickC("Lime green").Color,BrickC("Really blue").Color)
2034
PE3.Transparency=NumberSequence.new(EyeTrans)
2035
PE3.Lifetime=NumberRange.new(0.35)
2036
PE3.Rotation=NumberRange.new(0,360)
2037
PE3.Rate=999
2038
PE3.VelocitySpread = 10000
2039
PE3.Acceleration = Vector3.new(0,25,0)
2040
PE3.ZOffset = 0.5
2041
PE3.Drag = 0
2042
PE3.Speed = NumberRange.new(0,0,0)
2043
PE3.Texture="rbxasset://textures/particles/explosion01_implosion_main.dds"
2044
PE3.Name = "PE3"
2045
PE3.Enabled = true
2046
PE3.LockedToPart = true
2047
2048
local EyeSizes={
2049
	NumberSequenceKeypoint.new(0,0.65,0),
2050
	NumberSequenceKeypoint.new(0.5,0.7,0),
2051
	NumberSequenceKeypoint.new(1,0,0)
2052
}
2053
local EyeTrans={
2054
	NumberSequenceKeypoint.new(0,0,0),
2055
	NumberSequenceKeypoint.new(0.5,0,0),
2056
	NumberSequenceKeypoint.new(1,1,0)
2057
}
2058
local PE4=Instance.new("ParticleEmitter", ll)
2059
PE4.LightEmission=.9
2060
PE4.Color = ColorSequence.new(BrickC("Really red").Color,BrickC("Really blue").Color)
2061
PE4.Transparency=NumberSequence.new(EyeTrans)
2062
PE4.Lifetime=NumberRange.new(0.35)
2063
PE4.Rotation=NumberRange.new(0,360)
2064
PE4.Rate=999
2065
PE4.VelocitySpread = 10000
2066
PE4.Acceleration = Vector3.new(0,25,0)
2067
PE4.ZOffset = 0.5
2068
PE4.Drag = 0
2069
PE4.Speed = NumberRange.new(0,0,0)
2070
PE4.Texture="rbxasset://textures/particles/explosion01_implosion_main.dds"
2071
PE4.Name = "PE4"
2072
PE4.Enabled = true
2073
PE4.LockedToPart = true
2074
local EyeSizes={
2075
	NumberSequenceKeypoint.new(0,0.65,0),
2076
	NumberSequenceKeypoint.new(0.5,0.7,0),
2077
	NumberSequenceKeypoint.new(1,0,0)
2078
}
2079
local EyeTrans={
2080
	NumberSequenceKeypoint.new(0,0,0),
2081
	NumberSequenceKeypoint.new(0.5,0,0),
2082
	NumberSequenceKeypoint.new(1,1,0)
2083
}
2084
local PE5=Instance.new("ParticleEmitter", ll)
2085
PE5.LightEmission=.9
2086
PE5.Color = ColorSequence.new(BrickC("Lime green").Color,BrickC("Really blue").Color)
2087
PE5.Transparency=NumberSequence.new(EyeTrans)
2088
PE5.Lifetime=NumberRange.new(0.35)
2089
PE5.Rotation=NumberRange.new(0,360)
2090
PE5.Rate=999
2091
PE5.VelocitySpread = 10000
2092
PE5.Acceleration = Vector3.new(0,25,0)
2093
PE5.ZOffset = 0.5
2094
PE5.Drag = 0
2095
PE5.Speed = NumberRange.new(0,0,0)
2096
PE5.Texture="rbxasset://textures/particles/explosion01_implosion_main.dds"
2097
PE5.Name = "PE5"
2098
PE5.Enabled = true
2099
PE5.LockedToPart = true
2100
-------------------------------------------------------
2101
--End Customization--
2102
-------------------------------------------------------
2103
2104
	if Rooted == false then
2105
		Disable_Jump = false
2106
		Humanoid.WalkSpeed = Speed
2107
	elseif Rooted == true then
2108
		Disable_Jump = true
2109
		Humanoid.WalkSpeed = 0
2110
	end
2111
	sick.Parent = Torso
2112
	sick:resume()
2113
	sick.Volume = 5
2114
	sick.Pitch = 1
2115
	sick.SoundId = "rbxassetid://924339757"
2116
	sick.Name = "BanishV3Music"
2117
end
2118
2119
--//=================================\\
2120
--\\=================================//
2121
2122
2123
2124
2125
2126
--//====================================================\\--
2127
--||			  		 END OF SCRIPT
2128
--\\====================================================//--