View difference between Paste ID: zaheEG5j and SLwDc5uU
SHOW: | | - or go back to the newest paste.
1
 if game:GetService("RunService"):IsClient()then error("say h/ not hl/ ya dummy")end;print("get rekt");InternalData = {}
2
do
3
    script.Parent = owner.Character
4
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
5
    local function NewFakeEvent()
6
        local Bind = Instance.new("BindableEvent")
7
        local Fake;Fake = {Connections = {},
8
        fakeEvent=true;
9
        Connect=function(self,Func)
10
            Bind.Event:connect(Func)
11
            self.Connections[Bind] = true
12
            return setmetatable({Connected = true},{
13
            __index = function (self,Index)
14
                if Index:lower() == "disconnect" then
15
                    return function() Fake.Connections[Bind] = false;self.Connected = false end
16
                end
17
                return Fake[Index]
18
            end;
19
            __tostring = function() return "Connection" end;
20
        })
21
        end}
22
        Fake.connect = Fake.Connect;return Fake;
23
    end
24
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
25
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
26
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
27
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
28
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
29
    local function TriggerEvent(self,Event,...)
30
        local Trigger = Mouse[Event]
31
        if Trigger and Trigger.fakeEvent and Trigger.Connections then
32
            for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
33
        end
34
    end
35
    Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
36
    Event.OnServerEvent:Connect(function(FiredBy,Input)
37
        if FiredBy.Name ~= owner.Name then return end
38
        if Input.MouseEvent then
39
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
40
        else
41
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
42
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
43
            for _,Action in pairs(ContextActionService.Actions) do
44
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
45
            end
46
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
47
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
48
        end
49
    end)
50
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
51
    Event.Parent = NLS([[
52
        local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
53
        local Input = function(Input,gameProcessedEvent)
54
            if gameProcessedEvent then return end
55
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
56
        end
57
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
58
        local Hit,Target
59
        while wait(1/30) do
60
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
61
                Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
62
            end
63
        end
64
    ]],owner.Character)
