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