1 /*
2  * This file is part of OpenTTD.
3  * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4  * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5  * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
6  */
7 
8 /** @file script_waypointlist.hpp List all the waypoints (you own). */
9 
10 #ifndef SCRIPT_WAYPOINTLIST_HPP
11 #define SCRIPT_WAYPOINTLIST_HPP
12 
13 #include "script_list.hpp"
14 #include "script_waypoint.hpp"
15 
16 /**
17  * Creates a list of waypoints of which you are the owner.
18  * @api ai game
19  * @ingroup ScriptList
20  */
21 class ScriptWaypointList : public ScriptList {
22 public:
23 	/**
24 	 * @param waypoint_type The type of waypoint to make a list of waypoints for.
25 	 */
26 	ScriptWaypointList(ScriptWaypoint::WaypointType waypoint_type);
27 };
28 
29 /**
30  * Creates a list of waypoints which the vehicle has in its orders.
31  * @api ai game
32  * @ingroup ScriptList
33  */
34 class ScriptWaypointList_Vehicle : public ScriptList {
35 public:
36 	/**
37 	 * Get the waypoints from the orders of the given vehicle. Duplicates are
38 	 * not added. Waypoints are added in the order of the vehicle's orders.
39 	 * @param vehicle_id The vehicle to get the list of waypoints for.
40 	 */
41 	ScriptWaypointList_Vehicle(VehicleID vehicle_id);
42 };
43 
44 #endif /* SCRIPT_WAYPOINTLIST_HPP */
45