View difference between Paste ID: XjZqi7gu and VxApNB62
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2-
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2+
3-
local Player,game,owner = owner,game
3+
4-
local RealPlayer = Player
4+
5-
do
5+
6-
    print("FE Compatibility code by Mokiros")
6+
7-
    local rp = RealPlayer
7+
8-
    script.Parent = rp.Character
8+
9-
   
9+
10-
    --RemoteEvent for communicating
10+
11-
    local Event = Instance.new("RemoteEvent")
11+
12-
    Event.Name = "UserInput_Event"
12+
13
Mouse = Player:GetMouse()
14-
    --Fake event to make stuff like Mouse.KeyDown work
14+
15-
    local function fakeEvent()
15+
16-
        local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
16+
17-
        t.connect = t.Connect
17+
18-
        return t
18+
19-
    end
19+
20
LeftLeg = Character["Left Leg"]
21-
    --Creating fake input objects with fake variables
21+
22-
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
22+
23-
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
23+
24-
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
24+
25-
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
25+
26-
    end}
26+
27-
    --Merged 2 functions into one by checking amount of arguments
27+
28-
    CAS.UnbindAction = CAS.BindAction
28+
29
30-
    --This function will trigger the events that have been :Connect()'ed
30+
31-
    local function te(self,ev,...)
31+
32-
        local t = m[ev]
32+
33-
        if t and t._fakeEvent then
33+
34-
            for _,f in pairs(t.Functions) do
34+
35-
                f(...)
35+
36-
            end
36+
37-
        end
37+
38-
    end
38+
39-
    m.TrigEvent = te
39+
40-
    UIS.TrigEvent = te
40+
41
SIN = math.sin
42-
    Event.OnServerEvent:Connect(function(plr,io)
42+
43-
        if plr~=rp then return end
43+
44-
        m.Target = io.Target
44+
45-
        m.Hit = io.Hit
45+
46-
        if not io.isMouse then
46+
47-
            local b = io.UserInputState == Enum.UserInputState.Begin
47+
48-
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
48+
49-
                return m:TrigEvent(b and "Button1Down" or "Button1Up")
49+
50-
            end
50+
51-
            for _,t in pairs(CAS.Actions) do
51+
52-
                for _,k in pairs(t.Keys) do
52+
53-
                    if k==io.KeyCode then
53+
Animation_Speed = 2.5
54-
                        t.Function(t.Name,io.UserInputState,io)
54+
55-
                    end
55+
56-
                end
56+
local SIZE = 2.4
57-
            end
57+
58-
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58+
59-
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59+
60-
        end
60+
61-
    end)
61+
62-
    Event.Parent = NLS([==[
62+
63-
    local Player = game:GetService("Players").LocalPlayer
63+
64-
    local Event = script:WaitForChild("UserInput_Event")
64+
65
local HOLD = false
66-
    local Mouse = Player:GetMouse()
66+
67-
    local UIS = game:GetService("UserInputService")
67+
68-
    local input = function(io,a)
68+
69-
        if a then return end
69+
70-
        --Since InputObject is a client-side instance, we create and pass table instead
70+
71-
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
71+
72-
    end
72+
73-
    UIS.InputBegan:Connect(input)
73+
74-
    UIS.InputEnded:Connect(input)
74+
75
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
76-
    local h,t
76+
77-
    --Give the server mouse data 30 times every second, but only if the values changed
77+
78-
    --If player is not moving their mouse, client won't fire events
78+
79-
    while wait(1/30) do
79+
80-
        if h~=Mouse.Hit or t~=Mouse.Target then
80+
81-
            h,t=Mouse.Hit,Mouse.Target
81+
82-
            Event:FireServer({isMouse=true,Target=t,Hit=h})
82+
83-
        end
83+
84-
    end]==],Player.Character)
84+
85
local Effects = IT("Folder", Weapon)
86-
    ----Sandboxed game object that allows the usage of client-side methods and services
86+
87-
    --Real game object
87+
88-
    local _rg = game
88+
89
local UNANCHOR = true
90-
    --Metatable for fake service
90+
91-
    local fsmt = {
91+
92-
        __index = function(self,k)
92+
93-
            local s = rawget(self,"_RealService")
93+
94-
            if s then return s[k] end
94+
95-
        end,
95+
96-
        __newindex = function(self,k,v)
96+
97-
            local s = rawget(self,"_RealService")
97+
98-
            if s then s[k]=v end
98+
99-
        end,
99+
100-
        __call = function(self,...)
100+
101-
            local s = rawget(self,"_RealService")
101+
102-
            if s then return s(...) end
102+
103-
        end
103+
104-
    }
104+
105-
    local function FakeService(t,RealService)
105+
106-
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
106+
107-
        return setmetatable(t,fsmt)
107+
108-
    end
108+
109
ArtificialHB.Name = "ArtificialHB"
110-
    --Fake game object
110+
111-
    local g = {
111+
112-
        GetService = function(self,s)
112+
113-
            return self[s]
113+
114-
        end,
114+
115-
        Players = FakeService({
115+
116-
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
116+
117-
        },"Players"),
117+
118-
        UserInputService = FakeService(UIS,"UserInputService"),
118+
119-
        ContextActionService = FakeService(CAS,"ContextActionService"),
119+
120-
    }
120+
121-
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
121+
122-
    g.service = g.GetService
122+
123-
   
123+
124-
    g.RunService = FakeService({
124+
125-
        RenderStepped = _rg:GetService("RunService").Heartbeat,
125+
126-
        BindToRenderStep = function(self,name,_,fun)
126+
127-
            self._btrs[name] = self.Heartbeat:Connect(fun)
127+
128-
        end,
128+
129-
        UnbindFromRenderStep = function(self,name)
129+
130-
            self._btrs[name]:Disconnect()
130+
131-
        end,
131+
132-
    },"RunService")
132+
133
			tf = 0
134-
    setmetatable(g,{
134+
135-
        __index=function(self,s)
135+
136-
            return _rg:GetService(s) or typeof(_rg[s])=="function"
136+
137-
            and function(_,...)return _rg[s](_rg,...)end or _rg[s]
137+
138-
        end,
138+
139-
        __newindex = fsmt.__newindex,
139+
140-
        __call = fsmt.__call
140+
141-
    })
141+
142-
    --Changing owner to fake player object to support owner:GetMouse()
142+
143-
    game,owner = g,g.Players.LocalPlayer
143+
144
--|| 	      SOME FUNCTIONS
145
--\\=================================//
146
147
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
148
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
149
end
150
151
function PositiveAngle(NUMBER)
152
	if NUMBER >= 0 then
153
		NUMBER = 0
154
	end
155
	return NUMBER
156
end
157
158
function NegativeAngle(NUMBER)
159
	if NUMBER <= 0 then
160
		NUMBER = 0
161
	end
162
	return NUMBER
163
end
164
165
function Swait(NUMBER)
166
	if NUMBER == 0 or NUMBER == nil then
167
		ArtificialHB.Event:wait()
168
	else
169
		for i = 1, NUMBER do
170
			ArtificialHB.Event:wait()
171
		end
172
	end
173
end
174
175
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
176
	local NEWMESH = IT(MESH)
177
	if MESH == "SpecialMesh" then
178
		NEWMESH.MeshType = MESHTYPE
179
		if MESHID ~= "nil" and MESHID ~= "" then
180
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
181
		end
182
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
183
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
184
		end
185
	end
186
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
187
	NEWMESH.Scale = SCALE
188
	NEWMESH.Parent = PARENT
189
	return NEWMESH
190
end
191
192
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
193
	local NEWPART = IT("Part")
194
	NEWPART.formFactor = FORMFACTOR
195
	NEWPART.Reflectance = REFLECTANCE
196
	NEWPART.Transparency = TRANSPARENCY
197
	NEWPART.CanCollide = false
198
	NEWPART.Locked = true
199
	NEWPART.Anchored = true
200-
Animation_Speed = 4
200+
201
		NEWPART.Anchored = false
202
	end
203-
local SIZE = 3.4
203+
204
	NEWPART.Name = NAME
205
	NEWPART.Size = SIZE
206
	NEWPART.Position = Torso.Position
207
	NEWPART.Material = MATERIAL
208
	NEWPART:BreakJoints()
209
	NEWPART.Parent = PARENT
210
	return NEWPART
211
end
212
213
	local function weldBetween(a, b)
214
	    local weldd = Instance.new("ManualWeld")
215
	    weldd.Part0 = a
216
	    weldd.Part1 = b
217
	    weldd.C0 = CFrame.new()
218
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
219
	    weldd.Parent = a
220
	    return weldd
221
	end
222
223
224
function QuaternionFromCFrame(cf)
225
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
226
	local trace = m00 + m11 + m22
227
	if trace > 0 then 
228
		local s = math.sqrt(1 + trace)
229
		local recip = 0.5 / s
230
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
231
	else
232
		local i = 0
233
		if m11 > m00 then
234
			i = 1
235
		end
236
		if m22 > (i == 0 and m00 or m11) then
