View difference between Paste ID: cKM4YRA0 and iymzrzJ1
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
1+
2-
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
2+
--||			   CREATED BY SHACKLUSTER
3-
local RealPlayer = Player
3+
4-
do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
4+
5
wait(0.2)
6
7
Player = game:GetService("Players").LocalPlayer
8-
--|| Monika edit by deivis97
8+
9
Cam = workspace.CurrentCamera
10
Backpack = Player.Backpack
11
Character = Player.Character
12
Humanoid = Character.Humanoid
13
Mouse = Player:GetMouse()
14
RootPart = Character["HumanoidRootPart"]
15
Torso = Character["Torso"]
16-
char = Player.Character
16+
17
RightArm = Character["Right Arm"]
18
LeftArm = Character["Left Arm"]
19
RightLeg = Character["Right Leg"]
20
LeftLeg = Character["Left Leg"]
21
RootJoint = RootPart["RootJoint"]
22
Neck = Torso["Neck"]
23
RightShoulder = Torso["Right Shoulder"]
24
LeftShoulder = Torso["Left Shoulder"]
25
RightHip = Torso["Right Hip"]
26
LeftHip = Torso["Left Hip"]
27
local sick = Instance.new("Sound",Character)
28
sick.SoundId = "rbxassetid://1494340971"
29
sick.Looped = true
30
sick.Pitch = 1
31
sick.Volume = 1
32-
Humanoid.MaxHealth = "inf"
32+
sick:Play()
33-
Humanoid.Health = "inf"
33+
34-
Humanoid.JumpPower = 100
34+
35
CF = CFrame.new
36-
----------------------------------------------------------------------
36+
37-
		
37+
38-
local Orin = "http://www.roblox.com/asset/?id=492754352"
38+
39-
Head.face.Texture = Orin
39+
40-
function weld(a, b, acf)
40+
41-
	local w = Instance.new("Weld", a)
41+
42-
	w.Part0 = a
42+
43-
	w.Part1 = b
43+
44-
	w.C0 = acf
44+
45
SIN = math.sin
46-
local righteyebrickcolor = "Lime green"
46+
47-
local reye = Instance.new("Part", char)
47+
48-
reye.CanCollide = false
48+
49-
reye.BrickColor = BrickColor.new(righteyebrickcolor)
49+
50-
reye.Material = "Neon"
50+
51-
reye.Size = Vector3.new(.25,.35,.15)
51+
52-
weld(reye, char.Head, CFrame.new(0.15,-0.2,0.55), CFrame.new(1,0,0))
52+
53-
m1 = Instance.new("SpecialMesh", reye)
53+
54-
m1.MeshType = "Sphere"
54+
55-
m1.Scale = Vector3.new(0.9,0.9,0.9)
55+
Animation_Speed = 3
56-
reye.Locked = true
56+
57-
reye.Name = "re"
57+
local Speed = 25
58
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
59-
local leye = Instance.new("Part", char)
59+
60-
leye.CanCollide = false
60+
61-
leye.BrickColor = BrickColor.new(righteyebrickcolor)
61+
62-
leye.Material = "Neon"
62+
local DAMAGEMULTIPLIER = 1
63-
leye.Size = Vector3.new(.25,.35,.15)
63+
64-
weld(leye, char.Head, CFrame.new(-0.15,-0.2,0.55), CFrame.new(1,0,0))
64+
65-
local m = Instance.new("SpecialMesh", leye)
65+
66-
m.MeshType = "Sphere"
66+
67-
m.Scale = Vector3.new(0.9,0.9,0.9)
67+
68-
leye.Locked = true
68+
local Rooted = false
69-
leye.Name = "le"
69+
70-
for i,v in pairs(char:GetChildren()) do
70+
local KEYHOLD = false
71-
		if v.ClassName == "Accessory" or v.ClassName == "Hat" then
71+
72-
			v:destroy()
72+
73
local VALUE1 = false
74
local VALUE2 = false
75
local ROBLOXIDLEANIMATION = IT("Animation")
76-
local Hair = Instance.new("Part")
76+
77-
Hair.Parent = char
77+
78-
Hair.Name = "Hair"
78+
79-
Hair.Size = Vector3.new(0.1, 0.1, 0.1)
79+
local WEAPONGUI = IT("ScreenGui", PlayerGui)
80-
Hair.CFrame = char.Head.CFrame
80+
81-
Hair:BreakJoints()
81+
local Effects = IT("Folder", Character)
82-
Hair.CanCollide = false
82+
83-
Hair.BrickColor = BrickColor.new("New Yeller")
83+
84-
Hair.TopSurface = "Smooth"
84+
85-
Hair.BottomSurface = "Smooth"
85+
local UNANCHOR = true
86-
Weld = Instance.new("Weld") 
86+
local PLAYMAINANIM = true
87-
Weld.Name = "Weld"
87+
local BOLTSOUNDS = {168586621,168586586,178452241}
88-
Weld.Part0 = char.Head 
88+
89-
Weld.Part1 = Hair
89+
90-
Weld.Parent = char.Head 
90+
91-
Weld.C0 = CFrame.new(-0.1, -0.71, 0.8)*CFrame.fromEulerAnglesXYZ(0, 3, 0) 
91+
92-
Mesh = Instance.new("SpecialMesh")
92+
93-
Mesh.Parent = Hair
93+
94-
Mesh.MeshId = "rbxassetid://731142602"
94+
95-
Mesh.TextureId = "http://www.roblox.com/asset/?id=1332227116"
95+
96-
Mesh.Scale = Vector3.new(0.25, 0.21, 0.2)
96+
97
ArtificialHB = Instance.new("BindableEvent", script)
98-
local Shirt = "rbxassetid://1298116952"
98+
99-
local Pants = "rbxassetid://1340645290"
99+
100
script:WaitForChild("ArtificialHB")
101-
ypcall(function()
101+
102-
shirt = Instance.new("Shirt", char)
102+
103-
shirt.Name = "Shirt"
103+
104-
pants = Instance.new("Pants", char)
104+
105-
pants.Name = "Pants"
105+
106-
char.Shirt.ShirtTemplate = Shirt
106+
107-
char.Pants.PantsTemplate = Pants
107+
108
109
game:GetService("RunService").Heartbeat:connect(function(s, p)
110-
c = "White"
110+
111
	if tf >= frame then
112-
vt=Vector3.new
112+
113-
cf=CFrame.new
113+
114-
euler=CFrame.fromEulerAnglesXYZ
114+
115-
angles=CFrame.Angles
115+
116
			for i = 1, math.floor(tf / frame) do
117-
	function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
117+
118-
		local fp=Instance.new("Part")
118+
119-
		fp.formFactor=formfactor
119+
120-
		fp.Parent=parent
120+
121-
		fp.Reflectance=reflectance
121+
122-
		fp.Transparency=transparency
122+
123-
		fp.CanCollide=false
123+
124-
		fp.Locked=true
124+
125-
		fp.BrickColor=BrickColor.new(tostring(brickcolor))
125+
126-
		fp.Name=name
126+
127-
		fp.Size=size
127+
128-
		fp.Position=Character.Torso.Position
128+
129-
		fp.Material=material
129+
130-
		fp:BreakJoints()
130+
131-
		return fp
131+
132
--//=================================\\
133
--|| 	      SOME FUNCTIONS
134-
	function mesh(Mesh,part,meshtype,meshid,offset,scale)
134+
135-
		local mesh=Instance.new(Mesh)
135+
136-
		mesh.Parent=part
136+
137-
		if Mesh=="SpecialMesh" then
137+
138-
			mesh.MeshType=meshtype
138+
139-
			mesh.MeshId=meshid
139+
140
function PositiveAngle(NUMBER)
141-
		mesh.Offset=offset
141+
142-
		mesh.Scale=scale
142+
143-
		return mesh
143+
144
	return NUMBER
145
end
146-
function BreakEffect(brickcolor,cframe,x1,y1,z1,Color)
146+
147-
local prt=part("Custom",workspace,"Neon",0,0,Color,"Effect",vt(0.5,0.5,0.5))
147+
148-
prt.Anchored=true
148+
149-
prt.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
149+
150-
local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
150+
151-
coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb) 
151+
152-
CF=Part.CFrame
152+
153-
Numbb=0
153+
154-
randnumb=math.random()-math.random()
154+
155-
for i=0,1,0.05 do
155+
156-
wait()
156+
157-
CF=CF*cf(0,1,0)
157+
158-
--Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0)
158+
159-
Part.CFrame=CF*euler(Numbb,0,0)
159+
160-
Part.Transparency=i
160+
161-
Numbb=Numbb+randnumb
161+
162
end
163-
Part.Parent=nil
163+
164-
end),prt)
164+
165
	local NEWMESH = IT(MESH)
166
	if MESH == "SpecialMesh" then
167
		NEWMESH.MeshType = MESHTYPE
168-
--------------------------------------------------------------------------------
168+
169
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
170
		end
171
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
172-
if Character:FindFirstChild("Granted") == nil then
172+
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
173-
kkk = Instance.new("Sound",Character)
173+
174-
kkk.Volume = 1
174+
175-
kkk.PlaybackSpeed = 1
175+
176-
kkk.Pitch = 1
176+
	NEWMESH.Scale = SCALE
177-
kkk.SoundId = "rbxassetid://1163840119"
177+
178-
kkk:Play()
178+
179-
kkk.Name = "BackgroundMusic"
179+
180-
kkk.Looped = true
180+
181-
local naeeym2 = Instance.new("BillboardGui",Character)
181+
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
182
	local NEWPART = IT("Part")
183-
naeeym2.Size = UDim2.new(0,100,0,40)
183+
184
	NEWPART.Reflectance = REFLECTANCE
185
	NEWPART.Transparency = TRANSPARENCY
186-
naeeym2.Name = "TalkingBillBoard"
186+
187-
local tecks2 = Instance.new("TextLabel",naeeym2)
187+
188
	NEWPART.Anchored = true
189
	if ANCHOR == false then
190-
tecks2.Text = "Monika"
190+
		NEWPART.Anchored = false
191-
tecks2.Font = "Cartoon"
191+
192
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
193-
tecks2.TextStrokeTransparency = 0
193+
194-
tecks2.TextColor3 = Color3.new(255,0,245)
194+
195-
tecks2.TextStrokeColor3 = Color3.new(1,1,1)
195+
196
	NEWPART.Material = MATERIAL
197
	NEWPART:BreakJoints()
