Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите пожалуйста! (Roblox Studio (lua))

Хз кто Никто Ученик (117), открыт 3 недели назад
Решил сделать игру RolePlay, затронул тему с паспортом. В общем я хочу сделать систему, если один игрок нажимает на 2го игрока, то у этого 2го игрока появлялась информация об 1 игроке, иными словами появляется Frame и на нём 2 TextLable, в них указан ник первого игрок, а также его value в leaderstats. Если что это всё делается, если у игрока в руках паспорт именно тул, то он может нажать на любого игрока, которому он желает показать свои данные.
1 ответ
Александр Знаток (428) 3 недели назад
Помощь с системой паспорта в Roblox Studio (Lua)
Я могу помочь вам с реализацией системы паспорта в Roblox Studio, используя Lua.

Вот шаги, которые вам необходимо выполнить:

1. Создайте Frame для отображения информации о игроке:

Вставьте Frame в ваш Workspace.
Добавьте два TextLabel внутрь Frame: один для ника игрока, а другой для его значения в leaderstats.
Настройте внешний вид Frame, TextLabel и их позиционирование.
2. Добавьте LocalScript в Frame:

Вставьте LocalScript внутрь Frame.
В LocalScript добавьте код, который будет выполняться при нажатии на Frame.
3. Код для отображения информации о игроке:
 local Frame = script.Parent -- Frame, на котором расположен LocalScript 

local function showPlayerInfo(hitPlayer)
if hitPlayer ~= nil then
-- Получите ник игрока
local playerName = hitPlayer:GetName()

-- Получите значение leaderstats игрока
local playerValue = hitPlayer:GetAttribute("Value")

-- Отобразите ник игрока в TextLabel
Frame.TextLabel1.Text = playerName

-- Отобразите значение leaderstats игрока в TextLabel
Frame.TextLabel2.Text = playerValue
end
end

-- Обработчик события нажатия на Frame
Frame.Touched = function(player)
showPlayerInfo(player)
end
Объяснение кода:

local Frame = script.Parent - Получает Frame, на котором расположен LocalScript.
local function showPlayerInfo(hitPlayer) - Определяет функцию showPlayerInfo, которая принимает один параметр - hitPlayer.
if hitPlayer ~= nil then - Проверяет, не равен ли hitPlayer nil. nil означает, что Frame не был нажат игроком.
local playerName = hitPlayer:GetName() - Получает ник игрока, который нажал на Frame.
local playerValue = hitPlayer:GetAttribute("Value") - Получает значение leaderstats игрока, который нажал на Frame.
Frame.TextLabel1.Text = playerName - Отображает ник игрока в первом TextLabel.
Frame.TextLabel2.Text = playerValue - Отображает значение leaderstats игрока во втором TextLabel.
Frame.Touched = function(player) - Определяет обработчик события нажатия на Frame. player - это игрок, который нажал на Frame.
showPlayerInfo(player) - Вызывает функцию showPlayerInfo, передавая ей player в качестве параметра.
5. Дополнительные возможности:

Вы можете добавить другие TextLabel для отображения дополнительной информации о игроке, например, его команды, уровня или состояния.
Вы можете изменить код, чтобы информация о игроке отображалась только в том случае, если нажавший игрок находится в определенной группе или имеет определенный уровень доступа.
Вы можете добавить анимацию или другие эффекты, чтобы сделать систему паспорта более привлекательной.
Хз кто НиктоУченик (117) 3 недели назад
То есть, если игрок1 нажмёт на игрока2, то у игрока2 появится Frame на котором информация об игроке1? Это так работает?
Александр Знаток (428) Хз кто Никто, правильно
Хз кто НиктоУченик (117) 3 недели назад
Паспорт в качестве Tool
Похожие вопросы