237
			i = 2
238
		end
239
		if i == 0 then
240
			local s = math.sqrt(m00 - m11 - m22 + 1)
241
			local recip = 0.5 / s
242
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
243
		elseif i == 1 then
244
			local s = math.sqrt(m11 - m22 - m00 + 1)
245
			local recip = 0.5 / s
246
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
247
		elseif i == 2 then
248
			local s = math.sqrt(m22 - m00 - m11 + 1)
249
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
250
		end
251
	end
252
end
253
 
254
function QuaternionToCFrame(px, py, pz, x, y, z, w)
255
	local xs, ys, zs = x + x, y + y, z + z
256
	local wx, wy, wz = w * xs, w * ys, w * zs
257
	local xx = x * xs
258
	local xy = x * ys
259
	local xz = x * zs
260
	local yy = y * ys
261
	local yz = y * zs
262
	local zz = z * zs
263
	return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
264
end
265
 
266
function QuaternionSlerp(a, b, t)
267
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
268
	local startInterp, finishInterp;
269
	if cosTheta >= 0.0001 then
270
		if (1 - cosTheta) > 0.0001 then
271
			local theta = ACOS(cosTheta)
272
			local invSinTheta = 1 / SIN(theta)
273
			startInterp = SIN((1 - t) * theta) * invSinTheta
274
			finishInterp = SIN(t * theta) * invSinTheta
275
		else
276
			startInterp = 1 - t
277
			finishInterp = t
278
		end
279
	else
280
		if (1 + cosTheta) > 0.0001 then
281
			local theta = ACOS(-cosTheta)
282
			local invSinTheta = 1 / SIN(theta)
283
			startInterp = SIN((t - 1) * theta) * invSinTheta
284
			finishInterp = SIN(t * theta) * invSinTheta
285
		else
286
			startInterp = t - 1
287
			finishInterp = t
288
		end
289
	end
290
	return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
291
end
292
293
function Clerp(a, b, t)
294
	local qa = {QuaternionFromCFrame(a)}
295
	local qb = {QuaternionFromCFrame(b)}
296
	local ax, ay, az = a.x, a.y, a.z
297
	local bx, by, bz = b.x, b.y, b.z
298
	local _t = 1 - t
299
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
300
end
301
302
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
303
	local frame = IT("Frame")
304
	frame.BackgroundTransparency = TRANSPARENCY
305
	frame.BorderSizePixel = BORDERSIZEPIXEL
306
	frame.Position = POSITION
307
	frame.Size = SIZE
308
	frame.BackgroundColor3 = COLOR
309
	frame.BorderColor3 = BORDERCOLOR
310
	frame.Name = NAME
311
	frame.Parent = PARENT
312
	return frame
313
end
314
315
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
316
	local label = IT("TextLabel")
317
	label.BackgroundTransparency = 1
318
	label.Size = UD2(1, 0, 1, 0)
319
	label.Position = UD2(0, 0, 0, 0)
320
	label.TextColor3 = TEXTCOLOR
321
	label.TextStrokeTransparency = STROKETRANSPARENCY
322
	label.TextTransparency = TRANSPARENCY
323
	label.FontSize = TEXTFONTSIZE
324
	label.Font = TEXTFONT
325
	label.BorderSizePixel = BORDERSIZEPIXEL
326
	label.TextStrokeColor3 = C3(1,1,1)
327
	label.TextScaled = false
328
	label.Text = TEXT
329
	label.Name = NAME
330
	label.Parent = PARENT
331
	return label
332
end
333
334
function NoOutlines(PART)
335
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
336
end
337
338
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
339
	local NEWWELD = IT(TYPE)
340
	NEWWELD.Part0 = PART0
341
	NEWWELD.Part1 = PART1
342
	NEWWELD.C0 = C0
343
	NEWWELD.C1 = C1
344
	NEWWELD.Parent = PARENT
345
	return NEWWELD
346
end
347
348
local S = IT("Sound")
349
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
350
	local NEWSOUND = nil
351
	coroutine.resume(coroutine.create(function()
352
		NEWSOUND = S:Clone()
353
		NEWSOUND.Parent = PARENT
354
		NEWSOUND.Volume = VOLUME
355
		NEWSOUND.Pitch = PITCH
356
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
357
		NEWSOUND:play()
358
		if DOESLOOP == true then
359
			NEWSOUND.Looped = true
360
		else
361
			repeat wait(1) until NEWSOUND.Playing == false
362
			NEWSOUND:remove()
363
		end
364
	end))
365
	return NEWSOUND
366
end
367
368
function CFrameFromTopBack(at, top, back)
369
	local right = top:Cross(back)
370
	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)
371
end
372
373
--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})
374
function WACKYEFFECT(Table)
375
	local TYPE = (Table.EffectType or "Sphere")
376
	local SIZE = (Table.Size or VT(1,1,1))
377
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
378
	local TRANSPARENCY = (Table.Transparency or 0)
379
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
380
	local CFRAME = (Table.CFrame or Torso.CFrame)
381
	local MOVEDIRECTION = (Table.MoveToPos or nil)
382
	local ROTATION1 = (Table.RotationX or 0)
383
	local ROTATION2 = (Table.RotationY or 0)
384
	local ROTATION3 = (Table.RotationZ or 0)
385
	local MATERIAL = (Table.Material or "Neon")
386
	local COLOR = (Table.Color or C3(1,1,1))
387
	local TIME = (Table.Time or 45)
388
	local SOUNDID = (Table.SoundID or nil)
389
	local SOUNDPITCH = (Table.SoundPitch or nil)
390
	local SOUNDVOLUME = (Table.SoundVolume or nil)
391
	coroutine.resume(coroutine.create(function()
392
		local PLAYSSOUND = false
393
		local SOUND = nil
394
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
395
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
396
			PLAYSSOUND = true
397
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
398
		end
399
		EFFECT.Color = COLOR
400
		local MSH = nil
401
		if TYPE == "Sphere" then
402
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
403
		elseif TYPE == "Block" then
404
			MSH = IT("BlockMesh",EFFECT)
405
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
406
		elseif TYPE == "Wave" then
407
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
408
		elseif TYPE == "Ring" then
409
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
410
		elseif TYPE == "Slash" then
411
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
412
		elseif TYPE == "Round Slash" then
413
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
414
		elseif TYPE == "Swirl" then
415
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
416
		elseif TYPE == "Skull" then
417
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
418
		elseif TYPE == "Crystal" then
419
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
420
		end
421
		if MSH ~= nil then
422
			local MOVESPEED = nil
423
			if MOVEDIRECTION ~= nil then
424
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
425
			end
426
			local GROWTH = SIZE - ENDSIZE
427
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
428
			if TYPE == "Block" then
429
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
430
			else
431
				EFFECT.CFrame = CFRAME
432
			end
433
			for LOOP = 1, TIME+1 do
434
				Swait()
435
				MSH.Scale = MSH.Scale - GROWTH/TIME
436
				if TYPE == "Wave" then
437
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
438
				end
439
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
440
				if TYPE == "Block" then
441
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
442
				else
443
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
444
				end
445
				if MOVEDIRECTION ~= nil then
446
					local ORI = EFFECT.Orientation
447
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
448
					EFFECT.Orientation = ORI
449
				end
450
			end
451
			if PLAYSSOUND == false then
452
				EFFECT:remove()
453
			else
454
				repeat Swait() until SOUND.Playing == false
455
				EFFECT:remove()
456
			end
457
		else
458
			if PLAYSSOUND == false then
459
				EFFECT:remove()
460
			else
461
				repeat Swait() until SOUND.Playing == false
462
				EFFECT:remove()
463
			end
464
		end
465
	end))
466
end
467
468
function MakeForm(PART,TYPE)
469
	if TYPE == "Cyl" then
470
		local MSH = IT("CylinderMesh",PART)
471
	elseif TYPE == "Ball" then
472
		local MSH = IT("SpecialMesh",PART)
473
		MSH.MeshType = "Sphere"
474
	elseif TYPE == "Wedge" then
475
		local MSH = IT("SpecialMesh",PART)
476
		MSH.MeshType = "Wedge"
477
	end
478
end
479
480
Debris = game:GetService("Debris")
481
482
function CastProperRay(StartPos, EndPos, Distance, Ignore)
483
	local DIRECTION = CF(StartPos,EndPos).lookVector
