Hello i'am doing game where you can earn money but i can't do plot selecting roblox give me error: Workspace.function.ClaimPlotScript:31: attempt to index nil with 'Owner'
In every plot i have value that name is owner where i wan't to put with script player's username that claim's it
There's my scripts(local and server):
Server script:
local ReplicatedStorage = game:GetService("ReplicatedStorage") local WorkSpace = game.Workspace local ClaimEvent = ReplicatedStorage.ClaimEvent local AlreadyClaimedEvent = ReplicatedStorage.AlreadyClaimedEvent local HideGUI = ReplicatedStorage.HideGUIEvent local Plots = WorkSpace.Plots local SelectedPlot = nil local function ClaimPlot(username, PlotSelect) print("Remote event ClaimPlot has been received.") if PlotSelect == 1 then SelectedPlot = Plots.firstplot elseif PlotSelect == 2 then SelectedPlot = Plots.secondplot elseif PlotSelect == 3 then SelectedPlot = Plots.thirdplot elseif PlotSelect == 4 then SelectedPlot = Plots.fourthplot elseif PlotSelect == 5 then SelectedPlot = Plots.fifthplot elseif PlotSelect == 6 then SelectedPlot = Plots.sixthplot elseif PlotSelect == 7 then SelectedPlot = Plots.seventhplot elseif PlotSelect == 8 then SelectedPlot = Plots.eightplot end local PlotValue = SelectedPlot.Owner.Value if PlotValue ~= nil then PlotValue = username HideGUI:FireClient(username) else AlreadyClaimedEvent:FireClient(username) end warn("ServerEvent completed!") end ClaimEvent.OnServerEvent:Connect(ClaimPlot)
Local script:
local gui = script.Parent.Parent local ReplicatedStorage = game:GetService("ReplicatedStorage") local ClaimEvent = ReplicatedStorage:WaitForChild("ClaimEvent") local AlreadyClaimedEvent = ReplicatedStorage:WaitForChild("AlreadyClaimedEvent") local HideGUIEvent = ReplicatedStorage:WaitForChild("HideGUIEvent") local username = game.Players.LocalPlayer local PlotSelect = "sixthplot" script.Parent.MouseButton1Click:Connect (function(username) ClaimEvent:FireServer(username, PlotSelect) warn("Mouseclick sended to event") end) local function AlreadyClaimed() print("AlreadyClaimed event has been received.") game.StarterGui.alrdclaimed.Enabled = true wait(3) game.StarterGui.alrdclaimed.Enabled = false end local function hideGUI() gui.Visible = false end HideGUIEvent.OnClientEvent:Connect(hideGUI) AlreadyClaimedEvent.OnClientEvent:Connect(AlreadyClaimed)