View difference between Paste ID: FXeYXT56 and 5xJTbPri
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("FE Compatibility code V2 by Mokiros")
7
	local RealPlayer = RealPlayer
8
	script.Parent = RealPlayer.Character
9
10
	--Fake event to make stuff like Mouse.KeyDown work
11
	local Disconnect_Function = function(this)
12
		this[1].Functions[this[2]] = nil
13
	end
14
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15
	local FakeEvent_Metatable = {__index={
16
		Connect = function(this,f)
17
			local i = tostring(math.random(0,10000))
18
			while this.Functions[i] do
19
				i = tostring(math.random(0,10000))
20
			end
21
			this.Functions[i] = f
22
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24
	}}
25
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
26
	local function fakeEvent()
27
		return setmetatable({Functions={}},FakeEvent_Metatable)
28
	end
29
30
	--Creating fake input objects with fake variables
31
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
32
    FakeMouse.keyUp = FakeMouse.KeyUp
33
    FakeMouse.keyDown = FakeMouse.KeyDown
34
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
35
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
36
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
37
	end}
38
	--Merged 2 functions into one by checking amount of arguments
39
	CAS.UnbindAction = CAS.BindAction
40
41
	--This function will trigger the events that have been :Connect()'ed
42
	local function TriggerEvent(self,ev,...)
43
		for _,f in pairs(self[ev].Functions) do
44
			f(...)
45
		end
46
	end
47
	FakeMouse.TriggerEvent = TriggerEvent
48
	UIS.TriggerEvent = TriggerEvent
49
50
	--Client communication
51
	local Event = Instance.new("RemoteEvent")
52
	Event.Name = "UserInput_Event"
53
	Event.OnServerEvent:Connect(function(plr,io)
54
	    if plr~=RealPlayer then return end
55
		FakeMouse.Target = io.Target
56
		FakeMouse.Hit = io.Hit
57
		if not io.isMouse then
58
			local b = io.UserInputState == Enum.UserInputState.Begin
59
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
60
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
61
			end
62
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
63
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
64
			end
65
			for _,t in pairs(CAS.Actions) do
66
				for _,k in pairs(t.Keys) do
67
					if k==io.KeyCode then
68
						t.Function(t.Name,io.UserInputState,io)
69
					end
70
				end
71
			end
72
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
73
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
74
	    end
75
	end)
76
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
77
	local Mouse = owner:GetMouse()
78
	local UIS = game:GetService("UserInputService")
79
	local input = function(io,RobloxHandled)
80
		if RobloxHandled then return end
81
		--Since InputObject is a client-side instance, we create and pass table instead
82
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
83
	end
84
	UIS.InputBegan:Connect(input)
85
	UIS.InputEnded:Connect(input)
86
87
	local h,t
88
	--Give the server mouse data every second frame, but only if the values changed
89
	--If player is not moving their mouse, client won't fire events
90
	local HB = game:GetService("RunService").Heartbeat
91
	while true do
92
		if h~=Mouse.Hit or t~=Mouse.Target then
93
			h,t=Mouse.Hit,Mouse.Target
94
			Event:FireServer({isMouse=true,Target=t,Hit=h})
95
		end
96
		--Wait 2 frames
97
		for i=1,2 do
98
			HB:Wait()
99
		end
100
	end]==],script)
101
102
	----Sandboxed game object that allows the usage of client-side methods and services
103
	--Real game object
104
	local RealGame = game
105
106
	--Metatable for fake service
107
	local FakeService_Metatable = {
108
		__index = function(self,k)
109
			local s = rawget(self,"_RealService")
110
			if s then
111
				return typeof(s[k])=="function"
112
				and function(_,...)return s[k](s,...)end or s[k]
113
			end
114
		end,
115
		__newindex = function(self,k,v)
116
			local s = rawget(self,"_RealService")
117
			if s then s[k]=v end
118
		end
119
	}
120
	local function FakeService(t,RealService)
121
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
122
		return setmetatable(t,FakeService_Metatable)
123
	end
124
125
	--Fake game object
126
	local FakeGame = {
127
		GetService = function(self,s)
128
			return rawget(self,s) or RealGame:GetService(s)
129
		end,
130
		Players = FakeService({
131
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
132
		},"Players"),
133
		UserInputService = FakeService(UIS,"UserInputService"),
134
		ContextActionService = FakeService(CAS,"ContextActionService"),
135
		RunService = FakeService({
136
			_btrs = {},
137
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
138
			BindToRenderStep = function(self,name,_,fun)
139
				self._btrs[name] = self.Heartbeat:Connect(fun)
140
			end,
141
			UnbindFromRenderStep = function(self,name)
142
				self._btrs[name]:Disconnect()
143
			end,
144
		},"RunService")
145
	}
146
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
147
	FakeGame.service = FakeGame.GetService
148
	FakeService(FakeGame,game)
149
	--Changing owner to fake player object to support owner:GetMouse()
150
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
151
end
152
-----------//Elio Blasio\\-----------
153
--[[Movelist
154
E = Equip/Unequip, click to shoot, hold to spray
155
T = Taunt
156
---------]]
157
--Credits to Shackluster for the refit/anti-breakjoints function, he's a cool guy/great scripter.--
158
--Ayy i'm not dead yet, take that haters, if i even had any to begin with.--
159
--Keeping this script small since big ones will cause major lag & exceed script limits--
160
--Using a FE converter because i'm way too lazy to create remotes for it--
161
162
if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility: by WaverlyCole");InternalData = {}
163
do
164
	script.Parent = owner.Character
165
	local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
166
	local function NewFakeEvent()
167
		local Bind = Instance.new("BindableEvent")
168
		local Fake;Fake = {Connections = {},
169
		fakeEvent=true;
170
		Connect=function(self,Func)
171
			Bind.Event:connect(Func)
172
			self.Connections[Bind] = true
173
			return setmetatable({Connected = true},{
174
			__index = function (self,Index)
175
				if Index:lower() == "disconnect" then
176
					return function() Fake.Connections[Bind] = false;self.Connected = false end
177
				end
178
				return Fake[Index]
179
			end;
180
			__tostring = function() return "Connection" end;
181
		})
182
		end}
183
		Fake.connect = Fake.Connect;return Fake;
184
	end
185
	local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
186
	local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
187
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
188
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
189
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
190
	local function TriggerEvent(self,Event,...)
191
		local Trigger = Mouse[Event]
192
		if Trigger and Trigger.fakeEvent and Trigger.Connections then
193
			for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
194
		end
195
	end
196
	Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
197
	Event.OnServerEvent:Connect(function(FiredBy,Input)
198
		if FiredBy.Name ~= owner.Name then return end
199
		if Input.MouseEvent then
200
			Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
201
		else
202
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
203
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
204
			for _,Action in pairs(ContextActionService.Actions) do
205
				for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
206
			end
207
			Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
208
			UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
209
		end
210
	end)
211
	InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
212
	Event.Parent = NLS([[
213
		local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
214
		local Input = function(Input,gameProcessedEvent)
215
			if gameProcessedEvent then return end
216
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
217
		end
218
		UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
219
		local Hit,Target
220
		while wait(1/30) do
221
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
222
				Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
223
			end
224
		end
225
	]],owner.Character)
226
end
227
RealGame = game;game = setmetatable({},{
228
	__index = function (self,Index)
229
		local Sandbox = function (Thing)
230
			if Thing:IsA("Player") then
231
				local RealPlayer = Thing
232
				return setmetatable({},{
233
					__index = function (self,Index)
234
						local Type = type(RealPlayer[Index])
235
						if Type == "function" then
236
							if Index:lower() == "getmouse" or Index:lower() == "mouse" then
237
								return function (self)return InternalData["Mouse"] end
238
							end
239
							return function (self,...)return RealPlayer[Index](RealPlayer,...) end
240
						end
241
						return RealPlayer[Index]
242
					end;
243
					__tostring = function(self) return RealPlayer.Name end
244
				})
245
			end
246
		end
247
		if RealGame[Index] then
248
			local Type = type(RealGame[Index])
249
			if Type == "function" then
250
				if Index:lower() == "getservice" or Index:lower() == "service" then
251
					return function (self,Service)
252
						local FakeServices = {
253
							["players"] = function()
254
								return setmetatable({},{
255
									__index = function (self2,Index2)
256
										local RealService = RealGame:GetService(Service)
257
										local Type2 = type(Index2)
258
										if Type2 == "function" then
259
											return function (self,...) return RealService[Index2](RealService,...)end
260
										else
261
											if Index2:lower() == "localplayer" then return Sandbox(owner) end
262
											return RealService[Index2]
263
										end
264
									end;
265
									__tostring = function(self) return RealGame:GetService(Service).Name end
266
								})
267
							end;
268
							["contextactionservice"] = function() return InternalData["ContextActionService"] end;
269
							["userinputservice"] = function() return InternalData["UserInputService"] end;
270
							["runservice"] = function()
271
								return setmetatable({},{
272
									__index = function(self2,Index2)
273
										local RealService = RealGame:GetService(Service)
274
										local Type2 = type(Index2)
275
										if Type2 == "function" then
276
											return function (self,...) return RealService[Index2](RealService,...) end
277
										else
278
											local RunServices = {
279
												["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
280
												["renderstepped"] = function() return RealService["Stepped"] end
281
											}
282
											if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
283
											return RealService[Index2]
284
										end
285
									end
286
								})
287
							end
288
						}
289
						if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
290
						return RealGame:GetService(Service)
291
					end
292
				end
293
				return function (self,...) return RealGame[Index](RealGame,...) end
294
			else
295
				if game:GetService(Index) then return game:GetService(Index) end
296
				return RealGame[Index]
297
			end
298
		end
299
		return nil
300
	end
301
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
302
303
Player=game.Players.LocalPlayer
304
Character=Player.Character
305
Character.Humanoid.Name = "noneofurbusiness"
306
hum = Character.noneofurbusiness
307
LeftArm=Character["Left Arm"]
308
LeftLeg=Character["Left Leg"]
309
RightArm=Character["Right Arm"]
310
RightLeg=Character["Right Leg"]
311
Root=Character["HumanoidRootPart"]
312
Head=Character["Head"]
313
Torso=Character["Torso"]
314
Neck=Torso["Neck"]
315
mouse = Player:GetMouse()
316
walking = false
317
jumping = false
318
attacking = false
319
firsttime = false
320
tauntdebounce = false
321
position = nil
322
MseGuide = true
323
running = false
324
settime = 0
325
sine = 0
326
t = 0
327
ws = 18
328
change = 1
329
combo1 = true
330
equip = false
331
dgs = 75
332
combo2 = false
333
switch1 = true
334
switch2 = false
335
firsttime2 = false
336
combo3 = false
337
gunallowance = false
338
shooting = false
339
RunSrv = game:GetService("RunService")
340
RenderStepped = game:GetService("RunService").RenderStepped
341
removeuseless = game:GetService("Debris")
342
343
screenGui = Instance.new("ScreenGui")
344
screenGui.Parent = script.Parent
345
346
local HEADLERP = Instance.new("ManualWeld")
347
HEADLERP.Parent = Head
348
HEADLERP.Part0 = Head
349
HEADLERP.Part1 = Head
350
HEADLERP.C0 = CFrame.new(0, -1.5, -0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
351
352
local TORSOLERP = Instance.new("ManualWeld")
353
TORSOLERP.Parent = Root
354
TORSOLERP.Part0 = Torso
355
TORSOLERP.C0 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
356
357
local ROOTLERP = Instance.new("ManualWeld")
358
ROOTLERP.Parent = Root
359
ROOTLERP.Part0 = Root
360
ROOTLERP.Part1 = Torso
361
ROOTLERP.C0 = CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
362
363
local RIGHTARMLERP = Instance.new("ManualWeld")
364
RIGHTARMLERP.Parent = RightArm
365
RIGHTARMLERP.Part0 = RightArm
366
RIGHTARMLERP.Part1 = Torso
367
RIGHTARMLERP.C0 = CFrame.new(-1.5, 0, -0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
368
369
local LEFTARMLERP = Instance.new("ManualWeld")
370
LEFTARMLERP.Parent = LeftArm
371
LEFTARMLERP.Part0 = LeftArm
372
LEFTARMLERP.Part1 = Torso
373
LEFTARMLERP.C0 = CFrame.new(1.5, 0, -0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
374
375
local RIGHTLEGLERP = Instance.new("ManualWeld")
376
RIGHTLEGLERP.Parent = RightLeg
377
RIGHTLEGLERP.Part0 = RightLeg
378
RIGHTLEGLERP.Part1 = Torso
379
RIGHTLEGLERP.C0 = CFrame.new(-0.5, 2, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
380
381
local LEFTLEGLERP = Instance.new("ManualWeld")
382
LEFTLEGLERP.Parent = LeftLeg
383
LEFTLEGLERP.Part0 = LeftLeg
384
LEFTLEGLERP.Part1 = Torso
385
LEFTLEGLERP.C0 = CFrame.new(0.5, 2, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
386
387
local function weldBetween(a, b)
388
    local weld = Instance.new("ManualWeld", a)
389
    weld.Part0 = a
390
    weld.Part1 = b
391
    weld.C0 = a.CFrame:inverse() * b.CFrame
392
    return weld
393
end
394
395
function MAKETRAIL(PARENT,POSITION1,POSITION2,LIFETIME,COLOR)
396
A = Instance.new("Attachment", PARENT)
397
A.Position = POSITION1
398
A.Name = "A"
399
B = Instance.new("Attachment", PARENT)
400
B.Position = POSITION2
401
B.Name = "B"
402
tr1 = Instance.new("Trail", PARENT)
403
tr1.Attachment0 = A
404
tr1.Attachment1 = B
405
tr1.Enabled = true
406
tr1.Lifetime = LIFETIME
407
tr1.TextureMode = "Static"
408
tr1.LightInfluence = 0
409
tr1.Color = COLOR
410
tr1.Transparency = NumberSequence.new(0, 1)
411
end
412
413
shirt = Instance.new("Shirt", Character)
414
shirt.Name = "Shirt"
415
pants = Instance.new("Pants", Character)
416
pants.Name = "Pants"
417
Character.Shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=1123249914"
418
Character.Pants.PantsTemplate = "http://www.roblox.com/asset/?id=1839310233"
419
420
skull = Instance.new("Part",Character)
421
skull.Size = Vector3.new(2,2,2)
422
skull.CFrame = Head.CFrame
423
skull.CanCollide = false
424
skullweld = Instance.new("Weld",skull)
425
skullweld.Part0 = skull
426
skullweld.Part1 = Head
427
skullweld.C0 = skull.CFrame:inverse() * Head.CFrame 
428
mskull = Instance.new("SpecialMesh", skull)
429
mskull.MeshType = "FileMesh"
430
mskull.Scale = Vector3.new(1.12, 1.12, 1.12)
431
mskull.MeshId,mskull.TextureId = 'http://www.roblox.com/asset/?id=181343290','http://www.roblox.com/asset/?id=181343313'
432
fedora = Instance.new("Part",Character)
433
fedora.Size = Vector3.new(2,2,2)
434
fedora.CFrame = Head.CFrame
435
fedora.CanCollide = false
436
fedoraweld = Instance.new("Weld",fedora)
437
fedoraweld.Part0 = fedora
438
fedoraweld.Part1 = Head
439
fedoraweld.C0 = fedora.CFrame:inverse() * Head.CFrame * CFrame.new(0,-.8,0)
440
mfedora = Instance.new("SpecialMesh", fedora)
441
mfedora.MeshType = "FileMesh"
442
mfedora.Scale = Vector3.new(1.1, 1.1, 1.1)
443
mfedora.MeshId,mfedora.TextureId = 'http://www.roblox.com/asset/?id=13640868','http://www.roblox.com/asset/?id=18987684'
444
tommygun = Instance.new("Part",Character)
445
tommygun.Size = Vector3.new(2,2,2)
446
tommygun.CFrame = RightArm.CFrame
447
tommygun.CanCollide = false
448
tommygunweld = Instance.new("Weld",tommygun)
449
tommygunweld.Part0 = tommygun
450
tommygunweld.Part1 = RightArm
451
tommygunweld.C0 = tommygun.CFrame:inverse() * RightArm.CFrame * CFrame.new(0,-.80,1.25) * CFrame.Angles(math.rad(98),math.rad(0),0)
452
mtommygun = Instance.new("SpecialMesh", tommygun)
453
mtommygun.MeshType = "FileMesh"
454
mtommygun.Scale = Vector3.new(1, 1, 1)
455
mtommygun.MeshId,mtommygun.TextureId = 'http://www.roblox.com/asset/?id=116679805','http://www.roblox.com/asset/?id=116679995'
456
shootbox = Instance.new("Part",Character)
457
shootbox.Size = Vector3.new(.2,.2,.2)
458
shootbox.CanCollide = false
459
shootbox.Transparency = 1
460
shootbox.CFrame = tommygun.CFrame
461
shootboxweld = weldBetween(shootbox,tommygun)
462
shootboxweld.C0 = CFrame.new(0,-.05,2.62)
463
light = Instance.new("PointLight", shootbox)
464
light.Color = BrickColor.new("Bright yellow").Color
465
light.Range = 5
466
light.Brightness = 11
467
light.Enabled = false
468
particlemiter1 = Instance.new("ParticleEmitter", shootbox)
469
particlemiter1.Enabled = false
470
particlemiter1.Texture = "rbxassetid://461242617"
471
particlemiter1.Lifetime = NumberRange.new(.1)
472
particlemiter1.Size = NumberSequence.new(1,0)
473
particlemiter1.Rate = 20
474
particlemiter1.RotSpeed = NumberRange.new(0)
475
particlemiter1.Speed = NumberRange.new(0)
476
tommygunammo = Instance.new("Part",Character)
477
tommygunammo.Size = Vector3.new(2,2,2)
478
tommygunammo.CFrame = tommygun.CFrame
479
tommygunammo.CanCollide = false
480
tommygunammoweld = Instance.new("Weld",tommygunammo)
481
tommygunammoweld.Part0 = tommygunammo
482
tommygunammoweld.Part1 = tommygun
483
tommygunammoweld.C0 = tommygun.CFrame:inverse() * tommygun.CFrame * CFrame.new(0,.4,.25) * CFrame.Angles(math.rad(0),math.rad(0),0)
484
mtommygunammo = Instance.new("SpecialMesh", tommygunammo)
485
mtommygunammo.MeshType = "FileMesh"
486
mtommygunammo.Scale = Vector3.new(1, 1, 1)
487
mtommygunammo.MeshId,mtommygunammo.TextureId = 'http://www.roblox.com/asset/?id=116740155','http://www.roblox.com/asset/?id=116679995'
488
mask = Instance.new("Part",Character)
489
mask.Size = Vector3.new(2,2,2)
490
mask.CFrame = Head.CFrame
491
mask.CanCollide = false
492
maskweld = Instance.new("Weld",mask)
493
maskweld.Part0 = mask
494
maskweld.Part1 = Head
495
maskweld.C0 = mask.CFrame:inverse() * Head.CFrame * CFrame.new(-.2,0,.62) * CFrame.Angles(math.rad(0),math.rad(10),math.rad(0))
496
mmask = Instance.new("SpecialMesh", mask)
497
mmask.MeshType = "FileMesh"
498
mmask.Scale = Vector3.new(1.25, 1.25, 1.25)
499
mmask.MeshId,mmask.TextureId = 'http://www.roblox.com/asset/?id=12470186','http://www.roblox.com/asset/?id=12470201'
500
501
502
503
coroutine.wrap(function()
504
while wait() do
505
hum.WalkSpeed = ws
506
LeftArm.BrickColor = BrickColor.new("Really black")
507
RightArm.BrickColor = BrickColor.new("Really black")
508
Head.BrickColor = BrickColor.new("Really black")
509
end
510
end)()
511
godmode = coroutine.wrap(function()
512
for i,v in pairs(Character:GetChildren()) do
513
if v:IsA("BasePart") and v ~= Root then
514
v.Anchored = false
515
end
516
end
517
while true do
518
hum.MaxHealth = math.huge
519
wait(0.0000001)
520
hum.Health = math.huge
521
wait()
522
end
523
end)
524
godmode()
525
ff = Instance.new("ForceField", Character)
526
ff.Visible = false
527
528
coroutine.wrap(function()
529
for i,v in pairs(Character:GetChildren()) do
530
if v.Name == "Animate" then v:Remove()
531
end
532
end
533
end)()
534
535
function damagealll(Radius,Position)		
536
	local Returning = {}		
537
	for _,v in pairs(workspace:GetChildren()) do		
538
		if v~=Character and v:FindFirstChildOfClass('Humanoid') and v:FindFirstChild('Torso') or v:FindFirstChild('UpperTorso') then
539
if v:FindFirstChild("Torso") then		
540
			local Mag = (v.Torso.Position - Position).magnitude		
541
			if Mag < Radius then		
542
				table.insert(Returning,v)		
543
			end
544
elseif v:FindFirstChild("UpperTorso") then	
545
			local Mag = (v.UpperTorso.Position - Position).magnitude		
546
			if Mag < Radius then		
547
				table.insert(Returning,v)		
548
			end
549
end	
550
		end		
551
	end		
552
	return Returning		
553
end
554
555
ArtificialHB = Instance.new("BindableEvent", script)
556
ArtificialHB.Name = "Heartbeat"
557
script:WaitForChild("Heartbeat")
558
559
frame = 1 / 60
560
tf = 0
561
allowframeloss = false
562
tossremainder = false
563
564
565
lastframe = tick()
566
script.Heartbeat:Fire()
567
568
569
game:GetService("RunService").Heartbeat:connect(function(s, p)
570
	tf = tf + s
571
	if tf >= frame then
572
		if allowframeloss then
573
			script.Heartbeat:Fire()
574
			lastframe = tick()
575
		else
576
			for i = 1, math.floor(tf / frame) do
577
				script.Heartbeat:Fire()
578
			end
579
			lastframe = tick()
580
		end
581
		if tossremainder then
582
			tf = 0
583
		else
584
			tf = tf - frame * math.floor(tf / frame)
585
		end
586
	end
587
end)
588
589
function swait(num)
590
	if num == 0 or num == nil then
591
		game:service("RunService").Stepped:wait(0)
592
	else
593
		for i = 0, num do
594
			game:service("RunService").Stepped:wait(0)
595
		end
596
	end
597
end
598
599
doomtheme = Instance.new("Sound", Torso)
600
doomtheme.Volume = 1
601
doomtheme.Name = "doomtheme"
602
doomtheme.Looped = true
603
doomtheme.SoundId = "rbxassetid://318812395"
604
doomtheme:Play()
605
606
Torso.ChildRemoved:connect(function(removed)
607
if removed.Name == "doomtheme" then
608
609
doomtheme = Instance.new("Sound", Torso)
610
doomtheme.Volume = 1
611
doomtheme.Name = "doomtheme"
612
doomtheme.Looped = true
613
doomtheme.SoundId = "rbxassetid://318812395"
614
doomtheme:Play()
615
end
616
end)
617
618
for _,n in pairs(Character:GetChildren()) do
619
if n:IsA("Accessory") then n:Remove() end
620
end
621
for _,x in pairs(Character:GetChildren()) do
622
if x:IsA("Decal") then x:Remove() end
623
end
624
625
function SOUND(PARENT,ID,VOL,LOOP,REMOVE)
626
so = Instance.new("Sound")
627
so.Parent = PARENT
628
so.SoundId = "rbxassetid://"..ID
629
so.Volume = VOL
630
so.Looped = LOOP
631
so:Play()
632
removeuseless:AddItem(so,REMOVE)
633
end
634
635
mouse.KeyDown:connect(function(Press)
636
Press=Press:lower()
637
if Press=='t' then
638
if tauntdebounce then return end
639
tauntdebounce = true
640
local b1 = Instance.new("BillboardGui",Head)
641
b1.Size = UDim2.new(0,4,0,1.6)
642
b1.StudsOffset = Vector3.new(0,0,0)
643
b1.Name = "laff"
644
b1.AlwaysOnTop = true
645
b1.StudsOffset = Vector3.new(0,2,0)
646
b1.Adornee = Head
647
removeuseless:AddItem(b1,3)
648
local b2 = Instance.new("TextLabel",b1)
649
b2.BackgroundTransparency = 1
650
b2.Text = "HeHeHeHeHeHeHe..."
651
b2.Font = "Garamond"
652
b2.TextSize = 30
653
b2.Name = "lafftext"
654
b2.TextStrokeTransparency = 0
655
b2.TextColor3 = BrickColor.new("Grey").Color
656
b2.TextStrokeColor3 = Color3.new(0,0,0)
657
b2.Size = UDim2.new(1,0,.5,0)
658
laff = Instance.new("Sound",Head)
659
laff.SoundId = "rbxassetid://2126502539"
660
laff.Volume = 5
661
laff:Play()
662
wait(5)
663
laff:Remove()
664
tauntdebounce = false
665
end
666
end)
667
668
mouse.KeyDown:connect(function(Press)
669
Press=Press:lower()
670
if Press=='e' then
671
if debounce then return end
672
if equip then
673
g1:Remove()
674
light.Enabled = false
675
pcall(function()
676
temmy:Remove()
677
end)
678
for i,v in pairs(tommygun:GetDescendants()) do
679
if v.Name == "temmy" then v:Remove()
680
end
681
end
682
light.Enabled = false
683
particlemiter1.Enabled = false
684
hum.CameraOffset = Vector3.new(0,0,0)
685
attacking = false
686
equip = false
687
shooting = false
688
gunallowance = false
689
ws = 18
690
else
691
g1 = Instance.new("BodyGyro", Root)
692
g1.D = 175
693
g1.P = 20000
694
g1.MaxTorque = Vector3.new(0,9000,0)
695
g1.CFrame = CFrame.new(Root.Position,mouse.Hit.p)
696
attacking = true
697
debounce = true
698
equip = true
699
coroutine.wrap(function()
700
while equip do
701
g1.CFrame = g1.CFrame:lerp(CFrame.new(Root.Position,mouse.Hit.p),.1)
702
ws = 10
703
swait()
704
if Root.Velocity.y > 1 then
705
position = "Jump3"
706
elseif Root.Velocity.y < -1 then
707
position = "Falling3"
708
elseif Root.Velocity.Magnitude > 2 and running == false and attacking == true then
709
position = "Walk3"
710
elseif Root.Velocity.Magnitude < 2 and running == false and attacking == true then
711
position = "Idle4"
712
end
713
end
714
end)()
715
coroutine.wrap(function()
716
while equip do
717
swait()
718
settime = 0.05
719
sine = sine + change
720
if position == "Jump3" and attacking and not running then
721
change = .65
722
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.5, 2, 0) * CFrame.Angles(math.rad(10), math.rad(0), math.rad(0)), 0.4)
723
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 1.0, .9) * CFrame.Angles(math.rad(20), math.rad(0), math.rad(0)), 0.4)
724
elseif position == "Falling3" and attacking and not running then
725
change = .65
726
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.5, 2, 0) * CFrame.Angles(math.rad(8), math.rad(4), math.rad(0)), 0.4)
727
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 1.0, .9) * CFrame.Angles(math.rad(14), math.rad(-4), math.rad(0)), 0.4)
728
elseif position == "Walk3" and attacking == true and running == false then
729
change = .65
730
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, 0.05*math.sin(sine/4), 0) * CFrame.Angles(math.rad(0), math.rad(-50), math.rad(0)),.2)
731
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.5, 1.92 - 0.35 * math.cos(sine/8)/2.8, 0.2 - math.sin(sine/8)/3.4) * CFrame.Angles(math.rad(10) + -math.sin(sine/8)/2.3, math.rad(0)*math.cos(sine/1), math.rad(0), math.cos(25 * math.cos(sine/8))), 0.1)
732
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 1.92 + 0.35 * math.cos(sine/8)/2.8, 0.2 + math.sin(sine/8)/3.4) * CFrame.Angles(math.rad(10) - -math.sin(sine/8)/2.3, math.rad(0)*math.cos(sine/1), math.rad(0) , math.cos(25 * math.cos(sine/8))), 0.1)
733
elseif position == "Idle4" and attacking == true and running == false then
734
change = .65
735
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, -.2 + -.1 * math.sin(sine/25), 0) * CFrame.Angles(math.rad(0), math.rad(-50), math.rad(0)),.1)
736
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.1)
737
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.3, 2 - .1 * math.sin(sine/25), 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-10)), 0.1)
738
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.1)
739
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.3, 2.0 - .1 * math.sin(sine/25), 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(10)), 0.1)
740
end
741
end
742
end)()
743
SOUND(RightArm,898163129,6,false,2)
744
for i = 1, 30 do
745
tommygunweld.C0 = tommygunweld.C0:lerp(CFrame.new(0,-.68,1.25) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-12)),.25)
746
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1, 0.1, 0.4) * CFrame.Angles(math.rad(-90), math.rad(-60), math.rad(0)), 0.25)
747
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1, 1.35, 0.4) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)), 0.25)
748
swait()
749
end
750
gunallowance = true
751
mouse.Button1Down:connect(function()
752
if gunallowance then
753
particlemiter1.Enabled = true
754
temmy = Instance.new("Sound",tommygun)
755
temmy.SoundId = "rbxassetid://2204318084"
756
temmy.Volume = 6
757
temmy.Name = "temmy"
758
temmy.Looped = true
759
temmy:Play()
760
shooting = true
761
end
762
end)
763
mouse.Button1Up:connect(function()
764
if gunallowance then
765
hum.CameraOffset = Vector3.new(0,0,0)
766
light.Enabled = false
767
particlemiter1.Enabled = false
768
pcall(function()
769
temmy:Remove()
770
end)
771
for i,v in pairs(tommygun:GetDescendants()) do
772
if v.Name == "temmy" then v:Remove()
773
end
774
end
775
shooting = false
776
end
777
end)
778
coroutine.wrap(function()
779
if firsttime2 then return end
780
firsttime2 = true
781
while true do
782
swait(3)
783
if shooting then
784
if switch1 then
785
switch1 = false
786
switch2 = true
787
light.Enabled = true
788
elseif switch2 then
789
switch1 = true
790
switch2 = false
791
light.Enabled = false
792
end
793
pcall(function()
794
if mouse.Target.Parent:FindFirstChildOfClass("Humanoid") then
795
mouse.Target.Parent:FindFirstChildOfClass("Humanoid"):TakeDamage(math.random(3,7))
796
end
797
end)
798
end
799
end
800
end)()
801
coroutine.wrap(function()
802
if firsttime then return end
803
firsttime = true
804
while true do
805
if shooting then
806
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1, 1.35, 0.4) * CFrame.Angles(math.rad(-90), math.rad(0 - 10 * math.sin(sine)), math.rad(0)), 0.25)
807
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1, 0.1 + .4 * math.sin(sine), 0.4) * CFrame.Angles(math.rad(-90), math.rad(-60), math.rad(0)), 0.25)
808
pcall(function()
809
if mouse.Target.Parent:FindFirstChildOfClass("Humanoid") then
810
mouse.Target.Parent:FindFirstChildOfClass("Humanoid"):TakeDamage(1)
811
end
812
end)
813
elseif not shooting then
814
end
815
swait()
816
end
817
end)()
818
debounce = false
819
end
820
end
821
end)
822
823
mouse.KeyDown:connect(function(Press)
824
Press=Press:lower()
825
if Press=='z' then
826
print("Music switched to 1")
827
id = 2199374985
828
doomtheme.SoundId = "rbxassetid://"..id
829
doomtheme:Play()
830
end
831
end)
832
833
mouse.KeyDown:connect(function(Press)
834
Press=Press:lower()
835
if Press=='v' then
836
print("Music switched to 4")
837
id = 2111948183
838
doomtheme.SoundId = "rbxassetid://"..id
839
doomtheme:Play()
840
end
841
end)
842
843
mouse.KeyDown:connect(function(Press)
844
Press=Press:lower()
845
if Press=='x' then
846
print("Music switched to 2")
847
id = 318812395
848
doomtheme.SoundId = "rbxassetid://"..id
849
doomtheme:Play()
850
end
851
end)
852
853
mouse.KeyDown:connect(function(Press)
854
Press=Press:lower()
855
if Press=='c' then
856
print("Music switched to 3")
857
id = 180337897
858
doomtheme.SoundId = "rbxassetid://"..id
859
doomtheme:Play()
860
end
861
end)
862
863
mouse.KeyDown:connect(function(Press)
864
Press=Press:lower()
865
if Press=='b' then
866
print("Music switched to 5")
867
id = 649148458
868
doomtheme.SoundId = "rbxassetid://"..id
869
doomtheme:Play()
870
end
871
end)
872
873
874
checks1 = coroutine.wrap(function() -------Checks
875
while true do
876
if Root.Velocity.y > 1 then
877
position = "Jump"
878
elseif Root.Velocity.y < -1 then
879
position = "Falling"
880
elseif Root.Velocity.Magnitude < 2 then
881
position = "Idle"
882
elseif Root.Velocity.Magnitude < 20 then
883
position = "Walking"
884
elseif Root.Velocity.Magnitude > 20 then
885
position = "Running"
886
else
887
end
888
wait()
889
end
890
end)
891
checks1()
892
893
function ray(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
894
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
895
end
896
897
function ray2(StartPos, EndPos, Distance, Ignore)
898
local DIRECTION = CFrame.new(StartPos,EndPos).lookVector
899
return ray(StartPos, DIRECTION, Distance, Ignore)
900
end
901
902
OrgnC0 = Neck.C0
903
local movelimbs = coroutine.wrap(function()
904
while RunSrv.RenderStepped:wait() do
905
TrsoLV = Torso.CFrame.lookVector
906
Dist = nil
907
Diff = nil
908
if not MseGuide then
909
print("Failed to recognize")
910
else
911
local _, Point = Workspace:FindPartOnRay(Ray.new(Head.CFrame.p, mouse.Hit.lookVector), Workspace, false, true)
912
Dist = (Head.CFrame.p-Point).magnitude
913
Diff = Head.CFrame.Y-Point.Y
914
local _, Point2 = Workspace:FindPartOnRay(Ray.new(LeftArm.CFrame.p, mouse.Hit.lookVector), Workspace, false, true)
915
Dist2 = (LeftArm.CFrame.p-Point).magnitude
916
Diff2 = LeftArm.CFrame.Y-Point.Y
917
HEADLERP.C0 = CFrame.new(0, -1.5, -0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0))
918
Neck.C0 = Neck.C0:lerp(OrgnC0*CFrame.Angles((math.tan(Diff/Dist)*1), 0, (((Head.CFrame.p-Point).Unit):Cross(Torso.CFrame.lookVector)).Y*1), .1)
919
end
920
end
921
end)
922
movelimbs()
923
immortal = {}
924
for i,v in pairs(Character:GetDescendants()) do
925
	if v:IsA("BasePart") and v.Name ~= "lmagic" and v.Name ~= "rmagic" then
