View difference between Paste ID: RZuQcxKS and HvL8MB3h
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,game,owner = owner,game
3
local RealPlayer = Player
4
do
5
    print("FE Compatibility code by Mokiros, Edited by StarzoZero")
6
    local rp = RealPlayer
7
    script.Parent = rp.Character
8
   
9
    --RemoteEvent for communicating
10
    local Event = Instance.new("RemoteEvent")
11
    Event.Name = "UserInput_Event"
12
 
13
    --Fake event to make stuff like Mouse.KeyDown work
14
    local function fakeEvent()
15
        local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
16
        t.connect = t.Connect
17
        return t
18
    end
19
 
20
    --Creating fake input objects with fake variables
21
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
22
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
23
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
24
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
25
    end}
26
    --Merged 2 functions into one by checking amount of arguments
27
    CAS.UnbindAction = CAS.BindAction
28
 
29
    --This function will trigger the events that have been :Connect()'ed
30
    local function te(self,ev,...)
31
        local t = m[ev]
32
        if t and t._fakeEvent then
33
            for _,f in pairs(t.Functions) do
34
                f(...)
35
            end
36
        end
37
    end
38
    m.TrigEvent = te
39
    UIS.TrigEvent = te
40
 
41
    Event.OnServerEvent:Connect(function(plr,io)
42
        if plr~=rp then return end
43
        m.Target = io.Target
44
        m.Hit = io.Hit
45
        if not io.isMouse then
46
            local b = io.UserInputState == Enum.UserInputState.Begin
47
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
                return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
            end
50
            if io.UserInputType == Enum.UserInputType.MouseButton2 then
51
                return m:TrigEvent(b and "Button2Down" or "Button2Up")
52
            end
53
            for _,t in pairs(CAS.Actions) do
54
                for _,k in pairs(t.Keys) do
55
                    if k==io.KeyCode then
56
                        t.Function(t.Name,io.UserInputState,io)
57
                    end
58
                end
59
            end
60
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
61
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
62
        end
63
    end)
64
    Event.Parent = NLS([==[
65
    local Player = game:GetService("Players").LocalPlayer
66
    local Event = script:WaitForChild("UserInput_Event")
67
    local Mouse = Player:GetMouse()
68
    local UIS = game:GetService("UserInputService")
69
    local input = function(io,a)
70
        if a then return end
71
        --Since InputObject is a client-side instance, we create and pass table instead
72
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
73
    end
74
    UIS.InputBegan:Connect(input)
75
    UIS.InputEnded:Connect(input)
76
    local h,t
77
    --Give the server mouse data 30 times every second, but only if the values changed
78
    --If player is not moving their mouse, client won't fire events
79
    while wait(1/30) do
80
        if h~=Mouse.Hit or t~=Mouse.Target then
81
            h,t=Mouse.Hit,Mouse.Target
82
            Event:FireServer({isMouse=true,Target=t,Hit=h})
83
        end
84
    end]==],Player.Character)
85
 
86
    ----Sandboxed game object that allows the usage of client-side methods and services
87
    --Real game object
88
    local _rg = game
89
 
90
    --Metatable for fake service
91
    local fsmt = {
92
        __index = function(self,k)
93
            local s = rawget(self,"_RealService")
94
            if s then
95
                return typeof(s[k])=="function"
96
                and function(_,...)return s[k](s,...)end or s[k]
97
            end
98
        end,
99
        __newindex = function(self,k,v)
100
            local s = rawget(self,"_RealService")
101
            if s then s[k]=v end
102
        end
103
    }
104
    local function FakeService(t,RealService)
105
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
106
        return setmetatable(t,fsmt)
107
    end
108
 
109
    --Fake game object
110
    local g = {
111
        GetService = function(self,s)
112
            return rawget(self,s) or _rg:GetService(s)
113
        end,
114
        Players = FakeService({
115
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
116
        },"Players"),
117
        UserInputService = FakeService(UIS,"UserInputService"),
118
        ContextActionService = FakeService(CAS,"ContextActionService"),
119
        RunService = FakeService({
120
            _btrs = {},
121
            RenderStepped = _rg:GetService("RunService").Heartbeat,
122
            BindToRenderStep = function(self,name,_,fun)
123
                self._btrs[name] = self.Heartbeat:Connect(fun)
124
            end,
125
            UnbindFromRenderStep = function(self,name)
126
                self._btrs[name]:Disconnect()
127
            end,
128
        },"RunService")
129
    }
130
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
131
    g.service = g.GetService
132
    FakeService(g,game)
133
    --Changing owner to fake player object to support owner:GetMouse()
134
    game,owner = g,g.Players.LocalPlayer
135
end
136
script.Name = "Banisher Gun V3 / 1"
137
--//====================================================\\--
138
--||			   CREATED BY SHACKLUSTER
139
--\\====================================================//--
140
141
wait(0.2)
142
143
Player = owner
144
PlayerGui = Player.PlayerGui
145
Cam = workspace.CurrentCamera
146
Backpack = Player.Backpack
147
Character = Player.Character
148
Humanoid = Character.Humanoid
149
RootPart = Character["HumanoidRootPart"]
150
Torso = Character["Torso"]
151
Head = Character["Head"]
152
RightArm = Character["Right Arm"]
153
LeftArm = Character["Left Arm"]
154
RightLeg = Character["Right Leg"]
155
LeftLeg = Character["Left Leg"]
156
RootJoint = RootPart["RootJoint"]
157
Neck = Torso["Neck"]
158
RightShoulder = Torso["Right Shoulder"]
159
LeftShoulder = Torso["Left Shoulder"]
160
RightHip = Torso["Right Hip"]
161
LeftHip = Torso["Left Hip"]
162
local sick = Instance.new("Sound",Torso)
163
sick.SoundId = "rbxassetid://1138145518"
164
sick.Looped = true
165
sick.Pitch = 1
166
sick.Volume = 2
167
sick.TimePosition = 110
168
Character.Archivable = true
169
Humanoid.DisplayDistanceType = "None"
170
171
local naeeym2 = Instance.new("BillboardGui",Character)
172
naeeym2.AlwaysOnTop = true
173
naeeym2.Size = UDim2.new(5,35,2,35)
174
naeeym2.StudsOffset = Vector3.new(0,3,0)
175
naeeym2.Adornee = Character.Head
176
naeeym2.Name = "Name"
177
local tecks2 = Instance.new("TextLabel",naeeym2)
178
tecks2.BackgroundTransparency = 1
179
tecks2.TextScaled = true
180
tecks2.BorderSizePixel = 0
181
tecks2.Text = "CREAM"
182
tecks2.Font = "Code"
183
tecks2.TextSize = 30
184
tecks2.TextTransparency = 1
185
tecks2.TextStrokeTransparency = 1
186
tecks2.TextColor3 = Color3.new(1/0,0/1,1/0)
187
tecks2.Size = UDim2.new(1,0,0.5,0)
188
tecks2.Parent = naeeym2
189
190
IT = Instance.new
191
CF = CFrame.new
192
VT = Vector3.new
193
RAD = math.rad
194
C3 = Color3.new
195
UD2 = UDim2.new
196
BRICKC = BrickColor.new
197
ANGLES = CFrame.Angles
198
EULER = CFrame.fromEulerAnglesXYZ
199
COS = math.cos
200
ACOS = math.acos
201
SIN = math.sin
202
ASIN = math.asin
203
ABS = math.abs
204
MRANDOM = math.random
205
FLOOR = math.floor
206
207
--//=================================\\
208
--|| 	      USEFUL VALUES
209
--\\=================================//
210
211
Animation_Speed = 3
212
local FORCERESET = false
213
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
214
local Speed = 16
215
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
216
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
217
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
218
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
219
local DAMAGEMULTIPLIER = 1
220
local ANIM = "Idle"
221
local ATTACK = false
222
local EQUIPPED = false
223
local HOLD = false
224
local COMBO = 1
225
local Rooted = false
226
local INTRO = false
227
local Gun = IT("Model")
228
Gun.Name = "Gun"
229
local SINE = 0
230
local KEYHOLD = false
231
local CHANGE = 2 / Animation_Speed
232
local WALKINGANIM = false
233
local VALUE1 = false
234
local VALUE2 = false
235
local ROBLOXIDLEANIMATION = IT("Animation")
236
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
237
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
238
--ROBLOXIDLEANIMATION.Parent = Humanoid
239
local WEAPONGUI = IT("ScreenGui", PlayerGui)
240
WEAPONGUI.Name = "BanishV3Gui"
241
local Weapon = IT("Model")
242
Weapon.Name = "Adds"
243
local Effects = IT("Folder", Weapon)
244
Effects.Name = "Effects"
245
local ANIMATOR = Humanoid.Animator
246
local ANIMATE = Character:FindFirstChild("Animate")
247
local UNANCHOR = true
248
local TOBANISH = {}
249
script.Parent = PlayerGui
250
251
--//=================================\\
252
--\\=================================//
253
254
255
--//=================================\\
256
--||		  CUSTOMIZATION
257
--\\=================================//
258
259
Class_Name = "Sharpshooter"
260
Weapon_Name = "Add-ons"
261
262
	Custom_Color_1 = BRICKC("Really black"); --1st color for the weapon.
263
	Custom_Color_2 = BRICKC("Maroon"); --2nd color for the weapon.
264
265
	Custom_Color_3 = BRICKC("Really red"); --Color for the abilities.
266
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
267
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
268
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
269
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
270
271
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
272
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
273
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
274
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
275
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
276
277
278
Player_Size = 1 --Size of the player.
279
Animation_Speed = 3
280
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
281
282
local Speed = 16
283
local Effects2 = {}
284
285
--//=================================\\
286
--|| 	  END OF CUSTOMIZATION
287
--\\=================================//
288
289
290
--//=================================\\
291
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
292
--\\=================================//
293
294
ArtificialHB = Instance.new("BindableEvent", script)
295
ArtificialHB.Name = "ArtificialHB"
296
297
script:WaitForChild("ArtificialHB")
298
299
frame = Frame_Speed
300
tf = 0
301
allowframeloss = false
302
tossremainder = false
303
lastframe = tick()
304
script.ArtificialHB:Fire()
305
306
game:GetService("RunService").Heartbeat:connect(function(s, p)
307
	tf = tf + s
308
	if tf >= frame then
309
		if allowframeloss then
310
			script.ArtificialHB:Fire()
311
			lastframe = tick()
312
		else
313
			for i = 1, math.floor(tf / frame) do
314
				script.ArtificialHB:Fire()
315
			end
316
		lastframe = tick()
317
		end
318
		if tossremainder then
319
			tf = 0
320
		else
321
			tf = tf - frame * math.floor(tf / frame)
322
		end
323
	end
324
end)
325
326
--//=================================\\
327
--\\=================================//
328
329
--//=================================\\
330
--|| 	      SOME FUNCTIONS
331
--\\=================================//
332
333
function Clerp(a, b, t)
334
	local qa = {QuaternionFromCFrame(a)}
