How can I fix my plot owner detecting?

Hello!
I’m continuing to work on my plot system, These plots have warehouses that spawn on them, each of them has a computer. My goal is to detect whether or not the player has a vehicle, and the amount of crates they have is greater than 3. I have that working, my problem comes with detecting who owns the plot. I want players to only be able to access their computer and not other peoples. Here’s my code:


local PLAYERDATA 	= game.ReplicatedStorage.PlayerData
local Remotes 		= game:GetService("ReplicatedStorage").Remotes
local PLAYERS 		= game:GetService("Players")
local debounce 		= false

script.Parent.Touched:Connect(function(hit)
    if not debounce then 
        debounce = true
		local Player 		= game.Players:GetPlayerFromCharacter(hit.Parent)
		local PLAYER_DATA 	= PLAYERDATA:FindFirstChild(Player.Name)
		local WAREHOUSE		= PLAYER_DATA:WaitForChild("Warehouses")
		local PlotSel		= PLAYER_DATA:WaitForChild("SelectedPlot")
		local PLOTS 		= workspace.SpawnedPlots:FindFirstChild(PlotSel.Value)

		if WAREHOUSE.Crates.Value <= 3 and WAREHOUSE.Vehicle.Value == "" and PlotSel and PLOTS.Owner.Value == Player.Name then

			Remotes.showGui:FireClient(Player, "Error")

			print(Player.Name.. " does not meet the requirements to sell or is not the warehouse owner.")

		elseif WAREHOUSE.Crates.Value >= 3 and WAREHOUSE.Vehicle.Value ~= "" and PlotSel.Value and PLOTS.Owner.Value == Player.Name then

			Remotes.showGui:FireClient(Player, "WHComp")

			print("player owns plot, here's the computer")
		
		end 
	debounce = false  
    end
end)

If there’s anything I can do to help with this, please let me know!

Is there any other way you check if the player owns the plot, before using the .Touched event?

Yes, the “PlotSel” value is created and set when a player selects a plot.

Are there any errors in the output?

Nope, output is clear, only prints that I use.