Commit Graph

563 Commits

Author SHA1 Message Date
smatz 0045096403 (svn r16640) -Codechange: move roadstop stuff to separate files 2009-06-23 21:44:48 +00:00
frosch b07ef35f44 (svn r16618) -Fix (r16614): Silence a warning. 2009-06-21 20:59:30 +00:00
yexo c7bd6c8d34 (svn r16614) -Codechange: Make the airport min/max available year a property of the Airport class.
-Change: rename station.always_small_airport to station.never_expire_airports to make it more future-proof
2009-06-21 13:26:30 +00:00
yexo d09d3566dd (svn r16585) -Add [NoAI]: AIBuoyList to get a list of all buoys 2009-06-17 13:12:08 +00:00
rubidium 512b021e26 (svn r16581) -Codechange: unify the access to Engine::lifelength. 2009-06-16 13:52:18 +00:00
yexo b3c3cf6e6d (svn r16563) -Fix [NoAI]: AIMarine::AreWaterTilesConnected didn't return true for bridge head<>neighbouring water tile 2009-06-11 14:29:03 +00:00
yexo f92feb2a95 (svn r16562) -Revert (r16561) 2009-06-11 14:17:26 +00:00
yexo 176e55a8a3 (svn r16561) -Fix [NoAI]: AIMarine::AreWaterTilesConnected didn't return true for bridge head<>neighbouring water tile 2009-06-11 14:15:18 +00:00
smatz bea3fe2b8b (svn r16559) -Codechange: introduce Company::IsValidAiID() and Company::IsValidHumanID(), don't use IsHumanCompany() where possible 2009-06-10 22:05:01 +00:00
smatz 8563b77fee (svn r16557) -Feature(tte) [NoAI][FS#2892]: mark dead AIs by red background in the AIDebug window 2009-06-10 19:26:04 +00:00
smatz 83e2df5b72 (svn r16556) -Codechange [NoAI]: use accessor for AIInstance::is_dead 2009-06-10 19:23:25 +00:00
yexo 726ba50868 (svn r16529) -Fix [NoAI]: StationIDs from oilrigs were not considered valid by the API. 2009-06-07 13:29:09 +00:00
smatz 0c10006907 (svn r16527) -Codechange: use static member functions instead of simple casts when converting Vehicle to specialised vehicle types. Includes safety check 2009-06-06 16:54:22 +00:00
rubidium ec3ef70adb (svn r16524) -Fix [FS#2963]: missing guards in the NoAI API making it possible to hit an assert in OpenTTD. 2009-06-06 11:47:21 +00:00
yexo 59ae226ab1 (svn r16522) -Fix [FS#2962]: possible assert in ai debug window when an AI was stopped an a human company took it's CompanyID 2009-06-06 01:53:17 +00:00
yexo ad5f018195 (svn r16520) -Fix [NoAI]: Make sure AIBridge::BuildBridge returns what the documentation says it does (r16244 for AIBridge) 2009-06-05 17:36:39 +00:00
rubidium caf98238e3 (svn r16510) -Doc: silence some (AI) doxygen warnings by adding comments about the appropriate things. 2009-06-03 18:47:08 +00:00
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
yexo 3949050714 (svn r16113) -Feature [NoAI]: Add UseAsRandomAI as function in info.nut. When an AI returns false, it'll never be chosen as random AI. 2009-04-21 19:13:32 +00:00
yexo 10c98f7e0e (svn r16109) -Fix [NoAI]: Make sure AIOrder::GetDestination always returns a tile belonging to the station 2009-04-21 16:49:53 +00:00
yexo 63db874050 (svn r16108) -Fix [NoAI]: When giving an aircraft a goto-hangar order don't let it be a normal goto-station order.
Note to AI writers: AIOrder.AppendOrder(vehicle_id, AIStation.GetLocation(station_id)) will give a goto-hangar order for helistations (assuming the station sign is at it's default location).
2009-04-21 12:51:36 +00:00
yexo 61d883e7e5 (svn r16107) -Add [NoAI]: AIOF_STOP_IN_DEPOT to the orderflags in AIOrder to allow stop-in-depot orders 2009-04-20 23:49:27 +00:00
yexo a664a2668c (svn r16106) -Fix [NoAI]: AIOrder::SetOrderFlags always removed "Service if needed" from goto-depot orders. 2009-04-20 23:12:32 +00:00
frosch 90ebf211dc (svn r16094) -Fix: AIDebug window profiled the blitters by invalidating itself unconditionally on repaint. OTOH it was not invalidated in other cases when needed. 2009-04-19 16:04:44 +00:00
yexo a91ff2d5e8 (svn r16093) -Feature [FS#2808]: Add GetURL() as possible function to info.nut. If AIs implement it, that url is shown when the AI crashes and also in the AI selection window. 2009-04-19 15:14:23 +00:00
yexo 3e2e5b097c (svn r16091) -Change [FS#2778]: Reverse the order of the lines in the AI debug window 2009-04-19 14:42:03 +00:00
frosch eb7414ea9e (svn r16062) -Fix (r16037): AIOrder::InsertOrder was broken. Default all AI orders to 'stop at far end'. 2009-04-15 17:31:08 +00:00
rubidium bee930f9b3 (svn r16024) -Codechange: harden string copying on places where it's possible 2009-04-10 20:37:05 +00:00
yexo 57dab45e75 (svn r15910) -Fix [FS#2777]: Clarify that TILE_INVALID is part of AIMap make doxygen output some documentation for it. 2009-04-01 08:38:57 +00:00
frosch f55be81e3c (svn r15901) -Add: AIIndustryType::IsBuiltOnWater(), HasHeliport() and HasDock(). Just like AIIndustry. 2009-03-30 20:48:10 +00:00
alberth 9d2738b9c4 (svn r15885) -Codechange: Removed new_size parameter of Window::OnResize() callback 2009-03-29 09:49:11 +00:00
yexo 50a6e589ed (svn r15881) -Fix (r15875): add an explicit cast so some compilers stop complaining. 2009-03-28 16:19:04 +00:00
yexo 400208ee0a (svn r15875) -Add: AIBridge::GetBridgeID() so AIs can get the type of bridge that are already build. 2009-03-28 12:04:38 +00:00
frosch 44351cdc57 (svn r15860) -Add: AIRoad::GetRoadVehicleTypeForCargo() to tell whether a certain cargo needs a bus- or a truckstop. 2009-03-26 19:45:45 +00:00
frosch 19b47c1e89 (svn r15859) -Documentation: Meaning of AICargo::CC_PASSENGERS wrt. bus- and truckstops, and meaning of AICargo::IsFreight() wrt. freight train weight multiplier. 2009-03-26 19:44:13 +00:00
yexo 809e4f398c (svn r15852) -Codechange: New widgets for the AI windows. 2009-03-25 21:35:53 +00:00
rubidium 3e93f8adda (svn r15844) -Codechange: allow text alignment to be forced so the console and ai debug output don't get swapped (those are untranslateable anyways) 2009-03-25 01:10:24 +00:00
yexo 84fb615344 (svn r15835) -Codechange: Prevent using the return value of DrawString as much as possible. 2009-03-24 20:03:02 +00:00
rubidium 22d4270ea8 (svn r15811) -Fix: left != right and as a result of that the ai debug window was kinda empty. 2009-03-22 14:08:53 +00:00
rubidium ead0a6a6e5 (svn r15806) -Codechange: pass both left and right to the vehicle details drawing functions instead of only the left. 2009-03-22 10:37:51 +00:00
rubidium d837fc4d03 (svn r15797) -Codechange: make users of the old DrawStringMultiLine use the new one. 2009-03-21 23:45:34 +00:00
frosch d452a0a0ec (svn r15789) -Codechange: Add DiagdirBetweenTiles() and use it. 2009-03-21 21:43:23 +00:00
rubidium 45f189fdca (svn r15785) -Codechange: remove the *Truncated part of the old text drawing API. 2009-03-21 20:12:12 +00:00
yexo 971ed8d2a3 (svn r15781) -Fix [NoAI]: Missing "AIs" in the information the debug AI prints. 2009-03-21 19:08:04 +00:00
yexo d2dae07595 (svn r15774) -Fix (r15708): Don't show the message about reporting an AI crash for the dummy AI. 2009-03-19 23:38:51 +00:00
frosch 6dd04a9a78 (svn r15763) -Codechange/Fix: Add Engine::GetDisplayDefaultCapacity() and use it everywhere, so CB 36 is also used everywhere. 2009-03-18 19:32:13 +00:00
yexo 384599ef2c (svn r15743) -Codechange: move the definitions of some fake squirrel types to their own file. 2009-03-16 17:30:49 +00:00
yexo b078f8095a (svn r15742) -Fix (r15736): AIs with an invalid info.nut weren't ignored anymore. 2009-03-16 14:40:32 +00:00
yexo ce4744e1d6 (svn r15736) -Codechange: Split AIScanner/AIFileInfo to the more generic classes ScriptScanner/ScriptFileInfo. 2009-03-15 22:41:57 +00:00
rubidium f9def73be6 (svn r15723) -Codechange: use a constructor for WindowDescs as that makes expanding them much easier (Alberth) 2009-03-15 15:12:06 +00:00
rubidium 8761a5a4c4 (svn r15721) -Change: give a more useful (for 'normal' users) error message when there's no AI and they want to play with an AI 2009-03-15 14:33:40 +00:00
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 2009-03-15 00:32:18 +00:00
yexo 86a9df82b7 (svn r15716) -Change [NoAI]: AI libraries should now be stored in ai/library/<library_name>/ instead of ai/library/<category_name>/<library_name>/. Libraries inside tar files are not affected. 2009-03-14 23:57:37 +00:00
rubidium 9d018723b7 (svn r15711) -Codechange: lots of whitespace cleanup/fixes 2009-03-14 18:16:29 +00:00
yexo 2e6e2457f1 (svn r15708) -Feature [FS#2728]: Pop up the AI Debug Window if one of the AIs crashed and show a message that the user should report the crash. 2009-03-14 01:32:04 +00:00
frosch fa35dc10e5 (svn r15705) -Fix: Do not show passenger-/mail-capacity if the aircraft carries only cargo. 2009-03-13 23:49:12 +00:00
yexo cef662825b (svn r15684) -Add [NoAI]: AIOrder::SkipToOrder(). 2009-03-12 11:43:40 +00:00
yexo 13fb01d07d (svn r15668) -Fix: a few typos. 2009-03-11 07:32:31 +00:00
yexo 1ff06b3f9c (svn r15658) -Fix [NoAI]: Rewrite AIAbstractList::Valuate to make it more readable and fix a crash if no parameters are given to that function. 2009-03-09 22:14:47 +00:00
truebrain 3ca01c64f7 (svn r15638) -Fix: there is a time in your life you should stop coding for a project. You know that time is there when you make two huge mistakes in just 10 lines of code. I wish you all the best of luck :) (ps: HUGE mistakes!) 2009-03-07 20:55:24 +00:00
yexo 3633fd9a06 (svn r15630) -Fix (r15027): Make sure OpenTTD loads the dummy AI script when no other AI is available instead of a non-existing file. 2009-03-06 15:20:18 +00:00
yexo 890c5e3ae4 (svn r15616) -Change [API CHANGE]: Rename AIOrder::ChangeOrder() to AIOrder::SetOrderFlags(). 2009-03-04 23:12:48 +00:00
yexo ffe2caf20f (svn r15614) -Add [NoAI]: AIVehicleList_Group(group_id) and AIVehicleList_DefaultGroup(vehicle_type). 2009-03-04 22:37:25 +00:00
yexo a41b143e58 (svn r15587) -Fix (r15345): I should really test even those simple api functions better. 2009-02-26 07:30:13 +00:00
yexo 932b1c24b2 (svn r15563) -Change [API CHANGE]: Remove AIIndustry::GetMaxIndustryID(). 2009-02-23 21:07:01 +00:00
yexo 1884ba20bc (svn r15562) -Change: Use GetName() to determine the unique AI name instead of GetInstanceName() to make branching of AIs easier. 2009-02-23 20:57:55 +00:00
yexo cabfe35e54 (svn r15558) -Cleanup: Remove some unnecessary friend declarations. 2009-02-23 19:35:19 +00:00
frosch d3850e101c (svn r15541) -Revert (r15399): 'v->cargo_type' is also used in other places, which cannot accept CT_INVALID.
-Codechange: Add Engine::GetDefaultCargoType() and Engine::CanCarryCargo() and use them.
-Fix [FS#2617]: When articulated parts have no available default cargo, use the cargo type of the first part for livery selection.
-Change: To decide whether a vehicle is refittable do not test its current capacity for being zero, but always use the 'capacity property'.
  Note: The property is used unmodifed without calling CB 15/36. By setting it to a non-zero value and returning zero in the callback vehicles can be refitted to/from zero capacity for e.g. livery effects.
  Note: It is intentional that you cannot control refittability by CB 36.
2009-02-21 12:52:41 +00:00
yexo c3c549f731 (svn r15538) -Fix (r15334): The difficulty level wasn't set to custom when changing the amount of towns/industries from the newgame gui. 2009-02-21 02:34:53 +00:00
glx ab3fc1d437 (svn r15535) -Fix (r15460, pre noai merge): use '.' as 'any' for squirrel calls typechecking as stated in squirrel docs 2009-02-21 00:43:18 +00:00
yexo 07a37af14c (svn r15530) -Fix (r15519): The AIWaypoint classes were not exported to squirrel. 2009-02-20 10:03:16 +00:00
yexo a54061f840 (svn r15527) -Fix (r15526): A ')' too much. 2009-02-19 23:22:31 +00:00
yexo b3fe664d90 (svn r15526) -Add [NoAI]: Support for conditional orders. 2009-02-19 23:12:57 +00:00
yexo 3491b0fab9 (svn r15524) -Add [NoAI]: AIEngine::GetPower, AIEngine::GetWeight and AIEngine::GetMaxTractiveEffort. 2009-02-19 19:44:19 +00:00
yexo 459a855e60 (svn r15520) -Cleanup [NoAI]: Fix some typos, unify the comment style and update some documentation since a few enums have been renamed. 2009-02-19 09:01:34 +00:00
yexo c0e7ddeb9e (svn r15519) -Add [NoAI]: support for waypoints by adding AIRail::Build/Remove RailWaypoint, AIWaypoint and AIWaypointList. 2009-02-19 07:40:08 +00:00
yexo a0b57c849e (svn r15494) -Change [API CHANGE]: Split AIRoad::BuildRoadStation in BuildRoadStation and BuildDriveThroughRoadStation. 2009-02-14 22:06:11 +00:00
yexo 2b221f5afc (svn r15492) -Change [API CHANGE]: Split AIVehicle::MoveWagon in MoveWagon and MoveWagonChain (frosch). 2009-02-14 21:22:42 +00:00
yexo 336abd66a2 (svn r15491) -Change [API CHANGE]: AIMarine::BuildWaterDepot now accepts a front tile instead of a bool is_vertical (frosch). 2009-02-14 21:19:33 +00:00
yexo 7d88077add (svn r15490) -Change [API CHANGE]: Remove AIBridge::GetYearAvailable. AIBridge::IsValidBridge now only returns true for available bridges. 2009-02-14 21:17:35 +00:00
yexo 16954ba378 (svn r15489) -Change [API CHANGE]: Remove AIAirport::AirportAvailable. AIAirport::IsValidAirportType now only returns true for available AirportTypes. 2009-02-14 21:16:21 +00:00
yexo bce1bcb0f2 (svn r15488) -Change [API CHANGE]: Add support for distant-join stations. 2009-02-14 21:15:23 +00:00
yexo 5a5bc8ab52 (svn r15487) -Change [API CHANGE]: Remove the never implemented function AIEventVehicleCrashed::CloneCrashedVehicle. 2009-02-14 21:13:45 +00:00
yexo 8ceb92e699 (svn r15486) -Change [API CHANGE]: Remove AITown::GetMaxTownID. 2009-02-14 21:13:15 +00:00
yexo cea470e687 (svn r15485) -Change [API CHANGE]: Split AIIndustry::HasHeliportAndDock and GetHeliportAndDockLocation in HasHeliport/HasDock and GetHeliportLocation/GetDockLocation. 2009-02-14 21:09:48 +00:00
yexo 58359b8d6e (svn r15484) -Change [API CHANGE]: Remove AICompany::GetCompanyName and SetCompanyName. They've been replaced with GetName and SetName. 2009-02-14 21:06:58 +00:00
yexo 7fdde2fec0 (svn r15483) -Change [API CHANGE]: Remove AIIndustry::GetProduction, use AIIndustry::GetLastMonthProduction instead. 2009-02-14 21:05:57 +00:00
yexo 92fc2e692c (svn r15482) -Fix [NoAI]: Typos in api docs. 2009-02-14 20:07:05 +00:00
yexo 37819fc8c5 (svn r15481) -Fix [NoAI]: Make sure AIs can't call functions they shouldn't call. 2009-02-14 20:03:06 +00:00
frosch b123756c9f (svn r15479) -Fix: Documentation of AIIndustryType::CanBuildIndustry(). 2009-02-14 18:40:31 +00:00
yexo e84f25a2bd (svn r15470) -Fix [NoAI]: Check the types of the parameters passed to AddSetting, AddLabels and RegisterAI. 2009-02-13 18:43:56 +00:00
yexo 8e14d77d05 (svn r15467) -Fix [NoAI]: AIs with an error in their info.nut are no longer available in-game. 2009-02-13 17:17:34 +00:00
yexo 15b9366f06 (svn r15466) -Fix (r15330): The squirrel instance object was freed twice if an info.nut failed to compile. 2009-02-13 16:25:53 +00:00
smatz d3f018a7e3 (svn r15465) -Codechange: constify most of AIInfo/AIFileInfo methods, move definition of very simple getters to header file 2009-02-13 02:11:54 +00:00
yexo 9292c90360 (svn r15464) -Codechange [NoAI]: Call all info.nut functions exactly once and only during initialization. 2009-02-13 01:44:56 +00:00
yexo b9c66aa750 (svn r15463) -Change [API CHANGE]: Replace AIInfo::CanLoadFromVersion(version) with AIInfo::MinVersionToLoad() which should return a single integer, the minimum version the AI is able to load data from. 2009-02-13 01:24:30 +00:00
yexo 4c7106dad7 (svn r15462) -Change [NoAI]: Make AIController::GetTick() and AIController::GetSetting() static functions.
-Fix (r15460): ai_controller.hpp.sq was forgotten.
2009-02-13 00:18:56 +00:00
rubidium dea3490b2f (svn r15460) -Fix [NoAI]: don't require an instance to exist in the scope for static functions and limit exposure of the internal function GetClassName. 2009-02-12 22:25:53 +00:00
yexo 8d25202067 (svn r15441) -Cleanup: Use a return value instead of passing a pointer to where the result should be stored. 2009-02-11 00:48:15 +00:00
yexo 1eeb0f6748 (svn r15440) -Fix: Backup AIObject::GetAllowDoCommand and restore the old value so AIs can't work around it. 2009-02-10 19:22:09 +00:00
peter1138 ad30a3c4ca (svn r15436) -Codechange: Return index of station spec within station class as a return parameter of GetCustomStationSpecByGrf(), as the index is already known. Saves on an extra loop and an extern... 2009-02-09 22:49:28 +00:00
rubidium c0a8d09ca7 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 2009-02-09 02:57:15 +00:00
rubidium 8dae160d0f (svn r15425) -Codechange: some color->colour changes and type safety. 2009-02-09 02:09:47 +00:00
rubidium 377ce6c5bf (svn r15410) -Cleanup: get rid of most of the references to the 'patches' except where it's used for backward compatability. 2009-02-08 12:25:13 +00:00
Yexo 5bcdcdd1d1 (svn r15408) -Fix (r15027): AIs could call AIController::Sleep() at times they're not allowed to sleep. 2009-02-08 11:34:51 +00:00
rubidium e1b1fd18b5 (svn r15406) -Fix: make Valuate actually cost a few opcodes to not make it a single opcode method of doing lots of the same thing. This should resolve most of the hiccups caused by AIs. 2009-02-08 01:51:48 +00:00
smatz 9c59b711b7 (svn r15401) -Fix [FS#2619](r15027): AI::Stop changed _current_company, but didn't restore its original value 2009-02-07 17:01:44 +00:00
frosch 4e8707b93f (svn r15400) -Fix: Typos in comments. 2009-02-07 16:23:42 +00:00
rubidium 6252c74584 (svn r15368) -Fix: some typos in comments 2009-02-06 10:31:05 +00:00
Yexo cb3784d8b1 (svn r15366) -Add [NoAI]: Add AddLabels() where you can define labels for the values of the settings in info.nut 2009-02-06 00:25:37 +00:00
frosch 324e92f879 (svn r15360) -Fix: Flooding vehicles did not trigger an AI event. 2009-02-05 17:48:08 +00:00
frosch cb049e4e58 (svn r15359) -Add [NoAI]: AIEventVehicleCrashed::CRASH_RV_UFO, AIEventDisasterZeppelinerCrashed and AIEventDisasterZeppelinerCleared as aliens accepted NoAIs as competing life-form. 2009-02-05 17:38:47 +00:00
frosch 7f198507f7 (svn r15358) -Add [NoAI]: AIEventVehicleCrashed::GetCrashReason() 2009-02-05 17:28:37 +00:00
rubidium 8fb4962407 (svn r15355) -Codechange: simplify some stuff now ->FirstShared returns non-NULL again. 2009-02-05 15:59:23 +00:00
Yexo f2907d816f (svn r15346) -Add [NoAI]: Add AIAirport::GetNearestTown() so AIs can known in which town the noise level will increase. 2009-02-05 01:15:54 +00:00
Yexo 62a11eb5a9 (svn r15345) -Add [NoAI]: Add AIVehicle::HasSharedOrders() and AIVehicleList_SharedOrders. 2009-02-05 01:12:49 +00:00
Yexo b321130d9a (svn r15343) -Add [NoAI]: Add AITown::GetRoadLayout so AIs can get the road layout per town. 2009-02-04 23:26:21 +00:00
rubidium 1c30c8c801 (svn r15330) -Fix [FS#2597]: leaking of Squirrel when using circular references (by enabling the GC). 2009-02-03 22:42:42 +00:00
Yexo 101f55e65c (svn r15328) -Fix (r15327): Load(data, version) was called instead of Load(version, data). 2009-02-03 21:05:32 +00:00
Yexo 1892c34ac6 (svn r15327) -Fix (r15027): AIs could access the map and other data in their constructor and Load() function while the savegame was not completely loaded. 2009-02-03 20:49:08 +00:00
smatz 5ad1cd32b2 (svn r15324) -Codechange: unify the class used for comparing of strings for std::map 2009-02-03 18:08:07 +00:00
Yexo a5807f4a77 (svn r15322) -Fix (r15175): The AI list window didn't display information about the selected AI if it wasn't visible. 2009-02-02 22:57:22 +00:00
frosch de9a6fc90b (svn r15308) -Codechange: Deduplicate km-ish/h -> mph conversions. 2009-02-01 17:14:39 +00:00
frosch 317220c2e4 (svn r15307) -Fix: AIVehicle::GetCurrentSpeed() should also use km-ish/h instead of mph. (Documentation by Rubidium) 2009-02-01 16:21:18 +00:00
frosch c28c4c1986 (svn r15306) -Codechange: Deduplicate code by adding Engine::GetDisplayMaxSpeed(), GetPower() and GetDisplayWeight(). (and using them) 2009-02-01 16:10:06 +00:00
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 2009-01-31 20:16:06 +00:00
Yexo ea01534e6d (svn r15284) -Fix [FS#2582] (r15045): Parameters were popped from the squirrel stack twice. 2009-01-27 13:11:11 +00:00
smatz 659989af45 (svn r15278) -Fix [FS#2332]: test noise limit of nearest town instead of st->town 2009-01-26 21:09:17 +00:00
Yexo 7f9c91901e (svn r15277) -Fix (r15027): Building bridges in AITestMode always returned false. 2009-01-26 20:18:50 +00:00
glx 062f32a186 (svn r15270) -Change [API CHANGE]: remove AIEventTest 2009-01-25 19:06:00 +00:00
glx c1cf3934fa (svn r15263) -Codechange: added Engine::GetCost() to remove some code duplication. 2009-01-25 00:57:03 +00:00
frosch 80ee3d3440 (svn r15262) -Fix: AIEvents were not freed, when they were not queued for any AI. 2009-01-24 21:38:30 +00:00
glx e8b5f49861 (svn r15261) -Add: added Engine::GetRunningCost() to remove some code duplication. Also stops AIs decrementing vehicle counter of first company 2009-01-24 20:14:15 +00:00
frosch 47cdbe4a20 (svn r15255) -Fix (r15027): AIVehicle::GetLength() returned only the length of the first part of articulated road vehicles. 2009-01-24 14:26:48 +00:00
frosch 7e6049ba02 (svn r15252) -Fix (r15027): AIMarine::AreWaterTilesConnected() reported aqueducts being connected with all surrounding tiles. Also add some type safety. 2009-01-24 13:05:04 +00:00
frosch d05ab5a531 (svn r15244) -Fix (r15027): The station tile of an oilrig-like industry is not neccessarily the first industry tile. 2009-01-23 22:36:17 +00:00
frosch a1d4b792e8 (svn r15241) -Fix (r15027): NoAI API was not aware of certain newindustries 'features'. 2009-01-23 22:09:31 +00:00
glx 4fe58bc303 (svn r15228) -Fix [FS#2571]: possible crash when an AI/Library doesn't have a required function 2009-01-23 15:38:13 +00:00
glx ceb60b426e (svn r15226) -Fix (r15214): broken AI content download 2009-01-23 15:10:13 +00:00
rubidium 83e1288c6a (svn r15215) -Fix: various MSVC x64 compiler warnings 2009-01-23 02:01:05 +00:00
glx 92f5c6b1da (svn r15214) -Fix [NoAI]: ignore case for ai/library main script path on windows 2009-01-23 01:29:13 +00:00
glx b44390bf39 (svn r15191) -Fix (r15188): -1 is not a bool (MSVC warning) 2009-01-21 03:47:04 +00:00
Yexo db3ee34b44 (svn r15190) -Feature: Allow terraforming of the tiles at the edges of the map. 2009-01-21 02:31:55 +00:00
Yexo ddcaf2f4cc (svn r15188) -Feature: You can now change the number of AIs from the AI config window. 2009-01-21 01:56:42 +00:00
Yexo 2307adf8d2 (svn r15187) -Fix: assert when an AI called AIRoad::GetNeighbourRoadCount on a tile at the north edge (bug found by SmatZ). 2009-01-21 01:37:20 +00:00
Yexo e395533632 (svn r15186) -Fix: Select the currently selected AI instead of the second on in the list.
-Feature: Double clicking on a slot in the AI config window results in opening the list of AIs.
2009-01-21 00:36:22 +00:00
Yexo c3b7917da1 (svn r15185) -Fix (r15175): It was impossible to select AIs that had a different instance name then their name. 2009-01-21 00:19:21 +00:00
glx a4d3c76093 (svn r15184) -Cleanup: remove extra spaces 2009-01-21 00:18:30 +00:00
Yexo 3c757724e9 (svn r15182) -Fix: After updating an AI select the latest version for the next game. 2009-01-21 00:09:36 +00:00
Yexo 3d35b3c2cc (svn r15175) -Feature: Add the option to select the AIs to start in a new game and configure them via the gui. 2009-01-20 16:49:10 +00:00
Yexo 61ee8ca42a (svn r15171) -Fix (r15027): Buffer underflow in case there are no settings to save for an AI. 2009-01-20 15:58:40 +00:00