【问题标题】:problem with getting data from dataStore in roblox从roblox中的dataStore获取数据的问题
【发布时间】:2021-06-30 21:27:06
【问题描述】:

关于 Roblox 工作室的问题,或者更确切地说,关于 dataStore 的问题。如果在输出 data:GetCurrentPage() 时通过 pointsStore:SetAsync ("Mars", 19) 直接将值保存在脚本中 - 此值将被输出,但如果您通过函数执行此操作,则会保存该值,但不会数据时不出现:GetCurrentPage()。如何保存用户数据?

将值直接保存在脚本中:

PlayerPoints:SetAsync("Mars", 19)

local success, err = pcall(function()
    local Data = PlayerPoints:GetSortedAsync(false, 5)
    local WinsPage = Data:GetCurrentPage()

    print(WinsPage)
end)

将值直接保存在函数中:

local function givePointsPlayer(player, points)
    local pointsOld = pointsStore:GetAsync(player.Name.."&"..tostring(player.UserId).."&"..tostring(os.date("*t").month))
    if (pointsOld == nil) then
        pointsOld = 0
    end
    print(pointsOld)
    local success, err = pcall(function()
        pointsStore:SetAsync(
            player.Name.."&"..tostring(player.UserId).."&"..tostring(os.date("*t").month),
            pointsOld + points              
        )
    end)
end

EventEditPointsPlayer.OnServerEvent:Connect( function(player, points)
    givePointsPlayer(player, points)
end)

回答: answer

如何保存用户数据以便通过 :GetCurrentPage() 输出??

【问题讨论】:

    标签: lua roblox datastore leaderboard


    【解决方案1】:

    如果你想从页面中获取数据,你需要编写一些代码来遍历每个条目和页面。这是 DevHub 教程中的一个示例:

    -- Sort data into pages of three entries (descending order)
    local pages = characterAgeStore:GetSortedAsync(false, 3)
    
    while true do
        -- Get the current (first) page
        local data = pages:GetCurrentPage()
        -- Iterate through all key-value pairs on page
        for _, entry in pairs(data) do
            print(entry.key .. ":" .. tostring(entry.value))
        end
        -- Check if last page has been reached
        if pages.IsFinished then
            break
        else
            print("----------------")
            -- Advance to next page
            pages:AdvanceToNextPageAsync()
        end
    end
    

    有关更多信息,请参阅来自 Roblox DevHub 的本教程:https://developer.roblox.com/en-us/articles/Data-store

    【讨论】:

      猜你喜欢
      • 2021-10-21
      • 2021-04-02
      • 2018-06-25
      • 2013-11-29
      • 1970-01-01
      • 2011-11-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多