484
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
485
end
486
487
function turnto(position)
488
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
489
end
490
491
--//=================================\\
492
--||	     WEAPON CREATION
493
--\\=================================//
494
495
local NOOB = C3(255,215,0)
496
497
Humanoid.Parent = nil
498
RootPart.Size = RootPart.Size*SIZE
499
Torso.Size = Torso.Size*SIZE
500
RightArm.Size = RightArm.Size*SIZE
501
RightLeg.Size = RightLeg.Size*SIZE
502
LeftArm.Size = LeftArm.Size*SIZE
503
LeftLeg.Size = LeftLeg.Size*SIZE
504
RootJoint.C0 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
505
RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
506
Neck.C0 = NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
507
Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
508
RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
509
LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
510
RightHip.C0 = CF(1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
511
LeftHip.C0 = CF(-1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
512
RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
513
LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
514
Head.Size = Head.Size*SIZE
515
RootJoint.Parent = RootPart
516
Neck.Parent = Torso
517
RightShoulder.Parent = Torso
518
LeftShoulder.Parent = Torso
519
RightHip.Parent = Torso
520
LeftHip.Parent = Torso
521-
local cR=255
521+
522-
local cG=0
522+
523-
local cB=0
523+
524-
local flg5=1 local omgidk=1
524+
525-
local add=15
525+
526-
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
526+
527-
    if omgidk>10000 then omgidk=0 end
527+
528-
    omgidk=omgidk+1
528+
529-
    if cR>=255 then flg5=1 end
529+
530-
    if cG>=255 then flg5=2 end
530+
531-
    if cB>=255 then flg5=3 end
531+
532-
    if flg5==1 then cR=cR-add cG=cG+add end
532+
533-
    if flg5==2 then cG=cG-add cB=cB+add end
533+
534-
    if flg5==3 then cB=cB-add cR=cR+add end
534+
535-
    color=Color3.fromRGB(cR,cG,cB)
535+
536
    text2.Font = Enum.Font.SciFi
537-
    local TYPE = (Table.EffectType or "Sphere")
537+
538-
    local SIZE = (Table.Size or VT(6,6,6))
538+
539-
    local ENDSIZE = (Table.Size2 or VT(7,7,7))
539+
540-
    local TRANSPARENCY = (Table.Transparency or 0)
540+
541-
    local ENDTRANSPARENCY = (Table.Transparency2 or 1)
541+
542-
    local CFRAME = (Table.CFrame or Torso.CFrame)
542+
543-
    local MOVEDIRECTION = (Table.MoveToPos or nil)
543+
544-
    local ROTATION1 = (Table.RotationX or 0)
544+
545-
    local ROTATION2 = (Table.RotationY or 0)
545+
546-
    local ROTATION3 = (Table.RotationZ or 0)
546+
547-
    local MATERIAL = "Neon"
547+
548-
    local COLOR = color
548+
549-
    local TIME = (Table.Time or 45)
549+
550-
    local SOUNDID = (Table.SoundID or nil)
550+
551-
    local SOUNDPITCH = (Table.SoundPitch or nil)
551+
552-
    local SOUNDVOLUME = (Table.SoundVolume or nil)
552+
553-
    coroutine.resume(coroutine.create(function()
553+
554-
        local PLAYSSOUND = false
554+
555-
        local SOUND = nil
555+
556-
        local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
556+
557-
        if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
557+
558-
            PLAYSSOUND = true
558+
559-
            SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
559+
560-
        end
560+
561-
        EFFECT.Color = color
561+
562-
        local MSH = nil
562+
563-
        if TYPE == "Sphere" then
563+
564-
            MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
564+
565-
        elseif TYPE == "Block" then
565+
566-
            MSH = IT("BlockMesh",EFFECT)
566+
567-
            MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
567+
568-
        elseif TYPE == "Wave" then
568+
569-
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
569+
570-
        elseif TYPE == "Ring" then
570+
571-
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
571+
572-
        elseif TYPE == "Slash" then
572+
573-
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
573+
574-
        elseif TYPE == "Round Slash" then
574+
575-
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
575+
576-
        elseif TYPE == "Swirl" then
576+
577-
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
577+
578-
        elseif TYPE == "Skull" then
578+
579-
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
579+
580-
        elseif TYPE == "Crystal" then
580+
581-
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
581+
582-
        end
582+
583-
        if MSH ~= nil then
583+
584-
            local MOVESPEED = nil
584+
585-
            if MOVEDIRECTION ~= nil then
585+
586-
                MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
586+
587-
            end
587+
588-
            local GROWTH = SIZE - ENDSIZE
588+
589-
            local TRANS = TRANSPARENCY - ENDTRANSPARENCY
589+
590-
            if TYPE == "Block" then
590+
591-
                EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
591+
592-
            else
592+
593-
                EFFECT.CFrame = CFRAME
593+
594-
            end
594+
595-
            for LOOP = 1, TIME+1 do
595+
596-
                Swait()
596+
597-
                MSH.Scale = MSH.Scale - GROWTH/TIME
597+
598-
                if TYPE == "Wave" then
598+
599-
                    MSH.Offset = VT(0,0,-MSH.Scale.X/8)
599+
600-
                end
600+
601-
                EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
601+
602-
                if TYPE == "Block" then
602+
603-
                    EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
603+
604-
                else
604+
605-
                    EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
605+
606-
                end
606+
607-
                if MOVEDIRECTION ~= nil then
607+
608-
                    local ORI = EFFECT.Orientation
608+
609-
                    EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
609+
610-
                    EFFECT.Orientation = ORI
610+
611-
                end
611+
612-
            end
612+
613-
            if PLAYSSOUND == false then
613+
614-
                EFFECT:remove()
614+
615-
            else
615+
616-
                SOUND.Stopped:Connect(function()
616+
617-
                    EFFECT:remove()
617+
618-
                end)
618+
619-
            end
619+
620-
        else
620+
621-
            if PLAYSSOUND == false then
621+
622-
                EFFECT:remove()
622+
623-
            else
623+
624-
                repeat Swait() until SOUND.Playing == false
624+
625-
                EFFECT:remove()
625+
626-
            end
626+
627-
        end
627+
628-
    end))
628+
629
		Swait()
630
		CLOCKLOOP = CLOCKLOOP - 1*CLOCKSPEED
631
		WATCH1.C0 = Clerp(WATCH1.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5), RAD(0)), 1 / Animation_Speed)
632
		WATCH2.C0 = Clerp(WATCH2.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5/2), RAD(0)), 1 / Animation_Speed)
633
		if CLOCKLOOP <= -150 then
634
			if VALUE1 == false then
635
				CLOCKLOOP = 0
636
				WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = Head.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = 1425872503, SoundPitch = 1.2, SoundVolume = 4})
637
				local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
638
				ApplyAoE(HITPOS,10,15,45,75,false)
639
				WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(15,2,15), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
640
				WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(12,3,12), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
641
                                WACKYEFFECT({Time = 250, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(12,3,12), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
642
				if CLOCKTARGET ~= nil then
643
					CLOCKTARGET.Health = CLOCKTARGET.Health + 20 
644
                                        CLOCKTARGET.MaxHealth = CLOCKTARGET.Health + 20
645
					if CLOCKTARGET.Torso ~= nil then
646
						CLOCKTARGET.Torso.CFrame = CLOCKTARGET.Torso.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)))
647
					end
648
					if CLOCKTARGET.Health == 0 then
649
						CLOCKTARGET = nil
650
					end
651
				end
652
			end
653
		end
654
	end
655
end))
656
657
for _, c in pairs(Weapon:GetChildren()) do
658
	if c.ClassName == "Part" then
659
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
660
	end
661
end
662
663
Neck.Name = "Weld"
664
RootJoint.Name = "Weld"
665
RightShoulder.Name = "Weld"
666
LeftShoulder.Name = "Weld"
667
RightHip.Name = "Weld"
668
LeftHip.Name = "Weld"
669
670
local SKILLTEXTCOLOR = C3(255,211,0)
671
local SKILLFONT = "Fantasy"
672
local SKILLTEXTSIZE = 7
673
674
Weapon.Parent = Character
675
Humanoid.Parent = Character
676
677
678
679
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23-.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
680
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50+.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
681
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 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")
682
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 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")
683
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.86, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
684
685
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Magic Missiles", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 1")
686
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Times up", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 2")
687
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Chained Punch", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
688
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Warp Meteor", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
689
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Noob's Box", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 5")
690
691
692
693
694
695
696
--//=================================\\
697
--||			DAMAGING
698
--\\=================================//
699
700
function ApplyDamage(Humanoid,Damage,TorsoPart)
701
	local defence = Instance.new("BoolValue",Humanoid.Parent)
702
	defence.Name = ("HitBy"..Player.Name)
703
	game:GetService("Debris"):AddItem(defence, 0.001)
704
	Damage = Damage * DAMAGEMULTIPLIER
705
	if Humanoid.Health ~= 0 then
706
		local CritChance = MRANDOM(1,100)
707
		if Damage > Humanoid.Health then
708
			Damage = math.ceil(Humanoid.Health)
709
			if Damage == 0 then
710
				Damage = 0.1
711
			end
712
		end
713
		Humanoid.Health = Humanoid.Health - Damage
714
	end
715
end
716
717
function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
718
	local CHILDREN = workspace:GetDescendants()
719
	for index, CHILD in pairs(CHILDREN) do
720
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
721
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
722
			if HUM then
723
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
724
				if TORSO then
725
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
726
						if INSTAKILL == true then
727
							CHILD:BreakJoints()
728
						else
729
							local DMG = MRANDOM(MINDMG,MAXDMG)
730
							ApplyDamage(HUM,DMG,TORSO)