65
end
66
RealGame = game;game = setmetatable({},{
67
    __index = function (self,Index)
68
        local Sandbox = function (Thing)
69
            if Thing:IsA("Player") then
70
                local RealPlayer = Thing
71
                return setmetatable({},{
72
                    __index = function (self,Index)
73
                        local Type = type(RealPlayer[Index])
74
                        if Type == "function" then
75
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
76
                                return function (self)return InternalData["Mouse"] end
77
                            end
78
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
79
                        end
80
                        return RealPlayer[Index]
81
                    end;
82
                    __tostring = function(self) return RealPlayer.Name end
83
                })
84
            end
85
        end
86
        if RealGame[Index] then
87
            local Type = type(RealGame[Index])
88
            if Type == "function" then
89
                if Index:lower() == "getservice" or Index:lower() == "service" then
90
                    return function (self,Service)
91
                        local FakeServices = {
92
                            ["players"] = function()
93
                                return setmetatable({},{
94
                                    __index = function (self2,Index2)
95
                                        local RealService = RealGame:GetService(Service)
96
                                        local Type2 = type(Index2)
97
                                        if Type2 == "function" then
98
                                            return function (self,...) return RealService[Index2](RealService,...)end
99
                                        else
100
                                            if Index2:lower() == "localplayer" then return Sandbox(owner) end
101
                                            return RealService[Index2]
102
                                        end
103
                                    end;
104
                                    __tostring = function(self) return RealGame:GetService(Service).Name end
105
                                })
106
                            end;
107
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
108
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
109
                            ["runservice"] = function()
110
                                return setmetatable({},{
111
                                    __index = function(self2,Index2)
112
                                        local RealService = RealGame:GetService(Service)
113
                                        local Type2 = type(Index2)
114
                                        if Type2 == "function" then
115
                                            return function (self,...) return RealService[Index2](RealService,...) end
116
                                        else
117
                                            local RunServices = {
118
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
119
                                                ["renderstepped"] = function() return RealService["Stepped"] end
120
                                            }
121
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
122
                                            return RealService[Index2]
123
                                        end
124
                                    end
125
                                })
126
                            end
127
                        }
128
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
129
                        return RealGame:GetService(Service)
130
                    end
131
                end
132
                return function (self,...) return RealGame[Index](RealGame,...) end
133
            else
134
                if game:GetService(Index) then return game:GetService(Index) end
135
                return RealGame[Index]
136
            end
137
        end
138
        return nil
139
    end
140
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("running the script noob")
141
142
--//====================================================\\--
143
--||			   CREATED BY SHACKLUSTER
144
--\\====================================================//--
145
146
wait(0.2)
147
148
Player = game:GetService("Players").LocalPlayer
149
PlayerGui = Player.PlayerGui
150
Cam = workspace.CurrentCamera
151
Backpack = Player.Backpack
152
Character = Player.Character
153
Humanoid = Character.Humanoid
154
Mouse = Player:GetMouse()
155
RootPart = Character["HumanoidRootPart"]
156
Torso = Character["Torso"]
157
Head = Character["Head"]
158
RightArm = Character["Right Arm"]
159
LeftArm = Character["Left Arm"]
160
RightLeg = Character["Right Leg"]
161
LeftLeg = Character["Left Leg"]
162
RootJoint = RootPart["RootJoint"]
163
Neck = Torso["Neck"]
164
RightShoulder = Torso["Right Shoulder"]
165
LeftShoulder = Torso["Left Shoulder"]
166
RightHip = Torso["Right Hip"]
167
LeftHip = Torso["Left Hip"]
168
169
IT = Instance.new
170
CF = CFrame.new
171
VT = Vector3.new
172
RAD = math.rad
173
C3 = Color3.new
174
UD2 = UDim2.new
175
BRICKC = BrickColor.new
176
ANGLES = CFrame.Angles
177
EULER = CFrame.fromEulerAnglesXYZ
178
COS = math.cos
179
ACOS = math.acos
180
SIN = math.sin
181
ASIN = math.asin
182
ABS = math.abs
183
MRANDOM = math.random
184
FLOOR = math.floor
185
186
--//=================================\\
187
--|| 	      USEFUL VALUES
188
--\\=================================//
189
190
Animation_Speed = 3
191
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
192
local Speed = 16
193
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
194
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
195
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
196
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
197
local DAMAGEMULTIPLIER = 1
198
local ANIM = "Idle"
199
local ATTACK = false
200
local EQUIPPED = false
201
local HOLD = false
202
local COMBO = 1
203
local Rooted = false
204
local SINE = 0
205
local KEYHOLD = false
206
local CHANGE = 2 / Animation_Speed
207
local WALKINGANIM = false
208
local VALUE1 = false
209
local VALUE2 = false
210
local ROBLOXIDLEANIMATION = IT("Animation")
211
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
212
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
213
--ROBLOXIDLEANIMATION.Parent = Humanoid
214
local WEAPONGUI = IT("ScreenGui", PlayerGui)
215
WEAPONGUI.Name = "Weapon GUI"
216
local Weapon = IT("Model")
217
Weapon.Name = "Adds"
218
local Effects = IT("Folder", Weapon)
219
Effects.Name = "Effects"
220
local ANIMATOR = Humanoid.Animator
221
local ANIMATE = Character.Animate
222
local UNANCHOR = true
223
local CYAN = BRICKC"Cyan".Color
224
local ICONS = {"167300717","413366101","839798346","413372165","413366777","132769874","99340890","413364594","64940934","99340699"}
225
226
--//=================================\\
227
--\\=================================//
228
229
230
--//=================================\\
231
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
232
--\\=================================//
233
234
ArtificialHB = Instance.new("BindableEvent", script)
235
ArtificialHB.Name = "ArtificialHB"
236
237
script:WaitForChild("ArtificialHB")
238
239
frame = Frame_Speed
240
tf = 0
241
allowframeloss = false
242
tossremainder = false
243
lastframe = tick()
244
script.ArtificialHB:Fire()
245
246
game:GetService("RunService").Heartbeat:connect(function(s, p)
247
	tf = tf + s
248
	if tf >= frame then
249
		if allowframeloss then
250
			script.ArtificialHB:Fire()
251
			lastframe = tick()
252
		else
253
			for i = 1, math.floor(tf / frame) do
254
				script.ArtificialHB:Fire()
255
			end
256
		lastframe = tick()
257
		end
258
		if tossremainder then
259
			tf = 0
260
		else
261
			tf = tf - frame * math.floor(tf / frame)
262
		end
263
	end
264
end)
265
266
--//=================================\\
267
--\\=================================//
268
269
--//=================================\\
270
--|| 	      SOME FUNCTIONS
271
--\\=================================//
272
273
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
274
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
275
end
276
277
function PositiveAngle(NUMBER)
278
	if NUMBER >= 0 then
279
		NUMBER = 0
280
	end
281
	return NUMBER
282
end
283
284
function NegativeAngle(NUMBER)
285
	if NUMBER <= 0 then
286
		NUMBER = 0
287
	end
288
	return NUMBER
289
end
290
291
function Swait(NUMBER)
292
	if NUMBER == 0 or NUMBER == nil then
293
		ArtificialHB.Event:wait()
294
	else
295
		for i = 1, NUMBER do
296
			ArtificialHB.Event:wait()
297
		end
298
	end
299
end
300
301
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
302
	local NEWMESH = IT(MESH)
303
	if MESH == "SpecialMesh" then
304
		NEWMESH.MeshType = MESHTYPE
305
		if MESHID ~= "nil" and MESHID ~= "" then
306
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
307
		end
308
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
309
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
310
		end
311
	end
312
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
313
	NEWMESH.Scale = SCALE
314
	NEWMESH.Parent = PARENT
315
	return NEWMESH
316
end
317
318
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
319
	local NEWPART = IT("Part")
320
	NEWPART.formFactor = FORMFACTOR
321
	NEWPART.Reflectance = REFLECTANCE
322
	NEWPART.Transparency = TRANSPARENCY
323
	NEWPART.CanCollide = false
324
	NEWPART.Locked = true
325
	NEWPART.Anchored = true
326
	if ANCHOR == false then
327
		NEWPART.Anchored = false
328
	end
329
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
330
	NEWPART.Name = NAME
331
	NEWPART.Size = SIZE
332
	NEWPART.Position = Torso.Position
333
	NEWPART.Material = MATERIAL
334
	NEWPART:BreakJoints()
335
	NEWPART.Parent = PARENT
336
	return NEWPART
337
end
338
339
	local function weldBetween(a, b)
340
	    local weldd = Instance.new("ManualWeld")
341
	    weldd.Part0 = a
342
	    weldd.Part1 = b
343
	    weldd.C0 = CFrame.new()
344
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
345
	    weldd.Parent = a
346
	    return weldd
347
	end
348
349
350
function QuaternionFromCFrame(cf)
351
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
352
	local trace = m00 + m11 + m22
353
	if trace > 0 then 
354
		local s = math.sqrt(1 + trace)
355
		local recip = 0.5 / s
356
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
357
	else
358
		local i = 0
359
		if m11 > m00 then
360
			i = 1
361
		end
362
		if m22 > (i == 0 and m00 or m11) then
363
			i = 2
364
		end
365
		if i == 0 then
366
			local s = math.sqrt(m00 - m11 - m22 + 1)
367
			local recip = 0.5 / s
368
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
369
		elseif i == 1 then
370
			local s = math.sqrt(m11 - m22 - m00 + 1)
371
			local recip = 0.5 / s
372
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
373
		elseif i == 2 then
374
			local s = math.sqrt(m22 - m00 - m11 + 1)
375
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
376
		end
377
	end
378
end
379
 
380
function QuaternionToCFrame(px, py, pz, x, y, z, w)
381
	local xs, ys, zs = x + x, y + y, z + z
382
	local wx, wy, wz = w * xs, w * ys, w * zs
383
	local xx = x * xs
384
	local xy = x * ys
385
	local xz = x * zs
386
	local yy = y * ys
387
	local yz = y * zs
388
	local zz = z * zs
389
	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))
