44 lines
774 B
C++
44 lines
774 B
C++
#include "team.h"
|
|
#include "dude.h"
|
|
|
|
Team::Team(const glm::vec3 &spawnColor, const glm::vec3 &dudeColor, BehaviorFunction _behavior):
|
|
m_spawnColor(spawnColor),
|
|
m_dudeColor(dudeColor),
|
|
m_spawnCooldown(1),
|
|
m_foodQuantity(NB_STARTING_FOOD),
|
|
m_dudesReady(0),
|
|
m_behavior(_behavior)
|
|
{
|
|
}
|
|
|
|
bool Team::updateSpawn()
|
|
{
|
|
if(m_foodQuantity > 0)
|
|
{
|
|
--m_spawnCooldown;
|
|
if(!m_spawnCooldown)
|
|
{
|
|
m_spawnCooldown = SPAWN_COOLDOWN;
|
|
--m_foodQuantity;
|
|
++m_dudesReady;
|
|
}
|
|
}
|
|
return m_dudesReady > 0;
|
|
}
|
|
|
|
void Team::popDude()
|
|
{
|
|
--m_dudesReady;
|
|
}
|
|
|
|
void Team::destroySpawn(){
|
|
m_spawnCooldown = 0;
|
|
m_foodQuantity = 0;
|
|
}
|
|
|
|
|
|
void Team::update(Dude *dude)
|
|
{
|
|
dude->update(m_behavior);
|
|
}
|