731
						end
732
						if FLING > 0 then
733
							for _, c in pairs(CHILD:GetChildren()) do
734
								if c:IsA("BasePart") then
735
									local bv = Instance.new("BodyVelocity") 
736
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
737
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
738
									bv.Parent = c
739
									Debris:AddItem(bv,0.05)
740
								end
741
							end
742
						end
743
					end
744
				end
745
			end
746
		end
747
	end
748
end
749
750
--//=================================\\
751
--||	ATTACK FUNCTIONS AND STUFF
752
--\\=================================//
753
754
function MagicMissiles()
755
	ATTACK = true
756
	Rooted = true
757
	local SELECTING = true
758
	local SPOTS = {}
759
	coroutine.resume(coroutine.create(function()
760
		local LOOP = 0
761
		repeat
762
			LOOP = LOOP + 1
763
			Swait()
764
			if LOOP >= 10 then
765
				LOOP = 0
766
				for i = 1, #SPOTS do
767
					if SPOTS[i] ~= nil then
768
						WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
769
						WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
770
					end
771
				end
772
			end
773
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
774
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
775
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(115), RAD(45), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
776
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
777
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
778
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
779
		until SELECTING == false
780
		Rooted = false
781
		repeat
782
			LOOP = LOOP + 1
783
			Swait()
784
			if LOOP >= 10 then
785
				LOOP = 0
786
				for i = 1, #SPOTS do
787
					if SPOTS[i] ~= nil then
788
						WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(245,255,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
789
						WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
790
					end
791
				end
792
			end
793
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
794
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 4 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
795
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
796
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
797
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
798
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
799
		until ATTACK == false
800
	end))
801
	repeat
802
		repeat Swait() until HOLD == true
803
			local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
804
			if DIST > 500 then
805
				DIST = 500
806
			end
807
			local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
808
			local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)	
809
			if HITFLOOR ~= nil then
810
				table.insert(SPOTS,CF(HITPOS,HITPOS+NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)))
811
				WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,2,6), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.2,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = 90655239, SoundPitch = 1, SoundVolume = 6})
812
				WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(4,3,4), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.2,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
813
			end
814
		repeat Swait() until HOLD == false
815
	until #SPOTS == 20
816
	SELECTING = false
817
	for i = 1, #SPOTS do
818
		if SPOTS[i] ~= nil then
819
			local POS = SPOTS[i]
820
			coroutine.resume(coroutine.create(function()
821
				local MISSILE = IT("Model",Effects)
822
				MISSILE.Name = "Missile"
823
				local BASEPART = CreatePart(3, MISSILE, "Neon", 0, 1, "Yellow", "Part", VT(3,3,3))
824
				MakeForm(BASEPART,"Cyl")
825
				MISSILE.PrimaryPart = BASEPART
826
				BASEPART.CFrame = POS*CF(0,-30*3,0)
827
				local HEAD = CreatePart(3, MISSILE, "Neon", 0, 1, "Br. yellowish green", "Part", VT(3,4,3))
828
				MakeForm(HEAD,"Ball")
829
				HEAD.CFrame = BASEPART.CFrame*CF(0,1,0)
830
				local TAIL = CreatePart(3, MISSILE, "Neon", 0, 1, "Bright yellow", "Part", VT(3.5,0.1,3.5))
831
				MakeForm(TAIL,"Cyl")
832
				TAIL.CFrame = BASEPART.CFrame*CF(0,-1,0)
833
				for i = 1, 10 do
834
					Swait()
835
					for _, c in pairs(MISSILE:GetChildren()) do
836
						if c.ClassName == "Part" then
837
							c.Transparency = c.Transparency - 1/75
838
						end
839
					end
840
				end
841
				for i = 1, 15*1.5 do
842
					Swait()
843
					MISSILE:SetPrimaryPartCFrame(BASEPART.CFrame*CF(0,1.35*3,0))
844
				end
845
				ApplyAoE(BASEPART.CFrame.p,20,35,45,75,false)
846
				WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(75,1,75), Transparency = 0.5, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
847
				WACKYEFFECT({Time = 200, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(35,35,35), Transparency = 0, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(255,255,0), SoundID = 165970126, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 4})
848
				WACKYEFFECT({Time = 200, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(22,2,22), Transparency = 0, Transparency2 = 1, CFrame = POS * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
849
				WACKYEFFECT({Time = 200, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(20,3,20), Transparency = 0, Transparency2 = 1, CFrame = POS * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
850
				MISSILE:remove()
851
			end))
852
		end
853
	end
854
	wait(0.6)
855
	ATTACK = false
856
	Rooted = false
857
end
858
859
function TimesUp()
860
	CLOCKTARGET = nil
861
	if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
862
		local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
863
		local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
864
		if TORSO then
865
			ATTACK = true
866
			Rooted = false
867
			coroutine.resume(coroutine.create(function()
868
				repeat
869
					Swait()
870
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
871
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
872
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.5*SIZE, -0.2*SIZE) * ANGLES(RAD(75), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
873
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
874
					RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
875
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
876
				until ATTACK == false
877
			end))
878
			if Effects:FindFirstChild("NeonDoll") then
879
				repeat Swait() until Effects:FindFirstChild("NeonDoll") == nil
880
			end
881
			wait(0.5)
882
			local FAKECHARACTER = IT("Model",Effects)
883
			FAKECHARACTER.Name = "NeonDoll"
884
			local TORS = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Bright blue", "Part", VT(0.3,0.3,0.15),false)
885
			CreateWeldOrSnapOrMotor("Weld", RING, RING, TORS, CF(0,0.6,0), CF(0,0,0))
886
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Br. yellowish green", "Part", VT(0.15,0.3,0.15),false)
887
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0,0.15,0))
888
			local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Br. yellowish green", "Part", VT(0.15,0.3,0.15),false)
889
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(-0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0,0.15,0))
890
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Bright yellow", "Part", VT(0.15,0.3,0.15),false)
891
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0,0.15,0))
892
			local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Bright yellow", "Part", VT(0.15,0.3,0.15),false)
893
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(-0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(-90)), CF(0,0.15,0))
894
			local HEAD = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Bright yellow", "Part", VT(0.15,0.15,0.15),false)
895
			CreateWeldOrSnapOrMotor("Weld", TORS, TORS, HEAD, CF(0,0.225,0), CF(0,0,0))
896
			CreateSound(1310929645, TORS, 5, 0.4, false)
897
			for i = 1, 150 do
898
				Swait()
899
				CLOCKSPEED = 6
900
				for _, c in pairs(FAKECHARACTER:GetChildren()) do
901
					if c.ClassName == "Part" then
902
						c.Transparency = c.Transparency - 0.5/150
903
					end
904
				end
905
			end
906
			CLOCKTARGET = HUM
907
			coroutine.resume(coroutine.create(function()
908
				repeat Swait() CLOCKSPEED = 2 until CLOCKTARGET == nil
909
				for i = 1, 25 do
910
					Swait()
911
					for _, c in pairs(FAKECHARACTER:GetChildren()) do
912
						if c.ClassName == "Part" then
913
							c.Transparency = c.Transparency + 0.5/25
914
						end
915
					end
916
				end
917
				CLOCKSPEED = 1
918
				FAKECHARACTER:remove()
919
			end))
920
			wait(0.5)
921
			ATTACK = false
922
			Rooted = false
923
		end
924
	end
925
end
926
927
function ChainPunch()
928
	ATTACK = true
929
	Rooted = false
930
	local GYRO = IT("BodyGyro",RootPart)
931
	GYRO.D = 25
932
	GYRO.P = 2000
933
	GYRO.MaxTorque = VT(0,40000,0)
934
	GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
935
	repeat
936
		Swait()
937
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
938
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
939
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 4 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
940
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
941
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
942
		RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
943
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
944
	until HOLD == true
945
	local POS = Mouse.Hit.p
946
	local CHAINS = false
947
	local CHAINLINKS = {}
948
	local A = IT("Attachment",RightArm)
949
	A.Position = VT(1,-1,0)*SIZE
950
	A.Orientation = VT(-90, -89.982, 0)
951
	local B = IT("Attachment",RightArm)
952
	B.Position = VT(-1,-1,0)*SIZE
953
	B.Orientation = VT(-90, 89.988, 0)
954
	local C = IT("Attachment",RightArm)
955
	C.Position = VT(0.5,-1.3,0)*SIZE
956
	C.Orientation = VT(-90, -89.982, 0)
957
	local D = IT("Attachment",RightArm)
958
	D.Position = VT(-0.5,-1.3,0)*SIZE
959
	D.Orientation = VT(-90, 89.988, 0)
960
	local LIGHT = IT("Attachment",RightArm)
961
	LIGHT.Position = VT(0,-1,0)*SIZE
962
	local LIGHT2 = IT("PointLight",LIGHT)
963
	LIGHT2.Range = 7
964
	LIGHT2.Brightness = 5
965
	LIGHT2.Color = SKILLTEXTCOLOR
966
	for i = 1, 2 do
