View difference between Paste ID: 0y8KVUeB and wHtkimnF
SHOW: | | - or go back to the newest paste.
1
print("jacktheboy654 made this")
2-
-- [ GlitchMaster ] --
2+
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3-
-- [ Cucumber Quest ] --
3+
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
    print("FE Compatibility code by Mokiros")
7
    script.Parent = Player.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,Connect=function(self,f)self.Function=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 and t.Function then
33
            t.Function(...)
34
        end
35
    end
36
    m.TrigEvent = te
37
    UIS.TrigEvent = te
38
 
39
    Event.OnServerEvent:Connect(function(plr,io)
40
        if plr~=Player then return end
41
        m.Target = io.Target
42
        m.Hit = io.Hit
43
        if not io.isMouse then
44
            local b = io.UserInputState == Enum.UserInputState.Begin
45
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
46
                return m:TrigEvent(b and "Button1Down" or "Button1Up")
47
            end
48
            for _,t in pairs(CAS.Actions) do
49
                for _,k in pairs(t.Keys) do
50
                    if k==io.KeyCode then
51
                        t.Function(t.Name,io.UserInputState,io)
52
                    end
53
                end
54
            end
55
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
56
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
57
        end
58
    end)
59
    Event.Parent = NLS([==[
60
    local Player = game:GetService("Players").LocalPlayer
61
    local Event = script:WaitForChild("UserInput_Event")
62
 
63
    local Mouse = Player:GetMouse()
64
    local UIS = game:GetService("UserInputService")
65
    local input = function(io,a)
66
        if a then return end
67
        --Since InputObject is a client-side instance, we create and pass table instead
68
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
69
    end
70
    UIS.InputBegan:Connect(input)
71
    UIS.InputEnded:Connect(input)
72
 
73
    local h,t
74
    --Give the server mouse data 30 times every second, but only if the values changed
75
    --If player is not moving their mouse, client won't fire events
76
    while wait(1/30) do
77
        if h~=Mouse.Hit or t~=Mouse.Target then
78
            h,t=Mouse.Hit,Mouse.Target
79
            Event:FireServer({isMouse=true,Target=t,Hit=h})
80
        end
81
    end]==],Player.Character)
82
    local _rg = game
83
    local function FakeService(t,RealService)
84
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
85
        return setmetatable(t,{
86
            __index = function(self,k)
87
                local s = rawget(self,"_RealService")
88
                if s then return s[k] end
89
            end,
90
            __newindex = function(self,k,v)
91
                local s = rawget(self,"_RealService")
92
                if s then s[k]=v end
93
            end,
94
        })
95
    end
96
    local g = FakeService({
97
        GetService = function(self,s)
98
            return self[s]
99
        end,
100
        Players = FakeService({
101
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
102
        },"Players"),
103
        UserInputService = FakeService(UIS,"UserInputService"),
104
        ContextActionService = FakeService(CAS,"ContextActionService"),
105
        RunService = FakeService({RenderStepped=game:GetService("RunService").Heartbeat},"RunService")
106
    },game)
107
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
108
    getmetatable(g).__index=function(self,s)
109
        return _rg:GetService(s) or typeof(_rg[s])=="function"
110
        and function(_,...)return _rg[s](_rg,...)end or _rg[s]
111
    end
112
    game = g
113
    owner = g.Players.LocalPlayer
114
end
115
116
117
wait()
118
LoudVolume = false
119
Music = true
120
script.Name = "GlitchMaster"
121
Player = game.Players.LocalPlayer
122
c = game.Players.LocalPlayer.Character
123
Head = c.Head
124
anim = c.Humanoid.Animator
125
rage = false
126
Battle = false
127
p = game.Players.LocalPlayer
128
Music = false
129
PhaseEnabled = true
130
TeleportEnabled = true
131
c.Archivable = true
132
WholeBody = c:clone()
133
local Effects = {}
134
attack = false
135
local attacking = false
136
vt = Vector3.new
137
bc = BrickColor.new
138
br = BrickColor.random
139
it = Instance.new
140
cf = CFrame.new
141
euler = CFrame.fromEulerAnglesXYZ
142
angles = CFrame.Angles
143
matr = math.random
144
mouse = Player:GetMouse()
145
146
147
local S10 = Instance.new("Sound") local S11 = Instance.new("ParticleEmitter")
148
149
 c.Humanoid.WalkSpeed = 24 c.Humanoid.JumpPower = 50
150
151
  RSC0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
152
  RSC1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
