View difference between Paste ID: zZiG0D36 and B4R4xE68
SHOW: | | - or go back to the newest paste.
1-
--CREDIT TO TARTINO!
1+
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2-
--LEAKED BY VIKTOR ON V3RMILLION
2+
local Player,game,owner = owner,game
3
local RealPlayer = Player
4-
--COPY BELOW
4+
do
5-
--/////////////////////////////////////////
5+
	print("FE Compatibility code by Mokiros")
6
	local rp = RealPlayer
7
	script.Parent = rp.Character
8
	
9
	--RemoteEvent for communicating
10
	local Event = Instance.new("RemoteEvent")
11
	Event.Name = "UserInput_Event"
12
13
	--Fake event to make stuff like Mouse.KeyDown work
14
	local function fakeEvent()
15
		local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
16
		t.connect = t.Connect
17
		return t
18
	end
19
20
	--Creating fake input objects with fake variables
21
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
22
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
23
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
24
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
25
	end}
26
	--Merged 2 functions into one by checking amount of arguments
27
	CAS.UnbindAction = CAS.BindAction
28
29
	--This function will trigger the events that have been :Connect()'ed
30
	local function te(self,ev,...)
31
		local t = m[ev]
32
		if t and t._fakeEvent then
33
			for _,f in pairs(t.Functions) do
34
				f(...)
35
			end
36
		end
37
	end
38
	m.TrigEvent = te
39
	UIS.TrigEvent = te
40
41
	Event.OnServerEvent:Connect(function(plr,io)
42
	    if plr~=rp then return end
43
		m.Target = io.Target
44
		m.Hit = io.Hit
45
		if not io.isMouse then
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
51
				return m:TrigEvent(b and "Button2Down" or "Button2Up")
52
			end
53
			for _,t in pairs(CAS.Actions) do
54
				for _,k in pairs(t.Keys) do
55
					if k==io.KeyCode then
56
						t.Function(t.Name,io.UserInputState,io)
57
					end
58
				end
59
			end
60
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
61
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
62
	    end
63
	end)
64
	Event.Parent = NLS([==[
65
	local Player = game:GetService("Players").LocalPlayer
66
	local Event = script:WaitForChild("UserInput_Event")
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
	local h,t
77
	--Give the server mouse data 30 times every second, but only if the values changed
78
	--If player is not moving their mouse, client won't fire events
79
	while wait(1/30) do
80
		if h~=Mouse.Hit or t~=Mouse.Target then
81
			h,t=Mouse.Hit,Mouse.Target
82
			Event:FireServer({isMouse=true,Target=t,Hit=h})
83
		end
84
	end]==],Player.Character)
85
86
	----Sandboxed game object that allows the usage of client-side methods and services
87
	--Real game object
88
	local _rg = game
89
90
	--Metatable for fake service
91
	local fsmt = {
92
		__index = function(self,k)
93
			local s = rawget(self,"_RealService")
94
			if s then
95
				return typeof(s[k])=="function"
96
				and function(_,...)return s[k](s,...)end or s[k]
97
			end
98
		end,
99
		__newindex = function(self,k,v)
100
			local s = rawget(self,"_RealService")
101
			if s then s[k]=v end
102
		end
103
	}
104
	local function FakeService(t,RealService)
105
		t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
106
		return setmetatable(t,fsmt)
107
	end
108
109
	--Fake game object
110
	local g = {
111
		GetService = function(self,s)
112
			return rawget(self,s) or _rg:GetService(s)
113
		end,
114
		Players = FakeService({
115
			LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
116
		},"Players"),
117
		UserInputService = FakeService(UIS,"UserInputService"),
118
		ContextActionService = FakeService(CAS,"ContextActionService"),
119
		RunService = FakeService({
120
			_btrs = {},
121
			RenderStepped = _rg:GetService("RunService").Heartbeat,
122
			BindToRenderStep = function(self,name,_,fun)
123
				self._btrs[name] = self.Heartbeat:Connect(fun)
124
			end,
125
			UnbindFromRenderStep = function(self,name)
126
				self._btrs[name]:Disconnect()
127
			end,
128
		},"RunService")
129
	}
130
	rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
131
	g.service = g.GetService
132
	FakeService(g,game)
