AIWaypoint Class Reference

Class that handles all waypoint related functions. More...

#include <ai_waypoint.hpp>

Inheritance diagram for AIWaypoint:

AIBaseStation AIObject SimpleCountedObject

Public Types

enum  WaypointType { WAYPOINT_RAIL = 0x01, WAYPOINT_BUOY = 0x10, WAYPOINT_ANY = 0x11 }
 Type of waypoints known in the game. More...
enum  ErrorMessages { ERR_WAYPOINT_BASE = AIError::ERR_CAT_WAYPOINT << AIError::ERR_CAT_BIT_SIZE, ERR_WAYPOINT_TOO_CLOSE_TO_ANOTHER_WAYPOINT, ERR_WAYPOINT_ADJOINS_MULTIPLE_WAYPOINTS }
 All waypoint related error messages. More...

Static Public Member Functions

static const char * GetClassName ()
static bool IsValidWaypoint (StationID waypoint_id)
 Checks whether the given waypoint is valid and owned by you.
static StationID GetWaypointID (TileIndex tile)
 Get the StationID of a tile.
static bool HasWaypointType (StationID waypoint_id, WaypointType waypoint_type)
 Check if any part of the waypoint contains a waypoint of the type waypoint_type.

Detailed Description

Class that handles all waypoint related functions.

Definition at line 22 of file ai_waypoint.hpp.


Member Enumeration Documentation

Type of waypoints known in the game.

Enumerator:
WAYPOINT_RAIL  Rail waypoint.
WAYPOINT_BUOY  Buoy.
WAYPOINT_ANY  All waypoint types.

Definition at line 29 of file ai_waypoint.hpp.

All waypoint related error messages.

Enumerator:
ERR_WAYPOINT_BASE  Base for waypoint related errors.
ERR_WAYPOINT_TOO_CLOSE_TO_ANOTHER_WAYPOINT  The waypoint is build too close to another waypoint.
ERR_WAYPOINT_ADJOINS_MULTIPLE_WAYPOINTS  The waypoint would join more then one existing waypoint together.

Definition at line 39 of file ai_waypoint.hpp.


Member Function Documentation

bool AIWaypoint::IsValidWaypoint ( StationID  waypoint_id  )  [static]

Checks whether the given waypoint is valid and owned by you.

Parameters:
waypoint_id The waypoint to check.
Returns:
True if and only if the waypoint is valid.

Definition at line 18 of file ai_waypoint.cpp.

References OWNER_NONE.

Referenced by HasWaypointType().

StationID AIWaypoint::GetWaypointID ( TileIndex  tile  )  [static]

Get the StationID of a tile.

Parameters:
tile The tile to find the StationID of.
Precondition:
AIRail::IsRailWaypointTile(tile).
Returns:
StationID of the waypoint.

Definition at line 24 of file ai_waypoint.cpp.

References GetStationIndex(), AIMarine::IsBuoyTile(), AIRail::IsRailWaypointTile(), and AIBaseStation::STATION_INVALID.

bool AIWaypoint::HasWaypointType ( StationID  waypoint_id,
WaypointType  waypoint_type 
) [static]

Check if any part of the waypoint contains a waypoint of the type waypoint_type.

Parameters:
waypoint_id The waypoint to look at.
waypoint_type The WaypointType to look for.
Returns:
True if the waypoint has a waypoint part of the type waypoint_type.

Definition at line 31 of file ai_waypoint.cpp.

References CountBits(), and IsValidWaypoint().


The documentation for this class was generated from the following files:

Generated on Thu Feb 4 17:20:52 2010 for OpenTTD by  doxygen 1.5.6