rotation += dt * AngularMomentum() / Inertia();
Cache();
for (creature::Creature *c : Creatures()) {
+ // TODO: this is self modifying, fix it fix it fix it
c->Tick(dt);
}
+ for (auto c = Creatures().begin(); c != Creatures().end();) {
+ if ((*c)->Removable()) {
+ delete *c;
+ c = Creatures().erase(c);
+ } else {
+ ++c;
+ }
+ }
}
void Body::Cache() noexcept {