133
	--Changing owner to fake player object to support owner:GetMouse()
134
	game,owner = g,g.Players.LocalPlayer
135
end
136
137
local Me = game.Players.LocalPlayer
138
bin = Instance.new("HopperBin")
139
bin.Name = "Fap (Q and E)"
140
bin.Parent = Me.Backpack
141
142
local SIZE = 1
143
local DISTANCE = 1
144
local RAISE = 0.03
145
local INCLINE = 0.001
146
local ChaneOfEnjoyment = 10
147
local Auto = false
148
local AutoAmout = 1
149
150
local char = Me.Character
151
local Torsoz = char:findFirstChild("Torso")
152
local RA = char:findFirstChild("Right Arm")
153
local LA = char:findFirstChild("Left Arm")
154
local H = char:findFirstChild("Head")
155
local RS = Torsoz:findFirstChild("Right Shoulder")
156
local LS = Torsoz:findFirstChild("Left Shoulder")
157
local N = Torsoz:findFirstChild("Neck")
158
local Joint1
159
local Joint2
160
local Fap = 1
161
local FapCount = Instance.new("Part")
162
local FapCountM = Instance.new("Model")
163
local Points = 0
164
local Dks = {}
165
local InTenPoints = 0
166
local RaiseOrg = RAISE
167
local Tickup = false
168
169
Me:ClearCharacterAppearance()
170
wait(0.1)
171
Me.Character.Head.BrickColor = BrickColor.new("Cool yellow")
172
Me.Character.Torso.BrickColor = BrickColor.new("Cool yellow")
173
Me.Character["Right Arm"].BrickColor = BrickColor.new("Cool yellow")
174
Me.Character["Right Leg"].BrickColor = BrickColor.new("Cool yellow")
175
Me.Character["Left Leg"].BrickColor = BrickColor.new("Cool yellow")
176
Me.Character["Left Arm"].BrickColor = BrickColor.new("Cool yellow")
177
pcall(function() Me.Character.Torso.roblox:Destroy() end)
178
179
local P = Instance.new("Part")
180
P.Anchored = false
181
P.CanCollide = false
182
P.Name = "Part"
183
P.formFactor = "Custom"
184
P.Size = Vector3.new(0.5,0.5,0.5)
185
P.Locked = true
186
P.TopSurface = 0
187
P.BottomSurface = 0
188
189
local Model = Instance.new("Model", char)
190
Model.Name = "Troll"
191
192
local B1 = Instance.new("Part", Model)
193
B1.Name = "Di-ck"
194
B1.Size = Vector3.new(1,1,1)
195
B1.TopSurface = "Smooth"
196
B1.BottomSurface = "Smooth"
197
B1.Position = Vector3.new(0,10,0)
198
B1.BrickColor = BrickColor.new("Cool yellow")
199
B1.CanCollide = true
200
B1.Locked = true
201
local Mesh1 = Instance.new("SpecialMesh", B1)
202
Mesh1.MeshType = "Sphere"
203
Mesh1.Scale = Vector3.new(SIZE+0.3,SIZE+0.3,SIZE+0.3)
204
local Weld1 = Instance.new("Weld", B1)
205
Weld1.Part0 = Torsoz
206
Weld1.Part1 = B1
207
Weld1.C0 = CFrame.new(-0.2,-1,-0.6)
208
209
local B2 = Instance.new("Part", Model)
210
B2.Name = "Di-ck"
211
B2.Size = Vector3.new(1,1,1)
212
B2.TopSurface = "Smooth"
213
B2.BottomSurface = "Smooth"
214
B2.Position = Vector3.new(0,10,0)
215
B2.BrickColor = BrickColor.new("Cool yellow")
216
B2.CanCollide = true
217
B2.Locked = true
218
local Mesh2 = Instance.new("SpecialMesh", B2)
219
Mesh2.MeshType = "Sphere"
220
Mesh2.Scale = Vector3.new(SIZE+0.3,SIZE+0.3,SIZE+0.3)
221
local Weld2 = Instance.new("Weld", B2)
222
Weld2.Part0 = Torsoz
223
Weld2.Part1 = B2
224
Weld2.C0 = CFrame.new(0.2,-1,-0.6)
225
226
function FapPos()
227
        Joint1.C0 = CFrame.new(0.8,-0.1,-0.3) * CFrame.Angles(0.3,0,-math.pi/4.4)
