View difference between Paste ID: L2RjPQYL and YfXWNZ6X
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 r/ and not rl/") end
2-
--||			   CREATED BY SHACKLUSTER
2+
local Player,game,owner = owner,game
3-
--\\====================================================//--
3+
local RealPlayer = Player
4
do
5
    print("FE Compatibility code by Mokiros")
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()}
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
            for _,t in pairs(CAS.Actions) do
51
                for _,k in pairs(t.Keys) do
52
                    if k==io.KeyCode then
53
                        t.Function(t.Name,io.UserInputState,io)
54
                    end
55
                end
56
            end
57
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
        end
60
    end)
61
    Event.Parent = NLS([==[
62
    local Player = game:GetService("Players").LocalPlayer
63
    local Event = script:WaitForChild("UserInput_Event")
64
 
65
    local Mouse = Player:GetMouse()
66
    local UIS = game:GetService("UserInputService")
67
    local input = function(io,a)
68
        if a then return end
69
        --Since InputObject is a client-side instance, we create and pass table instead
70
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
71
    end
72
    UIS.InputBegan:Connect(input)
73
    UIS.InputEnded:Connect(input)
74
 
75
    local h,t
76
    --Give the server mouse data 30 times every second, but only if the values changed
77
    --If player is not moving their mouse, client won't fire events
78
    while wait(1/30) do
79
        if h~=Mouse.Hit or t~=Mouse.Target then
80
            h,t=Mouse.Hit,Mouse.Target
81
            Event:FireServer({isMouse=true,Target=t,Hit=h})
82
        end
83
    end]==],Player.Character)
84
 
85
    ----Sandboxed game object that allows the usage of client-side methods and services
86
    --Real game object
87
    local _rg = game
88
 
89
    --Metatable for fake service
