YouDunIt/modules/you_done_it/clue_finder.h

27 lines
610 B
C++

#pragma once
#include "clue_marker.h"
#include <core/templates/hash_set.h>
#include <scene/3d/node_3d.h>
class ClueFinder : public Node3D {
GDCLASS(ClueFinder, Node3D);
static void _bind_methods();
static ClueFinder *singleton_instance;
void enter_tree();
void exit_tree();
void on_button_pressed(String button);
protected:
void _notification(int what);
public:
static ClueFinder *get_singleton();
ClueMarker *find_current_clue();
void register_clue_marker(ClueMarker *marker);
void remove_clue_marker(ClueMarker *marker);
void take_photo();
private:
HashSet<ClueMarker *> clue_markers{};
};