Advertisement
MaxproGlitcher

code animation

Dec 16th, 2022 (edited)
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.07 KB | None | 0 0
  1. game:GetService("StarterGui"):SetCore("SendNotification",{
  2. Title = "Guid Animation",
  3. Text = "Script a ÊtÊ executer",
  4. Icon = "rbxassetid://11823384169",
  5. Duration = 15
  6. })
  7. local ContextActionService = game:GetService("ContextActionService")
  8. local HttpService = game:GetService("HttpService")
  9. local GuiService = game:GetService("GuiService")
  10. local CoreGui = game:GetService("CoreGui")
  11. local MarketplaceService = game:GetService("MarketplaceService")
  12. local Players = game:GetService("Players")
  13. local StarterGui = game:GetService("StarterGui")
  14. local UserInputService = game:GetService("UserInputService")
  15.  
  16. local Emotes = {}
  17. local LoadedEmotes = {}
  18. local function AddEmote(name: string, id: IntValue, price: IntValue?)
  19. LoadedEmotes[id] = false
  20. task.spawn(function()
  21. if not (name and id) then
  22. return
  23. end
  24. local success, date = pcall(function()
  25. local info = MarketplaceService:GetProductInfo(id)
  26. local updated = info.Updated
  27. return DateTime.fromIsoDate(updated):ToUniversalTime()
  28. end)
  29. if not success then
  30. task.wait(10)
  31. AddEmote(name, id, price)
  32. return
  33. end
  34. local unix = os.time({
  35. year = date.Year,
  36. month = date.Month,
  37. day = date.Day,
  38. hour = date.Hour,
  39. min = date.Minute,
  40. sec = date.Second
  41. })
  42. LoadedEmotes[id] = true
  43. table.insert(Emotes, {
  44. ["name"] = name,
  45. ["id"] = id,
  46. ["icon"] = "rbxthumb://type=Asset&id=".. id .."&w=150&h=150",
  47. ["price"] = price or 0,
  48. ["lastupdated"] = unix,
  49. ["sort"] = {}
  50. })
  51. end)
  52. end
  53. local CurrentSort = "recentfirst"
  54.  
  55. local FavoriteOff = "rbxassetid://10651060677"
  56. local FavoriteOn = "rbxassetid://10651061109"
  57. local FavoritedEmotes = {}
  58.  
  59. local ScreenGui = Instance.new("ScreenGui")
  60. ScreenGui.Name = "Emotes"
  61. ScreenGui.DisplayOrder = 2
  62. ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
  63. ScreenGui.Enabled = false
  64.  
  65. local BackFrame = Instance.new("Frame")
  66. BackFrame.Size = UDim2.new(0.9, 0, 0.5, 0)
  67. BackFrame.AnchorPoint = Vector2.new(0.5, 0.5)
  68. BackFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
  69. BackFrame.SizeConstraint = Enum.SizeConstraint.RelativeYY
  70. BackFrame.BackgroundTransparency = 1
  71. BackFrame.BorderSizePixel = 0
  72. BackFrame.Parent = ScreenGui
  73.  
  74. local EmoteName = Instance.new("TextLabel")
  75. EmoteName.Name = "EmoteName"
  76. EmoteName.TextScaled = true
  77. EmoteName.AnchorPoint = Vector2.new(0.5, 0.5)
  78. EmoteName.Position = UDim2.new(-0.1, 0, 0.5, 0)
  79. EmoteName.Size = UDim2.new(0.2, 0, 0.2, 0)
  80. EmoteName.SizeConstraint = Enum.SizeConstraint.RelativeYY
  81. EmoteName.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
  82. EmoteName.TextColor3 = Color3.new(1, 1, 1)
  83. EmoteName.BorderSizePixel = 0
  84. EmoteName.Parent = BackFrame
  85.  
  86. local Corner = Instance.new("UICorner")
  87. Corner.Parent = EmoteName
  88.  
  89. local Loading = Instance.new("TextLabel", BackFrame)
  90. Loading.AnchorPoint = Vector2.new(0.5, 0.5)
  91. Loading.Text = "Loading..."
  92. Loading.TextColor3 = Color3.new(1, 1, 1)
  93. Loading.BackgroundColor3 = Color3.new(0, 0, 0)
  94. Loading.TextScaled = true
  95. Loading.BackgroundTransparency = 0.5
  96. Loading.Size = UDim2.fromScale(0.2, 0.1)
  97. Loading.Position = UDim2.fromScale(0.5, 0.2)
  98. Corner:Clone().Parent = Loading
  99.  
  100. local Frame = Instance.new("ScrollingFrame")
  101. Frame.Size = UDim2.new(1, 0, 1, 0)
  102. Frame.CanvasSize = UDim2.new(0, 0, 0, 0)
  103. Frame.AutomaticCanvasSize = Enum.AutomaticSize.Y
  104. Frame.ScrollingDirection = Enum.ScrollingDirection.Y
  105. Frame.AnchorPoint = Vector2.new(0.5, 0.5)
  106. Frame.Position = UDim2.new(0.5, 0, 0.5, 0)
  107. Frame.BackgroundTransparency = 1
  108. Frame.ScrollBarThickness = 5
  109. Frame.BorderSizePixel = 0
  110. Frame.MouseLeave:Connect(function()
  111. EmoteName.Text = "Select an Emote"
  112. end)
  113. Frame.Parent = BackFrame
  114.  
  115. local Grid = Instance.new("UIGridLayout")
  116. Grid.CellSize = UDim2.new(0.105, 0, 0, 0)
  117. Grid.CellPadding = UDim2.new(0.006, 0, 0.006, 0)
  118. Grid.SortOrder = Enum.SortOrder.LayoutOrder
  119. Grid.Parent = Frame
  120.  
  121. local SortFrame = Instance.new("Frame")
  122. SortFrame.Visible = false
  123. SortFrame.BorderSizePixel = 0
  124. SortFrame.Position = UDim2.new(1, 5, -0.125, 0)
  125. SortFrame.Size = UDim2.new(0.2, 0, 0, 0)
  126. SortFrame.AutomaticSize = Enum.AutomaticSize.Y
  127. SortFrame.BackgroundTransparency = 1
  128. Corner:Clone().Parent = SortFrame
  129. SortFrame.Parent = BackFrame
  130.  
  131. local SortList = Instance.new("UIListLayout")
  132. SortList.Padding = UDim.new(0.02, 0)
  133. SortList.HorizontalAlignment = Enum.HorizontalAlignment.Center
  134. SortList.VerticalAlignment = Enum.VerticalAlignment.Top
  135. SortList.SortOrder = Enum.SortOrder.LayoutOrder
  136. SortList.Parent = SortFrame
  137.  
  138. local function SortEmotes()
  139. for i,Emote in pairs(Emotes) do
  140. local EmoteButton = Frame:FindFirstChild(Emote.id)
  141. if not EmoteButton then
  142. continue
  143. end
  144. local IsFavorited = table.find(FavoritedEmotes, Emote.id)
  145. EmoteButton.LayoutOrder = Emote.sort[CurrentSort] + ((IsFavorited and 0) or #Emotes)
  146. EmoteButton.number.Text = Emote.sort[CurrentSort]
  147. end
  148. end
  149.  
  150. local function createsort(order, text, sort)
  151. local CreatedSort = Instance.new("TextButton")
  152. CreatedSort.SizeConstraint = Enum.SizeConstraint.RelativeXX
  153. CreatedSort.Size = UDim2.new(1, 0, 0.2, 0)
  154. CreatedSort.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
  155. CreatedSort.LayoutOrder = order
  156. CreatedSort.TextColor3 = Color3.new(1, 1, 1)
  157. CreatedSort.Text = text
  158. CreatedSort.TextScaled = true
  159. CreatedSort.BorderSizePixel = 0
  160. Corner:Clone().Parent = CreatedSort
  161. CreatedSort.Parent = SortFrame
  162. CreatedSort.MouseButton1Click:Connect(function()
  163. SortFrame.Visible = false
  164. CurrentSort = sort
  165. SortEmotes()
  166. end)
  167. return CreatedSort
  168. end
  169.  
  170. createsort(1, "Recently Updated First", "recentfirst")
  171. createsort(2, "Recently Updated Last", "recentlast")
  172. createsort(3, "Alphabetically First", "alphabeticfirst")
  173. createsort(4, "Alphabetically Last", "alphabeticlast")
  174. createsort(5, "Highest Price", "highestprice")
  175. createsort(6, "Lowest Price", "lowestprice")
  176.  
  177. local SortButton = Instance.new("TextButton")
  178. SortButton.BorderSizePixel = 0
  179. SortButton.AnchorPoint = Vector2.new(0.5, 0.5)
  180. SortButton.Position = UDim2.new(0.925, -5, -0.075, 0)
  181. SortButton.Size = UDim2.new(0.15, 0, 0.1, 0)
  182. SortButton.TextScaled = true
  183. SortButton.TextColor3 = Color3.new(1, 1, 1)
  184. SortButton.BackgroundColor3 = Color3.new(0, 0, 0)
  185. SortButton.BackgroundTransparency = 0.3
  186. SortButton.Text = "Sort"
  187. SortButton.MouseButton1Click:Connect(function()
  188. SortFrame.Visible = not SortFrame.Visible
  189. end)
  190. Corner:Clone().Parent = SortButton
  191. SortButton.Parent = BackFrame
  192.  
  193. local CloseButton = Instance.new("TextButton")
  194. CloseButton.BorderSizePixel = 0
  195. CloseButton.AnchorPoint = Vector2.new(0.5, 0.5)
  196. CloseButton.Position = UDim2.new(0.075, 0, -0.075, 0)
  197. CloseButton.Size = UDim2.new(0.15, 0, 0.1, 0)
  198. CloseButton.TextScaled = true
  199. CloseButton.TextColor3 = Color3.new(1, 1, 1)
  200. CloseButton.BackgroundColor3 = Color3.new(0, 0, 0)
  201. CloseButton.BackgroundTransparency = 0.3
  202. CloseButton.Text = "Close"
  203. CloseButton.MouseButton1Click:Connect(function()
  204. ScreenGui.Enabled = false
  205. end)
  206. Corner:Clone().Parent = CloseButton
  207. CloseButton.Parent = BackFrame
  208.  
  209. local SearchBar = Instance.new("TextBox")
  210. SearchBar.BorderSizePixel = 0
  211. SearchBar.AnchorPoint = Vector2.new(0.5, 0.5)
  212. SearchBar.Position = UDim2.new(0.5, 0, -0.075, 0)
  213. SearchBar.Size = UDim2.new(0.55, 0, 0.1, 0)
  214. SearchBar.TextScaled = true
  215. SearchBar.PlaceholderText = "Search"
  216. SearchBar.TextColor3 = Color3.new(1, 1, 1)
  217. SearchBar.BackgroundColor3 = Color3.new(0, 0, 0)
  218. SearchBar.BackgroundTransparency = 0.3
  219. SearchBar:GetPropertyChangedSignal("Text"):Connect(function()
  220. local text = SearchBar.Text:lower()
  221. local buttons = Frame:GetChildren()
  222. if text ~= text:sub(1,50) then
  223. SearchBar.Text = SearchBar.Text:sub(1,50)
  224. text = SearchBar.Text:lower()
  225. end
  226. if text ~= "" then
  227. for i,button in pairs(buttons) do
  228. if button:IsA("GuiButton") then
  229. local name = button:GetAttribute("name"):lower()
  230. if name:match(text) then
  231. button.Visible = true
  232. else
  233. button.Visible = false
  234. end
  235. end
  236. end
  237. else
  238. for i,button in pairs(buttons) do
  239. if button:IsA("GuiButton") then
  240. button.Visible = true
  241. end
  242. end
  243. end
  244. end)
  245. Corner:Clone().Parent = SearchBar
  246. SearchBar.Parent = BackFrame
  247.  
  248. local function openemotes(name, state, input)
  249. if state == Enum.UserInputState.Begin then
  250. ScreenGui.Enabled = not ScreenGui.Enabled
  251. end
  252. end
  253.  
  254. ContextActionService:BindCoreActionAtPriority(
  255. "Emote Menu",
  256. openemotes,
  257. true,
  258. 2001,
  259. Enum.KeyCode.Comma
  260. )
  261.  
  262. local inputconnect
  263. ScreenGui:GetPropertyChangedSignal("Enabled"):Connect(function()
  264. if ScreenGui.Enabled == true then
  265. EmoteName.Text = "Select an Emote"
  266. SearchBar.Text = ""
  267. SortFrame.Visible = false
  268. GuiService:SetEmotesMenuOpen(false)
  269. inputconnect = UserInputService.InputBegan:Connect(function(input, processed)
  270. if not processed then
  271. if input.UserInputType == Enum.UserInputType.MouseButton1 then
  272. ScreenGui.Enabled = false
  273. end
  274. end
  275. end)
  276. else
  277. inputconnect:Disconnect()
  278. end
  279. end)
  280.  
  281. GuiService.EmotesMenuOpenChanged:Connect(function(isopen)
  282. if isopen then
  283. ScreenGui.Enabled = false
  284. end
  285. end)
  286.  
  287. GuiService.MenuOpened:Connect(function()
  288. ScreenGui.Enabled = false
  289. end)
  290.  
  291. if not game:IsLoaded() then
  292. game.Loaded:Wait()
  293. end
  294.  
  295. --thanks inf yield
  296. local SynV3 = syn and DrawingImmediate
  297. if (not is_sirhurt_closure) and (not SynV3) and (syn and syn.protect_gui) then
  298. syn.protect_gui(ScreenGui)
  299. ScreenGui.Parent = CoreGui
  300. elseif get_hidden_gui or gethui then
  301. local hiddenUI = get_hidden_gui or gethui
  302. ScreenGui.Parent = hiddenUI()
  303. else
  304. ScreenGui.Parent = CoreGui
  305. end
  306.  
  307. local function SendNotification(title, text)
  308. if syn and syn.toast_notification then
  309. syn.toast_notification({
  310. Type = ToastType.Error,
  311. Title = title,
  312. Content = text
  313. })
  314. else
  315. StarterGui:SetCore("SendNotification", {
  316. Title = title,
  317. Text = text
  318. })
  319. end
  320. end
  321.  
  322. local LocalPlayer = Players.LocalPlayer
  323.  
  324. local function PlayEmote(name: string, id: IntValue)
  325. ScreenGui.Enabled = false
  326. SearchBar.Text = ""
  327. local Humanoid = LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
  328. local Description = Humanoid and Humanoid:FindFirstChildOfClass("HumanoidDescription")
  329. if not Description then
  330. return
  331. end
  332. if LocalPlayer.Character.Humanoid.RigType ~= Enum.HumanoidRigType.R6 then
  333. local succ, err = pcall(function()
  334. Humanoid:PlayEmoteAndGetAnimTrackById(id)
  335. end)
  336. if not succ then
  337. Description:AddEmote(name, id)
  338. Humanoid:PlayEmoteAndGetAnimTrackById(id)
  339. end
  340. else
  341. SendNotification(
  342. "r6? lol",
  343. "you gotta be r15 dude"
  344. )
  345. end
  346. end
  347.  
  348. local function WaitForChildOfClass(parent, class)
  349. local child = parent:FindFirstChildOfClass(class)
  350. while not child or child.ClassName ~= class do
  351. child = parent.ChildAdded:Wait()
  352. end
  353. return child
  354. end
  355.  
  356. local Cursor = ""
  357. while true do
  358. local function Request()
  359. local success, Response = pcall(function()
  360. return game:HttpGetAsync("https://catalog.roblox.com/v1/search/items/details?Category=12&Subcategory=39&SortType=1&SortAggregation=&limit=30&IncludeNotForSale=true&cursor=".. Cursor)
  361. end)
  362. if not success then
  363. task.wait(10)
  364. return Request()
  365. end
  366. return Response
  367. end
  368. local Response = Request()
  369. local Body = HttpService:JSONDecode(Response)
  370. for i,v in pairs(Body.data) do
  371. AddEmote(v.name, v.id, v.price)
  372. end
  373. if Body.nextPageCursor ~= nil then
  374. Cursor = Body.nextPageCursor
  375. else
  376. break
  377. end
  378. end
  379.  
  380. --unreleased emotes
  381. AddEmote("Arm Wave", 5915773155)
  382. AddEmote("Head Banging", 5915779725)
  383. AddEmote("Face Calisthenics", 9830731012)
  384.  
  385. --wait for emotes to finish loading
  386.  
  387. local function EmotesLoaded()
  388. for i, loaded in pairs(LoadedEmotes) do
  389. if not loaded then
  390. return false
  391. end
  392. end
  393. return true
  394. end
  395. while not EmotesLoaded() do
  396. task.wait()
  397. end
  398. Loading:Destroy()
  399.  
  400. --sorting options setup
  401. table.sort(Emotes, function(a, b)
  402. return a.lastupdated > b.lastupdated
  403. end)
  404. for i,v in pairs(Emotes) do
  405. v.sort.recentfirst = i
  406. end
  407.  
  408. table.sort(Emotes, function(a, b)
  409. return a.lastupdated < b.lastupdated
  410. end)
  411. for i,v in pairs(Emotes) do
  412. v.sort.recentlast = i
  413. end
  414.  
  415. table.sort(Emotes, function(a, b)
  416. return a.name:lower() < b.name:lower()
  417. end)
  418. for i,v in pairs(Emotes) do
  419. v.sort.alphabeticfirst = i
  420. end
  421.  
  422. table.sort(Emotes, function(a, b)
  423. return a.name:lower() > b.name:lower()
  424. end)
  425. for i,v in pairs(Emotes) do
  426. v.sort.alphabeticlast = i
  427. end
  428.  
  429. table.sort(Emotes, function(a, b)
  430. return a.price < b.price
  431. end)
  432. for i,v in pairs(Emotes) do
  433. v.sort.lowestprice = i
  434. end
  435.  
  436. table.sort(Emotes, function(a, b)
  437. return a.price > b.price
  438. end)
  439. for i,v in pairs(Emotes) do
  440. v.sort.highestprice = i
  441. end
  442.  
  443. if isfile("FavoritedEmotes.txt") then
  444. if not pcall(function()
  445. FavoritedEmotes = HttpService:JSONDecode(readfile("FavoritedEmotes.txt"))
  446. end) then
  447. FavoritedEmotes = {}
  448. end
  449. else
  450. writefile("FavoritedEmotes.txt", HttpService:JSONEncode(FavoritedEmotes))
  451. end
  452.  
  453. local UpdatedFavorites = {}
  454. for i,name in pairs(FavoritedEmotes) do
  455. if typeof(name) == "string" then
  456. for i,emote in pairs(Emotes) do
  457. if emote.name == name then
  458. table.insert(UpdatedFavorites, emote.id)
  459. break
  460. end
  461. end
  462. end
  463. end
  464. if #UpdatedFavorites ~= 0 then
  465. FavoritedEmotes = UpdatedFavorites
  466. writefile("FavoritedEmotes.txt", HttpService:JSONEncode(FavoritedEmotes))
  467. end
  468.  
  469. local function CharacterAdded(Character)
  470. for i,v in pairs(Frame:GetChildren()) do
  471. if not v:IsA("UIGridLayout") then
  472. v:Destroy()
  473. end
  474. end
  475. local Humanoid = WaitForChildOfClass(Character, "Humanoid")
  476. local Description = Humanoid:WaitForChild("HumanoidDescription", 5) or Instance.new("HumanoidDescription", Humanoid)
  477. local random = Instance.new("TextButton")
  478. local Ratio = Instance.new("UIAspectRatioConstraint")
  479. Ratio.AspectType = Enum.AspectType.ScaleWithParentSize
  480. Ratio.Parent = random
  481. random.LayoutOrder = 0
  482. random.TextColor3 = Color3.new(1, 1, 1)
  483. random.BorderSizePixel = 0
  484. random.BackgroundTransparency = 0.5
  485. random.BackgroundColor3 = Color3.new(0, 0, 0)
  486. random.TextScaled = true
  487. random.Text = "Random"
  488. random:SetAttribute("name", "")
  489. Corner:Clone().Parent = random
  490. random.MouseButton1Click:Connect(function()
  491. local randomemote = Emotes[math.random(1, #Emotes)]
  492. PlayEmote(randomemote.name, randomemote.id)
  493. end)
  494. random.MouseEnter:Connect(function()
  495. EmoteName.Text = "Random"
  496. end)
  497. random.Parent = Frame
  498. for i,Emote in pairs(Emotes) do
  499. Description:AddEmote(Emote.name, Emote.id)
  500. local EmoteButton = Instance.new("ImageButton")
  501. local IsFavorited = table.find(FavoritedEmotes, Emote.id)
  502. EmoteButton.LayoutOrder = Emote.sort[CurrentSort] + ((IsFavorited and 0) or #Emotes)
  503. EmoteButton.Name = Emote.id
  504. EmoteButton:SetAttribute("name", Emote.name)
  505. Corner:Clone().Parent = EmoteButton
  506. EmoteButton.Image = Emote.icon
  507. EmoteButton.BackgroundTransparency = 0.5
  508. EmoteButton.BackgroundColor3 = Color3.new(0, 0, 0)
  509. EmoteButton.BorderSizePixel = 0
  510. Ratio:Clone().Parent = EmoteButton
  511. local EmoteNumber = Instance.new("TextLabel")
  512. EmoteNumber.Name = "number"
  513. EmoteNumber.TextScaled = true
  514. EmoteNumber.BackgroundTransparency = 1
  515. EmoteNumber.TextColor3 = Color3.new(1, 1, 1)
  516. EmoteNumber.BorderSizePixel = 0
  517. EmoteNumber.AnchorPoint = Vector2.new(0.5, 0.5)
  518. EmoteNumber.Size = UDim2.new(0.2, 0, 0.2, 0)
  519. EmoteNumber.Position = UDim2.new(0.1, 0, 0.9, 0)
  520. EmoteNumber.Text = Emote.sort[CurrentSort]
  521. EmoteNumber.TextXAlignment = Enum.TextXAlignment.Center
  522. EmoteNumber.TextYAlignment = Enum.TextYAlignment.Center
  523. local UIStroke = Instance.new("UIStroke")
  524. UIStroke.Transparency = 0.5
  525. UIStroke.Parent = EmoteNumber
  526. EmoteNumber.Parent = EmoteButton
  527. EmoteButton.Parent = Frame
  528. EmoteButton.MouseButton1Click:Connect(function()
  529. PlayEmote(Emote.name, Emote.id)
  530. end)
  531. EmoteButton.MouseEnter:Connect(function()
  532. EmoteName.Text = Emote.name
  533. end)
  534. local Favorite = Instance.new("ImageButton")
  535. Favorite.Name = "favorite"
  536. if table.find(FavoritedEmotes, Emote.id) then
  537. Favorite.Image = FavoriteOn
  538. else
  539. Favorite.Image = FavoriteOff
  540. end
  541. Favorite.AnchorPoint = Vector2.new(0.5, 0.5)
  542. Favorite.Size = UDim2.new(0.2, 0, 0.2, 0)
  543. Favorite.Position = UDim2.new(0.9, 0, 0.9, 0)
  544. Favorite.BorderSizePixel = 0
  545. Favorite.BackgroundTransparency = 1
  546. Favorite.Parent = EmoteButton
  547. Favorite.MouseButton1Click:Connect(function()
  548. local index = table.find(FavoritedEmotes, Emote.id)
  549. if index then
  550. table.remove(FavoritedEmotes, index)
  551. Favorite.Image = FavoriteOff
  552. EmoteButton.LayoutOrder = Emote.sort[CurrentSort] + #Emotes
  553. else
  554. table.insert(FavoritedEmotes, Emote.id)
  555. Favorite.Image = FavoriteOn
  556. EmoteButton.LayoutOrder = Emote.sort[CurrentSort]
  557. end
  558. writefile("FavoritedEmotes.txt", HttpService:JSONEncode(FavoritedEmotes))
  559. end)
  560. end
  561. for i=1,9 do
  562. local EmoteButton = Instance.new("Frame")
  563. EmoteButton.LayoutOrder = 2147483647
  564. EmoteButton.Name = "filler"
  565. EmoteButton.BackgroundTransparency = 1
  566. EmoteButton.BorderSizePixel = 0
  567. Ratio:Clone().Parent = EmoteButton
  568. EmoteButton.Visible = true
  569. EmoteButton.Parent = Frame
  570. EmoteButton.MouseEnter:Connect(function()
  571. EmoteName.Text = "Select an Emote"
  572. end)
  573. end
  574. end
  575.  
  576. if LocalPlayer.Character then
  577. CharacterAdded(LocalPlayer.Character)
  578. end
  579. LocalPlayer.CharacterAdded:Connect(CharacterAdded)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement