View difference between Paste ID: 6uxYKFMc and Khs1ESTH
SHOW: | | - or go back to the newest paste.
1
2
--just put this on the top of a script and boom 89% works
3
--note this does not work on big scripts
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,game,owner = owner,game
6
local RealPlayer = Player
7
do
8
    local rp = RealPlayer
9
    script.Parent = rp.Character
10
   
11
    --RemoteEvent for communicating
12
    local Event = Instance.new("RemoteEvent")
13
    Event.Name = "UserInput_Event"
14
 
15
    --Fake event to make stuff like Mouse.KeyDown work
16
    local function fakeEvent()
17
        local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
18
        t.connect = t.Connect
19
        return t
20
    end
21
 
22
    --Creating fake input objects with fake variables
23
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
24
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
25
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
26
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
27
    end}
28
    --Merged 2 functions into one by checking amount of arguments
29
    CAS.UnbindAction = CAS.BindAction
30
 
31
    --This function will trigger the events that have been :Connect()'ed
32
    local function te(self,ev,...)
33
        local t = m[ev]
34
        if t and t._fakeEvent then
35
            for _,f in pairs(t.Functions) do
36
                f(...)
37
            end
38
        end
39
    end
40
    m.TrigEvent = te
41
    UIS.TrigEvent = te
42
 
43
    Event.OnServerEvent:Connect(function(plr,io)
44
        if plr~=rp then return end
45-
gunshot.SoundId = "rbxassetid://213603013"
45+
        m.Target = io.Target
46
        m.Hit = io.Hit
47
        if not io.isMouse then
48
            local b = io.UserInputState == Enum.UserInputState.Begin
49
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
50
                return m:TrigEvent(b and "Button1Down" or "Button1Up")
51
            end
52
            for _,t in pairs(CAS.Actions) do
53
                for _,k in pairs(t.Keys) do
54
                    if k==io.KeyCode then
55
                        t.Function(t.Name,io.UserInputState,io)
56
                    end
57
                end
58
            end
59
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
60
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
61
        end
62
    end)
63
    Event.Parent = NLS([==[
64
    local Player = game:GetService("Players").LocalPlayer
65
    local Event = script:WaitForChild("UserInput_Event")
66
 
67
    local Mouse = Player:GetMouse()
68
    local UIS = game:GetService("UserInputService")
69
    local input = function(io,a)
70
        if a then return end
71
        --Since InputObject is a client-side instance, we create and pass table instead
72
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
73
    end
74
    UIS.InputBegan:Connect(input)
75
    UIS.InputEnded:Connect(input)
76
 
77
    local h,t
78
    --Give the server mouse data 30 times every second, but only if the values changed
79
    --If player is not moving their mouse, client won't fire events
80
    while wait(1/30) do
81
        if h~=Mouse.Hit or t~=Mouse.Target then
82
            h,t=Mouse.Hit,Mouse.Target
83
            Event:FireServer({isMouse=true,Target=t,Hit=h})
84
        end
85
    end]==],Player.Character)
86
 
87
    ----Sandboxed game object that allows the usage of client-side methods and services
88
    --Real game object
89
    local _rg = game
90
 
91
    --Metatable for fake service
92
    local fsmt = {
93
        __index = function(self,k)
94
            local s = rawget(self,"_RealService")
95-
wait(4)
95+
            if s then return s[k] end
96
        end,
97
        __newindex = function(self,k,v)
98
            local s = rawget(self,"_RealService")
99
            if s then s[k]=v end
100
        end,
101
        __call = function(self,...)
102
            local s = rawget(self,"_RealService")
103
            if s then return s(...) end
104
        end
105
    }
106
    local function FakeService(t,RealService)
107
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
108
        return setmetatable(t,fsmt)
109
    end
110
 
111
    --Fake game object
112
    local g = {
113
        GetService = function(self,s)
114
            return self[s]
115
        end,
116
        Players = FakeService({
117
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
118
        },"Players"),
119
        UserInputService = FakeService(UIS,"UserInputService"),
120
        ContextActionService = FakeService(CAS,"ContextActionService"),
121
    }
122
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
123
    g.service = g.GetService
124
   
125
    g.RunService = FakeService({
126
        RenderStepped = _rg:GetService("RunService").Heartbeat,
127
        BindToRenderStep = function(self,name,_,fun)
128
            self._btrs[name] = self.Heartbeat:Connect(fun)
129
        end,
130
        UnbindFromRenderStep = function(self,name)
131
            self._btrs[name]:Disconnect()
132
        end,
133
    },"RunService")
134
 
135
    setmetatable(g,{
136
        __index=function(self,s)
137
            return _rg:GetService(s) or typeof(_rg[s])=="function"
138
            and function(_,...)return _rg[s](_rg,...)end or _rg[s]
139
        end,
140
        __newindex = fsmt.__newindex,
141
        __call = fsmt.__call
142
    })