198-
elseif Character:FindFirstChild("Granted") then
198+
199-
local naeeym2 = Instance.new("BillboardGui",Character)
199+
200
end
201-
naeeym2.Size = UDim2.new(0,100,0,40)
201+
202
	local function weldBetween(a, b)
203
	    local weldd = Instance.new("ManualWeld")
204-
naeeym2.Name = "TalkingBillBoard"
204+
205-
local tecks2 = Instance.new("TextLabel",naeeym2)
205+
206
	    weldd.C0 = CFrame.new()
207
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
208-
tecks2.Text = "Student " .. Character.Name
208+
209
	    return weldd
210
	end
211-
tecks2.TextStrokeTransparency = 0
211+
212-
tecks2.TextColor3 = Color3.new(0,0,0)
212+
213-
tecks2.TextStrokeColor3 = Color3.new(1,1,1)
213+
214
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
215
	local trace = m00 + m11 + m22
216
	if trace > 0 then 
217
		local s = math.sqrt(1 + trace)
218
		local recip = 0.5 / s
219
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
220
	else
221
		local i = 0
222
		if m11 > m00 then
223
			i = 1
224
		end
225
		if m22 > (i == 0 and m00 or m11) then
226
			i = 2
227
		end
228
		if i == 0 then
229
			local s = math.sqrt(m00 - m11 - m22 + 1)
230
			local recip = 0.5 / s
231
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
232
		elseif i == 1 then
233
			local s = math.sqrt(m11 - m22 - m00 + 1)
234
			local recip = 0.5 / s
235
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
236
		elseif i == 2 then
237
			local s = math.sqrt(m22 - m00 - m11 + 1)
238
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
239
		end
240-
--||		  CUSTOMIZATION
240+
241
end
242
 
243-
Class_Name = "Monika edit"
243+
244-
Weapon_Name = "Just monika"
244+
245
	local wx, wy, wz = w * xs, w * ys, w * zs
246-
Custom_Colors = {
246+
247-
	Custom_Color_1 = BRICKC("Carnation pink"); --1st color for the weapon.
247+
248-
	Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
248+
249
	local yy = y * ys
250-
	Custom_Color_3 = BRICKC("Carnation pink"); --Color for the abilities.
250+
251-
	Custom_Color_4 = BRICKC("Carnation pink"); --Color for the secondary bar.
251+
252-
	Custom_Color_5 = BRICKC("Carnation pink"); --Color for the mana bar.
252+
253-
	Custom_Color_6 = BRICKC("Carnation pink"); --Color for the health bar.
253+
254-
	Custom_Color_7 = BRICKC("Carnation pink"); --Color for the stun bar.
254+
255
function QuaternionSlerp(a, b, t)
256-
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
256+
257-
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
257+
258-
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
258+
259-
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
259+
260-
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
260+
261
			local invSinTheta = 1 / SIN(theta)
262
			startInterp = SIN((1 - t) * theta) * invSinTheta
263-
Mana_Bar_Background_Transparency = 0 --Transparency for the background of the mana bar.
263+
264-
Secondary_Mana_Bar_Background_Transparency = 0 --Transparency for the background of the secondary mana bar.
264+
265-
Health_Bar_Background_Transparency = 0 --Transparency for the background of the health bar.
265+
266-
Stun_Bar_Background_Transparency = 0 --Transparency for the background of the stun bar.
266+
267-
Ability_Background_Transparency = 0  --Transparency for the background of the abilities.
267+
268-
Stat_Background_Transparency = 0 --Transparency for the background of the stats.
268+
269
		if (1 + cosTheta) > 0.0001 then
270-
Player_Size = 1 --Size of the player.
270+
271-
Animation_Speed = 6
271+
272
			startInterp = SIN((t - 1) * theta) * invSinTheta
273
			finishInterp = SIN(t * theta) * invSinTheta
274-
Enable_Gui = false --Enables or disables the Weapon Gui. Also functions as hiding or showing the Gui.
274+
275-
Enable_Stats = false --Enables or disables stats.
275+
276-
Put_Stats_In_Character = false --Places stats in Character.
276+
277-
Enable_Stagger_Hit = false --Enables or disables staggering when hitting a hitbox of some sort.
277+
278-
Play_Hitbox_Hit_Sound = true --Plays a hit sound when hitting a hitbox of some sort.
278+
279-
Enable_Stagger = false --Enables or disables staggering.
279+
280-
Enable_Stun = false --Enables or disables the stun mechanic.
280+
281-
Enable_Abilities = false --Enables abilites with cooldowns and mana costs.
281+
282-
Enable_Secondary_Bar = false --Enables the secondary mana bar, if true.
282+
283
	local qa = {QuaternionFromCFrame(a)}
284-
Start_Equipped = false --Starts the player equipped with their weapon.
284+
285-
Start_Equipped_With_Equipped_Animation = false --Used in conjunction with the above option. Starts your equip animation.
285+
286-
Can_Equip_Or_Unequip = true --Enables or disables the ability to unequip or equip your weapon.
286+
287-
Disable_Animator = true --Disables the Animator in the humanoid.
287+
288-
Disable_Animate = true --Disables the Animate script in the monicter.
288+
289-
Disable_Moving_Arms = false --Keeps the arms from moving around.
289+
290-
Use_Motors_Instead_Of_Welds = false --Uses motors instead of welds to disable moving arms.
290+
291-
Walkspeed_Depends_On_Movement_Value = false --Walkspeed depends on movement value. Self-explanatory.
291+
292-
Disable_Jump = false --Disables jumping.
292+
293-
Use_HopperBin = true --Uses a hopperbin to do things.
293+
294
	frame.BorderSizePixel = BORDERSIZEPIXEL
295-
Cooldown_1 = 0 --Cooldowns for abilites.
295+
296-
Cooldown_2 = 0
296+
297-
Cooldown_3 = 0
297+
298-
Cooldown_4 = 0
298+
299-
Skill_1_Mana_Cost = 0 --How much mana is required to use the skill.
299+
300-
Skill_2_Mana_Cost = 0
300+
301-
Skill_3_Mana_Cost = 0
301+
302-
Skill_4_Mana_Cost = 0
302+
303-
Max_Mana = 0 --Maximum amount of mana you can have.
303+
304-
Max_Secondary_Mana = 0 --Maximum amount of secondary mana you can have.
304+
305-
Mana_Name = "Mana" --Name for the mana bar.
305+
306-
Secondary_Mana_Name = "Block" --Name for the secondary mana bar.
306+
307-
Max_Stun = 1 --Maximum amount of stun you can have.
307+
308-
Recover_Mana = 0 --How much mana you gain.
308+
309-
Mana_Regen_Mode = "1" --Basically switches from one mana regen system to another.
309+
	label.TextColor3 = TEXTCOLOR
310-
Secondary_Mana_Regen_Mode = "1" --Basically switches from one secondary mana regen system to another.
310+
311-
Stun_Lose_Mode = "1" --Basically switches from one secondary stun loss system to another.
311+
312-
Recover_Secondary_Mana = 0 --How much secondary mana you gain.
312+
313-
Lose_Stun = 0 --How much stun you lose.
313+
314-
Stun_Wait = 0 --Delay between losing stun.
314+
315-
Mana_Wait = 0 --Delay between gaining mana.
315+
	label.TextScaled = false
316-
Secondary_Mana_Wait = 0 --Delay between gaining secondary mana.
316+
317-
Menu_Update_Speed = 0 --How fast the Weapon Gui will update.
317+
318-
Constant_Update = false --Removes the delay between updating the Weapon GUI.
318+
319-
Show_Stats = false --Hides or shows stats.
319+
320-
Stat_Offset = 0.74 --For cosmetic purposes. {0.74, 0.78}
320+
321
322
function NoOutlines(PART)
323-
--|| 	  END OF CUSTOMIZATION
323+
324
end
325
326
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
327
	local NEWWELD = IT(TYPE)
328
	NEWWELD.Part0 = PART0
329
	NEWWELD.Part1 = PART1
330
	NEWWELD.C0 = C0
331
	NEWWELD.C1 = C1
332
	NEWWELD.Parent = PARENT
333
	return NEWWELD
334
end
335
336
local S = IT("Sound")
337
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
338-
local CO1 = 0
338+
	local NEWSOUND = nil
339-
local CO2 = 0
339+
340-
local CO3 = 0
340+
		NEWSOUND = S:Clone()
341-
local CO4 = 0
341+
		NEWSOUND.Parent = PARENT
342-
local CHANGEDEFENSE = 0
342+
343-
local CHANGEDAMAGE = 0
343+
344-
local CHANGEMOVEMENT = 0
344+
345
		NEWSOUND:play()
346
		if DOESLOOP == true then
347
			NEWSOUND.Looped = true
348
		else
349
			repeat wait(1) until NEWSOUND.Playing == false
350-
local LASTPOINT = nil
350+
			NEWSOUND:remove()
351-
local BLCF = nil
351+
352-
local SCFR = nil
352+
353-
local STAGGERHITANIM = false
353+
	return NEWSOUND
354-
local STAGGERANIM = false
354+
355-
local STUNANIM = false
355+
356-
local CRITCHANCENUMBER = 0
356+
local EyeSizes={
357-
local IDLENUMBER = 0
357+
	NumberSequenceKeypoint.new(0,2,0),
358-
local DONUMBER = 0
358+
	NumberSequenceKeypoint.new(1,0,0)
359-
local HANDIDLE = false
359+
360
local EyeTrans={
361
	NumberSequenceKeypoint.new(0,0.5,0),
362
	NumberSequenceKeypoint.new(1,1,0)
363-
local WALK = 0
363+
364-
local DISABLEJUMPING = false
364+
local PE=Instance.new("ParticleEmitter",nil)
365-
local HASBEENBLOCKED = false
365+
PE.LightEmission=.8
366-
local STUNDELAYNUMBER = 0
366+
PE.Color = ColorSequence.new(BRICKC("Really blue").Color,BRICKC("Really blue").Color)
367-
local MANADELAYNUMBER = 0
367+
PE.Size=NumberSequence.new(EyeSizes)
368-
local SECONDARYMANADELAYNUMBER = 0
368+
PE.Transparency=NumberSequence.new(EyeTrans)
369
PE.Lifetime=NumberRange.new(0.35,1)
370
PE.Rotation=NumberRange.new(0,360)
371
PE.Rate=100
372
PE.VelocitySpread = 10000
373-
local WEAPONGUI = IT("ScreenGui", nil)
373+
PE.Acceleration = Vector3.new(0,85,0)
374
PE.Drag = 5
375-
local WEAPONTOOL = IT("HopperBin", nil)
375+
PE.Speed = NumberRange.new(0.1,5)
376-
WEAPONTOOL.Name = Weapon_Name
376+
PE.Texture="http://www.roblox.com/asset/?id=1460745664"
377-
local Weapon = IT("Model")
377+
PE.ZOffset = 0.5
378-
Weapon.Name = Weapon_Name
378+
PE.Name = "PE"
379-
local Effects = IT("Folder", Weapon)
379+
PE.Enabled = false
380
381
function Fire(art)
382
	local PARTICLES = PE:Clone()
383-
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
383+
	PARTICLES.Parent = art
384-
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
384+
	PARTICLES.Enabled = true
385-
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
385+
	return PARTICLES
386-
local HITBLOCKSOUNDS = {"199148933", "199148947"}
386+
387
388
function CFrameFromTopBack(at, top, back)
389
	local right = top:Cross(back)
390
	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)
391
end
392
393
--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})
394
function WACKYEFFECT(Table)
395
	local TYPE = (Table.EffectType or "Sphere")
396-
--||			  STATS
396+
	local SIZE = (Table.Size or VT(1,1,1))
397
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
398
	local TRANSPARENCY = (Table.Transparency or 0)
399-
if Character:FindFirstChild("Stats") ~= nil then
399+
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
400-
Character:FindFirstChild("Stats").Parent = nil
400+
	local CFRAME = (Table.CFrame or Torso.CFrame)
401
	local MOVEDIRECTION = (Table.MoveToPos or nil)
402
	local ROTATION1 = (Table.RotationX or 0)
403-
local Stats = IT("Folder", nil)
403+
	local ROTATION2 = (Table.RotationY or 0)
404-
Stats.Name = "Stats"
404+
	local ROTATION3 = (Table.RotationZ or 0)
405-
local ChangeStat = IT("Folder", Stats)
405+
	local MATERIAL = (Table.Material or "Neon")
406-
ChangeStat.Name = "ChangeStat"
406+
	local COLOR = (Table.Color or C3(1,1,1))
407-
local Defense = IT("NumberValue", Stats)
407+
	local TIME = (Table.Time or 45)
408-
Defense.Name = "Defense"
408+
	local SOUNDID = (Table.SoundID or nil)
409-
Defense.Value = 1
409+
	local SOUNDPITCH = (Table.SoundPitch or nil)
410-
local Movement = IT("NumberValue", Stats)
410+
	local SOUNDVOLUME = (Table.SoundVolume or nil)
411-
Movement.Name = "Movement"
411+
412-
Movement.Value = 1
412+
		local PLAYSSOUND = false
413-
local Damage = IT("NumberValue", Stats)
413+
		local SOUND = nil
414-
Damage.Name = "Damage"
414+
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Really blue"), "Effect", VT(1,1,1), true)
415-
Damage.Value = 1
415+
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
416-
local Mana = IT("NumberValue", Stats)
416+
			PLAYSSOUND = true
417-
Mana.Name = "Mana"
417+
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
418-
Mana.Value = 0
418+
419-
local SecondaryMana = IT("NumberValue", Stats)
419+
		EFFECT.Color = COLOR
420-
SecondaryMana.Name = "SecondaryMana"
420+
		local MSH = nil
421-
SecondaryMana.Value = 0
421+
		if TYPE == "Sphere" then
422-
local CanCrit = IT("BoolValue", Stats)
422+
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
423-
CanCrit.Name = "CanCrit"
423+
		elseif TYPE == "Block" or TYPE == "Box" then
424-
CanCrit.Value = false
424+
			MSH = IT("BlockMesh",EFFECT)
425-
local CritChance = IT("NumberValue", Stats)
425+
			MSH.Scale = SIZE
426-
CritChance.Name = "CritChance"
426+
		elseif TYPE == "Wave" then
427-
CritChance.Value = 20
427+
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
428-
local CanPenetrateArmor = IT("BoolValue", Stats)
428+
		elseif TYPE == "Ring" then
429-
CanPenetrateArmor.Name = "CanPenetrateArmor"
429+
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
430-
CanPenetrateArmor.Value = false
430+
		elseif TYPE == "Slash" then
431-
local AntiTeamKill = IT("BoolValue", Stats)
431+
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
432-
AntiTeamKill.Name = "AntiTeamKill"
432+
		elseif TYPE == "Round Slash" then
433-
AntiTeamKill.Value = false
433+
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
434-
local Rooted = IT("BoolValue", Stats)
434+
		elseif TYPE == "Swirl" then
435-
Rooted.Name = "Rooted"
435+
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
436-
Rooted.Value = false
436+
		elseif TYPE == "Skull" then
437-
local Block = IT("BoolValue", Stats)
437+
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
438-
Block.Name = "Block"
438+
		elseif TYPE == "Crystal" then
439-
Block.Value = false
439+
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
440-
local RecentEnemy = IT("ObjectValue", Stats)
440+
441-
RecentEnemy.Name = "RecentEnemy"
441+
		if MSH ~= nil then
442-
RecentEnemy.Value = nil
442+
			local MOVESPEED = nil
443-
local StaggerHit = IT("BoolValue", Stats)
443+
			if MOVEDIRECTION ~= nil then
444-
StaggerHit.Name = "StaggerHit"
444+
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
445-
StaggerHit.Value = false
445+
446-
local Stagger = IT("BoolValue", Stats)
446+
			local GROWTH = SIZE - ENDSIZE
447-
Stagger.Name = "Stagger"
447+
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
448-
Stagger.Value = false
448+
			if TYPE == "Block" then
449-
local Stun = IT("BoolValue", Stats)
449+
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
450-
Stun.Name = "Stun"
450+
451-
Stun.Value = false
451+
				EFFECT.CFrame = CFRAME
452-
local StunValue = IT("NumberValue", Stats)
452+
453-
StunValue.Name = "StunValue"
453+
			for LOOP = 1, TIME+1 do
454-
StunValue.Value = 0
454+
455
				MSH.Scale = MSH.Scale - GROWTH/TIME
456-
if Enable_Stats == true and Put_Stats_In_Character == true then
456+
				if TYPE == "Wave" then
457-
	Stats.Parent = Character
457+
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
458
				end
459
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
460
				if TYPE == "Block" then
461
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
462
				else
463
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
464
				end
465
				if MOVEDIRECTION ~= nil then
466
					local ORI = EFFECT.Orientation
467
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
468-
--|| 	     DEBUFFS / BUFFS
468+
					EFFECT.Orientation = ORI
469
				end
470
			end
471-
local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
471+
			if PLAYSSOUND == false then
472-
DEFENSECHANGE1.Name = "ChangeDefense"
472+
				EFFECT:remove()
473-
DEFENSECHANGE1.Value = 0
473+
474
				repeat wait(1) until SOUND.Playing == false
475-
local MOVEMENTCHANGE1 = IT("NumberValue", nil)
475+
				EFFECT:remove()
476-
MOVEMENTCHANGE1.Name = "ChangeMovement"
476+
477-
MOVEMENTCHANGE1.Value = 0
477+
478
			if PLAYSSOUND == false then
479
				EFFECT:remove()
480
			else
481
				repeat Swait() until SOUND.Playing == false
482
				EFFECT:remove()
483
			end
484
		end
485
	end))
486
end
487
488
function MakeForm(PART,TYPE)
489
	if TYPE == "Cyl" then
490
		local MSH = IT("CylinderMesh",PART)
491
	elseif TYPE == "Ball" then
492
		local MSH = IT("SpecialMesh",PART)
493
		MSH.MeshType = "Sphere"
494
	elseif TYPE == "Wedge" then
495
		local MSH = IT("SpecialMesh",PART)
496
		MSH.MeshType = "Wedge"
497
	end
498
end
499
500
Debris = game:GetService("Debris")
501
502
function CastProperRay(StartPos, EndPos, Distance, Ignore)
503
	local DIRECTION = CF(StartPos,EndPos).lookVector
504
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
505
end
506
507
local HATWELD = nil
508
function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
509
	PLAYMAINANIM = false
510
	if WhichPose == "Cast1" then
511
		for i=0, Time, 0.1 / Animation_Speed do
512
			Swait()
513
			if Magic == true then
514
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
515
			end
516
			if Gyro ~= nil and Gyro ~= false then
517
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
518
			end
519
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
520
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
521
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
522
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
523
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
524
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
525
		end
526
	elseif WhichPose == "Cast2" then
527
		for i=0, Time, 0.1 / Animation_Speed do
528
			Swait()
529
			if Magic == true then
530
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
531
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
532
			end
533
			if Gyro ~= nil and Gyro ~= false then
534
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
535
			end
536
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
537
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
538
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
539
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
540
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
541
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
542
		end
543
	elseif WhichPose == "RightArmUp" then
544
		for i=0, Time, 0.1 / Animation_Speed do
545
			Swait()
546
			if Magic == true then
547
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
548
			end
549
			if Gyro ~= nil and Gyro ~= false then
550
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
551
			end
552
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
553
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
554
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
555
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
556
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
557
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
558
		end
559
	elseif WhichPose == "Taunt" then
560
		for i=0, Time, 0.1 / Animation_Speed do
561
			Swait()
562
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
563
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
564
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
565
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
566
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
567
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
568
		end
569
		HATWELD.Part0 = RightArm
570
		HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
571
		CreateSound(221057812,Torso,10,1,false)
572
		for i=0, Time*2, 0.1 / Animation_Speed do
573
			Swait()
574
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
575
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
576
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
577
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
578
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
579
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
580
		end
581
		for i=0, Time, 0.1 / Animation_Speed do
582
			Swait()
583
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
584
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
585
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
586
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
587
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
588
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
589
			HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
590
		end
591
		HATWELD.Part0 = Head
592
		HATWELD.C0 = CF(0,0.35,0)
593
	elseif WhichPose == "Prepare key" then
594
		for i=0, Time, 0.1 / Animation_Speed do
595
			Swait()
596
			if Gyro ~= nil and Gyro ~= false then
597
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
598
			end
599
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
600
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
601
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
602
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
603
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
604
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
605
		end
606
	elseif WhichPose == "Turn key" then
607
		for i=0, Time, 0.1 / Animation_Speed do
608
			Swait()
609
			if Gyro ~= nil and Gyro ~= false then
610
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
611
			end
612
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
613
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
614
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
615
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
616
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
617
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
618
		end
619
	end
620
	PLAYMAINANIM = true
621
end
622
623
--Lightning({Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false})
624
function Lightning(Table)
625
	local Color = Table.Color or C3(1,1,1)
626
	local StartPos = Table.Start or Torso.Position
627
	local EndPos = Table.End or Mouse.Hit.p
628
	local SegmentLength = Table.SegmentL or 2
629
	local Thickness = Table.Thickness or 0.1
630
	local Dissapear = Table.DoesFade or false
631
	local Parent = Table.Ignore or Character
632
	local MaxDist = Table.MaxDist or 400
633
	local Branches = Table.Branches or false
634
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
635
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
636
	local LIGHTNINGMODEL = IT("Model",Effects)
637
	LIGHTNINGMODEL.Name = "Lightning"
638
	local LastBolt = nil
639
	for E = 1, DISTANCE do
640
		local ExtraSize = (DISTANCE-E)/15
641
		local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Really blue"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
642
		PART.Color = Color
643
		MakeForm(PART,"Cyl")
644
		if LastBolt == nil then
645
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
646
		else
647
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
648
		end
649
		LastBolt = PART
650
		if Branches == true then
651
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
652
			if CHOICE == 1 then
653
				local LASTBRANCH = nil
654
				for i = 1, MRANDOM(2,5) do
655
					local ExtraSize2 = ((DISTANCE-E)/25)/i
656
					local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Really blue"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
657-
	label.TextColor3 = C3(255, 255, 255)
657+
					PART.Color = Color
658
					MakeForm(PART,"Cyl")
659
					if LASTBRANCH == nil then
660
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
661
					else
662
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
663-
	label.TextScaled = true
663+
664
					LASTBRANCH = PART
665
				end
666
			end
667
		end
668
	end
669
	if Dissapear == true then
670
		coroutine.resume(coroutine.create(function()
671
			for i = 1, 10 do
672
				Swait()
673
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
674-
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
674+
					if c.ClassName == "Part" then
675
						c.Transparency = i/10
676
					end
677
				end
678
			end
679
			LIGHTNINGMODEL:remove()
680
		end))
681
	elseif Dissapear == false then
682
		Debris:AddItem(LIGHTNINGMODEL,0.1)
683
	end
684
	return {End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z/2).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
685-
	NoOutlines(NEWPART)
685+
686
687
--//=================================\\
688
--||	     WEAPON CREATION
689
--\\=================================//
690
691
for i = 1, 15 do
692
	local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/15.2, "Dark stone grey", "FaceGradient", VT(1.01,0.58,1.01),false)
693
	FACE.Color = C3(0,0,0)
694
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
695
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/35,0), CF(0, 0, 0))
696
end
697
local HAT1 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(2,0.2,2),false)
698
MakeForm(HAT1,"Cyl")
699
HATWELD = CreateWeldOrSnapOrMotor("Weld", Head, Head, HAT1, CF(0,0.35,0), CF(0, 0, 0))
700
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(2.01,0.15,2.01),false)
701-
	NEWMESH.Scale = Vector3.new(1,1,1)
701+
BELT.Color = C3(15/255,15/255,15/255)
702
MakeForm(BELT,"Cyl")
703-
    PARENT.Reflectance = 1
703+
CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, BELT, CF(0,0,0), CF(0, 0, 0))
704-
    PARENT.Transparency = 1
704+
local HAT2 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.3,2.2,1.3),false)
705
MakeForm(HAT2,"Cyl")
706
CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, HAT2, CF(0,1.1,0), CF(0, 0, 0))
707
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.2,1.31),false)
708
BELT.Color = C3(15/255,15/255,15/255)
709
MakeForm(BELT,"Cyl")
710
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0,0), CF(0, 0, 0))
711
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Gem", VT(0.25,0.25,0.1),false)
712
MakeForm(GEM,"Ball")
713
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,-BELT.Size.X/2), CF(0, 0, 0))
714
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Gem", VT(0.25,0.25,0.1),false)
715
MakeForm(GEM,"Ball")
716
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,BELT.Size.X/2), CF(0, 0, 0))
717
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Gem", VT(0.1,0.25,0.25),false)
718-
function CreateSound(ID, PARENT, VOLUME, PITCH)
718+
MakeForm(GEM,"Ball")
719
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(-BELT.Size.X/2,0,0), CF(0, 0, 0))
720-
		local NEWSOUND = IT("Sound", PARENT)
720+
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "Gem", VT(0.1,0.25,0.25),false)
721
MakeForm(GEM,"Ball")
722
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(BELT.Size.X/2,0,0), CF(0, 0, 0))
723
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
724-
		Swait()
724+
BELT.Color = C3(15/255,15/255,15/255)
725
MakeForm(BELT,"Cyl")
726-
		game:GetService("Debris"):AddItem(NEWSOUND, 100)
726+
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0.7,0), CF(0, 0, 0))
727
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
728
BELT.Color = C3(15/255,15/255,15/255)
729
MakeForm(BELT,"Cyl")
730
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.7,0), CF(0, 0, 0))
731
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
732
BELT.Color = C3(15/255,15/255,15/255)
733
MakeForm(BELT,"Cyl")
734
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0.35,0), CF(0, 0, 0))
735-
function Lightning(POSITION1, POSITION2, MULTIPLIERTIME, LIGHTNINGDELAY, OFFSET, BRICKCOLOR, MATERIAL, SIZE, TRANSPARENCY, LASTINGTIME)
735+
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.31,0.1,1.31),false)
736-
	local MAGNITUDE = (POSITION1 - POSITION2).magnitude 
736+
BELT.Color = C3(15/255,15/255,15/255)
737-
	local CURRENTPOSITION = POSITION1
737+
MakeForm(BELT,"Cyl")
738-
	local LIGHTNINGOFFSET = {-OFFSET, OFFSET}
738+
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.35,0), CF(0, 0, 0))
739
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Hat", VT(1.3,0.5,1.3),false)
740-
		for i = 1, MULTIPLIERTIME do 
740+
MakeForm(BELT,"Ball")
741-
			local LIGHTNINGPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR,"Effect", VT(SIZE * Player_Size, SIZE * Player_Size, MAGNITUDE / MULTIPLIERTIME))
741+
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,HAT2.Size.Y/2,0), CF(0, 0, 0))
742-
			LIGHTNINGPART.Anchored = true
742+
743-
			local LIGHTNINGOFFSET2 = VT(LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)]) 
743+
local naeeym2 = IT("BillboardGui",Character)
744-
			local LIGHTNINGPOSITION1 = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME).p + LIGHTNINGOFFSET2
744+
745-
			if MULTIPLIERTIME == i then 
745+
naeeym2.Size = UDim2.new(5,35,2,15)
746-
				local LIGHTNINGMAGNITUDE1 = (CURRENTPOSITION - POSITION2).magnitude
746+
747-
				LIGHTNINGPART.Size = VT(SIZE * Player_Size, SIZE * Player_Size, LIGHTNINGMAGNITUDE1)
747+
naeeym2.MaxDistance = 75
748-
				LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, -LIGHTNINGMAGNITUDE1 / 2)
748+
749
naeeym2.Name = "Name"
750-
				LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, LIGHTNINGPOSITION1) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2)
750+
naeeym2.PlayerToHideFrom = Player
751
local tecks2 = IT("TextLabel",naeeym2)
752-
			CURRENTPOSITION=LIGHTNINGPART.CFrame * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2).p
752+
753-
			game.Debris:AddItem(LIGHTNINGPART, LASTINGTIME)
753+
tecks2.TextScaled = true
754
tecks2.BorderSizePixel = 0
755-
				while LIGHTNINGPART.Transparency ~= 1 do
755+
tecks2.Text = "Warden"
756-
					--local StartTransparency = tra
756+
757-
					for i=0, 1, LASTINGTIME do
757+
758-
						Swait()
758+
tecks2.TextStrokeTransparency = 0.5
759-
						LIGHTNINGPART.Transparency = LIGHTNINGPART.Transparency + (0.1 / LASTINGTIME)
759+
tecks2.TextColor3 = C3(0,0,0)
760
tecks2.TextStrokeColor3 = BRICKC"Really blue".Color
761
tecks2.Size = UDim2.new(1,0,0.5,0)
762
tecks2.Parent = naeeym2
763-
		Swait(LIGHTNINGDELAY / Animation_Speed)
763+
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.6,0.1,1)/2,false)
764
MakeForm(EYE,"Ball")
765
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
766
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.6,0.1,1)/2,false)
767
MakeForm(EYE,"Ball")
768-
function MagicBlock(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
768+
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
769-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
769+
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.1,1,1)/2,false)
770-
	EFFECTPART.Anchored = true
770+
MakeForm(EYE,"Ball")
771-
	EFFECTPART.CFrame = CFRAME
771+
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
772-
	local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
772+
local EYE = CreatePart(3, Character, "Neon", 0, 0, "Really blue", "FaceGradient", VT(0.1,1,1)/2,false)
773-
	game:GetService("Debris"):AddItem(EFFECTPART, 50)
