home · contact · privacy
Add auto-mapping / map memory.
[plomrogue] / src / server / field_of_view.h
index eb117ae4f7cbacbdb408dd198faead5ef7924931..9060f1dcb7b849d01196fed23f04be4b9fed681e 100644 (file)
@@ -1,6 +1,6 @@
 /* src/server/field_of_view.h
  *
- * Generate view of map as visible to player.
+ * Generate field of view maps.
  */
 
 
@@ -8,12 +8,19 @@
 #ifndef FIELD_OF_VIEW_H
 #define FIELD_OF_VIEW_H
 
+#include <stdint.h> /* uint8_t */
+struct Thing;
 
 
-/* Return map cells sequence as visible to the player, with invisible cells as
- * whitespace. Super-impose over visible map cells map objects positioned there.
- */
-extern char * build_visible_map();
+
+/* States that cells in the field of view map may be in. */
+enum fov_cell_states {
+    HIDDEN = 0x00,
+    VISIBLE = 0x01
+};
+
+/* Build "t"'s field of view and update its map memory with the result. */
+extern void build_fov_map(struct Thing * t);