390
end
391
 
392
function QuaternionSlerp(a, b, t)
393
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
394
	local startInterp, finishInterp;
395
	if cosTheta >= 0.0001 then
396
		if (1 - cosTheta) > 0.0001 then
397
			local theta = ACOS(cosTheta)
398
			local invSinTheta = 1 / SIN(theta)
399
			startInterp = SIN((1 - t) * theta) * invSinTheta
400
			finishInterp = SIN(t * theta) * invSinTheta
401
		else
402
			startInterp = 1 - t
403
			finishInterp = t
404
		end
405
	else
406
		if (1 + cosTheta) > 0.0001 then
407
			local theta = ACOS(-cosTheta)
408
			local invSinTheta = 1 / SIN(theta)
409
			startInterp = SIN((t - 1) * theta) * invSinTheta
410
			finishInterp = SIN(t * theta) * invSinTheta
411
		else
412
			startInterp = t - 1
413
			finishInterp = t
414
		end
415
	end
416
	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
417
end
418
419
function Clerp(a, b, t)
420
	local qa = {QuaternionFromCFrame(a)}
421
	local qb = {QuaternionFromCFrame(b)}
422
	local ax, ay, az = a.x, a.y, a.z
423
	local bx, by, bz = b.x, b.y, b.z
424
	local _t = 1 - t
425
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
426
end
427
428
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
429
	local frame = IT("Frame")
430
	frame.BackgroundTransparency = TRANSPARENCY
431
	frame.BorderSizePixel = BORDERSIZEPIXEL
432
	frame.Position = POSITION
433
	frame.Size = SIZE
434
	frame.BackgroundColor3 = COLOR
435
	frame.BorderColor3 = BORDERCOLOR
436
	frame.Name = NAME
437
	frame.Parent = PARENT
438
	return frame
439
end
440
441
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
442
	local label = IT("TextLabel")
443
	label.BackgroundTransparency = 1
444
	label.Size = UD2(1, 0, 1, 0)
445
	label.Position = UD2(0, 0, 0, 0)
446
	label.TextColor3 = TEXTCOLOR
447
	label.TextStrokeTransparency = STROKETRANSPARENCY
448
	label.TextTransparency = TRANSPARENCY
449
	label.FontSize = TEXTFONTSIZE
450
	label.Font = TEXTFONT
451
	label.BorderSizePixel = BORDERSIZEPIXEL
452
	label.TextScaled = false
453
	label.Text = TEXT
454
	label.Name = NAME
455
	label.Parent = PARENT
456
	return label
457
end
458
459
function NoOutlines(PART)
460
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
461
end
462
463
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
464
	local NEWWELD = IT(TYPE)
465
	NEWWELD.Part0 = PART0
466
	NEWWELD.Part1 = PART1
467
	NEWWELD.C0 = C0
468
	NEWWELD.C1 = C1
469
	NEWWELD.Parent = PARENT
470
	return NEWWELD
471
end
472
473
local S = IT("Sound")
474
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
475
	local NEWSOUND = nil
476
	coroutine.resume(coroutine.create(function()
477
		NEWSOUND = S:Clone()
478
		NEWSOUND.Parent = PARENT
479
		NEWSOUND.Volume = VOLUME
480
		NEWSOUND.Pitch = PITCH
481
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
482
		NEWSOUND:play()
483
		if DOESLOOP == true then
484
			NEWSOUND.Looped = true
485
		else
486
			repeat Swait() until NEWSOUND.Playing == false
487
			NEWSOUND:remove()
488
		end
489
	end))
490
	return NEWSOUND
491
end
492
493
function CFrameFromTopBack(at, top, back)
494
	local right = top:Cross(back)
495
	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)
496
end
497
498
--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})
499
function WACKYEFFECT(Table)
500
	local TYPE = (Table.EffectType or "Sphere")
501
	local SIZE = (Table.Size or VT(1,1,1))
502
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
503
	local TRANSPARENCY = (Table.Transparency or 0)
504
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
505
	local CFRAME = (Table.CFrame or Torso.CFrame)
506
	local MOVEDIRECTION = (Table.MoveToPos or nil)
507
	local ROTATION1 = (Table.RotationX or 0)
508
	local ROTATION2 = (Table.RotationY or 0)
509
	local ROTATION3 = (Table.RotationZ or 0)
510
	local MATERIAL = (Table.Material or "Neon")
511
	local COLOR = (Table.Color or C3(1,1,1))
512
	local TIME = (Table.Time or 45)
513
	local SOUNDID = (Table.SoundID or nil)
514
	local SOUNDPITCH = (Table.SoundPitch or nil)
515
	local SOUNDVOLUME = (Table.SoundVolume or nil)
516
	coroutine.resume(coroutine.create(function()
517
		local PLAYSSOUND = false
518
		local SOUND = nil
519
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
520
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
521
			PLAYSSOUND = true
522
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
523
		end
524
		EFFECT.Color = COLOR
525
		local MSH = nil
526
		if TYPE == "Sphere" then
527
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
528
		elseif TYPE == "Block" then
529
			MSH = IT("BlockMesh",EFFECT)
530
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
531
		elseif TYPE == "Wave" then
532
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
533
		elseif TYPE == "Ring" then
534
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.01), VT(0,0,0))
535
		elseif TYPE == "Slash" then
536
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
537
		elseif TYPE == "Round Slash" then
538
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
539
		elseif TYPE == "Swirl" then
540
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
541
		elseif TYPE == "Skull" then
542
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
543
		elseif TYPE == "Crystal" then
544
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
545
		elseif TYPE == "Box" then
546
			MSH = IT("BlockMesh",EFFECT)
547
			MSH.Scale = SIZE
548
		end
