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