Como fazer um menu de seleção de SKins com Starter Player e botões Gui no Roblox

🧠 Como Criar um Menu GUI de Troca de Personagens no Roblox Studio com StarterPlayer (Passo a Passo)

🎮 Está criando um jogo no Roblox e quer permitir que os jogadores escolham o próprio personagem ou skin? Neste post, você vai aprender como desenvolver um menu de seleção de personagens utilizando StarterPlayer, botões GUI e scripts em Lua!

Essa funcionalidade é ideal para deixar seu jogo mais atrativo e interativo — e o melhor: é fácil de fazer mesmo que você esteja começando agora!

📺 Assista ao vídeo completo:

🎥 Aprenda a criar o MELHOR Menu de Troca de Personagens no Roblox Studio usando StarterPlayer e GUI!

📘 O que você vai aprender:

  • Criar um menu visual com botões que permite ao jogador trocar de skin.

  • Adicionar personagens personalizados no StarterPlayer.

  • Usar scripts no ServerScriptService e LocalScript para gerenciar a troca de personagens.

  • Garantir que tudo funcione sem bugs, com uma interface limpa e funcional.

🧩 Códigos utilizados:

🔐 Script do lado do servidor (ServerScriptService) — Gerenciando as trocas de personagem

				
					local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
local StarterPlayer = game:GetService("StarterPlayer")
local Players= game:GetService("Players")

local function changeCharacter(player, characterName)
	print(player)
	print(characterName)
	local characterModel = ReplicatedStorage:FindFirstChild(characterName)
	if characterModel then
		local existingCharacter = StarterPlayer:FindFirstChild("StarterCharacter")
		if existingCharacter then
			existingCharacter:Destroy()
		end
		local newCharacter = characterModel:Clone()
		newCharacter.Name = "StarterCharacter"
		newCharacter.Parent = StarterPlayer
		
		player:LoadCharacter()
	end
end





RemoteEvent.OnServerEvent:Connect(changeCharacter)
				
			

🖥️ LocalScript (StarterGui) — Criando os botões do menu e enviando comandos

				
					local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
local ScreenGui = script.Parent

local Frame = ScreenGui.Frame
local FrameOpenGui = ScreenGui.FrameOpenGui

FrameOpenGui.Visible= false

local btnClose = Frame.BtnClose
local btnOpen = FrameOpenGui.BtnOpen

local BtnAstronauta = Frame.BtnAstronauta
local BtnShrek = Frame.BtnShrek
local BtnSpiderMan = Frame.BtnSpiderMan
local BtnGigante = Frame.BtnGigante



btnClose.MouseButton1Click:Connect(function()
	Frame.Visible = false
	FrameOpenGui.Visible= true
end)

btnOpen.MouseButton1Click:Connect(function()
	Frame.Visible = true
	FrameOpenGui.Visible = false
end)


BtnShrek.MouseButton1Click:Connect(function()
	
	RemoteEvent:FireServer("Shrek")
	
end)

BtnGigante.MouseButton1Click:Connect(function()
	RemoteEvent:FireServer("Gigante")
	
end)
BtnSpiderMan.MouseButton1Click:Connect(function()
	RemoteEvent:FireServer("SpiderMan")
	
end)
BtnAstronauta.MouseButton1Click:Connect(function()
	RemoteEvent:FireServer("Astronauta")

end)
				
			

🚀 Por que isso é importante?

Criar um menu de seleção de personagens dá um ar profissional ao seu jogo e oferece uma experiência personalizada ao jogador. Além disso, é uma ótima forma de aplicar conceitos de programação real com Lua no Roblox Studio!

📚 Quer aprender mais?

👉 Explore nosso curso completo de Roblox com Lua:
🔗 Acesse agora

Nossos cursos são pensados para crianças e adolescentes, com vídeos passo a passo, apostilas, certificados e muito mais!

Leave a Reply

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *