View difference between Paste ID: zL07WsTU and jnsLyTDU
SHOW: | | - or go back to the newest paste.
1
-- This script has been converted to FE by iPxter
2
3
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,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
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
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = game:GetService("Players").LocalPlayer
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end
86
87
---------------------------------
88
-----SO BASICALLY I'M MONKEY-----
89
---------------------------------
90
91
--This script is made by mrfunnylaughs4.
92
93
local plr = Sebas21506
94
local char = plr.Character
95
local hum = char:FindFirstChildOfClass("Humanoid")
96
local idleanim = Instance.new("Animation")
97
idleanim.Name = "Roblox Idle Animation"
98
idleanim.AnimationId = "http://www.roblox.com/asset/?id=180435571"
99
local idleanimplay = hum:LoadAnimation(idleanim)
100
idleanimplay:Play()
101
wait(0.1)
102
if char:FindFirstChild("Animate") then
103
	char.Animate:Destroy()
104
end
105
local remote = Instance.new("RemoteEvent", char)
106
remote.Name = "ReplicationEvent"
107
local client = NLS([==[
108
	local remote = game:GetService("Players").owner.Character:WaitForChild("ReplicationEvent")
109
	spawn(function()
110
		while game:GetService("RunService").Heartbeat:Wait() do
111
			remote = game:GetService("Players").owner.Character:WaitForChild("ReplicationEvent")
112
		end
113
	end)
114
	game:GetService("UserInputService").InputBegan:Connect(function(input, isTyping)
115
		if isTyping == false and input.UserInputType == Enum.UserInputType.Keyboard then
116
			remote:FireServer(1, input.KeyCode)
117
		end
118
	end)
119
	mouse.Button1Down:Connect(function()
120
		remote:FireServer(2)
121
	end)
122
	remote.OnClientEvent:Connect(function()
123
		game:GetService("Players").owner.Character.HumanoidRootPart.CFrame = CFrame.new(game:GetService("Players").owner.Character.HumanoidRootPart.Position, Vector3.new(mouse.Hit.Position.X, game:GetService("Players").owner.Character.HumanoidRootPart.Position.Y, mouse.Hit.Position.Z))
124
	end)
125
]==], char)
126
local crabrave = Instance.new("Sound", char.Torso)
127
local RS = char.Torso["Right Shoulder"]
128
local LS = char.Torso["Left Shoulder"]
129
local RH = char.Torso["Right Hip"]
130
local LH = char.Torso["Left Hip"]
131
local rootj = char.HumanoidRootPart.RootJoint
132
local throwbutton = false
133
local throw = false
134
local normalanim = true
135
local attackd = false
136
local animpose = "Idle"
137
local timepos = 0
138
local sine = 0
139
local RSnor = RS.C0
140
local LSnor = LS.C0
141
local RHnor = RH.C0
142
local LHnor = LH.C0
143
local rootjnor = rootj.C0
144
145
---------------------------------
146
--------------Set up-------------
147
---------------------------------
148
149
local sur = Instance.new("BillboardGui", char.Head)
150
sur.Name = "Billboard"
151
sur.Adornee = char.Head
152
sur.Size = UDim2.new(10, 0, 5, 0)
153
sur.StudsOffset = Vector3.new(0, 5, 0)
154
local text = Instance.new("TextLabel", sur)
155-
text.Text = "SO BASICALLY IM MONKEY"
155+
text.Text = "So basically Im big stupid"
156
text.Size = UDim2.new(1, 0, 1, 0)
157
text.TextScaled = true
158
text.BackgroundTransparency = 1
159
text.Font = Enum.Font.SourceSansLight
160
text.TextColor3 = Color3.new(1, 1, 1)
161
text.TextStrokeTransparency = 0
162
163
---------------------------------
164
-------------Attacks-------------
165
---------------------------------
166
167
remote.OnServerEvent:Connect(function(Player, number, key)
168
	if number == 1 and plr.Name == Player.Name and attackd == false then
169
		if key == Enum.KeyCode.Z then
170
			sine = 0
171
			attackd = true
172
			normalanim = false
173
			hum.WalkSpeed = 0
174
			hum.JumpPower = 0
175
			for i = 1, 15 do
176
				game:GetService("RunService").Heartbeat:Wait()
177
				rootj.C0 = rootj.C0:Lerp(rootjnor * CFrame.Angles(1.2, 0, 0) + Vector3.new(0, -1.6, 0), 0.15)
178
				RS.C0 = RS.C0:Lerp(RSnor * CFrame.Angles(0, 0, 1.1) + Vector3.new(0, 0, -0.3), 0.15)
179
				LS.C0 = LS.C0:Lerp(LSnor, 0.15)
180
				RH.C0 = RH.C0:Lerp(RHnor, 0.15)
181
				LH.C0 = LH.C0:Lerp(LHnor, 0.15)
182
			end
183
			for i = 1, 20 do
184
				game:GetService("RunService").Heartbeat:Wait()
185
				LS.C0 = LS.C0 * CFrame.Angles(0, 0, -0.06) + Vector3.new(0, 0, -0.03)
186
			end
187
			local banpart = Instance.new("Part", char)
188
			banpart.Size = Vector3.new(1, 1, 1)
189
			banpart.CanCollide = false
190
			local mesh = Instance.new("SpecialMesh", banpart)
191
			mesh.MeshType = "FileMesh"
192
			mesh.MeshId = "rbxassetid://28937301"
193
			mesh.TextureId = "rbxassetid://28937670"
194
			mesh.Scale = Vector3.new(0.8, 0.8, 0.8)
195
			local weld = Instance.new("Weld", banpart)
196
			weld.Part0 = char["Left Arm"]
197
			weld.Part1 = banpart
198
			weld.C1 = CFrame.new(0, 1, 0)
199
			for i = 1, 20 do
200
				game:GetService("RunService").Heartbeat:Wait()
201
				rootj.C0 = rootj.C0:Lerp(rootjnor, 0.15)
202
				RS.C0 = RS.C0:Lerp(RSnor, 0.15)
203
				LS.C0 = LS.C0:Lerp(LSnor * CFrame.Angles(0, 0, -4), 0.15)
204
				RH.C0 = RH.C0:Lerp(RHnor, 0.15)
205
				LH.C0 = LH.C0:Lerp(LHnor, 0.15)
206
			end
207
			throwbutton = true
208
			throw = true
209
			repeat game:GetService("RunService").Heartbeat:Wait()
210
				remote:FireClient(plr)
211
			until throw == false
212
			for i = 1, 15 do
213
				game:GetService("RunService").Heartbeat:Wait()
214
				LS.C0 = LS.C0:Lerp(LS.C0 * CFrame.Angles(0, 0, 0.01), i)
215
			end
216
			banpart.Parent = workspace
217
			weld:Destroy()
218
			banpart.CanCollide = true
219
			banpart.Velocity = char.HumanoidRootPart.CFrame.LookVector * 60
220
			local start = LS.C0
221
			for i = 1, 0, -1 / 15 do
222
				game:GetService("RunService").Heartbeat:Wait()
223
				LS.C0 = LSnor:Lerp(start, i * i)
224
			end
225
			normalanim = true
226
			attackd = false
227
			hum.WalkSpeed = 16
228
			hum.JumpPower = 50
229
			banpart.Touched:Connect(function(hit)
230
				if hit.Parent and game:GetService("Players"):FindFirstChild(hit.Parent.Name) then
231
					local character = hit.Parent
232
					character:FindFirstChildOfClass("Humanoid").Sit = true
233
					local s = Instance.new("Sound", character.Head)
234
					s.SoundId = "rbxassetid://28976727"
235
					s.Volume = 10
236
					s:Play()
237
				end
238
			end)
239
			spawn(function()
240
				wait(15)
241
				if banpart.Parent == workspace then
242
					banpart:Destroy()
243
				end
244
			end)
245
		end
246
		if key == Enum.KeyCode.X then
247
			attackd = true
248
			local bpart = Instance.new("Part", workspace)
249
			bpart.Size = Vector3.new(2.4, 3.5, 2.4)
250
			bpart.Locked = true
251
			bpart.CFrame = char.HumanoidRootPart.CFrame * CFrame.new(0, 0, -2)
252
			bpart.Velocity = Vector3.new(0, 50, 0) + char.HumanoidRootPart.CFrame.LookVector * 50
253
			local mesh = Instance.new("SpecialMesh", bpart)
254
			mesh.MeshType = "FileMesh"
255
			mesh.MeshId = "http://www.roblox.com/asset/?id=29873142"
256
			mesh.Scale = Vector3.new(1.1, 1.1, 1.1)
257
			mesh.TextureId = "http://www.roblox.com/asset/?id=31082268"
258
			local update = 0.4
259
			while update > 0.1 do
260
				local sound = Instance.new("Sound", bpart)
261
				sound.SoundId = "rbxasset://sounds\\clickfast.wav"
262
				sound.Volume = 5
263
				sound:Play()
264
				wait(update)
265
				update = update * 0.9
266
			end
267
			for i = 1, 50 do
268
				local banpart = Instance.new("Part", workspace)
269
				banpart.Size = Vector3.new(1, 1, 1)
270
				banpart.CanCollide = true
271
				banpart.CFrame = bpart.CFrame
272
				local bCFrame = CFrame.new(0, 0, 0)
273
				local bVel = Vector3.new(0, 0, 0)
274
				local mesh = Instance.new("SpecialMesh", banpart)
275
				mesh.MeshType = "FileMesh"
276
				mesh.MeshId = "rbxassetid://28937301"
277
				mesh.TextureId = "rbxassetid://28937670"
278
				mesh.Scale = Vector3.new(0.8, 0.8, 0.8)
279
				local weld = Instance.new("Weld", banpart)
280
				weld.Part0 = bpart
281
				weld.Part1 = banpart
282
				spawn(function()
283
					wait(1)
284
					banpart.Touched:Connect(function(hit)
285
						if hit.Parent and game:GetService("Players"):FindFirstChild(hit.Parent.Name) then
286
							local character = hit.Parent
287
							character:FindFirstChildOfClass("Humanoid").Sit = true
288
							local s = Instance.new("Sound", character.Head)
289
							s.SoundId = "rbxassetid://28976727"
290
							s.Volume = 10
291
							s:Play()
292
						end
293
					end)
294
				end)
295
				spawn(function()
296
					while wait() do
297
						if banpart.Parent ~= workspace then
298
							banpart = Instance.new("Part", workspace)
299
							banpart.Size = Vector3.new(1, 1, 1)
300
							banpart.CanCollide = true
301
							mesh = Instance.new("SpecialMesh", banpart)
302
							mesh.MeshType = "FileMesh"
303
							mesh.MeshId = "rbxassetid://28937301"
304
							mesh.TextureId = "rbxassetid://28937670"
305
							mesh.Scale = Vector3.new(0.8, 0.8, 0.8)
306
							banpart.CFrame = bCFrame
307
							banpart.Velocity = bVel
308
							banpart.Touched:Connect(function(hit)
309
								if hit.Parent and game:GetService("Players"):FindFirstChild(hit.Parent.Name) then
310
									local character = hit.Parent
311
									character:FindFirstChildOfClass("Humanoid").Sit = true
312
									local s = Instance.new("Sound", character.Head)
313
									s.SoundId = "rbxassetid://28976727"
314
									s.Volume = 10
315
									s:Play()
316
								end
317
							end)
318
						else
319
							bCFrame = banpart.CFrame
320
							bVel = banpart.Velocity
321
						end
322
					end
323
				end)
324
			end
325
			local explosion = Instance.new("Explosion", bpart)
326
			explosion.Position = bpart.Position
327
			local sound2 = Instance.new("Sound", bpart)
328
			sound2.SoundId = "rbxasset://sounds\\Rocket shot.wav"
329
			sound2.Volume = 5
330
			sound2:Play()
331
			bpart.CanCollide = false
332
			attackd = false
333
		end
334
		if key == Enum.KeyCode.C then
335
			sine = 0
336
			attackd = true
337
			normalanim = false
338
			hum.WalkSpeed = 0
339
			hum.JumpPower = 0
340
			for i = 1, 20 do
341
				game:GetService("RunService").Heartbeat:Wait()
342
				rootj.C0 = rootj.C0:Lerp(rootjnor, 0.15)
343
				RS.C0 = RS.C0:Lerp(RSnor * CFrame.Angles(0, 0, 4), 0.15)
344
				LS.C0 = LS.C0:Lerp(LSnor * CFrame.Angles(0, 0, -4), 0.15)
345
				RH.C0 = RH.C0:Lerp(RHnor, 0.15)
346
				LH.C0 = LH.C0:Lerp(LHnor, 0.15)
347
			end
348
			local tpart = Instance.new("Part", char)
349
			tpart.Size = Vector3.new(5.523, 6.19, 22.966)
350
			tpart.Anchored = true
351
			tpart.BrickColor = BrickColor.new("Pine Cone")
352
			tpart.Material = "Wood"
353
			tpart.CanCollide = false
354
			tpart.CFrame = char["Right Arm"].CFrame * CFrame.Angles(math.pi, -math.pi / 2, 0) * CFrame.new(0, 4, 1)
355
			local mesh = Instance.new("SpecialMesh", tpart)
356
			mesh.MeshType = "FileMesh"
357
			mesh.MeshId = "rbxassetid://1760841786"
358
			wait(0.5)
359
			for i = 1, 15 do
360
				game:GetService("RunService").Heartbeat:Wait()
361
				RS.C0 = RS.C0:Lerp(RS.C0 * CFrame.Angles(0, 0, -0.01), i)
362
				LS.C0 = LS.C0:Lerp(LS.C0 * CFrame.Angles(0, 0, 0.01), i)
363
				RH.C0 = RH.C0:Lerp(RHnor, 0.15)
364
				LH.C0 = LH.C0:Lerp(LHnor, 0.15)
365
				tpart.CFrame = char["Right Arm"].CFrame * CFrame.Angles(math.pi, -math.pi / 2, 0) * CFrame.new(0, 4, 1)
366
			end
367
			tpart.Anchored = false
368
			tpart.Velocity = char.HumanoidRootPart.CFrame.LookVector * 100
369
			tpart.CanCollide = true
370
			tpart.Parent = workspace
371
			spawn(function()
372
				wait(0.3)
373
				tpart.Touched:Connect(function(hit)
374
					if hit.Size.X + hit.Size.Y + hit.Size.Z < 1000 then
375
						hit:BreakJoints()
376
						hit.Anchored = false
377
						hit.Velocity = tpart.Velocity
378
					end
379
				end)
380
			end)
381
			for i = 1, 20 do
382
				game:GetService("RunService").Heartbeat:Wait()
383
				rootj.C0 = rootj.C0:Lerp(rootjnor, 0.15)
384
				RS.C0 = RS.C0:Lerp(RSnor, 0.15)
385
				LS.C0 = LS.C0:Lerp(LSnor, 0.15)
386
				RH.C0 = RH.C0:Lerp(RHnor, 0.15)
387
				LH.C0 = LH.C0:Lerp(LHnor, 0.15)
388
			end
389
			attackd = false
390
			normalanim = true
391
			hum.WalkSpeed = 16
392
			hum.JumpPower = 50
393
		end
394
	elseif Player.Name == plr.Name and number == 2 and throw == true and throwbutton == true then
395
		throwbutton = false
396
		throw = false
397
	end
398
end)
399
400
---------------------------------
401
-----------Wrapping up-----------
402
---------------------------------
403
404
while game:GetService("RunService").Heartbeat:Wait() do
405
	if normalanim then
406
		sine = sine + 1
407
	end
408
	if crabrave.Parent == char.Torso then
409
		crabrave.SoundId = "rbxassetid://1609256184"
410
		crabrave.Playing = true
411
		crabrave.Volume = 1
412
		crabrave.Looped = true
413
		timepos = crabrave.TimePosition
414
	else
415
		crabrave = Instance.new("Sound", char.Torso)
416
		crabrave.TimePosition = timepos
417
	end
418
	if remote.Parent == char then
419
		remote.Name = "ReplicationEvent"
420
	else
421
		remote = Instance.new("RemoteEvent", char)
422
	end
423
	local touchfloor = workspace:FindPartOnRay(Ray.new(char.HumanoidRootPart.CFrame.Position, ((CFrame.new(char.HumanoidRootPart.Position, char.HumanoidRootPart.Position - Vector3.new(0, 1, 0))).LookVector).Unit * 4), char)
424
	if char.HumanoidRootPart.Velocity.Magnitude > 1 and touchfloor then
425
		animpose = "Walking"
426
	elseif char.HumanoidRootPart.Velocity.Y > 0.5 and touchfloor == nil then
427
		animpose = "Jumping"
428
	elseif char.HumanoidRootPart.Velocity.Y < 0.5 and touchfloor == nil then
