View difference between Paste ID: PPQuWnmj and m5Qp0Dyu
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Use h/ To work.") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6-
	print("SCP 106 By DenisPitu06_YT")
6+
	print("R.U.N By DenisPitu06_YT")
7
    print("E To Teleport.")
8
    print("F To pay respect.")
9
    print("I dont care do whatever. WARNING")
10
    print("Includes suicide scripts such as. explosions. rip leg.")
11
	local RealPlayer = RealPlayer
12
	script.Parent = RealPlayer.Character
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local Disconnect_Function = function(this)
16
		this[1].Functions[this[2]] = nil
17
	end
18
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
19
	local FakeEvent_Metatable = {__index={
20
		Connect = function(this,f)
21
			local i = tostring(math.random(0,10000))
22
			while this.Functions[i] do
23
				i = tostring(math.random(0,10000))
24
			end
25
			this.Functions[i] = f
26
			return setmetatable({this,i},Disconnect_Metatable)
27
		end
28
	}}
29
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
30
	local function fakeEvent()
31
		return setmetatable({Functions={}},FakeEvent_Metatable)
32
	end
33
34
	--Creating fake input objects with fake variables
35
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
36
    FakeMouse.keyUp = FakeMouse.KeyUp
37
    FakeMouse.keyDown = FakeMouse.KeyDown
38
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
39
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
40
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
41
	end}
42
	--Merged 2 functions into one by checking amount of arguments
43
	CAS.UnbindAction = CAS.BindAction
44
45
	--This function will trigger the events that have been :Connect()'ed
46
	local function TriggerEvent(self,ev,...)
47
		for _,f in pairs(self[ev].Functions) do
48
			f(...)
49
		end
50
	end
51
	FakeMouse.TriggerEvent = TriggerEvent
52
	UIS.TriggerEvent = TriggerEvent
53
54
	--Client communication
55
	local Event = Instance.new("RemoteEvent")
56
	Event.Name = "UserInput_Event"
57
	Event.OnServerEvent:Connect(function(plr,io)
58
	    if plr~=RealPlayer then return end
59
		FakeMouse.Target = io.Target
60
		FakeMouse.Hit = io.Hit
61
		if not io.isMouse then
62
			local b = io.UserInputState == Enum.UserInputState.Begin
63
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
64
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
65
			end
66
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
67
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
68
			end
69
			for _,t in pairs(CAS.Actions) do
70
				for _,k in pairs(t.Keys) do
71
					if k==io.KeyCode then
72
						t.Function(t.Name,io.UserInputState,io)
73
					end
74
				end
75
			end
76
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
77
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
78
	    end
79
	end)
80
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
81
	local Mouse = owner:GetMouse()
82
	local UIS = game:GetService("UserInputService")
83
	local input = function(io,RobloxHandled)
84
		if RobloxHandled then return end
85
		--Since InputObject is a client-side instance, we create and pass table instead
86
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
87
	end
88
	UIS.InputBegan:Connect(input)
89
	UIS.InputEnded:Connect(input)
90
91
	local h,t
92
	--Give the server mouse data every second frame, but only if the values changed
93
	--If player is not moving their mouse, client won't fire events
94
	local HB = game:GetService("RunService").Heartbeat
95
	while true do
96
		if h~=Mouse.Hit or t~=Mouse.Target then
97
			h,t=Mouse.Hit,Mouse.Target
98
			Event:FireServer({isMouse=true,Target=t,Hit=h})
99
		end
100
		--Wait 2 frames
101
		for i=1,2 do
102
			HB:Wait()
103
		end
104
	end]==],script)
105
106
	----Sandboxed game object that allows the usage of client-side methods and services
107
	--Real game object
108
	local RealGame = game
109
110
	--Metatable for fake service
111
	local FakeService_Metatable = {
112
		__index = function(self,k)
113
			local s = rawget(self,"_RealService")
114
			if s then
115
				return typeof(s[k])=="function"
116
				and function(_,...)return s[k](s,...)end or s[k]
117
			end
118
		end,
119
		__newindex = function(self,k,v)
120
			local s = rawget(self,"_RealService")
121
			if s then s[k]=v end
122
		end
123
	}
124
	local function FakeService(t,RealService)
125
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
126
		return setmetatable(t,FakeService_Metatable)
127
	end
128
129
	--Fake game object
130
	local FakeGame = {
131
		GetService = function(self,s)
132
			return rawget(self,s) or RealGame:GetService(s)
133
		end,
134
		Players = FakeService({
135
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
136
		},"Players"),
137
		UserInputService = FakeService(UIS,"UserInputService"),
138
		ContextActionService = FakeService(CAS,"ContextActionService"),
139
		RunService = FakeService({
140
			_btrs = {},
141
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
142
			BindToRenderStep = function(self,name,_,fun)
143
				self._btrs[name] = self.Heartbeat:Connect(fun)
144
			end,
145
			UnbindFromRenderStep = function(self,name)
146
				self._btrs[name]:Disconnect()
147
			end,
148
		},"RunService")
149
	}
150
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
151
	FakeGame.service = FakeGame.GetService
152
	FakeService(FakeGame,game)
153
	--Changing owner to fake player object to support owner:GetMouse()
