void BurningRuins::applyService(ServiceWalkerPtr walker) { if ( S_PREFECT == walker->getService() ) { _fireLevel = math::clamp<float>( _fireLevel - walker->getServiceValue(), 0.f, 100.f ); } }
void BurningRuins::applyService(ServiceWalkerPtr walker) { if ( Service::prefect == walker->getService() ) { double newValue = math::clamp<float>( getState( Construction::fire ) - walker->getServiceValue(), 0.f, 100.f ); updateState( Construction::fire, newValue, false ); } }