View difference between Paste ID: yQ3CNKVJ and ki1PJsaM
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
153
wait(0.2)
154
155
Nells = game.Players.LocalPlayer
156
New = function(Object, Parent, Name, Data)
157
	local Object = Instance.new(Object)
158
	for Index, Value in pairs(Data or {}) do
159
		Object[Index] = Value
160
	end
161
	Object.Parent = Parent
162
	Object.Name = Name
163
	return Object
164
end
165
166
local plr = game.Players.LocalPlayer.Character
167
168
Player = game:service'Players'.localPlayer
169
chara = Player.Character
170
Head = chara.Head
171
Bonniee = Instance.new("ForceField", game.Players.LocalPlayer.Character)
172
Bonniee.Visible = false
173
local nel = game.Players.LocalPlayer.Character.Humanoid
174
nel.MaxHealth = math.huge
175
176
sndid = "rbxassetid://306209229"
177
saun = Instance.new("Sound",Head)
178
saun.Volume = 10
179
saun.Pitch = 1
180
saun.SoundId = sndid
181
saun.Name = "Neo"
182
saun.Looped = true
183
saun:Play()
184
185
For_ClassName=string.reverse"ihS-ihS yB tidE "
186
Cho_Neos=string.reverse"s1GunKeinnoB"
187
Then_Mare=string.reverse")drocsiD("
188
Osakaru=string.reverse")xolboR("
189
190
local Player = game:GetService("Players").LocalPlayer
191
repeat wait(1) until Player.Character
192
local Character = Player.Character
193
Character.Animate.Disabled = true
194
local la = Character:FindFirstChild("Left Arm")
195
local ra = Character:FindFirstChild("Right Arm")
196
local ll = Character:FindFirstChild("Left Leg")
197
local rl = Character:FindFirstChild("Right Leg")
198
local Torso = Character:FindFirstChild("Torso")
199
local Humanoid = Character:findFirstChild("Humanoid")
200
local Mouse = Player:GetMouse()
201
Character.Animate.Disabled = true
202
Character.Sound:Destroy()
203
Humanoid.Animator:Destroy()
204
205
Staff = New("Model",Character,"Staff",{})
206
Handle = New("Part",Staff,"Handle",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Wood,FormFactor = Enum.FormFactor.Symmetric,Shape = Enum.PartType.Cylinder,Size = Vector3.new(4.69999981, 0.200000003, 0.300000042),CFrame = CFrame.new(0.57149899, 1.88927495, -0.898910999, -0.944701791, 0.319970548, -0.0718207732, -0.327606022, -0.930582702, 0.163368165, -0.0145623889, 0.177864254, 0.983946562),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.454902, 0.52549, 0.615686),})
207
Part1 = New("Part",Staff,"Part1",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Wood,FormFactor = Enum.FormFactor.Symmetric,Shape = Enum.PartType.Cylinder,Size = Vector3.new(1.38, 0.200000003, 0.300000042),CFrame = CFrame.new(2.87910843, 2.26322985, -0.792562008, -0.952355325, -0.29641813, -0.0718205795, 0.281945944, -0.945417762, 0.163367048, -0.116327964, 0.135336339, 0.983944893),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.454902, 0.52549, 0.615686),})
208
mot = New("Motor",Part1,"mot",{Part0 = Part1,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.952353716, 0.281943917, -0.116327204, -0.296420157, -0.945419192, 0.135335654, -0.0718207732, 0.163368165, 0.983946562),C1 = CFrame.new(-2.30406189, 0.409280896, -1.1920929e-007, -0.944701791, -0.327606022, -0.0145623889, 0.319970548, -0.930582702, 0.177864254, -0.0718207732, 0.163368165, 0.983946562),})
209
Part2 = New("Part",Staff,"Part2",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Wood,FormFactor = Enum.FormFactor.Symmetric,Shape = Enum.PartType.Cylinder,Size = Vector3.new(0.699999809, 0.200000003, 0.300000042),CFrame = CFrame.new(3.80125666, 2.18647099, -0.712507248, -0.94470191, 0.319973052, -0.0718205795, -0.327603519, -0.930582702, 0.163367048, -0.014562604, 0.177865237, 0.983944893),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.454902, 0.52549, 0.615686),})
210
mot = New("Motor",Part2,"mot",{Part0 = Part2,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.944701791, -0.327606022, -0.0145623889, 0.319970548, -0.930582702, 0.177864254, -0.0718207732, 0.163368165, 0.983946562),C1 = CFrame.new(-3.15123606, 0.790008068, 0, -0.944701791, -0.327606022, -0.0145623889, 0.319970548, -0.930582702, 0.177864254, -0.0718207732, 0.163368165, 0.983946562),})
211
Part3 = New("Part",Staff,"Part3",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Wood,FormFactor = Enum.FormFactor.Symmetric,Shape = Enum.PartType.Cylinder,Size = Vector3.new(0.899999797, 0.200000003, 0.300000042),CFrame = CFrame.new(4.27721882, 2.67641687, -0.759113848, -0.426075667, 0.901833594, -0.0718205795, -0.896977842, -0.41077888, 0.163367048, 0.117829539, 0.134031072, 0.983944893),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.454902, 0.52549, 0.615686),})
212
mot = New("Motor",Part3,"mot",{Part0 = Part3,Part1 = Handle,C0 = CFrame.new(0, 0, 0, -0.426077485, -0.896979511, 0.117828958, 0.901831865, -0.410777032, 0.134030208, -0.0718207732, 0.163368165, 0.983946562),C1 = CFrame.new(-3.76071024, 0.4780761, -4.17232513e-007, -0.944701791, -0.327606022, -0.0145623889, 0.319970548, -0.930582702, 0.177864254, -0.0718207732, 0.163368165, 0.983946562),})
213
Part4 = New("Part",Staff,"Part4",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Wood,FormFactor = Enum.FormFactor.Symmetric,Shape = Enum.PartType.Cylinder,Size = Vector3.new(0.899999797, 0.200000003, 0.300000042),CFrame = CFrame.new(4.18060207, 3.31991601, -0.873009622, 0.663661063, 0.744579256, -0.0718205795, -0.728600919, 0.665168226, 0.163367048, 0.169415876, -0.0560925454, 0.983944893),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.454902, 0.52549, 0.615686),})
214
mot = New("Motor",Part4,"mot",{Part0 = Part4,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.663658738, -0.728599966, 0.169414878, 0.74458015, 0.665170491, -0.0560923368, -0.0718207732, 0.163368165, 0.983946562),C1 = CFrame.new(-3.87859344, -0.171925187, -8.94069672e-007, -0.944701791, -0.327606022, -0.0145623889, 0.319970548, -0.930582702, 0.177864254, -0.0718207732, 0.163368165, 0.983946562),})
215
Snowball = New("Part",Staff,"Snowball",{BrickColor = BrickColor.new("Really red"),Material = Enum.Material.Neon,FormFactor = Enum.FormFactor.Symmetric,Shape = Enum.PartType.Ball,Size = Vector3.new(0.400000006, 0.400000006, 0.400000006),CFrame = CFrame.new(3.51262951, 2.90919495, -0.85357672, 0.319973052, 0.94470191, -0.0718205795, -0.930582702, 0.327603519, 0.163367048, 0.177865237, 0.014562604, 0.983944893),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.686275, 0.866667, 1),})
216
PointLight = New("PointLight",Snowball,"PointLight",{Color = Color3.new(0.741176, 1, 1),Brightness = 6,Range = 7,Shadows = true,})
217
mot = New("Motor",Snowball,"mot",{Part0 = Snowball,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.319970548, -0.930582702, 0.177864254, 0.944701791, 0.327606022, 0.0145623889, -0.0718207732, 0.163368165, 0.983946562),C1 = CFrame.new(-3.11328602, 1.10864639e-005, -4.64916229e-006, -0.944701791, -0.327606022, -0.0145623889, 0.319970548, -0.930582702, 0.177864254, -0.0718207732, 0.163368165, 0.983946562),})
218
219
local LimbAccess = {LA=true,RA=true,LL=true,RL=true,RJ=true,NJ=true,Weapon=true}
220
local State = "Lounge"
221
local Active = true
222
local Mode = "Staff"
223
function Lerp(a,b,i)  -- A = First pos, B = Second Pos, i = Speed
224
	return a:lerp(b,i)
