summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/tilereg-mon.cc
diff options
context:
space:
mode:
authorEnne Walker <enne.walker@gmail.com>2010-05-26 21:38:29 -0400
committerEnne Walker <enne.walker@gmail.com>2010-05-26 23:15:26 -0400
commit5babdf18d2468fc2f42fb1545af673b636f611e8 (patch)
treebcc63bbb36d6e094f3f0c3686ca469578af671f1 /crawl-ref/source/tilereg-mon.cc
parentbeafec8f2f22f33b134197073a56b66f775be862 (diff)
downloadcrawl-ref-5babdf18d2468fc2f42fb1545af673b636f611e8.tar.gz
crawl-ref-5babdf18d2468fc2f42fb1545af673b636f611e8.zip
Add monster list for tiles.
This is currently implemented as an additional tab. Possibly improvements might be to always display it on screen if there's room or to simply pop to the tab when new monsters appear.
Diffstat (limited to 'crawl-ref/source/tilereg-mon.cc')
-rw-r--r--crawl-ref/source/tilereg-mon.cc44
1 files changed, 44 insertions, 0 deletions
diff --git a/crawl-ref/source/tilereg-mon.cc b/crawl-ref/source/tilereg-mon.cc
new file mode 100644
index 0000000000..4badaa0ee3
--- /dev/null
+++ b/crawl-ref/source/tilereg-mon.cc
@@ -0,0 +1,44 @@
+/*
+ * File: tilereg-mon.cc
+ */
+
+#include "AppHdr.h"
+
+#ifdef USE_TILE
+
+#include "tilereg-mon.h"
+
+MonsterRegion::MonsterRegion(const TileRegionInit &init) : ActorRegion(init)
+{
+}
+
+void MonsterRegion::update()
+{
+ m_items.clear();
+ m_mon_info.clear();
+ m_dirty = true;
+
+ const size_t max_mons = mx * my;
+
+ if (max_mons == 0)
+ return;
+
+ get_monster_info(m_mon_info);
+ std::sort(m_mon_info.begin(), m_mon_info.end(),
+ monster_info::less_than_wrapper);
+
+ unsigned int num_mons = std::min(max_mons, m_mon_info.size());
+ for (size_t i = 0; i < num_mons; ++i)
+ {
+ InventoryTile desc;
+ desc.idx = i;
+
+ m_items.push_back(desc);
+ }
+}
+
+void MonsterRegion::activate()
+{
+}
+
+#endif