Argentum Online - Cliente
inventory.h
1 #ifndef __INVENTORY_H
2 #define __INVENTORY_H
3 
4 #include "../../engine/SDL/sdl_texture.h"
5 #include "../../engine/UI/icon_grid.h"
6 #include "SDL2/SDL.h"
7 #include "SDL2/SDL_ttf.h"
8 #include "item_button_grid.h"
9 #include "item_qty_grid.h"
10 
15 class Inventory {
16  private:
17  int last_clicked_slot;
18  SDL_Renderer* renderer;
19  IconGrid inventory_icons;
20  ItemQtyGrid item_qty_grid;
21  ItemButtonGrid item_button_grid;
22  void _render_slot_outline();
23 
24  public:
36  Inventory(SDL_Rect inventory_area, SDL_Rect viewport, int rows, int cols,
37  TTF_Font* numbers_font, SDL_Renderer* renderer,
38  SocketManager& socket_manager);
39  ~Inventory();
40 
45  void render();
46 
54  void set_item(int slot, SDLTexture* icon, int quantity);
55 
61  void handle_event(SDL_Event& e);
62 
69 };
70 
71 #endif
SocketManager
Definition: socket_manager.h:12
Inventory::get_last_clicked_slot
int get_last_clicked_slot()
Devuelve el ultimo slot del inventario que fue clickeado.
Definition: inventory.cpp:39
IconGrid
Cuadricula de iconos.
Definition: icon_grid.h:13
Inventory::handle_event
void handle_event(SDL_Event &e)
Maneja eventos (clicks) en el inventario.
Definition: inventory.cpp:37
Inventory::render
void render()
Renderiza el inventario.
Definition: inventory.cpp:26
SDLTexture
Objeto de textura de SDL.
Definition: sdl_texture.h:13
Inventory::set_item
void set_item(int slot, SDLTexture *icon, int quantity)
Setea el item en un slot.
Definition: inventory.cpp:32
Inventory
Inventario del jugador.
Definition: inventory.h:15
ItemQtyGrid
Utilizada para renderizar las cantidades de los items en el inventario.
Definition: item_qty_grid.h:15
ItemButtonGrid
Wrapper para todos los botones del inventario.
Definition: item_button_grid.h:13
Inventory::Inventory
Inventory(SDL_Rect inventory_area, SDL_Rect viewport, int rows, int cols, TTF_Font *numbers_font, SDL_Renderer *renderer, SocketManager &socket_manager)
Constructor del objeto inventory.
Definition: inventory.cpp:6