1 #ifndef ROGUELIKE_COMPONENT_VISION_H_
2 #define ROGUELIKE_COMPONENT_VISION_H_
10 #include <ugdk/math/frame.h>
18 #include <ugdk/math.h>
39 void set_dir(
const ugdk::math::Integer2D& dir) { dir_ = dir; }
40 std::set<ugdk::math::Integer2D>&
visible_tiles() {
return visible_tiles_; }
46 void update_octants(
int start);
49 std::set<int> relevant_octants_;
50 std::set<ugdk::math::Integer2D> visible_tiles_;
55 std::set<alg::los::Eye*> eyes_;
60 ugdk::math::Integer2D dir_;
66 #endif // ROGUELIKE_COMPONENT_VISION_H_
Definition: gameobject.h:53
Definition: equationallinedouble.h:22
virtual ~Vision()
Definition: vision.cc:53
const base::GameObject * owner() const
Definition: vision.h:33
std::set< ugdk::math::Integer2D > & visible_tiles()
Definition: vision.h:40
void set_dir(const ugdk::math::Integer2D &dir)
Definition: vision.h:39
Vision(game::base::GameObject *owner)
Definition: vision.cc:33
Definition: componentbase.h:19
game::base::GameObject * owner_
Definition: componentbase.h:25
BumpType
Definition: los.h:25
Definition: gamecontroller.h:23
Definition: processor.h:27
void visible_tile_action(const ugdk::math::Integer2D &tile, const alg::EquationalLineDouble &upper, const alg::EquationalLineDouble &lower, alg::los::enums::bump::BumpType bump)
Definition: vision.cc:111
const std::set< int > & relevant_octants() const
Definition: vision.h:34
void See()
Definition: vision.cc:57
void ClearVisibleTiles()
Definition: vision.h:37