335
	local qb = {QuaternionFromCFrame(b)}
336
	local ax, ay, az = a.x, a.y, a.z
337
	local bx, by, bz = b.x, b.y, b.z
338
	local _t = 1 - t
339
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
340
end
341
342
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
343
	local frame = IT("Frame")
344
	frame.BackgroundTransparency = TRANSPARENCY
345
	frame.BorderSizePixel = BORDERSIZEPIXEL
346
	frame.Position = POSITION
347
	frame.Size = SIZE
348
	frame.BackgroundColor3 = COLOR
349
	frame.BorderColor3 = BORDERCOLOR
350
	frame.Name = NAME
351
	frame.Parent = PARENT
352
	return frame
353
end
354
355
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
356
	local label = IT("TextLabel")
357
	label.BackgroundTransparency = 1
358
	label.Size = UD2(1, 0, 1, 0)
359
	label.Position = UD2(0, 0, 0, 0)
360
	label.TextColor3 = TEXTCOLOR
361
	label.TextStrokeTransparency = STROKETRANSPARENCY
362
	label.TextTransparency = TRANSPARENCY
363
	label.FontSize = TEXTFONTSIZE
364
	label.Font = TEXTFONT
365
	label.BorderSizePixel = BORDERSIZEPIXEL
366
	label.TextScaled = false
367
	label.Text = TEXT
368
	label.Name = NAME
369
	label.Parent = PARENT
370
	return label
371
end
372
373
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
374
	if FLOOR ~= nil then
375
		coroutine.resume(coroutine.create(function()
376
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
377
			PART.CFrame = CF(POSITION)
378
			for i = 1, 45 do
379
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
380
				RingPiece.Material = FLOOR.Material
381
				RingPiece.Color = FLOOR.Color
382
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
383
				Debris:AddItem(RingPiece,SWAIT)
384
			end
385
			PART:remove()
386
		end))
387
	end
388
end
389
390
function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
391
	if FLOOR ~= nil then
392
		for i = 1, AMOUNT do
393
			local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
394
			DEBREE.Material = FLOOR.Material
395
			DEBREE.Color = FLOOR.Color
396
			DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
397
			DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
398
			coroutine.resume(coroutine.create(function()
399
				Swait(15)
400
				DEBREE.Parent = workspace
401
				DEBREE.CanCollide = true
402
				Debris:AddItem(DEBREE,SWAIT)
403
			end))
404
		end
405
	end
406
end
407
408
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
409
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
410
end
411
412
function PositiveAngle(NUMBER)
413
	if NUMBER >= 0 then
414
		NUMBER = 0
415
	end
416
	return NUMBER
417
end
418
419
function NegativeAngle(NUMBER)
420
	if NUMBER <= 0 then
421
		NUMBER = 0
422
	end
423
	return NUMBER
424
end
425
426
function Swait(NUMBER)
427
	if NUMBER == 0 or NUMBER == nil then
428
		ArtificialHB.Event:wait()
429
	else
430
		for i = 1, NUMBER do
431
			ArtificialHB.Event:wait()
432
		end
433
	end
434
end
435
436
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
437
	local NEWMESH = IT(MESH)
438
	if MESH == "SpecialMesh" then
439
		NEWMESH.MeshType = MESHTYPE
440
		if MESHID ~= "nil" and MESHID ~= "" then
441
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
442
		end
443
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
444
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
445
		end
446
	end
447
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
448
	NEWMESH.Scale = SCALE
449
	NEWMESH.Parent = PARENT
450
	return NEWMESH
451
end
452
453
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
454
	local NEWPART = IT("Part")
455
	NEWPART.formFactor = FORMFACTOR
456
	NEWPART.Reflectance = REFLECTANCE
457
	NEWPART.Transparency = TRANSPARENCY
458
	NEWPART.CanCollide = false
459
	NEWPART.Locked = true
460
	NEWPART.Anchored = true
461
	if ANCHOR == false then
462
		NEWPART.Anchored = false
463
	end
464
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
465
	NEWPART.Name = NAME
466
	NEWPART.Size = SIZE
467
	NEWPART.Position = Torso.Position
468
	NEWPART.Material = MATERIAL
469
	NEWPART:BreakJoints()
470
	NEWPART.Parent = PARENT
471
	return NEWPART
472
end
473
474
	local function weldBetween(a, b)
475
	    local weldd = Instance.new("ManualWeld")
476
	    weldd.Part0 = a
477
	    weldd.Part1 = b
478
	    weldd.C0 = CFrame.new()
479
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
480
	    weldd.Parent = a
481
	    return weldd
482
	end
483
484
485
function QuaternionFromCFrame(cf)
486
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
487
	local trace = m00 + m11 + m22
488
	if trace > 0 then 
489
		local s = math.sqrt(1 + trace)
490
		local recip = 0.5 / s
491
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
492
	else
493
		local i = 0
494
		if m11 > m00 then
495
			i = 1
496
		end
497
		if m22 > (i == 0 and m00 or m11) then
498
			i = 2
499
		end
500
		if i == 0 then
501
			local s = math.sqrt(m00 - m11 - m22 + 1)
502
			local recip = 0.5 / s
503
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
504
		elseif i == 1 then
505
			local s = math.sqrt(m11 - m22 - m00 + 1)
506
			local recip = 0.5 / s
507
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
508
		elseif i == 2 then
509
			local s = math.sqrt(m22 - m00 - m11 + 1)
510
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
511
		end
512
	end
513
end
514
 
515
function QuaternionToCFrame(px, py, pz, x, y, z, w)
516
	local xs, ys, zs = x + x, y + y, z + z
517
	local wx, wy, wz = w * xs, w * ys, w * zs
518
	local xx = x * xs
519
	local xy = x * ys
520
	local xz = x * zs
521
	local yy = y * ys
522
	local yz = y * zs
523
	local zz = z * zs
524
	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))
525
end
526
 
527
function QuaternionSlerp(a, b, t)
528
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
529
	local startInterp, finishInterp;
530
	if cosTheta >= 0.0001 then
531
		if (1 - cosTheta) > 0.0001 then
532
			local theta = ACOS(cosTheta)
533
			local invSinTheta = 1 / SIN(theta)
534
			startInterp = SIN((1 - t) * theta) * invSinTheta
535
			finishInterp = SIN(t * theta) * invSinTheta
536
		else
537
			startInterp = 1 - t
538
			finishInterp = t
539
		end
540
	else
541
		if (1 + cosTheta) > 0.0001 then
542
			local theta = ACOS(-cosTheta)
543
			local invSinTheta = 1 / SIN(theta)
544
			startInterp = SIN((t - 1) * theta) * invSinTheta
545
			finishInterp = SIN(t * theta) * invSinTheta
546
		else
547
			startInterp = t - 1
548
			finishInterp = t
549
		end
550
	end
551
	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
552
end
553
554
function Clerp(a, b, t)
555
	local qa = {QuaternionFromCFrame(a)}
556
	local qb = {QuaternionFromCFrame(b)}
557
	local ax, ay, az = a.x, a.y, a.z
558
	local bx, by, bz = b.x, b.y, b.z
559
	local _t = 1 - t
560
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
561
end
562
563
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
564
	local frame = IT("Frame")
565
	frame.BackgroundTransparency = TRANSPARENCY
566
	frame.BorderSizePixel = BORDERSIZEPIXEL
567
	frame.Position = POSITION
568
	frame.Size = SIZE
569
	frame.BackgroundColor3 = COLOR
570
	frame.BorderColor3 = BORDERCOLOR
571
	frame.Name = NAME
572
	frame.Parent = PARENT
573
	return frame
574
end
575
576
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
577
	local label = IT("TextLabel")
578
	label.BackgroundTransparency = 1
579
	label.Size = UD2(1, 0, 1, 0)
580
	label.Position = UD2(0, 0, 0, 0)
581
	label.TextColor3 = TEXTCOLOR
582
	label.TextStrokeTransparency = STROKETRANSPARENCY
583
	label.TextTransparency = TRANSPARENCY
584
	label.FontSize = TEXTFONTSIZE
585
	label.Font = TEXTFONT
586
	label.BorderSizePixel = BORDERSIZEPIXEL
587
	label.TextScaled = false
588
	label.Text = TEXT
589
	label.Name = NAME
590
	label.Parent = PARENT
591
	return label
592
end
593
594
function NoOutlines(PART)
595
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
596
end
597
598
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
599
	local NEWWELD = IT(TYPE)
600
	NEWWELD.Part0 = PART0
601
	NEWWELD.Part1 = PART1
602
	NEWWELD.C0 = C0
603
	NEWWELD.C1 = C1
604
	NEWWELD.Parent = PARENT
605
	return NEWWELD
606
end
607
608
local S = IT("Sound")
609
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
610
	local NEWSOUND = nil
611
	coroutine.resume(coroutine.create(function()
612
		NEWSOUND = S:Clone()
613
		NEWSOUND.Parent = PARENT
614
		NEWSOUND.Volume = VOLUME
615
		NEWSOUND.Pitch = PITCH
616
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
617
		NEWSOUND:play()
618
		if DOESLOOP == true then
619
			NEWSOUND.Looped = true
620
		else
621
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
622
			NEWSOUND:remove()
623
		end
624
	end))
625
	return NEWSOUND
626
end
627
628
function CFrameFromTopBack(at, top, back)
629
	local right = top:Cross(back)
630
	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)
631
end
632
633
--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})
634
function WACKYEFFECT(Table)
635
	local TYPE = (Table.EffectType or "Sphere")
636
	local SIZE = (Table.Size or VT(1,1,1))
637
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
638
	local TRANSPARENCY = (Table.Transparency or 0)
639
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
640
	local CFRAME = (Table.CFrame or Torso.CFrame)
641
	local MOVEDIRECTION = (Table.MoveToPos or nil)
642
	local ROTATION1 = (Table.RotationX or 0)
643
	local ROTATION2 = (Table.RotationY or 0)
644
	local ROTATION3 = (Table.RotationZ or 0)