143
    --Changing owner to fake player object to support owner:GetMouse()
144
    game,owner = g,g.Players.LocalPlayer
145
end
146
 
147
 
148
-- By Theamazingnater
149
-- hi
150
plr = game.Players.LocalPlayer
151
char = plr.Character
152
153
154
-- Defining RenderStepped?
155
renders = game:GetService("RunService").RenderStepped
156
-- Intro
157
char.Torso.roblox.Texture = "rbxassetid://305296807"
158
local rhandclone = game.Players.LocalPlayer.Character.Torso["Right Shoulder"]:Clone()
159
        local rhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
160
        rhandweld.Part0 = game.Players.LocalPlayer.Character.Torso
161
        rhandweld.Part1 = game.Players.LocalPlayer.Character["Right Arm"]
162
        rhandweld.C0 = CFrame.new(1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1)
163
        local lhandclone = game.Players.LocalPlayer.Character.Torso["Left Shoulder"]:Clone()
164
        local lhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
165
        lhandweld.Part0 = game.Players.LocalPlayer.Character.Torso
166
        lhandweld.Part1 = game.Players.LocalPlayer.Character["Left Arm"]
167
        lhandweld.C0 = CFrame.new(-1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1)
168
        local llegclone = game.Players.LocalPlayer.Character.Torso["Left Hip"]:Clone()
169
        game.Players.LocalPlayer.Character.Torso["Left Hip"]:Remove()
170
        local llegweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
171
        llegweld.Part0 = game.Players.LocalPlayer.Character.Torso
172
        llegweld.Part1 = game.Players.LocalPlayer.Character["Left Leg"]
173
        llegweld.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) * CFrame.new(0,-1,0)
174
        local rlegclone = game.Players.LocalPlayer.Character.Torso["Right Hip"]:Clone()
175
        game.Players.LocalPlayer.Character.Torso["Right Hip"]:Remove()
176
        local rlegweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
177
        rlegweld.Part0 = game.Players.LocalPlayer.Character.Torso
178
        rlegweld.Part1 = game.Players.LocalPlayer.Character["Right Leg"]
179
        rlegweld.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) * CFrame.new(0,-1,0)
180
        local rootjointclone = game.Players.LocalPlayer.Character.HumanoidRootPart.RootJoint:Clone()
181
        game.Players.LocalPlayer.Character.HumanoidRootPart.RootJoint:Remove()
182
        local humanoidrootpart = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
183
        humanoidrootpart.Part0 = game.Players.LocalPlayer.Character.HumanoidRootPart
184
        humanoidrootpart.Part1 = game.Players.LocalPlayer.Character.Torso
185
        local heed = game.Players.LocalPlayer.Character.Torso["Neck"]:Clone()
186
        local headweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
187
        headweld.Part0 = game.Players.LocalPlayer.Character.Torso
188
        headweld.Part1 = game.Players.LocalPlayer.Character.Head
189
        headweld.C0 = headweld.C0 * CFrame.new(0,1.5,0)
190
local gunshot = Instance.new("Sound",char.Torso)
191
gunshot.Name = "BANG"
192
gunshot.SoundId = "rbxassetid://709854053"
193
gunshot.Volume = 2
194
gunshot:Play()
195
char.Humanoid.WalkSpeed = 0
196
char.Humanoid.JumpPower = 0
197
for i = 0,1 , 0.03 do
198
	rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.975958347, -2.06729031, 0, 0.905177712, -0.425033659, 8.83524214e-27, 0.425034732, 0.905179977, 4.223007e-27, -1.05518035e-26, 3.02922588e-28, 1.0000025),i)
199
	llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.901434898, -1.97289896, 0, 0.896831989, 0.442371875, -3.88750654e-27, -0.442372978, 0.896834254, 5.09510506e-27, 4.69530011e-27, -3.35739201e-27, 1.0000025),i)
200
	rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.98829222, 0.555973053, 0, -0.0983736441, -0.995149612, 6.86624532e-27, 0.995152056, -0.0983738229, 1.33999472e-26, -1.25618211e-26, 9.13816473e-27, 1.0000025),i)
201
	lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.80910063, 0.148392916, 0, 0.586558223, 0.80990839, -5.84135723e-26, -0.809910417, 0.586559713, -6.21380681e-26, -1.6509281e-26, 8.28998148e-26, 1.0000025),i)
202
    humanoidrootpart.C0 = humanoidrootpart.C0:lerp(CFrame.new(0, -2.50004101, 2.00000429, 1, -4.90253133e-27, 8.98669496e-27, 8.98670343e-27, 1.77323375e-06, -1, 4.90251553e-27, 1, 1.77323375e-06),i)