90
    local fsmt = {
91
        __index = function(self,k)
92
            local s = rawget(self,"_RealService")
93
            if s then return s[k] end
94
        end,
95
        __newindex = function(self,k,v)
96
            local s = rawget(self,"_RealService")
97
            if s then s[k]=v end
98
        end,
99
        __call = function(self,...)
100
            local s = rawget(self,"_RealService")
101
            if s then return s(...) 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 self[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
    }
120
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
121
    g.service = g.GetService
122
    
123
    g.RunService = FakeService({
124
        RenderStepped = _rg:GetService("RunService").Heartbeat,
125
        BindToRenderStep = function(self,name,_,fun)
126
 
127
        end,
128
        UnbindFromRenderStep = function(self,name)
129
            self._btrs[name]:Disconnect()
130
        end,
131
    },"RunService")
132
 
133
    setmetatable(g,{
134
        __index=function(self,s)
135
            return _rg:GetService(s) or typeof(_rg[s])=="function"
136
            and function(_,...)return _rg[s](_rg,...)end or _rg[s]
137
        end,
138
        __newindex = fsmt.__newindex,
139
        __call = fsmt.__call
140
    })
141
    --Changing owner to fake player object to support owner:GetMouse()
142
    game,owner = g,g.Players.LocalPlayer
143
end
144
script:ClearAllChildren()
145
wait(0.2)
146
147
Player = game:GetService("Players").LocalPlayer
148
PlayerGui = Player.PlayerGui
149
Cam = workspace.CurrentCamera
150
Backpack = Player.Backpack
151
Character = Player.Character
152
Humanoid = Character.Humanoid
153
Mouse = Player:GetMouse()
154
RootPart = Character["HumanoidRootPart"]
155
Torso = Character["Torso"]
156
Head = Character["Head"]
157
RightArm = Character["Right Arm"]
158
LeftArm = Character["Left Arm"]
159
RightLeg = Character["Right Leg"]
160
LeftLeg = Character["Left Leg"]
161
RootJoint = RootPart["RootJoint"]
162
Neck = Torso["Neck"]
163
RightShoulder = Torso["Right Shoulder"]
164
LeftShoulder = Torso["Left Shoulder"]
165
RightHip = Torso["Right Hip"]
166
LeftHip = Torso["Left Hip"]
167
local TIME = 0
168
local sick = Instance.new("Sound",Torso)
169
170
IT = Instance.new
171
CF = CFrame.new
172
VT = Vector3.new
173
RAD = math.rad
174
C3 = Color3.new
175
UD2 = UDim2.new
176
BRICKC = BrickColor.new
177
ANGLES = CFrame.Angles
178
EULER = CFrame.fromEulerAnglesXYZ
179
COS = math.cos
180
ACOS = math.acos
181
SIN = math.sin
182
ASIN = math.asin
183
ABS = math.abs
184
MRANDOM = math.random
185
FLOOR = math.floor
186
--//=================================\\
187
--|| 	      USEFUL VALUES
188
--\\=================================//
189
190
Animation_Speed = 3
191
local FORCERESET = false
192
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
193
local Speed = 16
194
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
195
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
196
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
197
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
198
local DAMAGEMULTIPLIER = 1
199
local ANIM = "Idle"
200
local ATTACK = false
201
local EQUIPPED = false
202
local HOLD = false
203
local COMBO = 1
204
local Rooted = false
205
local SINE = 0
206
local KEYHOLD = false
207
local CHANGE = 2 / Animation_Speed
208
local WALKINGANIM = false
209
local VALUE1 = false
210
local VALUE2 = false
211
local ROBLOXIDLEANIMATION = IT("Animation")
212
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
213
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
214
--ROBLOXIDLEANIMATION.Parent = Humanoid
215
local WEAPONGUI = IT("ScreenGui", PlayerGui)
216
WEAPONGUI.Name = "BanishV3Gui"
217
local Weapon = IT("Model")
218
Weapon.Name = "Adds"
219
local Effects = IT("Folder", Weapon)
220
Effects.Name = "Effects"
221
local ANIMATOR = Humanoid.Animator
222
local ANIMATE = Character:FindFirstChild("Animate")
223
local UNANCHOR = true
224
local TOBANISH = {}
225
script.Parent = PlayerGui
226
227
--//=================================\\
228
--\\=================================//
229
230
231
--//=================================\\
232
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
233
--\\=================================//
234
235
ArtificialHB = Instance.new("BindableEvent", script)
236
ArtificialHB.Name = "ArtificialHB"
237
238
script:WaitForChild("ArtificialHB")
239
240
frame = Frame_Speed
241
tf = 0
242
allowframeloss = false
243
tossremainder = false
244
lastframe = tick()
245
script.ArtificialHB:Fire()
246
247
game:GetService("RunService").Heartbeat:connect(function(s, p)
248
	tf = tf + s
249
	if tf >= frame then
250
		if allowframeloss then
251
			script.ArtificialHB:Fire()
252
			lastframe = tick()
253
		else
254
			for i = 1, math.floor(tf / frame) do
255
				script.ArtificialHB:Fire()
256
			end
257
		lastframe = tick()
258
		end
259
		if tossremainder then
260
			tf = 0
261
		else
262
			tf = tf - frame * math.floor(tf / frame)
263
		end
264
	end
265
end)
266
267
--//=================================\\
268
--\\=================================//
269
270
--//=================================\\
271
--|| 	      SOME FUNCTIONS
272
--\\=================================//
273
274
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
275
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
276
end
277
278
function PositiveAngle(NUMBER)
279
	if NUMBER >= 0 then
280
		NUMBER = 0
281
	end
282
	return NUMBER
283
end
284
285
function NegativeAngle(NUMBER)
286
	if NUMBER <= 0 then
287
		NUMBER = 0
288
	end
289
	return NUMBER
290
end
291
292
function Swait(NUMBER)
293
	if NUMBER == 0 or NUMBER == nil then
294
		ArtificialHB.Event:wait()
295
	else
296
		for i = 1, NUMBER do
297
			ArtificialHB.Event:wait()
298
		end
299
	end
300
end
301
302
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
303
	local NEWMESH = IT(MESH)
304
	if MESH == "SpecialMesh" then
305
		NEWMESH.MeshType = MESHTYPE
306
		if MESHID ~= "nil" and MESHID ~= "" then
307
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
308
		end
309
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
310
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
311
		end
312
	end
313
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
314
	NEWMESH.Scale = SCALE
315
	NEWMESH.Parent = PARENT
316
	return NEWMESH
317
end
318
319
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
320
	local NEWPART = IT("Part")
321
	NEWPART.formFactor = FORMFACTOR
322
	NEWPART.Reflectance = REFLECTANCE
323
	NEWPART.Transparency = TRANSPARENCY
324
	NEWPART.CanCollide = false
325
	NEWPART.Locked = true
326
	NEWPART.Anchored = true
327
	if ANCHOR == false then
328
		NEWPART.Anchored = false
329
	end
330
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
331
	NEWPART.Name = NAME
332
	NEWPART.Size = SIZE
333
	NEWPART.Position = Torso.Position
334
	NEWPART.Material = MATERIAL
335
	NEWPART:BreakJoints()
336
	NEWPART.Parent = PARENT
337
	return NEWPART
338
end
339
340
	local function weldBetween(a, b)
341
	    local weldd = Instance.new("ManualWeld")
342
	    weldd.Part0 = a
343
	    weldd.Part1 = b
344
	    weldd.C0 = CFrame.new()
345
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
346
	    weldd.Parent = a
347
	    return weldd
348
	end
349
350
351
function QuaternionFromCFrame(cf)
352
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
353
	local trace = m00 + m11 + m22
354
	if trace > 0 then 
355
		local s = math.sqrt(1 + trace)
356
		local recip = 0.5 / s
357
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
358
	else
359
		local i = 0
360
		if m11 > m00 then
361
			i = 1
362
		end
363
		if m22 > (i == 0 and m00 or m11) then
364
			i = 2
365
		end
366
		if i == 0 then
367
			local s = math.sqrt(m00 - m11 - m22 + 1)
368
			local recip = 0.5 / s
369
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
370
		elseif i == 1 then
371
			local s = math.sqrt(m11 - m22 - m00 + 1)
372
			local recip = 0.5 / s
373
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
374
		elseif i == 2 then
375
			local s = math.sqrt(m22 - m00 - m11 + 1)
376
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
377
		end
378
	end
379
end
380
 
381
function QuaternionToCFrame(px, py, pz, x, y, z, w)
382
	local xs, ys, zs = x + x, y + y, z + z
383
	local wx, wy, wz = w * xs, w * ys, w * zs
384
	local xx = x * xs
385
	local xy = x * ys
386
	local xz = x * zs
387
	local yy = y * ys
388
	local yz = y * zs
389
	local zz = z * zs
390
	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))
391
end
392
 
393
function QuaternionSlerp(a, b, t)
394
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
395
	local startInterp, finishInterp;
396
	if cosTheta >= 0.0001 then
397
		if (1 - cosTheta) > 0.0001 then
398
			local theta = ACOS(cosTheta)
399
			local invSinTheta = 1 / SIN(theta)
400
			startInterp = SIN((1 - t) * theta) * invSinTheta
401
			finishInterp = SIN(t * theta) * invSinTheta
402
		else
403
			startInterp = 1 - t
404
			finishInterp = t
405
		end
406
	else
407
		if (1 + cosTheta) > 0.0001 then
408
			local theta = ACOS(-cosTheta)
409
			local invSinTheta = 1 / SIN(theta)
410
			startInterp = SIN((t - 1) * theta) * invSinTheta
411
			finishInterp = SIN(t * theta) * invSinTheta
412
		else
413
			startInterp = t - 1
414
			finishInterp = t
415
		end
416
	end
417
	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