967
		local TWIST = -2
968
		local START = A
969
		local END = B
970
		if i == 1 then
971
			START = B
972
			END = A
973
		end
974
		local ChainLink = IT("Beam",Torso)
975
		ChainLink.Texture = "rbxassetid://48207450"
976
		ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
977
		ChainLink.TextureSpeed = 1
978
		ChainLink.Width0 = 1
979
		ChainLink.Width1 = 1
980
		ChainLink.TextureLength = 2.5
981
		ChainLink.Attachment0 = START
982
		ChainLink.Attachment1 = END
983
		ChainLink.CurveSize0 = TWIST
984
		ChainLink.CurveSize1 = TWIST
985
		--ChainLink.FaceCamera = true
986
		ChainLink.Segments = 45
987
		ChainLink.Transparency = NumberSequence.new(1)
988
		table.insert(CHAINLINKS,ChainLink)
989
	end
990
	for i = 1, 2 do
991
		local TWIST = -1
992
		local START = C
993
		local END = D
994
		if i == 1 then
995
			START = D
996
			END = C
997
		end
998
		local ChainLink = IT("Beam",Torso)
999
		ChainLink.Texture = "rbxassetid://48207450"
1000
		ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1001
		ChainLink.TextureSpeed = 1
1002
		ChainLink.Width0 = 1
1003
		ChainLink.Width1 = 1
1004
		ChainLink.TextureLength = 5
1005
		ChainLink.Attachment0 = START
1006
		ChainLink.Attachment1 = END
1007
		ChainLink.CurveSize0 = TWIST
1008
		ChainLink.CurveSize1 = TWIST
1009
		--ChainLink.FaceCamera = true
1010
		ChainLink.Segments = 25
1011
		ChainLink.LightEmission = 0.5
1012
		ChainLink.Transparency = NumberSequence.new(1)
1013
		table.insert(CHAINLINKS,ChainLink)
1014
	end
1015
	coroutine.resume(coroutine.create(function()
1016
		repeat
1017
			Swait()
1018
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1019
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 0.15 / Animation_Speed)
1020
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0.2*SIZE) * ANGLES(RAD(60), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1021
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1022
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1023
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1024
		until CHAINS == true
1025
		repeat
1026
			Swait()
1027
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1028
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
1029
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, -0.2*SIZE) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1030
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1031
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1032
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1033
		until ATTACK == false
1034
		for e = 1, 15 do
1035
			Swait()
1036
			for i = 1, #CHAINLINKS do
1037
				CHAINLINKS[i].Transparency = NumberSequence.new((e/15))
1038
			end
1039
		end
1040
		A:remove()
1041
		B:remove()
1042
		C:remove()
1043
		D:remove()
1044
	end))
1045
	CreateSound(233856115, RightArm, 5, 1.2, false)
1046
	for e = 1, 15 do
1047
		Swait()
1048
		for i = 1, #CHAINLINKS do
1049
			CHAINLINKS[i].Transparency = NumberSequence.new(1-(e/15))
1050
		end
1051
	end
1052
	CHAINS = true
1053
	Rooted = true
1054
	wait(0.25)
1055
	local FIST = CreatePart(3, Effects, "Neon", 0, 0.5, "Bright Yellow", "Part", VT(2,2,2))
1056
	FIST.Color = C3(255, 215, 0)
1057
	FIST.CFrame = CF(RightArm.CFrame*CF(0,-1.3*SIZE,0).p,POS) * ANGLES(RAD(90), RAD(0), RAD(0)) 
1058
	local LIGHT3 = IT("PointLight",FIST)
1059
	LIGHT3.Range = 7
1060
	LIGHT3.Brightness = 5
1061
	LIGHT3.Color = SKILLTEXTCOLOR
1062
	CreateMesh("SpecialMesh", FIST, "FileMesh", "433396052", "", VT(1,1,1), VT(0,0,0))
1063
	local FISTA = IT("Attachment",FIST)
1064
	FISTA.Position = VT(0.062, 0.977, 0)
1065
	local ChainLink = IT("Beam",Torso)
1066
	ChainLink.Texture = "rbxassetid://48207450"
1067
	ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
1068
	ChainLink.TextureSpeed = 0
1069
	ChainLink.Width0 = 3
1070
	ChainLink.Width1 = 3
1071
	ChainLink.TextureLength = 12
1072
	ChainLink.Attachment0 = LIGHT
1073
	ChainLink.Attachment1 = FISTA
1074
	ChainLink.FaceCamera = true
1075
	ChainLink.Segments = 45
1076
	ChainLink.LightEmission = 0.5
1077
	ChainLink.Transparency = NumberSequence.new(0.25)
1078
	local FISTSOUND = CreateSound(288641686, FIST, 5, 1.2, false)
1079
	for i = 1, 85 do
1080
		Swait()
1081
		FIST.CFrame = FIST.CFrame*CF(0,-2,0)
1082
		ChainLink.TextureLength = 12+(i*2)
1083
		ApplyAoE(FIST.Position,10,15,25,100,false)
1084
		WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(15,1,15), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame*CF(0,-1,0) * ANGLES(RAD(0), RAD(i*15), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(255,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1085
		local HITFLOOR = Raycast(FIST.Position, (CF(FIST.Position, FIST.CFrame*CF(0,-1,0).p)).lookVector, 2.1, Character)
1086
		if HITFLOOR ~= nil then
1087
			HITFLOOR:BreakJoints()
1088
			coroutine.resume(coroutine.create(function()
1089
				for i = 1, 15 do
1090
					Swait()
1091
					FISTSOUND.Volume = FISTSOUND.Volume - 0.15
1092
					ApplyAoE(FIST.Position,10+(i*2),5,15,5,false)
1093
					WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(173,0,65), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1094
				end
1095
			end))
1096
			break
1097
		end
1098
	end
1099
	coroutine.resume(coroutine.create(function()
1100
		for i = 1, 50 do
1101
			Swait()
1102
			FIST.Transparency = FIST.Transparency + 0.5/50
1103
			LIGHT3.Range = LIGHT3.Range - 7/50
1104
		end
1105
		FIST:remove()
1106
	end))
1107
	LIGHT:remove()
1108
	GYRO:remove()
1109
	ATTACK = false
1110
	Rooted = false
1111
end
1112
1113
function WarpMeteor()
1114
	local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
1115
	if DIST > 360 then
1116
		DIST = 360
1117
	end
1118
	local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)	
1119
	local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,45,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 75*SIZE, Character)
1120
	if HITFLOOR then
1121
		local POS = HITPOS	
1122
		ATTACK = true
1123
		Rooted = true
1124
		local WARPED = false
1125
		local SMASHED = false
1126
		local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
1127
		coroutine.resume(coroutine.create(function()
1128
			repeat
1129
				Swait()
1130
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1131
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1132
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1133
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1134
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1135
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1136
			until WARPED == true
1137
			repeat
1138
				Swait()
1139
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1140
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1141
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1142
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1143
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.5*SIZE + 0.06 * SIN(SINE / 24) - 0.1*SIZE * COS(SINE / 12), -0.5*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1144
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.1*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1145
			until SMASHED == true
1146
			repeat
1147
				Swait()
1148
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
1149
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-40), RAD(0), RAD(0)), 1 / Animation_Speed)
1150
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(170), RAD(-15), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1151
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(170), RAD(15), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1152
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
1153
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1154
			until ATTACK == false
1155
		end))
1156
		VALUE1 = true
1157
		CreateSound(233856115, Torso, 5, 1.6, false)
1158
		for i = 1, 25 do
1159
			Swait()
1160
			for _, c in pairs(Character:GetChildren()) do
1161
				if c.ClassName == "Part" then
1162
					c.Transparency = c.Transparency + 1/25
1163
				end
1164
			end
1165
			for _, c in pairs(Weapon:GetChildren()) do
1166
				if c.ClassName == "Part" then
1167
					c.Transparency = c.Transparency + 1/25
1168
				end
1169
			end
1170
		end
1171
		UNANCHOR = false
1172
		RootPart.Anchored = true
1173
		RootPart.Velocity = VT(0,0,0)
1174
		local ROOTPOS = RootPart.Position
1175
		RootPart.CFrame = CF(POS+VT(0,300,0),VT(ROOTPOS.X,POS.Y+300,ROOTPOS.Z))
1176
		WARPED = true
1177
		for i = 1, 25 do
1178
			Swait()
1179
			for _, c in pairs(Character:GetChildren()) do
1180
				if c.ClassName == "Part" then
1181
					c.Transparency = c.Transparency - 1/25
1182
				end
1183
			end
1184
			for _, c in pairs(Weapon:GetChildren()) do
1185
				if c.ClassName == "Part" then
1186
					c.Transparency = c.Transparency - 1/25
1187
				end
1188
			end
1189
		end
1190
		local SHELL = CreatePart(3, Effects, "Neon", 0, 1, "Bright yellow", "Part", VT(0,0,0))
1191
		SHELL.CFrame = RootPart.CFrame
1192
		MakeForm(SHELL,"Ball")
