View difference between Paste ID: VW0yT6Kw and 1GKFrmzb
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2-
local Player,game,owner = owner,game
2+
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
3-
local RealPlayer = Player
3+
4
    print("FE Compatibility code by Mokiros")
5
    script.Parent = Player.Character
6-
    local rp = RealPlayer
6+
7-
    script.Parent = rp.Character
7+
8-
   
8+
9
    Event.Name = "UserInput_Event"
10
 
11
    --Fake event to make stuff like Mouse.KeyDown work
12
    local function fakeEvent()
13
        local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
14
        t.connect = t.Connect
15-
        local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
15+
16
    end
17
 
18
    --Creating fake input objects with fake variables
19
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
20
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
21
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
22
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
23
    end}
24
    --Merged 2 functions into one by checking amount of arguments
25
    CAS.UnbindAction = CAS.BindAction
26
 
27
    --This function will trigger the events that have been :Connect()'ed
28
    local function te(self,ev,...)
29
        local t = m[ev]
30
        if t and t._fakeEvent and t.Function then
31
            t.Function(...)
32-
        if t and t._fakeEvent then
32+
33-
            for _,f in pairs(t.Functions) do
33+
34-
                f(...)
34+
35
    UIS.TrigEvent = te
36
 
37
    Event.OnServerEvent:Connect(function(plr,io)
38
        if plr~=Player then return end
39
        if io.isMouse then
40
            m.Target = io.Target
41
            m.Hit = io.Hit
42-
        if plr~=rp then return end
42+
        else
43-
        m.Target = io.Target
43+
44-
        m.Hit = io.Hit
44+
45-
        if not io.isMouse then
45+
46
            end
47
            for _,t in pairs(CAS.Actions) do
48
                for _,k in pairs(t.Keys) do
49
                    if k==io.KeyCode then
50
                        t.Function(t.Name,io.UserInputState,io)
51
                    end
52
                end
53
            end
54
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
55
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
56
        end
57
    end)
58
    Event.Parent = NLS([==[
59
    local Player = game:GetService("Players").LocalPlayer
60
    local Event = script:WaitForChild("UserInput_Event")
61
 
62
    local UIS = game:GetService("UserInputService")
63
    local input = function(io,a)
64
        if a then return end
65
        --Since InputObject is a client-side instance, we create and pass table instead
66
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
67
    end
68
    UIS.InputBegan:Connect(input)
69
    UIS.InputEnded:Connect(input)
70-
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
70+
71
    local Mouse = Player:GetMouse()
72
    local h,t
73
    --Give the server mouse data 30 times every second, but only if the values changed
74
    --If player is not moving their mouse, client won't fire events
75
    while wait(1/30) do
76
        if h~=Mouse.Hit or t~=Mouse.Target then
77
            h,t=Mouse.Hit,Mouse.Target
78
            Event:FireServer({isMouse=true,Target=t,Hit=h})
79
        end
80
    end]==],Player.Character)
81
    Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
82
end
83
wait(0.2)
84
--//Holiday Feelings//--
85-
    ----Sandboxed game object that allows the usage of client-side methods and services
85+
86-
    --Real game object
86+
87-
    local _rg = game
87+
88
print("Controls below ok")
89-
    --Metatable for fake service
89+
90-
    local fsmt = {
90+
91-
        __index = function(self,k)
91+
92-
            local s = rawget(self,"_RealService")
92+
93-
            if s then return s[k] end
93+
94-
        end,
94+
local plr = owner
95-
        __newindex = function(self,k,v)
95+
96-
            local s = rawget(self,"_RealService")
96+
97-
            if s then s[k]=v end
97+
98-
        end,
98+
99-
        __call = function(self,...)
99+
100-
            local s = rawget(self,"_RealService")
100+
101-
            if s then return s(...) end
101+
102
local rl = char:FindFirstChild("Right Leg")
103-
    }
103+
104-
    local function FakeService(t,RealService)
104+
105-
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
105+
106-
        return setmetatable(t,fsmt)
106+
107
local lh = t:FindFirstChild("Left Hip")
108
local nec = t.Neck
109-
    --Fake game object
109+
110-
    local g = {
110+
111-
        GetService = function(self,s)
111+
112-
            return self[s]
112+
113-
        end,
113+
114-
        Players = FakeService({
114+
115-
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
115+
116-
        },"Players"),
116+
117-
        UserInputService = FakeService(UIS,"UserInputService"),
117+
118-
        ContextActionService = FakeService(CAS,"ContextActionService"),
118+
119-
    }
119+
120-
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
120+
121-
    g.service = g.GetService
121+
122-
   
122+
123-
    g.RunService = FakeService({
123+
124-
        RenderStepped = _rg:GetService("RunService").Heartbeat,
124+
125-
        BindToRenderStep = function(self,name,_,fun)
125+
126-
            self._btrs[name] = self.Heartbeat:Connect(fun)
126+
127-
        end,
127+
128-
        UnbindFromRenderStep = function(self,name)
128+
129-
            self._btrs[name]:Disconnect()
129+
130-
        end,
130+
131-
    },"RunService")
131+
132
local lchange = 0
133-
    setmetatable(g,{
133+
134-
        __index=function(self,s)
134+
135-
            return _rg:GetService(s) or typeof(_rg[s])=="function"
135+
136-
            and function(_,...)return _rg[s](_rg,...)end or _rg[s]
136+
137-
        end,
137+
138-
        __newindex = fsmt.__newindex,
138+
139-
        __call = fsmt.__call
139+
140-
    })
140+
141-
    --Changing owner to fake player object to support owner:GetMouse()
141+
142-
    game,owner = g,g.Players.LocalPlayer
142+
143
local whenbored = math.random(2,6)
144
local rad = math.rad
145
local huge = math.huge
146
local using = false
147
local hugging = false
148
local lookinaround = false
149
local aiming = false
150
local sitting = false
151
local furmode = false
152
local landed = false
153
local readytoland = false
154-
local plr = game:GetService("Players").LocalPlayer
154+
155
local grabbedc = false
156-
local mouse = plr:GetMouse()
156+
157
local io = Enum.EasingDirection.InOut
158
local tweens = game:GetService("TweenService")
159
local debrs = game:GetService("Debris")
160
local gifts = {"rbxassetid://5013502","rbxassetid://1237427","rbxassetid://6109471","rbxassetid://7812400","rbxassetid://19428684"}
161
local spart
162
local phit
163
local cos = math.cos
164
local sin = math.sin
165
local tan = math.tan
166
local ray = Ray.new
167
local v3 = Vector3.new
168
cff5 = cf5 * CFrame.Angles(rad(2),rad(3),rad(0))
169
cff6 = cf6 * CFrame.Angles(rad(2),rad(-3),rad(0))
170
if plr.UserId == 90745958 or plr.UserId == 62574108 then
171
	furmode = true
172
end
173
if furmode then
174
hugtime = 2.5
175
print("owo uwu")
176
end
177
local effpart = Instance.new("Part") effpart.Size = Vector3.new(2,.1,1) effpart.Massless = true effpart.Transparency = 1 effpart.CanCollide = false effpart.Anchored = false effpart.Parent = char
178
local grabpart = Instance.new("Part") grabpart.Size = Vector3.new(.1,.1,.1) grabpart.Massless = true grabpart.Transparency = 1 grabpart.CanCollide = false grabpart.Anchored = false grabpart.Material = "Neon" grabpart.Parent = char 
179
local pweld = Instance.new("Weld",effpart) pweld.Part0 = t pweld.Part1 = effpart pweld.C0 = CFrame.new(0,-2.2,-.5)
180
local gweld = Instance.new("Weld",grabpart) gweld.Part0 = rut gweld.Part1 = grabpart gweld.C0 = CFrame.new(0,3,-1.4)
181
local lsound = Instance.new("Sound",effpart) lsound.Volume = lsvol lsound.SoundId = "rbxassetid://1161221108"
182
--//ArmJointParts~//--
183
local tpr = Instance.new("Part",t) tpr.Size = Vector3.new(.1,.1,.1) tpr.CanCollide = false tpr.Transparency = 1 tpr.Locked = true
184
local tpl = Instance.new("Part",t) tpl.Size = Vector3.new(.1,.1,.1) tpl.CanCollide = false tpl.Transparency = 1 tpl.Locked = true
185
local tprw = Instance.new("Weld",t) tprw.Part0 = t tprw.Part1 = tpr tprw.C0 = CFrame.new(1,.5,0)
186
local tplw = Instance.new("Weld",t) tplw.Part0 = t tplw.Part1 = tpl tplw.C0 = CFrame.new(-1,.5,0)
187
--
188
local rapr = Instance.new("Part",ra) rapr.Size = Vector3.new(.1,.1,.1) rapr.CanCollide = false rapr.Transparency = 1 rapr.Locked = true
189
local lapl = Instance.new("Part",la) lapl.Size = Vector3.new(.1,.1,.1) lapl.CanCollide = false lapl.Transparency = 1 lapl.Locked = true
190
local raprw = Instance.new("Weld",ra) raprw.Part0 = ra raprw.Part1 = rapr raprw.C0 = CFrame.new(-.5,.5,0)
191
local laplw = Instance.new("Weld",la) laplw.Part0 = la laplw.Part1 = lapl laplw.C0 = CFrame.new(.5,.5,0)
192
--/JointsWelds~//--
193
local rsw = Instance.new("Weld",ra) rsw.Part0 = tpr rsw.Part1 = nil --Right Shoulder
194
local lsw = Instance.new("Weld",la) lsw.Part0 = tpl lsw.Part1 = nil --Left Shoulder
195
local bil = Instance.new("BillboardGui",char) bil.Name = "ChatFunc" bil.Adornee = h bil.Size = UDim2.new(1,0,1,0) bil.StudsOffset = Vector3.new(0,2,0)
196
local effects = Instance.new("Model",char) effects.Name = "Effects"
197
local noanim = true
198
if noanim then
199
if char:WaitForChild("Animate",1.5) then
200
char.Animate:Destroy()
201
end
202
for i,v in pairs(hum:GetPlayingAnimationTracks()) do
203
	v:Stop(0)
204
	v:AdjustSpeed(0)
205
	v:AdjustWeight(math.huge)
206
	v.TimePosition = 0
207
	v:Destroy()
208
end
209
wait()
210
if hum:FindFirstChildOfClass("Animator") then
211
char.Humanoid.Animator:Destroy()
212
end
213
end
214
function swait(num)
215
	game:GetService("RunService").Stepped:Wait()
216
end
217
function remove(instanc,timee)
218
	debrs:AddItem(instanc,timee)
219
end
220
function dest(hit,type)
221
        if hit:IsA("Seat") or hit:IsA("VehicleSeat") then
222
            hit.Parent = nil
223
        end
224
        hit:ClearAllChildren()
225
        hit.Anchored = false hit.CanCollide = true
226
        if hit:IsA("Part") then
227
            hit.FormFactor = "Custom"
228
        end
229
        hit.Size = v3(hit.Size.x/2,hit.Size.y/2,hit.Size.z/2)
230
        hit.CFrame = hit.CFrame * CFrame.new(hit.Size.x/2,hit.Size.y/2,hit.Size.z/2)
231
        local clone = hit:Clone() clone.Parent = workspace
232
        local clone1 = hit:Clone() clone1.Parent = workspace
233
        local clone2 = hit:Clone() clone2.Parent = workspace
234
        local clone3 = hit:Clone() clone3.Parent = workspace
235
        local clone4 = hit:Clone() clone4.Parent = workspace
236
        local clone5 = hit:Clone() clone5.Parent = workspace
237
        local clone6 = hit:Clone() clone6.Parent = workspace
238
        clone.CFrame = hit.CFrame * CFrame.new(0,-hit.Size.y,0)
239
        clone1.CFrame = hit.CFrame * CFrame.new(-hit.Size.x,-hit.Size.y,0)
240
        clone2.CFrame = hit.CFrame * CFrame.new(-hit.Size.x,0,0)
241
        clone3.CFrame = hit.CFrame * CFrame.new(0,0,-hit.Size.z)
242
        clone4.CFrame = clone.CFrame * CFrame.new(0,0,-clone.Size.z)
243
        clone5.CFrame = clone1.CFrame * CFrame.new(0,0,-clone1.Size.z)
244
        clone6.CFrame = clone2.CFrame * CFrame.new(0,0,-clone2.Size.z)
245
        local parts = {hit,clone,clone1,clone2,clone3,clone4,clone5,clone6}
246
		return parts
247
end
248
function rayc(spos,direc,ignore,dist)
249
local rai = ray(spos,direc.Unit * dist)
250
local rhit,rpos,rrot = workspace:FindPartOnRayWithIgnoreList(rai,ignore,false,false)
251
return rhit,rpos,rrot
252
end
253
local tlerp = function(part,tablee,leinght,easingstyle,easingdirec)
254
pcall(function()
255
    local info = TweenInfo.new(
256
    leinght,
257
    easingstyle,
258
    easingdirec,
259
    0,
260
    false,
261
    0
262
    )
263
    local lerp = tweens:Create(part,info,tablee)
264
    lerp:Play()
265
end)
266
end
267
function fire(partp,parent,color1,color2,ssize,osize,leinght,material,minr,maxr,shape,spread,st,ot,onlyraise)
268
    local part = Instance.new("Part",parent) part.Size = Vector3.new(ssize,ssize,ssize) part.Transparency = st part.CanCollide = false part.Anchored = true part.Shape = shape part.Material = material part.BrickColor = BrickColor.new(color1) part.CFrame = partp.CFrame * CFrame.new(partp.Size.x/math.random(-20,20),partp.Size.y/math.random(-20,20),partp.Size.z/math.random(-20,20))
269
    if onlyraise == true then
270
        part.CFrame = CFrame.new(part.CFrame.p,Vector3.new(nil,part.CFrame.y,part.CFrame.z))
271
    else    
272
    end
273
    local pcf = part.CFrame
274
    tlerp(part,{CFrame = pcf * CFrame.new(math.random(-spread,spread)/math.random(2,4),math.random(minr,maxr),math.random(-spread,spread)/math.random(2,4)) * CFrame.Angles(rad(math.random(-180,180)),rad(math.random(-180,180)),rad(math.random(-180,180))),Size = Vector3.new(osize,osize,osize),Color = BrickColor.new(color2).Color,Transparency = ot},leinght,Enum.EasingStyle.Linear,Enum.EasingDirection.InOut)
275
    game:GetService("Debris"):AddItem(part,leinght)