645
	local MATERIAL = (Table.Material or "Neon")
646
	local COLOR = (Table.Color or C3(1,1,1))
647
	local TIME = (Table.Time or 45)
648
	local SOUNDID = (Table.SoundID or nil)
649
	local SOUNDPITCH = (Table.SoundPitch or nil)
650
	local SOUNDVOLUME = (Table.SoundVolume or nil)
651
	coroutine.resume(coroutine.create(function()
652
		local PLAYSSOUND = false
653
		local SOUND = nil
654
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
655
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
656
			PLAYSSOUND = true
657
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
658
		end
659
		EFFECT.Color = COLOR
660
		local MSH = nil
661
		if TYPE == "Sphere" then
662
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
663
		elseif TYPE == "Block" then
664
			MSH = IT("BlockMesh",EFFECT)
665
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
666
		elseif TYPE == "Wave" then
667
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
668
		elseif TYPE == "Ring" then
669
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
670
		elseif TYPE == "Slash" then
671
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
672
		elseif TYPE == "Round Slash" then
673
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
674
		elseif TYPE == "Swirl" then
675
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
676
		elseif TYPE == "Skull" then
677
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
678
		elseif TYPE == "Crystal" then
679
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
680
		end
681
		if MSH ~= nil then
682
			local MOVESPEED = nil
683
			if MOVEDIRECTION ~= nil then
684
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
685
			end
686
			local GROWTH = SIZE - ENDSIZE
687
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
688
			if TYPE == "Block" then
689
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
690
			else
691
				EFFECT.CFrame = CFRAME
692
			end
693
			for LOOP = 1, TIME+1 do
694
				Swait()
695
				MSH.Scale = MSH.Scale - GROWTH/TIME
696
				if TYPE == "Wave" then
697
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
698
				end
699
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
700
				if TYPE == "Block" then
701
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
702
				else
703
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
704
				end
705
				if MOVEDIRECTION ~= nil then
706
					local ORI = EFFECT.Orientation
707
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
708
					EFFECT.Orientation = ORI
709
				end
710
			end
711
			if PLAYSSOUND == false then
712
				EFFECT:remove()
713
			else
714
				SOUND.Stopped:Connect(function()
715
					EFFECT:remove()
716
				end)
717
			end
718
		else
719
			if PLAYSSOUND == false then
720
				EFFECT:remove()
721
			else
722
				repeat Swait() until SOUND.Playing == false
723
				EFFECT:remove()
724
			end
725
		end
726
	end))
727
end
728
729
local DECAL = IT("Decal")
730
function MakeRing()
731
	local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Really red"), "MagicRing", VT(0, 0, 0), true)
732
	local MSH = IT("BlockMesh", RING)
733
	local TOP = DECAL:Clone()
734
	local BOTTOM = DECAL:Clone()
735
	TOP.Parent = RING
736
	BOTTOM.Parent = RING
737
	TOP.Face = "Top"
738
	BOTTOM.Face = "Bottom"
739
	TOP.Texture = "http://www.roblox.com/asset/?id=127817121"
740
	BOTTOM.Texture = "http://www.roblox.com/asset/?id=127817121"
741
	local function REMOVE()
742
		coroutine.resume(coroutine.create(function()
743
			local SIZE = MSH.Scale.X
744
			for i = 1, 35 do
745
				Swait()
746
				MSH.Scale = MSH.Scale - VT(SIZE, 0, SIZE) / 60
747
				TOP.Transparency = TOP.Transparency + 0.02857142857142857
748
				BOTTOM.Transparency = BOTTOM.Transparency + 0.02857142857142857
749
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(-5), RAD(0))
750
			end
751
			RING:remove()
752
		end))
753
	end
754
	return RING, MSH, REMOVE
755
end
756
757
function MakeForm(PART,TYPE)
758
	if TYPE == "Cyl" then
759
		local MSH = IT("CylinderMesh",PART)
760
	elseif TYPE == "Ball" then
761
		local MSH = IT("SpecialMesh",PART)
762
		MSH.MeshType = "Sphere"
763
	elseif TYPE == "Wedge" then
764
		local MSH = IT("SpecialMesh",PART)
765
		MSH.MeshType = "Wedge"
766
	end
767
end
768
769
function SpawnTrail(FROM,TO,BIG)
770
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
771
	MakeForm(TRAIL,"Cyl")
772
	local DIST = (FROM - TO).Magnitude
773
	if BIG == true then
774
		TRAIL.Size = VT(0.5,DIST,0.5)
775
	else
776
		TRAIL.Size = VT(0.25,DIST,0.25)
777
	end
778
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
779
	coroutine.resume(coroutine.create(function()
780
		for i = 1, 5 do
781
			Swait()
782
			TRAIL.Transparency = TRAIL.Transparency + 0.1
783
		end
784
		TRAIL:remove()
785
	end))
786
end
787
--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})
788
function WACKYEFFECT(Table)
789
	local TYPE = (Table.EffectType or "Sphere")
790
	local SIZE = (Table.Size or VT(1,1,1))
791
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
792
	local TRANSPARENCY = (Table.Transparency or 0)
793
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
794
	local CFRAME = (Table.CFrame or Torso.CFrame)
795
	local MOVEDIRECTION = (Table.MoveToPos or nil)
796
	local ROTATION1 = (Table.RotationX or 0)
797
	local ROTATION2 = (Table.RotationY or 0)
798
	local ROTATION3 = (Table.RotationZ or 0)
799
	local MATERIAL = (Table.Material or "Neon")
800
	local COLOR = (Table.Color or C3(1,1,1))
801
	local TIME = (Table.Time or 45)
802
	local SOUNDID = (Table.SoundID or nil)
803
	local SOUNDPITCH = (Table.SoundPitch or nil)
804
	local SOUNDVOLUME = (Table.SoundVolume or nil)
805
	coroutine.resume(coroutine.create(function()
806
		local PLAYSSOUND = false
807
		local SOUND = nil
808
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Really red"), "Effect", VT(1,1,1), true)
809
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
810
			PLAYSSOUND = true
811
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
812
		end
813
		EFFECT.Color = COLOR
814
		local MSH = nil
815
		if TYPE == "Sphere" then
816
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
817
		elseif TYPE == "Block" then
818
			MSH = IT("BlockMesh",EFFECT)
819
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
820
		elseif TYPE == "Wave" then
821
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
822
		elseif TYPE == "Ring" then
823
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
824
		elseif TYPE == "Slash" then
825
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
826
		elseif TYPE == "Round Slash" then
827
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
828
		elseif TYPE == "Swirl" then
829
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
830
		elseif TYPE == "Skull" then
831
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
832
		elseif TYPE == "Crystal" then
833
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
834
		end
835
		if MSH ~= nil then
836
			local MOVESPEED = nil
837
			if MOVEDIRECTION ~= nil then
838
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
839
			end
840
			local GROWTH = SIZE - ENDSIZE
841
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
842
			if TYPE == "Block" then
843
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
844
			else
845
				EFFECT.CFrame = CFRAME
846
			end
847
			for LOOP = 1, TIME+1 do
848
				Swait()
849
				MSH.Scale = MSH.Scale - GROWTH/TIME
850
				if TYPE == "Wave" then
851
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
852
				end
853
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
854
				if TYPE == "Block" then
855
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
856
				else
857
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
858
				end
859
				if MOVEDIRECTION ~= nil then
860
					local ORI = EFFECT.Orientation
861
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
862
					EFFECT.Orientation = ORI
863
				end
864
			end
865
			if PLAYSSOUND == false then
866
				EFFECT:remove()
867
			else
868
				SOUND.Stopped:Connect(function()
869
					EFFECT:remove()
870
				end)
871
			end
872
		else
873
			if PLAYSSOUND == false then
874
				EFFECT:remove()
875
			else
876
				repeat Swait() until SOUND.Playing == false
877
				EFFECT:remove()
878
			end
879
		end
880
	end))
881
end
882
883
function MakeForm(PART,TYPE)
884
	if TYPE == "Cyl" then
885
		local MSH = IT("CylinderMesh",PART)
886
	elseif TYPE == "Ball" then
887
		local MSH = IT("SpecialMesh",PART)
888
		MSH.MeshType = "Sphere"
889
	elseif TYPE == "Wedge" then
890
		local MSH = IT("SpecialMesh",PART)
891
		MSH.MeshType = "Wedge"
892
	end
893
end
894
895
function SpawnTrail(FROM,TO,BIG)
896
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
897
	MakeForm(TRAIL,"Cyl")
898
	local DIST = (FROM - TO).Magnitude
899
	if BIG == true then
900
		TRAIL.Size = VT(0.5,DIST,0.5)
901
	else
902
		TRAIL.Size = VT(0.25,DIST,0.25)
903
	end
904
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
905
	coroutine.resume(coroutine.create(function()
906
		for i = 1, 5 do
907
			Swait()
908
			TRAIL.Transparency = TRAIL.Transparency + 0.1
909
		end
910
		TRAIL:remove()
911
	end))
912
end
913
914
function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
915
	local TORSO = Torso
916
	local HUM = Humanoid
917
	if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
918
		coroutine.wrap(function()
919
			VT = Vector3.new
920
			MRANDOM = math.random
921
			local A = TIME
922
			local B = INTENSITY
923
			local C = true
924
			local HUMANOID = Humanoid
925
			local TIMER = A or 35
926
			local SHAKE = B or 5
927
			local FADE = C or true
928
			if HUMANOID then
929
				local FADER = SHAKE / TIMER
930
				for i = 1, TIMER do
931
					wait()
932
					HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
933
				end
934
				HUMANOID.CameraOffset = VT(0, 0, 0)
935
			end
936
937
		end)()
938
	end
939
end
940
941
function chatfunc(text)
942
	local chat = coroutine.wrap(function()
943
	if Character:FindFirstChild("TalkingBillBoard")~= nil then
944
		Character:FindFirstChild("TalkingBillBoard"):destroy()
945
	end
946
	local Bill = Instance.new("BillboardGui",Character)
947
	Bill.Size = UDim2.new(0,100,0,40)
948
	Bill.StudsOffset = Vector3.new(0,3,0)
949
	Bill.Adornee = Character.Head
950
	Bill.Name = "TalkingBillBoard"
951
	local Hehe = Instance.new("TextLabel",Bill)
952
	Hehe.BackgroundTransparency = 1
953
	Hehe.BorderSizePixel = 0
954
	Hehe.Text = ""
955
	Hehe.Font = "Bodoni"
956
	Hehe.TextSize = 40
957
	Hehe.TextStrokeTransparency = 0
958
	Hehe.Size = UDim2.new(1,0,0.5,0)
959
	coroutine.resume(coroutine.create(function()
960
		while Hehe ~= nil do
961
			Swait()	
962
			Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))	
963
			Hehe.Rotation = math.random(-2.5,2.5)
964
			Hehe.TextColor3 = Color3.new(MRANDOM(55,255),0,0)
965
			Hehe.TextStrokeColor3 = Color3.new(0,0,0)
966
		end
967
	end))
