23#ifndef M4_BURGER_GUI_INVENTORY_H
24#define M4_BURGER_GUI_INVENTORY_H
26#include "m4/gui/gui_cheapo.h"
32using namespace M4::GUI;
34constexpr int16 INVENTORY_CELLS_COUNT = 128;
35constexpr int16 ARROW_WIDTH = 8;
36constexpr int16 MAX_INVENTORY = 9;
38constexpr int16 LEFT_ARROW_TAG = 128;
39constexpr int16 RIGHT_ARROW_TAG = 129;
41constexpr int16 LEFT_ARROW_TAG_DORMANT = 130;
42constexpr int16 RIGHT_ARROW_TAG_DORMANT = 134;
43constexpr int16 LEFT_ARROW_TAG_ROLL = 131;
44constexpr int16 RIGHT_ARROW_TAG_ROLL = 135;
45constexpr int16 LEFT_ARROW_TAG_DOWN = 132;
46constexpr int16 RIGHT_ARROW_TAG_DOWN = 136;
47constexpr int16 LEFT_ARROW_TAG_NONFUNC = 133;
48constexpr int16 RIGHT_ARROW_TAG_NONFUNC = 137;
61 bool _right_arrow_visible =
false;
63 int16 cell_pos_x(int16 index);
64 int16 cell_pos_y(int16 index);
65 int16 interface_tracking = -1;
69 int16 _cells_h = 0, _cells_v = 0;
70 int16 _cell_w = 0, _cell_h = 0;
71 int16 _must_redraw1 = 0, _must_redraw2 = 0;
73 bool _must_redraw_all =
false;
75 Entry _items[INVENTORY_CELLS_COUNT];
78 Inventory(
const RectClass &r, int32 sprite, int16 cells_h, int16 cells_v, int16 cell_w, int16 cell_h, int16 tag);
81 void draw(
GrBuff *interface_buffer);
83 int16 inside(int16 x, int16 y)
const override;
84 ControlStatus track(int32 eventType, int16 x, int16 y);
88 void highlight_part(int16 index);
90 bool need_left()
const;
91 bool need_right()
const;
92 void set_scroll(int32 new_scroll);
Definition: inventory.h:50
Definition: gui_cheapo.h:46
Definition: database.h:28