1193
		CreateSound(402981977, SHELL, 5, 1.6, false)
1194
		for i = 1, 10 do
1195
			Swait()
1196
			SHELL.Transparency = SHELL.Transparency - 1/10
1197
			SHELL.Size = SHELL.Size + VT(0.6,0.6,0.6)*1.8
1198
		end
1199
		for i = 1, math.ceil(75/2) do
1200
			Swait()
1201
			RootPart.CFrame = RootPart.CFrame*CF(0,-3.5*2,0)
1202
			SHELL.CFrame = CF(RootPart.Position)
1203
			WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(5,3,5), Transparency = 0.5, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = SHELL.Position+VT(0,15,0), RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1204
		end
1205
		RootPart.CFrame = CF(POS+VT(0,1,0),VT(ROOTPOS.X,HITPOS.Y+1,ROOTPOS.Z))
1206
		SHELL.CFrame = CF(RootPart.Position)
1207
		WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(35,35,35)*4, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = 165970126, SoundPitch = 0.75, SoundVolume = 6})
1208
		WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(45,3,45)*3.8, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1209
		WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(45,3,45)*4, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1210
		for i = 1, 5 do
1211
			WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35)*4, Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1212
		end
1213
		SHELL:remove()
1214
		ApplyAoE(RootPart.Position,75,35,75,175,false)
1215
		SMASHED = true
1216
		wait(1)
1217
		VALUE1 = false
1218
		UNANCHOR = true
1219
		ATTACK = false
1220
		Rooted = false
1221
	end
1222
end
1223
1224
function PandorasBox()
1225
        local Y = CreatePart(3, Effects, "Neon", 0, 1, "Bright yellow", "Part", VT(0,0,0))
1226
	local HITFLOOR,HITPOS = Raycast(RootPart.CFrame*CF(0,0,-6.5).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
1227
	if HITFLOOR ~= nil then
1228
		ATTACK = true
1229
		Rooted = true
1230
		local RINGSPIN = true
1231
		local CONSTRUCTING = true
1232
		local RING = CreatePart(3, Effects, "Neon", 0, 1, "Bright blue", "Ring", VT(0,0,0))
1233
		RING.Color = C3(0,0,0)
1234
		MakeForm(RING,"Cyl")
1235
		RING.CFrame = CF(HITPOS)
1236
		CreateSound(402981977, RING, 5, 1.2, false)
1237
		coroutine.resume(coroutine.create(function()
1238
			repeat
1239
				Swait()
1240
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1241
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1242
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1243
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(115), RAD(45), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1244
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1245
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1246
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1247
			until CONSTRUCTING == false
1248
			repeat 
1249
				Swait() 
1250
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1251
			until RINGSPIN == false
1252
			for i = 1, 25 do
1253
				Swait()
1254
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1255
				RING.Size = RING.Size - VT(0.15,0,0.15)
1256
				--DECAL.Transparency = DECAL.Transparency + 1/25
1257
				RING.Transparency = RING.Transparency + 1/25
1258
			end
1259
			RING:remove()
1260
		end))
1261
		for i = 1, 15 do
1262
			Swait()
1263
			RING.Size = RING.Size + VT(0.75,0,0.75)
1264
			RING.Transparency = RING.Transparency - 1/15
1265
		end
1266
		local BOXSPIN = true
1267
		local PANDORASBOX = IT("Model",Effects)
1268
		PANDORASBOX.Name = "Pandora's Box"
1269
		local BOX = IT("Model",PANDORASBOX)
1270
		BOX.Name = "Body"
1271
		local LID = IT("Model",PANDORASBOX)
1272
		LID.Name = "Lid"
1273
		--BUILDING THE BOX--
1274
			local BASE = CreatePart(3, BOX, "Neon", 0, 0, "Bright blue", "Black", VT(2,1.8,2))
1275
			BASE.Color = C3(0,0,0)
1276
			PANDORASBOX.PrimaryPart = BASE
1277
			BASE.CFrame = CF(HITPOS+VT(0,-8,0),VT(RootPart.Position.X,HITPOS.Y-8,RootPart.Position.Z))
1278
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1279
			WOOD.CFrame = BASE.CFrame*CF(1,0,1)
1280
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1281
			WOOD.CFrame = BASE.CFrame*CF(1,0,-1)
1282
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1283
			WOOD.CFrame = BASE.CFrame*CF(-1,0,1)
1284
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
1285
			WOOD.CFrame = BASE.CFrame*CF(-1,0,-1)
1286
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1287
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,1)
1288
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1289
			WOOD.CFrame = BASE.CFrame*CF(0,0.9,-1)
1290
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1291
			WOOD.CFrame = BASE.CFrame*CF(1,0.9,0)
1292
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1293
			WOOD.CFrame = BASE.CFrame*CF(-1,0.9,0)
1294
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1295
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,1)
1296
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1297
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,-1)
1298
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1299
			WOOD.CFrame = BASE.CFrame*CF(1,-0.9,0)
1300
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1301
			WOOD.CFrame = BASE.CFrame*CF(-1,-0.9,0)
1302
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Br. yellowish green", "Marble", VT(2.1,1.9,0.1))
1303
			WOOD.CFrame = BASE.CFrame*CF(0,0,1)
1304
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Br. yellowish green", "Marble", VT(2.1,1.9,0.1))
1305
			WOOD.CFrame = BASE.CFrame*CF(0,0,-1)
1306
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Br. yellowish green", "Marble", VT(0.1,1.9,2.1))
1307
			WOOD.CFrame = BASE.CFrame*CF(1,0,0)
1308
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Br. yellowish green", "Marble", VT(0.1,1.9,2.1))
1309
			WOOD.CFrame = BASE.CFrame*CF(-1,0,0)
1310
			local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Br. yellowish green", "Marble", VT(2.1,0.1,2.1))
1311
			WOOD.CFrame = BASE.CFrame*CF(0,-0.9,0)
1312
			-------------
1313
			local LIDPART = CreatePart(3, LID, "Marble", 0, 0, "Br. yellowish green", "Marble", VT(2.1,0.1,2.1))
1314
			LIDPART.CFrame = BASE.CFrame*CF(0,1,0)
1315
			LID.PrimaryPart = LIDPART
1316
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1317
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,-1)
1318
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
1319
			WOOD.CFrame = LIDPART.CFrame*CF(0,0,1)
1320
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1321
			WOOD.CFrame = LIDPART.CFrame*CF(1,0,0)
1322
			local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
1323
			WOOD.CFrame = LIDPART.CFrame*CF(-1,0,0)
1324
			local DECAL = IT("Decal",LIDPART)
1325
			DECAL.Face = "Top"
1326
			DECAL.Texture = "http://www.roblox.com/asset/?id=160952296"
1327
			DECAL.Color3 = C3(1,1,1)
1328
		--BUILDING THE BOX--
1329
		coroutine.resume(coroutine.create(function()
1330
			repeat
1331
				Swait()
1332
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * ANGLES(RAD(0), RAD(2.45), RAD(0)))
1333
			until BOXSPIN == false
1334
		end))
1335
		for i = 1, 25 do
1336
			Swait()
1337
			PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,1.5-(i/12.5),0))
1338
		end
1339
		wait(0.5)
1340
		BOXSPIN = false
1341
		CONSTRUCTING = false	
1342
		coroutine.resume(coroutine.create(function()
1343
			WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = LIDPART.Size, Size2 = VT(3,0,3)*4, Transparency = 0, Transparency2 = 1, CFrame = LIDPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 168586586, SoundPitch = 1.3, SoundVolume = 6})
1344
			--[[for i = 1, 45 do
1345
				Swait()
1346
				LID:SetPrimaryPartCFrame(LIDPART.CFrame * CF(0,1.5-(i/12.5),0.5) * ANGLES(RAD(0.7), RAD(0), RAD(0)))
1347
			end-
1348
			LID:remove()]]--
1349
			for _, c in pairs(LID:GetChildren()) do
1350
				if c.ClassName == "Part" then
1351
					c.Anchored = false
1352
					c.CanCollide = true
1353
					if c ~= LIDPART then
1354
						weldBetween(LIDPART,c)
1355
					end
1356
				end
1357
			end
1358
			LIDPART.Velocity = CF(LIDPART.Position,LIDPART.CFrame*CF(15,25,0).p).lookVector*65
1359
			Debris:AddItem(LID,15)
1360
			wait(0.5)
1361
			local RANDOMEFFECT = MRANDOM(1,4)
1362
			if RANDOMEFFECT == 1 then
1363
				for i = 1, 45 do
1364
					wait((2-(i/15))/15)
1365
					WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(0,MRANDOM(12,15),0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,MRANDOM(1,5)), MoveToPos = BASE.Position, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.8, SoundVolume = 6})
1366
				end	
1367
				wait(1)
1368
				WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(35,35,35)*12, Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 165970126, SoundPitch = 0.75, SoundVolume = 6})
1369
				WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*10, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 469345336, SoundPitch = 0.75, SoundVolume = 6})
1370
				WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*9, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
