LocalScript (Script del Cliente)
Empty
Empty
Empty
Un LocalScript es un fragmento de código que solo se ejecuta en la computadora del jugador (cliente).
Empty
Empty
Empty
Gestiona aspectos específicos del jugador local, como interacciones de la interfaz de usuario, controles de cámara y efectos que no necesitan ser vistos por todos.
Empty
Empty
Empty
Interacción con la Interfaz de Usuario (UI) | Actualización o interacción con elementos de la GUI |
Entrada del Jugador | Entradas del jugador, como eventos de teclado, ratón o gamepad. |
Efectos Locales | Efectos visuales o de audio específicos del jugador local |
Gestión de Datos Locales | Configuraciones locales o preferencias, gestión de inventario |
Empty
Empty
Empty
Sensibilidad | Se ejecuta en el cliente, lo que lo hace mucho más sensible a las acciones del jugador. El retraso es mínimo, ya que no requiere comunicación con el servidor para detectar la entrada. |
Eficiencia | Maneja el evento localmente, reduciendo la carga en el servidor, lo cual es particularmente importante en juegos con muchos jugadores. |
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)
Si encuentras útil este tutorial y deseas apoyar mi trabajo, considera invitarme a un café.
¡Muchas gracias por tu apoyo!
Invítame a un café