My script Isn't removing a player from a table when they get out of a seat. This script is intended to be a script where if a player sits in a seat they get added to a table and if they get up then they get removed.
local PlrSave = nil
script.Parent.Seat:GetPropertyChangedSignal("Occupant"):Connect(function()
if script.Parent.Seat.Occupant ~= nil then
local Char = script.Parent.Seat.Occupant.Parent
local player = players:GetPlayerFromCharacter(Char)
local PlrSave = player
table.insert(caroccupants, player)
for i, v in pairs(caroccupants) do
print(i)
print(v)
end
else
if PlrSave and PlrSave:IsA("Player") then -- possibly where it goes wrong, maybe not
for i, v in pairs(caroccupants) do
if v == PlrSave then -- this is not removing the player that was last sitting in the object "seat"
table.remove(caroccupants, i)
end
end
for i, v in pairs(caroccupants) do
print(i)
print(v)
end
end
end
end)
Here is the output
16:32:03.661 1 - Server - Script:36
16:32:03.661 hohoyoyo291 - Server - Script:37
-- when I sat in it the first time, also it is not printing anything here, maybe it is the
16:32:07.411 1 - Server - Script:36
16:32:07.411 hohoyoyo291 - Server - Script:37
16:32:07.411 2 - Server - Script:36 -- there should only be 1
16:32:07.412 hohoyoyo291 - Server - Script:37 -- it didn't remove this value
