void KrecikApp::update() { Time elapsed = Game::update(); updateCar(elapsed); // usuń zaznaczone ciała while(!marks.empty()) { destroyBody(marks.front()); marks.pop(); } for(auto it = toDraw.begin(); it != toDraw.end();) { if(it->second <= Time::Zero) { delete it->first; it = toDraw.erase(it); } else { it->second -= elapsed; it++; } } }
QVariant PhysicalItem::itemChange(GraphicsItemChange change, const QVariant & value) { if (change == QGraphicsItem::ItemSceneChange) destroyBody(); if (change == QGraphicsItem::ItemSceneHasChanged and scene() != nullptr) createBody(); return QGraphicsItem::itemChange(change, value); }
//------------------------------------------------------------------------------- OneWay::~OneWay() { //Python destroy event. NGF_PY_CALL_EVENT(destroy); //We only clear up stuff that we did. destroyBody(); delete mShape; mNode->detachAllObjects(); GlbVar.ogreSmgr->destroyEntity(mEntity->getName()); }
//------------------------------------------------------------------------------- Crate::~Crate() { //Python destroy event. NGF_PY_CALL_EVENT(destroy); GlbVar.soundMgr->destroySound(mSound); //We only clear up stuff that we did. GlbVar.phyWorld->removeConstraint(mConstraint); delete mConstraint; GlbVar.phyWorld->removeRigidBody(mFixedBody); delete mFixedBody; destroyBody(); delete mShape; mNode->detachAllObjects(); GlbVar.ogreSmgr->destroyEntity(mEntity->getName()); }
void SpriteBody::update(float dt) { if(isDelete){ destroyBody(*Engine::world); removeFromList(Engine::bodylist); removeFromList(Engine::effectslist); return; } m_animation.getSprite().setRotation( default_rotation + 180.f*m_body->GetAngle()/(M_PI) ); m_animation.getSprite().setPosition( m_body->GetPosition().x*pixelsPerMeter, m_body->GetPosition().y*pixelsPerMeter); m_animation.update(dt); //m_sprite.setRotation( 180.f*m_body->GetAngle()/(M_PI) ); //m_sprite.setPosition( m_body->GetPosition().x*pixelsPerMeter, m_body->GetPosition().y*pixelsPerMeter); }
iPhysics::~iPhysics() { stop(); if (!_bodys.empty()) { con_err("possible mem leak! not all physic bodys released"); auto iter = _bodys.begin(); while (iter != _bodys.end()) { destroyBody((*iter).second); iter++; } _bodys.clear(); } if (!_collisions.empty()) { con_err("possible mem leak! not all physic collisions released"); auto iter = _collisions.begin(); while (iter != _collisions.end()) { destroyCollision((*iter).second); iter++; } _collisions.clear(); } // todo clear joints vector<uint64> worldsToDelete; for (auto world : _worlds) { worldsToDelete.push_back(world.first); } for (auto worldID : worldsToDelete) { destroyWorld(worldID); } }
StaticLight::~StaticLight() { destroyBody(); }
Entity::~Entity() { destroyBody(); }
// Destroi um objeto Projectile void destroyProjectile (Projectile *projectile) { if (projectile == NULL) return; destroyBody (projectile->body); free (projectile); }
void iPhysics::destroyBody(uint64 bodyID) { destroyBody(getBody(bodyID)); }
Ball::~Ball() { destroyBody(); }