773+
MakeForm(EYE,"Ball")
774-
	coroutine.resume(coroutine.create(function(PART, MESH)
774+
CreateWeldOrSnapOrMotor("Weld", Head, Head, EYE, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
775-
		for i = 0, 1, delay do
775+
776
local top = Instance.new("Shirt")
777-
			PART.CFrame = PART.CFrame * ROTATION
777+
top.ShirtTemplate = "rbxassetid://676428254"
778-
			PART.Transparency = i
778+
top.Parent = Character
779-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
779+
top.Name = "Cloth"
780
local bottom = Instance.new("Pants")
781-
		PART.Parent = nil
781+
bottom.PantsTemplate = "rbxassetid://676428351"
782-
	end), EFFECTPART, EFFECTMESH)
782+
bottom.Parent = Character
783
bottom.Name = "Cloth"
784
for _, c in pairs(Character:GetChildren()) do
785-
function MagicSphere(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
785+
	if c.ClassName == "Part" and c.Name ~= "FaceGradient" and c.Name ~= "Hat" and c.Name ~= "Gem" then
786-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
786+
		c.Material = "Neon"
787-
	EFFECTPART.Anchored = true
787+
		if c:FindFirstChildOfClass("ParticleEmitter") then
788-
	EFFECTPART.CFrame = CFRAME
788+
			c:FindFirstChildOfClass("ParticleEmitter"):remove()
789-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Sphere", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
789+
790-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
790+
		c.Color = C3(1,1,1)
791-
	coroutine.resume(coroutine.create(function(PART, MESH)
791+
		if c == Head then
792-
		for i = 0, 1, delay do
792+
			if c:FindFirstChild("face") then
793
				c.face:remove()
794-
			PART.CFrame = PART.CFrame * ROTATION
794+
795-
			PART.Transparency = i
795+
796-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
796+
	elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
797
		c:remove()
798-
		PART.Parent = nil
798+
	elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
799-
	end), EFFECTPART, EFFECTMESH)
799+
		c:remove()
800
	end
801
end
802-
function MagicCylinder(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
802+
local BODY = {}
803-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
803+
for _, c in pairs(Character:GetDescendants()) do
804-
	EFFECTPART.Anchored = true
804+
	if c:IsA("BasePart") and c.Name ~= "Handle" then
805-
	EFFECTPART.CFrame = CFRAME
805+
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
806-
	local EFFECTMESH = CreateMesh("CylinderMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
806+
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
807-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
807+
808-
	coroutine.resume(coroutine.create(function(PART, MESH)
808+
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
809-
		for i = 0, 1, delay do
809+
	elseif c:IsA("JointInstance") then
810
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
811-
			PART.CFrame = PART.CFrame * ROTATION
811+
812-
			PART.Transparency = i
812+
813-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
813+
for e = 1, #BODY do
814
	if BODY[e] ~= nil then
815-
		PART.Parent = nil
815+
		local STUFF = BODY[e]
816-
	end), EFFECTPART, EFFECTMESH)
816+
		local PART = STUFF[1]
817
		local PARENT = STUFF[2]
818
		local MATERIAL = STUFF[3]
819-
function MagicHead(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
819+
		local COLOR = STUFF[4]
820-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
820+
		local TRANSPARENCY = STUFF[5]
821-
	EFFECTPART.Anchored = true
821+
		if PART.ClassName == "Part" and PART ~= RootPart then
822-
	EFFECTPART.CFrame = CFRAME
822+
			PART.Material = MATERIAL
823-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Head", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
823+
			PART.Color = COLOR
824-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
824+
			PART.Transparency = TRANSPARENCY
825-
	coroutine.resume(coroutine.create(function(PART, MESH)
825+
826-
		for i = 0, 1, delay do
826+
		PART.AncestryChanged:Connect(function()
827
			PART.Parent = PARENT
828-
			PART.CFrame = PART.CFrame * ROTATION
828+
829-
			PART.Transparency = i
829+
830-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
830+
831
function refit()
832-
		PART.Parent = nil
832+
	Character.Parent = workspace
833-
	end), EFFECTPART, EFFECTMESH)
833+
	for e = 1, #BODY do
834
		if BODY[e] ~= nil then
835
			local STUFF = BODY[e]
836-
function MagicRing(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
836+
			local PART = STUFF[1]
837-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
837+
			local PARENT = STUFF[2]
838-
	EFFECTPART.Anchored = true
838+
			local MATERIAL = STUFF[3]
839-
	EFFECTPART.CFrame = CFRAME
839+
			local COLOR = STUFF[4]
840-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "3270017", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
840+
			local TRANSPARENCY = STUFF[5]
841-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
841+
			if PART.ClassName == "Part" and PART ~= RootPart then
842-
	coroutine.resume(coroutine.create(function(PART, MESH)
842+
				PART.Material = MATERIAL
843-
		for i = 0, 1, delay do
843+
				PART.Color = COLOR
844
				PART.Transparency = TRANSPARENCY
845-
			PART.CFrame = PART.CFrame * ROTATION
845+
846-
			PART.Transparency = i
846+
			if PART.Parent ~= PARENT then
847-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
847+
				Humanoid:remove()
848
				PART.Parent = PARENT
849-
		PART.Parent = nil
849+
				Humanoid = IT("Humanoid",Character)
850-
	end), EFFECTPART, EFFECTMESH)
850+
851
		end
852
	end
853-
function MagicWave(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
853+
854-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
854+
local SKILLTEXTCOLOR = BRICKC"Really blue".Color
855-
	EFFECTPART.Anchored = true
855+
local SKILLFONT = "Bodoni"
856-
	EFFECTPART.CFrame = CFRAME
856+
local SKILLTEXTSIZE = 7
857-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "20329976", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), VT(0, 0, (-0.1 * Z1)) + (OFFSET * Player_Size))
857+
858-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
858+
859-
	coroutine.resume(coroutine.create(function(PART, MESH)
859+
	refit()
860-
		for i = 0, 1, delay do
860+
861
862-
			PART.CFrame = PART.CFrame * ROTATION
862+
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
863-
			PART.Transparency = i
863+
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
864-
			MESH.Offset = VT(0, 0, (-0.1 * MESH.Scale.Z))
864+
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
865-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
865+
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
866
local SKILL5FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.365, 0, 0.70, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
867-
		PART.Parent = nil
867+
868-
	end), EFFECTPART, EFFECTMESH)
868+
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Warden Zap", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 1")
869
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Warden Thunder", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 2")
870
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Inferno Ring", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
871-
function MagicCrystal(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
871+
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Warden Wall", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
872-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
872+
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Prison Key", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 5")
873-
	EFFECTPART.Anchored = true
873+
874-
	EFFECTPART.CFrame = CFRAME
874+
875-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "9756362", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
875+
--||			DAMAGING
876-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
876+
877-
	coroutine.resume(coroutine.create(function(PART, MESH)
877+
878-
		for i = 0, 1, delay do
878+
function ApplyAoE(POSITION,RANGE,FLING,BURN)
879
	local CHILDREN = workspace:GetDescendants()
880-
			PART.CFrame = PART.CFrame * ROTATION
880+
	for index, CHILD in pairs(CHILDREN) do
881-
			PART.Transparency = i
881+
		if CHILD.ClassName == "Model" and CHILD ~= Character then
882-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
882+
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
883
			if HUM then
884-
		PART.Parent = nil
884+
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
885-
	end), EFFECTPART, EFFECTMESH)
885+
				if TORSO then
886
					if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
887
						CHILD:BreakJoints()
888-
function MagicSwirl(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
888+
						if FLING ~= 0 then
889-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
889+
							for _, c in pairs(CHILD:GetChildren()) do
890-
	EFFECTPART.Anchored = true
890+
								if c:IsA("BasePart") and c.Transparency == 0 then
891-
	EFFECTPART.CFrame = CFRAME
891+
									if BURN == true then
892-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1051557", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
892+
										Fire(c)
893-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
893+
									end
894-
	coroutine.resume(coroutine.create(function(PART, MESH)
894+
									local bv = Instance.new("BodyVelocity") 
895-
		for i = 0, 10, delay do
895+
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
896
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
897-
			PART.CFrame = PART.CFrame * Head.CFrame
897+
									bv.Parent = c
898-
			PART.Transparency = 0
898+
									Debris:AddItem(bv,0.05)
899-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
899+
								end
900
							end
901-
		--PART.Parent = nil
901+
902-
	end), EFFECTPART, EFFECTMESH)
902+
903
				end
904
			end
905-
function MagicSharpCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
905+
906-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
906+
907-
	EFFECTPART.Anchored = true
907+
908-
	EFFECTPART.CFrame = CFRAME
908+
909-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1778999", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
909+
910-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
910+
911-
	coroutine.resume(coroutine.create(function(PART, MESH)
911+
912-
		for i = 0, 1, delay do
912+
913
function Warden_Zap()
914-
			PART.CFrame = PART.CFrame * ROTATION
914+
915-
			PART.Transparency = i
915+
	Rooted = false
916-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
916+
	local GYRO = IT("BodyGyro",RootPart)
917
	GYRO.D = 750
918-
		PART.Parent = nil
918+
	GYRO.P = 20000
919-
	end), EFFECTPART, EFFECTMESH)
919+
	GYRO.MaxTorque = VT(0,40000000,0)
920
	CreateSound(348663022,RightArm,1.5,2,false)
921
	Pose("Cast1",0.8,1,true,GYRO)
922-
function MagicFlatCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
922+
	local LightningTable = Lightning({Color = SKILLTEXTCOLOR, Start = RightArm.CFrame*CF(0,-1,0).p, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.2, DoesFade = true, Ignore = Character, MaxDist = 100, Branches = false})
923-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
923+
	local Hitpos = LightningTable.End
924-
	EFFECTPART.Anchored = true
924+
	ApplyAoE(Hitpos,10,35)
925-
	EFFECTPART.CFrame = CFRAME
925+
	WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(1,1,1)*15, Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = BOLTSOUNDS[MRANDOM(1,#BOLTSOUNDS)], SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
926-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1033714", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
926+
	for i = 1, 4 do
927-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
927+
		WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,45,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
928-
	coroutine.resume(coroutine.create(function(PART, MESH)
928+
929-
		for i = 0, 1, delay do
929+
	Pose("Cast1",0.8,1,true)
930
	GYRO:remove()
931-
			PART.CFrame = PART.CFrame * Vector3.new(0,0,0)
931+
932-
			PART.Transparency = i
932+
	Rooted = false
933-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
933+
934
935-
		PART.Parent = nil
935+
function Warden_Thunder()
936-
	end), EFFECTPART, EFFECTMESH)
936+
937
	Rooted = false
938
	local GYRO = IT("BodyGyro",RootPart)
939-
function MagicSpikedCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
939+
	GYRO.D = 750
940-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
940+
	GYRO.P = 20000
941-
	EFFECTPART.Anchored = true
941+
	GYRO.MaxTorque = VT(0,40000000,0)
942-
	EFFECTPART.CFrame = CFRAME
942+
	CreateSound(469345336,Torso,3,2,false)
943-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1323306", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
943+
	Pose("Cast2",1.5,2,true,GYRO)
944-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
944+
945-
	coroutine.resume(coroutine.create(function(PART, MESH)
945+
		local FRAME = RootPart.CFrame
946-
		for i = 0, 1, delay do
946+
		for i = 1, 25 do
947
			local POS = FRAME*CF(MRANDOM(-17,17),0,-i*15)
948-
			PART.CFrame = PART.CFrame * Head.CFrame
948+
			local LightningTable = Lightning({Color = SKILLTEXTCOLOR, Start = POS*CF(0,85,0).p, End = POS*CF(0,-15,0).p, SegmentL = 3, Thickness = 0.4, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = true})
949-
			PART.Transparency = i
949+
			local Hitpos = LightningTable.End
950-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
950+
			ApplyAoE(Hitpos,20,15)
951
			WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(1,1,1)*15, Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = BOLTSOUNDS[MRANDOM(1,#BOLTSOUNDS)], SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
952-
		PART.Parent = nil
952+
			for i = 1, 4 do
953-
	end), EFFECTPART, EFFECTMESH)
953+
				WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,75,0), Transparency = 0, Transparency2 = 1, CFrame = CF(Hitpos)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
954
			end
955
			wait(0.05)
956-
function MagicFlatCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
956+
957-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
957+
958-
	EFFECTPART.Anchored = true
958+
	Pose("Cast2",1.5,0.7,true)
959-
	EFFECTPART.CFrame = CFRAME
959+
	GYRO:remove()
960-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1078075", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
960+
961-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
961+
	Rooted = false
962-
	coroutine.resume(coroutine.create(function(PART, MESH)
962+
963-
		for i = 0, 1, delay do
963+
964
function Inferno_Ring()
965-
			PART.CFrame = PART.CFrame * ROTATION
965+
966-
			PART.Transparency = i
966+
	Rooted = false
967-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
967+
	local GYRO = IT("BodyGyro",RootPart)
968
	GYRO.D = 750
969-
		PART.Parent = nil
969+
	GYRO.P = 20000
970-
	end), EFFECTPART, EFFECTMESH)
970+
	GYRO.MaxTorque = VT(0,40000000,0)
971
	local FIRE = IT("Model",Effects)
972
	FIRE.Name = "Fire"
973-
function MagicSkull(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
973+
	local MAIN = CreatePart(3, FIRE, "Neon", 0, 1, "Deep orange", "Center", VT(0,0,0))
974-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
974+
	FIRE.PrimaryPart = MAIN
975-
	EFFECTPART.Anchored = true
975+
	local FIRES = {}
976-
	EFFECTPART.CFrame = CFRAME
976+
	for i = 1, 45 do
977-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
977+
		local PRT = CreatePart(3, FIRE, "Neon", 0, 1, "Deep orange", "RingPart", VT(3,3,3))
978-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
978+
		PRT.CFrame = MAIN.CFrame*ANGLES(RAD(0),RAD((360/45)*i),RAD(0))*CF(0,0,20)
979-
	coroutine.resume(coroutine.create(function(PART, MESH)
979+
		local F = Fire(PRT)
980-
		for i = 0, 1, delay do
980+
		table.insert(FIRES,F)
981
	end
982-
			PART.CFrame = PART.CFrame * ROTATION
982+
	repeat
983-
			PART.Transparency = i
983+
		FIRE:SetPrimaryPartCFrame(CF(Mouse.Hit.p))
984-
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
984+
		Pose("Cast1",1.5,0.01,false,GYRO)
985
	until HOLD == true
986-
		PART.Parent = nil
986+
987-
	end), EFFECTPART, EFFECTMESH)
987+
		for i = 1, 4 do
988
			ApplyAoE(MAIN.Position,21,-15,true)
989
			CreateSound(463598785,MAIN,3,1,false)
990-
function ElectricEffect(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X, Y, Z, delay)
990+
			for E = 1, #FIRES do
991-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
991+
				if FIRES[E] ~= nil then
992-
	EFFECTPART.Anchored = true
992+
					FIRES[E].Acceleration = VT(0,300,0)
993-
	EFFECTPART.CFrame = CFRAME
993+
					FIRES[E].Lifetime=NumberRange.new(0.35,1.5)
994-
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X * Player_Size, Y * Player_Size, Z * Player_Size), OFFSET * Player_Size)
994+
995-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
995+
996-
	local XVALUE = MRANDOM()
996+
			wait(0.3)
997-
	local YVALUE = MRANDOM()
997+
998-
	local ZVALUE = MRANDOM()
998+
		for E = 1, #FIRES do
999-
	coroutine.resume(coroutine.create(function(PART, MESH, THEXVALUE, THEYVALUE, THEZVALUE)
999+
			if FIRES[E] ~= nil then
1000-
		for i = 0, 1, delay do
1000+
				FIRES[E].Enabled = false
1001
			end
1002-
			PART.CFrame = PART.CFrame * ROTATION
1002+
1003-
			PART.Transparency = i
1003+
		Debris:AddItem(FIRE,5)
1004-
			THEXVALUE = THEXVALUE - 0.1 * (delay * 10)
1004+
1005-
			THEYVALUE = THEYVALUE - 0.1 * (delay * 10)
1005+
	CreateSound(215395388,RightArm,3,2,false)
1006-
			THEZVALUE = THEZVALUE - 0.1 * (delay * 10)
1006+
	Pose("RightArmUp",1.5,0.5,true)
1007-
			MESH.Scale = MESH.Scale + VT(THEXVALUE * Player_Size, THEYVALUE * Player_Size, THEZVALUE * Player_Size)
1007+
	GYRO:remove()
1008
	ATTACK = false
1009-
		PART.Parent = nil
1009+
	Rooted = false
1010-
	end), EFFECTPART, EFFECTMESH, XVALUE, YVALUE, ZVALUE)
1010+
1011
1012
function Warden_Wall()
1013-
function TrailEffect(BRICKCOLOR, MATERIAL, CURRENTCFRAME, OLDCFRAME, MESHTYPE, REFLECTANCE, SIZE, ROTATION, X, Y, Z, delay)
1013+
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 8, Character)
1014-
	local MAGNITUDECFRAME = (CURRENTCFRAME.p - OLDCFRAME.p).magnitude
1014+
	if HITFLOOR ~= nil then
1015-
	if MAGNITUDECFRAME > (1 / 100) then
1015+
		if HITFLOOR.Anchored == true then
1016-
		local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT(1, MAGNITUDECFRAME, 1))
1016+
			local WALL = HITFLOOR:Clone()
1017-
		EFFECTPART.Anchored = true
1017+
			WALL.Size = VT(45,45,5)
1018-
		EFFECTPART.CFrame = CF((CURRENTCFRAME.p + OLDCFRAME.p) / 2, OLDCFRAME.p) * ANGLES(RAD(90), 0, 0)
1018+
			WALL.Parent = Effects
1019-
		local THEMESHTYPE = "BlockMesh"
1019+
			WALL.Name = "Wall"
1020-
		if MESHTYPE == "Cylinder" then
1020+
			WALL.CFrame = RootPart.CFrame*CF(0,-65/2.1,-5)*ANGLES(RAD(-15),RAD(0),RAD(0))
1021-
			THEMESHTYPE = "CylinderMesh"
1021+
			CreateSound(130972023,WALL,5,0.8,false)
1022
			ATTACK = true
1023-
		local EFFECTMESH = CreateMesh(THEMESHTYPE, EFFECTPART, "", "", "", VT(0 + SIZE * Player_Size, 1, 0 + SIZE * Player_Size), VT(0, 0, 0))
1023+
			Rooted = true
1024-
		game:GetService("Debris"):AddItem(EFFECTPART, 10)
1024+
			local HIT = WALL.Touched:Connect(function(hit)
1025-
		coroutine.resume(coroutine.create(function(PART, MESH)
1025+
				if hit.Parent ~= Character then
1026-
			for i = 0, 1, delay do
1026+
					hit:BreakJoints()
1027
				end
1028-
				PART.CFrame = PART.CFrame * ROTATION
1028+
			end)
1029-
				PART.Transparency = i
1029+
1030-
				MESH.Scale = MESH.Scale + VT(X * Player_Size, Y * Player_Size, Z * Player_Size)
1030+
				WACKYEFFECT({Time = 35, EffectType = "Box", Size = WALL.Size, Size2 = WALL.Size*2, Transparency = 0, Transparency2 = 1, CFrame = WALL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1031
				for i = 1, 90 do
1032-
			PART.Parent = nil
1032+
1033-
		end), EFFECTPART, EFFECTMESH)
1033+
					WALL.CFrame = WALL.CFrame*CF(0,0.5,0)
1034
				end
1035
				HIT:disconnect()
1036
				wait(5)
1037-
function ClangEffect(BRICKCOLOR, MATERIAL, CFRAME, ANGLE, DURATION, SIZE, POWER, REFLECTANCE, X, Y, Z, delay)
1037+
				for i = 1, 46 do
1038-
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 1, BRICKCOLOR, "Effect", VT())
1038+
1039-
	EFFECTPART.Anchored = true
1039+
					WALL.CFrame = WALL.CFrame*CF(0,-1,0)
1040-
	EFFECTPART.CFrame = CFRAME
1040+
1041-
	local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(0, 0, 0), VT(0, 0, 0))
1041+
				WALL:remove()
1042-
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
1042+
1043-
	local THELASTPOINT = CFRAME
1043+
			Pose("RightArmUp",1.5,1.2,true)
1044-
	coroutine.resume(coroutine.create(function(PART)
1044+
			ATTACK = false
1045-
		for i = 1, DURATION do
1045+
			Rooted = false
1046
		end
1047-
			PART.CFrame = PART.CFrame * ANGLES(RAD(ANGLE), 0, 0) * CF(0, POWER * Player_Size, 0)
1047+
1048-
			TrailEffect(BRICKCOLOR, MATERIAL, PART.CFrame, THELASTPOINT, "Cylinder", REFLECTANCE, SIZE * Player_Size, ANGLES(0, 0, 0), X * Player_Size, Y * Player_Size, Z * Player_Size, delay)
1048+
1049-
			THELASTPOINT = PART.CFrame
1049+
1050
function Prison_Key()
1051-
		PART.Parent = nil
1051+
	if Mouse.Target ~= nil then
1052-
	end), EFFECTPART)
1052+
		if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
1053
			local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
1054
			local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
1055-
--local list={}
1055+
			local GYRO = IT("BodyGyro",RootPart)
1056-
function Triangle(Color, Material, a, b, c, delay)
1056+
			GYRO.D = 750
1057-
	local edge1 = (c - a):Dot((b - a).unit)
1057+
			GYRO.P = 20000
1058-
	local edge2 = (a - b):Dot((c - b).unit)
1058+
			GYRO.MaxTorque = VT(0,40000000,0)
1059-
	local edge3 = (b - c):Dot((a - c).unit)
1059+
			local grav = Instance.new("BodyPosition",TORSO)
1060-
	if edge1 <= (b - a).magnitude and edge1 >= 0 then
1060+
			grav.D = 15
1061-
		a, b, c=a, b, c
1061+
			grav.P = 20000
1062-
	elseif edge2 <= (c - b).magnitude and edge2 >= 0 then
1062+
			grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1063-
		a, b, c=b, c, a
1063+
			grav.position = TORSO.Position
1064-
	elseif edge3 <= (a - c).magnitude and edge3 >= 0 then
1064+
			local GYRO2 = IT("BodyGyro",TORSO)
1065-
		a, b, c=c, a, b
1065+
			GYRO2.D = 750
1066
			GYRO2.P = 20000
1067-
		assert(false, "unreachable")
1067+
			GYRO2.MaxTorque = VT(0,40000000,0)
1068
			GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1069-
	local len1 = (c - a):Dot((b - a).unit)
1069+
			grav.Name = "Jail"
1070-
	local len2 = (b - a).magnitude - len1
1070+
			local LOCKPARTS = {}
1071-
	local width = (a + (b - a).unit * len1 - c).magnitude
1071+
			ATTACK = true
1072-
	local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, - (b - a).unit)
1072+
			Rooted = false
1073-
	if len1 > 1 / 100 then
1073+
			local LOCK = IT("Model",Effects)
1074-
		local sz = VT(0.2, width, len1)
1074+
			LOCK.Name = "Lock"
1075-
		local w1 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
1075+
			local LOCK2 = IT("Model",LOCK)
1076-
		local sp = CreateMesh("SpecialMesh", w1, "Wedge", "", "", VT(0, 1, 1) * sz / w1.Size, VT(0, 0, 0))
1076+
			LOCK2.Name = "Metal"
1077-
		w1.Anchored = true
1077+
			--CREATE LOCK--
1078-
		w1.CFrame = maincf * ANGLES(math.pi, 0, math.pi / 2) * CF(0, width / 2, len1 / 2)
1078+
				local BASE = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 2.5, 1))
1079
				LOCK.PrimaryPart = BASE
1080-
			for i = 0.5, 1, delay * (2 / Animation_Speed) do
1080+
				BASE.CFrame = CF(TORSO.Position,RootPart.Position)*CF(0,0,-4)
1081
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "Gold", "Keylock", VT(3, 1, 3))
1082-
				w1.Transparency = i
1082+
				PRT.CFrame = BASE.CFrame*CF(0,-1.25,0)*ANGLES(RAD(90),RAD(0),RAD(0))
1083
				MakeForm(PRT,"Cyl")
1084-
			w1.Parent = nil
1084+
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(1, 1, 1))
1085
				PRT.Color = C3(0,0,0)