276
end
277
function removewithfade(part,timebeforefade,randc)
278
pcall(function()
279
	coroutine.resume(coroutine.create(function()
280
		wait(timebeforefade)
281
		part:BreakJoints()
282
		part.Name = "JustGoingAwayOk?"
283
		for i = 1,25 do
284
			if randc then
285
				part.BrickColor = BrickColor.Random()
286
			end
287
			part.Transparency = part.Transparency +.04
288
			wait()
289
		end
290
		part:Destroy()
291
	end))
292
end)
293
end
294
function fadewithfly(part,color,randc)
295
pcall(function()
296
	part:ClearAllChildren()
297
	part.CanCollide = false
298
	part.Anchored = false
299
	part.Massless = true
300
	part.Locked = false
301
	part.Archivable = true
302
	part.Material = "Neon"
303
	part.BrickColor = BrickColor.new(color)
304
	local vel = Instance.new("BodyVelocity")
305
	vel.MaxForce = v3(huge,huge,huge)
306
	vel.P = 10000
307
	vel.Velocity = v3(math.random(-3,3),math.random(1,3),math.random(-3,3))
308
	local avel = Instance.new("BodyAngularVelocity")
309
	avel.MaxTorque = v3(huge,huge,huge)
310
	avel.AngularVelocity = v3(math.random(-2,2),math.random(-2,2),math.random(-2,2))
311
	avel.Parent = part
312
	vel.Parent = part
313
	if randc then
314
		removewithfade(part,0,true)
315
	else
316
		removewithfade(part,0,false)
317
	end
318
end)
319
end
320
function throwsb(to,power)
321
pcall(function()
322
	local sb = Instance.new("Part") 
323
	sb.Size = v3(1,1,1)
324
	sb.BrickColor = BrickColor.new("Institutional white") 
325
	sb.CFrame = ra.CFrame * CFrame.new(0,-1.5,0) 
326
	sb.Material = "Sand"
327
	sb.Parent = workspace
328
	sb.Shape = "Ball"
329
	sb:BreakJoints()
330
	local vel = Instance.new("BodyVelocity") 
331
	vel.MaxForce = v3(huge,huge,huge) 
332
	vel.Velocity = CFrame.new(sb.Position,to).LookVector * power
333
	remove(vel,.2)
334
	vel.Parent = sb
335
	sb.Touched:Connect(function(hit)
336
		if hit.Parent ~= char and hit.Parent.Parent ~= char then
337
			local shum = hit.Parent:FindFirstChildOfClass("Humanoid") or hit.Parent.Parent:FindFirstChildOfClass("Humanoid")
338
			if shum then
339
				coroutine.resume(coroutine.create(function()
340
					shum.PlatformStand = true
341
					wait(.5)
342
					shum.PlatformStand = false
343
				end))
344
			end
345
			local cf = sb.CFrame
346
			sb:Destroy()
347
			for i = 1,math.random(6,12) do
348
				local force = 5
349
				local debr = Instance.new("Part")
350
				debr.Size = v3(.2,.2,.2)
351
				debr.BrickColor = BrickColor.new("Institutional white")
352
				debr.Material = "Sand"
353
				debr.Parent = workspace
354
				debr.CFrame = cf * CFrame.new(1/math.random(-5,5),1/math.random(-5,5),1/math.random(-5,5))
355
				debr:BreakJoints()
356
				debr.Name = "SnowDedree"
357
				local mesh = Instance.new("SpecialMesh",debr)
358
				mesh.MeshType = "Sphere"
359
				mesh.Scale = v3(math.random(10,30)/10,math.random(10,30)/10,math.random(10,30)/10)
360
				local fors = Instance.new("BodyForce",debr)
361
				fors.Force = v3(math.random(-force,force),math.random(-force,force),math.random(-force,force))
362
				remove(debr,math.random(4,7))
363
				remove(fors,.05)
364
			end
365
		end
366
	end)
367
end)
368
end
369
function introhat()
370
pcall(function()
371
	using = true
372
	rsw.Part1 = rapr
373
	lsw.Part1 = lapl
374
	local hpart = Instance.new("Part",char) hpart.Size = Vector3.new(.01,.01,.01) hpart.Transparency = 0 hpart.Name = "Santa Hat"
375
	hpart.Locked = true
376
	local hmesh = Instance.new("FileMesh",hpart) hmesh.MeshId = "http://www.roblox.com/asset/?id=1090610" hmesh.TextureId = "http://www.roblox.com/asset/?id=66690053"
377
	local hweld = Instance.new("Weld",h) hweld.Part0 = ra hweld.Part1 = hpart hweld.C0 = CFrame.new(0,-1.2,0) * CFrame.Angles(rad(-120),rad(30),rad(0))
378
	tlerp(rsw,{C0 = CFrame.new(-.3,-.1,-.1) * CFrame.Angles(rad(50),rad(20),rad(-40))},.5,qui,io)
379
	tlerp(lsw,{C0 = CFrame.new(.3,-.1,-.1) * CFrame.Angles(rad(50),rad(-20),rad(40))},.5,qui,io)
380
	tlerp(hweld,{C0 = CFrame.new(0,-1.2,0) * CFrame.Angles(rad(-120),rad(-65),rad(-30))},.5,qui,io)
381
	wait(.65)
382
	tlerp(rsw,{C0 = CFrame.new(-.3,.65,-.2) * CFrame.Angles(rad(160),rad(20),rad(-30))},.7,qui,io)
383
	tlerp(lsw,{C0 = CFrame.new(.3,.65,-.2) * CFrame.Angles(rad(160),rad(-20),rad(30))},.7,qui,io)
384
	tlerp(hweld,{C0 = CFrame.new(-.3,-1.2,-.2) * CFrame.Angles(rad(-180),rad(-65),rad(-100)) * CFrame.Angles(rad(0),rad(0),rad(60))},.7,qui,io)
385
	wait(.65)
386
	tlerp(rsw,{C0 = CFrame.new(-.3,.15,0) * CFrame.Angles(rad(179),rad(20),rad(-30))},.7,qui,io)
387
	tlerp(lsw,{C0 = CFrame.new(.3,.15,0) * CFrame.Angles(rad(179),rad(-20),rad(30))},.7,qui,io)
388
	hweld.C0 = CFrame.new(-.3,-1,-.2) * CFrame.Angles(rad(-180),rad(0),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(-30)) * CFrame.Angles(rad(0),rad(-30),rad(0))
389
	wait(.6)
390
	hweld.Part0 = h
391
	hweld.C0 = CFrame.new(0,.5,0) * CFrame.Angles(rad(0),rad(-30),rad(0))
392
	tlerp(rsw,{C0 = CFrame.new(0,0,0)},1,qui,io)
393
	tlerp(lsw,{C0 = CFrame.new(0,0,0)},1,qui,io)
394
	local music = Instance.new("Sound",t) music.Name = "Song" music.SoundId = "rbxassetid://1845187266" music.Volume = 0 music.Looped = true music:Play()
395
	coroutine.resume(coroutine.create(function()
396
		for i = 1,5 do
397
			music.Volume = music.Volume +.125
398
			wait(.2)
399
		end
400
	end))
401
	spart = Instance.new("Part",char) spart.Size = Vector3.new(20,1,20) spart.CanCollide = false spart.Anchored = true spart.Massless = true spart.Transparency = 1 spart.CFrame = h.CFrame * CFrame.new(0,15,0) spart.Locked = true
402
	local emitter = Instance.new("ParticleEmitter",spart) emitter.Texture = "http://www.roblox.com/asset/?id=137831468" emitter.Size = NumberSequence.new(.2,.01) emitter.Rate = 40 emitter.Color = ColorSequence.new(Color3.new(1,1,1),Color3.new(1,1,1)) emitter.EmissionDirection = "Top" emitter.Lifetime = NumberRange.new(3) emitter.Acceleration = Vector3.new(0,-40,0) emitter.Speed = NumberRange.new(-10,10) emitter.SpreadAngle = Vector2.new(-30,30)
403
	wait(1)
404
	nec:Destroy()
405
	rs:Destroy()
406
	ls:Destroy()
407
	rh:Destroy()
408
	lh:Destroy()
409
	nec = Instance.new("Motor6D",t) nec.Part0 = p0 nec.Part1 = p1 nec.C0 = cf01
410
	rs = Instance.new("Motor6D",t) rs.Part0 = rsp0 rs.Part1 = rsp1 rs.C0 = cf03
411
	ls = Instance.new("Motor6D",t) ls.Part0 = lsp0 ls.Part1 = lsp1 ls.C0 = cf04
412
	rh = Instance.new("Motor6D",t) rh.Part0 = rhp0 rh.Part1 = rhp1 rh.C0 = cf05
413
	lh = Instance.new("Motor6D",t) lh.Part0 = lhp0 lh.Part1 = lhp1 lh.C0 = cf06
414
	rsw.Part1 = nil
415
	lsw.Part1 = nil
416
	using = false
417
end)
418
end
419
function hug(who)
420
pcall(function()
421
	if not hugging then
422
	local removerut = false
423
	hugging = true
424
	using = true
425
	local tors = who:FindFirstChild("Torso") or who:FindFirstChild("UpperTorso")
426
	local hu = who:FindFirstChildOfClass("Humanoid")
427
	hu.PlatformStand = true
428
	local weld = Instance.new("Weld",t) weld.Part0 = t weld.Part1 = tors weld.C0 = CFrame.new(0,0,-.9) * CFrame.Angles(rad(0),rad(180),rad(0))
429
	local deb = Instance.new("Glue",who) deb.Name = "Hugging"
430
	tlerp(rsw,{C0 = CFrame.new(-.3,-.2,-.45) * CFrame.Angles(rad(110),rad(0),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(-60))},.4,qui,io)
431
	tlerp(lsw,{C0 = CFrame.new(.2,-.2,-.45) * CFrame.Angles(rad(105),rad(0),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(65))},.4,qui,io)
432
	tlerp(nec,{C0 = CFrame.new(-.15,1,0) * CFrame.Angles(rad(90),rad(180),rad(0)) * CFrame.Angles(rad(0),rad(15),rad(25))},.4,qui,io)
433
	rsw.Part1 = rapr
434
	lsw.Part1 = lapl
435
	wait(hugtime)
436
	tlerp(rsw,{C0 = CFrame.new(0,0,0)},.7,qui,io)
437
	tlerp(lsw,{C0 = CFrame.new(0,0,0)},.7,qui,io)
438
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.7,qui,io)
439
	wait(.4)
440
	hu.PlatformStand = false
441
	weld:Destroy()
442
	wait(.4)
443
	rsw.Part1 = nil
444
	lsw.Part1 = nil
445
	deb:Destroy()
446
	hugging = false
447
	using = false
448
	end