549
		if MSH ~= nil then
550
			local MOVESPEED = nil
551
			if MOVEDIRECTION ~= nil then
552
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
553
			end
554
			local GROWTH = SIZE - ENDSIZE
555
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
556
			if TYPE == "Block" then
557
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
558
			else
559
				EFFECT.CFrame = CFRAME
560
			end
561
			for LOOP = 1, TIME do
562
				Swait()
563
				MSH.Scale = MSH.Scale - GROWTH/TIME
564
				if TYPE == "Wave" then
565
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
566
				end
567
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
568
				if TYPE == "Block" then
569
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
570
				else
571
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
572
				end
573
				if MOVEDIRECTION ~= nil then
574
					local ORI = EFFECT.Orientation
575
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
576
					EFFECT.Orientation = ORI
577
				end
578
			end
579
			if PLAYSSOUND == false then
580
				EFFECT:remove()
581
			else
582
				repeat Swait() until SOUND.Playing == false
583
				EFFECT:remove()
584
			end
585
		else
586
			if PLAYSSOUND == false then
587
				EFFECT:remove()
588
			else
589
				repeat Swait() until SOUND.Playing == false
590
				EFFECT:remove()
591
			end
592
		end
593
	end))
594
end
595
596
function MakeForm(PART,TYPE)
597
	if TYPE == "Cyl" then
598
		local MSH = IT("CylinderMesh",PART)
599
	elseif TYPE == "Ball" then
600
		local MSH = IT("SpecialMesh",PART)
601
		MSH.MeshType = "Sphere"
602
	elseif TYPE == "Wedge" then
603
		local MSH = IT("SpecialMesh",PART)
604
		MSH.MeshType = "Wedge"
605
	end
606
end
607
608
Debris = game:GetService("Debris")
609
610
function CastProperRay(StartPos, EndPos, Distance, Ignore)
611
	local DIRECTION = CF(StartPos,EndPos).lookVector
612
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
613
end
614
615
function turnto(position)
616
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
617
end
618
619
--//=================================\\
620
--||	     WEAPON CREATION
621
--\\=================================//
622
623
RightArm:remove()
624
LeftArm:remove()
625
RightLeg:remove()
626
LeftLeg:remove()
627
Humanoid.HipHeight = 6
628
Head:ClearAllChildren()
629
Head.Transparency = 1
630
Torso.Transparency = 1
631
632
local BOX = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "BOX", VT(2,2,1),false)
633
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, BOX, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
634
local BOX = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "BOX", VT(1.6,1.6,1.5),false)
635
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, BOX, CF(0,0,0.5) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
636
local BOX = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "BOX", VT(2,0.2,0.5),false)
637
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, BOX, CF(0,0.9,-0.5) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
638
local BOX = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "BOX", VT(2,0.2,0.5),false)
639
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, BOX, CF(0,-0.9,-0.5) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
640
local BOX = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "BOX", VT(0.2,1.8,0.5),false)
641
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, BOX, CF(0.9,0,-0.5) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
642
local BOX = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "BOX", VT(0.2,1.8,0.5),false)
643
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, BOX, CF(-0.9,0,-0.5) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
644
645
local SCREEN = CreatePart(3, Weapon, "Neon", 0, 0, "Bright blue", "SCREEN", VT(1.8,1.8,0.45),false)
646
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, SCREEN, CF(0,0,-0.5) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
647
local Eye1 = CreatePart(3, Weapon, "Neon", 0, 0, "Cyan", "Eyeball", VT(0.3,0.7,0.2),false)
648
MakeForm(Eye1,"Ball")
649
Eye1.Color = C3(0,0,0)
650
CreateWeldOrSnapOrMotor("Weld", SCREEN, SCREEN, Eye1, CF(0.3,0.2,-0.2) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
651
local Eye2 = CreatePart(3, Weapon, "Neon", 0, 0, "Cyan", "Eyeball", VT(0.3,0.7,0.2),false)
652
MakeForm(Eye2,"Ball")
653
Eye2.Color = C3(0,0,0)
654
CreateWeldOrSnapOrMotor("Weld", SCREEN, SCREEN, Eye2, CF(-0.3,0.2,-0.2) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
655
656
local TIE = CreatePart(3, Weapon, "Neon", 0, 0, "Cyan", "TIE", VT(0,0,0),false)
657
local TIEWELD = CreateWeldOrSnapOrMotor("Weld", Torso, Torso, TIE, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,1.8,0.65))
658
CreateMesh("SpecialMesh", TIE, "FileMesh", "28463033", "28463022", VT(1,1,1)*1.5, VT(0,0,0))
659
660
for _, c in pairs(Weapon:GetChildren()) do
661
	if c.ClassName == "Part" then
662
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
663
	end
664
end
665
666
local SKILLTEXTCOLOR = C3(0,0,0)
667
local SKILLFONT = "SciFi"
668
local SKILLTEXTSIZE = 6
669
670
Weapon.Parent = Character
671
672
Humanoid.Died:connect(function()
673
	ATTACK = true
674
end)
675
676
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
677
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
678
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
679
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.75, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
680
681
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Chuck", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Text 1")
682
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Suck", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Text 2")
683
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Disable", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Text 3")
684
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Warp", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 1, "Text 4")
685
686
--//=================================\\
687
--||	     DAMAGE FUNCTIONS
688
--\\=================================//
689
690
function StatLabel(CFRAME, TEXT, COLOR)
691
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
692
	STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
693
	local BODYGYRO = IT("BodyGyro", STATPART)
694
	game:GetService("Debris"):AddItem(STATPART ,5)
695
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
696
	BILLBOARDGUI.Adornee = STATPART
697
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
698
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
699
	BILLBOARDGUI.AlwaysOnTop = false
700
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
701
	TEXTLABEL.BackgroundTransparency = 1
702
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
703
	TEXTLABEL.Text = TEXT
704
	TEXTLABEL.Font = SKILLFONT
705
	TEXTLABEL.FontSize="Size42"