418
end
419
420
function Clerp(a, b, t)
421
	local qa = {QuaternionFromCFrame(a)}
422
	local qb = {QuaternionFromCFrame(b)}
423
	local ax, ay, az = a.x, a.y, a.z
424
	local bx, by, bz = b.x, b.y, b.z
425
	local _t = 1 - t
426
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
427
end
428
429
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
430
	local frame = IT("Frame")
431
	frame.BackgroundTransparency = TRANSPARENCY
432
	frame.BorderSizePixel = BORDERSIZEPIXEL
433
	frame.Position = POSITION
434
	frame.Size = SIZE
435
	frame.BackgroundColor3 = COLOR
436
	frame.BorderColor3 = BORDERCOLOR
437
	frame.Name = NAME
438
	frame.Parent = PARENT
439
	return frame
440
end
441
442
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
443
	local label = IT("TextLabel")
444
	label.BackgroundTransparency = 1
445
	label.Size = UD2(1, 0, 1, 0)
446
	label.Position = UD2(0, 0, 0, 0)
447
	label.TextColor3 = TEXTCOLOR
448
	label.TextStrokeTransparency = STROKETRANSPARENCY
449
	label.TextTransparency = TRANSPARENCY
450
	label.FontSize = TEXTFONTSIZE
451
	label.Font = TEXTFONT
452
	label.BorderSizePixel = BORDERSIZEPIXEL
453
	label.TextScaled = false
454
	label.Text = TEXT
455
	label.Name = NAME
456
	label.Parent = PARENT
457
	return label
458
end
459
460
function NoOutlines(PART)
461
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
462
end
463
464
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
465
	local NEWWELD = IT(TYPE)
466
	NEWWELD.Part0 = PART0
467
	NEWWELD.Part1 = PART1
468
	NEWWELD.C0 = C0
469
	NEWWELD.C1 = C1
470
	NEWWELD.Parent = PARENT
471
	return NEWWELD
472
end
473
474
local S = IT("Sound")
475
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
476
	local NEWSOUND = nil
477
	coroutine.resume(coroutine.create(function()
478
		NEWSOUND = S:Clone()
479
		NEWSOUND.Parent = PARENT
480
		NEWSOUND.Volume = VOLUME
481
		NEWSOUND.Pitch = PITCH
482
		NEWSOUND.SoundId = "1753701701"..ID
483
		NEWSOUND:play()
484
		if DOESLOOP == true then
485
			NEWSOUND.Looped = true
486
		else
487
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
488
			NEWSOUND:remove()
489
		end
490
	end))
491
	return NEWSOUND
492
end
493
494
function CFrameFromTopBack(at, top, back)
495
	local right = top:Cross(back)
496
	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)
497
end
498
499
--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})
500
function WACKYEFFECT(Table)
501
	local TYPE = (Table.EffectType or "Sphere")
502
	local SIZE = (Table.Size or VT(1,1,1))
503
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
504
	local TRANSPARENCY = (Table.Transparency or 0)
505
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
506
	local CFRAME = (Table.CFrame or Torso.CFrame)
507
	local MOVEDIRECTION = (Table.MoveToPos or nil)
508
	local ROTATION1 = (Table.RotationX or 0)
509
	local ROTATION2 = (Table.RotationY or 0)
510
	local ROTATION3 = (Table.RotationZ or 0)
511
	local MATERIAL = (Table.Material or "Neon")
512
	local COLOR = (Table.Color or C3(1,1,1))
513
	local TIME = (Table.Time or 45)
514
	local SOUNDID = (Table.SoundID or nil)
515
	local SOUNDPITCH = (Table.SoundPitch or nil)
516
	local SOUNDVOLUME = (Table.SoundVolume or nil)
517
	coroutine.resume(coroutine.create(function()
518
		local PLAYSSOUND = false
519
		local SOUND = nil
520
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
521
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
522
			PLAYSSOUND = true
523
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
524
		end
525
		EFFECT.Color = COLOR
526
		local MSH = nil
527
		if TYPE == "Sphere" then
528
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
529
		elseif TYPE == "Block" then
530
			MSH = IT("BlockMesh",EFFECT)
531
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
532
		elseif TYPE == "Wave" then
533
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
534
		elseif TYPE == "Ring" then
535
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
536
		elseif TYPE == "Slash" then
537
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
538
		elseif TYPE == "Round Slash" then
539
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
540
		elseif TYPE == "Swirl" then
541
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
542
		elseif TYPE == "Skull" then
543
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
544
		elseif TYPE == "Crystal" then
545
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
546
		end
547
		if MSH ~= nil then
548
			local MOVESPEED = nil
549
			if MOVEDIRECTION ~= nil then
550
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
551
			end
552
			local GROWTH = SIZE - ENDSIZE
553
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
554
			if TYPE == "Block" then
555
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
556
			else
557
				EFFECT.CFrame = CFRAME
558
			end
559
			for LOOP = 1, TIME+1 do
560
				Swait()
561
				MSH.Scale = MSH.Scale - GROWTH/TIME
562
				if TYPE == "Wave" then
563
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
564
				end
565
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
566
				if TYPE == "Block" then
567
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
568
				else
569
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
570
				end
571
				if MOVEDIRECTION ~= nil then
572
					local ORI = EFFECT.Orientation
573
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
574
					EFFECT.Orientation = ORI
575
				end
576
			end
577
			if PLAYSSOUND == false then
578
				EFFECT:remove()
579
			else
580
				SOUND.Stopped:Connect(function()
581
					EFFECT:remove()
582
				end)
583
			end
584
		else
585
			if PLAYSSOUND == false then
586
				EFFECT:remove()
587
			else
588
				repeat Swait() until SOUND.Playing == false
589
				EFFECT:remove()
590
			end
591
		end
592
	end))
593
end
594
595
function MakeForm(PART,TYPE)
596
	if TYPE == "Cyl" then
