treballant en sistema de portes i claus

This commit is contained in:
2026-04-10 09:47:48 +02:00
parent 9aff4432df
commit 97c30bf9a1
37 changed files with 1236 additions and 110 deletions

View File

@@ -10,13 +10,14 @@ class AnimatedSprite;
// Punto de paso en la ruta de una plataforma
struct Waypoint {
float x{0.0F}; // Posición en pixels
float x{0.0F}; // Posición en pixels
float y{0.0F};
float wait{0.0F}; // Tiempo de parada en este punto (segundos, 0 = sin parada)
};
// Modo de recorrido de la ruta
enum class LoopMode { PINGPONG, CIRCULAR };
enum class LoopMode { PINGPONG,
CIRCULAR };
// Tipo de función de easing
using EasingFunc = float (*)(float);
@@ -25,11 +26,11 @@ class MovingPlatform {
public:
struct Data {
std::string animation_path;
float speed{30.0F}; // px/s a lo largo del path
float speed{30.0F}; // px/s a lo largo del path
LoopMode loop{LoopMode::PINGPONG};
std::string easing{"linear"}; // Nombre del easing
int frame{0}; // Frame inicial (-1 = random)
std::vector<Waypoint> path; // Mínimo 2 puntos
std::string easing{"linear"}; // Nombre del easing
int frame{0}; // Frame inicial (-1 = random)
std::vector<Waypoint> path; // Mínimo 2 puntos
};
explicit MovingPlatform(const Data& data);