Commit Graph

593 Commits (0fd6f9732ce9fa799bd3ce69f318ecf387810b10)

Author SHA1 Message Date
rubidium 46d5fc5565 (svn r17220) -Fix (r15027): don't ignore white space changes (e.g. alignment fixes) in the exporter 15 years ago
yexo 418c88f94d (svn r17214) -Add [NoAI]: GetAPIVersion() as optional function in info.nut. Return "0.7" to get an api compatible (as much as possible) with the 0.7 api or "0.8" to get the latest api.
-Change [NoAI]: move all deprecated functions to a separate squirrel script that is only loaded if an AI requests an old API version.
15 years ago
yexo d349bf7ec3 (svn r17203) -Change [NoAI]: Add IsRoadTypeAvailable(GetCurrentRoadType()) as precondition for several AIRoad::* functions 15 years ago
rubidium 7b55bbbc6d (svn r17201) -Fix [NoAI]: don't say you're building a depot when you're actually building a station (API docs typo) 15 years ago
rubidium 702da7d8ef (svn r17193) -Fix [FS#3124]: guard the valuator against 'external' modifications of the valuated list which could cause it to go into an infinite loop. 15 years ago
smatz 073e163b7f (svn r17131) -Codechange: apply coding style to some switch statements 15 years ago
alberth c85bd040c5 (svn r17130) -Fix [FS#3099]: Last line of output in the AI debug window did not fit entirely. 15 years ago
yexo ee384495b9 (svn r17125) -Cleanup: remove an unused variable 15 years ago
smatz d59b687f65 (svn r17124) -Codechange: store subsidies in a pool (instead of an array) 15 years ago
smatz 2d39a2bb85 (svn r17115) -Add [NoAI]: AISubsidy::SubsidyParticipantType, AISubsidy::GetSourceType, AISubsidy::GetSourceIndex, AISubsidy::GetDestinationType, AISubsidy::GetDestinationIndex for better subsidy management
-Change [NoAI]: mark AISubsidy::SourceIsTown, AISubsidy::GetSource, AISubsidy::GetDestinationType, AISubsidy::GetDestination as deprecated
15 years ago
smatz 0502a6df42 (svn r17113) -Change [FS#265][FS#2094][FS#2589]: apply the subsidy when subsidy's destination is in station's catchment area and cargo packets originate from subsidy's source
-Change [FS#1134]: subsidies aren't bound to stations after awarding anymore, they still apply to town or industry, no matter what station is used for loading and unloading. Awarded subsidies from older savegames are lost
-Change [NoAI]: due to these changes, AISubsidy::GetSource and AISubsidy::GetDestination now return STATION_INVALID for awarded subsidies
15 years ago
yexo eb5039f81e (svn r17112) -Change [NoAI]: AIVehicleList_Station now also works for waypoints 15 years ago
yexo b8b20245bd (svn r17111) -Fix (r17110): forgot to include ai_log.hpp 15 years ago
yexo 183b7e0ed5 (svn r17110) -Fix [NoAI]: Print a warning message in the AI console when a deprecated function is used 15 years ago
smatz 3777a590f9 (svn r17109) -Fix (r15027): squirrel_export.sh failed for some locales 15 years ago
smatz 738d7fde53 (svn r17107) -Codechange: store type of subsidy source and destination in the Subsidy struct instead of determining it every time it's needed 15 years ago
rubidium d5931df4b4 (svn r17094) -Update: AI changelog 15 years ago
rubidium d61be2637e (svn r17075) -Codechange: rename ~750 strings to be more uniform with their relatives 15 years ago
rubidium 8b743d3a69 (svn r17072) -Fix: don't let squirrel export make a 'stub' for ai_changelog.hpp 15 years ago
rubidium 5bb7b8ad35 (svn r17062) -Change: unify the naming of some 125 strings 15 years ago
yexo 9742d839e8 (svn r17049) -Fix [NoAI]: documentation of AITile::LevelTiles was wrong 15 years ago
alberth baa5dac8a4 (svn r17044) -Codechange: ai windows use nested widget tree. 15 years ago
yexo 127ceaf828 (svn r17043) -Change [NoAI]: Load the API before compiling an AI script so AIs can subclass API classes and use API constants as part of their own constants 15 years ago
rubidium 911027d6c7 (svn r17028) -Fix (r17019): a function and class were not mentioned in the changelog 15 years ago
yexo a8794fd833 (svn r17019) -Doc: add AI API changelog 15 years ago
yexo 641e80798f (svn r17016) -Add [NoAI]: AICompany::Get/Set PresidentGender 15 years ago
yexo ef4ecc4cc3 (svn r17014) -Add [NoAI]: AIEngine::GetDesignDate 15 years ago
yexo 1ae6096e3b (svn r17012) -Add [NoAI]: AIBaseStation::GetConstructionDate 15 years ago
yexo 86b89fda98 (svn r17011) -Change [NoAI]: Add AIBaseStation as a parentclass for AIStation and AIWaypoint, and move GetName, SetName and GetLocation to AIBaseStation
Remove (nearly) all references to WaypointID and replace them with StationID
15 years ago
rubidium cb5a0369f8 (svn r17006) -Fix (r17005): gcc compile failure 15 years ago
yexo f35d7f210f (svn r17005) -Add [NoAI]: AIAbstractList::SORT_ASCENDING / SORT_DESCENDING 15 years ago
rubidium 7bb48f437e (svn r16999) -Fix (r16993): AIs couldn't build waypoints anymore 15 years ago
rubidium e035054ab6 (svn r16992) -Add [NoAI]: function to clear waypoint(s) in a certain rectangle on the map 15 years ago
rubidium b3f3ba36db (svn r16990) -Codechange: unify some (command) naming w.r.t. stations/waypoints. 15 years ago
yexo 42adfc055e (svn r16986) -Fix [NoAI]: AIBridge::GetPrice returned incorrect values 15 years ago
rubidium edf7b21e18 (svn r16976) -Codechange: remove WaypointID and MAX_LENGTH constants in favour of their Station variants 15 years ago
rubidium 30d9e54279 (svn r16966) -Codechange: BEGIN_TILE_LOOP and END_TILE_LOOP reworked into TILE_LOOP, which means no more duplication of parameters between BEGIN_TILE_LOOP and END_TILE_LOOP 15 years ago
rubidium def31de3c1 (svn r16948) -Codechange: some code reductions and usage of wrapper functions 15 years ago
rubidium 58563eafa7 (svn r16947) -Codechange: use TileArea instead of train_tile, trainst_w and trainst_h. 15 years ago
rubidium 196856f54e (svn r16939) -Codechange: s/RailwayStation/RailStation/ to unify the way it's written. 15 years ago
rubidium 00a9b2fd3d (svn r16938) -Codechange: introduce helper function to tell whether a tile is either a rail station or rail waypoint tile 15 years ago
rubidium 4874578e79 (svn r16930) -Codechange: more StringID name unification and grouping 15 years ago
rubidium 11f61f8a14 (svn r16927) -Change: make the 'there is no AI' error message translatable 15 years ago
rubidium 01eabc5f4c (svn r16921) -Codechange: make it more clear what strings are related to road vehicles; only ROAD isn't always enough. Also unify the way of writing it. 15 years ago
rubidium 49fcb20a91 (svn r16919) -Codechange: unify some more StringID w.r.t. their naming 15 years ago
rubidium c252e18421 (svn r16917) -Codechange: fix some GCC 4.5 'case X is not in enum Y' warnings 15 years ago
rubidium 6435dc89fe (svn r16912) -Codechange: split waypoint.h in waypoint_base.h and waypoint_func.h 15 years ago
rubidium 100cb17fa8 (svn r16909) -Fix [FS#2996]: NewGRF stations would be triggering assertions all over the place when using the more advanced station types.
-Change: make (rail) waypoints sub classes of 'base stations', make buoys waypoints and unify code between them where possible.
15 years ago
rubidium 39e6dbd5e3 (svn r16886) -Codechange: unify naming of some string IDs related to string codes and group them logically 15 years ago
smatz 3564579dc4 (svn r16877) -Codechange: use Subsidy::IsAwarded() instead of testing subsidy's age 15 years ago
yexo 58b3260c48 (svn r16866) -Fix (r16865): forgot to run squirrel_export.sh 15 years ago
yexo b0441f6c8c (svn r16865) -Doc [NoAI] [FS#3037]: replace old exception names with current ones and fix a type in the noai documentation (patch by Chruker) 15 years ago
smatz cb13cf2543 (svn r16852) -Codechange: use FOR_ALL_CARGOSPECS for iterating over all valid CargoSpecs 15 years ago
smatz 8718babe90 (svn r16849) -Codechange: replace GetCargo() by CargoSpec::Get() 15 years ago
alberth fe9f5cbc46 (svn r16845) -Codechange: Introduction of constants for describing the bits in a WWT_MATRIX data field. 15 years ago
yexo 6e467e8ae0 (svn r16834) -Fix [FS#3034]: call the AI Save() function only once so AIs can't crash OpenTTD 15 years ago
yexo f8844424cc (svn r16790) -Add [NoAI]: AIVehicle::GetReliability to get the current reliability of vehicles 15 years ago
rubidium 026f3c8feb (svn r16785) -Codechange: make ships going to buoys use OT_GOTO_WAYPOINT too 15 years ago
rubidium 8a8731b3f0 (svn r16783) -Change: make it more clear that the squirrel_export script needs gawk. 15 years ago
alberth 4f78ef88b0 (svn r16780) -Add [FS#3015]: Allow the AI Debug Window to become sticky. 15 years ago
rubidium 74f56861e9 (svn r16772) -Fix [FS#3019]: don't use the same error message for turning around road vehicles and flipping parts of trains in the depot 15 years ago
rubidium f8c0926c1a (svn r16771) -Fix: API export was forgotten causing API to think variables were uint; doesn't matter much as int was converted to uint and then back. 15 years ago
yexo 484bda00de (svn r16767) -Fix [NoAI] (r16524): AITile::GetCargoProduction/Acceptance didn't accept a radius of 0 anymore 15 years ago
alberth 8f727713d6 (svn r16738) -Codechange: Remove casting away constness by changing the text before storing. 15 years ago
yexo bed99fdaec (svn r16731) -Fix [NoAI]: AIDepotList contained wrong tiles for hangars when st->xy != st->airport_tile. 15 years ago
smatz fd48f3cc5c (svn r16724) -Fix (r16714): MSVC 64bit warnings (Rubidium) 15 years ago
smatz 32bf91aa41 (svn r16723) -Codechange: make GetNextArticPart(), GetLastEnginePart(), GetNextVehicle(), GetPrevVehicle(), GetNextUnit(), GetPrevUnit() members of Train 15 years ago
rubidium 18fbe0aac4 (svn r16722) -Codechange: unify the naming of the Is/Set/HasArticulatedPart functions 15 years ago
rubidium f97bd41ed4 (svn r16721) -Codechange: make Is/SetRoadVehicleFront, Is/Set/HasArticulatedPart member of RoadVehicle. 15 years ago
smatz 1e1f0ab2cf (svn r16719) -Codechange: make IsArticulatedPart(), IsTrainEngine(), IsTrainWagon(), IsMultiheaded(), EngineHasArticPart() and IsRearDualheaded() members of Train 15 years ago
smatz 378d01f2f4 (svn r16718) -Codechange: make IsFreeWagon() member of Train 15 years ago
smatz 93557ba4e9 (svn r16714) -Codechange: use pool-like accessors for Subsidy 15 years ago
smatz d04750ff87 (svn r16711) -Codechange: use FOR_ALL_SUBSIDIES macro when iterating over all subsidies 15 years ago
frosch ce55eda3e1 (svn r16679) -Codechange: Let GetCapacityOfArticulatedParts() return a CargoArray instead of a pointer to a static array. 15 years ago
frosch 523cde0798 (svn r16678) -Codechange: Turn CargoArray into a class, so one does not have to deal with sizeof() wrt. typedef-ed arrays. 15 years ago
frosch 4c3f480f92 (svn r16676) -Codechange: Rename AcceptedCargo to CargoArray and its instances to more meaningful names. 15 years ago
yexo b424962e57 (svn r16650) -Fix (r16649): missing () 15 years ago
yexo f225163e60 (svn r16649) -Fix: When the exact AI version a game was saved with is no longer available and the latest version of the AI can't load data from that AI version, use the latest available version of the AI that can load the data instead of the first found version that can load the data. 15 years ago
smatz a9602401f0 (svn r16646) -Codechange: rename GetDepotByTile() to Depot::GetByTile() 15 years ago
smatz f6a4d61cca (svn r16643) -Codechange: replace GetStationByTile() by Station::GetByTile() 15 years ago
smatz 61a42f42c1 (svn r16640) -Codechange: move roadstop stuff to separate files 15 years ago
frosch 4ff924862d (svn r16618) -Fix (r16614): Silence a warning. 15 years ago
yexo 679ffee940 (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
15 years ago
yexo 4c227b6b78 (svn r16585) -Add [NoAI]: AIBuoyList to get a list of all buoys 15 years ago
rubidium 8ca2ccc456 (svn r16581) -Codechange: unify the access to Engine::lifelength. 15 years ago
yexo 148559ff5e (svn r16563) -Fix [NoAI]: AIMarine::AreWaterTilesConnected didn't return true for bridge head<>neighbouring water tile 15 years ago
yexo e624d96282 (svn r16562) -Revert (r16561) 15 years ago
yexo c5c15fcbd9 (svn r16561) -Fix [NoAI]: AIMarine::AreWaterTilesConnected didn't return true for bridge head<>neighbouring water tile 15 years ago
smatz a2567c84a0 (svn r16559) -Codechange: introduce Company::IsValidAiID() and Company::IsValidHumanID(), don't use IsHumanCompany() where possible 15 years ago
smatz 0ae854650a (svn r16557) -Feature(tte) [NoAI][FS#2892]: mark dead AIs by red background in the AIDebug window 15 years ago
smatz f67ea11992 (svn r16556) -Codechange [NoAI]: use accessor for AIInstance::is_dead 15 years ago
yexo 338f75b3b2 (svn r16529) -Fix [NoAI]: StationIDs from oilrigs were not considered valid by the API. 15 years ago
smatz af85994f7f (svn r16527) -Codechange: use static member functions instead of simple casts when converting Vehicle to specialised vehicle types. Includes safety check 15 years ago
rubidium 8d6dec5e72 (svn r16524) -Fix [FS#2963]: missing guards in the NoAI API making it possible to hit an assert in OpenTTD. 15 years ago
yexo 8dba8371e3 (svn r16522) -Fix [FS#2962]: possible assert in ai debug window when an AI was stopped an a human company took it's CompanyID 15 years ago
yexo a2c5c2651a (svn r16520) -Fix [NoAI]: Make sure AIBridge::BuildBridge returns what the documentation says it does (r16244 for AIBridge) 15 years ago
rubidium bb854f2b97 (svn r16510) -Doc: silence some (AI) doxygen warnings by adding comments about the appropriate things. 15 years ago
yexo 62a698df32 (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
15 years ago
rubidium f163217dbb (svn r16493) -Fix: missing/wrong @file doxygen 'headers' 15 years ago
alberth 580e478e4e (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 15 years ago
smatz 0c53f04c07 (svn r16441) -Codechange: new class SpecializedVehicle used as superclass for all vehicle types 15 years ago
yexo c04e5a9aa3 (svn r16440) -Fix [NoAI]: AIRail::GetRailStationDirection returned incorrect information 15 years ago
yexo 68042a6dde (svn r16433) -Codechange: Remove most of CmdSetAutoreplace and replace it with calls to CmdChangeCompanySetting 15 years ago
yexo de04ae2cda (svn r16425) -Change [FS#2869]: Stop an AI when it takes too long to initialize or load 15 years ago
rubidium c496a3e014 (svn r16421) -Codechange: do not unnecessarily remove constness or unnecessarily add it. 15 years ago
smatz 1eb48cdded (svn r16403) -Codechange: move code related to subsidies to separate file 15 years ago
yexo 2d8609080f (svn r16400) -Add [NoAI]: add AISignList that can be used to get a list of valid signs. This makes AISign::GetMaxSignID obsolete. 15 years ago
rubidium 6cfc38b97c (svn r16397) -Codechange: move GetVehicleOrder/GetLastVehicleOrder into Vehicle 15 years ago
smatz 329407e9bc (svn r16395) -Fix (r16379): max sign ID can be higher than total number of signs 15 years ago
rubidium cd382b28a3 (svn r16394) -Codechange: move (NewGRF) cache variables into a separate struct so (some vehicle related) NewGRF cache 'desyncs' can be tested easier. 15 years ago
rubidium 4c0542c17f (svn r16393) -Codechange: move VehicleRail to Train. 15 years ago
rubidium 1324100d69 (svn r16391) -Codechange: use Train instead of Vehicle where appropriate. 15 years ago
rubidium 489253b630 (svn r16390) -Codechange: move u.road to RoadVehicle. 15 years ago
smatz d6e203ebe2 (svn r16379) -Codechange: remove GetNumTowns(), GetNumIndustries() and GetActiveCompanyCount(), use PoolItem::GetNumItems() instead 15 years ago
smatz 6636ed7589 (svn r16354) -Codechange: use 'new' pool accessors and methods for Engine too 15 years ago
smatz 512db5248e (svn r16352) -Codechange: use PoolItem::GetIfValid() instead of PoolItem::IsValidID() and PoolItem::Get() 15 years ago
smatz 05db91dc65 (svn r16349) -Codechange: rename IsPlainRailTile() to IsPlainRail(), introduce shiny new IsPlainRailTile() 15 years ago
rubidium f1955333c9 (svn r16332) -Codechange: replace some -1 + 1 with 'nothing' or <= .. - 1 with < .. - 1 (both caused due to wrapper functions) 15 years ago
smatz 0c10daa243 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 15 years ago
smatz cf986c3099 (svn r16326) -Codechange: replace GetPoolItemPoolSize() by PoolItem::GetPoolSize() 15 years ago
smatz d495dc5dbc (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 15 years ago
yexo d489f93473 (svn r16315) -Codechange: move the autorenew settings to a new CompanySettings struct 15 years ago
frosch 1205f02b43 (svn r16311) -Fix: (Get|Set)TrackBits() is only valid for RAIL_TILE_NORMAL and _SIGNALS. 15 years ago
frosch 41aec3d3c7 (svn r16267) -Documentation: [NoAI] Explain how to deal with IDs of various objects. 15 years ago
frosch 074569ca80 (svn r16266) -Documentation: [NoAI] Add details to AITile::(Raise|Lower)Tile wrt. modifiing multiple corners at once. 15 years ago
frosch cb66ca57c1 (svn r16264) -Change/Fix (r16262): [NoAI] Change SLOPE_INVALID to 0xFFFF so that SLOPE_INVALID != (SLOPE_ELEVATED | SLOPE_STEEP | SLOPE_HALFTILE_MASK). 15 years ago
yexo 2060b0b29a (svn r16262) -Fix [NoAI]: Check slopes passed to the API better for validity 15 years ago
yexo 6ced713033 (svn r16253) -Add [NoAI]: AIController::GetVersion, this returns the newgrf-version of OpenTTD 15 years ago
yexo 0ad4f31658 (svn r16252) -Add [NoAI]: AIAirport::GetPrice, returning the building cost of an airport 15 years ago
yexo f51d764fbd (svn r16249) -Fix [NoAI]: Enable parameter checking for AIController::* functions again 15 years ago
yexo cac5b8bf79 (svn r16244) -Fix [NoAI]: Make sure AITunnel::BuildTunnel returns what the documentation says it does 15 years ago
yexo eb162ef55d (svn r16243) -Fix [FS#2875]: CmdBuildTunnel could be called with invalid parameters from the api code, causing crashes later 15 years ago
yexo d0c22e5f46 (svn r16239) -Fix (r16199): Use the stop/non-stop intermediate orderflags AIs can give for goto-depot orders 15 years ago
frosch ac1b753f9a (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'.
15 years ago
yexo d1ab79a902 (svn r16174) -Fix (r16093) [FS#2863]: crash when starting a game/loading a game with no AIs available. 15 years ago
yexo 59a9d1eade (svn r16172) -Fix (r16171): typo (thanks SmatZ) 15 years ago
yexo 406e231634 (svn r16171) -Add [NoAI]: two new error codes to AITile: ERR_AREA_ALREADY_FLAT and ERR_ESCAVATION_WOULD_DAMAGE. 15 years ago
frosch 4f45dce1b5 (svn r16166) -Add [NoAI]: AITile::Get(Min|Max|Corner)Height 15 years ago
yexo e03736b304 (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.
15 years ago
rubidium 3bd4eeb178 (svn r16162) -Codechange: remove needless TC_ colours from DrawString when they are part of strings and add some colours to a few strings. 15 years ago
rubidium 650cb3694e (svn r16160) -Codechange: remove the need for explicit TC_FROMSTRING for DrawString. 15 years ago
yexo 65633e1a50 (svn r16158) -Codechange: fix the string alignment in all .hpp.sq files 15 years ago
yexo 46ba81964b (svn r16151) -Codechange: move some includes around to prevent including half the AI api in non-noai related code. 15 years ago
yexo 4444e48566 (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.
15 years ago
rubidium 27b831935f (svn r16149) -Fix [FS#2860]: when there's no AI and an AI is started... *boom* 15 years ago
rubidium 5c5b357043 (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. 15 years ago
rubidium e0e9a1b02e (svn r16114) -Cleanup: unify some more strings and remove some more unused strings 15 years ago
yexo a127ed11e1 (svn r16113) -Feature [NoAI]: Add UseAsRandomAI as function in info.nut. When an AI returns false, it'll never be chosen as random AI. 15 years ago
yexo cdfdd87286 (svn r16109) -Fix [NoAI]: Make sure AIOrder::GetDestination always returns a tile belonging to the station 15 years ago
yexo 66d95f6a66 (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).
15 years ago