597
		local MSH = IT("CylinderMesh",PART)
598
	elseif TYPE == "Ball" then
599
		local MSH = IT("SpecialMesh",PART)
600
		MSH.MeshType = "Sphere"
601
	elseif TYPE == "Wedge" then
602
		local MSH = IT("SpecialMesh",PART)
603
		MSH.MeshType = "Wedge"
604
	end
605
end
606
607
function SpawnTrail(FROM,TO,BIG)
608
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Bright yellow", "Trail", VT(0,0,0))
609
	MakeForm(TRAIL,"Cyl")
610
	local DIST = (FROM - TO).Magnitude
611
	if BIG == true then
612
		TRAIL.Size = VT(0.5,DIST,0.5)
613
	else
614
		TRAIL.Size = VT(0.25,DIST,0.25)
615
	end
616
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
617
	coroutine.resume(coroutine.create(function()
618
		for i = 1, 5 do
619
			Swait()
620
			TRAIL.Transparency = TRAIL.Transparency + 0.1
621
		end
622
		TRAIL:remove()
623
	end))
624
end
625
626
Debris = game:GetService("Debris")
627
628
function CastProperRay(StartPos, EndPos, Distance, Ignore)
629
	local DIRECTION = CF(StartPos,EndPos).lookVector
630
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
631
end
632
633
function turnto(position)
634
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
635
end
636
637
--//=================================\\
638
--||	     WEAPON CREATION
639
--\\=================================//
640
641
local Particle = IT("ParticleEmitter",nil)
642
Particle.Enabled = false
643
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
644
Particle.LightEmission = 0.5
645
Particle.Rate = 150
646
Particle.ZOffset = 0.2
647
Particle.Rotation = NumberRange.new(-180, 180)
648
Particle.RotSpeed = NumberRange.new(-180, 180)
649
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
650
Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
651
652
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
653
function ParticleEmitter(Table)
654
	local PRTCL = Particle:Clone()
655
	local Speed = Table.Speed or 5
656
	local Drag = Table.Drag or 0
657
	local Size1 = Table.Size1 or 1
658
	local Size2 = Table.Size2 or 5
659
	local Lifetime1 = Table.Lifetime1 or 1
660
	local Lifetime2 = Table.Lifetime2 or 1.5
661
	local Parent = Table.Parent or Torso
662
	local Emit = Table.Emit or 100
663
	local Offset = Table.Offset or 360
664
	local Acel = Table.Acel or VT(0,0,0)
665
	local Enabled = Table.Enabled or false
666
	PRTCL.Parent = Parent
667
	PRTCL.Size = NumberSequence.new(Size1,Size2)
668
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
669
	PRTCL.Speed = NumberRange.new(Speed)
670
	PRTCL.VelocitySpread = Offset
671
	PRTCL.Drag = Drag
672
	PRTCL.Acceleration = Acel
673
	if Enabled == false then
674
		PRTCL:Emit(Emit)
675
		Debris:AddItem(PRTCL,Lifetime2)
676
	else
677
		PRTCL.Enabled = true
678
	end
679
	return PRTCL
680
end
681
682
Character.Head.face.Texture = "rbxassetid://1327813409"
683
684
local LASTPART = Head
685
for i = 1, 20 do
686
	local MATH = (1-(i/25))
687
	if LASTPART == Head then
688
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
689
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.3, 0.7, -0.35) * ANGLES(RAD(-55), RAD(15), RAD(-15)), CF(0, 0, 0))
690
		LASTPART = Horn
691
		Horn.Color = C3((i*3-3)/255,0,0)
692
	
693
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
694
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/1.8, 0) * ANGLES(RAD(6), RAD(-0.3), RAD(0)), CF(0, 0, 0))
695
		LASTPART = Horn
696
		Horn.Color = C3((i*3-3)/255,0,0)
697
	end
698
end
699
700
local LASTPART = Head
701
for i = 1, 20 do
702
	local MATH = (1-(i/25))
703
	if LASTPART == Head then
704
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
705
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.3, 0.7, -0.35) * ANGLES(RAD(-55), RAD(-15), RAD(15)), CF(0, 0, 0))
706
		LASTPART = Horn
707
		Horn.Color = C3((i*3-3)/255,0,0)
708
	else
709
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
710
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/1.8, 0) * ANGLES(RAD(6), RAD(0.3), RAD(0)), CF(0, 0, 0))
711
		LASTPART = Horn
712
		Horn.Color = C3((i*3-3)/255,0,0)
713
	end
714
end
715
716
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.6,0.2),false)
717
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
718
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.5,0.2),false)
719
MakeForm(Part,"Wedge")
720
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
721
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.3,0.2),false)
722
MakeForm(Part,"Wedge")
723
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
724
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.3,0.3,0.3),false)
725
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
726
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.3,0.5,0.5),false)
727
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
728
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.4,0.4,0.4),false)
729
MakeForm(Part,"Cyl")
730
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
731
for i = 1, 8 do
732
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Eye", VT(0,0.35,0.41),false)
733
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
734
end
735
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Eye", VT(0.38,0.41,0.38),false)
736
MakeForm(Part,"Cyl")
737
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
738
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.37,0.5,0.37),false)
739
MakeForm(Part,"Ball")
740
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
741
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.7,0.4),false)
742
MakeForm(Part,"Wedge")
743
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
744
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.3,0.4,0.2),false)
745
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
746
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.35,0.35,0.35),false)
747
MakeForm(Part,"Cyl")
748
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
749
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.5,0.1,0.5),false)
750
MakeForm(Part,"Cyl")
751
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
752
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.5,0.1,0.45),false)
753
MakeForm(Part,"Cyl")
754
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
755
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.5,0.2),false)
756
MakeForm(Part,"Wedge")
757
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
758
local LASTPART = Handle
759
for i = 1, 10 do
760
	if LASTPART == Handle then
