Помощь в роблокс студио.
Мне нужен скрипт, с помощью которого над головой игрока будет показываться его ранг в группе и его username(не отображаемый). Если игрок не в группе, то над его головой будет ранг "🎫Новенький". Буду рад если кто-то скинет скрипт.
По дате
По рейтингу
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
-- Создаем новый ScreenGui для отображения текста
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = game.Players.LocalPlayer:WaitForChild("PlayerGui")
-- Создаем TextLabel для отображения ранга над головой игрока
local rankLabel = Instance.new("TextLabel")
rankLabel.Size = UDim2.new(0, 200, 0, 50)
rankLabel.BackgroundTransparency = 1
rankLabel.TextScaled = true
rankLabel.Font = Enum.Font.SourceSansBold
rankLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
rankLabel.Parent = screenGui
-- Функция для обновления ранга
local function updateRank()
local player = game.Players.LocalPlayer
local userId = player.UserId
local groupId = 1234567 -- Замените на ID вашей группы
-- Проверяем, состоит ли игрок в группе
local isInGroup = player:IsInGroup(groupId)
if isInGroup then
-- Получаем ранг игрока в группе
local rank = player:GetRoleInGroup(groupId)
rankLabel.Text = rank
else
-- Если игрок не в группе, отображаем "Новенький"
rankLabel.Text = "🎫Новенький"
end
end
-- Функция для обновления позиции метки над головой игрока
local function updateLabelPosition()
local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local head = character:WaitForChild("Head")
local headPosition = head.Position
-- Конвертируем позицию головы в позицию экрана
local screenPosition = workspace.CurrentCamera:WorldToScreenPoint(headPosition + Vector3.new(0, 2, 0))
rankLabel.Position = UDim2.new(0, screenPosition.X - rankLabel.Size.X.Offset / 2, 0, screenPosition.Y - rankLabel.Size.Y.Offset / 2)
end
-- Обновляем ранг при запуске игры
updateRank()
-- Обновляем позицию метки в каждом кадре
game:GetService("RunService").RenderStepped:Connect(updateLabelPosition)
-- Обновляем ранг при изменении персонажа
game.Players.LocalPlayer.CharacterAdded:Connect(function()
wait(1) -- Ждем, чтобы персонаж загрузился
updateRank()
end)
Больше по теме