moving_sprite.cpp: afegits nous metodes per controlar la rotació
This commit is contained in:
@@ -90,6 +90,19 @@ void MovingSprite::setRotate(bool enable) {
|
|||||||
rotate_.enabled = enable;
|
rotate_.enabled = enable;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Habilita la rotación y establece el centro en el centro del sprite
|
||||||
|
void MovingSprite::startRotate() {
|
||||||
|
rotate_.enabled = true;
|
||||||
|
rotate_.center.x = pos_.w / 2.0F;
|
||||||
|
rotate_.center.y = pos_.h / 2.0F;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Detiene la rotación y resetea el ángulo a cero
|
||||||
|
void MovingSprite::stopRotate() {
|
||||||
|
rotate_.enabled = false;
|
||||||
|
rotate_.angle = 0.0;
|
||||||
|
}
|
||||||
|
|
||||||
// Establece la posición y_ el tamaño del objeto
|
// Establece la posición y_ el tamaño del objeto
|
||||||
void MovingSprite::setPos(SDL_FRect rect) {
|
void MovingSprite::setPos(SDL_FRect rect) {
|
||||||
x_ = rect.x;
|
x_ = rect.x;
|
||||||
|
|||||||
@@ -46,6 +46,8 @@ class MovingSprite : public Sprite {
|
|||||||
void setAngle(double value) { rotate_.angle = value; } // Establece el ángulo
|
void setAngle(double value) { rotate_.angle = value; } // Establece el ángulo
|
||||||
void setRotatingCenter(SDL_FPoint point) { rotate_.center = point; } // Establece el centro de rotación
|
void setRotatingCenter(SDL_FPoint point) { rotate_.center = point; } // Establece el centro de rotación
|
||||||
void setRotate(bool enable); // Activa o desactiva el efecto de rotación
|
void setRotate(bool enable); // Activa o desactiva el efecto de rotación
|
||||||
|
void startRotate(); // Habilita la rotación con centro automático
|
||||||
|
void stopRotate(); // Detiene la rotación y resetea ángulo
|
||||||
void setRotateAmount(double value) { rotate_.amount = value; } // Establece la cantidad de rotación
|
void setRotateAmount(double value) { rotate_.amount = value; } // Establece la cantidad de rotación
|
||||||
void switchRotate() { rotate_.amount *= -1; } // Cambia el sentido de la rotación
|
void switchRotate() { rotate_.amount *= -1; } // Cambia el sentido de la rotación
|
||||||
void setFlip(SDL_FlipMode flip) { flip_ = flip; } // Establece el flip
|
void setFlip(SDL_FlipMode flip) { flip_ = flip; } // Establece el flip
|
||||||
|
|||||||
Reference in New Issue
Block a user