203
	renders:wait()
204
end
205
wait(3)
206
local scream = Instance.new("Sound",char.Torso)
207
scream.SoundId = "rbxassetid://138167455"
208
scream.Volume = 4
209
scream:Play()
210
char.Head.face.Texture = "http://www.roblox.com/asset/?id=1364114735"
211
for i = 0,1 , 0.03 do
212
	rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.52452374, 0.510128379, -0.901310444, -0.0983733907, 0.0243432298, 0.994851828, 0.995149672, 0.00240636896, 0.0983439684, 2.91038305e-08, 0.999700963, -0.0244618785),i)
213
	renders:wait()
214
end
215
wait(5)
216
char.Head.face.Texture = "http://www.roblox.com/asset/?id=295197013"
217
for i = 0,1 , 0.03 do
218
	rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.98829222, 0.555973053, 0, -0.0983736441, -0.995149612, 6.86624532e-27, 0.995152056, -0.0983738229, 1.33999472e-26, -1.25618211e-26, 9.13816473e-27, 1.0000025),i)
219
	renders:wait()
220
end
221
local Part0 = Instance.new("Part")
222
Part0.Name = "bl00d"
223
Part0.CanCollide = false
224
Part0.Anchored = true
225
Part0.Parent = char
226
Part0.BrickColor = BrickColor.new("Crimson")
227
Part0.Rotation = Vector3.new(0, 0, 90)
228
Part0.Shape = Enum.PartType.Cylinder
229
Part0.Size = Vector3.new(0.310000002, 1.77000022, 2)
230
Part0.CFrame = CFrame.new(10.5427914, 1.28072846, 11.4908791, 4.47034836e-07, -1.00000215, 0, 1.00000215, 4.47034836e-07, 0, 0, 0, 1)
231
Part0.Color = Color3.new(0.458824, 0, 0)
232
Part0.Position = Vector3.new(10.5427914, 1.28072846, 11.4908791)
233
Part0.Orientation = Vector3.new(0, 0, 90)
234
Part0.Color = Color3.new(0.458824, 0, 0)
235
for i = 1,400 do
236
 game.Players.LocalPlayer.Character.Head.CanCollide = false
237
 Part0.Size = Part0.Size + Vector3.new(0,0.01,0.01)
238
 Part0.CFrame = game.Players.LocalPlayer.Character.Torso.CFrame * CFrame.new(0,0,0.4)
239
 Part0.CFrame = Part0.CFrame * CFrame.fromEulerAnglesXYZ(0,math.pi/2,0)
240
 game:GetService("RunService").Stepped:wait()
241
end
242
wait(400000000000000000000000)
243
for i = 0,1 , 0.03 do
244
	lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1),i)
245
	llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.9999913, 0, 1, 0, 0, 0, 0.999995589, 0, 0, 0, 1),i)
246
	rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1),i)
247
	rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.5, -1.9999913, 0, 1, 0, 0, 0, 0.999995589, 0, 0, 0, 1),i)
248
	headweld.C0 = headweld.C0:lerp(CFrame.new(0, 1.4999938, 0, 1, 0, 0, 0, 0.999995708, 0, 0, 0, 1),i)
249
	humanoidrootpart.C0 = humanoidrootpart.C0:lerp(CFrame.new(0, 0, 0, 1, 0, 0, 0, 0.999995708, 0, 0, 0, 1),i)
250
	renders:wait()
251
end
252
lhandweld:Destroy()
253
llegweld:Destroy()
254
rhandweld:Destroy()
255
rlegweld:Destroy()
256
headweld:Destroy()
257
humanoidrootpart:Destroy()
258
lhandclone.Parent = char.Torso
259
llegclone.Parent = char.Torso
260
rhandclone.Parent = char.Torso
261
rlegclone.Parent = char.Torso
262
heed.Parent = char.Torso
263
rootjointclone.Parent = char.HumanoidRootPart
264
char.Humanoid.WalkSpeed = 16
265
char.Humanoid.JumpPower = 50
266
-- the thing that follows you
267
local part = Instance.new("Part",char)
268
part.Transparency = 1
269
part.Size = Vector3.new(5.92, 0.05, 5.95)
270
part.CanCollide = false
271
local surfacegui = Instance.new("SurfaceGui",part)
272
surfacegui.Adornee = part
273
surfacegui.Face = "Top"
274
surfacegui.AlwaysOnTop = false
275
local image = Instance.new("ImageLabel",surfacegui)
276
image.Size = UDim2.new(1.066, 0, 0.998, 0)
277
image.Image = "rbxassetid://153485522"
278
image.BackgroundTransparency = 1
279
local weld = Instance.new("Weld",part)
280
weld.Part0 = part
281
weld.Part1 = char.HumanoidRootPart
282
for i = 0,1 , 0.05 do
283
    weld.C0 = weld.C0:lerp(CFrame.new(-0.232723236, 2.4942894, 0.332229614, 1, 0, 0, 0, 0.999996066, 0, 0, 0, 1),i)
