Commit Graph

396 Commits

Author SHA1 Message Date
yexo 4ea3e511bd (svn r16502) -Fix [FS#2935]: when an AI was suspended while in a function called (indirectly) via call/acall/pcall OpenTTD crashed. Fix this by disallowing AIs to be suspended while called via call/acall/pcall.
IMPORTANT FOR AI WRITERS: AIs can no longer call any DoCommand functions (change anything, build vehicles, etc.) in a function called (indirectly) via call/acall/pcall. Where possible, please rewrite your code so it doesn't use call/acall/pcall
2009-06-01 22:00:47 +00:00
rubidium 765c65b738 (svn r16493) -Fix: missing/wrong @file doxygen 'headers' 2009-06-01 12:56:18 +00:00
alberth bab70a823d (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 2009-06-01 11:43:36 +00:00
smatz 7ee882d03f (svn r16441) -Codechange: new class SpecializedVehicle used as superclass for all vehicle types 2009-05-26 22:10:13 +00:00
yexo aa546e513f (svn r16440) -Fix [NoAI]: AIRail::GetRailStationDirection returned incorrect information 2009-05-26 22:03:16 +00:00
yexo 2a5a8f395c (svn r16433) -Codechange: Remove most of CmdSetAutoreplace and replace it with calls to CmdChangeCompanySetting 2009-05-26 13:29:01 +00:00
yexo 7425bf779d (svn r16425) -Change [FS#2869]: Stop an AI when it takes too long to initialize or load 2009-05-25 21:55:47 +00:00
rubidium 0d99b6c71c (svn r16421) -Codechange: do not unnecessarily remove constness or unnecessarily add it. 2009-05-24 20:29:04 +00:00
smatz b2aed51f8e (svn r16403) -Codechange: move code related to subsidies to separate file 2009-05-23 15:46:00 +00:00
yexo 0b243d25cb (svn r16400) -Add [NoAI]: add AISignList that can be used to get a list of valid signs. This makes AISign::GetMaxSignID obsolete. 2009-05-23 14:54:55 +00:00
rubidium 86710c5185 (svn r16397) -Codechange: move GetVehicleOrder/GetLastVehicleOrder into Vehicle 2009-05-23 12:27:42 +00:00
smatz b270ca84ba (svn r16395) -Fix (r16379): max sign ID can be higher than total number of signs 2009-05-23 11:13:43 +00:00
rubidium 6237fe1462 (svn r16394) -Codechange: move (NewGRF) cache variables into a separate struct so (some vehicle related) NewGRF cache 'desyncs' can be tested easier. 2009-05-23 09:10:56 +00:00
rubidium da5661a0c8 (svn r16393) -Codechange: move VehicleRail to Train. 2009-05-22 22:55:41 +00:00
rubidium 80e94b9bb1 (svn r16391) -Codechange: use Train instead of Vehicle where appropriate. 2009-05-22 22:22:46 +00:00
rubidium 7a37220881 (svn r16390) -Codechange: move u.road to RoadVehicle. 2009-05-22 20:22:20 +00:00
smatz 10d1ef5447 (svn r16379) -Codechange: remove GetNumTowns(), GetNumIndustries() and GetActiveCompanyCount(), use PoolItem::GetNumItems() instead 2009-05-22 15:23:47 +00:00
smatz 70aab8bf04 (svn r16354) -Codechange: use 'new' pool accessors and methods for Engine too 2009-05-18 19:32:16 +00:00
smatz 8808f3beea (svn r16352) -Codechange: use PoolItem::GetIfValid() instead of PoolItem::IsValidID() and PoolItem::Get() 2009-05-18 16:21:28 +00:00
smatz 0af27062c4 (svn r16349) -Codechange: rename IsPlainRailTile() to IsPlainRail(), introduce shiny new IsPlainRailTile() 2009-05-18 01:26:23 +00:00
rubidium e7dedf4e1b (svn r16332) -Codechange: replace some -1 + 1 with 'nothing' or <= .. - 1 with < .. - 1 (both caused due to wrapper functions) 2009-05-17 11:17:53 +00:00
smatz 871107f529 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 2009-05-17 01:00:56 +00:00
smatz ed1e54bd84 (svn r16326) -Codechange: replace GetPoolItemPoolSize() by PoolItem::GetPoolSize() 2009-05-16 23:44:36 +00:00
smatz 6221d74644 (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 2009-05-16 23:34:14 +00:00
yexo 31eff1d4c3 (svn r16315) -Codechange: move the autorenew settings to a new CompanySettings struct 2009-05-15 23:55:06 +00:00
frosch 8ffb93c358 (svn r16311) -Fix: (Get|Set)TrackBits() is only valid for RAIL_TILE_NORMAL and _SIGNALS. 2009-05-15 16:07:36 +00:00
frosch bdf0b9491d (svn r16267) -Documentation: [NoAI] Explain how to deal with IDs of various objects. 2009-05-10 15:23:55 +00:00
frosch c6f08e1247 (svn r16266) -Documentation: [NoAI] Add details to AITile::(Raise|Lower)Tile wrt. modifiing multiple corners at once. 2009-05-10 15:23:08 +00:00
frosch 96dace426b (svn r16264) -Change/Fix (r16262): [NoAI] Change SLOPE_INVALID to 0xFFFF so that SLOPE_INVALID != (SLOPE_ELEVATED | SLOPE_STEEP | SLOPE_HALFTILE_MASK). 2009-05-10 12:26:55 +00:00
yexo 8d22e4bec3 (svn r16262) -Fix [NoAI]: Check slopes passed to the API better for validity 2009-05-09 19:45:02 +00:00
yexo a00b22b1cd (svn r16253) -Add [NoAI]: AIController::GetVersion, this returns the newgrf-version of OpenTTD 2009-05-07 21:33:38 +00:00
yexo 9b4a32deb4 (svn r16252) -Add [NoAI]: AIAirport::GetPrice, returning the building cost of an airport 2009-05-07 21:30:18 +00:00
yexo 73e1d18871 (svn r16249) -Fix [NoAI]: Enable parameter checking for AIController::* functions again 2009-05-07 12:13:58 +00:00
yexo afc5c66386 (svn r16244) -Fix [NoAI]: Make sure AITunnel::BuildTunnel returns what the documentation says it does 2009-05-06 21:40:51 +00:00
yexo ca435fcece (svn r16243) -Fix [FS#2875]: CmdBuildTunnel could be called with invalid parameters from the api code, causing crashes later 2009-05-06 21:38:59 +00:00
yexo fe5defbacc (svn r16239) -Fix (r16199): Use the stop/non-stop intermediate orderflags AIs can give for goto-depot orders 2009-05-06 12:48:13 +00:00
frosch d518b3d0ac (svn r16199) -Codechange: Pass OrderNonStopFlags also to MakeGoToDepotOrder().
-Fix: 'Go non-stop to nearest depot'-orders did not work wrt. the 'non-stop' part.
-Fix: Adding 'Go to nearest depot'-orders did not respect the default setting for 'non-stop'.
2009-05-02 00:10:24 +00:00
yexo bc8f31da4e (svn r16174) -Fix (r16093) [FS#2863]: crash when starting a game/loading a game with no AIs available. 2009-04-26 19:30:31 +00:00
yexo d63f01d78b (svn r16172) -Fix (r16171): typo (thanks SmatZ) 2009-04-26 17:16:30 +00:00
yexo 3578f4408c (svn r16171) -Add [NoAI]: two new error codes to AITile: ERR_AREA_ALREADY_FLAT and ERR_ESCAVATION_WOULD_DAMAGE. 2009-04-26 17:01:05 +00:00
frosch e04ddbe0ac (svn r16166) -Add [NoAI]: AITile::Get(Min|Max|Corner)Height 2009-04-26 16:26:41 +00:00
yexo 9101de49d8 (svn r16165) -Add [FS#2801] [NoAI]: several functions to AIOrder to check the what kind of order an order is.
-Fix: AIOrder::GetOrderDestination and AIOrder::GetOrderFlags didn't work on ORDER_CURRENT when the vehicle was loading/leaving in a station.
2009-04-26 16:14:53 +00:00
rubidium 7dd677ced2 (svn r16162) -Codechange: remove needless TC_ colours from DrawString when they are part of strings and add some colours to a few strings. 2009-04-26 15:26:19 +00:00
rubidium 53887e07bb (svn r16160) -Codechange: remove the need for explicit TC_FROMSTRING for DrawString. 2009-04-26 14:52:56 +00:00
yexo f0bc464b18 (svn r16158) -Codechange: fix the string alignment in all .hpp.sq files 2009-04-26 12:22:09 +00:00
yexo 660f90d37b (svn r16151) -Codechange: move some includes around to prevent including half the AI api in non-noai related code. 2009-04-25 23:51:15 +00:00
yexo 486e5b4bfe (svn r16150) -Fix [NoAI]: Change WAYPOINT_INVALID to 0xFFFF from -1 as that's the value the AIs got (due to casting).
Clarify some api documentation.
2009-04-25 22:57:15 +00:00
rubidium d8bc98d5de (svn r16149) -Fix [FS#2860]: when there's no AI and an AI is started... *boom* 2009-04-25 22:40:24 +00:00
rubidium 59d45a04d6 (svn r16118) -Change/cleanup: remove the hexadecimal 'in TTD the string had this ID' from 'some' strings and replace the string name with something more sensible. 2009-04-21 23:40:56 +00:00
rubidium 2ec09d95a1 (svn r16114) -Cleanup: unify some more strings and remove some more unused strings 2009-04-21 20:20:53 +00:00