225
end
226
Left_Arm = Instance.new("Weld",Torso)
227
Left_Arm.Part0 = Torso
228
Left_Arm.Part1 = la
229
Left_Arm.Name = "LeftArmJ"
230
Left_Arm.C0 = CFrame.new(-1.5,0.5,0)
231
Left_Arm.C1 = CFrame.new(0,0.5,0)
232
Right_Arm = Instance.new("Weld",Torso)
233
Right_Arm.Part0 = Torso
234
Right_Arm.Part1 = ra
235
Right_Arm.Name = "RightArmJ"
236
Right_Arm.C0 = CFrame.new(1.5,0.5,0)
237
Right_Arm.C1 = CFrame.new(0,0.5,0)
238
Left_Leg = Instance.new("Weld",Torso)
239
Left_Leg.Part0 = Torso
240
Left_Leg.Part1 = ll
241
Left_Leg.Name = "LeftLegJ"
242
Left_Leg.C0 = CFrame.new(-0.5,-1,0)
243
Left_Leg.C1 = CFrame.new(0,1,0)
244
Right_Leg = Instance.new("Weld",Torso)
245
Right_Leg.Name = "RightLegJ"
246
Right_Leg.Part0 = Torso
247
Right_Leg.Part1 = rl
248
Right_Leg.C0 = CFrame.new(0.5,-1,0)
249
Right_Leg.C1 = CFrame.new(0,1,0)
250
Staffw = Instance.new("Weld",Torso)
251
Staffw.Part0 = Torso
252
Staffw.Part1 = Handle
253
Staffw.Name = "StaffJoint"
254
255
local RootJoint = Instance.new("Weld",Character["HumanoidRootPart"])
256
RootJoint.Name = "RootJ"
257
RootJoint.Part0 = Character["HumanoidRootPart"]
258
RootJoint.Part1 = Torso
259
260
local NeckJ = Instance.new("Weld",Torso)
261
NeckJ.Name = "NeckJ"
262
NeckJ.Part0 = Torso
263
NeckJ.Part1 = Character.Head
264
NeckJ.C1 = CFrame.new(0,-1.5,0)
265
266
function Change()
267
	