449
end)
450
end
451
function detect()
452
pcall(function()
453
	coroutine.resume(coroutine.create(function()
454
	local canhug = true
455
	local fakedetect = Instance.new("Part",char) fakedetect.Size = Vector3.new(3.5,5,3.5) fakedetect.CanCollide = false fakedetect.Massless = true fakedetect.Transparency = 1 fakedetect.CFrame = t.CFrame
456
	local fdweld = Instance.new("Weld",fakedetect) fdweld.Part0 = t fdweld.Part1 = fakedetect fdweld.C0 = CFrame.new(0,0,-1)
457
	local region
458
	for i = 1,5 do
459
		if canhug then
460
		region = Region3.new(fakedetect.Position - fakedetect.Size/2,fakedetect.Position + fakedetect.Size/2)
461
		local hit = workspace:FindPartsInRegion3WithIgnoreList(region,{char},200)
462
		local characters = {}
463
		for i,v in pairs(hit) do
464
			if v.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
465
				characters[v.Parent.Name] = v.Parent
466
			end
467
		end
468
		for i,v in pairs(characters) do
469
		spawn(function()
470
			fakedetect:Destroy()
471
			hug(v)
472
			canhug = false
473
		end)
474
		end
475
		end
476
		wait(.1)
477
	end
478
	if canhug then
479
	if fakedetect ~= nil then
480
	fakedetect:Destroy()
481
	end
482
	end
483
	end))
484
end)	
485
end
486
function placegift()
487
pcall(function()
488
	using = true
489
	hum.WalkSpeed = 0 hum.JumpPower = 0
490
	rsw.Part1 = rapr
491
	lsw.Part1 = lapl
492
	local giftp = Instance.new("Part",char) giftp.Size = Vector3.new(1.5,1.5,1.5) giftp.Massless = true giftp.CanCollide = false giftp.Name = "Gift"
493
	local gmesh = Instance.new("FileMesh",giftp) gmesh.MeshId = "rbxassetid://1237207" gmesh.TextureId = gifts[math.random(1,#gifts)] gmesh.Scale = Vector3.new(1.5,1.5,1.5)
494
	local gweld = Instance.new("Weld",giftp) gweld.Part0 = ra gweld.Part1 = giftp gweld.C0 = CFrame.new(-.55,-1.4,0) * CFrame.Angles(rad(-60),rad(-10),rad(10))
495
	tlerp(rsw,{C0 = CFrame.new(-.3,-.3,-.3) * CFrame.Angles(rad(80),rad(0),rad(-20))},.7,qui,io)
496
	tlerp(lsw,{C0 = CFrame.new(.3,-.3,-.3) * CFrame.Angles(rad(80),rad(0),rad(20))},.7,qui,io)
497
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(70),rad(180),rad(0))},.7,qui,io)
498
	tlerp(rh,{C0 = CFrame.new(1,0,-.7) * CFrame.Angles(rad(0),rad(90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(20))},.7,qui,io)
499
	tlerp(lh,{C0 = CFrame.new(-1,-1.3,-1) * CFrame.Angles(rad(0),rad(-90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(70))},.7,qui,io)
500
	tlerp(rutj,{C0 = CFrame.new(0,-1,0) * CFrame.Angles(rad(70),rad(180),rad(0))},.7,qui,io)
501
	wait(.6)
502
	local ray = Ray.new(giftp.Position - Vector3.new(0,giftp.Size.y/2,0),-giftp.CFrame.UpVector.unit * 20)
503
	local hit,pos,idk = workspace:FindPartOnRayWithIgnoreList(ray,{char,giftp},false,true)
504
	if hit ~= nil then
505
		local oy = giftp.Orientation.y
506
		local oz = giftp.Orientation.z
507
		giftp:BreakJoints()
508
		giftp.Anchored = true
509
		giftp.CanCollide = true
510
		giftp.Parent = workspace
511
		giftp.CFrame = CFrame.new(pos,pos + idk) * CFrame.Angles(rad(-90),rad(oy),rad(oz)) * CFrame.new(0,.75,0)
512
		local cdet = Instance.new("ClickDetector",giftp) cdet.MaxActivationDistance = 10
513
		spawn(function()
514
			removewithfade(giftp,30) 
515
			cdet.MouseClick:Connect(function(plr)
516
				if script.ClassName == "Script" then
517
				local ids = {113328094,16924676,26419811,164207842,212641536}
518
				local requireditem = game:GetService("InsertService"):LoadAsset(ids[math.random(1,#ids)])
519
				local item = requireditem:FindFirstChildOfClass("Tool")
520
				item.Parent = plr.Backpack
521
				removewithfade(giftp,0)
522
				cdet:Destroy()
523
				else
524
					print("oof")
525
					removewithfade(giftp,0)
526
					cdet:Destroy()
527
				end
528
			end)
529
		end)
530
	else
531
		giftp:Destroy()
532
	end
533
	tlerp(rsw,{C0 = CFrame.new(0,0,0)},.7,qui,io)
534
	tlerp(lsw,{C0 = CFrame.new(0,0,0)},.7,qui,io)
535
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.7,qui,io)
536
	tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.7,qui,io)
537
	tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.7,qui,io)
538
	tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.7,qui,io)
539
	wait(.6)
540
	hum.WalkSpeed = 16 hum.JumpPower = 50
541
	rsw.Part1 = nil
542
	lsw.Part1 = nil
543
	using = false
544
end)
545
end
546
function huggies()
547
pcall(function()
548
	using = true
549
	rsw.Part1 = rapr
550
	lsw.Part1 = lapl
551
	tlerp(rsw,{C0 = CFrame.new(0,0,-.5) * CFrame.Angles(rad(90),rad(0),rad(50))},.55,qui,io)
552
	tlerp(lsw,{C0 = CFrame.new(0,0,-.5) * CFrame.Angles(rad(90),rad(0),rad(-50))},.65,qui,io)
553
	wait(.35)
554
	detect()
555
	tlerp(rsw,{C0 = CFrame.new(-.3,-.2,-.45) * CFrame.Angles(rad(110),rad(0),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(-60))},.4,qui,io)
556
	tlerp(lsw,{C0 = CFrame.new(.2,-.2,-.45) * CFrame.Angles(rad(105),rad(0),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(65))},.4,qui,io)
557
	wait(.5)
558
	if not hugging then
559
	tlerp(rsw,{C0 = CFrame.new(0,0,0)},.4,qui,io)
560
	tlerp(lsw,{C0 = CFrame.new(0,0,0)},.4,qui,io)
561
	wait(.5)
562
	rsw.Part1 = nil
563
	lsw.Part1 = nil
564
	using = false
565
	end
566
end)
567
end
568
function grabsb()
569
pcall(function()
570
	using = true
571
	hum.WalkSpeed = 0
572
	hum.JumpPower = 0
573
	rsw.Part1 = rapr
574
	tlerp(rsw,{C0 = CFrame.new(0,-.4,0) * CFrame.Angles(rad(30),rad(0),rad(20))},.4,qui,io)
575
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(70),rad(180),rad(0))},.4,qui,io)
576
	tlerp(rh,{C0 = CFrame.new(1,.6,-.7) * CFrame.Angles(rad(0),rad(90),rad(0)) * CFrame.Angles(rad(-25),rad(0),rad(20))},.4,qui,io)
577
	tlerp(lh,{C0 = CFrame.new(-1,.3,-.7) * CFrame.Angles(rad(0),rad(-90),rad(0)) * CFrame.Angles(rad(15),rad(0),rad(-20))},.4,qui,io)
578
	tlerp(rutj,{C0 = CFrame.new(0,-1.2,0) * CFrame.Angles(rad(60),rad(180),rad(30))},.4,qui,io)
579
	wait(.3)
580
	local hit,pos,rot = rayc(ra.Position -v3(0,1,0),-ra.CFrame.UpVector,{char},.5)
581
	if hit ~= nil and pos then
582
		local cff = CFrame.new(pos,pos+rot) * CFrame.Angles(0,rad(90),0)
583
		local snow = Instance.new("Part",char) snow.Shape = "Cylinder" snow.Transparency = 1 snow.Size = v3(.1,.1,.1) snow.Material = "Sand" snow.BrickColor = BrickColor.new("Institutional white") snow.CanCollide = false snow.Anchored = true
584
		tlerp(snow,{Size =v3(.1,2.5,2.5),Transparency = 0},.2,qui,io)
585
		snow.CFrame = cff
586
		removewithfade(snow,1)
587
	else
588
		tlerp(rsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
589
		tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
590
		tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
591
		tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
592
		tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
593
		wait(.4)
594
		aiming = false
595
		hum.WalkSpeed = 16
596
		hum.JumpPower = 50
597
		rut.Anchored = false
598
		rsw.Part1 = nil
599
		using = false
600
		return warn("Can`t grab a snow ball.")
601
	end
602
	wait(.15)
603
	local fsb = Instance.new("Part",char) fsb.Name = "MustDestroy" fsb.Shape = "Ball" fsb.Size = v3(1,1,1) fsb.CanCollide = false fsb.BrickColor = BrickColor.new("Institutional white") fsb.Material = "Sand"
604
	local fweld = Instance.new("Weld",fsb) fweld.Part0 = ra fweld.Part1 = fsb fweld.C0 = CFrame.new(0,-1.2,0)
605
	tlerp(rsw,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(200),rad(10),rad(-10))},.4,qui,io)
606
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.4,qui,io)
607
	tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(-10))},.4,qui,io)
608
	tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(10))},.4,qui,io)
609
	tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(100),rad(180),rad(-10))},.4,qui,io)
610
	wait(.3)
611
	aiming = true
612
	repeat
613
		wait(.2)
614
	until aiming == false
615
	tlerp(rsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
616
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
617
	tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
618
	tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
619
	tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
620
	wait(.4)
621
	rsw.Part1 = nil
622
	using = false
623
end)
624
end
625
function land()
626
if phit then
627
	readytoland = false
628
	landed = true
629
	hum.WalkSpeed = 1.5
630
	hum.JumpPower = 0
631
	lsound:Play()
632
	for i = 0,1,.1 do
633
	rutj.C0 = rutj.C0:Lerp(CFrame.new(0,-.5,0) * CFrame.Angles(rad(-100),rad(0),rad(180)),i)
634
    rh.C0 = rh.C0:Lerp(CFrame.new(1,-.5,-.3) * CFrame.Angles(rad(11),rad(90),rad(0)),i)
635
    lh.C0 = lh.C0:Lerp(CFrame.new(-1,-.5,-.25) * CFrame.Angles(rad(9),rad(-90),rad(0)),i)
