-
What do you want to achieve? Keep it simple and clear!
I want my round script to fully work since it breaks on wave 3. -
What is the issue? Include screenshots / videos if possible!
My round script works until it gets to wave 3. I get an error stating “ServerScriptService.RoundMainScript:66: attempt to index boolean with ‘Value’”. I can’t figure out why it’s throwing this error. -
What solutions have you tried so far? Did you look for solutions on the Developer Hub?
I searched the error on the DevFourm and I found one relevant post. I tried the solution in that post but it didn’t work either. I’m stumped as to why it only breaks on round 3 and not the other rounds.
Below is my code. I know it’s a jumbled mess, I’m a noob scripter. Any pointers on how to fix or improve my code would be awesome!
local Status = game:GetService("ReplicatedStorage").Status
local wave = game:GetService("ReplicatedStorage").Wave
local spawnrate = game:GetService("ReplicatedStorage").SpawnRate
local spawning = game:GetService("ReplicatedStorage").Spawning
local speedyspawning = game:GetService("ReplicatedStorage").SpeedySpawning
local speedyspawnrate = game:GetService("ReplicatedStorage").SpeedySpawnRate
local brutespawning = game:GetService("ReplicatedStorage").BruteSpawning
local brutespwanrate = game:GetService("ReplicatedStorage").BruteSpawnRate
while true do
task.wait(1)
for i = 15, 0, -1 do
Status.Value = "Game starting in: "..i
task.wait(1)
end
if wave.Value ~= 1 then
brutespawning.Value = false
speedyspawning.Value = false
spawning.Value = false
wave.Value = 1
Status.Value = "Wave 1 beginning soon..."
task.wait(5)
script.LobbyMusic:Stop()
end
if wave.Value == 1 then
brutespawning.Value = false
speedyspawning.Value = false
spawning.Value = false
spawnrate.Value = 24
Status.Value = "Wave 1"
task.wait(5)
spawning.Value = true
task.wait(60)
end
if wave.Value ~= 2 then
brutespawning.Value = false
speedyspawning.Value = false
spawning.Value = false
wave.Value = 2
Status.Value = "Wave 2 beginning soon..."
task.wait(5)
end
if wave.Value == 2 then
brutespawning.Value = false
speedyspawning.Value = false
speedyspawnrate.Value = 29
spawning.Value = false
spawnrate.Value = 19
Status.Value = "Wave 2"
task.wait(5)
speedyspawning.Value = true
spawning.Value = true
task.wait(60)
end
if wave.Value ~= 3 then
brutespawning = false
speedyspawning = false
spawning.Value = false
wave.Value = 3
Status.Value = "Wave 3 beginning soon..."
task.wait(5)
end
if wave.Value == 3 then
brutespawning.Value = false
speedyspawning.Value = false
speedyspawnrate.Value = 24
spawning.Value = false
spawnrate.Value = 14
Status.Value = "Wave 3"
task.wait(5)
speedyspawning.Value = true
spawning.Value = true
task.wait(60)
end
if wave.Value ~= 4 then
brutespawning = false
speedyspawning = false
spawning.Value = false
wave.Value = 4
Status.Value = "Wave 4 beginning soon..."
task.wait(5)
end
if wave.Value == 4 then
brutespawning.Value = false
speedyspawning.Value = false
speedyspawnrate.Value = 19
spawning.Value = false
spawnrate.Value = 10
Status.Value = "Wave 4"
task.wait(5)
speedyspawning.Value = true
spawning.Value = true
task.wait(60)
end
if wave.Value ~= 5 then
brutespawning = false
speedyspawning = false
spawning.Value = false
wave.Value = 5
Status.Value = "Wave 5 beginning soon..."
task.wait(5)
end
if wave.Value == 5 then
brutespawning.Value = false
brutespawning.Value = 29
speedyspawning.Value = false
speedyspawnrate.Value = 19
spawning.Value = false
spawnrate.Value = 10
Status.Value = "Wave 5"
task.wait(5)
brutespawning.Value = true
speedyspawning.Value = true
spawning.Value = true
task.wait(60)
end
end