animació completada
This commit is contained in:
@@ -1,15 +1,16 @@
|
||||
#pragma once
|
||||
|
||||
#include <SDL3/SDL_rect.h> // for SDL_Rect, SDL_FRect
|
||||
#include <SDL3/SDL_render.h> // for SDL_Renderer, SDL_Texture
|
||||
#include <SDL3/SDL_stdinc.h> // for Uint8, Uint16, Uint32
|
||||
#include <SDL3/SDL_surface.h> // for SDL_FlipMode
|
||||
#include <array> // for array
|
||||
#include <memory> // for default_delete, shared_ptr, __shared_p...
|
||||
#include <numeric> // for iota
|
||||
#include <stdexcept> // for invalid_argument
|
||||
#include <string> // for string
|
||||
#include <utility> // for move
|
||||
#include <SDL3/SDL_rect.h> // for SDL_Rect, SDL_FRect
|
||||
#include <SDL3/SDL_render.h> // for SDL_Renderer, SDL_Texture
|
||||
#include <SDL3/SDL_stdinc.h> // for Uint8, Uint16, Uint32
|
||||
#include <SDL3/SDL_surface.h> // for SDL_FlipMode
|
||||
#include <array> // for array
|
||||
#include <memory> // for default_delete, shared_ptr, __shared_p...
|
||||
#include <numeric> // for iota
|
||||
#include <stdexcept> // for invalid_argument
|
||||
#include <string> // for string
|
||||
#include <utility> // for move
|
||||
#include <algorithm>
|
||||
|
||||
// Alias
|
||||
using Palette = std::array<Uint32, 256>;
|
||||
@@ -110,6 +111,9 @@ public:
|
||||
void loadPalette(const std::string &file_path);
|
||||
void loadPalette(Palette palette);
|
||||
|
||||
// Obtiene la paleta
|
||||
Palette &getPalette() { return palette_; }
|
||||
|
||||
// Copia una región de la SurfaceData de origen a la SurfaceData de destino
|
||||
void render(int dx, int dy, int sx, int sy, int w, int h);
|
||||
void render(int x, int y, SDL_Rect *clip = nullptr, SDL_FlipMode flip = SDL_FLIP_NONE);
|
||||
@@ -118,9 +122,6 @@ public:
|
||||
// Copia una región de la SurfaceData de origen a la SurfaceData de destino reemplazando un color por otro
|
||||
void renderWithColorReplace(int x, int y, Uint8 source_color = 0, Uint8 target_color = 0, SDL_Rect *srcRect = nullptr, SDL_FlipMode flip = SDL_FLIP_NONE);
|
||||
|
||||
// Establece un color en la paleta
|
||||
void setColor(int index, Uint32 color);
|
||||
|
||||
// Rellena la SurfaceData con un color
|
||||
void clear(Uint8 color);
|
||||
|
||||
@@ -159,6 +160,9 @@ public:
|
||||
Uint8 getTransparentColor() const { return transparent_color_; }
|
||||
void setTransparentColor(Uint8 color = 255) { transparent_color_ = color; }
|
||||
|
||||
// Establece un color en la paleta
|
||||
void setColor(int color, Uint32 value) { palette_.at(std::clamp(color, 0, 255)) = value; }
|
||||
|
||||
// Paleta
|
||||
void setPalette(const std::array<Uint32, 256> &palette) { palette_ = palette; }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user