LocalScript (Script do Cliente)
Empty
Empty
Empty
Um LocalScript é um código que roda apenas no computador do jogador (cliente).
Empty
Empty
Empty
Ele lida com coisas específicas para o jogador local, como interações de interface do usuário, controles de câmera e efeitos que não precisam ser vistos por todos.
Empty
Empty
Empty
Interação de Interface do Usuário (UI) | Atualizando ou interagindo com elementos da GUI |
Entrada do Jogador | Entradas do jogador, como eventos de teclado, mouse ou gamepad. |
Efeitos Locais | Efeitos visuais ou sonoros específicos para o jogador local |
Manipulação de Dados Locais | Configurações locais ou preferências, gerenciamento de inventário |
Empty
Empty
Empty
Responsividade | Roda no cliente, o que o torna muito mais responsivo às ações do jogador. O atraso é mínimo, pois não requer comunicação com o servidor para detectar a entrada. |
Eficiência | Lida com o evento localmente, reduzindo a carga no servidor, o que é particularmente importante em jogos com muitos jogadores. |
Empty
Empty
Empty
-- LocalScript in StarterPlayerScripts
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local player = Players.LocalPlayer
local givePointsEvent = ReplicatedStorage:WaitForChild("GivePointsEvent")
local function triggerGivePoints(points)
givePointsEvent:FireServer(points)
end
-- Example usage: Trigger the event when the player clicks a GUI button
local screenGui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui"))
local button = Instance.new("TextButton", screenGui)
button.Size = UDim2.new(0, 200, 0, 50)
button.Position = UDim2.new(0.5, -100, 0.5, -25)
button.Text = "Get Points"
button.MouseButton1Click:Connect(function()
triggerGivePoints(10)
end)
Empty
Empty
Empty
-- Script in ServerScriptService
-- Get the RemoteEvent
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local givePointsEvent = ReplicatedStorage:WaitForChild("GivePointsEvent")
-- Function to handle the remote event
local function onGivePoints(player, points)
-- Add points to the player's leaderstats
local leaderstats = player:FindFirstChild("leaderstats")
if leaderstats then
local score = leaderstats:FindFirstChild("Points")
if score then
score.Value = score.Value + points
print(player.Name .. " received " .. points .. " points!")
end
end
end
-- Connect the function to the OnServerEvent of the remote event
givePointsEvent.OnServerEvent:Connect(onGivePoints)
Se você achou este tutorial útil e gostaria de apoiar meu trabalho, por favor, considere me comprar um café.
Muito obrigado pelo seu apoio!
Me compre um café