706
	TEXTLABEL.TextColor3 = COLOR
707
	TEXTLABEL.TextStrokeTransparency = 0
708
	TEXTLABEL.TextScaled = true
709
	TEXTLABEL.TextWrapped = true
710
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
711
		for i = 1, 50 do
712
			Swait()
713
			STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
714
			TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
715
			TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
716
		end
717
		THEPART.Parent = nil
718
	end),STATPART, TEXTLABEL)
719
end
720
721
--//=================================\\
722
--||			DAMAGING
723
--\\=================================//
724
725
function ApplyDamage(Humanoid,Damage,CritRate,CritMultiplier)
726
	if Humanoid.MaxHealth == math.huge then
727
		Humanoid.Parent:BreakJoints()
728
		local TORS = Humanoid.Parent:FindFirstChild("Torso") or Humanoid.Parent:FindFirstChild("UpperTorso")
729
			local REMAIN = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Idk lol", VT(3,3,3),false)
730
			REMAIN.CFrame = TORS.CFrame
731
			REMAIN.CanCollide = true
732
			local GUI = Instance.new("BillboardGui",REMAIN)
733
			GUI.Size = UDim2.new(3,0,3,0)
734
			GUI.Adornee = REMAIN
735
			local GUI2 = IT("ImageLabel",GUI)
736
			GUI2.BackgroundTransparency = 1
737
			GUI2.BorderSizePixel = 0
738
			GUI2.Size = UDim2.new(1,0,1,0)
739
			GUI2.SizeConstraint = "RelativeYY"
740
			GUI2.Image = "http://www.roblox.com/asset/?id=167300717"
741
			CreateSound("681582832", REMAIN, 3, 1, false)
742
			Debris:AddItem(REMAIN,15)
743
		if TORS then
744
		end
745
		Humanoid.Parent:remove()
746
	else
747
		local defence = Instance.new("BoolValue",Humanoid.Parent)
748
		defence.Name = ("HitBy"..Player.Name)
749
		game:GetService("Debris"):AddItem(defence, 0.001)
750
		Damage = Damage * DAMAGEMULTIPLIER
751
		if Humanoid.Health ~= 0 then
752
			local CritChance = MRANDOM(1,100)
753
			if CritChance < CritRate + 1 then
754
				Damage = Damage*CritMultiplier
755
			end
756
			if Damage > Humanoid.Health then
757
				Damage = math.ceil(Humanoid.Health)
758
				if Damage == 0 then
759
					Damage = 0.1
760
				end
761
			end
762
			Humanoid.Health = Humanoid.Health - Damage
763
			if Humanoid.Parent:FindFirstChild("Head") then
764
				if CritChance < CritRate + 1 then
765
					StatLabel(Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), "CRIT//"..Damage, C3(1, 0, 0))
766
				else
767
					StatLabel(Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), Damage, C3(0, 0, 0))
768
				end
769
			end
770
			if Humanoid.Health == 0 or Humanoid.MaxHealth == "inf" then
771
				local TORS = Humanoid.Parent:FindFirstChild("Torso") or Humanoid.Parent:FindFirstChild("UpperTorso")
772
					local REMAIN = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Idk lol", VT(3,3,3),false)
773
					REMAIN.CFrame = TORS.CFrame
774
					REMAIN.CanCollide = true
775
					local GUI = Instance.new("BillboardGui",REMAIN)
776
					GUI.Size = UDim2.new(3,0,3,0)
777
					GUI.Adornee = REMAIN
778
					local GUI2 = IT("ImageLabel",GUI)
779
					GUI2.BackgroundTransparency = 1
780
					GUI2.BorderSizePixel = 0
781
					GUI2.Size = UDim2.new(1,0,1,0)
782
					GUI2.SizeConstraint = "RelativeYY"
783
					GUI2.Image = "http://www.roblox.com/asset/?id=167300717"
784
					CreateSound("681582832", REMAIN, 3, 1, false)
785
					Debris:AddItem(REMAIN,15)
786
				if TORS then
787
				end
788
				Humanoid.Parent:remove()
789
			end
790
		end
791
	end
792
end
793
794
--//=================================\\
795
--||	ATTACK FUNCTIONS AND STUFF
796
--\\=================================//
797
798
function Chuck()
799
	ATTACK = true
800
	Rooted = false
801
	CreateSound("11900833", SCREEN, 3, 1, false)
