![]() |
Terrain Class ReferenceDatabase table Terrain.
More...
|
Public Member Functions | |
Terrain (Database &, Area &, char tchar) | |
~Terrain () | |
bool | Exists () |
Check if the object already exists in database. | |
void | Save () |
Save the object in database. | |
const std::string & | GetColor () |
void | SetColor (const std::string &) |
const std::string & | GetName () |
void | SetName (const std::string &) |
char | GetChar () |
void | SetChar (char tchar) |
bool | IsImpassable () |
void | SetImpassable (bool=true) |
long | GetNum () |
Get integer primary key from object. | |
double | GetDelay () |
void | SetDelay (double) |
Static Public Member Functions | |
static db::Terrain * | GetTerrain (Database &, Area &, char tchar) |
Private Attributes | |
Area & | m_area |
db::Terrain * | m_terrain |
Static Private Attributes | |
static terrains_t | m_terrains |
Definition at line 35 of file Terrain.h.
Terrain::Terrain | ( | Database & | , | |
Area & | , | |||
char | tchar | |||
) |
Definition at line 31 of file Terrain.cpp.
References Area::GetNum(), GetTerrain(), and m_terrain.
00032 :Object(db) 00033 ,m_area(area) 00034 { 00035 m_terrain = Terrain::GetTerrain(db, area, tchar); 00036 m_terrain -> area = area.GetNum(); 00037 m_terrain -> tchar = tchar; 00038 }
Terrain::~Terrain | ( | ) |
bool Terrain::Exists | ( | ) | [virtual] |
Check if the object already exists in database.
Implements Object.
Definition at line 62 of file Terrain.cpp.
References m_terrain.
Referenced by Setcmd::Execute(), Create::OnLine(), and Area::VerifyTerrain().
void Terrain::Save | ( | ) | [virtual] |
Save the object in database.
Implements Object.
Definition at line 82 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine(), and Area::VerifyTerrain().
00083 { 00084 m_terrain -> save(); 00085 }
const std::string & Terrain::GetColor | ( | ) |
Definition at line 70 of file Terrain.cpp.
References m_terrain.
Referenced by Map::Execute(), and Create::OnLine().
00071 { 00072 return m_terrain -> tcolor; 00073 }
void Terrain::SetColor | ( | const std::string & | ) |
Definition at line 94 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine(), and Area::VerifyTerrain().
00095 { 00096 m_terrain -> tcolor = x; 00097 }
const std::string & Terrain::GetName | ( | ) |
Definition at line 100 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine().
00101 { 00102 return m_terrain -> name; 00103 }
void Terrain::SetName | ( | const std::string & | ) |
Definition at line 106 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine(), and Area::VerifyTerrain().
00107 { 00108 m_terrain -> name = x; 00109 }
char Terrain::GetChar | ( | ) |
Definition at line 76 of file Terrain.cpp.
References m_terrain.
Referenced by Chunk::Edge(), and Setcmd::Execute().
00077 { 00078 return m_terrain -> tchar[0]; 00079 }
void Terrain::SetChar | ( | char | tchar | ) |
Definition at line 88 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine().
00089 { 00090 m_terrain -> tchar = tchar; 00091 }
bool Terrain::IsImpassable | ( | ) |
Definition at line 112 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine().
00113 { 00114 return m_terrain -> impassable ? true : false; 00115 }
void Terrain::SetImpassable | ( | bool | = true |
) |
Definition at line 118 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine().
00119 { 00120 m_terrain -> impassable = x ? 1 : 0; 00121 }
long Terrain::GetNum | ( | ) | [virtual] |
Get integer primary key from object.
Implements Object.
Definition at line 124 of file Terrain.cpp.
References m_terrain.
00125 { 00126 return m_terrain -> num; 00127 }
double Terrain::GetDelay | ( | ) |
Definition at line 130 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine().
00131 { 00132 return m_terrain -> delay; 00133 }
void Terrain::SetDelay | ( | double | ) |
Definition at line 136 of file Terrain.cpp.
References m_terrain.
Referenced by Create::OnLine().
00137 { 00138 m_terrain -> delay = d; 00139 }
db::Terrain * Terrain::GetTerrain | ( | Database & | , | |
Area & | , | |||
char | tchar | |||
) | [static] |
Definition at line 46 of file Terrain.cpp.
References Area::GetNum(), and m_terrains.
Referenced by Terrain().
00047 { 00048 std::map<char,db::Terrain *>& ref = m_terrains[area.GetNum()]; 00049 db::Terrain *p = ref[tchar]; 00050 if (p != NULL) 00051 return p; 00052 std::string tmp; 00053 tmp += tchar; 00054 p = new db::Terrain(db, area.GetNum(), tmp); 00055 p -> area = area.GetNum(); 00056 p -> tchar = tchar; 00057 ref[tchar] = p; 00058 return p; 00059 }
Area& Terrain::m_area [private] |
terrains_t Terrain::m_terrains [static, private] |
db::Terrain* Terrain::m_terrain [private] |
Definition at line 61 of file Terrain.h.
Referenced by Exists(), GetChar(), GetColor(), GetDelay(), GetName(), GetNum(), IsImpassable(), Save(), SetChar(), SetColor(), SetDelay(), SetImpassable(), SetName(), and Terrain().