1086-
		game:GetService("Debris"):AddItem(w1, 10)
1086+
				PRT.CFrame = BASE.CFrame*CF(0,0.3,-0.01)*ANGLES(RAD(90),RAD(0),RAD(0))
1087-
		--table.insert(list, w1)
1087+
				MakeForm(PRT,"Cyl")
1088
				local PRT = CreatePart(3, LOCK, "Glass", 0, 0, "White", "Hole", VT(0.5, 1, 1))
1089-
	if len2 > 1 / 100 then
1089+
				PRT.Color = C3(0,0,0)
1090-
		local sz = VT(0.2, width, len2)
1090+
				PRT.CFrame = BASE.CFrame*CF(0,-0.2,-0.01)
1091-
		local w2 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
1091+
				for i = 1, 45 do
1092-
		local sp = CreateMesh("SpecialMesh", w2, "Wedge", "", "", VT(0, 1, 1) * sz / w2.Size, VT(0, 0, 0))
1092+
					local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
1093-
		w2.Anchored = true
1093+
					PRT.CFrame = BASE.CFrame*CF(0,2,0)*ANGLES(RAD(0),RAD(0),RAD(-90+(360/90*i)))*CF(0,1,0)
1094-
		w2.CFrame = maincf * ANGLES(math.pi, math.pi, -math.pi / 2) * CF(0, width / 2, -len1 - len2 / 2)