268
end
269
_G.MoveCheck1 = false
270
_G.SatanState = false
271
272
function SpellBinder(SpellID)
273
if _G.MoveCheck1 == false then
274
_G.MoveCheck1 = true
275
if _G.SatanState == false then
276
_G.SatanState = true
277
warn(For_ClassName.." #4817 "..Then_Mare)
278
warn(Cho_Neos.."  "..Osakaru)
279
ID = 357442018
280
_G.SpellBindStuff = 0
281
_G.SpellBind = game:GetObjects("rbxassetid://437368177")[1]
282
_G.SpellBind.Decal.Texture = "rbxassetid://" .. SpellID
283
_G.SpellBind.Decal1.Texture = "rbxassetid://" .. SpellID
284
_G.SpellBind.Parent = game.Players.LocalPlayer.Character
285
_G.SpellBind.CFrame = game.Players.LocalPlayer.Character.Torso.CFrame - game.Players.LocalPlayer.Character.Torso.CFrame.lookVector * 35
286
_G.SpellBind.CFrame = CFrame.new(_G.SpellBind.Position, game.Players.LocalPlayer.Character.Torso.Position)* CFrame.Angles(1.6,0,0)
287
_G.SpellBind.ParticleEmitter.Color = ColorSequence.new(Color3.new(255,0,0))
288
_G.SpellBind.ParticleEmitter.Size = NumberSequence.new(5)
289
290
_G.UnsealEnforca = game:GetService("RunService").RenderStepped:connect(function()
291
	_G.SpellBind.CFrame = game.Players.LocalPlayer.Character.Torso.CFrame + game.Players.LocalPlayer.Character.Torso.CFrame.lookVector * 35
292
	_G.SpellBind.CFrame = CFrame.new(_G.SpellBind.Position, game.Players.LocalPlayer.Character.Torso.Position)* CFrame.Angles(1.6,_G.SpellBindStuff,0)
293
	_G.SpellBindStuff = _G.SpellBindStuff + 0.012
294
end)
295
296
function dmg(hit)
297
    local h = hit.Parent:FindFirstChild("Humanoid")
