OrderedDataStore
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Một Cửa hàng dữ liệu được sắp xếp là về cơ bản là một GlobalDataStore với ngoại lệ là các giá trị lưu phải là số tích cực .Nó tiết lộ một phương thức GetSortedAsync() cho phép kiểm tra các mục được sắp xếp theo trật tự sử dụng một đối tượng DataStorePages.
Các cửa hàng dữ liệu được xếp hạng không hỗ trợ phiên bản và dữ liệu khai thác, vì vậy DataStoreKeyInfo luôn là nil cho các chìa khóa trong một OrderedDataStore .Nếu bạn cần hỗ trợ phiên bản và dữ liệu khai thác, hãy sử dụng một DataStore .
Các cửa hàng dữ liệu được sắp xếp không hỗ trợ tham số tùy chọn userIds cho SetAsync() hoặc IncrementAsync() .
Xem Kho dữ liệu để có tổng quát về việc sử dụng kho dữ liệu được xếp hạng.
Mẫu mã
This code sample demonstrates usage of an OrderedDataStore and pages.
local DataStoreService = game:GetService("DataStoreService")
local pointsStore = DataStoreService:GetOrderedDataStore("Points")
local function printTopTenPlayers()
local isAscending = false
local pageSize = 10
local pages = pointsStore:GetSortedAsync(isAscending, pageSize)
local topTen = pages:GetCurrentPage()
-- The data in 'topTen' is stored with the index being the index on the page
-- For each item, 'data.key' is the key in the OrderedDataStore and 'data.value' is the value
for rank, data in ipairs(topTen) do
local name = data.key
local points = data.value
print(name .. " is ranked #" .. rank .. " with " .. points .. "points")
end
-- Potentially load the next page...
--pages:AdvanceToNextPageAsync()
end
-- Create some data
pointsStore:SetAsync("Alex", 55)
pointsStore:SetAsync("Charley", 32)
pointsStore:SetAsync("Sydney", 68)
-- Display the top ten players
printTopTenPlayers()
Tóm Tắt
Phương Pháp
- GetSortedAsync(ascending : boolean,pagesize : number,minValue : Variant,maxValue : Variant):DataStorePages
Trả về một đối tượng DataStorePages .
Trả giá trị của một chìa khóa trong một cửa hàng dữ liệu được định và một ví ví dụ / trường hợpDataStoreKeyInfo .
- IncrementAsync(key : string,delta : number,userIds : Array,options : DataStoreIncrementOptions):Variant
Tăng giá trị của một chìa khóa bằng số tiền cung cấp (cả hai phải là số lẻ).
Loại bỏ chìa khóa được chỉ định trong khi vẫn giữ một phiên bản có thể truy cập.
Đặt giá trị của kho dữ liệu cho chìa khóa đã cho.
Cập nhật giá trị của một chìa khóa với một giá trị mới từ chức năng gọi lại được chỉ định.
Thuộc Tính
Phương Pháp
GetSortedAsync
Trả về một đối tượng DataStorePages .Thứ tự sắp xếp được xác định bởi tăng dần , chiều dài của mỗi trang bởi kích thước trang , và minValue / maxValue là các tham số tùy chọn lọc kết quả.
Xem Kho dữ liệu để có giới hạn yêu cầu và mô tả các mã lỗi.
Tham Số
Một boolean chỉ ra xem các trang dữ liệu trả về có ở trật tự tăng dần hay không.
Độ dài của mỗi trang. Mặc định là 50. Giá trị tối đa được phép là 100.
Tham số tùy chọn. Nếu được cài đặt, các trang dữ liệu với giá trị nhỏ hơn minValue sẽ bị loại bỏ.
Tham số tùy chọn. Nếu được cài đặt, các trang dữ liệu với giá trị lớn hơn maxValue sẽ bị loại bỏ.
Lợi Nhuận
Một đối tượng sắp xếp DataStorePages dựa trên các tham số được cung cấp.