00001 #ifndef OBSTACULO_H 00002 #define OBSTACULO_H 00003 00004 #include <Gosu/Gosu.hpp> 00005 00011 00012 using namespace std; 00013 00014 class Obstaculo 00015 { 00016 public: 00019 Obstaculo(Gosu::Graphics& graphics, int posX, int posY, int width, int height); 00021 virtual ~Obstaculo(); 00024 int posX(); 00027 int posY(); 00030 int width(); 00033 int height(); 00034 void draw(int x, int y, int z = 1); 00035 private: 00036 int posX_,posY_,width_,height_; 00037 protected: 00038 Gosu::Image *img_; 00039 }; 00040 00046 class Basura : virtual public Obstaculo 00047 { 00048 public: 00051 Basura(Gosu::Graphics& graphics, int posX, int posY); 00052 }; 00053 00059 class Caja : virtual public Obstaculo 00060 { 00061 public: 00064 Caja(Gosu::Graphics& graphics, int posX, int posY); 00065 }; 00066 00067 class Arbol : virtual public Obstaculo 00068 { 00069 public: 00072 Arbol(Gosu::Graphics& graphics, int posX, int posY); 00073 }; 00074 00075 class Banco : virtual public Obstaculo 00076 { 00077 public: 00080 Banco(Gosu::Graphics& graphics, int posX, int posY); 00081 }; 00082 00083 class Farola : virtual public Obstaculo 00084 { 00085 public: 00088 Farola(Gosu::Graphics& graphics, int posX, int posY); 00089 }; 00090 00092 class Encimera : virtual public Obstaculo 00093 { 00094 public: 00097 Encimera(Gosu::Graphics& graphics, int posX, int posY); 00098 }; 00099 00101 class Taburete : virtual public Obstaculo 00102 { 00103 public: 00106 Taburete(Gosu::Graphics& graphics, int posX, int posY); 00107 }; 00108 00110 class Mesa : virtual public Obstaculo 00111 { 00112 public: 00115 Mesa(Gosu::Graphics& graphics, int posX, int posY); 00116 }; 00117 00119 class Estanteria : virtual public Obstaculo 00120 { 00121 public: 00124 Estanteria(Gosu::Graphics& graphics, int posX, int posY); 00125 }; 00126 00128 class Sofa : virtual public Obstaculo 00129 { 00130 public: 00133 Sofa(Gosu::Graphics& graphics, int posX, int posY); 00134 }; 00135 00137 class Lampara : virtual public Obstaculo 00138 { 00139 public: 00142 Lampara(Gosu::Graphics& graphics, int posX, int posY); 00143 }; 00144 00145 #endif 00146