feat(editor): franja HUD amb mode, brush/sel, cursor i recompte de constraints
This commit is contained in:
1 parent
10e16d7905
commit
2a78c78e77
2 files changed
+94
No files matched your search
@@ -10,6 +10,7 @@
|
||||
class Entity;
|
||||
class EntityManager;
|
||||
class Surface;
|
||||
class Text;
|
||||
class Tilemap;
|
||||
|
||||
// Mode editor modal del GameScene. Només disponible en Debug — en Release
|
||||
@@ -117,6 +118,13 @@ class Editor {
|
||||
// Render del marc d'una entitat: 1 px sobre el seu pixel_rect.
|
||||
static void renderEntityFrame(const Entity& e, std::uint32_t argb);
|
||||
|
||||
// HUD d'edició: franja superior amb mode, brush, cursor i comptadors
|
||||
// de constraints. Substitueix el HUD del joc mentre l'editor és actiu.
|
||||
void renderEditorHud(const EntityManager& entities) const;
|
||||
|
||||
// Carrega la font 8bithud del cache. Lazy: al primer enter().
|
||||
void ensureHudFont();
|
||||
|
||||
void renderTilePicker(const Tilemap& tilemap) const;
|
||||
void renderEntityPicker(const Tilemap& tilemap) const;
|
||||
|
||||
@@ -159,6 +167,11 @@ class Editor {
|
||||
|
||||
std::vector<EditableEntity> editable_entities_;
|
||||
|
||||
// Font compartida amb el Notifier/HUD: el surface el carrega Director
|
||||
// a l'arrencada, ací només prenem la referència del cache. shared_ptr
|
||||
// perquè `Text` accepta el surface per shared_ptr i així no copiem.
|
||||
std::shared_ptr<Text> hud_font_;
|
||||
|
||||
// Selecció en Mode::HAND. Treballem amb índexs sobre el snapshot de
|
||||
// `EntityManager::getEntities()` perquè és el que ens dóna l'API
|
||||
// pública. Després de cada mutació (move/delete) ho recalculem; com
|
||||
|
||||
Reference in new issue
Block a user