1371
				for i = 1, 5 do
1372
					WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35)*12, Transparency = 0.5, Transparency2 = 1, CFrame = BASE.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1373
				end
1374
				ApplyAoE(BASE.Position,50,1,200,375,false)
1375
				ApplyAoE(BASE.Position,250,35,75,175,false)
1376
			elseif RANDOMEFFECT == 2 then
1377
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Really blue", "Field", VT(0.3,0.3,0.3))
1378
				FIELD.CFrame = BASE.CFrame
1379
				MakeForm(FIELD,"Ball")
1380
				for i = 1, 50 do
1381
					Swait()
1382
					FIELD.Size = FIELD.Size + VT(0.03,0.03,0.03)
1383
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
1384
				end
1385
				wait(0.2)
1386
				local LOOP = CreateSound(1393698948, FIELD, 0, 1.2, true)
1387
				coroutine.resume(coroutine.create(function()
1388
					for i = 1, 75 do
1389
						Swait()
1390
						LOOP.Volume = LOOP.Volume + 10/75
1391
						LOOP.Parent = FIELD
1392
						local CHILDREN = workspace:GetDescendants()
1393
						for index, CHILD in pairs(CHILDREN) do
1394
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1395
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1396
								if HUM then
1397
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1398
									if TORSO then
1399
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
1400
											HUM.Health = HUM.Health - 0.1
1401
											TORSO.Velocity = VT(0,5,0)
1402
											HUM.PlatformStand = true
1403
											if TORSO.RotVelocity.Magnitude < 15 then
1404
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1405
											end
1406
										end
1407
									end
1408
								end
1409
							end
1410
						end
1411
						FIELD.Size = FIELD.Size + VT(3,3,3)
1412
						FIELD.Transparency = FIELD.Transparency + 0.8/75
1413
					end
1414
					for i = 1, 500 do
1415
						Swait()
1416
						LOOP.Parent = FIELD
1417
						local CHILDREN = workspace:GetDescendants()
1418
						for index, CHILD in pairs(CHILDREN) do
1419
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1420
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1421
								if HUM then
1422
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1423
									if TORSO then
1424
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
1425
											TORSO.Velocity = VT(0,5,0)
1426
											HUM.Health = HUM.Health - 0.1
1427
											HUM.PlatformStand = true
1428
											if TORSO.RotVelocity.Magnitude < 15 then
1429
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1430
											end
1431
										end
1432
									end
1433
								end
1434
							end
1435
						end
1436
					end
1437
					for i = 1, 25 do
1438
						Swait()
1439
						LOOP.Volume = LOOP.Volume + 10/25
1440
						LOOP.Parent = FIELD
1441
						local CHILDREN = workspace:GetDescendants()
1442
						for index, CHILD in pairs(CHILDREN) do
1443
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1444
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1445
								if HUM then
1446
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1447
									if TORSO then
1448
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/1.8 then
1449
											TORSO.Velocity = VT(0,5,0)
1450
											HUM.Health = HUM.Health - 0.1
1451
											HUM.PlatformStand = false
1452
											if TORSO.RotVelocity.Magnitude < 15 then
1453
										 		TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
1454
											end
1455
										end
1456
									end
1457
								end
1458
							end
1459
						end
1460
						FIELD.Size = FIELD.Size - VT(3,3,3)
1461
						FIELD.Transparency = FIELD.Transparency + 0.2/25
1462
					end	
1463
					FIELD:remove()
1464
				end))
1465
			elseif RANDOMEFFECT == 3 then
1466
				for i = 1, 10 do
1467
					wait(0.15)
1468
					WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(3,8,3), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(0,0.3,0), MoveToPos = BASE.Position+VT(0,6,0), RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(255,0,215), SoundID = 90655239, SoundPitch = 0.8, SoundVolume = 6})
1469
					coroutine.resume(coroutine.create(function()
1470
						local MINION = CLONE:Clone()
1471
						MINION.Parent = Effects
1472
						MINION.Name = "Shadow"
1473
						MINION.HumanoidRootPart.CFrame = BASE.CFrame*CF(0,5,0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))
1474
						MINION.HumanoidRootPart.Velocity = CF(MINION.HumanoidRootPart.Position,MINION.HumanoidRootPart.CFrame*CF(0,8,-15).p).lookVector*MRANDOM(55,100)
1475
						for _, c in pairs(MINION:GetChildren()) do
1476
							if c.ClassName == "Part" then
1477
								c.Material = "Glass"
1478
								c.Color = C3(1,1,1)
1479
								c.Transparency = 0.25
1480
								if c.Name == "Head" then
1481
									c:ClearAllChildren()
1482
									local MSH = IT("BlockMesh",c)
1483
									MSH.Scale = VT(0.5,1,1)
1484
								end
1485
							end
1486
						end
1487
						local TORSO = MINION.Torso
1488
						local HUMAN = MINION.Humanoid
1489
						HUMAN.WalkSpeed = 23
1490
						HUMAN.MaxHealth = math.huge
1491
						HUMAN.Health = math.huge
1492
						HUMAN.DisplayDistanceType = "None"
1493
						HUMAN.Died:connect(function()
1494
							MINION:remove()
1495
							--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 3, 0.5, false)
1496
						end)
1497
						wait(1)
1498
						local findNearestTorso = function(POS)
1499
							local list = game.Workspace:GetDescendants()
1500
							local torso = nil
1501
							local dist = 300
1502
							local temp = nil
1503
							local human = nil
1504
							local temp2 = nil
1505
							for x = 1, #list do
1506
								temp2 = list[x]
1507
								if (temp2.className == "Model") and (temp2 ~= Character) and (temp2.Parent ~= Effects) then
1508
									temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
1509
									human = temp2:findFirstChildOfClass("Humanoid")
1510
									if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
1511
										if (temp.Position - POS).magnitude < dist then
1512
											torso = temp
1513
											dist = (temp.Position - POS).magnitude
1514
										end
1515
									end
1516
								end
1517
							end
1518
							return torso, dist
1519
						end
1520
						for i = 1, 40 do
1521
							if HUMAN.Health == 0 then
1522
							end
1523
							wait(0.3)
1524
							local target,dist= findNearestTorso(TORSO.Position)
1525
							if target then
1526
								HUMAN:MoveTo(target.Position)
1527
								if dist < 25 then
1528
									CreateSound(348663022, TORSO, 10, 1, true)
1529
									wait(2)
1530
									--local ANIM = HUMAN:LoadAnimation(ATANIM)
1531
									--ANIM:Play()
1532
									--CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 1, 1, false)
1533
									ApplyAoE(TORSO.Position,10,0,0,85,true)
1534
									WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 201858087, SoundPitch = 0.8, SoundVolume = 10})
1535
									for i = 1, 5 do
1536
										WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(15,1,15), Transparency = 0.5, Transparency2 = 1, CFrame = TORSO.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-15,15)/7.5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1537
									end
1538
								end
1539
							end
1540
						end
1541
						MINION:remove()
1542
					end))
1543
				end
1544
			elseif RANDOMEFFECT == 4 then
1545
				local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Bright yellow", "Field", VT(0.3,0.3,0.3))
1546
				FIELD.Color = C3(0,0,0)
1547
				FIELD.CFrame = BASE.CFrame
1548
				MakeForm(FIELD,"Ball")
1549
				FIELD.CanCollide = true
1550
				for i = 1, 50 do
1551
					Swait()
1552
					FIELD.Size = FIELD.Size + VT(0.01,0.01,0.01)
1553
					FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
1554
				end
1555
				wait(0.2)
1556
				local LOOP = CreateSound(487214658, FIELD, 0, 1, true)
