Как мне создать таблицу лидеров на roblox?
Как мне создать таблицу лидеров на roblox?
9 ответов
В каждого игрока необходимо вставить значение с именем 'leaderstats', используя скрипт с событием PlayerAdded. Внутри значения leaderstats вы можете разместить IntValues - их имя будет отображаться как заголовок, а их значение - как статистика игрока.
Чтобы изменить эту статистику, вам нужно добавить различные функции и / или события в скрипт, который создал значения лидера.
Вставьте скрипт в рабочую область, затем в коде введите:
function Onplayerentered(player)
local leaderstats = Instance.new("IntValue")
leaderstats.Parent = player
leaderstats.Value = 0
leaderstats.Name = "leaderstats"
local stat = Instance.new("IntValue")
stat.Name = "" -- Put name here
stat.Value = -- Put the starting Value#
end
game.Players.ChildAdded:connect(Onplayerentered)
- Поднесите к панели инструментов вставки roblox.
- Выберите Лидерборд.
- Вы можете настроить скрипт под свои нужды!
Вставьте скрипт в ServerScriptService и вставьте следующий код:
plrEntered = function(plr)
local ls = Instance.new('IntValue') --Leaderstats
ls.Parent = plr
ls.Value = 0
ls.Name = 'leaderstats'
local stat = Instance.new('IntValue')
stat.Name = 'Money' -- Change to the value you want
stat.Value = 0 -- Add the starting value
end
game:GetService'Players'.PlayerAdded(plrEntered)
ROBLOX определяет таблицу лидеров как объект, который называется "leaderstats" и находится в объекте игрока. Статистика списка лидеров определяется как объект значения внутри объекта leaderstats (Player>leaderstats>ValueObject). Итак, давайте напишем функцию, которая создает таблицу лидеров со статистикой "наличных" для игрока.
local function createLeaderboard(player)
local stats = Instance.new("Folder")
stats.Name = "leaderstats"
local cash = Instance.new("IntValue", stats)
cash.Name = "Cash"
stats.Parent = player
end
Тогда нам нужно сделать эту работу. Нам нужно подключить эту функцию к событию PlayerAdded из объекта Players.
local players = game:WaitForChild("Players")
players.PlayerAdded:connect(createLeaderboard)
И это в основном это. Обратите внимание, что строка 3 в коде, показанном непосредственно выше, является эквивалентом:
players.PlayerAdded:connect(function(player)
createLeaderboard(player)
end)
Весь скрипт будет выглядеть так:
local players = game:WaitForChild("Players")
local function createLeaderboard(player)
local stats = Instance.new("Folder")
stats.Name = "leaderstats"
local cash = Instance.new("IntValue", stats)
cash.Name = "Cash"
stats.Parent = player
end
players.PlayerAdded:connect(createLeaderboard)
Рекомендуется поместить скрипт в "ServerScriptService".
сначала вам нужно создать скрипт внутри службы скриптов сервера и назвать его как хотите, и написать это в скрипте (убедитесь, что его обычный скрипт не является локальным)
game:GetService("Players").PlayerAdded:Connect(function() --make the function start when new player joins
local player = game.Players.PlayerAdded --make player variable
local leaderstats = instance.new("Folder", player) --make new folder and set it's parent to the player
local money = instance.new("IntValue", leaderstats) --create new value for the stat and set it's parent to the leaderstats folder (you can create as many as u want)
money.name = "Money" --make the name of the value
money.Value = 0 --make the value's value
end)
этот блок кода прост и имеет много поясняющих комментариев. Я бы хотел, чтобы он был полезен.
Функция Onplayererntered(игрок)
local leaderstats = Instance.new("IntValue")
leaderstats.Pareny = player
leaderstats.Value = 0
leaderstats.Name = "leaderboard"
local stat = Instance.new("IntValue")
statname = "Cash"
stat.Value = 100
конец
Таблицы лидеров Roblox - это очень длинный скрипт, к счастью, этот скрипт позволяет нам легко добавлять и удалять списки лидеров. Чтобы добавить таблицу лидеров, вставьте IntValue внутри объекта игрока, чтобы добавить статист, вставьте IntValue в ведущие.
Большинство игр на Roblox хотят, чтобы у каждого игрока была одинаковая таблица лидеров. Поэтому большинство людей используют событие PlayerAdded и создают таблицу лидеров
статистика функции (plr)
local leaderstats = Instance.new("IntValue")
leaderstats.Name = "leaderstats"
leaderstats.Parent = plr
местные монеты = Instance.new("IntValue")
Coins.Name = "монеты"
Coins.Parent = leaderstats
конец)
game.Players.PlayyerAdded:Connect(статистика)