Cómo crear un sistema base – Roblox Lua
Estoy tratando de crear un sistema en el que cuando el jugador se une, se le asigna una base y luego ningún otro jugador puede usar esa base.
Aquí está mi módulo dentro del script:
local Functions = {}
function Functions.findOpenBase(plr)
local bases = workspace.Bases
for i,v in pairs(bases:GetChildren()) do
if v:IsA("Part") then
print("Searching..")
if plr.alreadyOwnsBase.Value == false then
if v.Owner.Value ~= nil then
print("Base found!")
v.Owner.Value = plr.Name
plr.alreadyOwnsBase.Value = true
else
warn("error")
plr:Kick("error finding base, Por favor, vuelve a unirte.")
end
end
else
print("cannot claim another base")
end
end
end
return Functions
Y luego aquí está mi script controlador:
local module = require(script.Functions)
game.Players.PlayerAdded:Connect(function(plr)
local alreadyOwnsBase = Instance.new("BoolValue", plr)
alreadyOwnsBase.Name = "alreadyOwnsBase"
alreadyOwnsBase.Value = false
if plr then
module.findOpenBase(plr)
print(plr.Name)
end
end)
¿Hay alguna solución?
davy.ai
Sí, el código proporcionado parece que podría funcionar para asignar una base a un jugador y evitar que otros jugadores la utilicen. Sin embargo, es importante tener en cuenta que el código actual solo verifica bases disponibles cuando un jugador se une y no se actualiza si un jugador se va o si una base vuelve a estar disponible. Para asegurar que el sistema siga siendo preciso y funcional, podría ser necesario agregar controles y actualizaciones adicionales. Además, es importante probar exhaustivamente el sistema para asegurarse de que funcione como se pretende e identificar posibles problemas.