+
+}
+void effect::handleInput()
+{
+ if(cfg::mouseWellFollow())
+ pMouseWell->setPosition(input::mousePosition());
+
+ if(cfg::mouseWellOn())
+ active_Effects.insert(pMouseWell);
+ if(cfg::mouseWellOff())
+ active_Effects.erase(pMouseWell);
+}
+
+Vector2 effect::positionDelta(const PhysicsEntity* ppe, float fTimeStep)
+{
+ Vector2 acc(0,0);
+
+ for( setEffect::iterator it = active_Effects.begin();
+ it != active_Effects.end();
+ it++ )
+ {
+ acc += (*it)->positionDelta(ppe, fTimeStep);
+ }
+
+ return acc;
+}
+Vector2 effect::velocityDelta(const PhysicsEntity* ppe, float fTimeStep)
+{
+ Vector2 acc(0,0);
+
+ for( setEffect::iterator it = active_Effects.begin();
+ it != active_Effects.end();
+ it++ )
+ {
+ acc += (*it)->velocityDelta(ppe, fTimeStep);
+ }
+
+ return acc;
+}
+Vector2 effect::forceDelta(const PhysicsEntity* ppe, float fTimeStep)
+{
+ Vector2 acc(0,0);
+
+ for( setEffect::iterator it = active_Effects.begin();
+ it != active_Effects.end();
+ it++ )
+ {
+ acc += (*it)->forceDelta(ppe, fTimeStep);
+ }
+
+ return acc;