Como fazer uma barra de xp no roblox studio - aula roblox

Como fazer uma Barra de XP no Roblox Studio

Aula de Roblox : Aprenda a Fazer Barra de XP

Se você quer deixar seu jogo mais viciante e divertido, adicionar uma barra de XP é essencial! 📈✨ Neste post, você vai aprender como criar uma barra de experiência do zero no Roblox Studio, com um sistema que aumenta a dificuldade a cada nível! Além disso, vou te mostrar os scripts completos para que a barra cresça de forma animada e acompanhe o progresso do jogador. 🚀

💡 O que você vai aprender:
✅ Como calcular o XP necessário para subir de nível
✅ Como fazer a barra de XP crescer de forma suave e animada
✅ Como configurar um sistema de progressão inteligente

E o melhor: vou deixar tudo pronto para você copiar e usar no seu jogo! 🎯🔥

Assista à vídeo-aula abaixo e confira os scripts completos! ⬇️

Assista a Aula de Roblox : Barra de XP e level em 5 passos

Vamos deixar seu jogo mais divertido e desafiador? Então você precisa de uma barra de XP animada! 🎮✨

Nesta aula, você vai aprender passo a passo como criar um sistema de XP no Roblox Studio, onde a barra cresce conforme o jogador ganha experiência e reseta ao subir de nível. Além disso, vamos programar uma lógica que aumenta a dificuldade a cada nível! 📈🔥

🎥 Assista à videoaula abaixo e aprenda na prática! Além do vídeo, também disponibilizamos os scripts para você copiar e usar no seu jogo. Bora codar? 🚀

Script Server : Barra de XP

				
					local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage.RemoteEvent
local Zombies = game.Workspace.ZombiesFolder:GetChildren()

local PlayerData={}

local function calcularXPParaProximoLevel(level)
	local xpBase = 100
	local xpNecessario= xpBase * (2 ^( level -1))
	return xpNecessario
end
local function adicionarPontosXP (id, pontos)
	PlayerData[id].xp += pontos
	print(PlayerData)
	
	while PlayerData[id].xp >= calcularXPParaProximoLevel(PlayerData[id].level) do
		local xpNecessario = calcularXPParaProximoLevel(PlayerData[id].level)
		PlayerData[id].level = PlayerData[id].level + 1
		PlayerData[id].xp -= xpNecessario
		print("------ removeu o xp e passou de level")
		print(PlayerData)
	end
	
	local data = {
		xp = PlayerData[id].xp,
		level = PlayerData[id].level,
		maxXP = calcularXPParaProximoLevel(PlayerData[id].level)
		
	}
	local player = Players:GetPlayerByUserId(id)
	RemoteEvent:FireClient(player, data)
end

for _, zombie in ipairs(Zombies) do
	local Humanoid:Humanoid = zombie.Humanoid
	
	Humanoid.HealthChanged:Connect(function()
		print("mudou vida")
		
		local lastAttacker = Humanoid:FindFirstChild("creator")
		if lastAttacker then
			print(lastAttacker.Value)
			local player = lastAttacker.Value
			adicionarPontosXP(player.UserId, 20)
		end
	end)
end


Players.PlayerAdded:Connect(function(player)
	PlayerData[player.UserId]={
		xp=0,
		level=1
	}
	
end)
				
			

Local Script Barra de XP

				
					local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RemoteEvent = ReplicatedStorage.RemoteEvent
local Player = game.Players.LocalPlayer
local TweenService = game:GetService("TweenService")


local ScreenGui = script.Parent
local Frame = ScreenGui.Frame
local level = Frame.Level
local XP = Frame.XP
local XPBar = Frame.OutBar.XPBar

local function updateXPBar(xp, maxXP)
	local size = xp/maxXP
	local targetSize = UDim2.new(size, 0 ,1,0)
	
	local  tweenIfo = TweenInfo.new(
		0.5,
		Enum.EasingStyle.Quad,
		Enum.EasingDirection.Out
	)
	
	local tween = TweenService:Create(XPBar, tweenIfo, {Size = targetSize})
	tween:Play()
end

RemoteEvent.OnClientEvent:Connect(function(data)
	print(data)
	local xp = data.xp
	local MaxXP= data.maxXP
	level.Text = "Level :" .. data.level
	XP.Text = xp .. "/"..MaxXP
	updateXPBar(xp, MaxXP)
end)
				
			

Conheça nossos Cursos de Programação em Jogos

🚀 Aproveite e leve suas habilidades para o próximo nível!

Se você curtiu essa aula e quer aprender muito mais sobre programação no Roblox, conheça nossos cursos de programação para crianças e adolescentes! No Programação for Kids, você aprende a criar seus próprios jogos do zero, usando Lua e Roblox Studio, de forma prática e divertida.

Leave a Reply

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