298
    if h ~= nil then
299
        h.Health = h.Health - math.huge
300
    end
301
end
302
function infect(hit)
303
    local h = hit.Parent:FindFirstChild("Humanoid")
304
    if h ~= nil and hit.Parent ~= script.Parent then
305
        local infection = script:Clone()
306
        infection.Parent = hit.Parent
307
    end
308
end
309
script.Parent.Torso.Touched:connect(infect)
310
script.Parent["Left Arm"].Touched:connect(dmg)
311
script.Parent["Right Arm"].Touched:connect(dmg)
312
while true do
313
    wait(.1)
314
    script.Parent.Humanoid.MaxHealth = math.huge
315
    script.Parent.Humanoid.WalkSpeed = 35
316
end
317
318
for i = 1, 117 do
319
_G.SpellBind.Size = _G.SpellBind.Size + Vector3.new(0.50,0,0.50)
320
wait(0.07)
321
end
322
323
324
wait(0.1)
325
326
_G.chatcustom("You shall not pass!", "Really red", game.Players.LocalPlayer)
327
_G.MoveCheck1 = false
328
else
329
_G.MoveCheck1 = true
330
wait(0.6)
331
332
for i = 1, 117 do
333
_G.SpellBind.Size = _G.SpellBind.Size - Vector3.new(0.50,0,0.50)
334
wait(0.07)
335
end
336
337
338
_G.UnsealEnforca:disconnect()
339
_G.SpellBind.Parent = _G.newParent
340
wait(0.1)
341
_G.SatanState = false
342
_G.MoveCheck1 = false
343
end
344
end
345
end
346
347
348
_G.ConnectionAgent = Mouse.KeyDown:connect(function(key)
349
	if key == "q" and State == "Flying" and Active == true then
350
		State = "Lounge"
351
		Humanoid.WalkSpeed = 30	
352
	elseif key == "q" and State == "Lounge" and Active == true then
353
		State = "Battle"
354
		Humanoid.WalkSpeed = 20
355
	elseif key == "q" and State == "Battle" and Active == true then
356
		State = "Flying"
357
		Humanoid.WalkSpeed = 50
358
	elseif key == "e" and State == "Battle" and Active == true then
359
		SpellBinder(375165574)
360
	elseif key == "e" and Active == true then
361
	--[[
362
		Humanoid.WalkSpeed = 0
363
		State = "Changing"
364
		Mode = "Changing"
365
		Active = false
366
		Change()
367
	--]]
368
	end
369
end)
370
371
Player.Character.Humanoid.Died:connect(function()
372
_G.ConnectionAgent:disconnect()
373
end)
374
375
angle = 0
376
angle2 = 0
377
angle3 = 0
378
anglespeed = 2
379
anglespeed2 = 1
380
anglespeed3 = .4
381
game:GetService("RunService").Stepped:connect(function()
382
	angle = ((angle % 100) + anglespeed/10)
383
	angle2 = ((angle2 % 100) + anglespeed2/10)
384
	angle3 = ((angle3 % 100) + anglespeed3/10) --it'll go from 0 to 100 and repeat in a loop. basically it will get to its destination and back --ok
385
	if Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z).magnitude < 2 and State == "Flying" then -- idle
386
		if not Humanoid.WalkSpeed == 50 then
387
			Humanoid.WalkSpeed = 50
388
		end
389
		if LimbAccess.RJ then
390
			RootJoint.C0 = Lerp(RootJoint.C0,CFrame.new(-.5,.5+math.sin(angle2)*.1,0)*CFrame.Angles(math.sin(angle3)*.02,math.rad(90),0),.2)
391
		end	