1557
				coroutine.resume(coroutine.create(function()
1558
					local E = 0
1559
					for i = 1, 75 do
1560
						E = E + 1
1561
						Swait()
1562
						if E >= 35 then
1563
							E = 0
1564
							WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = FIELD.Size*30, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
1565
						end
1566
						LOOP.Volume = LOOP.Volume + 10/75
1567
						LOOP.Parent = FIELD
1568
						local CHILDREN = workspace:GetDescendants()
1569
						for index, CHILD in pairs(CHILDREN) do
1570
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1571
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1572
								if HUM then
1573
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1574
									if TORSO then
1575
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
1576
											for _, c in pairs(CHILD:GetChildren()) do
1577
												if c:IsA("BasePart") then
1578
													local bv = Instance.new("BodyVelocity") 
1579
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1580
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
1581
													bv.Parent = c
1582
													Debris:AddItem(bv,0.05)
1583
												end
1584
											end
1585
											HUM.Health = HUM.Health - 0.3
1586
										end
1587
									end
1588
								end
1589
							end
1590
						end
1591
						FIELD.Size = FIELD.Size + VT(0.3,0.3,0.3)/5
1592
					end
1593
					for i = 1, 180 do
1594
						E = E + 1
1595
						Swait()
1596
						if E >= 35 then
1597
							E = 0
1598
							WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = FIELD.Size*30, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
1599
						end
1600
						LOOP.Parent = FIELD
1601
						local CHILDREN = workspace:GetDescendants()
1602
						for index, CHILD in pairs(CHILDREN) do
1603
							if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1604
								local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1605
								if HUM then
1606
									local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1607
									if TORSO then
1608
										if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
1609
											for _, c in pairs(CHILD:GetChildren()) do
1610
												if c:IsA("BasePart") then
1611
													local bv = Instance.new("BodyVelocity") 
1612
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1613
													bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
1614
													bv.Parent = c
1615
													Debris:AddItem(bv,0.05)
1616
												end
1617
											end
1618
											HUM.Health = HUM.Health - 0.3
1619
										end
1620
									end
1621
								end
1622
							end
1623
						end
1624
					end
1625
					ApplyAoE(FIELD.Position,40,15,20,375,false)
1626
					WACKYEFFECT({Time = 150, EffectType = "Sphere", Size = FIELD.Size, Size2 = VT(35,35,35), Transparency = 0, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 231917744, SoundPitch = 1, SoundVolume = 6})
1627
					for i = 1, 5 do
1628
						WACKYEFFECT({Time = 150, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35), Transparency = 0.5, Transparency2 = 1, CFrame = FIELD.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
1629
					end
1630
					FIELD:remove()
1631
				end))
1632
			elseif RANDOMEFFECT == 5 then
1633
			end
1634
			wait(0.5)
1635
			for i = 1, 25 do
1636
				Swait()
1637
				PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,-0.3,0))
1638
			end
1639
			PANDORASBOX:remove()
1640
			RINGSPIN = false
1641
		end))
1642
		ATTACK = false
1643
		Rooted = false
1644
	end
1645
end
1646
1647
function Taunt()
1648
	ATTACK = true
1649
	local LAUGH = nil
1650
	coroutine.resume(coroutine.create(function()
1651
		repeat
1652
			Swait()
1653
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1654
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
1655
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE, -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1656
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1657
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1658
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1659
		until LAUGH ~= nil
1660
		repeat
1661
			Swait()
1662
			LAUGH.Parent = Head
1663
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0+(0.1*LAUGH.PlaybackLoudness/75) + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1664
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE+(0.1*LAUGH.PlaybackLoudness/75)) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
1665
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE+(0.1*LAUGH.PlaybackLoudness/75), -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1666
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE+(0.1*LAUGH.PlaybackLoudness/75), 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1667
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1668
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1669
		until LAUGH.Playing == false
1670
	ATTACK = false
1671
	end))
1672
	wait(0.1)
1673
	sick:Pause()
1674
	LAUGH = CreateSound(1474367957, Head, 10, 1, false)
1675
	wait(1)
1676
	sick:Resume()
1677
end
1678
1679
--//=================================\\
1680
--||	  ASSIGN THINGS TO KEYS
1681
--\\=================================//
1682
1683
function MouseDown(Mouse)
1684
	HOLD = true
1685
	if ATTACK == false then
1686
	end
1687
end
1688
1689
function MouseUp(Mouse)
1690
HOLD = false
1691
end
1692
1693
function KeyDown(Key)
1694
	KEYHOLD = true
1695
	if Key == "z" and ATTACK == false then
1696
		MagicMissiles()
1697
	end
1698
1699
	if Key == "b" and ATTACK == false then
1700
		TimesUp()
1701
	end
1702
1703
	if Key == "c" and ATTACK == false then
1704
		ChainPunch()
1705
	end
1706
1707
	if Key == "v" and ATTACK == false then
1708
		WarpMeteor()
1709
	end
1710
1711
	if Key == "x" and ATTACK == false then
1712
		PandorasBox()
1713
	end
1714
1715
	if Key == "t" and ATTACK == false then
1716
		Taunt()
1717
	end
1718
end
1719
1720
function KeyUp(Key)
1721
	KEYHOLD = false
1722
end
1723
1724
	Mouse.Button1Down:connect(function(NEWKEY)
1725
		MouseDown(NEWKEY)
1726
	end)
1727
	Mouse.Button1Up:connect(function(NEWKEY)
1728
		MouseUp(NEWKEY)
1729
	end)
1730
	Mouse.KeyDown:connect(function(NEWKEY)
1731
		KeyDown(NEWKEY)
1732
	end)
1733
	Mouse.KeyUp:connect(function(NEWKEY)
1734
		KeyUp(NEWKEY)
1735
	end)
1736
1737
--//=================================\\
1738
--\\=================================//
1739
1740
1741
function unanchor()
1742
	if UNANCHOR == true then
1743
		RootPart.Anchored = false
1744
	end
1745
	g = Character:GetChildren()
1746
	for i = 1, #g do
1747
		if g[i].ClassName == "Part" and g[i] ~= RootPart then
1748
			g[i].Anchored = false
1749
		end
1750
	end
1751
	g = Weapon:GetChildren()
1752
	for i = 1, #g do
1753
		if g[i].ClassName == "Part" then
1754
			g[i].Anchored = false
1755
		end
1756
	end
1757
end
1758
1759
1760
--//=================================\\
1761
--||	WRAP THE WHOLE SCRIPT UP
1762
--\\=================================//
1763
1764
Humanoid.Changed:connect(function(Jump)
1765
	if Jump == "Jump" and (Disable_Jump == true) then
1766
		Humanoid.Jump = false
1767
	end
1768
end)
1769
1770
while true do
1771
	Swait()
1772
	script.Parent = WEAPONGUI
1773
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1774
	    v:Stop();
1775
	end
1776
	ANIMATE.Parent = nil
1777
	SINE = SINE + CHANGE*1.5
1778
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1779
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1780
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 5*SIZE, Character)
1781
	local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
1782
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1783
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1784
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1785
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 0.875*SIZE - 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1786
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 0.875*SIZE + 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(-25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1787
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1788
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1789
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1790
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1791
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1792
	end
1793
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1794
		ANIM = "Jump"
1795
		if ATTACK == false then
1796
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1797
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
1798
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1799
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1800
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
1801
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 1 / Animation_Speed)
1802
	    end
1803
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1804
		ANIM = "Fall"
1805
		if ATTACK == false then
1806
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1807
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
1808
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1809
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1810
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 1 / Animation_Speed)
1811
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1 / Animation_Speed)
1812
		end
1813
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1814
		ANIM = "Idle"
1815
		if ATTACK == false then
1816
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
1817
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1818
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1819
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1820
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1821
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
1822
		end
1823
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1824
		ANIM = "Walk"
1825
		if ATTACK == false then
1826
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.1*SIZE) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
1827
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(15 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 1/ Animation_Speed)
1828
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(-55 + 2.5 * SIN(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1829
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(55 - 2.5 * SIN(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1830
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE , -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1831
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1832
		end
1833
	end
1834
	unanchor()
1835
	Humanoid.MaxHealth = "5100"
1836
	Humanoid.Health = "5100"
1837
	if Rooted == false then
1838
		Disable_Jump = false
1839
		Humanoid.WalkSpeed = Speed
1840
	elseif Rooted == true then
1841
		Disable_Jump = true
1842
		Humanoid.WalkSpeed = 0
1843
	end
1844
	for _, c in pairs(Character:GetChildren()) do
1845
		if c.ClassName == "Part" then
1846
			c.Material = "SmoothPlastic"
1847
			if c:FindFirstChildOfClass("ParticleEmitter") then
1848
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1849
			end
1850
			if c == Torso or c.Name == "Muscle" then
1851
				c.BrickColor = BRICKC"Bright blue"
1852
			elseif c == RightLeg or c == LeftLeg then
1853
				c.BrickColor = BRICKC"Br. yellowish green"
1854
			else
1855
				c.BrickColor = BRICKC"Bright yellow"
1856
			end
1857
			if c == Head then
1858
				if c:FindFirstChild("face") then
1859
					c.face.Texture = "http://www.roblox.com/asset/?id=145914523"
1860
				end
1861
			end
1862
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
1863
			c:remove()
1864
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
1865
			c:remove()
1866
		end
1867
	end
1868
	sick.SoundId = "rbxassetid://"..SONG
1869
	sick.Looped = true
1870
	sick.Pitch = 1
1871
	sick.Volume = 5
1872
	sick.Parent = Torso
1873
	sick:Resume()
1874
	sick.Playing = true
1875
        SKILL1FRAME.Rotation = MRANDOM(-15,15)/2
1876
	SKILL2FRAME.Rotation = MRANDOM(-15,15)/2
1877
	SKILL3FRAME.Rotation = MRANDOM(-15,15)/2
1878
	SKILL4FRAME.Rotation = MRANDOM(-15,15)/2
1879
	SKILL5FRAME.Rotation = MRANDOM(-15,15)/2
1880
	text2.Rotation = MRANDOM(-15,15)/8
1881
	Humanoid.Name = "God = "..Player.Name
1882
end
1883
1884
--//=================================\\
1885
--\\=================================//
1886
1887
1888
1889
1890
1891
--//====================================================\\--
1892
--||			  		 END OF SCRIPT
1893
--\\====================================================//--