968
	for i = 1,string.len(text),1 do
969
		Swait()
970
		Hehe.Text = string.sub(text,1,i)
971
	end
972
	Swait(90)--Re[math.random(1, 93)]
973
	for i = 0, 1, .025 do
974
		Swait()
975
		Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
976
		Hehe.TextStrokeTransparency = i
977
		Hehe.TextTransparency = i
978
	end
979
	Bill:Destroy()
980
	end)
981
chat()
982
end
983
984
Debris = game:GetService("Debris")
985
986
function CastProperRay(StartPos, EndPos, Distance, Ignore)
987
	local DIRECTION = CF(StartPos,EndPos).lookVector
988
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
989
end
990
991
function turnto(position)
992
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
993
end
994
995
--//=================================\\
996
--||	     RAGDOLL STUFF
997
--\\=================================//
998
999
function recurse(root,callback,i)
1000
	i= i or 0
1001
	for _,v in pairs(root:GetChildren()) do
1002
		i = i + 1
1003
		callback(i,v)
1004
		
1005
		if #v:GetChildren() > 0 then
1006
			i = recurse(v,callback,i)
1007
		end
1008
	end
1009
	
1010
	return i
1011
end
1012
1013
function ragdollJoint(character, part0, part1, attachmentName, className, properties)
1014
	attachmentName = attachmentName.."RigAttachment"
1015
	local constraint = Instance.new(className.."Constraint")
1016
	constraint.Attachment0 = part0:FindFirstChild(attachmentName)
1017
	constraint.Attachment1 = part1:FindFirstChild(attachmentName)
1018
	constraint.Name = "RagdollConstraint"..part1.Name
1019
	
1020
	for _,propertyData in next,properties or {} do
1021
		constraint[propertyData[1]] = propertyData[2]
1022
	end
1023
	
1024
	constraint.Parent = character
1025
end
1026
1027
function getAttachment0(character, attachmentName)
1028
	for _,child in next,character:GetChildren() do
1029
		local attachment = child:FindFirstChild(attachmentName)
1030
		if attachment then
1031
			return attachment
1032
		end
1033
	end
1034
end
1035
1036
function ArtificialHitbox(Part)
1037
	local HITBOX = CreatePart(3, Part, "Metal", 0, 1, "Really black", "Hitbox", Part.Size/2, false)
1038
	HITBOX.CanCollide = true
1039
	HITBOX.CFrame = Part.CFrame
1040
	weldBetween(Part,HITBOX)
1041
end
1042
1043
function R15Ragdoll(character,KeepArms)
1044
	character:BreakJoints()
1045
	coroutine.resume(coroutine.create(function()
1046
		recurse(character, function(_,v)
1047
			if v:IsA("Attachment") then
1048
				v.Axis = Vector3.new(0, 1, 0)
1049
				v.SecondaryAxis = Vector3.new(0, 0, 1)
1050
				v.Rotation = Vector3.new(0, 0, 0)
1051
			end
1052
		end)
1053
		for _,child in next,character:GetChildren() do
1054
			if child:IsA("Accoutrement") then
1055
				for _,part in next,child:GetChildren() do
1056
					if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
1057
						local attachment1 = part:FindFirstChildOfClass("Attachment")
1058
						local attachment0 = getAttachment0(character,attachment1.Name)
1059
						if attachment0 and attachment1 then
1060
							local constraint = Instance.new("HingeConstraint")
1061
							constraint.Attachment0 = attachment0
1062
							constraint.Attachment1 = attachment1
1063
							constraint.LimitsEnabled = true
1064
							constraint.UpperAngle = 0
1065
							constraint.LowerAngle = 0
1066
							constraint.Parent = character
1067
						end
1068
						ArtificialHitbox(part)
1069
					elseif part.Name == "HumanoidRootPart" then
1070
						part:remove()
1071
					end
1072
				end
1073
			end
1074
		end
1075
		
1076
		ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
1077
			{"LimitsEnabled",true};
1078
			{"UpperAngle",5};
1079
		})
1080
		if character:FindFirstChild("Head") then
1081
			ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "BallSocket", {
1082
				{"LimitsEnabled",true};
1083
				{"UpperAngle",15};
1084
			})
1085
		end
1086
		
1087
		local handProperties = {
1088
			{"LimitsEnabled", true};
1089
			{"UpperAngle",0};
1090
			{"LowerAngle",0};
1091
		}
1092
		ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
1093
		ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
1094
		
1095
		local shinProperties = {
1096
			{"LimitsEnabled", true};
1097
			{"UpperAngle", 0};
1098
			{"LowerAngle", -75};
1099
		}
1100
		ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
1101
		ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
1102
		
1103
		local footProperties = {
1104
			{"LimitsEnabled", true};
1105
			{"UpperAngle", 15};
1106
			{"LowerAngle", -45};
1107
		}
1108
		ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
1109
		ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
1110
		if KeepArms == true then
1111
			ragdollJoint(character,character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
1112
			ragdollJoint(character,character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
1113
			ragdollJoint(character,character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
1114
			ragdollJoint(character,character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
1115
		end
1116
		ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
1117
		ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
1118
		Debris:AddItem(character,5)
1119
	end))
1120
end
1121
1122
function Ragdoll(Character2,CharTorso,KeepArms)
1123
	coroutine.resume(coroutine.create(function()
1124
		Character2:BreakJoints()
1125
		local hum = Character2:findFirstChild("Humanoid")
1126
		hum:remove()
1127
		local function Scan(ch)
1128
			local e
1129
			for e = 1,#ch do
1130
				Scan(ch[e]:GetChildren())
1131
				if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
1132
					ch[e]:remove()
1133
				end
1134
			end
1135
		end
1136
		local NEWHUM = IT("Humanoid")
1137
		NEWHUM.Name = "Corpse"
1138
		NEWHUM.Health = 0
1139
		NEWHUM.MaxHealth = 0
1140
		NEWHUM.PlatformStand = true
1141
		NEWHUM.Parent = Character2
1142
		NEWHUM.DisplayDistanceType = "None"
1143
	
1144
		local ch = Character2:GetChildren()
1145
		local i
1146
		for i = 1,#ch do
1147
			if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
1148
				ch[i]:remove()
1149
			end
1150
		end
1151
	
1152
		local Torso2 = Character2.Torso
1153
		local movevector = Vector3.new()
1154
	
1155
		if Torso2 then
1156
			movevector = CFrame.new(CharTorso.Position,Torso2.Position).lookVector
1157
			local Head = Character2:FindFirstChild("Head")
1158
			if Head then
1159
				local Neck = Instance.new("Weld")
1160
				Neck.Name = "Neck"
1161
				Neck.Part0 = Torso2
1162
				Neck.Part1 = Head
1163
				Neck.C0 = CFrame.new(0, 1.5, 0)
1164
				Neck.C1 = CFrame.new()
1165
				Neck.Parent = Torso2
1166
	
1167
			end
1168
			local Limb = Character2:FindFirstChild("Right Arm")
1169
			if Limb and KeepArms == true then
1170
	
1171
				Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
1172
				local Joint = Instance.new("Glue")
1173
				Joint.Name = "RightShoulder"
1174
				Joint.Part0 = Torso2
1175
				Joint.Part1 = Limb
1176
				Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1177
				Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1178
				Joint.Parent = Torso2
1179
	
1180
				local B = Instance.new("Part")
1181
				B.TopSurface = 0
1182
				B.BottomSurface = 0
1183
				B.formFactor = "Symmetric"
1184
				B.Size = Vector3.new(1, 1, 1)
1185
				B.Transparency = 1
1186
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1187
				B.Parent = Character2
1188
				local W = Instance.new("Weld")
1189
				W.Part0 = Limb
1190
				W.Part1 = B
1191
				W.C0 = CFrame.new(0, -0.5, 0)
1192
				W.Parent = Limb
1193
	
1194
			end
1195
			local Limb = Character2:FindFirstChild("Left Arm")
1196
			if Limb and KeepArms == true then
1197
	
1198
				Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
1199
				local Joint = Instance.new("Glue")
1200
				Joint.Name = "LeftShoulder"
1201
				Joint.Part0 = Torso2
1202
				Joint.Part1 = Limb
1203
				Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1204
				Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1205
				Joint.Parent = Torso2
1206
	
1207
				local B = Instance.new("Part")
1208
				B.TopSurface = 0
1209
				B.BottomSurface = 0
1210
				B.formFactor = "Symmetric"
1211
				B.Size = Vector3.new(1, 1, 1)
1212
				B.Transparency = 1
1213
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1214
				B.Parent = Character2
1215
				local W = Instance.new("Weld")
1216
				W.Part0 = Limb
1217
				W.Part1 = B
1218
				W.C0 = CFrame.new(0, -0.5, 0)
1219
				W.Parent = Limb
1220
	
1221
			end
1222
			local Limb = Character2:FindFirstChild("Right Leg")
1223
			if Limb then
1224
	
1225
				Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
1226
				local Joint = Instance.new("Glue")
1227
				Joint.Name = "RightHip"
1228
				Joint.Part0 = Torso2
1229
				Joint.Part1 = Limb
1230
				Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1231
				Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1232
				Joint.Parent = Torso2
1233
	
1234
				local B = Instance.new("Part")
1235
				B.TopSurface = 0
1236
				B.BottomSurface = 0
1237
				B.formFactor = "Symmetric"
1238
				B.Size = Vector3.new(1, 1, 1)
1239
				B.Transparency = 1
1240
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1241
				B.Parent = Character2
1242
				local W = Instance.new("Weld")
1243
				W.Part0 = Limb
1244
				W.Part1 = B
1245
				W.C0 = CFrame.new(0, -0.5, 0)
1246
				W.Parent = Limb
1247
	
1248
			end
1249
			local Limb = Character2:FindFirstChild("Left Leg")
1250
			if Limb then
1251
	
1252
				Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
1253
				local Joint = Instance.new("Glue")
1254
				Joint.Name = "LeftHip"
1255
				Joint.Part0 = Torso2
1256
				Joint.Part1 = Limb
1257
				Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1258
				Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
1259
				Joint.Parent = Torso2
1260
	
1261
				local B = Instance.new("Part")
1262
				B.TopSurface = 0
1263
				B.BottomSurface = 0
1264
				B.formFactor = "Symmetric"
1265
				B.Size = Vector3.new(1, 1, 1)
1266
				B.Transparency = 1
1267
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1268
				B.Parent = Character2
1269
				local W = Instance.new("Weld")
1270
				W.Part0 = Limb
1271
				W.Part1 = B
1272
				W.C0 = CFrame.new(0, -0.5, 0)
1273
				W.Parent = Limb
1274
	
1275
			end
1276
			--[
1277
			local Bar = Instance.new("Part")
1278
			Bar.TopSurface = 0
1279
			Bar.BottomSurface = 0
1280
			Bar.formFactor = "Symmetric"
1281
			Bar.Size = Vector3.new(1, 1, 1)
1282
			Bar.Transparency = 1
1283
			Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
1284
			Bar.Parent = Character2
1285
			local Weld = Instance.new("Weld")
1286
			Weld.Part0 = Torso2
1287
			Weld.Part1 = Bar
1288
			Weld.C0 = CFrame.new(0, 0.5, 0)
1289
			Weld.Parent = Torso2
1290
			--]]
1291
		end
1292
		Character2.Parent = workspace
1293
		Debris:AddItem(Character2,5)
1294
	
1295
		return Character2,Torso2
1296
	end))
1297
end
1298
1299
--//=================================\\
1300
--||	     WEAPON CREATION
1301
--\\=================================//
1302
1303
local Particle = IT("ParticleEmitter",nil)
1304
Particle.Enabled = false
1305
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
1306
Particle.LightEmission = 0.5
1307
Particle.Rate = 150
1308
Particle.ZOffset = 0.2
1309
Particle.Rotation = NumberRange.new(-180, 180)
1310
Particle.RotSpeed = NumberRange.new(-180, 180)
1311
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
1312
Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
1313
1314
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
1315
function ParticleEmitter(Table)
1316
	local PRTCL = Particle:Clone()
1317
	local Speed = Table.Speed or 5
1318
	local Drag = Table.Drag or 0
1319
	local Size1 = Table.Size1 or 1
1320
	local Size2 = Table.Size2 or 5
1321
	local Lifetime1 = Table.Lifetime1 or 1
1322
	local Lifetime2 = Table.Lifetime2 or 1.5
1323
	local Parent = Table.Parent or Torso
1324
	local Emit = Table.Emit or 100
1325
	local Offset = Table.Offset or 360
1326
	local Acel = Table.Acel or VT(0,0,0)
1327
	local Enabled = Table.Enabled or false
1328
	PRTCL.Parent = Parent
1329
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1330
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1331
	PRTCL.Speed = NumberRange.new(Speed)
1332
	PRTCL.VelocitySpread = Offset
1333
	PRTCL.Drag = Drag
1334
	PRTCL.Acceleration = Acel
1335
	if Enabled == false then
1336
		PRTCL:Emit(Emit)
1337
		Debris:AddItem(PRTCL,Lifetime2)
1338
	else
1339
		PRTCL.Enabled = true
1340
	end
1341
	return PRTCL
1342
end
1343
1344
local Handle = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1345
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1346
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1347
MakeForm(Part,"Wedge")
1348
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1349
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1350
MakeForm(Part,"Wedge")
1351
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1352
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1353
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1354
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1355
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1356
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1357
MakeForm(Part,"Cyl")
1358
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1359
for i = 1, 8 do
1360
	local Piece = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1361
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1362
end
1363
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1364
MakeForm(Part,"Cyl")
1365
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1366
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1367
MakeForm(Part,"Ball")
1368
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1369
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1370
MakeForm(Part,"Wedge")
1371
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1372
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1373
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1374
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1375
MakeForm(Part,"Cyl")
1376
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1377
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1378
MakeForm(Part,"Cyl")
1379
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1380
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1381
MakeForm(Part,"Cyl")
1382
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1383
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1384
MakeForm(Part,"Wedge")
1385
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1386
local LASTPART = Handle
1387
for i = 1, 10 do
1388
	if LASTPART == Handle then
1389
		local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1390
		LASTPART = Part
1391
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1392
	else
1393
		local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1394
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1395
		LASTPART = Part
1396
	end
1397
end
1398
1399
local Barrel = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,4,0.15),false)
1400
MakeForm(Barrel,"Cyl")
1401
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.85) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1402
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,2,0.25),false)
1403
MakeForm(Part,"Cyl")
1404
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.2, 0), CF(0, 0, 0))
1405
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1406
MakeForm(Part,"Wedge")
1407
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1408
local Hole = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1409
MakeForm(Hole,"Cyl")
1410
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 2, 0), CF(0, 0, 0))
1411
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1412
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1413
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1414
local Part = CreatePart(3, Gun, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1415
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1416
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1417
coroutine.resume(coroutine.create(function()
1418
	while wait() do
1419
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(sick.PlaybackLoudness/60 + 0.05))
1420
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-sick.PlaybackLoudness/60 - 0.05))
1421
	end