1094+
1095
				local PRT = CreatePart(3, LOCK2, "Glass", 0, 0, "Grey", "Keylock", VT(0.5, 0.5, 0.5))
1096-
			for i = 0.5, 1, delay * (2 / Animation_Speed) do
1096+
				PRT.CFrame = BASE.CFrame*CF(0,1.5,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0)
1097
				LOCK2.PrimaryPart = PRT
1098-
				w2.Transparency = i
1098+
			---------------
1099
			local CHILDREN = LOCK:GetDescendants()
1100-
			w2.Parent = nil
1100+
			for index, CHILD in pairs(CHILDREN) do
1101
				if CHILD:IsA("BasePart") then
1102-
		game:GetService("Debris"):AddItem(w2, 10)
1102+
					CHILD.Transparency = 1
1103-
		--table.insert(list, w2)
1103+
1104
			end
1105-
	--return unpack(list)
1105+
			for i = 1, 75 do
1106
				LOCK:SetPrimaryPartCFrame(CF(TORSO.Position,RootPart.Position)*CF(0,0,-4))
1107
				Swait()
1108-
--[[Usage:
1108+
				GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1109-
	local Pos = Part
1109+
				GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1110-
	local Offset = Part.CFrame * CF(0, 0, 0)
1110+
				local CHILDREN = LOCK:GetDescendants()
1111-
	local Color = "Institutional white"
1111+
				for index, CHILD in pairs(CHILDREN) do
1112-
	local Material = "Neon"
1112+
					if CHILD:IsA("BasePart") then
1113-
	local TheDelay = 0.01
1113+
						CHILD.Transparency = CHILD.Transparency - 1/75
1114-
	local Height = 4
1114+
1115-
	BLCF = Offset
1115+
1116-
	if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
1116+
1117-
		local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
1117+
			HUM.DisplayDistanceType = "None"
1118-
		if a then game:GetService("Debris"):AddItem(a, 1) end
1118+
			local KEY = IT("Model",Effects)
1119-
		if b then game:GetService("Debris"):AddItem(b, 1) end
1119+
			KEY.Name = "Key"
1120-
		local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
1120+
			--CREATE KEY--
1121-
		if a then game:GetService("Debris"):AddItem(a, 1) end
1121+
				local KBASE = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "KeyBase", VT(0.1, 1, 0.1),false)
1122-
		if b then game:GetService("Debris"):AddItem(b, 1) end
1122+
				KEY.PrimaryPart = KBASE
1123-
		SCFR = BLCF
1123+
				KBASE.CFrame = RightArm.CFrame*CF(0,-2.1,0)*ANGLES(RAD(0),RAD(90),RAD(0))
1124-
	elseif not SCFR then
1124+
				local WLD = weldBetween(RightArm,KBASE)
1125-
		SCFR = BLCF
1125+
				for i = 1, 45 do
1126
					local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "Key", VT(0.1, 0.1, 0.1),false)
1127-
--
1127+
					PRT.CFrame = KBASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD((360/45*i)))*CF(0,0.25,0)
1128-
BLCF = nil
1128+
					weldBetween(KBASE,PRT)
1129-
SCFR = nil
1129+
1130-
--]]
1130+
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "Key", VT(0.3, 0.1, 0.1),false)
1131
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.45,0)
1132
				weldBetween(KBASE,PRT)
1133
				local PRT = CreatePart(3, KEY, "Neon", 0, 0, "Really blue", "Key", VT(0.3, 0.1, 0.1),false)
1134
				PRT.CFrame = KBASE.CFrame*CF(-0.15,-0.25,0)
1135
				weldBetween(KBASE,PRT)
1136
			--------------
1137
			Rooted = true
1138
			Pose("Prepare key",1.5,1.2,false,GYRO,TORSO)
