Seat という椅子などに設置して、プレイヤーが着席できるようにするパーツがあります。着席したときや、離席したときに何らかの処理をしたい場合は下記のように行います。
- Seat を追加します。
 - Seat の下に Script を追加します。
 
local Players = game:GetService("Players")
local seat = script.Parent
local currentPlayer = nil
local function onOccupantChanged()
    local humanoid = seat.Occupant
    if humanoid then
        local character = humanoid.Parent
        local player = Players:GetPlayerFromCharacter(character)
        if player then
            print(player.Name .. "が着席した")
            currentPlayer = player
            return
        end
    end
    if currentPlayer then
        print(currentPlayer.Name .. "が離席した")
        currentPlayer = nil
    end
end
seat:GetPropertyChangedSignal("Occupant"):Connect(onOccupantChanged)
着席していた場合、Humanoid の SeatPart にSeatのオブジェクトが入るようです。