429
		animpose = "Falling"
430
	else
431
		animpose = "Idle"
432
	end
433
	if animpose == "Idle" and normalanim then
434
		RS.C0 = RSnor * CFrame.Angles(0, 0, 1 + math.sin(sine / 5))
435
		LS.C0 = LSnor * CFrame.Angles(0, 0, -1 + math.sin(sine / 5))
436
		RH.C0 = RH.C0:Lerp(RHnor, 0.1) - Vector3.new(0, rootj.C0.Position.Y / 10, 0)
437
		LH.C0 = LH.C0:Lerp(LHnor, 0.1) - Vector3.new(0, rootj.C0.Position.Y / 10, 0)
438
		rootj.C0 = rootjnor * CFrame.new(math.sin(sine / 10) / 2, 0, math.sin(sine / 5) / 2)
439
	elseif animpose == "Walking" and normalanim then
440
		RS.C0 = RSnor * CFrame.Angles(0, 0, 1 + math.sin(sine / 5))
441
		LS.C0 = LSnor * CFrame.Angles(0, 0, -1 + math.sin(sine / 5))
442
		RH.C0 = RH.C0:Lerp(RHnor * CFrame.Angles(0, 0, math.sin(sine / 10)), 0.1) - Vector3.new(0, rootj.C0.Position.Y / 10, 0)