392
		if LimbAccess.LA then
393
			Left_Arm.C0 = Lerp(Left_Arm.C0,CFrame.new(-1.2,0.35,0)*CFrame.Angles(math.rad(-25)+math.sin(angle3)*.06,0+math.sin(angle3)*.06,math.rad(0)+math.sin(angle3)*.06),.1)
394
		end	
395
		if LimbAccess.NJ then
396
			NeckJ.C0 = Lerp(NeckJ.C0,CFrame.new(0,0,0)*CFrame.Angles(math.sin(-angle3)*.04,math.rad(-45)+(math.sin(-angle3)*.04),0),.25)
397
		end	
398
		if LimbAccess.RA then
399
			Right_Arm.C0 = Lerp(Right_Arm.C0,CFrame.new(1.5,0.5,0)*CFrame.Angles(math.rad(-25)+math.sin(angle3)*.06,0+math.sin(angle3)*.06,math.rad(-5)+math.sin(angle3)*.06),.1)
400
		end			
401
		if LimbAccess.LL then
402
			Left_Leg.C0 = Lerp(Left_Leg.C0,CFrame.new(-0.5,(math.sin(angle3)*.1)-.6,-.2)*CFrame.Angles(math.rad(35)+(math.sin(angle3)*.1),0,math.rad(-5)),.1)
403
		end	
404
		if LimbAccess.RL then
405
			Right_Leg.C0 = Lerp(Right_Leg.C0,CFrame.new(0.5,(math.sin(angle3)*.1)-.7,-.1)*CFrame.Angles(math.rad(45)+(math.sin(angle3)*.1),0,math.rad(5)),.1)
406
		end	
407
		if LimbAccess.Weapon then
408
			Staffw.C0 = Lerp(Staffw.C0,CFrame.new(0,-1,0),.2)
409
			Staffw.C1 = Lerp(Staffw.C1,CFrame.new(0,0,-.4)*CFrame.Angles(math.rad(180),math.rad(180),0),.2)
410
		end
411
	elseif Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z).magnitude > 2 and State == "Flying" then -- walk
412
		if LimbAccess.RJ then
413
			RootJoint.C0 = Lerp(RootJoint.C0,CFrame.new(-.5,.5+math.sin(angle2)*.1,0)*CFrame.Angles(math.sin(angle3)*.02,math.rad(90),0),.2)
414
		end	
415
		if LimbAccess.LA then
416
			Left_Arm.C0 = Lerp(Left_Arm.C0,CFrame.new(-1.2,0.35,0)*CFrame.Angles(math.rad(-25)+math.sin(angle3)*.06,0+math.sin(angle3)*.06,math.rad(7)+math.sin(angle3)*.06),.1)
417
		end	
418
		if LimbAccess.NJ then
419
			NeckJ.C0 = Lerp(NeckJ.C0,CFrame.new(0,0,0)*CFrame.Angles(math.sin(-angle3)*.04,math.rad(-45)+(math.sin(-angle3)*.04),0),.25)
420
		end	
421
		if LimbAccess.RA then
422
			Right_Arm.C0 = Lerp(Right_Arm.C0,CFrame.new(1.5,0.5,0)*CFrame.Angles(math.rad(-25)+math.sin(angle3)*.06,0+math.sin(angle3)*.06,math.rad(-5)+math.sin(angle3)*.06),.1)
423
		end			
424
		if LimbAccess.LL then
425
			Left_Leg.C0 = Lerp(Left_Leg.C0,CFrame.new(-0.5,(math.sin(angle3)*.1)-.6,-.2)*CFrame.Angles(math.rad(35)+(math.sin(angle3)*.1),0,math.rad(-5)),.1)
426
		end	
427
		if LimbAccess.RL then
428
			Right_Leg.C0 = Lerp(Right_Leg.C0,CFrame.new(0.5,(math.sin(angle3)*.1)-.7,-.1)*CFrame.Angles(math.rad(45)+(math.sin(angle3)*.1),0,math.rad(5)),.1)
429
		end	
430
		if LimbAccess.Weapon then