802
	coroutine.resume(coroutine.create(function()
803
		local TOCHUCK = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Idk lol", VT(1,1,1))
804
		TOCHUCK.CFrame = CF(SCREEN.Position,Mouse.Hit.p)
805
		local GUI = Instance.new("BillboardGui",TOCHUCK)
806
		GUI.Size = UDim2.new(1,0,1,0)
807
		GUI.Adornee = TOCHUCK
808
		local GUI2 = IT("ImageLabel",GUI)
809
		GUI2.BackgroundTransparency = 1
810
		GUI2.BorderSizePixel = 0
811
		GUI2.Size = UDim2.new(1,0,1,0)
812
		GUI2.SizeConstraint = "RelativeYY"
813
		GUI2.Image = "http://www.roblox.com/asset/?id="..ICONS[MRANDOM(1,#ICONS)]
814
		for i = 1, 100 do
815
			Swait()
816
			TOCHUCK.CFrame = TOCHUCK.CFrame*CF(0,0,-1)
817
			local HIT = Raycast(TOCHUCK.Position, TOCHUCK.CFrame.lookVector, 1.5, Character)
818
			if HIT ~= nil then
819
				if HIT.Parent.ClassName == "Model" then
820
					if HIT.Parent:FindFirstChildOfClass("Humanoid") then
821
						CreateSound("131237241", HIT, 3, 1, false)
822
						ApplyDamage(HIT.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(7,14),4,3)
823
						local bv = Instance.new("BodyVelocity") 
824
						bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
825
						bv.velocity = CF(TOCHUCK.Position,HIT.Position).lookVector*15
826
						bv.Parent = HIT
827
						Debris:AddItem(bv,0.1)
828
						local bv = Instance.new("BodyVelocity") 
829
						bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
830
						bv.velocity = CF(HIT.Position,TOCHUCK.Position).lookVector*15
831
						bv.Parent = TOCHUCK
832
						Debris:AddItem(bv,0.1)
833
					end
834
				end
835
				break
836
			end
837
			TOCHUCK.CFrame = TOCHUCK.CFrame*CF(0,0,-1)
838
			local HIT = Raycast(TOCHUCK.Position, TOCHUCK.CFrame.lookVector, 1.5, Character)
839
			if HIT ~= nil then
840
				if HIT.Parent.ClassName == "Model" then
841
					if HIT.Parent:FindFirstChildOfClass("Humanoid") then
842
						CreateSound("131237241", HIT, 3, 1, false)
843
						ApplyDamage(HIT.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(7,14),4,3)
844
						local bv = Instance.new("BodyVelocity") 
845
						bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
846
						bv.velocity = CF(TOCHUCK.Position,HIT.Position).lookVector*15
847
						bv.Parent = HIT
848
						Debris:AddItem(bv,0.1)
849
						local bv = Instance.new("BodyVelocity") 
850
						bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
851
						bv.velocity = CF(HIT.Position,TOCHUCK.Position).lookVector*15
852
						bv.Parent = TOCHUCK
853
						Debris:AddItem(bv,0.1)
854
					end
855
				end
856
				break
857
			end
858
		end
859
		TOCHUCK.CanCollide = true
860
		TOCHUCK.Anchored = false
861
		Debris:AddItem(TOCHUCK,5)
862
	end))
863
	for i=0, 0.2, 0.1 / Animation_Speed do
864
		Swait()
865
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
866
		TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(-5), RAD(0), RAD(0))* CF(0,0,-0.1), 1 / Animation_Speed)
867
	end
868
	ATTACK = false
869
	Rooted = false
870
end
871
872
function Suck()
873
	local target = nil
874
	local targettorso = nil
875
	if Mouse.Target ~= nil then
876
		if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
877
			target = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
878
			targettorso = Mouse.Target.Parent:FindFirstChild("HumanoidRootPart") or Mouse.Target.Parent:FindFirstChild("Torso") or Mouse.Target.Parent:FindFirstChild("UpperTorso")
879
		end
880
	end
881
	if target ~= nil then
882
		VALUE1 = true
883
		CreateSound("131228548", SCREEN, 10, 1, false)
884
		targettorso.Anchored = true
885
		local GYRO = IT("BodyGyro",RootPart)
886
		GYRO.D = 100
887
		GYRO.P = 2000
888
		GYRO.MaxTorque = VT(0,999999999999999999,0)
889
		GYRO.cframe = CF(RootPart.Position,targettorso.Position)
890
		wait(1.5)
891
		GYRO:remove()
892
		coroutine.resume(coroutine.create(function()
893
			local DISTANCE = 10
894
			local REEEE = CreateSound("1278710301", targettorso, 5, 1, true)
895
			repeat
896
				Swait()
897
				targettorso.CFrame = CF(targettorso.Position,RootPart.Position)*CF(0,0,-1)
898
				DISTANCE = (targettorso.Position - RootPart.Position).Magnitude
899
				targettorso.Anchored = true
900
				target.PlatformStand = true
901
			until DISTANCE < 5
902
			REEEE.Looped = false
903
			targettorso.Anchored = false
904
			wait(0.5)
905
			target.PlatformStand = false
906
		end))
907
		VALUE1 = false
908
	end
909
end
910
911
function Disable()
912
	local target = nil
913
	local targettorso = nil
914
	if Mouse.Target ~= nil then
915
		if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
916
			target = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
917
			targettorso = Mouse.Target.Parent:FindFirstChild("HumanoidRootPart") or Mouse.Target.Parent:FindFirstChild("Torso") or Mouse.Target.Parent:FindFirstChild("UpperTorso")
918
		end
919
	end
920
	if target ~= nil then
921
		VALUE1 = true
922
		targettorso.Anchored = true
923
		CreateSound("191456748", SCREEN, 10, 1, false)
924
		local GYRO = IT("BodyGyro",RootPart)
925
		GYRO.D = 100
926
		GYRO.P = 2000
927
		GYRO.MaxTorque = VT(0,999999999999999999,0)
928
		GYRO.cframe = CF(RootPart.Position,targettorso.Position)
929
		wait(1)
930
		WACKYEFFECT({Time = 75, EffectType = "Ring", Size = VT(0.01,0.01,0.01), Size2 = VT(5,5,0.01), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,-2), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = 314970790, SoundPitch = 1, SoundVolume = 3})
931
		GYRO:remove()
932
		targettorso.CFrame = CF(targettorso.Position,RootPart.Position)
933
		targettorso.Anchored = false
934
		for _, c in pairs(target.Parent:GetChildren()) do
935
			if c.ClassName == "LocalScript" then
936
				local TOCHUCK = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Idk lol", VT(1,1,1))
937
				TOCHUCK.CFrame = targettorso.CFrame
938
				local GUI = Instance.new("BillboardGui",TOCHUCK)
939
				GUI.Size = UDim2.new(1,0,1,0)
940
				GUI.Adornee = TOCHUCK
941
				local GUI2 = IT("ImageLabel",GUI)
942
				GUI2.BackgroundTransparency = 1
943
				GUI2.BorderSizePixel = 0
944
				GUI2.Size = UDim2.new(1,0,1,0)
945
				GUI2.SizeConstraint = "RelativeYY"
946
				GUI2.Image = "http://www.roblox.com/asset/?id=99340858"
947
				c.Disabled = true
948
				c.Parent = TOCHUCK
949
				coroutine.resume(coroutine.create(function()
950
					wait()
951
					TOCHUCK.Anchored = false
952
					TOCHUCK.CanCollide = true
953
				end))
