如何从排行榜中获取本地玩家数据? (Roblox)

时间:2019-11-10 05:16:49

标签: lua roblox

我是Lua和Stack的新手,所以我提前致歉。 我目前正在使用大亨工具包来制作Roblox游戏,而玩家的金钱价值仅显示在排行榜上,而屏幕上却没有显示。这可能会使您很难知道您在控制台和移动设备上有多少钱,因此我试图设置一个GUI在屏幕上显示玩家的钱数。现在,设置GUI并不是问题,知道在GUI上设置文本值是什么。

我不知道如何上传图像,但是工作区中的路径看起来像这样: 玩家(在工作区的第一个选项卡上)->玩家-> Leaderstats->现金

我试图像这样抓取变量(名为“ Cash”):get(),但是因为我没有命名为“ Player”,所以它没有用。我尝试用LocalPlayer代替它(看起来像game.Players.Player.leaderstats.Cash.Value),但这也没有用。仅当我用用户名(game.Players.LocalPlayer.leaderstats.Cash.Value替换“ Player”时,此功能才有效,但我希望此功能对除我以外的其他玩家有效。

我也试图找到原始变量,但是因为我没有制作工具包,所以我很茫然。我查看了随附的每个脚本,但找不到任何内容。

当我尝试将文本设置为这些值时,没有任何反应。我收到的错误消息属于game.Players.Username.leaderstats.Cash.Value。 任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:1)

LocalPlayer是仅在客户端才能获取LocalPlayer的leaderstats的变量。您需要使用本地脚本而不是普通脚本 现在,我将向您展示如何显示它,首先在ScreenGui下创建“ ScreenGui”,然后创建“ TextLabel”,最后在TextLabel下创建“ LocalScript”,现在代码应在LocalScript中

game.Players.LocalPlayer.leaderstats.Cash.Changed:Connect(function(NewValue) --Chnage Cash to your stat
    script.Parent.Text = "$"..NewValue
end)

答案 1 :(得分:0)

在脚本开始处输入以下内容:

local plr = game:GetService("Players").LocalPlayer

,然后将钱显示在屏幕上: (假设本地脚本位于钱所在的文本框中)

   while true do 
      script.Parent.Text = plr.leaderstats.Cash.Value
      wait()
   end

这就是您要做的!

原始粘贴(只需将其复制并粘贴到文本框内的本地脚本中即可)

local plr = game:GetService("Players").LocalPlayer

while true do 
   script.Parent.Text = plr.leaderstats.Cash.Value
   wait()
end