Okay, this ones driving me a little insane. I’ll have to tell you how my system works so you can truly understand what my problem is.
So in the current state of my game, a player spawns in a lobby, it waits until a round starts. When a round starts, there will be a 5 second countdown. Starting from that countdown, the player can deploy into the map, but said player will be frozen and their weapon will be disabled until the countdown ends.
“Alright, cool! Ill just make a BoolValue that makes it so the weapon doesnt activate when the value is false.” Is what i thought. I made it, and yes, it worked exactly as intended… only without the round system.
With the round system, for some reason, whenever i deploy after the countdown, this error pops up:

For context, Line 54 of “Main” script is an event that fires when the player presses the Deploy button, it fires a function that is stored in a ModuleScript, which is where the error lies. This is what Line 136 says:
char:FindFirstChildOfClass("Tool"):FindFirstChild("Enabled").Value = true
Let me give you a bigger picture:
if stationizeplayer then -- this value is turned on during the countdown and off after
spawn(function()
while stationizeplayer do
char.Humanoid.WalkSpeed = 0
wait()
end
if char:FindFirstChildOfClass("Tool") and char:FindFirstChildOfClass("Tool"):FindFirstChild("Stats") then
local module = require(char:FindFirstChildOfClass("Tool").Stats)
char.Humanoid.WalkSpeed = module.Speed
char:FindFirstChildOfClass("Tool"):FindFirstChild("Enabled").Value = true
end
end)
else
char:FindFirstChildOfClass("Tool"):FindFirstChild("Enabled").Value = true -- the error line, not the one above
end
In the game, all the weapons “Enabled” value is set to false by default, so i have to turn it on everytime a player fairly equips the weapon. I can assure you, every weapon in the folder has this value.
I think ive told everything that’s necessary. Im sorry if my tone was a bit off in this post. Any help will be highly appreciated.