761
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.1,0.2,0),false)
762
		LASTPART = Part
763
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
764
	else
765
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.1,0.05,0),false)
766
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
767
		LASTPART = Part
768
	end
769
end
770
771
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.15,2,0.15),false)
772
MakeForm(Barrel,"Cyl")
773
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
774
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.25,1,0.25),false)
775
MakeForm(Part,"Cyl")
776
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
777
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0,0.1,0.2),false)
778
MakeForm(Part,"Wedge")
779
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
780
local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Eye", VT(0.125,0,0.125),false)
781
MakeForm(Hole,"Cyl")
782
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
783
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0,0,0),false)
784
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
785
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
786
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Brown", "Eye", VT(0,0,0),false)
787
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
788
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
789
790
local Handle = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,1.2,0.2),false)
791
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-0.8, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.3, 0))
792
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.8,0.2),false)
793
MakeForm(Part,"Wedge")
794
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0.2, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
795
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.6),false)
796
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
797
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.4,0.4,0.4),false)
798
MakeForm(Part,"Cyl")
799
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
800
for i = 1, 8 do
801
	local Piece = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0,0.35,0.41),false)
802
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
803
end
804
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.5,0.2),false)
805
MakeForm(Part,"Wedge")
806
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
807
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.39,0.41,0.39),false)
808
MakeForm(Part,"Cyl")
809
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
810
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.5),false)
811
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
812
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.4,0.5),false)
813
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.65) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
814
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0,0.6),false)
815
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0, 0) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, -0.2, -0.3))
816
local RightBarrel = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.28,5,0.28),false)
817
MakeForm(RightBarrel,"Cyl")
818
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, RightBarrel, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -2.5, 0))
819
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0,0.2,0.2),false)
820
MakeForm(Part,"Wedge")
821
CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, Part, CF(0, 2.415, 0.15) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
822
local RightHole = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.2,0,0.2),false)
823
MakeForm(RightHole,"Cyl")
824
CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, RightHole, CF(0, 2.5, 0), CF(0, 0, 0))
825
local Handle = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,1.2,0.2),false)
826
local LeftArmGraps = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-0.8, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.3, 0))
827
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.8,0.2),false)
828
MakeForm(Part,"Wedge")
829
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0.2, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
830
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.6),false)
831
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
832
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.4,0.4,0.4),false)
833
MakeForm(Part,"Cyl")
834
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
835
for i = 1, 8 do
836
	local Piece = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0,0.35,0.41),false)
837
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
838
end
839
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0.5,0.2),false)
840
MakeForm(Part,"Wedge")
841
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
842
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.39,0.41,0.39),false)
843
MakeForm(Part,"Cyl")
844
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.45, 0.4) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
845
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.5,0.5),false)
846
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
847
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.4,0.5),false)
848
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.65) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
849
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.2,0,0.6),false)
850
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, 0, 0) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, -0.2, -0.3))
851
local LeftBarrel = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0.28,5,0.28),false)
852
MakeForm(LeftBarrel,"Cyl")
853
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, LeftBarrel, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -2.5, 0))
854
local Part = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Part", VT(0,0.2,0.2),false)
855
MakeForm(Part,"Wedge")
856
CreateWeldOrSnapOrMotor("Weld", Handle, LeftBarrel, Part, CF(0, 2.415, 0.15) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
857
local LeftHole = CreatePart(3, Character, "Metal", 0, 0, "Really black", "Eye", VT(0.2,0,0.2),false)
858
MakeForm(LeftHole,"Cyl")
859
CreateWeldOrSnapOrMotor("Weld", Handle, LeftBarrel, LeftHole, CF(0, 2.5, 0), CF(0, 0, 0))
860
861
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(1.1,1,0.525),false)
862
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(-0.75, 0.51, 0) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
863
MakeForm(Part,"Wedge")
864
 
865
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(1,1,1.2),false)
866
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
867
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(0.3,1.7,1.15),false)
868
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), CF(0, 0, 0))
869
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(0.3,1.7,1.15),false)
870
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), CF(0, 0, 0))
871
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(0.8,0.8,1.225),false)
872
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
873
local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eon", VT(0.5,0.5,1.25),false)
874
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
875
 
876
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(1.1,0.7,1.1),false)
877
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0.7, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
878
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(0.55,0.7,1.1),false)
879
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0.25, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
880
local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Really red", "Metal", VT(1.1,0.7,0.525),false)
881
CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(-0.28, 0, 0) * ANGLES(RAD(180), RAD(90), RAD(0)), CF(0, 0, 0))
882
MakeForm(Part,"Wedge") 
883
 
884
local BasePart = CreatePart(3, Weapon, "DiamondPlate", 1, 1, "Really red", "BraceletPart", VT(1.01,0.3,1.01),false)
885
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, BasePart, CF(0, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
886
 
887
for i = 1, 3 do
888
    local Part = CreatePart(3, Weapon, "DiamondPlate", 1, 1, "Really red", "BraceletPart", VT(0.2,1.02,0.2),false)
889
    CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.6-0.3*i, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(90)), CF(0, 0, 0))
890
    MakeForm(Part,"Cyl")
