Hello, i made a script that when player enters the Region3, it increases the mood.Entertainment.Value. But it is actually not increasing it, what's the problem ?

local debounce = false

local touchingplayers = {}
local touching = {}
local topCorner = script.Parent.TopCorner.Position 
local bottomCorner = script.Parent.BottomCorner.Position
local region = Region3.new(bottomCorner, topCorner)

local runservice = game:GetService("RunService")
local players = game:GetService("Players")

local mood

runservice.Stepped:Connect(function(fps)
	touching = workspace:FindPartsInRegion3(region)
	for i, v in pairs(touching) do
		if players:FindFirstChild(v.Parent.Name) then
			touchingplayers[players[v.Parent.Name]] = true
		end
	end
	touchingplayers = {}
end)

local function DrawRegion3(bottom, top) 
	local part = Instance.new("Part", script.Parent)
	part.Name = "Region3Part"
	part.Anchored = true
	part.CanCollide = false
	part.Transparency = 0.5
	part.CFrame = CFrame.new((bottom+top)/2)
	local size = top-bottom
	part.Size = Vector3.new(math.abs(size.X), math.abs(size.Y), math.abs(size.Z))
	return part
end DrawRegion3(bottomCorner, topCorner)

while true do
	wait(0.4)
	for player, inzone in pairs(touchingplayers) do
		mood = game.ReplicatedStorage[player.Name.."'s Mood"]
		mood.Entertainment.Value = math.clamp(mood.Entertainment.Value + 1, 0, 100)
	end
end