// Called every frame void ASpawnVolume::Tick(float DeltaTime) { Super::Tick(DeltaTime); if (bSpawningEnabled) { if (TimeTillRespawn != 0.f) { TimeSpent += DeltaTime; if (TimeSpent >= TimeTillRespawn) { SpawnPickup(); TimeTillRespawn = 0.f; TimeSpent = 0.f; return; } } if (!SpawnedPickup || SpawnedPickup->IsPendingKill()) { GetNewRespawnTime(); } } else { TimeTillStarted -= DeltaTime; if (TimeTillStarted <= 0) bSpawningEnabled = true; } }
void ASpawnVolume::Tick(float DeltaSeconds) { if (m_isSpawningEnable) { m_SpawnTime += DeltaSeconds; bool bShouldSpawn = (m_SpawnTime > m_SpawnDelay); if (bShouldSpawn) { SpawnPickup(); m_SpawnTime -= m_SpawnDelay; m_SpawnDelay = GetRandomSpawnDelay(); } } }
void ASpawnVolume::Tick(float DeltaSeconds) { // If spawning is not enabled, do nothing if (!bSpawningEnabled) return; // Always add delta time to our Spawn Time SpawnTime += DeltaSeconds; bool bShouldSpawn = (SpawnTime > SpawnDelay); if (bShouldSpawn) { SpawnPickup(); // Deduct spawn delay from accumulated time value SpawnTime -= SpawnDelay; SpawnDelay = GetRandomSpawnDelay(); } }