Menu de Roupas no Roblox: Como Criar um Sistema de Troca com GUI
O menu de roupas no Roblox é um dos sistemas mais usados em jogos de personalização, RPG e simuladores. Com ele, o jogador consegue trocar camisa, calça e acessórios direto pelo jogo, deixando a experiência muito mais divertida e profissional.
Neste conteúdo, você vai aprender como criar um menu de roupas no Roblox usando GUI e programação em Lua, entendendo a lógica por trás do sistema e como aplicar isso no seu próprio jogo, mesmo que você ainda esteja começando no Roblox Studio.
Vídeo: Menu de Roupas no Roblox Studio
Para facilitar o aprendizado, eu preparei um vídeo completo mostrando todo o processo passo a passo no Roblox Studio, desde a criação da interface até a troca das roupas no personagem.
No vídeo, você acompanha a construção do sistema na prática e entende como cada parte funciona.
ServerScript
local ReplicatedStorage= game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
local Players = game:GetService("Players")
local PlayerData= {}
local function changeClothes(player, data)
local info = PlayerData[player.UserId]
if not info then
return
end
if data.type=="hat" then
info.hat = data.id
elseif data.type=="pants" then
info.pants = data.id
elseif data.type=="classicShirt" then
info.classicShirt= data.id
end
local current = Players:GetHumanoidDescriptionFromUserId(player.UserId)
if info.hat then
current.HatAccessory= tostring(info.hat)
end
if info.pants then
current.Pants = info.pants
end
if info.classicShirt then
current.Shirt= info.classicShirt
end
if info.ShirtAccessory then
current.ShirtAccessory = info.ShirtAccessory
end
player:LoadCharacterWithHumanoidDescription(current)
end
Players.PlayerAdded:Connect(function(player)
PlayerData[player.UserId]={
hat=nil,
pants=nil,
classicShirt=nil,
shirtAcccessory= nil
}
print(PlayerData)
--122218650586115
--local data ={type="hat", id="139622056593493"}
--changeClothes(player,data)
end)
RemoteEvent.OnServerEvent:Connect(function(player, data)
changeClothes(player,data)
end)
LocalScript
local ReplicatedStorage= game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
local screenGui= script.Parent
local BtnClothes= screenGui:WaitForChild("Frame"):WaitForChild("Clothes")
local FrameMain = screenGui:WaitForChild("FrameMain")
local CloseButton = FrameMain:WaitForChild("CloseButton")
FrameMain.Visible=false
BtnClothes.MouseButton1Up:Connect(function()
FrameMain.Visible=not FrameMain.Visible
-- FrameMain.Visible = true
end)
local Btn1= FrameMain:WaitForChild("Frame"):WaitForChild("ScrollingFrame"):WaitForChild("Btn1")
--Btn1.MouseButton1Up:Connect(function()
-- local data ={type=Btn1:GetAttribute("type"), id=Btn1:GetAttribute("id")}
-- RemoteEvent:FireServer(data)
--end)
for _, btn in ipairs(FrameMain.Frame.ScrollingFrame:GetChildren()) do
if btn:IsA("TextButton") then
print(btn)
btn.MouseButton1Up:Connect(function()
local data ={type=btn:GetAttribute("type"), id=btn:GetAttribute("id")}
RemoteEvent:FireServer(data)
end)
end
end
CloseButton.MouseButton1Up:Connect(function()
FrameMain.Visible=false
end)
Cursos Programação for Kids
Quer aprender programação no Roblox de forma organizada e sem complicação?
No Programação for Kids, as crianças e adolescentes aprendem passo a passo, criando jogos no Roblox, com aulas práticas, material de apoio e certificado.
👉 Acesse os cursos: https://programacaoforkids.com.br