284
    game:GetService("RunService").RenderStepped:wait()
285
end
286
-- funcs
287
function onTouched(brick)
288
    local humn = brick.Parent:FindFirstChildOfClass("Humanoid")
289
    if humn then
290
        for i,v in pairs(humn.Parent:GetChildren()) do
291
            if v.ClassName == "Part" then
292
                v.Transparency = 0.5
293
                v.Color = Color3.new(0,0,0)
294
                v.CanCollide = false
295
                v.Parent.Humanoid.Health = 0
296
                local bodyvel = Instance.new("BodyVelocity",v)
297
                local leftarm = Instance.new("CharacterMesh",v.Parent)
298
                leftarm.BodyPart = "LeftArm"
299
                leftarm.MeshId = "1112256772"
300
                local leftleg = Instance.new("CharacterMesh",v.Parent)
301
                leftleg.BodyPart = "LeftLeg"
302
                leftleg.MeshId = "1112275294"
303
                local rightarm = Instance.new("CharacterMesh",v.Parent)
304
                rightarm.BodyPart = "RightArm"
305
                rightarm.MeshId = "1112244824"
306
                local rightleg = Instance.new("CharacterMesh",v.Parent)
307
                rightleg.BodyPart = "RightLeg"
308
                rightleg.MeshId = "1112267576"
309
                local torso = Instance.new("CharacterMesh",v.Parent)
310
                torso.BodyPart = "Torso"
311
                torso.MeshId = "1112228624"
312
            end
313
        end
314
    end
315
end
316
char.Torso.Touched:connect(onTouched)
317
-- Transparency
318
char["Left Arm"].Transparency = 0.5
319
char["Left Leg"].Transparency = 0.5
320
char["Right Arm"].Transparency = 0.5
321
char["Right Leg"].Transparency = 0.5
322
char["Head"].Transparency = 0.5
323
char.Torso.Transparency = 0.5
324
-- Color
325
local bdycolors = char["Body Colors"]
326
bdycolors.HeadColor = BrickColor.new("Really black")
327
bdycolors.LeftArmColor = BrickColor.new("Really black")
328
bdycolors.RightArmColor = BrickColor.new("Really black")
329
bdycolors.LeftLegColor = BrickColor.new("Really black")
330
bdycolors.RightLegColor = BrickColor.new("Really black")
331
bdycolors.TorsoColor = BrickColor.new("Really black")
332
-- Music
333
local music = Instance.new("Sound",char)
334
music.SoundId = "rbxassetid://182562357"
335
music.Volume = 4
336
music:Play()
337
music.Looped = true
338
-- Name
339
local nametag = Instance.new("BillboardGui",char.Head)
340
nametag.StudsOffset = Vector3.new(0,2,0)
341
nametag.Adornee = char.Head
342
nametag.Size = UDim2.new(0,200,0,50)
343
344
local text = Instance.new("TextLabel",nametag)
345
text.Size = UDim2.new(0,200,0,50)
346
text.BackgroundTransparency = 1
347
text.Text = "The Ghost"
348
text.TextColor3 = Color3.new(180/255,0,0)
349
text.TextStrokeColor3 = Color3.new(0,0,0)
350
text.Font = Enum.Font.Fantasy
351
text.TextScaled = true
352
text.TextStrokeTransparency = 0
353
coroutine.wrap(function()
354
	while wait() do
355
		wait(3)
356
		text.Text = "GIVE UP"
357
		wait()
358
		text.Text = "The Ghost";
359
		wait(2)
360
		local str = ""
361
		for i = 1, math.random(3,25) do
362
			str = str..string.char(math.random(65,122))
363
		end
364
		text.Text = str
365
		wait()
366
		str = ""
367
		for i = 1, math.random(12,25) do
368
			str = str..string.char(math.random(48,122))
369
		end
370
		wait()
371
		text.Text = str
372
		wait()
373
		text.Text = "The Ghost";
374
		wait(1)
375
		text.Text = "BE GONE THOT"
376
		wait()
377
		text.Text = "Burn in hell."
378
		wait()
379
		text.Text = "The Ghost";
380
		wait(2)
381
		text.Text = "You made me do this.";
382
		wait()
383
		text.Text = "edgy";
384
		wait()
385
		for i = 1, math.random(12,25) do
386
			str = str..string.char(math.random(48,57))
387
		end
388
		text.Text = str
389
		wait()
390
		text.Text = "The Ghost";
391
		wait(2)
392
	end
393
end)()