891
end
892
local Part = CreatePart(3, Weapon, "DiamondPlate", 1, 1, "Really red", "BraceletPart", VT(0.51,0.6,0.25),false)
893
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(-0.125, -0.4, -0.25) * ANGLES(RAD(0), RAD(90), RAD(180)), CF(0, 0, 0))
894
MakeForm(Part,"Wedge")
895
local Part = CreatePart(3, Weapon, "DiamondPlate", 1, 1, "Really red", "BraceletPart", VT(0.51,0.6,0.25),false)
896
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.125, -0.4, -0.25) * ANGLES(RAD(0), RAD(-90), RAD(180)), CF(0, 0, 0))
897
MakeForm(Part,"Wedge")
898
local Part = CreatePart(3, Weapon, "DiamondPlate", 1, 1, "Really red", "BraceletPart", VT(0.52,0.5,0.25/2.3),false)
899
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(-0.125/2.3, -0.25, -0.25) * ANGLES(RAD(0), RAD(90), RAD(180)), CF(0, 0, 0))
900
MakeForm(Part,"Wedge")
901
local Part = CreatePart(3, Weapon, "DiamondPlate", 1, 1, "Really red", "BraceletPart", VT(0.52,0.5,0.25/2.3),false)
902
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.125/2.3, -0.25, -0.25) * ANGLES(RAD(0), RAD(-90), RAD(180)), CF(0, 0, 0))
903
MakeForm(Part,"Wedge")
904
coroutine.resume(coroutine.create(function()
905
	while wait() do
906
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
907
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
908
	end
909
end))
910
911
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)})
912
--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)})
913
914
for _, c in pairs(Weapon:GetDescendants()) do
915
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
916
		c.Material = "Glass"
917
		c.Color = C3(0,0,0)
918
	elseif c.ClassName == "Part" and c.Name == "Eye" then
919
		c.Color = C3(1,0,0)
920
		c.Material = "Neon"
921
	end
922
end
923
924
Weapon.Parent = Character
925
for _, c in pairs(Weapon:GetChildren()) do
926
	if c.ClassName == "Part" then
927
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
928
	end
929
end
930
931
local SKILLTEXTCOLOR = C3(1,0,0)
932
local SKILLFONT = "Antique"
933
local SKILLTEXTSIZE = 7
934
935
Humanoid.Died:connect(function()
936
	ATTACK = true
937
end)
938
939
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")
940
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")
941
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")
942
local SKILL4FRAME = 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 4 Frame")
943
944
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Mad Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
945
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Banish Bullets", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
946
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Banishing Stab", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
947
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
948
949
function printbye(Name)
950
	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, "}
951
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
952
end
953
954
workspace.ChildAdded:connect(function(instance)
955
    for BANISH = 1, #TOBANISH do
956
		if TOBANISH[BANISH] ~= nil then
957
			if instance.Name == TOBANISH[BANISH] then
958
				coroutine.resume(coroutine.create(function()
959
					printbye(instance.Name)
960
					instance:ClearAllChildren()
961
					Debris:AddItem(instance,0.0005)
962
				end))
963
			end
964
		end
965
	end
966
end)
967
968
--//=================================\\
969
--||			DAMAGING
970
--\\=================================//
971
972
function Banish(Foe)
973
	if Foe then
974
		coroutine.resume(coroutine.create(function()
975
			--if game.Players:FindFirstChild(Foe.Name) then
976
				table.insert(TOBANISH,Foe.Name)
977
				printbye(Foe.Name)
978
			--end
979
			Foe.Archivable = true
980
			local CLONE = Foe:Clone()
981
			Foe:Destroy()
982
			CLONE.Parent = Effects
983
			CLONE:BreakJoints()
984
			local MATERIALS = {"Glass","Neon"}
985
			for _, c in pairs(CLONE:GetDescendants()) do
986
				if c:IsA("BasePart") then
987
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
988
 						CreateSound(340722848, c, 10, 1, false)
989
					end
990
					c.Anchored = true
991
					c.Transparency = c.Transparency + 0.2
992
					c.Material = MATERIALS[MRANDOM(1,2)]
993
					c.Color = C3(1,0,0)
994
					if c.ClassName == "MeshPart" then
995
						c.TextureID = ""
996
					end
997
					if c:FindFirstChildOfClass("SpecialMesh") then
998
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
999
					end
1000
					if c:FindFirstChildOfClass("Decal") then
1001
						c:FindFirstChildOfClass("Decal"):remove()
1002
					end
1003
					c.Name = "Banished"
1004
					c.CanCollide = false
1005
				else
1006
					c:remove()
1007
				end
1008
			end
1009
			local A = false
1010
			for i = 1, 35 do
1011
				if A == false then
1012
					A = true
1013
				elseif A == true then
1014
					A = false
1015
				end
1016
				for _, c in pairs(CLONE:GetDescendants()) do
1017
					if c:IsA("BasePart") then
1018
						c.Anchored = true
1019
						c.Material = MATERIALS[MRANDOM(1,2)]
1020
						c.Transparency = c.Transparency + 0.8/35
1021
						if A == false then
1022
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1023
						elseif A == true then
1024
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1025
						end
1026
					end
1027
				end
1028
				Swait()
1029
			end
1030
			CLONE:remove()
1031
		end))
1032
	end
1033
end
1034
1035
function ApplyAoE(POSITION,RANGE,ISBANISH)
1036
	local CHILDREN = workspace:GetDescendants()
1037
	for index, CHILD in pairs(CHILDREN) do
1038
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1039
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1040
			if HUM then
1041
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1042
				if TORSO then
1043
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1044
						if ISBANISH == true then
1045
							Banish(CHILD)
1046
						else
1047
							if ISBANISH == "Gravity" then
1048
								HUM.PlatformStand = true
1049
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1050
									local grav = Instance.new("BodyPosition",TORSO)
1051
									grav.D = 15
1052
									grav.P = 20000
1053
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1054
									grav.position = TORSO.Position
1055
									grav.Name = "V3BanishForce"..Player.Name
1056
								else
1057
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1058
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1059
								end
1060
							else
1061
								HUM.PlatformStand = false
1062
							end
1063
						end
1064
					elseif ISBANISH == "Gravity" then
1065
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1066
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1067
							HUM.PlatformStand = false
1068
						end
1069
					end
1070
				end
1071
			end
1072
		end
1073
	end
