Esempio n. 1
0
frts::ComponentPtr frts::DropBuilder::build(const EntityPtr& entity, const SharedManagerPtr& shared, const ConfigNodePtr& node)
{
    assert(entity != nullptr);
    assert(shared != nullptr);
    assert(node != nullptr);

    auto component = std::static_pointer_cast<Drop>(build(entity, shared));
    for (auto& drop : node->getStrings("drops"))
    {
        auto id = shared->makeId(drop);
        component->addDrop(id);
    }
    return component;
}
Esempio n. 2
0
void F_CALLBACKAPI instrumentCallback(FMUSIC_MODULE *mod, unsigned char param) {
	int row = instrumentOffsets[param];
	float *fft = FSOUND_DSP_GetSpectrum();
	
	int top = -1;
	float val = 0.0;
	
	for(int i = 0; i < 256; ++i) {
		if(fft[i] > val) {
			top = i;
			val = fft[i];
		}
	}
	
	if(top != -1)
		addDrop(row + top, val);
}
Esempio n. 3
0
void WaterBall::addRandomDrop() {
  float s = 20;
  addDrop(vec2(rx_random(position.x - s, position.x + s), 
               rx_random(position.y - s, position.y + s)), 
               rx_random(min_drop_mass, max_drop_mass));
}