Menu
CoddyTech

¿Quién lo tocó?

Parte de la sección Creación de scripts para juegos de Roblox del Journey de Lua de Coddy. Lección 14 de 24.

hit es una parte del cuerpo, y hit.Parent es el personaje al que pertenece esa parte del cuerpo. El servicio Players convierte un personaje en el jugador que lo controla:

local Players = game:GetService("Players")
local player = Players:GetPlayerFromCharacter(hit.Parent)

Cuando quien toca no es un personaje (una pelota, un ladrillo que cae), GetPlayerFromCharacter devuelve nil, así que compruébalo antes de usarlo:

local player = Players:GetPlayerFromCharacter(hit.Parent)
if player then
	print(player.Name .. " found the secret")
end

Una vez que tienes al jugador, puedes acceder a cualquier cosa que haya dentro de él, como su marcador: player.leaderstats.Coins.Value. Asignar un valor a Value con = lo reemplaza.

challenge icon

Desafío

Intermedio

La plataforma luminosa es el tesoro, y este script está dentro de ella. Cada jugador ya tiene leaderstats con Coins en 0.

Cuando un jugador toca el tesoro, imprime su nombre y establece sus Coins en 100. Las cosas que no son jugadores no deben causar un error.

Presiona Play, pisa la plataforma y observa el marcador; después, presiona Check.

Pruébalo tú mismo

local Players = game:GetService("Players")
local treasure = script.Parent

treasure.Touched:Connect(function(hit)
	local player = Players:GetPlayerFromCharacter(hit.Parent)
	-- Si es un jugador: imprime su nombre y establece sus Coins en 100
end)
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Creación de scripts para juegos de Roblox

Practica por tu cuenta: Compilador de Lua online