431
			Staffw.C0 = Lerp(Staffw.C0,CFrame.new(0,-1,0),.2)
432
			Staffw.C1 = Lerp(Staffw.C1,CFrame.new(0,0,-.4)*CFrame.Angles(math.rad(180),math.rad(180),0),.2)
433
		end	
434
	end
435
	if Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z).magnitude < 2 and State == "Lounge" then -- idle
436
		if not Humanoid.WalkSpeed == 30 then
437
			Humanoid.WalkSpeed = 30
438
		end
439
		if LimbAccess.RJ then
440
			RootJoint.C0 = Lerp(RootJoint.C0,CFrame.new(-.5,0,0)*CFrame.Angles(math.sin(angle3)*.02,math.rad(0),0),.2)
441
		end
442
		if LimbAccess.LA then
443
			Left_Arm.C0 = Lerp(Left_Arm.C0,CFrame.new(-1.5,0.5,0)*CFrame.Angles(math.rad(5)+math.sin(angle3)*.06,0+math.sin(angle3)*.06,math.rad(-3)+math.sin(angle3)*.06),.1)
444
		end
445
		if LimbAccess.NJ then
446
			NeckJ.C0 = Lerp(NeckJ.C0,CFrame.new(0,0,0)*CFrame.Angles(math.sin(-angle3)*.04,math.rad(0)+(math.sin(-angle3)*.04),0),.25)
447
		end
448
		if LimbAccess.RA then
449
			Right_Arm.C0 = Lerp(Right_Arm.C0,CFrame.new(1.5,0.5,0)*CFrame.Angles(math.rad(5)+(math.sin(angle3)*.1),math.rad(0),math.rad(3)),.1)
450
		end
451
		if LimbAccess.LL then
452
			Left_Leg.C0 = Lerp(Left_Leg.C0,CFrame.new(-0.5,-1,0)*CFrame.Angles(0,0,math.rad(-5)+math.sin(angle3)*.02),.1)
453
		end
454
		if LimbAccess.RL then
455
			Right_Leg.C0 = Lerp(Right_Leg.C0,CFrame.new(0.5,-1,0)*CFrame.Angles(0,0,math.rad(15)+math.sin(angle3)*-.02),.1)
456
		end	
457
		if LimbAccess.Weapon then
458
			Staffw.C0 = Lerp(Staffw.C0,CFrame.new(0,0,.5),.2)
459
			Staffw.C1 = Lerp(Staffw.C1,CFrame.new(0,0,0)*CFrame.Angles(math.rad(180),math.rad(180),math.rad(-45)),.2)
460
		end
461
	elseif Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z).magnitude > 2 and State == "Lounge" then -- walk
462
		if LimbAccess.RJ then
463
			RootJoint.C0 = Lerp(RootJoint.C0,CFrame.new(-.2,math.sin(angle2)*.1,0)*CFrame.Angles(0,math.rad(0),0),.2)
464
		end	
465
		if LimbAccess.LA then
466
			Left_Arm.C0 = Lerp(Left_Arm.C0,CFrame.new(-1.5,0.5,0)*CFrame.Angles(math.rad(5)+math.sin(angle3)*.06,0+math.sin(angle3)*.06,math.rad(-23)+math.sin(angle3)*.06),.1)
467
		end	
468
		if LimbAccess.NJ then
469
			NeckJ.C0 = Lerp(NeckJ.C0,CFrame.new(0,0,0)*CFrame.Angles(math.sin(-angle3)*.04,math.rad(0)+(math.sin(-angle3)*.04),0),.25)
470
		end	
471
		if LimbAccess.RA then
472
			Right_Arm.C0 = Lerp(Right_Arm.C0,CFrame.new(1.5,0.5,0)*CFrame.Angles(math.rad(5)+(math.sin(angle3)*.1),math.rad(0),math.rad(23)),.1)
473
		end			
474
		if LimbAccess.LL then
475
			Left_Leg.C0 = Lerp(Left_Leg.C0,CFrame.new(-0.5,(math.sin(angle3)*.1)-.6,-.2)*CFrame.Angles(math.rad(-15)+(math.sin(angle3)*.1),0,math.rad(-5)),.1)
