hello, i'm trying to create a shop where you enter the region3 then a gui pops up and when you leave the region3 it tweens back to its original position. Well, I did exactly that however i'm having issues detecting if the player left the region3.

And no, putting if not player then doesnt work.

runservice.RenderStepped:connect(function()
	
	local Parts = workspace:FindPartsInRegion3WithWhiteList(region1,whiteList,math.huge)	
	
	for _,parts in ipairs(Parts) do
		local player = game.Players:GetPlayerFromCharacter(parts.Parent)
		wait(waittime)
		if (player) then
			if upgrade1 == false then
				upgrade1 = true
				local plrGui = game.Players.LocalPlayer:WaitForChild("PlayerGui").HUD
				
				local currency = plrGui.Currency
				local currencybkg = plrGui.Aesthetic.Border_Currency
				local energy = plrGui.Energy
				local energybkg = plrGui.Aesthetic.Border_ENERGY
				local inventory = plrGui.Inventory
				local inventorybkg = plrGui.Aesthetic.Border_Inventory
				local progress = plrGui.Progress
				local progressbkg = plrGui.Aesthetic.Border_Progress
				local stamina = plrGui.STAMINA
				local staminabkg = plrGui.Aesthetic.Border_STAMINA
				local shop = plrGui.Shop
				local shopbkg = plrGui.Aesthetic.Border_Shop
				local keybind = plrGui.KEYBIND
				
				currency:TweenPosition(UDim2.new(-0.06,0,0.45,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				currencybkg:TweenPosition(UDim2.new(-0.06,0,0.45,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				energy:TweenPosition(UDim2.new(0.64,0,1.1,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				energybkg:TweenPosition(UDim2.new(0.64,0,1.1,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				inventory:TweenPosition(UDim2.new(-0.035,0,0.52,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				inventorybkg:TweenPosition(UDim2.new(-0.035,0,0.52,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				progress:TweenPosition(UDim2.new(0.5,0,1.1,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				progressbkg:TweenPosition(UDim2.new(0.5,0,1.1,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				stamina:TweenPosition(UDim2.new(0.36,0,1.1,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				staminabkg:TweenPosition(UDim2.new(0.36,0,1.1,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				shop:TweenPosition(UDim2.new(-0.081,0,0.52,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				shopbkg:TweenPosition(UDim2.new(-0.081,0,0.52,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				keybind:TweenPosition(UDim2.new(0.5,0,1.1,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.1,true)
				
				startblur()
				
				upgrade:TweenPosition(UDim2.new(0.5,0,0.5,0),Enum.EasingDirection.In,Enum.EasingStyle.Quint,.25,true)
			end		
		elseif not player then
			print("No player.")	-- When I enter the region3 it prints this.
		end
	end
end)

2 comments

0

Honestly out of ideas of what to do.

0

It will print line 46 because you iterate through every part inside the region. Not every part's parent is the player's character.