Randall Kliman / Mbed 2 deprecated NEOPUNK

Dependencies:   mbed wave_player 4DGL-uLCD-SE MMA8452

Revision:
2:06c63d567719
Parent:
0:35660d7952f7
Child:
3:664c79e2ceb5
--- a/map.h	Wed Apr 04 21:11:07 2018 +0000
+++ b/map.h	Fri Nov 30 02:53:05 2018 +0000
@@ -24,21 +24,21 @@
      * game state.
      */
     int type;
-    
+
     /**
      * A function pointer to the drawing function for this item. Used by draw_game.
      */
     DrawFunc draw;
-    
+
     /**
      * If zero, this item should block character motion.
      */
     int walkable;
-    
+
     /**
      * Arbitrary extra data for the MapItem. Could be useful for keeping up with
      * special information, like where a set of stairs should take the player.
-     * 
+     *
      * Iterpretation of this can depend on the type of the MapItem. For example,
      * a WALL probably doesn't need to use this (it can be NULL), where an NPC
      * might use it to store game state (have I given the player the key yet?).
@@ -53,12 +53,22 @@
 
 // MapItem types
 // Define more of these!
-#define WALL    0
-#define PLANT   1
+#define WALL            0
+#define PLANT           1
+#define NPORTAL         2
+#define TERMINAL        3
+#define NPC             4
+#define HACKED_TERMINAL 5
+#define DOOR            6
+#define BOOTS           7
+#define KILL            8
+#define TELEPORT        9
+#define PRINTER         10
+
 
 /**
  * Initializes the internal structures for all maps. This does not populate
- * the map with items, but allocates space for them, initializes the hash tables, 
+ * the map with items, but allocates space for them, initializes the hash tables,
  * and sets the width and height.
  */
 void maps_init();
@@ -151,4 +161,41 @@
  */
 void add_plant(int x, int y);
 
-#endif //MAP_H
\ No newline at end of file
+/**
+ * Add a NETPORTAL item at (x,y). If there is already a MapItem at (x,y), erase it
+ * before adding the plant.
+ */
+void add_netPortal(int x, int y);
+
+/**
+ * Add a TERMINAL item at (x,y). If there is already a MapItem at (x,y), erase it
+ * before adding the plant.
+ */
+void add_terminal(int x, int y);
+
+/**
+ * Add a TERMINAL item at (x,y). If there is already a MapItem at (x,y), erase it
+ * before adding the plant.
+ */
+void add_hacked_terminal(int x, int y);
+
+/**
+ * Add a NPC item at (x,y). If there is already a MapItem at (x,y), erase it
+ * before adding the plant.
+ */
+void add_NPC(int x, int y);
+
+/**
+ * Add a NPC item at (x,y). If there is already a MapItem at (x,y), erase it
+ * before adding the plant.
+ */
+void add_door(int x, int y, bool a);
+
+void add_boots(int x, int y);
+void add_kill(int x, int y);
+void add_orgprint(int x, int y);
+void add_teleport(int x, int y);
+
+unsigned XY_KEY(int X, int Y);
+
+#endif //MAP_H