228
        Joint2.C0 = CFrame.new(-0.8,-0.1,-0.3) * CFrame.Angles(0.3,0,math.pi/4.4)
229
end
230
function DoTheFap(Motherload)
231
        FapPos()
232
        Points = Points + 1
233
        local Dk = Instance.new("Part", Model)
234
        Dk.Name = "Di-ck"
235
        Dk.Size = Vector3.new(1,1,1)
236
        Dk.TopSurface = "Smooth"
237
        Dk.BottomSurface = "Smooth"
238
        Dk.Position = Vector3.new(0,10,0)
239
        Dk.BrickColor = BrickColor.new("Pink")
240
        Dk.CanCollide = true
241
        Dk.Locked = true
242
        local Mesh = Instance.new("SpecialMesh", Dk)
243
        Mesh.MeshType = "Sphere"
244
        Mesh.Scale = Vector3.new(SIZE,SIZE,SIZE)
245
        local Weld = Instance.new("Weld", Dk)
246
        Weld.Part0 = Torsoz
247
        Weld.Part1 = Dk
248
        Weld.C0 = CFrame.new(0,-0.9 * (((#Dks+1)*(RAISE * -1))+1),-0.7 * ((#Dks+1)*(DISTANCE)))
249
        if RAISE < 0.25 and TickUp == false then
250
                RAISE = RAISE + INCLINE
251
        else
252
                TickUp = true
253
                RAISE = (RAISE + INCLINE)-0.0005
254
        end
255
        table.insert(Dks, Dk)
256
        if math.random(1,ChaneOfEnjoyment) == 1 or Motherload == true then
257
                local Sound = Instance.new("Sound", H)
258
                Sound.Name = "Uhhhh yah"
259
                Sound.Volume = 5
260
                Sound.Pitch = math.random(85,105)/100
261
                Sound.SoundId = "rbxasset://sounds/uuhhh.wav"
262
                local Num = 1
263
                if Motherload == false then
264
                        Num = math.random(3,15)
265
                else
266
                        Num = math.random(15,70)
267
                end
268
                for i = 0,Num do
269
                        coroutine.wrap(function()
270
                                local Cm = Instance.new("Part", Model)
271
                                Cm.Name = "Cu-m"
272
                                Cm.Size = Vector3.new(1,1,1)
273
                                Cm.TopSurface = "Smooth"
274
                                Cm.BottomSurface = "Smooth"
275
                                Cm.Position = Dks[#Dks].Position + Vector3.new(math.random(-1,1),math.random(-1,1),math.random(-1,1))
276
                                Cm.BrickColor = BrickColor.new("White")
277
                                Cm.Shape = "Ball"
278
                                Cm.Locked = true
279
                                local Mesh = Instance.new("SpecialMesh", Cm)
280
                                Mesh.MeshType = "Sphere"
281
                                Mesh.Scale = Vector3.new(0.45,0.45,0.45)
282
                                wait(math.random(10,60))
283
                                Cm:Destroy()
284
                        end)()
285
                end
286
                wait()
287
                Sound:Play()
288
                wait()
289
                Sound:remove()
290
                wait()
291
        end
292
end
293
294
function UnFap()
295
        Joint1.C0 = CFrame.new(0.8,-0.1,-0.5) * CFrame.Angles(0.7,0,-math.pi/4.4)
296
        Joint2.C0 = CFrame.new(-0.8,-0.1,-0.5) * CFrame.Angles(0.7,0,math.pi/4.4)
297
end
298
299
function onKeyDown(key, mouse)
300
        if key ~= nil then
301
                key:lower()
302
                if Auto == false then
303
                        if key == "e" then
304
                                if Fap == 1 then
305
                                        UnFap()
306
                                        Fap = 0
307
                                end
308
                        elseif key == "q" then
309
                                if Fap == 0 then
310
                                        Fap = 1
311
                                        if Points == 100 then
312
                                                DoTheFap(true)
313
                                        else
314
                                                DoTheFap(false)
315
                                        end
316
                                end
317
                        elseif key == "m" then
318
                                if Fap == 1 then
319
                                        UnFap()
320
                                        Fap = 0
321
                                end
322
                        elseif key == "n" then
323
                                if Fap == 0 then
324
                                        if #Dks > 1 then
325
                                                Fap = 1
326
                                                FapPos()
327
                                                Points = Points - 1
328
                                                for Num,Dk in pairs(Dks) do
329
                                                        if Num == #Dks then
330
                                                                table.remove(Dks, Num)
331
                                                                Dk:Destroy()
332
                                                        end
333
                                                end
334
                                        end
335
                                end
336
                        end
337
                end
338
        end
339
end
340
341
function Equip()
342
        local joint = Instance.new("Motor", Torsoz)
343
        joint.Part0 = Torsoz
344
        joint.Part1 = RA
345
        joint.C0 = CFrame.new(0.8,-0.1,-0.3) * CFrame.Angles(0.3,0,-math.pi/4.4)
346
        Joint1 = joint
347
        local joint = Instance.new("Motor", Torsoz)
348
        joint.Part0 = Torsoz
349
        joint.Part1 = LA
350
        joint.C0 = CFrame.new(-0.8,-0.1,-0.3) * CFrame.Angles(0.3,0,math.pi/4.4)
351
        Joint2 = joint
352
353
        local m = Instance.new("Model", char)
354
        m.Name = "Fap Points: "..Points
355
        FapCountM = m
356
        local p = P:Clone()
357
        p.Parent = m
358
        p.Name = "Head"
359
        p.Anchored = true
360
        p.CFrame = H.CFrame + Vector3.new(0,2,0)
361
        FapCount = p
362
        local h = Instance.new("Humanoid", m)
363
        h.MaxHealth = 0
364
        h.Name = "Durr"
365
end
366
367
function Unequip()
368
        for i, v in pairs(Torsoz:children()) do
369
                if v.className == "Motor" then
370
                        v:remove()
371
                end
372
        end
373
        RS.Parent = Torsoz
374
        RS.Part0 = Torsoz
375
        RS.Part1 = RA
376
        LS.Parent = Torsoz
377
        LS.Part0 = Torsoz
378
        LS.Part1 = LA
379
        for i, v in pairs(char:children()) do
380
                if v.className == "Model" and string.find(v.Name, "Fap") then
381
                        v:remove()
382
                end
383
        end
384
end
385
386
bin.Selected:connect(function(mouse)
387
        mouse.Icon = "rbxasset://textures\\GunCursor.png"
388
        mouse.Button1Down:connect(function() onButton1Down(mouse) end)
389
        mouse.KeyDown:connect(function(key) onKeyDown(key, mouse) end)
390
        Equip()
391
end)
392
393
bin.Deselected:connect(function()
394
        Unequip()
395
end)
396
397
if Auto == true then
398
        coroutine.wrap(function()
399
                Equip()
400
                wait(0.1)
401
                while true do
402
                        if Points == 100 then
403
                                DoTheFap(true)
404
                        else
405
                                DoTheFap(false)
406
                        end
407
                        wait()
408
                        UnFap()
409
                        wait()
410
                end
411
        end)()
412
end
413
414
if AutoAmout ~= 0 then
415
        coroutine.wrap(function()
416
                Equip()
417
                wait(0.1)
418
                for i = 1,AutoAmout do
419
                        if Points == 100 then
420
                                DoTheFap(true)
421
                        else
422
                                DoTheFap(false)
423
                        end
424
                        wait()
425
                        UnFap()
426
                        wait()
427
                end
428
        end)()
429
end
430
431
432
coroutine.wrap(function()
433
        while true do
434
                FapCount.CFrame = H.CFrame + Vector3.new(0,2,0)
435
                FapCountM.Name = "Fap Points: "..Points
436
                if #Dks ~= 0 then
437
                        for Num,Get in pairs(Dks) do
438
                                pcall(function()
439
                                        if Num == #Dks then
440
                                                Get.BrickColor = BrickColor.new("Pink")
441
                                        else
442
                                                Get.BrickColor = BrickColor.new("Cool yellow")
443
                                        end
444
                                end)
445
                        end
446
                end
447
                wait(0.03)
448
        end
449
end)()