1422
end))
1423
1424
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1425
--ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1426
1427
for _, c in pairs(Gun:GetDescendants()) do
1428
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1429
		c.Material = "Glass"
1430
		c.Color = C3(0,0,0)
1431
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1432
		c.Color = C3(1,0,0)
1433
		c.Material = "Neon"
1434
	end
1435
end
1436
1437
Weapon.Parent = Character
1438
for _, c in pairs(Weapon:GetChildren()) do
1439
	if c.ClassName == "Part" then
1440
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1441
	end
1442
end
1443
1444
Weapon.Parent = Character
1445
Gun.Parent = nil
1446
1447
for _, c in pairs(Gun:GetChildren()) do
1448
	if c.ClassName == "Part" then
1449
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1450
	end
1451
end
1452
1453
for _, c in pairs(Weapon:GetChildren()) do
1454
	if c.ClassName == "Part" then
1455
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1456
	end
1457
end
1458
1459
local SKILLTEXTCOLOR = C3(1,0,0)
1460
local SKILLFONT = "Antique"
1461
local SKILLTEXTSIZE = 7
1462
1463
Humanoid.Died:connect(function()
1464
	ATTACK = true
1465
end)
1466
1467
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1468
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1469
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1470
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1471
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1472
1473
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banish", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
1474
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[V] Kill", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
1475
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[X] Sleep", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
1476
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[C] Ultimate", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
1477
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[T] Taunt", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
1478
1479
function printbye(Name)
1480
	local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
1481
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
1482
end
1483
	if INTRO == false and INSTANT == false then
1484
		INTRO = true
1485
		coroutine.resume(coroutine.create(function()
1486
			sick:Play()
1487
			Intro()
1488
		end))
1489
	end
1490
1491
workspace.ChildAdded:connect(function(instance)
1492
    for BANISH = 1, #TOBANISH do
1493
		if TOBANISH[BANISH] ~= nil then
1494
			if instance.Name == TOBANISH[BANISH] then
1495
				coroutine.resume(coroutine.create(function()
1496
					printbye(instance.Name)
1497
					instance:ClearAllChildren()
1498
					Debris:AddItem(instance,0.0005)
1499
				end))
1500
			end
1501
		end
1502
	end
1503
end)
1504
1505
--//=================================\\
1506
--||			DAMAGING
1507
--\\=================================//
1508
1509
function ApplyDamage(Humanoid,Damage,OneShot)
1510
	Damage = Damage * DAMAGEMULTIPLIER
1511
	local DEAD = false
1512
	if Humanoid.Health < 2000 and OneShot == false then
1513
		if Humanoid.Health - Damage > 0 then
1514
			Humanoid.Health = Humanoid.Health - Damage
1515
		else
1516
			Humanoid.Parent:BreakJoints()
1517
			DEAD = true
1518
		end
1519
	else
1520
		DEAD = true
1521
		Humanoid.Parent:BreakJoints()
1522
	end
1523
	if DEAD == true then
1524
		local PARTS = {}
1525
		for index, CHILD in pairs(Humanoid.Parent:GetChildren()) do
1526
			if CHILD:IsA("BasePart") then
1527
				table.insert(PARTS,CHILD)
1528
			end
1529
		end
1530
		coroutine.resume(coroutine.create(function()
1531
			wait(2)
1532
			repeat
1533
				Swait()
1534
				local PIECE = nil
1535
				if MRANDOM(1,5) == 1 then
1536
					for E = 1, #PARTS do
1537
						if MRANDOM(1,5) == 1 then
1538
							PIECE = PARTS[E]
1539
							table.remove(PARTS,E)
1540
							break
1541
						end
1542
					end
1543
				end
1544
				if PIECE ~= nil then
1545
					if PIECE.Name == "Head" then
1546
						WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Box", Size = VT(PIECE.Size.Z,PIECE.Size.Y,PIECE.Size.Z), Size2 = (VT(PIECE.Size.Z,PIECE.Size.Y,PIECE.Size.Z))*MRANDOM(7,14)/10, Transparency = PIECE.Transparency, Transparency2 = 1, CFrame = PIECE.CFrame, MoveToPos = PIECE.Position+VT(0,MRANDOM(5,8)/1.5,0), RotationX = MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(0.4,0,0), SoundID = 3264923, SoundPitch = MRANDOM(12,16)/10, SoundVolume = 2})
1547
					else
1548
						WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Box", Size = PIECE.Size, Size2 = PIECE.Size*MRANDOM(7,14)/10, Transparency = PIECE.Transparency, Transparency2 = 1, CFrame = PIECE.CFrame, MoveToPos = PIECE.Position+VT(0,MRANDOM(5,8)/1.5,0), MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(0.4,0,0), SoundID = 3264923, SoundPitch = MRANDOM(12,16)/10, SoundVolume = 2})
1549
					end
1550
					PIECE:remove()
1551
				end
1552
			until #PARTS == 0
1553
		end))
1554
	end
1555
end
1556
1557
1558
function ApplyDamage3(Humanoid,Damage,TorsoPart)
1559
	local defence = Instance.new("BoolValue",Humanoid.Parent)
1560
	defence.Name = ("HitBy"..Player.Name)
1561
	game:GetService("Debris"):AddItem(defence, 0.001)
1562
	Damage = Damage * DAMAGEMULTIPLIER
1563
	if Humanoid.Health ~= 0 then
1564
		local CritChance = MRANDOM(1,100)
1565
		if Damage > Humanoid.Health then