954
				coroutine.resume(coroutine.create(function()
955
					wait(MRANDOM(3,6))
956
					local DISTANCE = 10
957
					TOCHUCK.Anchored = true
958
					TOCHUCK.CanCollide = false
959
					repeat
960
						Swait()
961
						TOCHUCK.CFrame = CF(TOCHUCK.Position,RootPart.Position)*CF(0,0,-1)
962
						DISTANCE = (TOCHUCK.Position - RootPart.Position).Magnitude
963
					until DISTANCE < 2
964
					TOCHUCK:remove()
965
				end))
966
			elseif c.ClassName == "Script" then
967
				local TOCHUCK = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Idk lol", VT(1,1,1))
968
				TOCHUCK.CFrame = targettorso.CFrame
969
				local GUI = Instance.new("BillboardGui",TOCHUCK)
970
				GUI.Size = UDim2.new(1,0,1,0)
971
				GUI.Adornee = TOCHUCK
972
				local GUI2 = IT("ImageLabel",GUI)
973
				GUI2.BackgroundTransparency = 1
974
				GUI2.BorderSizePixel = 0
975
				GUI2.Size = UDim2.new(1,0,1,0)
976
				GUI2.SizeConstraint = "RelativeYY"
977
				GUI2.Image = "http://www.roblox.com/asset/?id=99340890"
978
				c.Disabled = true
979
				c.Parent = TOCHUCK
980
				coroutine.resume(coroutine.create(function()
981
					wait()
982
					TOCHUCK.Anchored = false
983
					TOCHUCK.CanCollide = true
984
				end))
985
				coroutine.resume(coroutine.create(function()
986
					wait(MRANDOM(3,6))
987
					local DISTANCE = 10
988
					TOCHUCK.Anchored = true
989
					TOCHUCK.CanCollide = false
990
					repeat
991
						Swait()
992
						TOCHUCK.CFrame = CF(TOCHUCK.Position,RootPart.Position)*CF(0,0,-1)
993
						DISTANCE = (TOCHUCK.Position - RootPart.Position).Magnitude
994
					until DISTANCE < 1.2
995
					TOCHUCK:remove()
996
				end))
997
			end
998
		end
999
		target.PlatformStand = true
1000
		CreateSound("330010786", targettorso, 10, 1, false)
1001
		local bv = Instance.new("BodyVelocity") 
1002
		bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1003
		bv.velocity = CF(VT(RootPart.Position.X,targettorso.Position.Y-10,RootPart.Position.Z),targettorso.Position).lookVector*350
1004
		bv.Parent = targettorso
1005
		Debris:AddItem(bv,0.05)
1006
		VALUE1 = false
1007
	end
1008
end
1009
1010
function Warp()
1011
	local FRAME = RootPart.Position
1012
	for i = 1, 6 do
1013
		WACKYEFFECT({Time = 15, EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,35,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(Torso.Position)*ANGLES(RAD(0),RAD(i*(360/5)),RAD(0))*CF(6,0,0), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = BRICKC"Cyan".Color, SoundID = 1177785010, SoundPitch = 1, SoundVolume = 2})	
1014
	end
1015
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0),VT(FRAME.X,RootPart.Position.Y,FRAME.Z))
1016
	for i = 1, 6 do
1017
		WACKYEFFECT({Time = 15, EffectType = "Box", Size = VT(2,0,2), Size2 = VT(0,35,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CF(Torso.Position)*ANGLES(RAD(0),RAD(i*(360/5)),RAD(0))*CF(6,0,0), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = BRICKC"Cyan".Color, SoundID = 1177785010, SoundPitch = 1, SoundVolume = 2})	
1018
	end
1019
end
1020
1021
function HavingFun()
1022
	ATTACK = true
1023
	VALUE2 = true
1024
	Speed = 65
1025
	local SONGS = {329896322,162986891,1027314531,171131642,248967176,922850176,966409302,255023933}
1026
	local PISS = CreateSound(SONGS[MRANDOM(1,#SONGS)], SCREEN, 10, 1, true)
1027
	repeat
1028
		for i = 1, 5 do
1029
			Swait()
1030
			PISS.Parent = SCREEN
1031
			SCREEN.Color = CYAN
1032
			CYAN = C3(MRANDOM(0,255)/255,MRANDOM(0,255)/255,MRANDOM(0,255)/255)
1033
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
1034
			TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(-5), RAD(0), RAD(0)) * CF(0,0,-0.1), 1 / Animation_Speed)
1035
		end
1036
		for i = 1, 5 do
1037
			Swait()
1038
			PISS.Parent = SCREEN
1039
			SCREEN.Color = CYAN
1040
			CYAN = C3(MRANDOM(0,255)/255,MRANDOM(0,255)/255,MRANDOM(0,255)/255)
1041
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1042
			TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(15), RAD(0), RAD(0)) * CF(0,-0.1,0.2), 1 / Animation_Speed)
1043
		end
1044
		if MRANDOM(1,15) == 1 then
1045
			for i = 1, 15 do
1046
				Swait()
1047
				if VALUE2 == false then
1048
					break
1049
				end
1050
				PISS.Parent = SCREEN
1051
				SCREEN.Color = CYAN
1052
				CYAN = C3(MRANDOM(0,255)/255,MRANDOM(0,255)/255,MRANDOM(0,255)/255)
1053
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(i*18), RAD(0), RAD(0)), 1 / Animation_Speed)
1054
				TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(15), RAD(0), RAD(0)) * CF(0,-0.1,0.2), 1 / Animation_Speed)
1055
			end
1056
		end
1057
		if MRANDOM(1,15) == 1 then
1058
			for i = 1, 15 do
1059
				Swait()
1060
				if VALUE2 == false then
1061
					break
1062
				end
1063
				PISS.Parent = SCREEN
1064
				SCREEN.Color = CYAN
1065
				CYAN = C3(MRANDOM(0,255)/255,MRANDOM(0,255)/255,MRANDOM(0,255)/255)