153
  LSC0 = CFrame.new(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
154
  LSC1 = CFrame.new(0.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
155
  RHC0 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
156
  RHC1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
157
  LHC0 = CFrame.new(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
158
  LHC1 = CFrame.new(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
159
  NC0 = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
160
  NC1 = CFrame.new(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
161
  RJC0 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
162
  RJC1 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
163
  RS = c.Torso:FindFirstChild("Right Shoulder")
164
  LS = c.Torso:FindFirstChild("Left Shoulder")
165
  RH = c.Torso:FindFirstChild("Right Hip")
166
  LH = c.Torso:FindFirstChild("Left Hip")
167
  RJ = c.HumanoidRootPart:FindFirstChild("RootJoint")
168
  N = c.Torso:FindFirstChild("Neck")
169
  cf = CFrame.new
170
  ang = CFrame.Angles
171
  rd = math.rad
172
  rd2 = math.random
173
174
function swait(num)
175
if num==0 or num==nil then
176
game:service'RunService'.Heartbeat:wait(0)
177
else
178
for i=0,num do
179
game:service'RunService'.Heartbeat:wait(0)
180
end
181
end
182
end
183
184
function AnimDis()
185
if c.Animate.Disabled == false then
186
c.Animate.Disabled = true
187
anim.Parent = nil
188
else
189
anim.Parent = c.Humanoid
190
c.Animate.Disabled = false
191
end
192
end
193
function lerpz(joint, prop, cfrmz, alp)
194
joint[prop] = joint[prop]:lerp(cfrmz, alp)
195
end
196
function resetlerp()
197
RJ.C0 = RJC0
198
RJ.C1 = RJC1
199
N.C0 = NC0
200
N.C1 = NC1
201
RS.C0 = RSC0
202
RS.C1 = RSC1
203
LS.C0 = LSC0
204
LS.C1 = LSC1
205
RH.C0 = RHC0
206
RH.C1 = RHC1
207
LH.C0 = LHC0
208
LH.C1 = LHC1
209
end
210
211
game:GetService('UserInputService').InputBegan:connect(function(InputObj)
212
if InputObj.KeyCode == Enum.KeyCode.Slash then
213
local finishEvent = nil
214
isTyping = true
215
finishEvent = game:GetService('UserInputService').InputBegan:connect(function(InputObj)
216
if InputObj.KeyCode == Enum.KeyCode.Return or InputObj.UserInputType == Enum.UserInputType.MouseButton1 then
217
isTyping = false
218
finishEvent:disconnect()
219
end
220
end)
221
end
222
end)
223
224
function VirusDestroy(H)
225
spawn(function()
226
for i = 1,1000 do
227
H.Transparency = H.Transparency + 1/1000
228
swait()
229
end
230
game.Debris:AddItem(H,3)H.Anchored = true
231
end)
232
end
233
234
function HitInfect(Part)
235
Part.Touched:connect(function(Hit)
236
if Hit.Size.Y <= 30 and Hit.Size.X <= 30 and Hit.Size.Z <= 30 and Hit.Transparency < 1 and Hit:findFirstChild("Glitch")== nil and Hit.Parent ~= c then
237
local S = S10:clone() S.Parent = Hit S.Volume = 0.1 S.SoundId = "rbxassetid://606774093" S.Looped = true S:Play()
238
Hit.Material = "Sand" Hit.BrickColor = BrickColor.new("Really black") HitInfect(Hit) VirusDestroy(Hit)
239
for i = 1,2 do
240
local tra = S11:clone() tra.Parent = Hit
241
tra.Texture = "rbxassetid://744949545"
242
tra.LightEmission = 0
243
if i == 1 then
244
tra.Color = ColorSequence.new(Color3.new(0/255,255/255,0/255))
245
tra.ZOffset = 2.5
246
else
247
tra.Color = ColorSequence.new(Color3.new(0/255,0/255,0/255))
248
tra.ZOffset = 3
249
end
250
local PSize = (Hit.Size.Y+Hit.Size.X+Hit.Size.Z)/20
251
tra.Lifetime = NumberRange.new(1,3)
252
tra.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.1,PSize,0),NumberSequenceKeypoint.new(1,0,0)})
253
tra.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
254
tra.Speed = NumberRange.new(0.5) tra.VelocitySpread = 360 tra.Name = "Glitch" 
255
tra.LockedToPart = true
256
tra.Rate = 15
257
tra.VelocityInheritance = 0.2
258
if Hit:findFirstChild("Mesh") and Hit.Name ~= "Head" then
259
if Hit:findFirstChild("Mesh"):IsA("SpecialMesh") then
260
Hit.Mesh.TextureId = "rbxassetid://64619306"
261
end
262
elseif Hit.Name ~= "Head" then
263
local M = Instance.new("SpecialMesh",Hit)M.MeshId = "rbxassetid://9856898" M.TextureId = "rbxassetid://64619306"
264
M.Scale = Vector3.new(Hit.Size.X*2,Hit.Size.Y*2,Hit.Size.Z*2)	
265
end
266
end
267
end
268
end)
269
end
270
function Virusify(Hit)
271
local S = S10:clone() S.Parent = Hit S.Volume = 0.1 S.SoundId = "rbxassetid://606774093" S.Looped = true S:Play()
272
Hit.Material = "Sand" Hit.BrickColor = BrickColor.new("Really black") 
273
for i = 1,2 do
274
local tra = S11:clone() tra.Parent = Hit
275
tra.Texture = "rbxassetid://744949545"
276
tra.LightEmission = 0
277
if i == 1 then
278
tra.Name = "Glitch" 
279
tra.Color = ColorSequence.new(Color3.new(0/255,255/255,0/255))
280
tra.ZOffset = 2.5
281
else
282
tra.Name = "Glitch2" 
283
tra.Color = ColorSequence.new(Color3.new(0/255,0/255,0/255))
284
tra.ZOffset = 3
285
end
286
local PSize = (Hit.Size.Y+Hit.Size.X+Hit.Size.Z)/20
287
tra.Lifetime = NumberRange.new(1,3)
288
tra.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.1,PSize*0.75,0),NumberSequenceKeypoint.new(1,0,0)})
289
tra.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
290
tra.Speed = NumberRange.new(0.5) tra.VelocitySpread = 360 
291
tra.LockedToPart = true
292
tra.Rate = 15+(Hit.Size.Y+Hit.Size.X+Hit.Size.Z)*5
293
tra.VelocityInheritance = 0.2
294
if Hit:findFirstChild("Mesh") and Hit.Name ~= "Head" then
295
if Hit:findFirstChild("Mesh"):IsA("SpecialMesh") then
296
Hit.Mesh.TextureId = "rbxassetid://64619306"
297
end
298
elseif Hit.Name ~= "Head" then
299
local M = Instance.new("SpecialMesh",Hit)M.MeshId = "rbxassetid://9856898" M.TextureId = "rbxassetid://64619306"
300
M.Scale = Vector3.new(Hit.Size.X*2,Hit.Size.Y*2,Hit.Size.Z*2)	
301
end
302
end
303
end
304
305
function Virusify2(Hit)
306
Hit.Material = "Sand" Hit.BrickColor = BrickColor.new("Really black")
307
for i = 1,2 do
308
local tra = S11:clone() tra.Parent = Hit
309
tra.Texture = "rbxassetid://744949545"
310
tra.LightEmission = 0
311
if i == 1 then
312
tra.Name = "Glitch" 
313
tra.Color = ColorSequence.new(Color3.new(0/255,255/255,0/255))
314
tra.ZOffset = 2.5
315
else
316
tra.Name = "Glitch2" 
317
tra.Color = ColorSequence.new(Color3.new(0/255,0/255,0/255))
318
tra.ZOffset = 3
319
end
320
local PSize = (Hit.Size.Y)/4
321
tra.Lifetime = NumberRange.new(0.5)
322
tra.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.1,1,0),NumberSequenceKeypoint.new(1,0,0)})
323
tra.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
324
tra.Speed = NumberRange.new(0.5) tra.VelocitySpread = 360 
325
tra.LockedToPart = true
326
tra.Rate = 50
327
tra.VelocityInheritance = 0.2
328
if Hit:findFirstChild("Mesh") and Hit.Name ~= "Head" then
329
if Hit:findFirstChild("Mesh"):IsA("SpecialMesh") then
330
Hit.Mesh.TextureId = "rbxassetid://64619306"
331
end
332
elseif Hit.Name ~= "Head" then
333
local M = Instance.new("SpecialMesh",Hit)M.MeshId = "rbxassetid://9856898" M.TextureId = "rbxassetid://64619306"
334
M.Scale = Vector3.new(Hit.Size.X*2,Hit.Size.Y*2,Hit.Size.Z*2)	
335
end
336
end
337
end
338
339
function Virusify3(Hit)
340
local S = S10:clone() S.Parent = Hit S.Volume = 0.1 S.SoundId = "rbxassetid://606774093" S.Looped = true S:Play()
341
Hit.Material = "Sand" Hit.BrickColor = BrickColor.new("Really black") 
342
for i2 = 1,2 do
343
for i = 1,2 do
344
local tra = S11:clone() tra.Parent = Hit
345
tra.Texture = "rbxassetid://744949545"
346
tra.LightEmission = 0
347
if i == 1 then
348
tra.Name = "Glitch" 
349
tra.Color = ColorSequence.new(Color3.new(0/255,255/255,0/255))
350
tra.ZOffset = 2.5
351
else
352
tra.Name = "Glitch2" 
353
tra.Color = ColorSequence.new(Color3.new(0/255,0/255,0/255))
354
tra.ZOffset = 3
355
end
356
if i2 == 1 then
357
tra.LockedToPart = true
358
else
359
tra.LockedToPart = false	
360
end
361
local PSize = (Hit.Size.Y+Hit.Size.X+Hit.Size.Z)/20
362
tra.Lifetime = NumberRange.new(1,3)
363
tra.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.1,PSize*0.75,0),NumberSequenceKeypoint.new(1,0,0)})
364
tra.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
365
tra.Speed = NumberRange.new(0.5) tra.VelocitySpread = 360 
366
tra.Rate = 35+(Hit.Size.Y+Hit.Size.X+Hit.Size.Z)*5
367
tra.VelocityInheritance = 0.2
368
if Hit:findFirstChild("Mesh") and Hit.Name ~= "Head" then
369
if Hit:findFirstChild("Mesh"):IsA("SpecialMesh") then
370
Hit.Mesh.TextureId = "rbxassetid://64619306"
371
end
372
elseif Hit.Name ~= "Head" then
373
local M = Instance.new("SpecialMesh",Hit)M.MeshId = "rbxassetid://9856898" M.TextureId = "rbxassetid://64619306"
374
M.Scale = Vector3.new(Hit.Size.X*2,Hit.Size.Y*2,Hit.Size.Z*2)	
375
end
376
end
377
end
378
end
379
380
local S = Instance.new("Sound",c.HumanoidRootPart)S.Volume = 0.4 S.SoundId = "rbxassetid://606774093" S.Looped = true S:Play()
381
382
for i,v in pairs(c:children()) do
383
if v.ClassName == "Accessory" then
384
v:remove()
385
end
386
end
387
388
if c:findFirstChild("Body Colors") then
389
c:findFirstChild("Body Colors"):remove()
390
end
391
for i,v in pairs (c:children()) do
392
if v.ClassName == "Part" then
393
if v.Name ~= "HumanoidRootPart" then
394
HitInfect(v)
395
v.Material = "Sand" v.BrickColor = BrickColor.new("Really black")
396
for i2 = 1,2 do
397
for i = 1,2 do
398
local tra = S11:clone() tra.Parent = v
399
tra.Texture = "rbxassetid://744949545"
400
tra.LightEmission = 0
401
if i == 1 then
402
tra.Color = ColorSequence.new(Color3.new(0/255,255/255,0/255))
403
tra.ZOffset = 2.5
404
else
405
tra.Color = ColorSequence.new(Color3.new(0/255,0/255,0/255))
406
tra.ZOffset = 3
407
end
408
tra.Rate = 15
409
tra.Lifetime = NumberRange.new(1,3)
410
tra.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.1,0.15,0),NumberSequenceKeypoint.new(1,0,0)})
411
tra.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
412
tra.Speed = NumberRange.new(0.5) tra.VelocitySpread = 360 tra.Name = "Glitch" 
413
if i2 == 1 then
414
tra.LockedToPart = true
415
tra.Rate = 10
416
else
417
tra.LockedToPart = false
418
tra.ZOffset = tra.ZOffset - 2.25
419
end
420
tra.VelocityInheritance = 0.2
421
end
422
if v.Name ~= "Head" then
423
local M = Instance.new("SpecialMesh",v)M.MeshId = "rbxassetid://9856898" M.TextureId = "rbxassetid://64619306"
424
M.Scale = Vector3.new(v.Size.X*2,v.Size.Y*2,v.Size.Z*2)
425
end
426
end
427
end
428
end
429
end
430
c.Head.Transparency = 1
431
local P = Instance.new("Part",c)P.Size = Vector3.new(1,1,1)P.Anchored = false P.CanCollide = false P.Name = "HeadPart"
432
local W = Instance.new("Weld",P)W.Part0 = P W.Part1 = c.Head
433
local HM = Instance.new("SpecialMesh",P)HM.MeshId = "rbxassetid://539723444" HM.TextureId = "rbxassetid://64619306" HM.Scale = Vector3.new(0.97,0.97,0.97)
434
wait()
435
c.Head:FindFirstChild("face").Texture = ""
436
if c:findFirstChild("Shirt")~=nil then
437
c:findFirstChild("Shirt"):remove()
438
end
439
if c:findFirstChild("Pants")~=nil then
440
c:findFirstChild("Pants"):remove()
441
end
442
443
local flying = false
444
local deb = true 
445
local ctrl = {f = 0, b = 0, l = 0, r = 0} 
446
local lastctrl = {f = 0, b = 0, l = 0, r = 0} 
447
local maxspeed = 25 
448
local speed = 0 
449
450
function Fly() 
451
local bg = Instance.new("BodyGyro", c.HumanoidRootPart) 
452
bg.P = 100000 bg.D = 100
453
bg.maxTorque = Vector3.new(math.huge, 0, math.huge) 
454
bg.cframe = c.HumanoidRootPart.CFrame 
455
local bv = Instance.new("BodyVelocity", c.HumanoidRootPart) 
456
bv.velocity = Vector3.new(0,0.1,0) 
457
bv.maxForce = Vector3.new(math.huge, math.huge, math.huge) 
458
repeat wait() 
459
c.Humanoid.PlatformStand = true 
460
if ctrl.l + ctrl.r ~= 0 or ctrl.f + ctrl.b ~= 0 then 
461
speed = speed+1+(speed/maxspeed) 
462
if speed > maxspeed then 
463
speed = maxspeed 
464
end 
465
elseif not (ctrl.l + ctrl.r ~= 0 or ctrl.f + ctrl.b ~= 0) and speed ~= 0 then 
466
speed = speed-1 
467
if speed < 0 then 
468
speed = 0 
469
end 
470
end 
471
if (ctrl.l + ctrl.r) ~= 0 or (ctrl.f + ctrl.b) ~= 0 then 
472
bv.velocity = ((game.Workspace.CurrentCamera.CoordinateFrame.lookVector * (ctrl.f+ctrl.b)) + ((game.Workspace.CurrentCamera.CoordinateFrame * CFrame.new(ctrl.l+ctrl.r,(ctrl.f+ctrl.b)*.2,0).p) - game.Workspace.CurrentCamera.CoordinateFrame.p))*speed 
473
lastctrl = {f = ctrl.f, b = ctrl.b, l = ctrl.l, r = ctrl.r} 
474
elseif (ctrl.l + ctrl.r) == 0 and (ctrl.f + ctrl.b) == 0 and speed ~= 0 then 
475
bv.velocity = ((game.Workspace.CurrentCamera.CoordinateFrame.lookVector * (lastctrl.f+lastctrl.b)) + ((game.Workspace.CurrentCamera.CoordinateFrame * CFrame.new(lastctrl.l+lastctrl.r,(lastctrl.f+lastctrl.b)*.2,0).p) - game.Workspace.CurrentCamera.CoordinateFrame.p))*speed 
476
else 
477
bv.velocity = Vector3.new(0,0.1,0) 
478
end 
479
until not flying 
480
ctrl = {f = 0, b = 0, l = 0, r = 0} 
481
lastctrl = {f = 0, b = 0, l = 0, r = 0} 
482
speed = 0 
483
bv:Destroy() 
484
c.Humanoid.PlatformStand = false 
485
end 
486
487
Cloud = false
488
function CloudForm()
489
if Cloud == false then
490
S.Volume = 1
491
attack = true Cloud = true
492
for i = 1,10 do
493
lerpz(RJ, "C0", RJC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.1)
494
lerpz(N, "C0", NC0 * cf(0, 0, -1) * ang(rd(0), rd(0), rd(0)), 0.1)
495
lerpz(RS, "C0", RSC0 * cf(0, 0, -2) * ang(rd(0), rd(0), rd(0)), 0.1)
496
lerpz(RS, "C1", RSC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.1)
497
lerpz(LS, "C0", LSC0 * cf(0, 0, -2) * ang(rd(0), rd(0), rd(0)), 0.1)
498
lerpz(LS, "C1", LSC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.1)
499
lerpz(RH, "C0", RHC0 * cf(0, 2.2, 0) * ang(rd(0), rd(0), rd(0)), 0.1)
500
lerpz(RH, "C1", RHC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.1)
501
lerpz(LH, "C0", LHC0 * cf(0, 2.2, 0) * ang(rd(0), rd(0), rd(0)), 0.1)
502
lerpz(LH, "C1", LHC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.1)
503
swait()
504
end
505
lerpz(RJ, "C0", RJC0 * cf(0, 0, 2500) * ang(rd(0), rd(0), rd(0)), 1)
506
local Cl = Instance.new("Part",c)Cl.Size = Vector3.new(10,10,10) Cl.CanCollide = false Cl.Anchored = false Cl.CFrame = c.HumanoidRootPart.CFrame
507
Cl.CustomPhysicalProperties = PhysicalProperties.new(0,0.3,0.5)
508
Cl.Material = "Sand" Cl.BrickColor = BrickColor.new("Really black") Cl.Name = "Cloud"
509
HitInfect(Cl)
510
for i2 = 1,2 do
511
for i = 1,2 do
512
local tra = S11:clone() tra.Parent = CL
513
tra.Texture = "rbxassetid://744949545"
514
tra.LightEmission = 0
515
if i == 1 then
516
tra.Color = ColorSequence.new(Color3.new(0/255,255/255,0/255))
517
tra.ZOffset = 2.5
518
else
519
tra.Color = ColorSequence.new(Color3.new(0/255,0/255,0/255))
520
tra.ZOffset = 3
521
end
522
tra.Lifetime = NumberRange.new(1,3)
523
tra.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.1,1,0),NumberSequenceKeypoint.new(1,0,0)})
524
tra.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(0.8,0,0),NumberSequenceKeypoint.new(1,1,0)})
525
tra.Speed = NumberRange.new(0.5) tra.VelocitySpread = 360 tra.Name = "Glitch" 
526
if i2 == 1 then
527
tra.LockedToPart = true
528
tra.Speed = NumberRange.new(0.5)
529
else
530
tra.LockedToPart = false
531
tra.Speed = NumberRange.new(4)
532
end
533
tra.Rate = 250
534
tra.VelocityInheritance = 0.2
535
end
536
end
537
local W = Instance.new("Weld",c.HumanoidRootPart)W.Part0 = c.HumanoidRootPart W.Part1 = Cl
538
local M = Instance.new("SpecialMesh",Cl)M.MeshId = "rbxassetid://9856898" M.TextureId = "rbxassetid://64619306"
539
for i = 1,80 do
540
M.Scale = Vector3.new(i/4,i/4,i/4)
541
c.HumanoidRootPart.CFrame = c.HumanoidRootPart.CFrame*CFrame.new(0,3,0)
542
swait()
543
end
544
flying = true attack = false
545
Fly()
546
else
547
attack = true S.Volume = 0.4
548
if c:findFirstChild("Cloud") ~= nil then
549
lerpz(RJ, "C0", RJC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1)
550
if c.HumanoidRootPart:findFirstChild("Smile")~= nil then
551
for i = 1,20 do
552
c.HumanoidRootPart.Smile.ImageLabel.ImageTransparency = c.HumanoidRootPart.Smile.ImageLabel.ImageTransparency + 0.05
553
swait()
554
end
555
c.HumanoidRootPart.Smile:remove()
556
end
557
for i,v in pairs(c:findFirstChild("Cloud"):children()) do
558
if v.Name == "Glitch" then
559
v.Enabled = false
560
end
561
end
562
for i = 1,80 do
563
c:findFirstChild("Cloud").Mesh.Scale =  c:findFirstChild("Cloud").Mesh.Scale - Vector3.new(0.25,0.25,0.25)
564
swait()
565
end
566
game.Debris:AddItem(c:findFirstChild("Cloud"),2)
567
Cloud = false end flying = false
568
wait(2)
569
attack = false
570
end
571
end
572
573
function CloudFace()
574
if c.HumanoidRootPart:findFirstChild("Smile")~= nil then
575
for i = 1,20 do
576
c.HumanoidRootPart.Smile.ImageLabel.ImageTransparency = c.HumanoidRootPart.Smile.ImageLabel.ImageTransparency + 0.05
577
swait()
578
end
579
c.HumanoidRootPart.Smile:remove()
580
else
581
local BillBoard = Instance.new("BillboardGui",c.HumanoidRootPart)BillBoard.Name = "Smile" BillBoard.AlwaysOnTop = true BillBoard.Size = UDim2.new(10,0,10,0)
582
local Im = Instance.new("ImageLabel",BillBoard) Im.BackgroundTransparency = 1 Im.Size = UDim2.new(1,0,1,0)Im.Image = "rbxassetid://915081021" 
583
end
584
end
585
586
587
function VirusExplosion(Pos)
588
for i = 1,10 do
589
for i2 = 1,8 do
590
local V = Instance.new("Part")V.Size = Vector3.new(1+i*20,0.5,10)V.Anchored = true V.CanCollide = false
591
V.CFrame = Pos*CFrame.Angles(0,math.rad(45*i2),0) Virusify2(V) VirusFade(V)
592
V.CFrame = V.CFrame*CFrame.new(0,3,2*i)HitInfect(V) V.Parent = game.Workspace
593
end
594
swait()
595
end
596
end
597
598
function VirusFade(H) 
599
spawn(function()
600
for i = 1,10 do
601
H.Transparency = H.Transparency + 1/10
602
swait()
603
end
604
H:findFirstChild("Glitch").Enabled = false H:findFirstChild("Glitch2").Enabled = false
605
game.Debris:AddItem(H,0.2)
606
end)
607
end
608
609
function VirusFade2(H) 
610
spawn(function()
611
for i = 1,25 do
612
H.Transparency = H.Transparency + 1/25
613
swait()
614
end
615
H:findFirstChild("Glitch").Enabled = false H:findFirstChild("Glitch2").Enabled = false
616
game.Debris:AddItem(H,4)
617
end)
618
end
619
620
function HammerSlam()
621
c.HumanoidRootPart.Anchored = true
622
attack = true
623
AnimDis()
624
for i = 1,15 do
625
lerpz(RJ, "C0", RJC0 * cf(0, 0, 0) * ang(rd(20), rd(0), rd(0)), 0.2)-- Y, X, Z
626
lerpz(N, "C0", NC0 * cf(0, 0, 0) * ang(rd(20), rd(0), rd(0)), 0.2) -- Y, X, Z
627
lerpz(RS, "C0", RSC0 * cf(0, 0, 0) * ang(rd(0), rd(45), rd(65)), 0.2) -- Z, X, Y 
628
lerpz(LS, "C0", LSC0 * cf(0, 0, 0) * ang(rd(0), rd(-45), rd(-65)), 0.2) -- Z, X, Y
629
lerpz(RH, "C0", RHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(45)), 0.2)
630
lerpz(LH, "C0", LHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(-45)), 0.2)
631
swait()
632
end
633
local H = Instance.new("Part",c)H.Size = Vector3.new(1,1,15)H.CanCollide = false
634
local H2 = Instance.new("Part",c)H2.Size = Vector3.new(5,10,5)H2.CanCollide = false
635
local W = Instance.new("Weld",c["Torso"])W.Part0 = c["Torso"] W.Part1 = H  W.C0 = CFrame.new(0,-2,0)
636
local W2 = Instance.new("Weld",H2)W2.Part0 = H2 W2.Part1 = H W2.C0 = CFrame.new(0,0,-4)
637
Virusify(H) Virusify(H2)HitInfect(H)HitInfect(H2)
638
for i = 1,45 do
639
W.C0 = CFrame.new(0,2,4)*CFrame.Angles(math.rad(5),0,0)
640
lerpz(RJ, "C0", RJC0 * cf(0, 0, 0) * ang(rd(-20), rd(0), rd(0)), 0.2)-- Y, X, Z
641
lerpz(N, "C0", NC0 * cf(0, 0, 0) * ang(rd(-20), rd(0), rd(0)), 0.2) -- Y, X, Z
642
lerpz(RS, "C0", RSC0 * cf(0, 0, 0) * ang(rd(0), rd(-45), rd(220)), 0.2) -- Z, X, Y 
643
lerpz(LS, "C0", LSC0 * cf(0, 0, 0) * ang(rd(0), rd(45), rd(-220)), 0.2) -- Z, X, Y
644
lerpz(RH, "C0", RHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(-45)), 0.2)
645
lerpz(LH, "C0", LHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(45)), 0.2)
646
swait()
647
end
648
W.C0 = CFrame.new(0,3,-8)*CFrame.Angles(math.rad(200),0,0)
649
for i = 1,15 do
650
lerpz(RJ, "C0", RJC0 * cf(0, 0, 0) * ang(rd(20), rd(0), rd(0)), 0.5)-- Y, X, Z
651
lerpz(N, "C0", NC0 * cf(0, 0, 0) * ang(rd(20), rd(0), rd(0)), 0.5) -- Y, X, Z
652
lerpz(RS, "C0", RSC0 * cf(0, 0, 0) * ang(rd(0), rd(45), rd(65)), 0.5) -- Z, X, Y 
653
lerpz(LS, "C0", LSC0 * cf(0, 0, 0) * ang(rd(0), rd(-45), rd(-65)), 0.5) -- Z, X, Y
654
lerpz(RH, "C0", RHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(45)), 0.5)
655
lerpz(LH, "C0", LHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(-45)), 0.5)
656
swait()
657
end
658
local S = Instance.new("Sound",H2)S.Volume = 2 S.SoundId = "rbxassetid://211062246" S:Play()
659
for i = 1,45 do
660
for i2 = 1,8 do
661
local V = Instance.new("Part")V.Size = Vector3.new(10+i*4,1,10)V.Anchored = true V.CanCollide = false
662
V.CFrame = H2.CFrame*CFrame.Angles(0,math.rad(45*i2),0) Virusify2(V) VirusFade(V)
663
V.CFrame = V.CFrame*CFrame.new(0,3,5*i)HitInfect(V) V.Parent = game.Workspace
664
end
665
swait()
666
end
667
H.Anchored = true H2.Anchored = true
668
W:remove() W2:remove()
669
c.HumanoidRootPart.Anchored = false
670
AnimDis()
671
attack = false
672
spawn(function()
673
wait(3) H.Transparency = 1 H2.Transparency = 1
674
H:findFirstChild("Glitch").Enabled = false H2:findFirstChild("Glitch").Enabled = false
675
H:findFirstChild("Glitch2").Enabled = false H2:findFirstChild("Glitch2").Enabled = false
676
game.Debris:AddItem(H,4) game.Debris:AddItem(H2,4)
677
end)
678
end
679
680
function Missiles()
681
attack = true
682
local Mis = Instance.new("Part",game.Workspace)Mis.Name = "GlitchMissle" Mis.Size = Vector3.new(2,2,12) Mis.CFrame = c.HumanoidRootPart.CFrame Virusify3(Mis)
683
Mis.CFrame = CFrame.new(Mis.CFrame:toWorldSpace(CFrame.new(0,0,0)).p,mouse.hit.p+Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20)))
684
Mis.CanCollide = false local BV = Instance.new("BodyVelocity",Mis)BV.Velocity = Mis.CFrame.lookVector*150 BV.maxForce = Vector3.new(math.huge,math.huge,math.huge)
685
local hit = false
686
Mis.Touched:connect(function(Hit)
687
if Hit.Parent ~= c then
688
if hit == false then hit = true
689
Mis.Anchored = true VirusFade2(Mis)
690
VirusExplosion(CFrame.new(Mis.Position))
691
end
692
end
693
end)
694
wait(0.1)
695
attack = false
696
end
697
698
mouse.KeyDown:connect(function(key)
699
if c.Humanoid.Health <= 0 then return end
700
if attack == true then return end
701
if Cloud == true then
702
if key == "f" then
703
CloudFace()
704
end
705
if key == "z" then
706
Missiles()
707
end
708
elseif Cloud == false then
709
if key == "z" then
710
HammerSlam()
711
end
712
end
713
if key == "m" then
714
CloudForm()
715
end
716
end)
717
718
local LastPos = c.HumanoidRootPart.CFrame
719
local Resetting = false
720
function Reset()
721
if Resetting == false then Resetting = true
722
c.Parent = nil 
723
c.Humanoid.Health = math.huge c.Humanoid.MaxHealth = math.huge
724
for i,v in pairs(c:children()) do if v.ClassName == "Part" then v:remove() end end
725
local Tors = Instance.new("Part",c)Tors.Name = "Torso" Tors.Size = Vector3.new(2,2,1) Virusify(Tors)
726
local Hed = Instance.new("Part",c)Hed.Name = "Head" Hed.Size = Vector3.new(2,1,1) Virusify(Hed) Hed.Transparency = 1
727
makejoint(c.Torso, NC0, NC1, c.Torso, c.Head, "Neck")
728
local Hum = Instance.new("Part",c)Hum.Name = "HumanoidRootPart" Hum.Size = Vector3.new(2,2,1) Hum.Transparency = 1
729
makejoint(c.HumanoidRootPart, RJC0, RJC1, c.HumanoidRootPart, c.Torso, "RootJoint")
730
local P = Instance.new("Part",c)P.Size = Vector3.new(1,1,1)P.Anchored = false P.CanCollide = false P.Name = "HeadPart"
731
local W = Instance.new("Weld",P)W.Part0 = P W.Part1 = c.Head
732
local HM = Instance.new("SpecialMesh",P)HM.MeshId = "rbxassetid://539723444" HM.TextureId = "rbxassetid://64619306" HM.Scale = Vector3.new(0.97,0.97,0.97)
733
local RiArm = Instance.new("Part",c)RiArm.Name = "Right Arm" RiArm.Size = Vector3.new(1,2,1) Virusify(RiArm)
734
makejoint(c.Torso, RSC0, RSC1, c.Torso, RiArm, "Right Shoulder")
735
local LeArm = Instance.new("Part",c)LeArm.Name = "Left Arm" LeArm.Size = Vector3.new(1,2,1) Virusify(LeArm)
736
makejoint(c.Torso, LSC0, LSC1, c.Torso, LeArm, "Left Shoulder")
737
local RiLeg = Instance.new("Part",c)RiLeg.Name = "Right Leg" RiLeg.Size = Vector3.new(1,2,1) Virusify(RiLeg)
738
makejoint(c.Torso, RHC0, RHC1, c.Torso, RiLeg, "Right Hip")
739
local LeLeg = Instance.new("Part",c)LeLeg.Name = "Left Leg" LeLeg.Size = Vector3.new(1,2,1) Virusify(LeLeg)
740
makejoint(c.Torso, LHC0, LHC1, c.Torso, LeLeg, "Left Hip")
741
c.HumanoidRootPart.CFrame = LastPos*CFrame.new(math.random(-5,5),0,math.random(-5,5))
742
Resetting = false c.Humanoid.Died:connect(Reset) c.Parent = game.Workspace
743
end
744
end
745
c.Humanoid.Died:connect(Reset)
746
747
function onKeyPress(inputObject, gameProcessedEvent)
748
if isTyping == true then return end
749
if inputObject.KeyCode == Enum.KeyCode.W then ctrl.f = 1 end
750
if inputObject.KeyCode == Enum.KeyCode.S then ctrl.b = -1 end
751
if inputObject.KeyCode == Enum.KeyCode.A then ctrl.l = -1 end
752
if inputObject.KeyCode == Enum.KeyCode.D then ctrl.r = 1 end
753
end
754
game:GetService("UserInputService").InputBegan:connect(onKeyPress)
755
756
function onKeyLift(inputObject, gameProcessedEvent)
757
if isTyping == true then return end
758
if inputObject.KeyCode == Enum.KeyCode.W then ctrl.f = 0 end
759
if inputObject.KeyCode == Enum.KeyCode.S then ctrl.b = 0 end
760
if inputObject.KeyCode == Enum.KeyCode.A then ctrl.l = 0 end
761
if inputObject.KeyCode == Enum.KeyCode.D then ctrl.r = 0 end
762
end
763
game:GetService("UserInputService").InputEnded:connect(onKeyLift)
764
765
WholeBody = c:clone()
766
767
function makejoint(paren, co, ci, parto, parti, nam)local gloo = Instance.new("Motor6D")gloo.Name = nam gloo.C0 = co gloo.C1 = ci gloo.Part0 = parto gloo.Part1 = parti gloo.Parent = paren end
768
idletime = 0
769
sine = 0
770
game:GetService("RunService").RenderStepped:connect(function()
771
c.Humanoid.MaxHealth = c.Humanoid.MaxHealth + math.huge c.Humanoid.Health = c.Humanoid.Health + math.huge
772
if Resetting == false then
773
if c:findFirstChild("Head")== nil or c:findFirstChild("Torso")== nil or c:findFirstChild("HumanoidRootPart")== nil or c.HumanoidRootPart:findFirstChild("RootJoint")== nil then 
774
Reset()
775
else
776
LastPos = c.HumanoidRootPart.CFrame
777
end
778
if c.Torso:findFirstChild("Right Shoulder") == nil or c:findFirstChild("Right Arm")== nil then print("RA")
779
local BodyPart = Instance.new("Part",c)BodyPart.Name = "Right Arm" BodyPart.Size = Vector3.new(1,2,1) Virusify(BodyPart)
780
makejoint(c.Torso, RSC0, RSC1, c.Torso, BodyPart, "Right Shoulder")
781
end
782
if c.Torso:findFirstChild("Left Shoulder") == nil or c:findFirstChild("Left Arm")== nil then print("LA")
783
local BodyPart = Instance.new("Part",c)BodyPart.Name = "Left Arm" BodyPart.Size = Vector3.new(1,2,1) Virusify(BodyPart)
784
makejoint(c.Torso, LSC0, LSC1, c.Torso, BodyPart, "Left Shoulder")
785
end
786
if c.Torso:findFirstChild("Right Hip") == nil or c:findFirstChild("Right Leg")== nil then print("RL")
787
local BodyPart = Instance.new("Part",c)BodyPart.Name = "Right Leg" BodyPart.Size = Vector3.new(1,2,1) Virusify(BodyPart)
788
makejoint(c.Torso, RHC0, RHC1, c.Torso, BodyPart, "Right Hip")
789
end 
790
if c.Torso:findFirstChild("Left Hip") == nil or c:findFirstChild("Left Leg")== nil then print("LL")
791
local BodyPart = Instance.new("Part",c)BodyPart.Name = "Left Leg" BodyPart.Size = Vector3.new(1,2,1) Virusify(BodyPart)
792
makejoint(c.Torso, LHC0, LHC1, c.Torso, BodyPart, "Left Hip")
793
end
794
local r = math.random(1,15)
795
if r == 1 then S.PlaybackSpeed = math.random(1,50)/10 end
796
if attack == false and Cloud == false then
797
local r2 = math.random(1,50)
798
if r2 == 1 then
799
lerpz(RJ, "C0", RJC0 * cf(math.random(-5,5)/10, math.random(-5,5)/10, math.random(-5,5)/10) * ang(rd(0), rd(0), rd(0)), 1)-- Y, X, Z
800
lerpz(N, "C0", NC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1) -- Y, X, Z
801
lerpz(RS, "C0", RSC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1) -- Z, X, Y 
802
lerpz(RS, "C1", RSC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1) -- Z, X, Y
803
lerpz(LS, "C0", LSC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1) -- Z, X, Y
804
lerpz(LS, "C1", LSC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1) -- Z, X, Y
805
lerpz(RH, "C0", RHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1)
806
lerpz(RH, "C1", RHC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1)
807
lerpz(LH, "C0", LHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1)
808
lerpz(LH, "C1", LHC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 1)
809
end
810
lerpz(RJ, "C0", RJC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5)-- Y, X, Z
811
lerpz(N, "C0", NC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5) -- Y, X, Z
812
lerpz(RS, "C0", RSC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5) -- Z, X, Y 
813
lerpz(RS, "C1", RSC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5) -- Z, X, Y
814
lerpz(LS, "C0", LSC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5) -- Z, X, Y
815
lerpz(LS, "C1", LSC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5) -- Z, X, Y
816
lerpz(RH, "C0", RHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5)
817
lerpz(RH, "C1", RHC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5)
818
lerpz(LH, "C0", LHC0 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5)
819
lerpz(LH, "C1", LHC1 * cf(0, 0, 0) * ang(rd(0), rd(0), rd(0)), 0.5)
820
end
821
end
822
end)