1566
			Damage = math.ceil(Humanoid.Health)
1567
			if Damage == 0 then
1568
				Damage = 0.1
1569
			end
1570
		end
1571
		Humanoid.Health = Humanoid.Health - Damage
1572
	end
1573
end
1574
1575
function ApplyDamage3(Humanoid,Damage,TorsoPart)
1576
	local defence = Instance.new("BoolValue",Humanoid.Parent)
1577
	defence.Name = ("HitBy"..Player.Name)
1578
	game:GetService("Debris"):AddItem(defence, 0.001)
1579
	Damage = Damage * DAMAGEMULTIPLIER
1580
	if Humanoid.Health ~= 0 then
1581
		local CritChance = MRANDOM(1,100)
1582
		if Damage > Humanoid.Health then
1583
			Damage = math.ceil(Humanoid.Health)
1584
			if Damage == 0 then
1585
				Damage = 0.1
1586
			end
1587
		end
1588
		Humanoid.Health = Humanoid.Health - Damage
1589
	end
1590
end
1591
1592
function ApplyAoE3(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
1593
	local CHILDREN = workspace:GetDescendants()
1594
	for index, CHILD in pairs(CHILDREN) do
1595
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1596
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1597
			if HUM then
1598
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1599
				if TORSO then
1600
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1601
						if INSTAKILL == true then
1602
							CHILD:BreakJoints()
1603
						else
1604
							local DMG = MRANDOM(MINDMG,MAXDMG)
1605
							ApplyDamage(HUM,DMG,TORSO)
1606
						end
1607
						if FLING > 0 then
1608
							for _, c in pairs(CHILD:GetChildren()) do
1609
								if c:IsA("BasePart") then
1610
									local bv = Instance.new("BodyVelocity") 
1611
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1612
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1613
									bv.Parent = c
1614
									Debris:AddItem(bv,0.05)
1615
								end
1616
							end
1617
						end
1618
					end
1619
				end
1620
			end
1621
		end
1622
	end
1623
end
1624
1625
function CameraEnshaking(Length, Intensity)
1626
	coroutine.resume(coroutine.create(function()
1627
		local intensity = 1 * Intensity
1628
		local rotM = 0.01 * Intensity
1629
		for i = 0, Length, 0.1 do
1630
			Swait()
1631
			intensity = intensity - 0.05 * Intensity / Length
1632
			rotM = rotM - 5.0E-4 * Intensity / Length
1633
			Humanoid.CameraOffset = Vector3.new(RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)))
1634
			Cam.CFrame = Cam.CFrame * CF(RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity))) * EULER(RAD(MRANDOM(-intensity, intensity)) * rotM, RAD(MRANDOM(-intensity, intensity)) * rotM, RAD(MRANDOM(-intensity, intensity)) * rotM)
1635
		end
1636
		Humanoid.CameraOffset = Vector3.new(0, 0, 0)
1637
	end))
1638
end
1639
1640
function KillChildren(v)
1641
	v:BreakJoints()
1642
	for _, c in pairs(v:GetChildren()) do
1643
		if c:IsA("BasePart") then
1644
			if c.Transparency < 1 then
1645
				if c:FindFirstChildOfClass("Decal") then
1646
					c:FindFirstChildOfClass("Decal"):remove()
1647
				end
1648
				particles(c)
1649
				c.PE.Enabled = true
1650
				c.Parent = Effects
1651
				c.CanCollide = false
1652
				c.Material = "Neon"
1653
				c.Color = C3(1,0,0)
1654
				c.Transparency = 1
1655
				local grav = Instance.new("BodyPosition",c)
1656
				grav.P = 20000
1657
				grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1658
				grav.position = c.Position + VT(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5))
1659
				grav.Name = "GravityForce"
1660
				coroutine.resume(coroutine.create(function()
1661
					for i = 1, 20 do
1662
						Swait()
1663
						c.Transparency = c.Transparency + 1/20
1664
					end
1665
					c.PE.Enabled = false
1666
					Debris:AddItem(c,2)
1667
				end))
1668
			end
1669
		end
1670
	end
1671
end
1672
1673
function ApplyAoE(POSITION,RANGE)
1674
	local CHILDREN = workspace:GetDescendants()
1675
	for index, CHILD in pairs(CHILDREN) do
1676
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1677
			local LISTED = false
1678
			for LIST = 1, #WHITELIST do
1679
				if WHITELIST[LIST] ~= nil then
1680
					if CHILD.Name == WHITELIST[LIST] then
1681
						LISTED = true
1682
					end
1683
				end
1684
			end
1685
			if LISTED == false then
1686
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1687
				if HUM then
1688
					local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1689
					if TORSO then
1690
						if (TORSO.Position - POSITION).Magnitude <= RANGE+TORSO.Size.Magnitude then
1691
							KillChildren(CHILD)
1692
						end
1693
					end
1694
				end
1695
			end
1696
		end
1697
	end
1698
end
1699
1700
function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
1701
	coroutine.resume(coroutine.create(function()
1702
		local METEOR = IT("Model",Effects)
1703
		METEOR.Name = "Meteorite"
1704
		local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
1705
		METEOR.PrimaryPart = CENTER
1706
		local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
1707
		PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1708
		for i = 1, 15 do
1709
			local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Really red", "Fire", VT(5.1,1,5.1)*SIZE)
1710
			FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1711
		end
1712
		if ISDEBREE ~= true then
1713
			METEOR:SetPrimaryPartCFrame(CF(POS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15)))*CF(0,500,0) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
1714
		else
1715
			METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
1716
		end
1717
		local IMPACT = false
1718
		CreateSound(463593339, CENTER, 10, 0.6)
1719
		if SIZE >= 3.5 then
1720
			for i = 1, MRANDOM(3,7) do
1721
				SpawnMeteor(CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,SIZE*12).p,SIZE/MRANDOM(4,5),true,CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SIZE*15).p)
1722
			end
1723
		end
1724
		for i = 1, 200 do
1725
			Swait()
1726
			local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
1727
			if HITFLOOR == nil then
1728
				local ORI = CENTER.Orientation
1729
				METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
1730
			else
1731
				if HITFLOOR.Anchored == true then
1732
					CreateDebreeRing(HITFLOOR,HITPOS,30*SIZE,VT(6,6,6)*SIZE,5)
1733
					CreateFlyingDebree(HITFLOOR,CF(HITPOS),8,VT(4,4,4)*SIZE,5,175)
1734
				end
1735
				IMPACT = true
1736
				break
1737
			end
1738
		end
1739
		if IMPACT == true then
1740
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*4*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
1741
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*3*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 201858144, SoundPitch = 1, SoundVolume = 5})
1742
			WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
1743
			ApplyAoE(CENTER.Position,30*SIZE)
1744
		end
1745
		METEOR:remove()
1746
	end))
1747
end
1748
1749
function ApplyAoE4(POSITION,RANGE,BRUTAL)
1750
	local CHILDREN = workspace:GetDescendants()
1751
	for index, CHILD in pairs(CHILDREN) do
1752
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1753
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1754
			if HUM then
1755
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1756
				if TORSO then
1757
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1758
						if BRUTAL == true then
1759
							Kill(CHILD)
1760
						else
1761
							CHILD:BreakJoints()
1762
						end
1763
					end
1764
				end
1765
			end
1766
		end
1767
	end
1768
end
1769
1770
function Kill(Char)
1771
	local NewCharacter = IT("Model",Effects)
1772
	NewCharacter.Name = "Ow im ded ;-;"
1773
	for _, c in pairs(Char:GetDescendants()) do
1774
		if c:IsA("BasePart") and c.Transparency == 0 then
1775
			c:BreakJoints()
1776
			c.Material = "Glass"
1777
			c.Color = C3(1,0,0)
1778
			c.CanCollide = true
1779
			c.Transparency = 0.3
1780
			if c:FindFirstChildOfClass("SpecialMesh") then
1781
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1782
			end
1783
			if c.Name == "Head" then
1784
				c:ClearAllChildren()
1785
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
1786
			end
1787
			if c.ClassName == "MeshPart" then
1788
				c.TextureID = ""
1789
			end
1790
			if c:FindFirstChildOfClass("BodyPosition") then
1791
				c:FindFirstChildOfClass("BodyPosition"):remove()
1792
			end
1793
			if c:FindFirstChildOfClass("ParticleEmitter") then
1794
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1795
			end
1796
			c.Parent = NewCharacter
1797
			c.Name = "DeadPart"
1798
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
1799
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
1800
		end
1801
	end
1802
	Char:remove()
1803
	Debris:AddItem(NewCharacter,5)
1804
end
1805
1806
function ApplyAoE(POSITION,RANGE,BRUTAL)
1807
	local CHILDREN = workspace:GetDescendants()
1808
	for index, CHILD in pairs(CHILDREN) do
1809
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1810
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1811
			if HUM then
1812
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1813
				if TORSO then
1814
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1815
						if BRUTAL == true then
1816
							Kill(CHILD)
1817
						else
1818
							CHILD:BreakJoints()
1819
						end
1820
					end
1821
				end
1822
			end
1823
		end
1824
	end
1825
end
1826
1827
function ApplyAoE(POSITION,RANGE,BRUTAL)
1828
	local CHILDREN = workspace:GetDescendants()
1829
	for index, CHILD in pairs(CHILDREN) do
1830
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1831
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1832
			if HUM then
1833
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1834
				if TORSO then
1835
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1836
						if BRUTAL == true then
1837
							Kill(CHILD)
1838
						else
1839
							CHILD:BreakJoints()
1840
						end
1841
					end
1842
				end
1843
			end
1844
		end
1845
	end
1846
end
1847
1848
function Banish(Foe)
1849
	if Foe then