154
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
155
end
156
--SCP-457 Remake script by basstracker1970
157
plr = game.Players.LocalPlayer
158
wait(1)
159
for i,v in next, game.Players.LocalPlayer.Character:GetChildren() do
160
if v:IsA("Accessory") then
161
v:Remove()
162
end
163-
local sound = Instance.new("Sound", plr.Character)
163+
164-
sound.SoundId = "rbxassetid://1747972604"
164+
165-
sound:Play()
165+
local db = true
166
mouse = plr:GetMouse()
167
plr.Character.Head.BrickColor = BrickColor.new("Really black")
168
plr.Character.Torso.BrickColor = BrickColor.new("Really black")
169
plr.Character["Right Arm"].BrickColor = BrickColor.new("Really black")
170
plr.Character["Left Arm"].BrickColor = BrickColor.new("Really black")
171
plr.Character["Right Leg"].BrickColor = BrickColor.new("Really black")
172
plr.Character["Left Leg"].BrickColor = BrickColor.new("Really black")
173
plr.Character.Head.face:Destroy()
174
plr.Character.Humanoid.WalkSpeed = 8
175
plr.Character.Humanoid.JumpPower = 0
176
plr.Character.Torso.Touched:connect(function(hit)
177
    hit.Parent.Humanoid.WalkSpeed = 0
178
    local sound = Instance.new("Sound", hit.Parent)
179
    sound.SoundId = "rbxassetid://1135476193"
180
    sound:Play()
181
    wait(3)
182
    hit.Parent:BreakJoints()
183
end)
184
function Teleport()
185
    local sound2 = Instance.new("Sound", plr.Character)
186
    sound2.SoundId = "rbxassetid://1135476193"
187
    sound2:Play()
188
    plr.Character.Torso.CFrame = mouse.Hit + Vector3.new(0,3,0)
189
end
190
function PayRespect()
191
    local sparkles = Instance.new("Sparkles", plr.Character.Torso)
192
    local sound3 = Instance.new("Sound", plr.Character)
193
    sound3.Looped = true
194
    sound3.SoundId = "rbxassetid://314568939"
195
    sound3:Play()
196
    plr.Character.Humanoid.Health = 70
197
    wait(2)
198
    plr.Character.Humanoid.Health = 0
199
end
200
function NoFair()
201
    if db == true then
202
        db = false
203
        plr.Character.Humanoid.WalkSpeed = 0
204
        local sound4 = Instance.new("Sound", plr.Character)
205
        sound4.SoundId = "rbxassetid://3535031732"
206
        sound4:Play()
207
        plr.Character.Humanoid.JumpPower = 50
208
        plr.Character.Humanoid.Jump = true
209
        wait(0.1) -- So yeh coz i like to
210
        plr.Character.Humanoid.JumpPower = 0
211
        wait(7)
212
        db = true
213
        plr.Character.Humanoid.WalkSpeed = 8
214
    end 
215
end
216
function SuperJump()
217
    plr.Character.Humanoid.JumpPower = 1000
218
    plr.Character.Humanoid.Jump = true
219
    wait(1)
220
    plr.Character.Humanoid.JumpPower = 0
221
end
222
function Explode()
223
    local Explodd = Instance.new("Explosion", plr.Character.Torso)
224
    Explodd.Position = plr.Character.Torso.Position
225
    local sound3 = Instance.new("Sound", plr.Character)
226
    sound3.SoundId = "rbxassetid://314568939"
227
    sound3:Play()
228
end
229
function Help()
230
    plr.Character["Left Leg"]:Destroy()
231
    local sound3 = Instance.new("Sound", plr.Character)
232
    sound3.SoundId = "rbxassetid://2216178534"
233
    sound3:Play()
234
    wait(2)
235
    local sound5 = Instance.new("Sound", plr.Character.Torso)
236
    sound5.SoundId = "rbxassetid://440431180"
237
    sound5:Play()
238
    local Explodd2 = Instance.new("Explosion", plr.Character.Torso)
239
    Explodd2.Position = plr.Character.Torso.Position
240
end
241
function ByeBye()
242
    plr.Character.Humanoid.WalkSpeed = 0
243
    local sound6 = Instance.new("Sound", plr.Character)
244
    sound6.SoundId = "rbxassetid://2216178534"
245
    sound6:Play()
246
    wait(2)
247
    local FLING = Instance.new("BodyPosition", plr.Character.HumanoidRootPart)
248
    FLING.Position = Vector3.new(4000,4000,4000)
249
    local sound7 = Instance.new("Sound", plr.Character)
250
    sound7.SoundId = "rbxassetid://2216178534"
251
    sound7:Play()
252
end
253
mouse.KeyDown:connect(function(k)
254
    if k == "e" then
255
        Teleport()
256
    end
257
    if k == "f" then
258
        PayRespect()
259
    end
260
    if k == "m" then
261
        NoFair()
262
    end
263
    if k == "q" then
264
        SuperJump()
265
    end
266
    if k == "g" then
267
        Explode()
268
    end
269
    if k == "k" then
270
        Help()
271
    end
272
    if k == "z" then
273
        ByeBye()
274
    end
275
end)