#ifndef AREA
#define AREA 1
#include "MadUtility.h"
//=======================Area==========================================
//definisce un'area all'interno di una mappa
//=====================================================================
class Area
{   
public:
    //=====================================================
    //Coordinata che definisce la posizione 
    //dell'area più vicina alla posizione (0,0) della Mappa
    //=====================================================
    coord first;
    //=====================================================
    //Coordinata che definisce la posizione 
    //dell'area più distante alla posizione (0,0) 
    //=====================================================
    coord last;
private:
    //===================
    //id della texture
    //===================
    GLuint ti;

//  GLuint ti[MAXMAP];
    int numti;
    //===================
    //id del tipo di area
    //===================
    int type;

public:
//========================
//Costruttore Oggetto Area
//========================
    Area(void);

//========================
//Distruttore Oggetto Area
//========================
    ~Area(void);

//=========================InitTexture==================================
//InitTexture: Inizializza le texture che sono utilizzate nell'Area <br>
//associa all'Area due texture:                                     <br>
//la prima texture  se l'Area è non selezionata e                   <br>

//                                                                  <br>
//Parametri                                                         <br>
//texfile: stringa che contiene il nome del file della texture      <br> 
//  dell'area                                       
//======================================================================
void InitTexture(char *texfile);

void InitTexture(const char *texture[],int n);
//========================setTexture====================================
//Permette di scegliere quale delle texture sarà utilizzata         <br>
//per il disegno dell'area.                                         <br>
//                                                                  <br>
//Parametri.                                                        <br>
//ch:  true si abilità la scelta , false si disabilità              <br>
//col: true viene scelta la 2a texture, false la 1a                 <br>
//======================================================================
void setTexture(bool ch,bool sel);

//========================set===========================================
//definisce le coordinate della mappa.                              <br>
//                                                                  <br>
//Parametri:                                                        <br>
//f: coordinate della prima tile dell'area nella mappa              <br>
//l: coordinate dell'ultima tile dell'area nella mappa              <br>
//======================================================================
void set(coord f, coord l);

//=======================isArea=========================================
//verifica se una certa coordinata(x,z) appartiene all'area.        <br>
//                                                                  <br>
//Valore restituito:                                                <br>
//true appartiene all'area                                          <br>
//false non appartiene all'area                                     <br>
//                                                                  <br>
//Parametri:                                                        <br>
//x: coordinata X                                                   <br>
//z: coordinata Z                                                   <br>
//======================================================================
bool isArea(int x, int z);
bool isArea(int x, int z,int t);
/**non implementato */
void set(int type);
/**non implementato */
int setStart();
};
#endif