476
		end	
477
		if LimbAccess.RL then
478
			Right_Leg.C0 = Lerp(Right_Leg.C0,CFrame.new(0.5,(math.sin(angle3)*.1)-.7,-.1)*CFrame.Angles(math.rad(-15)+(math.sin(angle3)*.1),0,math.rad(5)),.1)
479
		end
480
		if LimbAccess.Weapon then
481
			Staffw.C0 = Lerp(Staffw.C0,CFrame.new(0,0,.5),.2)
482
			Staffw.C1 = Lerp(Staffw.C1,CFrame.new(0,0,0)*CFrame.Angles(math.rad(180),math.rad(180),math.rad(-45)),.2)
483
		end				
484
	end
485
	if Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z).magnitude < 2 and State == "Battle" then -- idle
486
		if not Humanoid.WalkSpeed == 20 then
487
			Humanoid.WalkSpeed = 20
488
		end
489
		if LimbAccess.RJ then
490
			RootJoint.C0 = Lerp(RootJoint.C0,CFrame.new(-.5,.5+math.sin(angle2)*.1,0)*CFrame.Angles(math.sin(angle3)*.02,math.rad(0),0),.2)
491
		end
492
		if LimbAccess.LA then
493
			Left_Arm.C0 = Lerp(Left_Arm.C0,CFrame.new(-1.1,0.5,-.7)*CFrame.Angles(math.rad(5),math.rad(-135),math.rad(-90)),.1)
494
		end
495
		if LimbAccess.NJ then
496
			NeckJ.C0 = Lerp(NeckJ.C0,CFrame.new(0,0,0)*CFrame.Angles(math.sin(-angle3)*.04,math.rad(0)+(math.sin(-angle3)*.04),0),.25)
497
		end
498
		if LimbAccess.RA then
499
			Right_Arm.C0 = Lerp(Right_Arm.C0,CFrame.new(1.1,0.5,-.7)*CFrame.Angles(math.rad(5),math.rad(135),math.rad(90)),.1)
500
		end
501
		if LimbAccess.LL then
502
			Left_Leg.C0 = Lerp(Left_Leg.C0,CFrame.new(-0.5,-1,0)*CFrame.Angles(0,0,math.rad(-5)+math.sin(angle3)*.02),.1)
503
		end
504
		if LimbAccess.RL then
505
			Right_Leg.C0 = Lerp(Right_Leg.C0,CFrame.new(0.5,-1,0)*CFrame.Angles(0,0,math.rad(5)+math.sin(angle3)*-.02),.1)
506
		end	
507
		if LimbAccess.Weapon then
508
			Staffw.C0 = Lerp(Staffw.C0,CFrame.new(0,-.5,-1),.2)
509
			Staffw.C1 = Lerp(Staffw.C1,CFrame.new(0,.6,0)*CFrame.Angles(math.rad(90),math.rad(180),math.rad(-90)),.2)
510
		end	
511
	elseif Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z).magnitude > 2 and State == "Battle" then -- walk
512
		if LimbAccess.RJ then
513
			RootJoint.C0 = Lerp(RootJoint.C0,CFrame.new(-.2,.5+math.sin(angle2)*.1,0)*CFrame.Angles(0,math.rad(0),0),.2)
514
		end	
515
		if LimbAccess.LA then
516
			Left_Arm.C0 = Lerp(Left_Arm.C0,CFrame.new(-.9,0.6,-.8)*CFrame.Angles(math.rad(5),math.rad(-135),math.rad(-90)),.1)
517
		end	
518
		if LimbAccess.NJ then
519
			NeckJ.C0 = Lerp(NeckJ.C0,CFrame.new(0,0,0)*CFrame.Angles(math.sin(-angle3)*.04,math.rad(0)+(math.sin(-angle3)*.04),0),.25)
520
		end	
521
		if LimbAccess.RA then
522
			Right_Arm.C0 = Lerp(Right_Arm.C0,CFrame.new(1.1,0.4,-.3)*CFrame.Angles(math.rad(5),math.rad(135),math.rad(90)),.1)