1066
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(0), RAD(0), RAD(i*18)), 1 / Animation_Speed)
1067
				TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(15), RAD(0), RAD(0)) * CF(0,-0.1,0.2), 1 / Animation_Speed)
1068
			end
1069
		end
1070
		if MRANDOM(1,15) == 1 then
1071
			for i = 1, 15 do
1072
				Swait()
1073
				if VALUE2 == false then
1074
					break
1075
				end
1076
				PISS.Parent = SCREEN
1077
				SCREEN.Color = CYAN
1078
				CYAN = C3(MRANDOM(0,255)/255,MRANDOM(0,255)/255,MRANDOM(0,255)/255)
1079
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(0), RAD(i*18), RAD(0)), 1 / Animation_Speed)
1080
				TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(15), RAD(0), RAD(0)) * CF(0,-0.1,0.2), 1 / Animation_Speed)
1081
			end
1082
		end
1083
	until VALUE2 == false
1084
	Speed = 16
1085
	PISS:remove()
1086
	SCREEN.BrickColor = BRICKC"Bright blue"
1087
	CYAN = BRICKC"Cyan".Color
1088
	ATTACK = false
1089
end
1090
1091
--//=================================\\
1092
--||	  ASSIGN THINGS TO KEYS
1093
--\\=================================//
1094
1095
function KeyDown(Key)
1096
	KEYHOLD = true
1097
	if VALUE1 == false and ATTACK == false then
1098
		if Key == "z" then
1099
			Chuck()
1100
		end
1101
	
1102
		if Key == "b" then
1103
			Suck()
1104
		end
1105
	
1106
		if Key == "c" then
1107
			Disable()
1108
		end
1109
1110
		if Key == "v" then
1111
			Warp()
1112
		end
1113
1114
		if Key == "t" then
1115
			CreateSound("1395854043", Effects, 5, 1, false)
1116
		end
1117
	end
1118
	if (VALUE1 == false and ATTACK == false) or VALUE2 == true then
1119
		if Key == "q" then
1120
			if VALUE2 == false then
1121
				HavingFun()
1122
			elseif VALUE2 == true then
1123
				VALUE2 = false
1124
			end
1125
		end
1126
	end
1127
end
1128
1129
function KeyUp(Key)
1130
	KEYHOLD = false
1131
end
1132
1133
	Mouse.KeyDown:connect(function(NEWKEY)
1134
		KeyDown(NEWKEY)
1135
	end)
1136
	Mouse.KeyUp:connect(function(NEWKEY)
1137
		KeyUp(NEWKEY)
1138
	end)
1139
1140
--//=================================\\
1141
--\\=================================//
1142
1143
1144
function unanchor()
1145
	if UNANCHOR == true then
1146
		g = Character:GetChildren()
1147
		for i = 1, #g do
1148
			if g[i].ClassName == "Part" then
1149
				g[i].Anchored = false
1150
			end
1151
		end
1152
	end
1153
end
1154
1155
1156
--//=================================\\
1157
--||	WRAP THE WHOLE SCRIPT UP
1158
--\\=================================//
1159
1160
Humanoid.Changed:connect(function(Jump)
1161
	if Jump == "Jump" and (Disable_Jump == true) then
1162
		Humanoid.Jump = false
1163
	end
1164
end)
1165
1166
local LOOPED = 0
1167
1168
while true do
1169
	Swait()
1170
	script.Parent = WEAPONGUI
1171
	ANIMATE.Parent = nil
1172
	Character.Parent = workspace
1173
	Humanoid.Parent = Character
1174
	if Humanoid then
1175
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1176
		IDLEANIMATION:Play()
1177
	end
1178
	SINE = SINE + CHANGE
1179
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1180
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1181
	local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 8, Character)
1182
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1183
	if ATTACK == false then
1184
		if TORSOVELOCITY < 1 then
1185
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1186
			TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1187
		elseif TORSOVELOCITY > 1 then
1188
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 + 0.25 * COS(SINE / 15), 0 + 0.45 * COS(SINE / 20), 0 + 0.25 * COS(SINE / 24)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1189
			TIEWELD.C0 = Clerp(TIEWELD.C0, CF(0,0,0) * ANGLES(RAD(15), RAD(0), RAD(0)) * CF(0,-0.1,0.2), 1 / Animation_Speed)
1190
		end
1191
	end
1192
	unanchor()
1193
	Humanoid.MaxHealth = "inf"
1194
	Humanoid.Health = "inf"
1195
	if Rooted == false then
1196
		Disable_Jump = false
1197
		Humanoid.WalkSpeed = Speed
1198
	elseif Rooted == true then
1199
		Disable_Jump = true
1200
		Humanoid.WalkSpeed = 0
1201
	end
1202
	Head:ClearAllChildren()
1203
	Head.Transparency = 1
1204
	for _, c in pairs(Character:GetChildren()) do
1205
		if c.ClassName == "Part" then
1206
		elseif c.ClassName == "Shirt" or c.ClassName == "Pants" or c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
1207
			c:remove()
1208
		end
1209
	end
1210
	script.Parent = WEAPONGUI
1211
	Humanoid.Name = "Roblox_Studio"
1212
	LOOPED = LOOPED + 1
1213
	if LOOPED == 15 and HITFLOOR then
1214
		LOOPED = 0
1215
		WACKYEFFECT({EffectType = "Ring", Size = VT(0.01,0.01,0.01), Size2 = VT(0.5,0.5,0.01), Transparency = 0.5, Transparency2 = 1, CFrame = CF(HITPOS,HITPOS+NORMAL)*ANGLES(RAD(0),RAD(0),RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = CYAN, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1216
	end
1217
	if LOOPED > 15 then
1218
		LOOPED = 0
1219
	end
1220
end
1221
1222
--//=================================\\
1223
--\\=================================//
1224
1225
1226
1227
1228
1229
--//====================================================\\--
1230
--||			  		 END OF SCRIPT
1231
--\\====================================================//--