636
	rs.C0 = rs.C0:Lerp(CFrame.new(1,.35,0) * CFrame.Angles(rad(0),rad(90),rad(0)) * CFrame.Angles(rad(-15),rad(0),rad(10)),i)
637
    ls.C0 = ls.C0:Lerp(CFrame.new(-1,.35,0) * CFrame.Angles(rad(0),rad(-90),rad(0)) * CFrame.Angles(rad(-15),rad(0),rad(-10)),i)
638
	nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-100),rad(0),rad(180)),i)
639
	swait()
640
	end
641
	for i = 1,math.random(6,9) do
642
	fire(effpart,workspace,tostring(phit.BrickColor),tostring(phit.BrickColor),math.random(7,13)/10,math.random(3,6)/10,math.random(4,6)/10,phit.Material,0,0,"Block",5,0,1,true)
643
	end
644
	wait(.3)
645
	landed = false
646
	hum.WalkSpeed = 16
647
	hum.JumpPower = 50
648
end
649
end
650
function tsbanim()
651
pcall(function()
652
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.2,qui,io)
653
	tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(-10))},.2,qui,io)
654
	tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(10))},.2,qui,io)
655
	tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(100),rad(180),rad(10))},.2,qui,io)
656
	coroutine.resume(coroutine.create(function()
657
	for i = 0,1,.05 do
658
		rsw.C0 = rsw.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(170),rad(-10),rad(10)) * CFrame.Angles(-cos(i/aa/1.5)*rad(70),0,0),i)
659
		swait()
660
	end
661
	end))
662
	wait(.1)
663
	char:WaitForChild("MustDestroy",.5):Destroy()
664
	throwsb(mouse.Hit.p,70)
665
	aiming = false
666
	hum.WalkSpeed = 16
667
	hum.JumpPower = 50
668
	rut.Anchored = false
669
end)
670
end
671
function sit()
672
pcall(function()
673
	using = true
674
	hum.WalkSpeed = 0
675
	hum.JumpPower = 0
676
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
677
	tlerp(rutj,{C0 = CFrame.new(0,-1.1,0) * CFrame.Angles(rad(100),rad(180),rad(-20))},.5,qui,io)
678
	tlerp(rs,{C0 = CFrame.new(1,.5,0) * CFrame.Angles(rad(-10),rad(90),rad(20))},.5,qui,io)
679
	tlerp(ls,{C0 = CFrame.new(-1,.5,0) * CFrame.Angles(rad(-10),rad(-90),rad(20))},.5,qui,io)
680
	tlerp(rh,{C0 = CFrame.new(1,.1,-.4) * CFrame.Angles(rad(-20),rad(90),rad(0))},.5,qui,io)
681
	tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(70),rad(-90),rad(0))},.5,qui,io)
682
	wait(.35)
683
	if not furmode then
684
		tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(70),rad(180),rad(0))},.5,qui,io)
685
		tlerp(rutj,{C0 = CFrame.new(0,-1.7,0) * CFrame.Angles(rad(120),rad(180),rad(0))},.5,qui,io)
686
		tlerp(rs,{C0 = CFrame.new(1,.15,.25) * CFrame.Angles(rad(-35),rad(85),rad(0)) * CFrame.Angles(rad(-5),rad(0),rad(0))},.5,qui,io)
687
		tlerp(ls,{C0 = CFrame.new(-1,.15,.25) * CFrame.Angles(rad(-35),rad(-65),rad(0)) * CFrame.Angles(rad(-5),rad(0),rad(0))},.5,qui,io)
688
		tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(60),rad(90),rad(0)) * CFrame.Angles(rad(-5),rad(0),rad(0))},.5,qui,io)
689
		tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(60),rad(-90),rad(0)) * CFrame.Angles(rad(-5),rad(0),rad(0))},.5,qui,io)
690
	else
691
		tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(-75),rad(0),rad(180))},.5,qui,io)
692
		tlerp(rutj,{C0 = CFrame.new(0,-1.6,0) * CFrame.Angles(rad(-105),rad(0),rad(180))},.5,qui,io)
693
		tlerp(rs,{C0 = CFrame.new(.5,.2,-.3) * CFrame.Angles(rad(-10),rad(95),rad(30)) * CFrame.Angles(rad(25),rad(20),rad(0))},.5,qui,io)
694
		tlerp(ls,{C0 = CFrame.new(-.5,.2,-.3) * CFrame.Angles(rad(-10),rad(-95),rad(-30)) * CFrame.Angles(rad(25),rad(-20),rad(0))},.5,qui,io)
695
		tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(15),rad(90),rad(0)) * CFrame.Angles(rad(0),rad(-20),rad(90))},.5,qui,io)
696
		tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(15),rad(-90),rad(0)) * CFrame.Angles(rad(0),rad(20),rad(-90))},.5,qui,io)
697
	end
698
	wait(.35)
699
	sitting = true
700
end)
701
end
702
function getup()
703
pcall(function()
704
	using = true
705
	sitting = true
706
	hum.WalkSpeed = 0
707
	hum.JumpPower = 0
708
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
709
	tlerp(rutj,{C0 = CFrame.new(0,-1.1,0) * CFrame.Angles(rad(100),rad(180),rad(-20))},.5,qui,io)
710
	tlerp(rs,{C0 = CFrame.new(1,.5,0) * CFrame.Angles(rad(-10),rad(90),rad(20))},.5,qui,io)
711
	tlerp(ls,{C0 = CFrame.new(-1,.5,0) * CFrame.Angles(rad(-10),rad(-90),rad(20))},.5,qui,io)
712
	tlerp(rh,{C0 = CFrame.new(1,.1,-.4) * CFrame.Angles(rad(-20),rad(90),rad(0))},.5,qui,io)
713
	tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(70),rad(-90),rad(0))},.5,qui,io)
714
	wait(.35)
715
	tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
716
	tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
