void CMovable::Bump(CObject* obj) { CDynamic* dyn = dynamic_cast <CDynamic*> (obj); if(dyn != NULL) dyn->setVel(getXVel()*1.4, getYVel()*0.75); CDynamic::Bump(obj); }
void MovableSprite::move() // (int dir) som argument? { // Faktiskt rörelse av spriten i x-led. hitboxens x-position låts påverkas av x-vel hitbox.x += getXVel(); // Hantera väggkollision för alla MovableSprites if ((hitbox.x < 0) || (hitbox.x + hitbox.w > sys.SCREEN_WIDTH)) setXVel(-this->getXVel()); // Samma som ovan fast y-led hitbox.y += getYVel(); if ((hitbox.y < 0) || (hitbox.y + hitbox.h > sys.SCREEN_HEIGHT)) setYVel(-this->getYVel()); }