Commit inicial: Configuración del proyecto vibe2_modules
Renombrado de vibe1_delta a vibe2_modules para aprendizaje de modularización. - Actualizado nombre del proyecto en CMakeLists.txt - Cambiado título de ventana a vibe2_modules - Actualizado .gitignore con nuevos nombres de ejecutables y añadido .claude/ - Cambiada ruta de resources a data/ball.png - Añadido README completo explicando propósito y fases del proyecto 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
36
source/external/sprite.cpp
vendored
Normal file
36
source/external/sprite.cpp
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
#include "sprite.h"
|
||||
|
||||
#include "texture.h" // for Texture
|
||||
|
||||
// Constructor
|
||||
Sprite::Sprite(std::shared_ptr<Texture> texture)
|
||||
: texture_(texture),
|
||||
pos_{0.0f, 0.0f, 0.0f, 0.0f},
|
||||
clip_{0.0f, 0.0f, 0.0f, 0.0f} {}
|
||||
|
||||
// Establece la posición del sprite
|
||||
void Sprite::setPos(SDL_FPoint pos) {
|
||||
pos_.x = pos.x;
|
||||
pos_.y = pos.y;
|
||||
}
|
||||
|
||||
// Pinta el sprite
|
||||
void Sprite::render() {
|
||||
texture_->render(&clip_, &pos_);
|
||||
}
|
||||
|
||||
// Establece el rectangulo de la textura que se va a pintar
|
||||
void Sprite::setClip(SDL_FRect clip) {
|
||||
clip_ = clip;
|
||||
}
|
||||
|
||||
// Establece el tamaño del sprite
|
||||
void Sprite::setSize(float w, float h) {
|
||||
pos_.w = w;
|
||||
pos_.h = h;
|
||||
}
|
||||
|
||||
// Modulación de color
|
||||
void Sprite::setColor(int r, int g, int b) {
|
||||
texture_->setColor(r, g, b);
|
||||
}
|
||||
Reference in New Issue
Block a user