1850
		coroutine.resume(coroutine.create(function()
1851
			--if game.Players:FindFirstChild(Foe.Name) then
1852
				table.insert(TOBANISH,Foe.Name)
1853
				printbye(Foe.Name)
1854
			--end
1855
			Foe.Archivable = true
1856
			local CLONE = Foe:Clone()
1857
			Foe:Destroy()
1858
			CLONE.Parent = Effects
1859
			CLONE:BreakJoints()
1860
			local MATERIALS = {"Glass","Neon"}
1861
			for _, c in pairs(CLONE:GetDescendants()) do
1862
				if c:IsA("BasePart") then
1863
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1864
 						CreateSound(138271815, c, 10, 1, false)
1865
					end
1866
					c.Anchored = true
1867
					c.Transparency = c.Transparency + 0.2
1868
					c.Material = MATERIALS[MRANDOM(1,2)]
1869
					c.Color = C3(1,0,0)
1870
					if c.ClassName == "MeshPart" then
1871
						c.TextureID = ""
1872
					end
1873
					if c:FindFirstChildOfClass("SpecialMesh") then
1874
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1875
					end
1876
					if c:FindFirstChildOfClass("Decal") then
1877
						c:FindFirstChildOfClass("Decal"):remove()
1878
					end
1879
					c.Name = "Banished"
1880
					c.CanCollide = false
1881
				else
1882
					c:remove()
1883
				end
1884
			end
1885
			local A = false
1886
			for i = 1, 35 do
1887
				if A == false then
1888
					A = true
1889
				elseif A == true then
1890
					A = false
1891
				end
1892
				for _, c in pairs(CLONE:GetDescendants()) do
1893
					if c:IsA("BasePart") then
1894
						c.Anchored = true
1895
						c.Material = MATERIALS[MRANDOM(1,2)]
1896
						c.Transparency = c.Transparency + 0.8/35
1897
						if A == false then
1898
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1899
						elseif A == true then
1900
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1901
						end
1902
					end
1903
				end
1904
				Swait()
1905
			end
1906
			CLONE:remove()
1907
		end))
1908
	end
1909
end
1910
1911
1912
function ApplyAoE(POSITION,RANGE,ISBANISH)
1913
	local CHILDREN = workspace:GetDescendants()
1914
	for index, CHILD in pairs(CHILDREN) do
1915
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1916
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1917
			if HUM then
1918
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1919
				if TORSO then
1920
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1921
						if ISBANISH == true then
1922
							Banish(CHILD)
1923
						else
1924
							if ISBANISH == "Gravity" then
1925
								HUM.PlatformStand = true
1926
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1927
									local grav = Instance.new("BodyPosition",TORSO)
1928
									grav.D = 15
1929
									grav.P = 20000
1930
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1931
									grav.position = TORSO.Position
1932
									grav.Name = "V3BanishForce"..Player.Name
1933
								else
1934
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1935
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1936
								end
1937
							else
1938
								HUM.PlatformStand = false
1939
							end
1940
						end
1941
					elseif ISBANISH == "Gravity" then
1942
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1943
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1944
							HUM.PlatformStand = false
1945
						end
1946
					end
1947
				end
1948
			end
1949
		end
1950
	end
1951
end
1952
1953
function SpawnSmite(POS)
1954
	local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
1955
	local EMITPOS = HITPOS
1956
	if HITFLOOR ~= nil then
1957
		if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
1958
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
1959
			EMITPOS = HITPOS
1960
		elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
1961
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
1962
			EMITPOS = HITPOS
1963
		end
1964
	end
1965
	if HITFLOOR ~= nil then
1966
		ApplyAoE(EMITPOS,10)
1967
		WACKYEFFECT({EffectType = "Sphere", Size = VT(0,100000,0), Size2 = VT(10,100000,10), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
1968
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*2, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1969
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*1.5, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1970
		for i = 1, 5 do
1971
			local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
1972
			WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0,0.2), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS,TOPOS.p) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = TOPOS.p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
1973
		end
1974
	end
1975
end
1976
1977
--//=================================\\
1978
--||	ATTACK FUNCTIONS AND STUFF
1979
--\\=================================//
1980
1981
function eh()
1982
	ATTACK = true
1983
	Rooted = false
1984
	Speed = 20
1985
		Swait()
1986
		local CHILDREN = workspace:GetDescendants()
1987
		for index, CHILD in pairs(CHILDREN) do
1988
			if CHILD.ClassName == "Model" and CHILD ~= Character then
1989
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1990
				if HUM then
1991
					local TORSO = CHILD:FindFirstChild("Head")
1992
					if TORSO then
1993
						if (TORSO.Position - Head.Position).Magnitude <= 25 then
1994
							WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(5,5,5), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1995
							TORSO:remove()
1996
							if CHILD:FindFirstChild("Torso") then
1997
								Ragdoll(CHILD,Torso,true)
1998
							elseif CHILD:FindFirstChild("UpperTorso") then
1999
								R15Ragdoll(CHILD,true)
2000
							end
2001
						end
2002
					end
2003
				end
2004
			end
2005
		end
2006
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2007
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 1})
2008
	for i=0, 0.3, 0.1 / Animation_Speed do
2009
		Swait()
2010
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)	
2011
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2012
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.3) * ANGLES(RAD(180), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
2013
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
2014
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2015
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2016
end
2017
	Speed = 20
2018
	ATTACK = false
2019
	Rooted = false
2020
end
2021
2022
function Taunt()
2023
	ATTACK = true
2024
	Rooted = true
2025
	        CreateSound("1238240145", Torso, 6, 0.9)
2026
		for i=0, 0.6, 0.1 / Animation_Speed do
2027
			Swait()
2028
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2029
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2030
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2031
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2032
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2033
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2034
		end
2035
		for i=0, 0.6, 0.1 / Animation_Speed do
2036
			Swait()
2037
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2038
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2039
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2040
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(15), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2041
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2042
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2043
		end
2044
		for i=0, 0.6, 0.1 / Animation_Speed do
2045
			Swait()
2046
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2047
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2048
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2049
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2050
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2051
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2052
		end
2053
		for i=0, 0.6, 0.1 / Animation_Speed do
2054
			Swait()
2055
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2056
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2057
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2058
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(15), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2059
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2060
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2061
		end
2062
		for i=0, 0.6, 0.1 / Animation_Speed do
2063
			Swait()
2064
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2065
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2066
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2067
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2068
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2069
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2070
		end
2071
		for i=0, 0.6, 0.1 / Animation_Speed do
2072
			Swait()
2073
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2074
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2075
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2076
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(15), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2077
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2078
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2079
		end
2080
	ATTACK = false
2081
	Rooted = false
2082
end
2083
2084
function TakeOnMe()
2085
	Speed = 16
2086
	local MEME = CreateSound(1171341451, Effects, 2, 1, false)
2087
	ATTACK = true
2088
	Rooted = false
2089
	local DANCE = true
2090
	local KEY = Mouse.KeyDown:connect(function(NEWKEY)
2091
		if NEWKEY == "p" then
2092
			DANCE = false
2093
		end
2094
	end)
2095
	PLAYSONG = false
2096
	while true do
2097
		for i = 1, 15 do
2098
			Swait()
2099
			MEME.Parent = Effects
2100
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2101
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2102
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2103
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2104
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2105
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2106
		end
2107
		if DANCE == false then
2108
			break
2109
		end
2110
		for i = 1, 15 do
2111
			Swait()
2112
			MEME.Parent = Effects
2113
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2114
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
2115
			if MRANDOM(1,7) == 1 then
2116
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2117
			end			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(150), RAD(65), RAD(85)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2118
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(65), RAD(85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2119
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2120
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2121
		end
2122
	end
2123
	PLAYSONG = true
2124
	KEY:Disconnect()
2125
	MEME:remove()
2126
	Speed = 25
2127
	ATTACK = false
2128
	Rooted = false
2129
end
2130
2131
function Intro()
2132
	ATTACK = true
2133
	Rooted = true
2134
	repeat 
2135
		Swait() 
2136
		WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.3,0) * ANGLES(RAD(MRANDOM(-90,90)), RAD(MRANDOM(-90,90)), RAD(MRANDOM(-90,90))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 0})
2137
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2138
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(-3.5 * COS(SINE / 12)), RAD(-45), RAD(12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2139
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.8 / Animation_Speed)
2140
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, 0.5) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2141
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.1 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(2.5 * COS(SINE / 12))), 0.8 / Animation_Speed)
2142
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-8), RAD(5), RAD(15-2.5 * COS(SINE / 12))), 0.8 / Animation_Speed)
2143
	until sick.TimePosition > 114
2144
	repeat 
2145
		Swait()
2146
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2147
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2148
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2149
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2150
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2151
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2152
	until sick.TimePosition > 116
2153
	repeat 
2154
		Swait() 
2155
		WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0.2,0.2), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.3,0) * ANGLES(RAD(MRANDOM(-90,90)), RAD(MRANDOM(-90,90)), RAD(MRANDOM(-90,90))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 0})
2156
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2157
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2158
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(45), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2159
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-90), RAD(45), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2160
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2161
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2162
	until sick.TimePosition >119
2163
	Gun.Parent = Character
2164
	tecks2.TextTransparency = 0
2165
	for i = 1, 100 do
2166
		Swait()
2167
		for _, c in pairs(Character:GetChildren()) do
2168
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
2169
				c.Transparency = 0
2170
			end
2171
		end
2172
		for _, c in pairs(Weapon:GetChildren()) do
2173
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
2174
				c.Transparency = 0
2175
			end
2176
		end
2177
for _, c in pairs(Weapon:GetDescendants()) do
2178
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
2179
		c.Material = "Glass"
2180
		c.Color = C3(0,0,0)
2181
	elseif c.ClassName == "Part" and c.Name == "Eye" then
2182
		c.Color = C3(1,0,0)
2183
		c.Material = "Neon"
2184
	end
2185
end
2186
	end
2187
	TRANSFORMED = true
2188
	ATTACK = false
2189
	Rooted = false
2190
end
2191
2192
function Shot()
2193
	ATTACK = true
2194
	Rooted = false
2195
	for i=0, 0.2, 0.05 / Animation_Speed do
2196
		Swait()
2197
		turnto(Mouse.Hit.p)
2198
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2199
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2200
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2201
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2202
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2203
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2204
	end
2205
	repeat
2206
		for i=0, 0.2, 0.05 / Animation_Speed do
2207
			Swait()
2208
			turnto(Mouse.Hit.p)
2209
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2210
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2211
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2212
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2213
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2214
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2215
		end
2216
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
2217
		SpawnTrail(Hole.Position,POS)
2218
		if HIT ~= nil then
2219
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
2220
				Banish(HIT.Parent)
2221
			end
2222
		end
2223
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2224
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2225
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2226
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2227
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
2228
		for i=0, 0.2, 0.05 / Animation_Speed do
2229
			Swait()
2230
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2231
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
2232
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2233
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2234
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2235
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2236
		end
2237
	until KEYHOLD == false
2238
	ATTACK = false
2239
	Rooted = false
2240
end
2241
2242
function Shot2()
2243
	ATTACK = true
2244
	Rooted = false
2245
	for i=0, 0.2, 0.05 / Animation_Speed do
2246
		Swait()
