Roblox Lua, ошибка "Attempt to concatenate string with nil"
Решил сделать код который меняет твою зону в зависимости от ID в Table "list" и отправляет её на сайт json (он open-sourc'ный), в общем подхожу к тому объекту который выдаёт зону и мне выдаёт вот эту ошибку
ServerScriptService.ChangeZone:21: attempt to concatenate string with nil
list = {
["DX5959IRSZDQ"] = "485668490817306624",
["jimin91919"] = "493690792188051456"
}
local player_zone = Instance.new("StringValue")
player_zone.Parent = game.Players.LocalPlayer
player_zone.Name = "PlayerZone"
player_zone.Value = "861932031273074703"
local function formCommand(playerName)
local commandText = "v!move".." "..list[playerName].." "..player_zone.Value
return commandText
end
zone1.Touched:Connect(function(player)
if player_zone == "861932031273074704" then
warn("Already in this zone")
else
player_zone = "861932031273074704"
local commandText = formCommand(game.Players.LocalPlayers.)
local data = {
["content"] = commandText;
}
local finaldata = http:JSONEncode(data)
http:PostAsync(url, finaldata)
-- ]
end
end)
Уже 2-3 часа сижу думаю что тут не так, пожалуйста помогите. Я уже посмотрел парочку таких-же ошибок на stack overflow но у всех разный код и разные решения, хочу всё таки за эти 2 дня пофиксить этот код (хочу побыстрее сделать, сделал себе дедлайн)
Ответы (1 шт):
Сложно понять где тут у вас ошибка. ChangeZone это название файла или функции или где оно? Но написано, что ошибка конкатенации (оператор 2 точки ..) строки и nil. То есть видимо list[playerName] или player_zone.Value равны nil. Можно например сделать так, но не знаю на сколько это поможет.
local function formCommand(playerName)
list[playerName]=list[playerName] or ""
player_zone.Value=player_zone.Value or ""
local commandText = "v!move".." "..list[playerName].." "..player_zone.Value
return commandText
end