balloon: readability-function-cognitive-complexity
balloon: eliminat l'efecte de rebot per als globos mes xicotets moving_sprite: canviats variables i metodes zoomW a horizontal_zoom i zoomH a vertical_zoom
This commit is contained in:
@@ -1,10 +1,11 @@
|
||||
#pragma once
|
||||
|
||||
#include <SDL3/SDL.h> // Para Uint8, Uint16, SDL_FRect, Uint32
|
||||
#include <array> // Para array
|
||||
#include <memory> // Para allocator, shared_ptr, unique_ptr
|
||||
#include <string> // Para basic_string, string
|
||||
#include <vector> // Para vector
|
||||
#include <SDL3/SDL.h> // Para Uint8, Uint16, SDL_FRect, Uint32
|
||||
|
||||
#include <array> // Para array
|
||||
#include <memory> // Para allocator, shared_ptr, unique_ptr
|
||||
#include <string> // Para basic_string, string
|
||||
#include <vector> // Para vector
|
||||
|
||||
#include "animated_sprite.h" // Para AnimatedSprite
|
||||
#include "utils.h" // Para Circle
|
||||
@@ -129,7 +130,7 @@ class Balloon {
|
||||
desp_x = 0.0F;
|
||||
desp_y = 0.0F;
|
||||
}
|
||||
} bouncing_;
|
||||
} bounce_effect_;
|
||||
|
||||
// --- Objetos y punteros ---
|
||||
std::unique_ptr<AnimatedSprite> sprite_; // Sprite del objeto globo
|
||||
@@ -167,14 +168,33 @@ class Balloon {
|
||||
bool poping_sound_enabled_ = true; // Si debe sonar el globo al explotar
|
||||
bool sound_enabled_ = true; // Indica si los globos deben hacer algun sonido
|
||||
|
||||
// --- Métodos internos ---
|
||||
void shiftColliders(); // Alinea el círculo de colisión
|
||||
void shiftSprite(); // Alinea el sprite
|
||||
void zoomSprite(); // Establece el nivel de zoom del sprite
|
||||
void enableBounce(); // Activa el efecto de rebote
|
||||
void disableBounce(); // Detiene el efecto de rebote
|
||||
void updateBounce(); // Aplica el efecto de rebote
|
||||
void updateState(); // Actualiza los estados del globo
|
||||
// --- Posicionamiento y transformación ---
|
||||
void shiftColliders(); // Alinea el círculo de colisión con el sprite
|
||||
void shiftSprite(); // Alinea el sprite en pantalla
|
||||
void applyBounceEffect(); // Aplica la deformación visual causada por el efecto de rebote
|
||||
|
||||
// --- Animación y sonido ---
|
||||
void setAnimation(); // Establece la animación correspondiente
|
||||
void playSound(const std::string &name) const; // Reproduce sonido
|
||||
void playSound(const std::string &name) const; // Reproduce un sonido por nombre
|
||||
void playBouncingSound(); // Reproduce el sonido de rebote
|
||||
|
||||
// --- Movimiento y física ---
|
||||
void handleHorizontalMovement(); // Maneja el movimiento horizontal
|
||||
void handleVerticalMovement(); // Maneja el movimiento vertical
|
||||
void applyGravity(); // Aplica la gravedad al objeto
|
||||
|
||||
// --- Rebote ---
|
||||
void enableBounceEffect(); // Activa el efecto de rebote
|
||||
void disableBounceEffect(); // Detiene el efecto de rebote
|
||||
void updateBounceEffect(); // Actualiza el estado del rebote
|
||||
void handleHorizontalBounce(float minX, float maxX); // Maneja el rebote horizontal dentro de límites
|
||||
|
||||
// --- Colisiones ---
|
||||
bool isOutOfHorizontalBounds(float minX, float maxX) const; // Verifica si está fuera de los límites horizontales
|
||||
bool shouldCheckTopCollision() const; // Determina si debe comprobarse la colisión superior
|
||||
void handleTopCollision(); // Maneja la colisión superior
|
||||
void handleBottomCollision(); // Maneja la colisión inferior
|
||||
|
||||
// --- Lógica de estado ---
|
||||
void updateState(); // Actualiza los estados del globo
|
||||
};
|
||||
Reference in New Issue
Block a user