443
		LH.C0 = LH.C0:Lerp(LHnor * CFrame.Angles(0, 0, math.sin(sine / 10)), 0.1) - Vector3.new(0, rootj.C0.Position.Y / 10, 0)
444
		rootj.C0 = rootjnor * CFrame.new(math.sin(sine / 10) / 2, 0, math.sin(sine / 5) / 2)
445
	elseif animpose == "Jumping" and normalanim then
446
		rootj.C0 = rootj.C0:Lerp(rootjnor * CFrame.Angles(-0.5, 0, 0), 0.15)
447
		RS.C0 = RS.C0:Lerp(RSnor * CFrame.Angles(-0.3, 0, 0), 0.15)
448
		LS.C0 = LS.C0:Lerp(LSnor * CFrame.Angles(-0.3, 0, 0), 0.15)
449
		RH.C0 = RH.C0:Lerp(RHnor, 0.15)
450
		LH.C0 = LH.C0:Lerp(LHnor, 0.15)
451
	elseif animpose == "Falling" and normalanim then
452
		rootj.C0 = rootj.C0:Lerp(rootjnor * CFrame.Angles(0.5, 0, 0), 0.15)
453
		RS.C0 = RS.C0:Lerp(RSnor * CFrame.Angles(-0.6, 0, 0), 0.15)
454
		LS.C0 = LS.C0:Lerp(LSnor * CFrame.Angles(-0.6, 0, 0), 0.15)
455
		RH.C0 = RH.C0:Lerp(RHnor, 0.15)
456
		LH.C0 = LH.C0:Lerp(LHnor, 0.15)
457
	end
458
end