diff --git a/projects/openttd_vs100.vcxproj b/projects/openttd_vs100.vcxproj
index ae342e584f..a43a2ea97d 100644
--- a/projects/openttd_vs100.vcxproj
+++ b/projects/openttd_vs100.vcxproj
@@ -852,109 +852,109 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/projects/openttd_vs100.vcxproj.filters b/projects/openttd_vs100.vcxproj.filters
index 7414553d0a..08f0dd2b8f 100644
--- a/projects/openttd_vs100.vcxproj.filters
+++ b/projects/openttd_vs100.vcxproj.filters
@@ -1776,313 +1776,313 @@
AI Core
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
AI API
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
-
- AI API
-
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
AI API
-
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
+ AI API
+
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
-
+
AI API Implementation
diff --git a/projects/openttd_vs80.vcproj b/projects/openttd_vs80.vcproj
index a91958de86..d602fdc587 100644
--- a/projects/openttd_vs80.vcproj
+++ b/projects/openttd_vs80.vcproj
@@ -2730,216 +2730,216 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2947,203 +2947,203 @@
Name="AI API Implementation"
>
diff --git a/projects/openttd_vs90.vcproj b/projects/openttd_vs90.vcproj
index b0ff55897f..65541ce18b 100644
--- a/projects/openttd_vs90.vcproj
+++ b/projects/openttd_vs90.vcproj
@@ -2727,216 +2727,216 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2944,203 +2944,203 @@
Name="AI API Implementation"
>
diff --git a/source.list b/source.list
index 5b10f43c5f..c4e56e8a29 100644
--- a/source.list
+++ b/source.list
@@ -625,111 +625,111 @@ ai/ai_scanner.hpp
ai/ai_storage.hpp
# AI API
-ai/api/ai_accounting.hpp
-ai/api/ai_airport.hpp
-ai/api/ai_base.hpp
-ai/api/ai_basestation.hpp
-ai/api/ai_bridge.hpp
-ai/api/ai_bridgelist.hpp
-ai/api/ai_cargo.hpp
-ai/api/ai_cargolist.hpp
ai/api/ai_changelog.hpp
-ai/api/ai_company.hpp
-ai/api/ai_controller.hpp
-ai/api/ai_date.hpp
-ai/api/ai_depotlist.hpp
-ai/api/ai_engine.hpp
-ai/api/ai_enginelist.hpp
-ai/api/ai_error.hpp
-ai/api/ai_event.hpp
-ai/api/ai_event_types.hpp
-ai/api/ai_execmode.hpp
-ai/api/ai_gamesettings.hpp
-ai/api/ai_group.hpp
-ai/api/ai_grouplist.hpp
-ai/api/ai_industry.hpp
-ai/api/ai_industrylist.hpp
-ai/api/ai_industrytype.hpp
-ai/api/ai_industrytypelist.hpp
ai/api/ai_info_docs.hpp
-ai/api/ai_list.hpp
-ai/api/ai_log.hpp
-ai/api/ai_map.hpp
-ai/api/ai_marine.hpp
-ai/api/ai_object.hpp
-ai/api/ai_order.hpp
-ai/api/ai_rail.hpp
-ai/api/ai_railtypelist.hpp
-ai/api/ai_road.hpp
-ai/api/ai_sign.hpp
-ai/api/ai_signlist.hpp
-ai/api/ai_station.hpp
-ai/api/ai_stationlist.hpp
-ai/api/ai_subsidy.hpp
-ai/api/ai_subsidylist.hpp
-ai/api/ai_testmode.hpp
-ai/api/ai_tile.hpp
-ai/api/ai_tilelist.hpp
-ai/api/ai_town.hpp
-ai/api/ai_townlist.hpp
-ai/api/ai_tunnel.hpp
-ai/api/ai_types.hpp
-ai/api/ai_vehicle.hpp
-ai/api/ai_vehiclelist.hpp
-ai/api/ai_waypoint.hpp
-ai/api/ai_waypointlist.hpp
+script/api/script_accounting.hpp
+script/api/script_airport.hpp
+script/api/script_base.hpp
+script/api/script_basestation.hpp
+script/api/script_bridge.hpp
+script/api/script_bridgelist.hpp
+script/api/script_cargo.hpp
+script/api/script_cargolist.hpp
+script/api/script_company.hpp
+script/api/script_controller.hpp
+script/api/script_date.hpp
+script/api/script_depotlist.hpp
+script/api/script_engine.hpp
+script/api/script_enginelist.hpp
+script/api/script_error.hpp
+script/api/script_event.hpp
+script/api/script_event_types.hpp
+script/api/script_execmode.hpp
+script/api/script_gamesettings.hpp
+script/api/script_group.hpp
+script/api/script_grouplist.hpp
+script/api/script_industry.hpp
+script/api/script_industrylist.hpp
+script/api/script_industrytype.hpp
+script/api/script_industrytypelist.hpp
+script/api/script_list.hpp
+script/api/script_log.hpp
+script/api/script_map.hpp
+script/api/script_marine.hpp
+script/api/script_object.hpp
+script/api/script_order.hpp
+script/api/script_rail.hpp
+script/api/script_railtypelist.hpp
+script/api/script_road.hpp
+script/api/script_sign.hpp
+script/api/script_signlist.hpp
+script/api/script_station.hpp
+script/api/script_stationlist.hpp
+script/api/script_subsidy.hpp
+script/api/script_subsidylist.hpp
+script/api/script_testmode.hpp
+script/api/script_tile.hpp
+script/api/script_tilelist.hpp
+script/api/script_town.hpp
+script/api/script_townlist.hpp
+script/api/script_tunnel.hpp
+script/api/script_types.hpp
+script/api/script_vehicle.hpp
+script/api/script_vehiclelist.hpp
+script/api/script_waypoint.hpp
+script/api/script_waypointlist.hpp
# AI API Implementation
-ai/api/ai_accounting.cpp
-ai/api/ai_airport.cpp
-ai/api/ai_base.cpp
-ai/api/ai_basestation.cpp
-ai/api/ai_bridge.cpp
-ai/api/ai_bridgelist.cpp
-ai/api/ai_cargo.cpp
-ai/api/ai_cargolist.cpp
-ai/api/ai_company.cpp
-ai/api/ai_controller.cpp
-ai/api/ai_date.cpp
-ai/api/ai_depotlist.cpp
-ai/api/ai_engine.cpp
-ai/api/ai_enginelist.cpp
-ai/api/ai_error.cpp
-ai/api/ai_event.cpp
-ai/api/ai_event_types.cpp
-ai/api/ai_execmode.cpp
-ai/api/ai_gamesettings.cpp
-ai/api/ai_group.cpp
-ai/api/ai_grouplist.cpp
-ai/api/ai_industry.cpp
-ai/api/ai_industrylist.cpp
-ai/api/ai_industrytype.cpp
-ai/api/ai_industrytypelist.cpp
-ai/api/ai_list.cpp
-ai/api/ai_log.cpp
-ai/api/ai_map.cpp
-ai/api/ai_marine.cpp
-ai/api/ai_object.cpp
-ai/api/ai_order.cpp
-ai/api/ai_rail.cpp
-ai/api/ai_railtypelist.cpp
-ai/api/ai_road.cpp
-ai/api/ai_sign.cpp
-ai/api/ai_signlist.cpp
-ai/api/ai_station.cpp
-ai/api/ai_stationlist.cpp
-ai/api/ai_subsidy.cpp
-ai/api/ai_subsidylist.cpp
-ai/api/ai_testmode.cpp
-ai/api/ai_tile.cpp
-ai/api/ai_tilelist.cpp
-ai/api/ai_town.cpp
-ai/api/ai_townlist.cpp
-ai/api/ai_tunnel.cpp
-ai/api/ai_vehicle.cpp
-ai/api/ai_vehiclelist.cpp
-ai/api/ai_waypoint.cpp
-ai/api/ai_waypointlist.cpp
+script/api/script_accounting.cpp
+script/api/script_airport.cpp
+script/api/script_base.cpp
+script/api/script_basestation.cpp
+script/api/script_bridge.cpp
+script/api/script_bridgelist.cpp
+script/api/script_cargo.cpp
+script/api/script_cargolist.cpp
+script/api/script_company.cpp
+script/api/script_controller.cpp
+script/api/script_date.cpp
+script/api/script_depotlist.cpp
+script/api/script_engine.cpp
+script/api/script_enginelist.cpp
+script/api/script_error.cpp
+script/api/script_event.cpp
+script/api/script_event_types.cpp
+script/api/script_execmode.cpp
+script/api/script_gamesettings.cpp
+script/api/script_group.cpp
+script/api/script_grouplist.cpp
+script/api/script_industry.cpp
+script/api/script_industrylist.cpp
+script/api/script_industrytype.cpp
+script/api/script_industrytypelist.cpp
+script/api/script_list.cpp
+script/api/script_log.cpp
+script/api/script_map.cpp
+script/api/script_marine.cpp
+script/api/script_object.cpp
+script/api/script_order.cpp
+script/api/script_rail.cpp
+script/api/script_railtypelist.cpp
+script/api/script_road.cpp
+script/api/script_sign.cpp
+script/api/script_signlist.cpp
+script/api/script_station.cpp
+script/api/script_stationlist.cpp
+script/api/script_subsidy.cpp
+script/api/script_subsidylist.cpp
+script/api/script_testmode.cpp
+script/api/script_tile.cpp
+script/api/script_tilelist.cpp
+script/api/script_town.cpp
+script/api/script_townlist.cpp
+script/api/script_tunnel.cpp
+script/api/script_vehicle.cpp
+script/api/script_vehiclelist.cpp
+script/api/script_waypoint.cpp
+script/api/script_waypointlist.cpp
#end
# Blitters
diff --git a/src/ai/ai.hpp b/src/ai/ai.hpp
index c8e5036b50..2d5355a9ca 100644
--- a/src/ai/ai.hpp
+++ b/src/ai/ai.hpp
@@ -13,7 +13,7 @@
#define AI_HPP
#ifdef ENABLE_AI
-#include "api/ai_event_types.hpp"
+#include "../script/api/script_event_types.hpp"
#include "../date_type.h"
#include "../core/string_compare_type.hpp"
#include