Advertisement
Rodapitati

Winter FE translated

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