Example #1
0
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());
    }