2247
		turnto(Mouse.Hit.p)
2248
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2249
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2250
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2251
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2252
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2253
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2254
	end
2255
	repeat
2256
		for i=0, 0.2, 0.05 / Animation_Speed do
2257
			Swait()
2258
			turnto(Mouse.Hit.p)
2259
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2260
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2261
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2262
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2263
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2264
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2265
		end
2266
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
2267
		SpawnTrail(Hole.Position,POS)
2268
		if HIT ~= nil then
2269
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
2270
				Kill(HIT.Parent)
2271
			end
2272
		end
2273
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2274
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2275
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2276
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2277
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
2278
		for i=0, 0.2, 0.05 / Animation_Speed do
2279
			Swait()
2280
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2281
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
2282
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2283
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2284
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2285
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2286
		end
2287
	until KEYHOLD == false
2288
	ATTACK = false
2289
	Rooted = false
2290
end
2291
2292
function AttackTemplate()
2293
	ATTACK = true
2294
	Rooted = false
2295
	for i=0, 1, 0.1 / Animation_Speed do
2296
		Swait()
2297
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2298
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2299
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2300
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2301
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2302
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2303
	end
2304
	ATTACK = false
2305
	Rooted = false
2306
end
2307
2308
function Finisher()
2309
	local TARGET = Mouse.Target
2310
	if TARGET ~= nil then
2311
		if TARGET.Parent:FindFirstChildOfClass("Humanoid") then
2312
			local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
2313
			local ROOT = TARGET.Parent:FindFirstChild("HumanoidRootPart") or TARGET.Parent:FindFirstChild("Torso") or TARGET.Parent:FindFirstChild("UpperTorso")
2314
			if ROOT and HUM.Health > 0 then
2315
				local FOE = Mouse.Target.Parent
2316
				ATTACK = true
2317
				Rooted = true
2318
				RootPart.CFrame = ROOT.CFrame*CF(-1.35,0,4)
2319
				ROOT.Anchored = true
2320
				CreateSound(670796769, Torso, 9999, 0.6, false)
2321
				CreateSound(159882598, Torso, 5, 0.9, false)
2322
				for i=0, 0.4, 0.1 / Animation_Speed do
2323
					Swait()
2324
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2325
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2326
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2327
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2328
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2329
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2330
				end
2331
				HUM.PlatformStand = true
2332
				ROOT.CFrame = ROOT.CFrame * CF(0,-2*ROOT.Size.Z,0) * ANGLES(RAD(-90), RAD(0), RAD(0))
2333
				coroutine.resume(coroutine.create(function()
2334
					Swait()
2335
					ROOT.Anchored = true
2336
				end))
2337
				RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.6)
2338
				for i=0, 0.2, 0.1 / Animation_Speed do
2339
					Swait()
2340
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
2341
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
2342
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2343
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2344
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2345
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
2346
				end
2347
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2348
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2349
				for i=0, 0.2, 0.1 / Animation_Speed do
2350
					Swait()
2351
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
2352
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
2353
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2354
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2355
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2356
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2357
				end
2358
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2359
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2360
				local AMMO = 6
2361
				local FIRING = true
2362
				local SHOOTING = false
2363
				local TIMER = 70
2364
				CreateSound(147722227, GunPoint, 6, 1.3, false)
2365
				for i=0, 0.2, 0.1 / Animation_Speed do
2366
					Swait()
2367
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
2368
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
2369
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2370
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2371
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2372
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
2373
				end
2374
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2375
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2376
				for i = 1, 6 do
2377
					local GUNPOS = Hole.CFrame*CF(0, 0, 0).p
2378
					local DISTANCE = (FOE.Head.Position - GUNPOS).Magnitude
2379
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2380
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2381
					HUM.Health = HUM.Health/1.5
2382
					for i=0, 0.2, 0.1 / Animation_Speed do
2383
						Swait()
2384
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
2385
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
2386
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2387
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2388
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2389
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
2390
				end
2391
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2392
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2393
					for i=0, 0.2, 0.1 / Animation_Speed do
2394
						Swait()
2395
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
2396
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
2397
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2398
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2399
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2400
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
2401
					end
2402
				end
2403
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2404
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2405
				ApplyDamage(HUM,0,true)
2406
				FOE:BreakJoints()
2407
				ROOT.Anchored = false
2408
				for i=0, 0.3, 0.1 / Animation_Speed do
2409
					Swait()
2410
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2411
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(15)), 1 / Animation_Speed)
2412
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2413
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.525, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2414
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2415
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
2416
				end
2417
				ATTACK = false
2418
				Rooted = false
2419
			end
2420
		end
2421
	end
2422
end
2423
2424
2425
--//=================================\\
2426
--||	  ASSIGN THINGS TO KEYS
2427
--\\=================================//
2428
2429
function MouseDown(Mouse)
2430
	if ATTACK == false then
2431
	end
2432
end
2433
2434
function MouseUp(Mouse)
2435
HOLD = false
2436
end
2437
2438
function KeyDown(Key)
2439
	KEYHOLD = true
2440
	if Key == "z" and ATTACK == false then
2441
		Shot()
2442
	end
2443
2444
	if Key == "v" and ATTACK == false then
2445
		Shot2()
2446
	end
2447
2448
	if Key == "x" and ATTACK == false then
2449
                Finisher()
2450
	end
2451
2452
	if Key == "t" and ATTACK == false then
2453
               Taunt()
2454
	end
2455
2456
	if Key == "c" and ATTACK == false then
2457
                eh()
2458
	end
2459
end
2460
2461
function KeyUp(Key)
2462
	KEYHOLD = false
2463
end
2464
2465
	Mouse.Button1Down:connect(function(NEWKEY)
2466
		MouseDown(NEWKEY)
2467
	end)
2468
	Mouse.Button1Up:connect(function(NEWKEY)
2469
		MouseUp(NEWKEY)
2470
	end)
2471
	Mouse.KeyDown:connect(function(NEWKEY)
2472
		KeyDown(NEWKEY)
2473
	end)
2474
	Mouse.KeyUp:connect(function(NEWKEY)
2475
		KeyUp(NEWKEY)
2476
	end)
2477
2478
--//=================================\\
2479
--\\=================================//
2480
2481
2482
function unanchor()
2483
	if UNANCHOR == true then
2484
		g = Character:GetChildren()
2485
		for i = 1, #g do
2486
			if g[i].ClassName == "Part" then
2487
				g[i].Anchored = false
2488
			end
2489
		end
2490
	end
2491
end
2492
2493
2494
--//=================================\\
2495
--||	WRAP THE WHOLE SCRIPT UP
2496
--\\=================================//
2497
2498
Humanoid.Changed:connect(function(Jump)
2499
	if Jump == "Jump" and (Disable_Jump == true) then
2500
		Humanoid.Jump = false
2501
	end
2502
end)
2503
2504
local FF = IT("ForceField",Character)
2505
FF.Visible = false
2506
2507
INSTANT = false
2508
Speed = 20
2509
2510
while true do
2511
	Swait()
2512
	SINE = SINE + CHANGE
2513
		ANIMATE.Parent = nil
2514
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
2515
		IDLEANIMATION:Play()
2516
		if TRANSFORMED == true then
2517
			tecks2.TextTransparency = 0
2518
			for _, c in pairs(Character:GetChildren()) do
2519
				if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
2520
					c.Anchored = false
2521
					c.Transparency = 0
2522
				end
2523
			end
2524
			for _, c in pairs(Weapon:GetChildren()) do
2525
				if c.ClassName == "Part" then
2526
					c.Transparency = 0
2527
				end
2528
			end
2529
			local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2530
			local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2531
			local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
2532
			local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
2533
			local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
2534
			if ATTACK == false and VALUE2 == false then
2535
                            end
2536
			if ANIM == "Walk" and TORSOVELOCITY > 1 then
2537
				RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2538
				Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * 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)
2539
				RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2540
				LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2541
			elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
2542
				RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2543
				Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2544
				RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2545
				LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2546
			end
2547
			if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2548
				ANIM = "Jump"
2549
				if ATTACK == false then
2550
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2551
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2552
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2553
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2554
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
2555
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
2556
			       end
2557
			elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
2558
				ANIM = "Fall"
2559
				if ATTACK == false then
2560
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2561
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2562
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2563
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2564
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
2565
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
2566
				end
2567
			elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
2568
				ANIM = "Idle"
2569
				if ATTACK == false then
2570
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
2571
			if MRANDOM(1,7) == 1 then
2572
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2573
			end		
2574
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2575
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(180), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
2576
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
2577
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2578
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
2579
				end
2580
			elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2581
				ANIM = "Walk"
2582
				if ATTACK == false then
2583
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2584
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
2585
			if MRANDOM(1,7) == 1 then
2586
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2587
			end
2588
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(0), RAD(180), RAD(180)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2589
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / Animation_Speed)
2590
					RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
2591
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
2592
				end
2593
			end
2594
		end
2595
	--end
2596
	Humanoid.DisplayDistanceType = "None"
2597
	unanchor()
2598
	tecks2.TextColor3 = BrickColor.Random().Color
2599
	tecks2.TextStrokeColor3 = BrickColor.Random().Color
2600
	Humanoid.MaxHealth = "inf"
2601
	Humanoid.Health = "inf"
2602
	if Rooted == false then
2603
		Disable_Jump = false
2604
		Humanoid.WalkSpeed = Speed
2605
	elseif Rooted == true then
2606
		Disable_Jump = true
2607
		Humanoid.WalkSpeed = 0
2608
	end
2609
	if Head:FindFirstChild("face") then
2610
		Head.face.Texture = "rbxassetid://403870689"
2611
	end
2612
	local MATHS = {"0","1"}
2613
	Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
2614
	Humanoid.PlatformStand = false
2615
	if INTRO == false and INSTANT == false then
2616
		INTRO = true
2617
		coroutine.resume(coroutine.create(function()
2618
			sick:Play()
2619
			Intro()
2620
		end))
2621
	end
2622
	if INSTANT == true then
2623
		if TRANSFORMED == false then
2624
			sick.TimePosition = 60
2625
			sick:Play()
2626
		end
2627
		TRANSFORMED = true
2628
	end
2629
	script.Parent = PlayerGui
2630
	Character.Parent = workspace
2631
	Humanoid.Parent = Character
2632
end
2633
--//=================================\\
2634
--\\=================================//
2635
2636
2637
2638
2639
2640
--//====================================================\\--
2641
--||			  		 END OF SCRIPT
2642
--\\====================================================//--