717
	tlerp(rs,{C0 = CFrame.new(1,.5,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
718
	tlerp(ls,{C0 = CFrame.new(-1,.5,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
719
	tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
720
	tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
721
	wait(.35)
722
	using = false
723
	sitting = false
724
	hum.WalkSpeed = 16
725
	hum.JumpPower = 50
726
end)
727
end
728
function tp()
729
pcall(function()
730
	using = true
731
	hum.WalkSpeed = 0
732
	hum.JumpPower = 0
733
	rut.Anchored = true
734
	local hit,pos,rot = rayc(rut.Position -v3(0,1,0),-rut.CFrame.UpVector,{char},30)
735
	local hit1,pos1,rot1 = rayc(mouse.Hit.p+v3(0,.7,0),-rut.CFrame.UpVector,{char},10)
736
	if hit ~= nil and pos and hit1 then
737
		local cff = CFrame.new(pos,pos+rot) * CFrame.Angles(0,rad(90),0)
738
		local snow = Instance.new("Part",char) snow.Shape = "Cylinder" snow.Transparency = 1 snow.Size = v3(.1,.1,.1) snow.Material = "Sand" snow.BrickColor = BrickColor.new("Institutional white") snow.CanCollide = false snow.Anchored = true
739
		tlerp(snow,{Size =v3(.1,7.5,7.5),Transparency = 0},.2,qui,io)
740
		snow.CFrame = cff
741
		wait(.1)
742
		tlerp(rut,{CFrame = CFrame.new(pos) * CFrame.new(0,-5,0)},.3,qui,io)
743
		wait(.2)
744
		removewithfade(snow,1)
745
	else
746
		tlerp(rsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
747
		tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
748
		tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
749
		tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
750
		tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
751
		wait(.4)
752
		aiming = false
753
		hum.WalkSpeed = 16
754
		hum.JumpPower = 50
755
		rut.Anchored = false
756
		rsw.Part1 = nil
757
		using = false
758
		return warn("Can`t teleport.")
759
	end
760
	local sn
761
	if hit1 ~= nil and pos1 then
762
		local cff = CFrame.new(pos1,pos1+rot1) * CFrame.Angles(0,rad(90),0)
763
		local snow = Instance.new("Part",char) snow.Shape = "Cylinder" snow.Transparency = 1 snow.Size = v3(.1,.1,.1) snow.Material = "Sand" snow.BrickColor = BrickColor.new("Institutional white") snow.CanCollide = false snow.Anchored = true
764
		tlerp(snow,{Size =v3(.1,7.5,7.5),Transparency = 0},.2,qui,io)
765
		snow.CFrame = cff
766
		sn = snow
767
		removewithfade(snow,1)
768
	else
769
		tlerp(rsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
770
		tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
771
		tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
772
		tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
773
		tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
774
		wait(.4)
775
		aiming = false
776
		hum.WalkSpeed = 16
777
		hum.JumpPower = 50
778
		rut.Anchored = false
779
		rsw.Part1 = nil
780
		using = false
781
		return warn("Can`t teleport.")
782
	end
783
	if sn.Orientation.z ~= 90 then
784
		rut.CFrame = sn.CFrame * CFrame.new(-3,0,0)
785
		rut.CFrame = CFrame.new(rut.Position,sn.Position)
786
		tlerp(rut,{CFrame = rut.CFrame * CFrame.new(0,0,-5)},.3,qui,io)
787
	else
788
		rut.CFrame = sn.CFrame * CFrame.new(-3,0,0)
789
		rut.CFrame = CFrame.new(rut.Position,v3(nil,sn.CFrame.y,sn.CFrame.z))
790
		tlerp(rut,{CFrame = rut.CFrame * CFrame.new(0,5,0)},.3,qui,io)
791
	end
792
	wait(.2)
793
	rut.CFrame = CFrame.new(rut.Position,Vector3.new(nil,rut.CFrame.y,-rut.CFrame.z))
794
	rut.Anchored = false
795
	hum.WalkSpeed = 16
796
	hum.JumpPower = 50
797
	using = false
798
end)
799
end
800
function candybag()
801
	pcall(function()
802
		using = true
803
		rsw.Part1 = rapr
804
		lsw.Part1 = lapl
805
		local bag = Instance.new("Part",char) bag.Locked = true bag.Size = v3(.1,.1,.1) bag.CanCollide = false bag:BreakJoints()
806
		local bmesh = Instance.new("FileMesh",bag) bmesh.MeshId = "rbxassetid://25921854" bmesh.Scale = v3(3.5,3.5,3.5) bmesh.TextureId = "rbxassetid://36938238" bmesh.Offset = v3(0,-.6,0)
807
		local weld = Instance.new("Weld",bag) weld.Part0 = ra weld.Part1 = bag weld.C0 = CFrame.new(0,-1,0)
808
		tlerp(rsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
809
		tlerp(lsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
810
		tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
811
		tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
812
		tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
813
		tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
814
		wait(.4)
815
		tlerp(rsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
816
		tlerp(lsw,{C0 = CFrame.new(0,0,0)},.5,qui,io)
817
		tlerp(nec,{C0 = CFrame.new(0,1,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
818
		tlerp(rh,{C0 = CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0))},.5,qui,io)
819
		tlerp(lh,{C0 = CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0))},.5,qui,io)
820
		tlerp(rutj,{C0 = CFrame.new(0,0,0) * CFrame.Angles(rad(90),rad(180),rad(0))},.5,qui,io)
821
		wait(.4)
822
		rsw.Part1 = nil
823
		lsw.Part1 = nil
824
		using = false
825
	end)
826
end
827
function saddeath(who)
828
	for i,v in pairs(who:GetDescendants()) do
829
		coroutine.resume(coroutine.create(function()
830
		if v:IsA("Shirt") or v:IsA("Pants") or v:IsA("ForceField") or v:IsA("CharacterMesh") then
831
			v:Destroy()
832
		end
833
		end))
834
		if v:IsA("Part") or v:IsA("MeshPart") then
835
			fadewithfly(v,"White",false)
836
		end
837
	end
838
end
839
840
mouse.KeyDown:Connect(function(key)
841
pcall(function()
842
	if key == "e" and not using then
843
		huggies()
844
	end
845
	if key == "f" and not using then
846
		placegift()
847
	end
848
	if key == "q" and not using then
849
		grabsb()
850
	end
851
	if key == "z" and not using and not sitting then
852
		sit()
853
	elseif key == "z" and using and sitting then
854
		getup()
855
	end
856
	if key == "c" and not using then
857
		tp()
858
	end
859
	if key == "r"and not using then
860
		--candybag()
861
	end
862
end)
863
end)
864
mouse.Button1Down:Connect(function()
865
	if aiming then
866
		tsbanim()
867
	end
868
end)
869
hum.Died:Connect(function()
870
	saddeath(char)
871
end)
872
873
local anims = coroutine.wrap(function()
874
while hum.Health > .001 do
875
	if aiming then
876
		rut.Anchored = true
877
		rut.CFrame = CFrame.new(rut.Position,v3(mouse.Hit.x,rut.CFrame.y,mouse.Hit.z))
878
	end
879
	if hum.WalkSpeed >32 then
880
		hum.WalkSpeed = 32
881
	end
882
	if not lsound.Parent then
883
		lsound = Instance.new("Sound",effpart) lsound.Volume = lsvol lsound.SoundId = "rbxassetid://1161221108"
884
	end
885
	local hit,pos,rot = rayc(rut.Position -v3(0,1,0),-rut.CFrame.UpVector,{char},2.7)
886
	local grhit,grpos,grrot = rayc(grabpart.Position,-grabpart.CFrame.UpVector,{char},1)
887
	phit = hit
888
	if not using then
889
	if grhit and grhit.Anchored == true then
890
	cangrabthecorner = true
891
	else
892
	cangrabthecorner = false
893
	end
894
	end
895
if cangrabthecorner and not grabbedc then
896
	local shit,spos,srot = rayc(rut.Position+Vector3.new(0,2.5,0),rut.CFrame.LookVector,{char},1.5)
897
	if shit then
898
	grabbedc = true
899
	local cf = CFrame.new(spos,spos+srot) * CFrame.Angles(rad(0),rad(180),0) * CFrame.new(0,-2,.7)
900
	using = true
901
	cangrabthecorner = false
902
	rut.Anchored = true
903
	local oldws = hum.WalkSpeed
904
	hum.WalkSpeed = 0
905
	hum.JumpPower = 0
906
	rut.CFrame = cf
907
	local curcf = rut.CFrame
908
	for i = 0,1,.1 do
909
		rutj.C0 = rutj.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(-90),rad(0),rad(180)),animspeed*50)
910
        rh.C0 = rh.C0:Lerp(CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0)),animspeed*50)
911
        lh.C0 = lh.C0:Lerp(CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0)),animspeed*50)
912
		rs.C0 = rs.C0:Lerp(CFrame.new(.85,.8,-.2) * CFrame.Angles(rad(160),rad(90),rad(0)),animspeed*50)
913
        ls.C0 = ls.C0:Lerp(CFrame.new(-.85,.8,-.2) * CFrame.Angles(rad(160),rad(-90),rad(0)),animspeed*50)
914
		nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-30),rad(0),rad(180)),animspeed*50)
915
		swait()
916
	end
917
	for i = 0,.65,.025 do
918
		rut.CFrame = rut.CFrame:Lerp(curcf * CFrame.new(0,4.5,-3),i)
919
		rutj.C0 = rutj.C0:Lerp(CFrame.new(0,-.8,0) * CFrame.Angles(rad(-120),rad(0),rad(180)),i)
920
        rh.C0 = rh.C0:Lerp(CFrame.new(1,-.7,-.3) * CFrame.Angles(rad(-60),rad(90),rad(0)),i)
921
        lh.C0 = lh.C0:Lerp(CFrame.new(-1,-.7,0) * CFrame.Angles(rad(20),rad(-90),rad(0)),i)
922
		rs.C0 = rs.C0:Lerp(CFrame.new(.85,.3,0) * CFrame.Angles(rad(0),rad(90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(10)),i)
923
        ls.C0 = ls.C0:Lerp(CFrame.new(-.85,.3,0) * CFrame.Angles(rad(0),rad(-90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(10)),i)
924
		nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-80),rad(0),rad(180)),i)
925
		swait()
926
	end
927
	hum.WalkSpeed = oldws
928
	hum.JumpPower = 50
929
	rut.Anchored = false
930
	t.Anchored = false
931
	using = false
932
	grabbedc = false
933
	end
934
	end
935
	walkspeed = hum.WalkSpeed
936
	sumthin = walkspeed/8
937
	animspeed1 = 1.5/sumthin
938
	change = change +sine
939
	if lookinaround then
940
		lchange = lchange +sine
941
	else
942
		lchange = 0
943
	end
944
	local vervel = rut.Velocity.y
945
	local tvel = (rut.Velocity * v3(1,0,1)).Magnitude
946
	local Ccf=rut.CFrame
947
	local Walktest1 = hum.MoveDirection*Ccf.LookVector
948
	local Walktest2 = hum.MoveDirection*Ccf.RightVector
949
	rotfb = Walktest1.X+Walktest1.Z
950
	rotrl = Walktest2.X+Walktest2.Z
951
	if spart then
952
		spart.CFrame = spart.CFrame:Lerp(h.CFrame * CFrame.new(0,15,0),.1)
953
	end
954
	if not hit and anim == "fall" then
955
	readytoland = true
956
	end
957
	if not landed then
958
	if readytoland and hit then
959
	land()
960
	end
961
	if not lookinaround and not sitting then
962
	if anim == "idle" and hit then
963
	--Neck
964
		nec.C1 = nec.C1:Lerp(cf1 * CFrame.new(0,0,cos(change/aa/2.5)/(2.5*10)) * CFrame.Angles(sin(change/aa/2.5)*rad(1),0,-sin(change/aa/2.5)*rad(1)),.1)
965
	--Humanoid Root Part
966
		rutj.C1 = rutj.C1:Lerp(cf2 * CFrame.new(0,cos(change/aa/2.5)/(2.5*10),cos(change/aa/2.5)/(2.5*10)) * CFrame.Angles(sin(change/aa/2.5)*rad(1),0,0),.1)
967
	--Shoulders