1139
			coroutine.resume(coroutine.create(function()
1140
				for i = 1, 10 do
1141
					Swait()
1142
					GYRO2.cframe = CF(TORSO.Position,RootPart.Position)
1143
					GYRO.cframe = CF(RootPart.Position,TORSO.Position)
1144
				end
1145
				CreateSound(1149318312,BASE,5,1,false)
1146
				CreateSound(160772554,BASE,3,1,false)
1147
				LOCK2:SetPrimaryPartCFrame(BASE.CFrame*CF(0,0.8,0)*ANGLES(RAD(0),RAD(0),RAD(90))*CF(0,1,0))
1148
				for i = 1, 4 do
1149-
--||	      RESIZE PLAYER
1149+
					WACKYEFFECT({Time = 35, EffectType = "Crystal", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(1,1.45,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1150
				end
1151
				WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1)*25, Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BRICKC"Really blue".Color, SoundID = nil, SoundPitch = MRANDOM(8,12)/10, SoundVolume = 5})
1152-
if Player_Size ~= 1 then
1152+
				wait(1)
1153-
RootPart.Size = RootPart.Size * Player_Size
1153+
				TORSO.Parent.Parent = LOCK
1154-
Torso.Size = Torso.Size * Player_Size
1154+
				for i = 1, 75 do
1155-
Head.Size = Head.Size * Player_Size
1155+
1156-
RightArm.Size = RightArm.Size * Player_Size
1156+
					local CHILDREN = KEY:GetDescendants()
1157-
LeftArm.Size = LeftArm.Size * Player_Size
1157+
					for index, CHILD in pairs(CHILDREN) do
1158-
RightLeg.Size = RightLeg.Size * Player_Size
1158+
						if CHILD:IsA("BasePart") then
1159-
LeftLeg.Size = LeftLeg.Size * Player_Size
1159+
							CHILD.Transparency = i/25
1160-
RootJoint.Parent = RootPart
1160+
1161-
Neck.Parent = Torso
1161+
1162-
RightShoulder.Parent = Torso
1162+
					local CHILDREN = LOCK:GetDescendants()
1163-
LeftShoulder.Parent = Torso
1163+
					for index, CHILD in pairs(CHILDREN) do
1164-
RightHip.Parent = Torso
1164+
						if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
1165-
LeftHip.Parent = Torso
1165+
							CHILD.Transparency = CHILD.Transparency + 1/75
1166-
	
1166+
						elseif CHILD.ClassName == "Decal" then
1167-
RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1167+
							CHILD.Transparency = CHILD.Transparency + 1/75
1168-
	RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1168+
1169-
	Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
1169+
1170-
	Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
1170+
1171-
	RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
1171+
				TORSO.Parent:ClearAllChildren()
1172-
	LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
1172+
				KEY:remove()
1173-
	if Disable_Moving_Arms == false then
1173+
				LOCK:remove()
1174-
		RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
1174+
1175-
		LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
1175+
			Pose("Turn key",0.8,1.2,false,GYRO,TORSO)
1176
			GYRO:remove()
1177-
		RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
1177+
			ATTACK = false
1178-
		LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
1178+
			Rooted = false
1179
		end
1180-
	RightHip.C0 = CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1180+
1181-
	LeftHip.C0 = CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1181+
1182-
	RightHip.C1 = CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1182+
1183-
	LeftHip.C1 = CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1183+
function Hat()
1184
	ATTACK = true
1185
	Rooted = false
1186
	Pose("Taunt",0.4,1.2,false)
1187
	ATTACK = false
1188
	Rooted = false
1189
end
1190
1191
--//=================================\\
1192
--||	  ASSIGN THINGS TO KEYS
1193
--\\=================================//
1194
1195
function MouseDown(Mouse)
1196
	HOLD = true
1197
	if ATTACK == false then
1198-
local HandlePart = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Carnation pink", "Handle", VT(0, 0, 0))
1198+
1199-
local HandleMesh = CreateMesh("SpecialMesh", HandlePart, "FileMesh", "93180631", "93180676", VT(1, 1, 1), VT(0, 3.1 * Player_Size, 0))
1199+
1200-
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Torso, HandlePart, CF(2 * Player_Size, 2 * Player_Size, 0.6 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(135)), CF(0, 0, 0))
1200+
1201
function MouseUp(Mouse)
1202-
local HitboxPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Carnation pink", "Hitbox", VT(0, 0, 0))
1202+
1203-
local HitboxWeld = CreateWeldOrSnapOrMotor("Weld", HitboxPart, HandlePart, HitboxPart, CF(0 * Player_Size, 4 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
1203+
1204
1205-
local EffectPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Carnation pink", "Effect Part", VT(0, 0, 0))
1205+
1206-
local EffectWeld = CreateWeldOrSnapOrMotor("Weld", EffectPart, HandlePart, EffectPart, CF(0 * Player_Size, 7 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
1206+
	KEYHOLD = true
1207
	if Key == "z" and ATTACK == false then
1208-
if Player_Size ~= 1 then
1208+
		Warden_Zap()
1209-
	for _, v in pairs (Weapon:GetChildren()) do
1209+
1210-
		if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
1210+
1211-
			local p1 = v.Part1
1211+
	if Key == "b" and ATTACK == false then
1212-
			v.Part1 = nil
1212+
		Warden_Thunder()
1213-
			local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
1213+
1214-
			v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
1214+
1215-
			v.Part1 = p1
1215+
	if Key == "c" and ATTACK == false then
1216-
		elseif v.ClassName == "Part" then
1216+
		Inferno_Ring()
1217-
			for _, b in pairs (v:GetChildren()) do
1217+
1218-
				if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
1218+
1219-
					b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
1219+
	if Key == "v" and ATTACK == false then
1220
		Warden_Wall()
1221
	end
1222
1223
	if Key == "x" and ATTACK == false then
1224
		Prison_Key()
1225
	end
1226-
for _, c in pairs(Weapon:GetChildren()) do
1226+
1227-
	if c.ClassName == "Part" then
1227+
	if Key == "t" and ATTACK == false then
1228-
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1228+
		Hat()
1229
	end
1230
end
1231
1232-
if Start_Equipped == true and Start_Equipped_With_Equipped_Animation == false then
1232+
1233-
	HandleWeld.Part0 = RightArm
1233+
	KEYHOLD = false
1234-
	HandleWeld.C0 = CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1234+
1235
1236
	Mouse.Button1Down:connect(function(NEWKEY)
1237-
Weapon.Parent = Character
1237+
1238
	end)
1239
	Mouse.Button1Up:connect(function(NEWKEY)
1240
		MouseUp(NEWKEY)
1241
	end)
1242
	Mouse.KeyDown:connect(function(NEWKEY)
1243-
print(Class_Name.." loaded.")
1243+
1244
	end)
1245
	Mouse.KeyUp:connect(function(NEWKEY)
1246
		KeyUp(NEWKEY)
1247
	end)
1248
1249
--//=================================\\
1250
--\\=================================//
1251
1252
1253-
--||	     DAMAGE FUNCTIONS
1253+
1254
	if UNANCHOR == true then
1255
		g = Character:GetChildren()
1256-
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
1256+
		for i = 1, #g do
1257-
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Carnation pink", "Effect", VT())
1257+
			if g[i].ClassName == "Part" then
1258-
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
1258+
				g[i].Anchored = false
1259-
	local BODYGYRO = IT("BodyGyro", STATPART)
1259+
1260-
	local BODYPOSITION = IT("BodyPosition", STATPART)
1260+
1261-
	BODYPOSITION.P = 2000
1261+
1262-
	BODYPOSITION.D = 100
1262+
1263-
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
1263+
1264-
	if LABELTYPE == "Normal" then
1264+
1265-
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
1265+
1266-
	elseif LABELTYPE == "Debuff" then
1266+
--||	WRAP THE WHOLE SCRIPT UP
1267-
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
1267+
1268-
	elseif LABELTYPE == "Interruption" then
1268+
1269-
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
1269+
1270
	if Jump == "Jump" and (Disable_Jump == true) then
1271-
	game:GetService("Debris"):AddItem(STATPART ,5)
1271+
1272-
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
1272+
1273-
	BILLBOARDGUI.Adornee = STATPART
1273+
1274-
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
1274+
1275-
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
1275+
1276-
	BILLBOARDGUI.AlwaysOnTop = false
1276+
1277-
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
1277+
	script.Parent = WEAPONGUI
1278-
	TEXTLABEL.BackgroundTransparency = 1
1278+
	Humanoid.Parent = Character
1279-
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
1279+
	if Humanoid then
1280-
	TEXTLABEL.Text = TEXT
1280+
1281-
	TEXTLABEL.Font = "SourceSans"
1281+
1282-
	TEXTLABEL.FontSize="Size42"
1282+
1283-
	TEXTLABEL.TextColor3 = COLOR
1283+
	if ANIMATE.Parent == Character then
1284-
	TEXTLABEL.TextStrokeTransparency = 0
1284+
		ANIMATE:Destroy()
1285-
	TEXTLABEL.TextScaled = true
1285+
1286-
	TEXTLABEL.TextWrapped = true
1286+
1287-
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
1287+
1288-
		wait(0.2)
1288+
1289-
		for i=1, 5 do
1289+
	Humanoid.HipHeight = 1
1290-
			wait()
1290+
	Humanoid.Name = "Warden"
1291-
			THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
1291+
	Humanoid.PlatformStand = false
1292
	if PLAYMAINANIM == true then
1293-
		wait(1.2)
1293+
		if TORSOVELOCITY < 1 then
1294-
		for i=1, 5 do
1294+
			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)
1295-
			wait()
1295+
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1296-
			THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
1296+
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1297-
			THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
1297+
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1298-
			THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
1298+
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
1299
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1300-
		THEPART.Parent = nil
1300+
		elseif TORSOVELOCITY > 1 then
1301-
	end),STATPART, BODYPOSITION, TEXTLABEL)
1301+
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1302
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1303
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-35), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1304-
function IncreaseOrDecreaseStat(LOCATION, STAT, AMOUNT, DURATION, SHOWTHESTAT)
1304+
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-35), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1305-
	if LOCATION:FindFirstChild("Stats") ~= nil then
1305+
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
1306-
		if LOCATION.Stats:FindFirstChild("Block") ~= nil then
1306+
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(10)), 0.15 / Animation_Speed)
1307-
			if LOCATION.Stats:FindFirstChild("Block").Value == true then
1307+
1308-
				return
1308+
1309
	unanchor()
1310
	Humanoid.MaxHealth = "inf"
1311-
		if LOCATION.Stats:FindFirstChild("ChangeStat") ~= nil and LOCATION.Stats:FindFirstChild("Block").Value == false then
1311+
	Humanoid.Health = "inf"
1312-
			local NewStatChange = IT("NumberValue")
1312+
	if Rooted == false then
1313-
			NewStatChange.Value = AMOUNT
1313+
		Disable_Jump = false
1314-
			if STAT == "Defense" then
1314+
		Humanoid.WalkSpeed = Speed
1315-
				NewStatChange.Name = "ChangeDefense"
1315+
	elseif Rooted == true then
1316-
			elseif STAT == "Damage" then
1316+
		Disable_Jump = true
1317-
				NewStatChange.Name = "ChangeDamage"
1317+
		Humanoid.WalkSpeed = 0
1318-
			elseif STAT == "Movement" then
1318+
1319-
				NewStatChange.Name = "ChangeMovement"
1319+
	for _, c in pairs(Character:GetChildren()) do
1320
		if c.ClassName == "Part" and c.Name ~= "Eye" then
1321-
			if SHOWTHESTAT == true then
1321+
			c.Material = "Neon"
1322-
				if AMOUNT < 0 then
1322+
			if c:FindFirstChildOfClass("ParticleEmitter") then
1323-
					StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "-"..STAT, C3(1, 1, 1))
1323+
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1324-
				elseif AMOUNT > 0 then
1324+
1325-
					StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "+"..STAT, C3(1, 1, 1))
1325+
			c.Color = C3(1,1,1)
1326
			if c == Head then
1327
				if c:FindFirstChild("face") then
1328-
			if DURATION ~= nil and DURATION ~= 0 then
1328+
					c.face:remove()
1329-
				local StatDuration = IT("NumberValue")
1329+
1330-
				StatDuration.Name = "Duration"
1330+
1331-
				StatDuration.Value = DURATION
1331+
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
1332-
				StatDuration.Parent = NewStatChange
1332+
			c:remove()
1333
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
1334-
			NewStatChange.Parent = LOCATION.Stats:FindFirstChild("ChangeStat")
1334+
			c:remove()
1335
		end
1336
	end
1337
	sick.SoundId = "rbxassetid://1494340971"
1338
	sick.Looped = true
1339-
--Usage: DamageFunction(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, hit, false, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
1339+
	sick.Pitch = 1
1340-
function DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HIT, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
1340+
	sick.Volume = 3
1341-
	if HIT.Parent == nil then
1341+
	sick:Resume()
1342-
		return
1342+
	sick.Parent = Torso
1343
	refit()
1344-
	local HITHUMANOID = HIT.Parent:FindFirstChild("Humanoid")
1344+
	if Head:FindFirstChildOfClass("Sound") then
1345-
	for _, v in pairs(HIT.Parent:GetChildren()) do
1345+
		Head:FindFirstChildOfClass("Sound"):remove()
1346-
		if v:IsA("Humanoid") then
1346+
1347-
			HITHUMANOID = v
1347+
1348
1349
--//=================================\\
1350-
	if HIT.Name == "Hitbox" and RANGED ~= true and HIT.Parent ~= Weapon and Enable_Stagger_Hit == true then
1350+
1351-
		StaggerHit.Value = true
1351+
1352-
		if Play_Hitbox_Hit_Sound == true then
1352+
1353-
			if HITWEAPONSOUND ~= "" and HITWEAPONSOUND ~= "nil" then
1353+
1354-
				CreateSound(HITWEAPONSOUND, HIT, 1, HITWEAPONSOUNDPITCH)
1354+
1355
1356
--//====================================================\\--
1357-
		return
1357+
--||			  		 END OF SCRIPT
1358
--\\====================================================//--