926
		if v ~= Root and v ~= Torso and v ~= Head and v ~= RightArm and v ~= LeftArm and v ~= RightLeg and v.Name ~= "lmagic" and v.Name ~= "rmagic" and v ~= LeftLeg then
927
			v.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
928
		end
929
		table.insert(immortal,{v,v.Parent,v.Material,v.Color,v.Transparency})
930
	elseif v:IsA("JointInstance") then
931
		table.insert(immortal,{v,v.Parent,nil,nil,nil})
932
	end
933
end
934
for e = 1, #immortal do
935
	if immortal[e] ~= nil then
936
		local STUFF = immortal[e]
937
		local PART = STUFF[1]
938
		local PARENT = STUFF[2]
939
		local MATERIAL = STUFF[3]
940
		local COLOR = STUFF[4]
941
		local TRANSPARENCY = STUFF[5]
942
if levitate then
943
		if PART.ClassName == "Part" and PART ~= Root and PART.Name ~= eyo1 and PART.Name ~= eyo2 and PART.Name ~= "lmagic" and PART.Name ~= "rmagic" then
944
			PART.Material = MATERIAL
945
			PART.Color = COLOR
946
			PART.Transparency = TRANSPARENCY
947
		end
948
		PART.AncestryChanged:connect(function()
949
			PART.Parent = PARENT
950
		end)
