|
Planeshift
|
A Location is a named place on the map, located dynamically by NPCs as scripted. More...
#include <location.h>
Public Member Functions | |
| bool | Adjust (iDataConnection *db, const csVector3 &pos, iSector *sector) |
| Adjust the postion of this location. More... | |
| bool | Adjust (iDataConnection *db, const csVector3 &pos, iSector *sector, float rot_angle) |
| Adjust the postion of this location. More... | |
| bool | Adjust (const csVector3 &pos, iSector *sector) |
| Adjust the postion of this location. More... | |
| bool | Adjust (const csVector3 &pos, iSector *sector, float rot_angle) |
| Adjust the postion of this location. More... | |
| void | CalculateBoundingBox () |
| Function to calculate the bounding box for a location. More... | |
| bool | CheckWithinBounds (iEngine *engine, const csVector3 &pos, const iSector *sector) |
| Check if a point is within bounds of this location. More... | |
| bool | CreateUpdate (iDataConnection *db) |
| Create or update an entry for this location in the DB. More... | |
| const csBox2 & | GetBoundingBox () const |
| Return the bounding box for this location. More... | |
| uint32_t | GetEffectID (iEffectIDAllocator *allocator) |
| Return the effect ID for this location or assign a new ID. More... | |
| csString | GetFlags () const |
| Get flags. More... | |
| int | GetID () const |
| Get the DB ID. More... | |
| const char * | GetName () const |
| retrive the name of this location. More... | |
| const csVector3 & | GetPosition () const |
| Return the position of this location. More... | |
| float | GetRadius () const |
| Get the Radius. More... | |
| bool | GetRandomPosition (iEngine *engine, csVector3 &pos, iSector *§or) |
| Get a random position in the location. More... | |
| float | GetRotationAngle () const |
| Get the rotation angle. More... | |
| iSector * | GetSector (iEngine *engine) |
| Return cached sector or find the sector and cache it from engine. More... | |
| iSector * | GetSector (iEngine *engine) const |
| Return cached sector or find the sector and cache it from engine. More... | |
| const char * | GetTypeName () const |
| Get the type name of this location. More... | |
| bool | Import (iDocumentNode *node, iDataConnection *db, int typeID) |
| Import a location from an XML document. More... | |
| Location * | Insert (iDataConnection *db, csVector3 &pos, iSector *sector) |
| Insert a new point in a region after this location. More... | |
| Location * | Insert (int id, csVector3 &pos, iSector *sector) |
| Insert a new point in a region after this location. More... | |
| bool | IsCircle () |
| Query if this location is a circle. More... | |
| bool | IsRegion () |
| Query if this location is a region. More... | |
| bool | Load (iResultRow &row, iEngine *engine, iDataConnection *db) |
| Load a location from the DB. More... | |
| Location () | |
| Constructor. More... | |
| Location (LocationType *locationType, const char *locationName, const csVector3 &pos, iSector *sector, float radius, float rot_angle, const csString &flags) | |
| Constructor. More... | |
| bool | SetFlag (const csString &flag, bool enable) |
| Set flag. More... | |
| bool | SetFlags (const csString &flags) |
| Set flags. More... | |
| void | SetID (int id) |
| Set DB ID. More... | |
| void | SetName (const csString &name) |
| Set the name. More... | |
| bool | SetRadius (iDataConnection *db, float radius) |
| Set Radius and recalculate the boudning box. More... | |
| void | SetRadius (float radius) |
| Set Radius and recalculate the boudning box. More... | |
| csString | ToString () const |
| Create text representation. More... | |
| ~Location () | |
| Destructor. More... | |
Static Public Member Functions | |
| static int | GetSectorID (iDataConnection *db, const char *name) |
| retrive a sector ID. More... | |
Public Attributes | |
| csBox2 | boundingBox |
| Bounding box used for boundary checks. More... | |
| uint32_t | effectID |
| When displayed in a client this is the effect id. More... | |
| int | id |
| The ID of this location, from the DB. More... | |
| int | id_prev_loc_in_region |
| Prev database ID for a region. More... | |
| csArray< Location * > | locs |
| A number of points for regions. Including self for first location in region. More... | |
| csString | name |
| The name of this location. More... | |
| csVector3 | pos |
| The positon of this location. More... | |
| float | radius |
| The radius of this locaiton. More... | |
| Location * | region |
| Pointer to first location in a region. More... | |
| float | rot_angle |
| Some location has an angle. More... | |
| csWeakRef< iSector > | sector |
| Cached sector. More... | |
| csString | sectorName |
| The sector where this location is located. More... | |
| LocationType * | type |
| Points back to location type. More... | |
A Location is a named place on the map, located dynamically by NPCs as scripted.
Definition at line 48 of file location.h.
| Location::Location | ( | ) |
Constructor.
| Location::Location | ( | LocationType * | locationType, |
| const char * | locationName, | ||
| const csVector3 & | pos, | ||
| iSector * | sector, | ||
| float | radius, | ||
| float | rot_angle, | ||
| const csString & | flags | ||
| ) |
Constructor.
| Location::~Location | ( | ) |
Destructor.
| bool Location::Adjust | ( | iDataConnection * | db, |
| const csVector3 & | pos, | ||
| iSector * | sector | ||
| ) |
Adjust the postion of this location.
| bool Location::Adjust | ( | iDataConnection * | db, |
| const csVector3 & | pos, | ||
| iSector * | sector, | ||
| float | rot_angle | ||
| ) |
Adjust the postion of this location.
| bool Location::Adjust | ( | const csVector3 & | pos, |
| iSector * | sector | ||
| ) |
Adjust the postion of this location.
| bool Location::Adjust | ( | const csVector3 & | pos, |
| iSector * | sector, | ||
| float | rot_angle | ||
| ) |
Adjust the postion of this location.
| void Location::CalculateBoundingBox | ( | ) |
Function to calculate the bounding box for a location.
This function should be called after the location has been loaded or modified.
| bool Location::CheckWithinBounds | ( | iEngine * | engine, |
| const csVector3 & | pos, | ||
| const iSector * | sector | ||
| ) |
Check if a point is within bounds of this location.
| bool Location::CreateUpdate | ( | iDataConnection * | db | ) |
Create or update an entry for this location in the DB.
| const csBox2& Location::GetBoundingBox | ( | ) | const |
Return the bounding box for this location.
| uint32_t Location::GetEffectID | ( | iEffectIDAllocator * | allocator | ) |
Return the effect ID for this location or assign a new ID.
| allocator |
|
inline |
|
inline |
Get the DB ID.
Definition at line 80 of file location.h.
|
inline |
retrive the name of this location.
Definition at line 223 of file location.h.
|
inline |
Return the position of this location.
Definition at line 94 of file location.h.
|
inline |
Get the Radius.
Definition at line 125 of file location.h.
| bool Location::GetRandomPosition | ( | iEngine * | engine, |
| csVector3 & | pos, | ||
| iSector *& | sector | ||
| ) |
Get a random position in the location.
Will return the position found. Do not relay on the state of the parameters if operation failes.
| engine | Used to find the sector |
| pos | The found position is returned here. |
| sector | The found sector is returned here. |
|
inline |
Get the rotation angle.
Definition at line 140 of file location.h.
| iSector* Location::GetSector | ( | iEngine * | engine | ) |
Return cached sector or find the sector and cache it from engine.
| iSector* Location::GetSector | ( | iEngine * | engine | ) | const |
Return cached sector or find the sector and cache it from engine.
|
static |
retrive a sector ID.
| const char* Location::GetTypeName | ( | ) | const |
Get the type name of this location.
| bool Location::Import | ( | iDocumentNode * | node, |
| iDataConnection * | db, | ||
| int | typeID | ||
| ) |
Import a location from an XML document.
| Location* Location::Insert | ( | iDataConnection * | db, |
| csVector3 & | pos, | ||
| iSector * | sector | ||
| ) |
Insert a new point in a region after this location.
Insert a new point in a region after this location.
|
inline |
Query if this location is a circle.
Definition at line 174 of file location.h.
|
inline |
Query if this location is a region.
Definition at line 167 of file location.h.
| bool Location::Load | ( | iResultRow & | row, |
| iEngine * | engine, | ||
| iDataConnection * | db | ||
| ) |
Load a location from the DB.
|
inline |
|
inline |
|
inline |
Set DB ID.
Definition at line 87 of file location.h.
|
inline |
Set the name.
Definition at line 230 of file location.h.
| bool Location::SetRadius | ( | iDataConnection * | db, |
| float | radius | ||
| ) |
Set Radius and recalculate the boudning box.
| void Location::SetRadius | ( | float | radius | ) |
Set Radius and recalculate the boudning box.
| csString Location::ToString | ( | ) | const |
Create text representation.
| csBox2 Location::boundingBox |
Bounding box used for boundary checks.
Definition at line 60 of file location.h.
| uint32_t Location::effectID |
When displayed in a client this is the effect id.
Definition at line 63 of file location.h.
| int Location::id |
The ID of this location, from the DB.
Definition at line 51 of file location.h.
| int Location::id_prev_loc_in_region |
Prev database ID for a region.
Definition at line 57 of file location.h.
| csArray<Location*> Location::locs |
A number of points for regions. Including self for first location in region.
Definition at line 56 of file location.h.
| csString Location::name |
The name of this location.
Definition at line 52 of file location.h.
| csVector3 Location::pos |
The positon of this location.
Definition at line 53 of file location.h.
| float Location::radius |
The radius of this locaiton.
Definition at line 55 of file location.h.
| Location* Location::region |
Pointer to first location in a region.
Definition at line 64 of file location.h.
| float Location::rot_angle |
Some location has an angle.
Definition at line 54 of file location.h.
| csWeakRef<iSector> Location::sector |
Cached sector.
Definition at line 61 of file location.h.
| csString Location::sectorName |
The sector where this location is located.
Definition at line 58 of file location.h.
| LocationType* Location::type |
Points back to location type.
Definition at line 62 of file location.h.