968
		rs.C1 = rs.C1:Lerp(cf3 * CFrame.new(-cos(change/aa/2.5)/(2.5*10),cos(change/aa/2.5)/(2.5*10),0) * CFrame.Angles(.1,0,0) * CFrame.Angles(sin(change/aa/1.5)*rad(1),sin(change/aa/2.5)*rad(1),sin(change/aa/2.5)*rad(2.5)),.1)
969
		ls.C1 = ls.C1:Lerp(cf4 * CFrame.new(cos(change/aa/2.5)/(2.5*10),cos(change/aa/2.5)/(2.5*10),0) * CFrame.Angles(.1,0,0) * CFrame.Angles(sin(change/aa/2.5)*rad(1),sin(change/aa/2.5)*rad(1),-sin(change/aa/2.5)*rad(2.5)),.1)
970
	--Hips
971
		rh.C1 = rh.C1:Lerp(cff5 * CFrame.new(cos(change/aa/2.5)/(2.5*10),-cos(change/aa/2.5)/(2.5*10),0) * CFrame.Angles(0,0,sin(change/aa/2.5)*rad(1)) * CFrame.Angles(0,0,0),.1)
972
		lh.C1 = lh.C1:Lerp(cff6 * CFrame.new(-cos(change/aa/2.5)/(2.5*10),-cos(change/aa/2.5)/(2.5*10),0) * CFrame.Angles(0,0,-sin(change/aa/2.5)*rad(1)) * CFrame.Angles(0,0,0),.1)
973
	elseif anim == "sit" then
974
		nec.C1 = nec.C1:Lerp(cf1,.1)
975
		rutj.C1 = rutj.C1:Lerp(cf2,.1)
976
		rs.C1 = rs.C1:Lerp(cf3,.1)
977
		ls.C1 = ls.C1:Lerp(cf4,.1)
978
		rh.C1 = rh.C1:Lerp(cf5,.1)
979
		lh.C1 = lh.C1:Lerp(cf6,.1)
980
	elseif anim == "jump" and not hit then
981
		nec.C1 = nec.C1:Lerp(cf1,.1)
982
		rutj.C1 = rutj.C1:Lerp(cf2,.1)
983
		rs.C1 = rs.C1:Lerp(cf3,.1)
984
		ls.C1 = ls.C1:Lerp(cf4,.1)
985
		rh.C1 = rh.C1:Lerp(cf5,.1)
986
		lh.C1 = lh.C1:Lerp(cf6,.1)
987
	elseif anim == "fall" and not hit then
988
		nec.C1 = nec.C1:Lerp(cf1,.1)
989
		rutj.C1 = rutj.C1:Lerp(cf2,.1)
990
		rs.C1 = rs.C1:Lerp(cf3,.1)
991
		ls.C1 = ls.C1:Lerp(cf4,.1)
992
		rh.C1 = rh.C1:Lerp(cf5,.1)
993
		lh.C1 = lh.C1:Lerp(cf6,.1)
994
	elseif anim == "walk" and hit then
995
		--Neck
996
			nec.C1 = nec.C1:Lerp(cf1 * CFrame.new(0,0,cos(change/aa/animspeed1)/17.5) * CFrame.Angles(-sin(change/aa/animspeed1)*rad(5),-rut.RotVelocity.y/90,rut.RotVelocity.y/60),walkanimspeed)
997
		--Humanoid Root Part
998
			rutj.C1 = rutj.C1:Lerp(cf2 * CFrame.new(0,0,cos(change/aa/animspeed1)/15) * CFrame.Angles(sin(change/aa/animspeed1)*rad(2.5*sumthin),-rut.RotVelocity.y/100,sin(change/aa/animspeed1)*rad(5*sumthin) * -rut.RotVelocity.y/100) * CFrame.Angles(-rotfb/5,rotrl/5,0),walkanimspeed)
999
		--Shoulders
1000
			rs.C1 = rs.C1:Lerp(cf3 * CFrame.new(0,0,0) * CFrame.Angles(-sin(change/aa/animspeed1)*rad(3*sumthin)*rotfb,-sin(change/aa/animspeed1)*rad(10)*rotfb,0) * CFrame.Angles(sin(change/aa/animspeed1)*rad(5*sumthin)*rotrl,-sin(change/aa/animspeed1)*rad(5*sumthin)*rotrl,-sin(change/aa/animspeed1)*rad(35*sumthin)*rotfb or rotfl),walkanimspeed)
1001
			ls.C1 = ls.C1:Lerp(cf4 * CFrame.new(0,0,0) * CFrame.Angles(sin(change/aa/animspeed1)*rad(3*sumthin)*rotfb,-sin(change/aa/animspeed1)*rad(10)*rotfb,0) * CFrame.Angles(sin(change/aa/animspeed1)*rad(5*sumthin)*rotrl,-sin(change/aa/animspeed1)*rad(5*sumthin)*rotrl,-sin(change/aa/animspeed1)*rad(35*sumthin)*rotfb or rotfl),walkanimspeed)
1002
		--Hips
1003
			rh.C1 = rh.C1:Lerp(cf5 * CFrame.new((cos(change/aa/animspeed1)/3.5)*rotfb or (cos(change/aa/animspeed1)/3.5)*rotrl,(cos(change/aa/animspeed1)/4),(cos(change/aa/animspeed1)/4)*rotrl) * CFrame.Angles(-sin(change/aa/animspeed1)*rad(15*sumthin)*rotrl,-sin(change/aa/animspeed1)*rad(15*sumthin)*rotrl,sin(change/aa/animspeed1)*rad(30*sumthin)*rotfb),walkanimspeed)
1004
			lh.C1 = lh.C1:Lerp(cf6 * CFrame.new((cos(change/aa/animspeed1)/3.5)*rotfb or (cos(change/aa/animspeed1)/3.5)*rotrl,(-cos(change/aa/animspeed1)/4),(cos(change/aa/animspeed1)/4)*rotrl) * CFrame.Angles(-sin(change/aa/animspeed1)*rad(15*sumthin)*rotrl,-sin(change/aa/animspeed1)*rad(15*sumthin)*rotrl,sin(change/aa/animspeed1)*rad(30*sumthin)*rotfb),walkanimspeed)
1005
	end
1006
	if not grabbedc then
1007
	if vervel > 1 and hum.Sit == false then
1008
		anim = "jump"
1009
		if not using then
1010
		rutj.C0 = rutj.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(-80),rad(0),rad(180)),animspeed*50)
1011
        rh.C0 = rh.C0:Lerp(CFrame.new(1,-.1,-.4) * CFrame.Angles(rad(-10),rad(85),rad(0)),animspeed*50)
1012
        lh.C0 = lh.C0:Lerp(CFrame.new(-1,-.4,-.25) * CFrame.Angles(rad(-10),rad(-85),rad(0)),animspeed*50)
1013
		rs.C0 = rs.C0:Lerp(CFrame.new(1,.25,0) * CFrame.Angles(rad(0),rad(90),rad(0)) * CFrame.Angles(rad(-40),rad(0),rad(0)),animspeed*50)
1014
        ls.C0 = ls.C0:Lerp(CFrame.new(-1,.25,-0) * CFrame.Angles(rad(0),rad(-90),rad(0)) * CFrame.Angles(rad(-40),rad(0),rad(0)),animspeed*50)
1015
		nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-100),rad(0),rad(180)),animspeed*50)
1016
		end
1017
	elseif vervel < -1 and hum.Sit == false then
1018
		anim = "fall"
1019
		if not using then
1020
		rutj.C0 = rutj.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(-80),rad(0),rad(180)),.00025)
1021
        rh.C0 = rh.C0:Lerp(CFrame.new(1,-.1,-.4) * CFrame.Angles(rad(-10),rad(85),rad(0)),.00025)
1022
        lh.C0 = lh.C0:Lerp(CFrame.new(-1,-.55,-.25) * CFrame.Angles(rad(-10),rad(-85),rad(0)),.00025)
1023
		rs.C0 = rs.C0:Lerp(CFrame.new(1,.35,0) * CFrame.Angles(rad(0),rad(90),rad(0)) * CFrame.Angles(rad(-50),rad(0),rad(0)),.00025)
1024
        ls.C0 = ls.C0:Lerp(CFrame.new(-1,.25,-0) * CFrame.Angles(rad(0),rad(-90),rad(0)) * CFrame.Angles(rad(-50),rad(0),rad(0)),.00025)
1025
		nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-110),rad(0),rad(180)),.00025)
1026
		end
1027
	elseif tvel < 1 and hum.Sit == false then
1028
		anim = "idle"
1029
		if not using then
1030
		rutj.C0 = rutj.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(-90),rad(0),rad(180)),animspeed*50)
1031
        rh.C0 = rh.C0:Lerp(CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0)),animspeed*50)
1032
        lh.C0 = lh.C0:Lerp(CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0)),animspeed*50)
1033
		rs.C0 = rs.C0:Lerp(CFrame.new(1,.5,0) * CFrame.Angles(rad(0),rad(90),rad(0)),animspeed*50)