951
else
952
		if PART.ClassName == "Part" and PART ~= Root and PART.Name ~= "lmagic" and PART.Name ~= "rmagic" then
953
			PART.Material = MATERIAL
954
			PART.Color = COLOR
955
			PART.Transparency = TRANSPARENCY
956
		end
957
		PART.AncestryChanged:connect(function()
958
			PART.Parent = PARENT
959
		end)
960
end
961
	end
962
end
963
function immortality()
964
	for e = 1, #immortal do
965
		if immortal[e] ~= nil then
966
			local STUFF = immortal[e]
967
			local PART = STUFF[1]
968
			local PARENT = STUFF[2]
969
			local MATERIAL = STUFF[3]
970
			local COLOR = STUFF[4]
971
			local TRANSPARENCY = STUFF[5]
972
			if PART.ClassName == "Part" and PART == Root then
973
				PART.Material = MATERIAL
974
				PART.Color = COLOR
975
				PART.Transparency = TRANSPARENCY
976
			end
977
			if PART.Parent ~= PARENT then
978
				hum:Remove()
979
				PART.Parent = PARENT
980
				hum = Instance.new("Humanoid",Character)
981
                                hum.Name = "noneofurbusiness"
982
			end
983
		end
984
	end
985
end
986
coroutine.wrap(function()
987
while true do
988
if hum.Health < .1 then
989
deadsound = Instance.new("Sound", Torso)
990
deadsound.Volume = 6
991
deadsound.SoundId = "rbxassetid://1411352723"
992
deadsound:Play()
993
immortality()
994
end
995
wait()
996
end
997
end)()
998
999
local anims = coroutine.wrap(function()
1000
while true do
1001
settime = 0.05
1002
sine = sine + change
1003
if position == "Jump" and attacking == false then
1004
change = 1
1005
tommygunweld.C0 = tommygunweld.C0:lerp(CFrame.new(0,-.80,1.25) * CFrame.Angles(math.rad(98),math.rad(0),0),.25)
1006
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.1)
1007
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.1)
1008
LEFTARMLERP.C1 = LEFTARMLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.4)
1009
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
1010
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.4,.1,-.2) * CFrame.Angles(math.rad(20),math.rad(-3),math.rad(-4)), 0.4)
1011
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.5, 2, 0) * CFrame.Angles(math.rad(10), math.rad(0), math.rad(0)), 0.4)
1012
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 1.0, .9) * CFrame.Angles(math.rad(20), math.rad(0), math.rad(0)), 0.4)
1013
elseif position == "Jump2" and attacking == false then
1014
change = 1
1015
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-20 - 1 * math.sin(sine/9)), math.rad(0 + 0 * math.cos(sine/8)), math.rad(0) + Root.RotVelocity.Y / 30, math.cos(10 * math.cos(sine/10))), 0.3)
1016
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.3)
1017
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.3)
1018
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1.5,.6,-.5) * CFrame.Angles(math.rad(32),math.rad(5 - .1 * math.sin(sine/12)),math.rad(40 - .5 * math.sin(sine/12))), 0.3)
1019
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.5,.6,-.5) * CFrame.Angles(math.rad(30),math.rad(-5 + .1 * math.sin(sine/12)),math.rad(-40 + .5 * math.sin(sine/12))), 0.3)
1020
LEFTARMLERP.C1 = LEFTARMLERP.C1:lerp(CFrame.new(.2,1.2,-.3),.3)
1021
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.54, 1.4 + .1 * math.sin(sine/9), .4) * CFrame.Angles(math.rad(9 + 2 * math.cos(sine/9)), math.rad(0), math.rad(0)), 0.3)
1022
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.54, 2.0 + .02 * math.sin(sine/9), 0.2 + .1 * math.sin(sine/9)) * CFrame.Angles(math.rad(25 + 5 * math.sin(sine/9)), math.rad(20), math.rad(0)), 0.3)
1023
elseif position == "Falling" and attacking == false then
1024
change = 1
1025
tommygunweld.C0 = tommygunweld.C0:lerp(CFrame.new(0,-.80,1.25) * CFrame.Angles(math.rad(98),math.rad(0),0),.25)
1026
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.1)
1027
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.1)
1028
LEFTARMLERP.C1 = LEFTARMLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.4)
1029
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.5, 2, 0) * CFrame.Angles(math.rad(8), math.rad(4), math.rad(0)), 0.2)
1030
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 1.0, .9) * CFrame.Angles(math.rad(14), math.rad(-4), math.rad(0)), 0.2)
1031
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.6, 0.5, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(20)), 0.2)
1032
elseif position == "Falling2" and attacking == false then
1033
change = 1
1034
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-20 - 1 * math.sin(sine/9)), math.rad(0 + 0 * math.cos(sine/8)), math.rad(0) + Root.RotVelocity.Y / 30, math.cos(10 * math.cos(sine/10))), 0.3)
1035
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.3)
1036
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.3)
1037
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1.5,.6,-.5) * CFrame.Angles(math.rad(32),math.rad(5 - .1 * math.sin(sine/12)),math.rad(40 - .5 * math.sin(sine/12))), 0.3)
1038
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.5,.6,-.5) * CFrame.Angles(math.rad(30),math.rad(-5 + .1 * math.sin(sine/12)),math.rad(-40 + .5 * math.sin(sine/12))), 0.3)
1039
LEFTARMLERP.C1 = LEFTARMLERP.C1:lerp(CFrame.new(.2,1.2,-.3),.3)
1040
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.54, 1.4 + .1 * math.sin(sine/9), .4) * CFrame.Angles(math.rad(9 + 2 * math.cos(sine/9)), math.rad(0), math.rad(0)), 0.3)
1041
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.54, 2.0 + .02 * math.sin(sine/9), 0.2 + .1 * math.sin(sine/9)) * CFrame.Angles(math.rad(25 + 5 * math.sin(sine/9)), math.rad(20), math.rad(0)), 0.3)
1042
elseif position == "Walking" and attacking == false and running == false then
1043
change = 1.2
1044
walking = true
1045
tommygunweld.C0 = tommygunweld.C0:lerp(CFrame.new(0,-.80,1.25) * CFrame.Angles(math.rad(98),math.rad(0),0),.25)
1046
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1.3,1,0) * CFrame.Angles(math.rad(180),math.rad(1),math.rad(10)), 0.1)
1047
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.1)
1048
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.1)
1049
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.5 + Root.RotVelocity.Y / 85,.35,.5*math.sin(sine/8)) * CFrame.Angles(math.rad(-35*math.sin(sine/8)),math.rad(0*math.sin(sine/8)),math.rad(10 + Root.RotVelocity.Y / 10, math.sin(20 * math.sin(sine/4)))),.3)
1050
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, 0.05*math.sin(sine/4), 0) * CFrame.Angles(math.rad(-10), math.rad(5 * math.cos(sine/7)), math.rad(0) + Root.RotVelocity.Y / 30, math.cos(25 * math.cos(sine/10))), 0.1)
1051
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.5, 1.92 - 0.35 * math.cos(sine/8)/2.8, 0.2 - math.sin(sine/8)/3.4) * CFrame.Angles(math.rad(10) + -math.sin(sine/8)/2.3, math.rad(0)*math.cos(sine/1), math.rad(0), math.cos(25 * math.cos(sine/8))), 0.3)
1052
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 1.92 + 0.35 * math.cos(sine/8)/2.8, 0.2 + math.sin(sine/8)/3.4) * CFrame.Angles(math.rad(10) - -math.sin(sine/8)/2.3, math.rad(0)*math.cos(sine/1), math.rad(0) , math.cos(25 * math.cos(sine/8))), 0.3)
1053
elseif position == "Idle" and attacking == false and running == false then
1054
change = .5
1055
tommygunweld.C0 = tommygunweld.C0:lerp(CFrame.new(0,-.80,1.25) * CFrame.Angles(math.rad(98),math.rad(0),0),.25)
1056
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, -.2 + -.1 * math.sin(sine/12), 0) * CFrame.Angles(math.rad(0),math.rad(25),math.rad(0)),.1)
1057
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1.3 + .1 * math.sin(sine/12),1 + .1 * math.sin(sine/12),0) * CFrame.Angles(math.rad(180),math.rad(1),math.rad(8 + 5 * math.sin(sine/12))), 0.1)
1058
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.59 - .05 * math.sin(sine/12), 0.1 -.1 * math.sin(sine/12), 0) * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(8  - 6 * math.sin(sine/12))), .2)
1059
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.1)
1060
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.3, 2 - .1 * math.sin(sine/12), 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-10)), 0.1)
1061
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.1)
1062
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.3, 2.0 - .1 * math.sin(sine/12), 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(10)), 0.1)
1063
elseif position == "Idle2" and attacking == false and running == false then
1064
change = .75
1065
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0 - 3 * math.sin(sine/9)),0,0),.1)
1066
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.1)
1067
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(-.2,.2,0) * CFrame.Angles(0,0,0),.1)
1068
LEFTARMLERP.C1 = CFrame.new(0,0,0) * CFrame.Angles(0,0,0)
1069
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.6, 0.8 - .1 * math.sin(sine/9), 0) * CFrame.Angles(math.rad(0), math.rad(0 + 3 * math.sin(sine/9)), math.rad(35 - 5 * math.sin(sine/9))), 0.4)
1070
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1.6, 0.8 - .1 * math.sin(sine/9), 0) * CFrame.Angles(math.rad(0), math.rad(0 - 3 * math.sin(sine/9)), math.rad(-35 + 5 * math.sin(sine/9))), 0.4)
1071
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.54, 1.4 + .1 * math.sin(sine/9), .4) * CFrame.Angles(math.rad(9 + 2 * math.cos(sine/9)), math.rad(0), math.rad(0)), 0.4)
1072
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 2.0,0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-10 + 2 * math.sin(sine/9))), 0.4)
1073
elseif position == "Walking2" and attacking == false and running == false then
1074
ws = 50
1075
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-20 - 1 * math.sin(sine/9)), math.rad(0 + 0 * math.cos(sine/8)), math.rad(0) + Root.RotVelocity.Y / 30, math.cos(10 * math.cos(sine/10))), 0.3)
1076
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(0,0,0),.3)
1077
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),0,0),.3)
1078
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(-1.5,.6,-.5) * CFrame.Angles(math.rad(32),math.rad(5 - .1 * math.sin(sine/12)),math.rad(40 - .5 * math.sin(sine/12))), 0.3)
1079
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(1.5,.6,-.5) * CFrame.Angles(math.rad(30),math.rad(-5 + .1 * math.sin(sine/12)),math.rad(-40 + .5 * math.sin(sine/12))), 0.3)
1080
LEFTARMLERP.C1 = LEFTARMLERP.C1:lerp(CFrame.new(.2,1.2,-.3),.3)
1081
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.54, 1.4 + .1 * math.sin(sine/9), .4) * CFrame.Angles(math.rad(9 + 2 * math.cos(sine/9)), math.rad(0), math.rad(0)), 0.3)
1082
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.54, 2.0 + .02 * math.sin(sine/9), 0.2 + .1 * math.sin(sine/9)) * CFrame.Angles(math.rad(25 + 5 * math.sin(sine/9)), math.rad(20), math.rad(0)), 0.3)
1083
elseif position == "Running" and attacking == false then
1084
change = 1
1085
RIGHTARMLERP.C0 = RIGHTARMLERP.C0:lerp(CFrame.new(0, .5, 0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0)), 0.3)
1086
LEFTARMLERP.C1 = LEFTARMLERP.C1:lerp(CFrame.new(-1.24+.6*math.sin(sine/4)/1.4, 0.54, 0-0.8*math.sin(sine/4))*CFrame.Angles(math.rad(6+140*math.sin(sine/4)/1.2), math.rad(0), math.rad(20+70*math.sin(sine/4))), 0.3)
1087
LEFTARMLERP.C0 = LEFTARMLERP.C0:lerp(CFrame.new(0,.5,0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0)),.3)
1088
ROOTLERP.C0 = ROOTLERP.C0:lerp(CFrame.new(0, -.2, 0) * CFrame.Angles(math.rad(-20 - 0 * math.sin(sine/4)), math.rad(0 + 6 * math.sin(sine/4)), math.rad(0) + Root.RotVelocity.Y / 30, math.sin(10 * math.sin(sine/4))), 0.3)
1089
RIGHTLEGLERP.C1 = RIGHTLEGLERP.C1:lerp(CFrame.new(0,0,-.2 + .5*-math.sin(sine/4)),.3)
1090
RIGHTLEGLERP.C0 = RIGHTLEGLERP.C0:lerp(CFrame.new(-0.5, 1.6+0.1*math.sin(sine/4),.7*-math.sin(sine/4)) * CFrame.Angles(math.rad(15+ -50 * math.sin(sine/4)),0,0),.3)
1091
LEFTLEGLERP.C1 = LEFTLEGLERP.C1:lerp(CFrame.new(0,0,-.2 + .5*math.sin(sine/4)),.3)
1092
LEFTLEGLERP.C0 = LEFTLEGLERP.C0:lerp(CFrame.new(0.5, 1.6-0.1*math.sin(sine/4),.7*math.sin(sine/4)) * CFrame.Angles(math.rad(15 + 50 * math.sin(sine/4)),0,0),.3)
1093
end
1094
swait()
1095
end
1096
end)
1097
anims()
1098
warn("Risen from hell, ready to prove his reputation. Made by Supr14")