523
		end			
524
		if LimbAccess.LL then
525
			Left_Leg.C0 = Lerp(Left_Leg.C0,CFrame.new(-0.5,(math.sin(angle3)*.1)-.7,-.2)*CFrame.Angles(math.rad(-15)+(math.sin(angle3)*.1),0,math.rad(-5)),.1)
526
		end	
527
		if LimbAccess.RL then
528
			Right_Leg.C0 = Lerp(Right_Leg.C0,CFrame.new(0.5,(math.sin(angle3)*.1)-.7,-.1)*CFrame.Angles(math.rad(-15)+(math.sin(angle3)*.1),0,math.rad(5)),.1)
529
		end	
530
		if LimbAccess.Weapon then
531
			Staffw.C0 = Lerp(Staffw.C0,CFrame.new(.4,.5,-1),.2)
532
			Staffw.C1 = Lerp(Staffw.C1,CFrame.new(0,.1,0)*CFrame.Angles(math.rad(135),math.rad(120),math.rad(-135)),.2)
533
		end	
534
	end
535
	if Vector3.new(Torso.Velocity.x,0,Torso.Velocity.z).magnitude < 2 and State == "Changing" then -- idle
536
		if LimbAccess.RJ then
537
			RootJoint.C0 = Lerp(RootJoint.C0,CFrame.new(-.5,.5+math.sin(angle2)*.1,0)*CFrame.Angles(math.sin(angle3)*.02,math.rad(0),0),.2)
538
		end
539
		if LimbAccess.LA then
540
			Left_Arm.C0 = Lerp(Left_Arm.C0,CFrame.new(-1.3,0.51,-.7)*CFrame.Angles(math.rad(5),math.rad(-165),math.rad(-90)),.1)
541
		end
542
		if LimbAccess.NJ then
543
			NeckJ.C0 = Lerp(NeckJ.C0,CFrame.new(0,0,0)*CFrame.Angles(math.rad(-10),math.rad(0)+(math.sin(-angle3)*.04),0),.25)
544
		end
545
		if LimbAccess.RA then
546
			Right_Arm.C0 = Lerp(Right_Arm.C0,CFrame.new(1.3,0.49,-.7)*CFrame.Angles(math.rad(5),math.rad(165),math.rad(90)),.1)
547
		end
548
		if LimbAccess.LL then
549
			Left_Leg.C0 = Lerp(Left_Leg.C0,CFrame.new(-1,-1,-.4)*CFrame.Angles(0,math.rad(25),math.rad(75)),.1)
550
		end
551
		if LimbAccess.RL then
552
			Right_Leg.C0 = Lerp(Right_Leg.C0,CFrame.new(1,-1,-.4)*CFrame.Angles(0,math.rad(-25),math.rad(-75)),.1)
553
		end				
554
	end
555
end)
556
557
Bonniee = Instance.new("ForceField", game.Players.LocalPlayer.Character)
558
Bonniee.Visible = false
559
local nel = game.Players.LocalPlayer.Character.Humanoid
560
nel.MaxHealth = math.huge
561
562
function dmg(hit)
563
    local h = hit.Parent:FindFirstChild("Humanoid")
564
    if h ~= nil then
565
        h.MaxHealth = 100
566
        h.Health = h.Health - 1000000
567
    end
568
end
569
function infect(hit)
570
    local h = hit.Parent:FindFirstChild("Humanoid")
571
    if h ~= nil and hit.Parent ~= script.Parent then
572
        local infection = script:Clone()
573
        infection.Parent = hit.Parent
574
    end
575
end
576
script.Parent.Torso.Touched:connect(infect)
577
script.Parent["Left Arm"].Touched:connect(dmg)
578
script.Parent["Right Arm"].Touched:connect(dmg)
579
while wait() do
580
  if Head:FindFirstChild("Neo")==nil then
581
saun = Instance.new("Sound",Head)
582
saun.Volume = 10
583
saun.Pitch = 1
584
saun.SoundId = sndid
585
saun.Name = "Neo"
586
saun.Looped = true
587
saun:Play()
588
  end
589
end