1034
        ls.C0 = ls.C0:Lerp(CFrame.new(-1,.5,0) * CFrame.Angles(rad(0),rad(-90),rad(0)),animspeed*50)
1035
		nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-90),rad(0),rad(180)),animspeed*50)
1036
		end
1037
	elseif tvel > 1 and hum.Sit == false then
1038
		anim = "walk"
1039
		if not using then
1040
		rutj.C0 = rutj.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(-90),rad(0),rad(180)) * CFrame.Angles(rad(0*sumthin),rad(0),rad(0)),animspeed*50)
1041
        rh.C0 = rh.C0:Lerp(CFrame.new(1,-.8+rotrl/4,-.15) * CFrame.Angles(rad(0),rad(90),rad(-10)) * CFrame.Angles(rad(0),rad(0),-sin(change/aa/animspeed1)*rad(10*sumthin)*rotrl) * CFrame.Angles(-rotrl/5,-rotrl/5,rotfb/5),animspeed*50)
1042
        lh.C0 = lh.C0:Lerp(CFrame.new(-1,-.8-rotrl/4,-.15) * CFrame.Angles(rad(0),rad(-90),rad(10)) * CFrame.Angles(rad(0),rad(0),-sin(change/aa/animspeed1)*rad(10*sumthin)*rotrl) * CFrame.Angles(rotrl/5,-rotrl/5,-rotfb/5),animspeed*50)
1043
		rs.C0 = rs.C0:Lerp(CFrame.new(1,.5,0) * CFrame.Angles(sin(change/aa/animspeed1)*rad(10*sumthin)*rotrl,rad(90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(5*sumthin)),animspeed*50)
1044
        ls.C0 = ls.C0:Lerp(CFrame.new(-1,.5,0) * CFrame.Angles(-sin(change/aa/animspeed1)*rad(10*sumthin)*rotrl,rad(-90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(-5*sumthin)),animspeed*50)
1045
		nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-90),rad(0),rad(180)) * CFrame.Angles(rad(-5*sumthin),rad(0),rad(-40*rotrl)),animspeed*50)
1046
		end
1047
	elseif hum.Sit == true then
1048
		anim = "sit"
1049
		if not using then
1050
		if not furmode then
1051
			rutj.C0 = rutj.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(-90),rad(0),rad(180)),animspeed*50)
1052
      			rh.C0 = rh.C0:Lerp(CFrame.new(1,-1,0) * CFrame.Angles(rad(0),rad(90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(90)),animspeed*50)
1053
        		lh.C0 = lh.C0:Lerp(CFrame.new(-1,-1,0) * CFrame.Angles(rad(0),rad(-90),rad(0)) * CFrame.Angles(rad(0),rad(0),rad(-90)),animspeed*50)
1054
			rs.C0 = rs.C0:Lerp(CFrame.new(1,.5,0) * CFrame.Angles(rad(0),rad(90),rad(30)) * CFrame.Angles(rad(30),rad(0),rad(0)),animspeed*50)
1055
       			ls.C0 = ls.C0:Lerp(CFrame.new(-1,.5,0) * CFrame.Angles(rad(0),rad(-90),rad(-30)) * CFrame.Angles(rad(30),rad(0),rad(0)),animspeed*50)
1056
			nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-95),rad(0),rad(180)),animspeed*50)
1057
		else
1058
			rutj.C0 = rutj.C0:Lerp(CFrame.new(0,0,0) * CFrame.Angles(rad(-105),rad(0),rad(180)),animspeed*50)
1059
      			rh.C0 = rh.C0:Lerp(CFrame.new(1,-1,0) * CFrame.Angles(rad(15),rad(90),rad(0)) * CFrame.Angles(rad(0),rad(-20),rad(90)),animspeed*50)
1060
        		lh.C0 = lh.C0:Lerp(CFrame.new(-1,-1,0) * CFrame.Angles(rad(15),rad(-90),rad(0)) * CFrame.Angles(rad(0),rad(20),rad(-90)),animspeed*50)
1061
			rs.C0 = rs.C0:Lerp(CFrame.new(.5,.2,-.3) * CFrame.Angles(rad(-10),rad(95),rad(30)) * CFrame.Angles(rad(25),rad(20),rad(0)),animspeed*50)
1062
       			ls.C0 = ls.C0:Lerp(CFrame.new(-.5,.2,-.3) * CFrame.Angles(rad(-10),rad(-95),rad(-30)) * CFrame.Angles(rad(25),rad(-20),rad(0)),animspeed*50)
1063
			nec.C0 = nec.C0:Lerp(CFrame.new(0,1,0) * CFrame.Angles(rad(-75),rad(0),rad(180)),animspeed*50)
1064
		end
1065
		end
1066
		else
1067
		nec.C1 = nec.C1:Lerp(cf1,animspeed*50)
1068
		rutj.C1 = rutj.C1:Lerp(cf2,animspeed*50)
1069
		rs.C1 = rs.C1:Lerp(cf3,animspeed*50)
1070
		ls.C1 = ls.C1:Lerp(cf4,animspeed*50)
1071
		rh.C1 = rh.C1:Lerp(cf5,animspeed*50)
1072
		lh.C1 = lh.C1:Lerp(cf6,animspeed*50)
1073
		end
1074
	end
1075
	end
1076
	end
1077
	if sitting then
1078
		nec.C1 = nec.C1:Lerp(cf1 * CFrame.new(0,0,cos(change/aa)/(2.5*10)) * CFrame.Angles(sin(change/aa/1.5)*rad(2.5),0,-sin(change/aa/1.5)*rad(2.5)),.1)
1079
		rutj.C1 = rutj.C1:Lerp(cf2,.1)
1080
		rs.C1 = rs.C1:Lerp(cf3,.1)
1081
		ls.C1 = ls.C1:Lerp(cf4,.1)
1082
		rh.C1 = rh.C1:Lerp(cf5,.1)
1083
		lh.C1 = lh.C1:Lerp(cf6,.1)
1084
	end
1085
	coroutine.resume(coroutine.create(function()
1086
		if not using and anim == "idle" then
1087
	if not lookinaround then
1088
		idlenum = idlenum +.005
1089
		if idlenum >= whenbored then
1090
			idlenum = 0
1091
			local oldws = hum.WalkSpeed
1092
			local oldjp = hum.JumpPower
1093
			hum.WalkSpeed = 0
1094
			hum.JumpPower = 0
1095
			rut.Anchored = true
1096
			rh.Part0 = rut
1097
			lh.Part0 = rut
1098
			using = true
1099
			lookinaround = true
1100
			wait(3)
1101
			hum.WalkSpeed = oldws
1102
			hum.JumpPower = oldjp
1103
			rut.Anchored = false
1104
			using = false
1105
			rh.Part0 = t
1106
			lh.Part0 = t
1107
			whenbored = math.random(2,6)
1108
			lookinaround = false
1109
		end
1110
	end
1111
elseif using then
1112
	idlenum = 0
1113
elseif anim ~= "idle" then
1114
	idlenum = 0
1115
end
1116
	end))
1117
	if lookinaround then
1118
	--Neck
1119
		nec.C1 = nec.C1:Lerp(cf1 * CFrame.new(0,0,0) * CFrame.Angles(sin(lchange/aa/1.5)*rad(10),cos(lchange/aa/1.5)*rad(5),-sin(lchange/aa/3)*rad(40)),.1)
1120
	--Humanoid Root Part
1121
		rutj.C1 = rutj.C1:Lerp(cf2 * CFrame.new(0,0,0) * CFrame.Angles(cos(lchange/aa/1.5)*rad(5),cos(lchange/aa/1.5)*rad(5),-sin(lchange/aa/3)*rad(20)),.1)
1122
	--Shoulders
1123
		rs.C1 = rs.C1:Lerp(cf3 * CFrame.new(-cos(lchange/aa/3)/(3*10),cos(lchange/aa/3)/(3*10),0) * CFrame.Angles(.1,0,0) * CFrame.Angles(-sin(lchange/aa/3)*rad(12.5),-sin(lchange/aa/3)*rad(12.5),-sin(lchange/aa/3)*rad(15)),.1)
1124
		ls.C1 = ls.C1:Lerp(cf4 * CFrame.new(cos(lchange/aa/3)/(3*10),cos(lchange/aa/3)/(3*10),0) * CFrame.Angles(.1,0,0) * CFrame.Angles(sin(lchange/aa/3)*rad(12.5),-sin(lchange/aa/3)*rad(12.5),-sin(lchange/aa/3)*rad(15)),.1)
1125
	--Hips
1126
		rh.C1 = rh.C1:Lerp(cff5 * CFrame.new(0,0,0) * CFrame.Angles(0,0,0) * CFrame.Angles(0,0,0),.1)
1127
		lh.C1 = lh.C1:Lerp(cff6 * CFrame.new(0,0,0) * CFrame.Angles(0,0,0) * CFrame.Angles(0,0,0),.1)
1128
	end
1129
	swait()
1130
end
1131
end)
1132
anims()
1133
introhat()