1074
end
1075
1076
--//=================================\\
1077
--||	ATTACK FUNCTIONS AND STUFF
1078
--\\=================================//
1079
1080
function Banisher_Bullet()
1081
	ATTACK = true
1082
	Rooted = false
1083
	for i=0, 0.4, 0.1 / Animation_Speed do
1084
		Swait()
1085
		turnto(Mouse.Hit.p)
1086
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1087
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1088
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1089
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1090
		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)
1091
		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)
1092
	end
1093
	repeat
1094
		for i=0, 0.2, 0.1 / Animation_Speed do
1095
			Swait()
1096
			turnto(Mouse.Hit.p)
1097
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1098
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1099
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1100
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1101
			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)
1102
			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)
1103
		end
1104
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
1105
		SpawnTrail(Hole.Position,POS)
1106
		if HIT ~= nil then
1107
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1108
				Banish(HIT.Parent)
1109
			end
1110
		end
1111
		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})
1112
		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 = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1113
		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})
1114
		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})
1115
		for i=0, 0.3, 0.1 / Animation_Speed do
1116
			Swait()
1117
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1118
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1119
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1120
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1121
			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)
1122
			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)
1123
		end
1124
	until KEYHOLD == false
1125
	ATTACK = false
1126
	Rooted = false
1127
end
1128
1129
function Deathbound()
1130
	ATTACK = true
1131
	Rooted = true
1132
	for i=0, 1, 0.1 / Animation_Speed do
1133
		Swait()
1134
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1135
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1136
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1137
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1138
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1139
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1140
	end
1141
	local DONE = false
1142
	local GATE = nil
1143
	local GATESPIN = true
1144
	coroutine.resume(coroutine.create(function()
1145
		repeat
1146
			Swait()
1147
			if GATE ~= nil then
1148
				GATE.CFrame = GATE.CFrame * ANGLES(RAD(0), RAD(-3), RAD(0))
1149
			end
1150
		until GATESPIN == false
1151
	end))
1152
	coroutine.resume(coroutine.create(function()
1153
		repeat
1154
			Swait()
1155
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.2 - 0.25 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1156
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1157
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1158
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1159
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1160
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1161
		until DONE == true
1162
		Swait(50)
1163
		for i = 1, 35 do
1164
			Swait(4)
1165
			local FIRED = false
1166
			local CHILDREN = workspace:GetDescendants()
1167
			for index, CHILD in pairs(CHILDREN) do
1168
				if CHILD.ClassName == "Model" and CHILD ~= Character then
1169
					local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1170
					if HUM then
1171
						local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1172
						if TORSO then
1173
							if (TORSO.Position - GATE.Position).Magnitude <= GATE.Size.X/2.5 + TORSO.Size.Magnitude/5 then
1174
								local HITFLOOR,HITPOS = Raycast(TORSO.Position, (CF(TORSO.Position, TORSO.Position + VT(0, -1, 0))).lookVector, 15, Character)
1175
								local CFRAME = CF(HITPOS)*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
1176
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 145080998, SoundPitch = 1.5, SoundVolume = 6})
1177
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1178
								SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)		
1179
								Banish(CHILD)
1180
								FIRED = true
1181
								break
1182
							end
1183
						end
1184
					end
1185
				end
1186
			end
1187
			if FIRED == false then
1188
				local CFRAME = GATE.CFrame*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0,MRANDOM(2,math.ceil(GATE.Size.X/2.5)))*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
1189
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 145080998, SoundPitch = 1.5, SoundVolume = 6})
1190
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1191
				SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)
1192
				local HITBOD = Raycast(CFRAME.p, (CF(CFRAME.p, CFRAME.p + VT(0, 1, 0))).lookVector, 1000, Character)
1193
				if HITBOD ~= nil then
1194
					if HITBOD.Parent:FindFirstChildOfClass("Humanoid") then
1195
						Banish(HITBOD.Parent)
1196
					end
1197
				end
1198
			end
1199
		end
1200
		for i = 1, 45 do
1201
			Swait()
1202
			GATE.Size = GATE.Size - VT(3,0,3)
1203
		end
1204
		GATESPIN = false
1205
		GATE:remove()
1206
	end))
1207
	Swait(15)
1208
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 15, Character)
1209
	GATE = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Gate", VT(0,0,0))
1210
	local DECAL = IT("Decal",GATE)
1211
	DECAL.Texture = "http://www.roblox.com/asset/?id=1526406096"
1212
	DECAL.Face = "Top"
1213
	GATE.CFrame = CF(HITPOS)
1214
	CreateSound(160772554, GATE, 7, 1.3, false)
1215
	for i = 1, 45 do
1216
		Swait()
1217
		GATE.Size = GATE.Size + VT(3,0,3)
1218
	end
1219
	CreateSound(145080998, RightHole, 7, 1, false)
1220
	CreateSound(145080998, LeftHole, 7, 1, false)
1221
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1222
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1223
	ATTACK = false
1224
	Rooted = false
1225
	DONE = true
1226
end
1227
1228
function Execute()
1229
	ATTACK = true
1230
	Rooted = false
1231
	local Part = CreatePart(3, Character, "Neon", 0, 0, "Mid gray", "Part", VT(0,1,4),false)
1232
	Part.Color = C3(0,0,0)
1233
	MakeForm(Part,"Wedge")
1234
	Part.CanCollide = true
1235
	CreateWeldOrSnapOrMotor("Weld", Handle, RightBarrel, Part, CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(135)) *CF(0, 0.5, 0), CF(0, 0, 0))
1236
	for i=0, 1, 0.1 / Animation_Speed do
1237
		Swait()
1238
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-50)), 1 / Animation_Speed)
1239
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(50)), 1 / Animation_Speed)
1240
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(125), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1241
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1242
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1243
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1244
	end
1245
	CreateSound(541909867, RightBarrel, 7, 1, false)
