FriendPages
FriendPages is a special version of Pages returned by Players:GetFriendsAsync(). The items contained within include information about a player's friends and have the following structure:
Name | Type | Description |
DisplayName | string | The current display name of the friend. |
Id | int64 | The user ID of the friend. |
Username | string | The username of the friend. |
See the code samples for how to iterate over a player's friends.
Code Samples
This code sample loads the Player.UserId of the player whose username is provided at the top of the script by using Players:GetUserIdFromNameAsync(). Then, it gets a FriendPages object by calling Players:GetFriendsAsync() and iterates over each entry using the iterPageItems function. The username of each friend is stored in a table, then printed at the end.
local Players = game:GetService("Players")
local USERNAME = "Cozecant"
local function iterPageItems(pages)
return coroutine.wrap(function()
local pagenum = 1
while true do
for _, item in ipairs(pages:GetCurrentPage()) do
coroutine.yield(item, pagenum)
end
if pages.IsFinished then
break
end
pages:AdvanceToNextPageAsync()
pagenum = pagenum + 1
end
end)
end
-- First, get the user ID of the player
local userId = Players:GetUserIdFromNameAsync(USERNAME)
-- Then, get a FriendPages object for their friends
local friendPages = Players:GetFriendsAsync(userId)
-- Iterate over the items in the pages. For FriendPages, these
-- are tables of information about the friend, including Username.
-- Collect each username in a table
local usernames = {}
for item, _pageNo in iterPageItems(friendPages) do
table.insert(usernames, item.Username)
end
print("Friends of " .. USERNAME .. ": " .. table.concat(usernames, ", "))
Summary
Properties
Properties inherited from PagesWhether or not the current page is the last page available.
Methods
Methods inherited from PagesReturns the items on the current page. The keys in the item are determined by the source of this object.
Iterates to the next page in the pages object, if possible.