1246
	local TOCH = Part.Touched:Connect(function(hit)
1247
		if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent ~= Character then
1248
			Banish(hit.Parent)
1249
		end
1250
	end)
1251
	for i=0, 0.35, 0.1 / Animation_Speed do
1252
		Swait()
1253
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1 / Animation_Speed)
1254
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
1255
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1256
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1257
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1258
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1259
	end
1260
	TOCH:disconnect()
1261
	for i=0, 0.35, 0.1 / Animation_Speed do
1262
		Swait()
1263
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(60)), 1 / Animation_Speed)
1264
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-55)), 1 / Animation_Speed)
1265
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.25, -0.3) * ANGLES(RAD(50), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1266
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35 + 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(140 - 12 * SIN(SINE / 12)), RAD(15 + 2.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1267
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1268
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1269
	end
1270
	Part:remove()
1271
	ATTACK = false
1272
	Rooted = false
1273
end
1274
1275
1276
function AttackTemplate()
1277
	ATTACK = true
1278
	Rooted = false
1279
	for i=0, 1, 0.1 / Animation_Speed do
1280
		Swait()
1281
		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)
1282
		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)
1283
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1284
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1285
		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)
1286
		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)
1287
	end
1288
	ATTACK = false
1289
	Rooted = false
1290
end
1291
1292
--//=================================\\
1293
--||	  ASSIGN THINGS TO KEYS
1294
--\\=================================//
1295
1296
function MouseDown(Mouse)
1297
	if ATTACK == false then
1298
	end
1299
end
1300
1301
function MouseUp(Mouse)
1302
HOLD = false
1303
end
1304
1305
function KeyDown(Key)
1306
	KEYHOLD = true
1307
	if Key == "z" and ATTACK == false then
1308
		Banisher_Bullet()
1309
	end
1310
1311
	if Key == "b" and ATTACK == false then
1312
		Deathbound()
1313
	end
1314
1315
	if Key == "c" and ATTACK == false then
1316
		Execute()
1317
	end
1318
1319
	if Key == "g" and ATTACK == false then
1320
			       TOBANISH = {}
1321
	end
1322
1323
	if Key == "x" and ATTACK == false then
1324
	end
1325
end
1326
1327
function KeyUp(Key)
1328
	KEYHOLD = false
1329
end
1330
1331
	Mouse.Button1Down:connect(function(NEWKEY)
1332
		MouseDown(NEWKEY)
1333
	end)
1334
	Mouse.Button1Up:connect(function(NEWKEY)
1335
		MouseUp(NEWKEY)
1336
	end)
1337
	Mouse.KeyDown:connect(function(NEWKEY)
1338
		KeyDown(NEWKEY)
1339
	end)
1340
	Mouse.KeyUp:connect(function(NEWKEY)
1341
		KeyUp(NEWKEY)
1342
	end)
1343
1344
--//=================================\\
1345
--\\=================================//
1346
1347
1348
function unanchor()
1349
	if UNANCHOR == true then
1350
		g = Character:GetChildren()
1351
		for i = 1, #g do
1352
			if g[i].ClassName == "Part" then
1353
				g[i].Anchored = false
1354
			end
1355
		end
1356
	end
1357
end
1358
1359
1360
--//=================================\\
1361
--||	WRAP THE WHOLE SCRIPT UP
1362
--\\=================================//
1363
1364
Humanoid.Changed:connect(function(Jump)
1365
	if Jump == "Jump" and (Disable_Jump == true) then
1366
		Humanoid.Jump = false
1367
	end
1368
end)
1369
1370
local CONNECT = nil
1371
1372
while true do
1373
	Swait()
1374
	ANIMATE.Parent = nil
1375
	if Character:FindFirstChildOfClass("Humanoid") == nil then
1376
		Humanoid = IT("Humanoid",Character)
1377
	end
1378
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1379
	    v:Stop();
1380
	end
1381
	SINE = SINE + CHANGE
1382
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1383
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1384
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1385
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1386
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1387
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1388
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1389
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1390
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1391
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1392
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1393
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1394
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1395
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1396
	end
1397
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1398
		ANIM = "Jump"
1399
		if ATTACK == false then
1400
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1401
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1402
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1403
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1404
			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)
1405
			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)
1406
	    end
1407
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1408
		ANIM = "Fall"
1409
		if ATTACK == false then
1410
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1411
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1412
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1413
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1414
			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)
1415
			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)
1416
		end
1417
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1418
		ANIM = "Idle"
1419
		if ATTACK == false then
1420
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1421
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1422
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5 + 0.025 * COS(SINE / 22), -1) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1423
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0 + 0.025 * COS(SINE / 22), -1) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(90 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1424
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 22), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1425
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 22), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1426
		end
1427
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1428
		ANIM = "Walk"
1429
		if ATTACK == false then
1430
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1431
        Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1432
        RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(45 * COS(SINE / WALKSPEEDVALUE))), 1 / Animation_Speed)
1433
        LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(45 * COS(SINE / WALKSPEEDVALUE))), 1 / Animation_Speed)
1434
		end
1435
	end
1436
	unanchor()
1437
	Humanoid.MaxHealth = "inf"
1438
	Humanoid.Health = "inf"
1439
	if Rooted == false then
1440
		Disable_Jump = false
1441
		Humanoid.WalkSpeed = Speed
1442
	elseif Rooted == true then
1443
		Disable_Jump = true
1444
		Humanoid.WalkSpeed = 0
1445
	end
1446
	sick.Parent = Torso
1447
	sick:resume()
1448
	sick.Volume = 5
1449
	sick.SoundId = "rbxassetid://410533850"
1450
	sick.Name = "BanishV3Music"
1451
end
1452
1453
--//=================================\\
1454
--\\=================================//
1455
1456
1457
1458
1459
1460
--//====================================================\\--
1461
--||			  		 END OF SCRIPT
1462
--\\====================================================//--