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
16 years ago
yexo
c04e5a9aa3
(svn r16440) -Fix [NoAI]: AIRail::GetRailStationDirection returned incorrect information
16 years ago
yexo
68042a6dde
(svn r16433) -Codechange: Remove most of CmdSetAutoreplace and replace it with calls to CmdChangeCompanySetting
16 years ago
yexo
de04ae2cda
(svn r16425) -Change [FS#2869]: Stop an AI when it takes too long to initialize or load
16 years ago
rubidium
c496a3e014
(svn r16421) -Codechange: do not unnecessarily remove constness or unnecessarily add it.
16 years ago
smatz
1eb48cdded
(svn r16403) -Codechange: move code related to subsidies to separate file
16 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.
16 years ago
rubidium
6cfc38b97c
(svn r16397) -Codechange: move GetVehicleOrder/GetLastVehicleOrder into Vehicle
16 years ago
smatz
329407e9bc
(svn r16395) -Fix (r16379): max sign ID can be higher than total number of signs
16 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.
16 years ago
rubidium
4c0542c17f
(svn r16393) -Codechange: move VehicleRail to Train.
16 years ago
rubidium
1324100d69
(svn r16391) -Codechange: use Train instead of Vehicle where appropriate.
16 years ago
rubidium
489253b630
(svn r16390) -Codechange: move u.road to RoadVehicle.
16 years ago
smatz
d6e203ebe2
(svn r16379) -Codechange: remove GetNumTowns(), GetNumIndustries() and GetActiveCompanyCount(), use PoolItem::GetNumItems() instead
16 years ago
smatz
6636ed7589
(svn r16354) -Codechange: use 'new' pool accessors and methods for Engine too
16 years ago
smatz
512db5248e
(svn r16352) -Codechange: use PoolItem::GetIfValid() instead of PoolItem::IsValidID() and PoolItem::Get()
16 years ago
smatz
05db91dc65
(svn r16349) -Codechange: rename IsPlainRailTile() to IsPlainRail(), introduce shiny new IsPlainRailTile()
16 years ago
rubidium
f1955333c9
(svn r16332) -Codechange: replace some -1 + 1 with 'nothing' or <= .. - 1 with < .. - 1 (both caused due to wrapper functions)
16 years ago
smatz
0c10daa243
(svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index)
16 years ago
smatz
cf986c3099
(svn r16326) -Codechange: replace GetPoolItemPoolSize() by PoolItem::GetPoolSize()
16 years ago
smatz
d495dc5dbc
(svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index)
16 years ago
yexo
d489f93473
(svn r16315) -Codechange: move the autorenew settings to a new CompanySettings struct
16 years ago
frosch
1205f02b43
(svn r16311) -Fix: (Get|Set)TrackBits() is only valid for RAIL_TILE_NORMAL and _SIGNALS.
16 years ago
frosch
41aec3d3c7
(svn r16267) -Documentation: [NoAI] Explain how to deal with IDs of various objects.
16 years ago
frosch
074569ca80
(svn r16266) -Documentation: [NoAI] Add details to AITile::(Raise|Lower)Tile wrt. modifiing multiple corners at once.
16 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).
16 years ago
yexo
2060b0b29a
(svn r16262) -Fix [NoAI]: Check slopes passed to the API better for validity
16 years ago
yexo
6ced713033
(svn r16253) -Add [NoAI]: AIController::GetVersion, this returns the newgrf-version of OpenTTD
16 years ago
yexo
0ad4f31658
(svn r16252) -Add [NoAI]: AIAirport::GetPrice, returning the building cost of an airport
16 years ago
yexo
f51d764fbd
(svn r16249) -Fix [NoAI]: Enable parameter checking for AIController::* functions again
16 years ago
yexo
cac5b8bf79
(svn r16244) -Fix [NoAI]: Make sure AITunnel::BuildTunnel returns what the documentation says it does
16 years ago
yexo
eb162ef55d
(svn r16243) -Fix [FS#2875]: CmdBuildTunnel could be called with invalid parameters from the api code, causing crashes later
16 years ago
yexo
d0c22e5f46
(svn r16239) -Fix (r16199): Use the stop/non-stop intermediate orderflags AIs can give for goto-depot orders
16 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'.
16 years ago
yexo
d1ab79a902
(svn r16174) -Fix (r16093) [FS#2863]: crash when starting a game/loading a game with no AIs available.
16 years ago
yexo
59a9d1eade
(svn r16172) -Fix (r16171): typo (thanks SmatZ)
16 years ago
yexo
406e231634
(svn r16171) -Add [NoAI]: two new error codes to AITile: ERR_AREA_ALREADY_FLAT and ERR_ESCAVATION_WOULD_DAMAGE.
16 years ago
frosch
4f45dce1b5
(svn r16166) -Add [NoAI]: AITile::Get(Min|Max|Corner)Height
16 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.
16 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.
16 years ago
rubidium
650cb3694e
(svn r16160) -Codechange: remove the need for explicit TC_FROMSTRING for DrawString.
16 years ago
yexo
65633e1a50
(svn r16158) -Codechange: fix the string alignment in all .hpp.sq files
16 years ago
yexo
46ba81964b
(svn r16151) -Codechange: move some includes around to prevent including half the AI api in non-noai related code.
16 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.
16 years ago
rubidium
27b831935f
(svn r16149) -Fix [FS#2860]: when there's no AI and an AI is started... *boom*
16 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.
16 years ago
rubidium
e0e9a1b02e
(svn r16114) -Cleanup: unify some more strings and remove some more unused strings
16 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.
16 years ago
yexo
cdfdd87286
(svn r16109) -Fix [NoAI]: Make sure AIOrder::GetDestination always returns a tile belonging to the station
16 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).
16 years ago
yexo
cf6adbfe4f
(svn r16107) -Add [NoAI]: AIOF_STOP_IN_DEPOT to the orderflags in AIOrder to allow stop-in-depot orders
16 years ago
yexo
7d9549ffd3
(svn r16106) -Fix [NoAI]: AIOrder::SetOrderFlags always removed "Service if needed" from goto-depot orders.
16 years ago
frosch
ff8e25a748
(svn r16094) -Fix: AIDebug window profiled the blitters by invalidating itself unconditionally on repaint. OTOH it was not invalidated in other cases when needed.
16 years ago
yexo
f96429a494
(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.
16 years ago
yexo
a1af08f4d3
(svn r16091) -Change [FS#2778]: Reverse the order of the lines in the AI debug window
16 years ago
frosch
8501c74b94
(svn r16062) -Fix (r16037): AIOrder::InsertOrder was broken. Default all AI orders to 'stop at far end'.
16 years ago
rubidium
11e2ca71e6
(svn r16024) -Codechange: harden string copying on places where it's possible
16 years ago
yexo
058477ed89
(svn r15910) -Fix [FS#2777]: Clarify that TILE_INVALID is part of AIMap make doxygen output some documentation for it.
16 years ago
frosch
c1fec40b1a
(svn r15901) -Add: AIIndustryType::IsBuiltOnWater(), HasHeliport() and HasDock(). Just like AIIndustry.
16 years ago
alberth
bbd546b792
(svn r15885) -Codechange: Removed new_size parameter of Window::OnResize() callback
16 years ago
yexo
9fd6956496
(svn r15881) -Fix (r15875): add an explicit cast so some compilers stop complaining.
16 years ago
yexo
a0388f85a3
(svn r15875) -Add: AIBridge::GetBridgeID() so AIs can get the type of bridge that are already build.
16 years ago
frosch
779a9f4e24
(svn r15860) -Add: AIRoad::GetRoadVehicleTypeForCargo() to tell whether a certain cargo needs a bus- or a truckstop.
16 years ago
frosch
6f15901769
(svn r15859) -Documentation: Meaning of AICargo::CC_PASSENGERS wrt. bus- and truckstops, and meaning of AICargo::IsFreight() wrt. freight train weight multiplier.
16 years ago
yexo
3659cd168e
(svn r15852) -Codechange: New widgets for the AI windows.
16 years ago
rubidium
e1ca9bbeed
(svn r15844) -Codechange: allow text alignment to be forced so the console and ai debug output don't get swapped (those are untranslateable anyways)
16 years ago
yexo
8b873859ba
(svn r15835) -Codechange: Prevent using the return value of DrawString as much as possible.
16 years ago
rubidium
44e2b242cd
(svn r15811) -Fix: left != right and as a result of that the ai debug window was kinda empty.
16 years ago
rubidium
0cae096d2d
(svn r15806) -Codechange: pass both left and right to the vehicle details drawing functions instead of only the left.
16 years ago
rubidium
dcd5ad8b19
(svn r15797) -Codechange: make users of the old DrawStringMultiLine use the new one.
16 years ago
frosch
25b70e8c0d
(svn r15789) -Codechange: Add DiagdirBetweenTiles() and use it.
16 years ago
rubidium
c1aabd9842
(svn r15785) -Codechange: remove the *Truncated part of the old text drawing API.
16 years ago
yexo
be3d672d3a
(svn r15781) -Fix [NoAI]: Missing "AIs" in the information the debug AI prints.
16 years ago
yexo
4b8d1a58a2
(svn r15774) -Fix (r15708): Don't show the message about reporting an AI crash for the dummy AI.
16 years ago
frosch
c297a99eff
(svn r15763) -Codechange/Fix: Add Engine::GetDisplayDefaultCapacity() and use it everywhere, so CB 36 is also used everywhere.
16 years ago
yexo
cd73406b9c
(svn r15743) -Codechange: move the definitions of some fake squirrel types to their own file.
16 years ago
yexo
b4fb14693a
(svn r15742) -Fix (r15736): AIs with an invalid info.nut weren't ignored anymore.
16 years ago
yexo
d02548b204
(svn r15736) -Codechange: Split AIScanner/AIFileInfo to the more generic classes ScriptScanner/ScriptFileInfo.
16 years ago
rubidium
7f468dc142
(svn r15723) -Codechange: use a constructor for WindowDescs as that makes expanding them much easier (Alberth)
16 years ago
rubidium
51b285233f
(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
16 years ago
rubidium
c3e87f345d
(svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too
16 years ago
yexo
6fe181ae64
(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.
16 years ago
rubidium
f3e0fd7416
(svn r15711) -Codechange: lots of whitespace cleanup/fixes
16 years ago
yexo
473cc5076a
(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.
16 years ago
frosch
f35e00844c
(svn r15705) -Fix: Do not show passenger-/mail-capacity if the aircraft carries only cargo.
16 years ago
yexo
21daa3fbc9
(svn r15684) -Add [NoAI]: AIOrder::SkipToOrder().
16 years ago
yexo
28c49b694a
(svn r15668) -Fix: a few typos.
16 years ago
yexo
4a6a30cc52
(svn r15658) -Fix [NoAI]: Rewrite AIAbstractList::Valuate to make it more readable and fix a crash if no parameters are given to that function.
16 years ago
truebrain
6f9cb26000
(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!)
16 years ago
yexo
76c0f51cf5
(svn r15630) -Fix (r15027): Make sure OpenTTD loads the dummy AI script when no other AI is available instead of a non-existing file.
16 years ago
yexo
0860685417
(svn r15616) -Change [API CHANGE]: Rename AIOrder::ChangeOrder() to AIOrder::SetOrderFlags().
16 years ago
yexo
89fc2b2b08
(svn r15614) -Add [NoAI]: AIVehicleList_Group(group_id) and AIVehicleList_DefaultGroup(vehicle_type).
16 years ago
yexo
1362d2c16b
(svn r15587) -Fix (r15345): I should really test even those simple api functions better.
16 years ago
yexo
11ce4538b4
(svn r15563) -Change [API CHANGE]: Remove AIIndustry::GetMaxIndustryID().
16 years ago
yexo
c144d8fa90
(svn r15562) -Change: Use GetName() to determine the unique AI name instead of GetInstanceName() to make branching of AIs easier.
16 years ago
yexo
301dcb6dc4
(svn r15558) -Cleanup: Remove some unnecessary friend declarations.
16 years ago
frosch
abe4692da2
(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.
16 years ago
yexo
598d20eedc
(svn r15538) -Fix (r15334): The difficulty level wasn't set to custom when changing the amount of towns/industries from the newgame gui.
16 years ago
glx
85ea21a5d0
(svn r15535) -Fix (r15460, pre noai merge): use '.' as 'any' for squirrel calls typechecking as stated in squirrel docs
16 years ago
yexo
d9caae1635
(svn r15530) -Fix (r15519): The AIWaypoint classes were not exported to squirrel.
16 years ago
yexo
14f6bd6ce1
(svn r15527) -Fix (r15526): A ')' too much.
16 years ago
yexo
05856bf05f
(svn r15526) -Add [NoAI]: Support for conditional orders.
16 years ago
yexo
157bf66b01
(svn r15524) -Add [NoAI]: AIEngine::GetPower, AIEngine::GetWeight and AIEngine::GetMaxTractiveEffort.
16 years ago
yexo
9a507acf37
(svn r15520) -Cleanup [NoAI]: Fix some typos, unify the comment style and update some documentation since a few enums have been renamed.
16 years ago
yexo
69df9f2787
(svn r15519) -Add [NoAI]: support for waypoints by adding AIRail::Build/Remove RailWaypoint, AIWaypoint and AIWaypointList.
16 years ago
yexo
a6350c0287
(svn r15494) -Change [API CHANGE]: Split AIRoad::BuildRoadStation in BuildRoadStation and BuildDriveThroughRoadStation.
16 years ago
yexo
fa0cf4bbd1
(svn r15492) -Change [API CHANGE]: Split AIVehicle::MoveWagon in MoveWagon and MoveWagonChain (frosch).
16 years ago
yexo
c59caa45b7
(svn r15491) -Change [API CHANGE]: AIMarine::BuildWaterDepot now accepts a front tile instead of a bool is_vertical (frosch).
16 years ago
yexo
d8de2d1413
(svn r15490) -Change [API CHANGE]: Remove AIBridge::GetYearAvailable. AIBridge::IsValidBridge now only returns true for available bridges.
16 years ago
yexo
e7eb6d05a0
(svn r15489) -Change [API CHANGE]: Remove AIAirport::AirportAvailable. AIAirport::IsValidAirportType now only returns true for available AirportTypes.
16 years ago
yexo
8583274f18
(svn r15488) -Change [API CHANGE]: Add support for distant-join stations.
16 years ago
yexo
a79524c805
(svn r15487) -Change [API CHANGE]: Remove the never implemented function AIEventVehicleCrashed::CloneCrashedVehicle.
16 years ago
yexo
320018aac1
(svn r15486) -Change [API CHANGE]: Remove AITown::GetMaxTownID.
16 years ago
yexo
f20378dcf7
(svn r15485) -Change [API CHANGE]: Split AIIndustry::HasHeliportAndDock and GetHeliportAndDockLocation in HasHeliport/HasDock and GetHeliportLocation/GetDockLocation.
16 years ago
yexo
efc8a034b1
(svn r15484) -Change [API CHANGE]: Remove AICompany::GetCompanyName and SetCompanyName. They've been replaced with GetName and SetName.
16 years ago
yexo
8bb601f8ae
(svn r15483) -Change [API CHANGE]: Remove AIIndustry::GetProduction, use AIIndustry::GetLastMonthProduction instead.
16 years ago
yexo
d0895a65ce
(svn r15482) -Fix [NoAI]: Typos in api docs.
16 years ago
yexo
8e75f5244c
(svn r15481) -Fix [NoAI]: Make sure AIs can't call functions they shouldn't call.
16 years ago
frosch
de9c91ecee
(svn r15479) -Fix: Documentation of AIIndustryType::CanBuildIndustry().
16 years ago
yexo
6f163ad8c9
(svn r15470) -Fix [NoAI]: Check the types of the parameters passed to AddSetting, AddLabels and RegisterAI.
16 years ago
yexo
3e53890348
(svn r15467) -Fix [NoAI]: AIs with an error in their info.nut are no longer available in-game.
16 years ago
yexo
8370da7a33
(svn r15466) -Fix (r15330): The squirrel instance object was freed twice if an info.nut failed to compile.
16 years ago
smatz
232d21df13
(svn r15465) -Codechange: constify most of AIInfo/AIFileInfo methods, move definition of very simple getters to header file
16 years ago
yexo
312e57df5f
(svn r15464) -Codechange [NoAI]: Call all info.nut functions exactly once and only during initialization.
16 years ago
yexo
8eecd774ff
(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.
16 years ago
yexo
526edf35a5
(svn r15462) -Change [NoAI]: Make AIController::GetTick() and AIController::GetSetting() static functions.
...
-Fix (r15460): ai_controller.hpp.sq was forgotten.
16 years ago
rubidium
0111a10d7a
(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.
16 years ago
yexo
ec9d949434
(svn r15441) -Cleanup: Use a return value instead of passing a pointer to where the result should be stored.
16 years ago
yexo
8ef2024b96
(svn r15440) -Fix: Backup AIObject::GetAllowDoCommand and restore the old value so AIs can't work around it.
16 years ago
peter1138
4b1728079c
(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...
16 years ago
rubidium
89e1afdaa0
(svn r15428) -Codechange: consistently use colour instead of having both color and colour.
16 years ago
rubidium
a7693c6059
(svn r15425) -Codechange: some color->colour changes and type safety.
16 years ago
rubidium
283b3d16ab
(svn r15410) -Cleanup: get rid of most of the references to the 'patches' except where it's used for backward compatability.
16 years ago
Yexo
1fbb8d3ac3
(svn r15408) -Fix (r15027): AIs could call AIController::Sleep() at times they're not allowed to sleep.
16 years ago
rubidium
2a66e934b8
(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.
16 years ago
smatz
487b0ed95e
(svn r15401) -Fix [FS#2619](r15027): AI::Stop changed _current_company, but didn't restore its original value
16 years ago
frosch
f1240daed6
(svn r15400) -Fix: Typos in comments.
16 years ago
rubidium
5b74baa9be
(svn r15368) -Fix: some typos in comments
16 years ago
Yexo
72643f2090
(svn r15366) -Add [NoAI]: Add AddLabels() where you can define labels for the values of the settings in info.nut
16 years ago
frosch
d526d1f70d
(svn r15360) -Fix: Flooding vehicles did not trigger an AI event.
16 years ago
frosch
d5a6fcce54
(svn r15359) -Add [NoAI]: AIEventVehicleCrashed::CRASH_RV_UFO, AIEventDisasterZeppelinerCrashed and AIEventDisasterZeppelinerCleared as aliens accepted NoAIs as competing life-form.
16 years ago
frosch
f6fa77d5f9
(svn r15358) -Add [NoAI]: AIEventVehicleCrashed::GetCrashReason()
16 years ago
rubidium
580f6fcbab
(svn r15355) -Codechange: simplify some stuff now ->FirstShared returns non-NULL again.
16 years ago
Yexo
96f279608b
(svn r15346) -Add [NoAI]: Add AIAirport::GetNearestTown() so AIs can known in which town the noise level will increase.
16 years ago
Yexo
8f51ee50c1
(svn r15345) -Add [NoAI]: Add AIVehicle::HasSharedOrders() and AIVehicleList_SharedOrders.
16 years ago
Yexo
70a38e8a60
(svn r15343) -Add [NoAI]: Add AITown::GetRoadLayout so AIs can get the road layout per town.
16 years ago
rubidium
2eebb52592
(svn r15330) -Fix [FS#2597]: leaking of Squirrel when using circular references (by enabling the GC).
16 years ago
Yexo
e628c5360d
(svn r15328) -Fix (r15327): Load(data, version) was called instead of Load(version, data).
16 years ago
Yexo
9569bb12f3
(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.
16 years ago
smatz
16d1904e70
(svn r15324) -Codechange: unify the class used for comparing of strings for std::map
16 years ago
Yexo
ef320e3f0c
(svn r15322) -Fix (r15175): The AI list window didn't display information about the selected AI if it wasn't visible.
16 years ago
frosch
61a893d6fd
(svn r15308) -Codechange: Deduplicate km-ish/h -> mph conversions.
16 years ago
frosch
be395d0f3d
(svn r15307) -Fix: AIVehicle::GetCurrentSpeed() should also use km-ish/h instead of mph. (Documentation by Rubidium)
16 years ago
frosch
9c2ba4f96a
(svn r15306) -Codechange: Deduplicate code by adding Engine::GetDisplayMaxSpeed(), GetPower() and GetDisplayWeight(). (and using them)
16 years ago
smatz
9021c20b5e
(svn r15299) -Cleanup: remove many redundant includes
16 years ago
Yexo
283a265d8a
(svn r15284) -Fix [FS#2582] (r15045): Parameters were popped from the squirrel stack twice.
16 years ago
smatz
4eff39a54c
(svn r15278) -Fix [FS#2332]: test noise limit of nearest town instead of st->town
16 years ago
Yexo
c8a4bf862b
(svn r15277) -Fix (r15027): Building bridges in AITestMode always returned false.
16 years ago
glx
53fe1afa1f
(svn r15270) -Change [API CHANGE]: remove AIEventTest
16 years ago
glx
470da22ac3
(svn r15263) -Codechange: added Engine::GetCost() to remove some code duplication.
16 years ago
frosch
512cc98b35
(svn r15262) -Fix: AIEvents were not freed, when they were not queued for any AI.
16 years ago
glx
9b73303b4d
(svn r15261) -Add: added Engine::GetRunningCost() to remove some code duplication. Also stops AIs decrementing vehicle counter of first company
16 years ago
frosch
7120b2455a
(svn r15255) -Fix (r15027): AIVehicle::GetLength() returned only the length of the first part of articulated road vehicles.
16 years ago
frosch
8be4bc3d1e
(svn r15252) -Fix (r15027): AIMarine::AreWaterTilesConnected() reported aqueducts being connected with all surrounding tiles. Also add some type safety.
16 years ago
frosch
2eb5af3bb8
(svn r15244) -Fix (r15027): The station tile of an oilrig-like industry is not neccessarily the first industry tile.
16 years ago
frosch
ac7883fe93
(svn r15241) -Fix (r15027): NoAI API was not aware of certain newindustries 'features'.
16 years ago
glx
205289cf9d
(svn r15228) -Fix [FS#2571]: possible crash when an AI/Library doesn't have a required function
16 years ago
glx
6301d1cc0a
(svn r15226) -Fix (r15214): broken AI content download
16 years ago
rubidium
80e59f375f
(svn r15215) -Fix: various MSVC x64 compiler warnings
16 years ago
glx
7809b7ef0e
(svn r15214) -Fix [NoAI]: ignore case for ai/library main script path on windows
16 years ago
glx
e30d391345
(svn r15191) -Fix (r15188): -1 is not a bool (MSVC warning)
16 years ago
Yexo
e3c69b7c4e
(svn r15190) -Feature: Allow terraforming of the tiles at the edges of the map.
16 years ago
Yexo
7b009c3586
(svn r15188) -Feature: You can now change the number of AIs from the AI config window.
16 years ago
Yexo
dcdb771c40
(svn r15187) -Fix: assert when an AI called AIRoad::GetNeighbourRoadCount on a tile at the north edge (bug found by SmatZ).
16 years ago
Yexo
9fd38d1022
(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.
16 years ago
Yexo
78c857422b
(svn r15185) -Fix (r15175): It was impossible to select AIs that had a different instance name then their name.
16 years ago
glx
11fe4bcc56
(svn r15184) -Cleanup: remove extra spaces
16 years ago
Yexo
aaa8be9a3f
(svn r15182) -Fix: After updating an AI select the latest version for the next game.
16 years ago
Yexo
593f380462
(svn r15175) -Feature: Add the option to select the AIs to start in a new game and configure them via the gui.
16 years ago
Yexo
1f5b8c97df
(svn r15171) -Fix (r15027): Buffer underflow in case there are no settings to save for an AI.
16 years ago
peter1138
b85389dca5
(svn r15149) -Codechange: GetMaskOfTownActions() is used by a Cmd handler, therefore it does not belong in _gui.
16 years ago
rubidium
a0e24cc6c9
(svn r15139) -Fix [NoAI]: a wrong tile got returned for hangar tiles when the station sign isn't over st->airport_tile.
16 years ago
peter1138
6644fa86ee
(svn r15133) -Fix: Crash if no NoAIs are present.
16 years ago
rubidium
72b0341ed0
(svn r15126) -Feature: downloading content from a central server (content.openttd.org) where authors can upload they NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from in the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates.
16 years ago
truebrain
fac5cee3d3
(svn r15124) -Fix: last memory leak related to NoAI
16 years ago
truebrain
eb0d82ada0
(svn r15123) -Fix [NoAI]: 'const char *' implies that the return value should not be free'd, which is should .. so make them 'char *'
16 years ago
truebrain
ef75a7af90
(svn r15122) -Codechange: add a security assert, to make sure something never happens
16 years ago
truebrain
002427eab9
(svn r15121) -Fix: more mem-leak fixes (this should make SmatZ so happy ;) :p)
16 years ago
truebrain
8cbf156252
(svn r15120) -Fix: more mem-leak fixes
16 years ago
truebrain
d790884ee6
(svn r15118) -Fix: fix a minor mem-leak
16 years ago
truebrain
dec721ca6f
(svn r15109) -Add [NoAI]: add AITile::LevelTiles (Yexo)
16 years ago
truebrain
f5e0590c09
(svn r15107) -Fix [NoAI]: don't use so much explicit string copies if it is not required
16 years ago
rubidium
65ae906940
(svn r15106) -Fix [NoAI]: printf-ing of garbage.
16 years ago
truebrain
cafff6eb60
(svn r15102) -Fix (r15101): somehow makedepend fucked up (patch by Yexo)
16 years ago
truebrain
bd520ca562
(svn r15101) -Change [API CHANGE]: more consistant naming for consts:
...
INVALID_TOWN_RATING -> TOWN_RATING_INVALID
INVALID_TRANSPORT -> TRANSPORT_INVALID
INVALID_ORDER -> ORDER_INVALID
INVALID_GROUP -> GROUP_INVALID
GROUP_ALL/DEFAULT -> ALL/DEFAULT_GROUP
VEHICLE_RAIL/ROAD/.. -> VT_RAIL/ROAD/..
MY_COMPANY -> COMPANY_SELF
FIRST/LAST/INVALID_COMPANY -> COMPANY_FIRST/LAST/INVALID
16 years ago
truebrain
b9ebab0e5d
(svn r15100) -Add [NoAI]: introduce TILE_INVALID as const
16 years ago
truebrain
1cd56af6da
(svn r15099) -Fix (r15078): GetTileIndex(0, -1) is perfectly fine
16 years ago
truebrain
91c7cba05b
(svn r15096) -Fix [NoAI]: free memory when no longer needed
...
-Fix [NoAI]: when there are multiple versions of one AI, never randonly pick an older one, but always the latest
16 years ago
truebrain
e436f0218f
(svn r15095) -Add [NoAI]: allow AI Libraries to be in .tar files (subdir required, as with AIs
...
-Add [NoAI]: allow multiple versions of the same AI co-exist
-Change [NoAI]: updated the whole method of AI (Library) finding and loading; it is now much more clear and transparent
-Change [NoAI]: the name of the AI is now the name used by CreateInstance()
-Change [NoAI]: make the AI finder a bit more clever, mostly related to version finding
16 years ago
truebrain
fe7997e95f
(svn r15093) -Fix [NoAI]: check if a tile is valid before using IsTileType (bug found by Zuu, patch by Yexo)
16 years ago
truebrain
ae5c8a8b35
(svn r15091) -Add [NoAI] [API CHANGE]: introduce GetCategory() as a requirement for every library.nut, to indicate in which category it belongs. Currently the directory indicates the category, but this doesn't allow planned future additions
16 years ago
truebrain
e84138af22
(svn r15090) -Add [NoAI] [API CHANGE]: info.nut/library.nut now requires a function GetShortName(), which should return a 4 (four) character string, unique throughout the world. This id is simular to a GRFid.
16 years ago
truebrain
1e1cdd01b4
(svn r15086) -Fix: start AIs after 6 months on hard, 12 months on medium, and 24 months on easy. The current values were a bit .. too long waiting period ;)
16 years ago
truebrain
61093eb211
(svn r15084) -Fix [NoAI] (r15027): by removing the threads for NoAIs, it is no longer possible to use DoCommand (even indirect) in AIAbstractList::Valuator().
16 years ago
rubidium
eb19b0abf9
(svn r15082) -Codechange: make the AI library path also a searchdir instead of manually manufacturing it into a searchdir.
16 years ago
truebrain
9724a986c8
(svn r15078) -Fix [NoAI]: AIMap didn't filter its input (Yexo)
16 years ago
smatz
ca45774160
(svn r15077) -Codechange: enumify DAYS_IN_YEAR and DAYS_IN_LEAP_YEAR
...
-Change: when computing daily running cost, divide by 365 (instead of 364). Since r12134, the rounding errors don't need this correction anymore
16 years ago
truebrain
5b4da28594
(svn r15076) -Fix: a start_date of 0 would never start an AI .. so don't allow it (Yexo)
16 years ago
truebrain
d5a599f5e5
(svn r15074) -Fix: make Rubidium happy
16 years ago
peter1138
4585d9785d
(svn r15073) -Fix (r15067) [FS#2532]: Default copy constructors don't necessarily do what you want. Instead of creating one, we now pass a pointer around as that avoids additional allocations.
16 years ago
truebrain
ec4bdfe611
(svn r15068) -Add [NoAI]: introducing 'step_size' for AIConfig, for future AIGUI (Yexo)
16 years ago
peter1138
afb94c252d
(svn r15067) -Fix [FS#2531]: Possible compiler bug, alleviated by using SmallVector instead of using std::set. SmallVector does everything needed anyway.
16 years ago
truebrain
f293bff01b
(svn r15066) -Change: start_date is now in days, instead of in months (Yexo)
16 years ago
truebrain
39cec4c65f
(svn r15063) -Fix [NoAI]: starting companies now listen correctly to 'start_date' set to the AI slot (Yexo)
...
-Add [NoAI]: add a 'deviation' value for all settings, giving a slight deviation of the value of a setting (Yexo)
16 years ago
smatz
638411c087
(svn r15062) -Fix: further forgotten svn properties and headers
16 years ago
smatz
c30ce23866
(svn r15061) -Fix (r15027): three files were missing the Id header
16 years ago
truebrain
ee17e1e7b8
(svn r15059) -Add [NoAI]: use 'start_date' from the AI configure to see when an AI should start next
16 years ago
truebrain
bf1acb6772
(svn r15057) -Fix [NoAI]: clamp the values of a setting between the ones allowed by info.nut
16 years ago
truebrain
f29941a043
(svn r15056) -Add [NoAI]: when starting a game, give a random value to the setting marked with AICONFIG_RANDOM (Yexo)
16 years ago
truebrain
53d28d24b5
(svn r15055) -Add [NoAI]: add the AICONFIG_RANDOM and AICONFIG_BOOLEAN consts (Yexo)
16 years ago
glx
55db451a32
(svn r15049) -Fix (r15045): MSVC performance warning
16 years ago
truebrain
81157e3d91
(svn r15048) -Fix (r15047): the one time you don't compile a patch of someone, it contains a warning .. ;)
16 years ago
truebrain
08591d8643
(svn r15047) -Fix [NoAI]: AICONFIG_BOOLEAN (in AddSetting) doesn't require (or even allow) a min/max setting .. it is always 0/1 (Yexo)
16 years ago
truebrain
75b8afc136
(svn r15046) -Fix (r15045): in case CanLoadFromRevision does not exist, only allow savedata from the same version as we are now
16 years ago
truebrain
5573d9a459
(svn r15045) -Add [NoAI API CHANGE]: in info.nut you can now have (optional) a CanLoadFromVersion(version), which should return true/false, to indicate if you can load a savegame made with your AI of version 'version'
...
-Add [NoAI API CHANGE]: in main.nut the Load() function now should be Load(version, data), where 'version' is the version of your AI which made the savegame
-Codechange [NoAI]: various of function renames to make things more sane
-Add [NoAI]: push the 'version' of the AI through various of layers
-Codechange [NoAI]: various of code cleanups
-Add [NoAI]: store the version of the AI in the savegame too
16 years ago
truebrain
27c0a4c801
(svn r15044) -Add [NoAI]: AIConfig::GetVersion(), to get the version of the current AI
16 years ago
truebrain
c8f9cbca53
(svn r15042) -Fix (r15027): don't leak memory in AIInfo (Yexo)
16 years ago
truebrain
03725c057f
(svn r15036) -Fix: use the same value for 'random' through-out the code for PlantTree
16 years ago
truebrain
dcae208dfe
(svn r15033) -Fix (r15027): silent a warning when compiling without network
16 years ago
truebrain
c2406cd42d
(svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
...
NoAI is an API (a framework) to build your own AIs in. See:
http://wiki.openttd.org/wiki/index.php/AI:Main_Page
With many thanks to:
- glx and Rubidium for their syncing, feedback and hard work
- Yexo for his feedback, patches, and AIs which tested the system very deep
- Morloth for his feedback and patches
- TJIP for hosting a challenge which kept NoAI on track
- All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
16 years ago
frosch
0c23420998
(svn r14991) -Fix: Command-flags is an uint32.
16 years ago
rubidium
28ea38ae55
(svn r14949) -Cleanup: pointer coding style
16 years ago
rubidium
c0e7434f38
(svn r14944) -Cleanup: add spaces around some operators
16 years ago
rubidium
7a5798695d
(svn r14919) -Feature: distant joining of stations (Frostregen and PhilSophus)
16 years ago
glx
c61674221c
(svn r14840) -Cleanup: remove duplicate includes
16 years ago
smatz
91233ea596
(svn r14828) -Codechange: move most of save/load-specific code to separate files
16 years ago
smatz
cd88a7590a
(svn r14812) -Codechange: use INVALID_TILE instead of 0 to mark company without HQ
16 years ago
rubidium
e83cca7d13
(svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter.
16 years ago
smatz
c88a6199a7
(svn r14743) -Codechange: use INVALID_TILE to indicate station doesn't have queried facility (or station/roadstop is invalid) instead of 0 (Yexo)
16 years ago
smatz
8a06e67067
(svn r14734) -Codechange: type of bankrupt_asked is CompanyMask, not byte
16 years ago
frosch
ee9fc4e49b
(svn r14707) -Cleanup: Replace an 'int' by 'Trackdir'.
16 years ago
smatz
82ef029f41
(svn r14693) -Codechange: replace one check in old AI (probably typo, but the effect was the same) (Yexo)
16 years ago
michi_cc
9c6541c80b
(svn r14504) -Cleanup: Use the right variable type for tile offsets.
16 years ago
rubidium
b5e467978b
(svn r14464) -Codechange: replace (uint)-1 with UINT_MAX (PhilSophus)
16 years ago
smatz
b2852f88fb
(svn r14448) -Codechange [FS#2328]: rename a few variables (based on a patch by planetmaker)
16 years ago
rubidium
e589c7e580
(svn r14422) -Codechange: also reflect the changes of r14421 in the filenames.
16 years ago
rubidium
f56e630e5c
(svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with.
16 years ago
frosch
e10127f032
(svn r14335) -Codechange: Remove some magic numbers.
16 years ago
belugas
de43d17a82
(svn r14169) -Codechange: rename location_of_house for location_of_HQ, which is more exact and less subject to interpretation
16 years ago
belugas
9506434539
(svn r14105) -Fix: Some typos that are more grammatical errors, as it seems.
...
Provided by ln
I've added a little fix on currency.cpp too, why not :)
16 years ago
frosch
c8e699cc35
(svn r14076) -Codechange: Merge the four start/stop commands into a single CMD_START_STOP_VEHICLE.
16 years ago
rubidium
688267ad52
(svn r14062) -Fix [FS#2226]: division by 0 in newai.
16 years ago
rubidium
1ef65c329e
(svn r13999) -Fix [FS#2190]: crash when the AI tries to find the depot of an airport that doesn't have a depot.
16 years ago
rubidium
4396b7c68c
(svn r13809) -Fix: memory leak each time a "new ai" got (re)started.
16 years ago
rubidium
cde65455ac
(svn r13731) -Codechange: make a pool of the array of players.
16 years ago
rubidium
6898a76c5f
(svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool.
16 years ago
rubidium
e7a501100a
(svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
17 years ago
rubidium
d289464d69
(svn r13255) -Codechange: move _opt to _settings.
17 years ago
rubidium
dc77647ea4
(svn r13251) -Codechange: rename _patches to _settings as that is more logic.
...
-Codechange: move all Settings into substructs of _settings in a way that they are logically grouped.
17 years ago
frosch
8f104a2e97
(svn r13233) -Fix: Replace some (incorrect) evaluations of TileOwner by RoadOwner.
...
-Fix: Before evaluating RoadOwner, check if the roadtype is present.
-Fix: Some places assumed that MP_ROAD means normal street.
17 years ago
smatz
8841f3be40
(svn r13222) -Change: allow old AI building helistations and helidepots for oil rig routes
17 years ago
smatz
9e2490abb2
(svn r13221) -Fix (r8747): old AI failed to build oil rig routes
17 years ago
smatz
baeb6e5395
(svn r13217) -Fix: old AI was building small airports in years when they were not available in original game, causing small planes and helis everywhere
17 years ago
smatz
2be223fc03
(svn r13090) -Codechange: add functions for direct conversion from DiagDirection to Track and Trackbits
17 years ago
rubidium
1ce0b03bf0
(svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description.
17 years ago
peter1138
45034bc522
(svn r12924) -Feature: Introducing the so called 'engine pool' which primarily removes the fixed engine type limits and also happens to allow (with the patch option 'dynamic_engines') multiple NewGRF vehicle sets to coexist.
17 years ago
rubidium
f4b07a78c4
(svn r12762) -Fix: tabs after the first non-tab character are generally not okay (or lines starting with a space and then tabs).
17 years ago
rubidium
ca1f8fbe2e
(svn r12761) -Codechange: lots of minor whitespace coding style fixes around operators.
17 years ago
rubidium
6d063c3ad6
(svn r12754) -Codechange: split depot.h into depot_map.h, depot_func.h and depot_base.h and remove quite a lot of unneeded (before this) includes of depot.h.
17 years ago
smatz
ec588da9e8
(svn r12753) -Codechange: do not use IsDepotTypeTile() where simpler function can be used
17 years ago
smatz
966e476df8
(svn r12745) -Codechange: a bit of naming conventions, introduce Is*DepotTile()
17 years ago
rubidium
973997e896
(svn r12617) -Codechange: add type safety to the Order's load and unload types.
17 years ago
rubidium
cf250390c5
(svn r12615) -Codechange: rename some enums related to depot orders to make it more clear that they are no loading/unloading flags. Also add more type strictness.
17 years ago
rubidium
53d101cc99
(svn r12593) -Codechange: hide Order's flags in most of the code.
17 years ago
rubidium
935b562074
(svn r12588) -Codechange: do not access the destination of an order directly.
17 years ago
rubidium
a3224512cc
(svn r12587) -Codechange: unduplicate some code in the Unpack*Order functions and move the 'normal' case Pack/Unpack to Order.
17 years ago
rubidium
3b0e3d8d30
(svn r12584) -Codechange: do not access the order type directly.
17 years ago
frosch
ae01e263ad
(svn r12540) -Codechange: Enumify some values in original pathfinder and remove an unused variable.
17 years ago
frosch
15b2f07587
(svn r12533) -Cleanup: Remove some wizardry from default ai by using existings enums and helper functions.
17 years ago
rubidium
df1d9bd880
(svn r12490) -Codechange: rename engine.h to engine_func.h and remove unneeded inclusions of engine.h and/or replace them with engine_type.h.
17 years ago
rubidium
c51b81c247
(svn r12489) -Codechange: split station.h into station_base.h and station_func.h.
17 years ago
rubidium
b84b16cfcd
(svn r12488) -Codechange: split order.h into order_base.h and order_func.h.
17 years ago
rubidium
49a040e6ad
(svn r12476) -Codechange: split type engine related types from engine.h (and openttd.h) to engine_type.h.
17 years ago
peter1138
a729283a3c
(svn r12451) -Codechange: use of FOR_ALL_ENGINES/ENGINEIDS_OF_TYPE instead of for-loops
17 years ago
smatz
988b5a9111
(svn r12200) -Fix: force AI to build rail or road instead of bridges if possible, so it doesn't build bridges everywhere
17 years ago
frosch
7f3d56041b
(svn r12199) -Codechange: Remove magic around the results of GetTileTrackStatus().
17 years ago
smatz
9bdb194b2a
(svn r12197) -Fix [FS#1788](r12134): show correct last year profit when the train had negative income
...
-Codechange: use GetDisplayProfitThisYear() to convert vehicle profit to readable form
17 years ago
frosch
1d120c51b8
(svn r12193) -Codechange: Rename a magic variable, give it a decent type, and remove a 'goto'.
17 years ago
smatz
a53594ebd4
(svn r12184) -Fix: take into account possible loan when AI is deciding which bridge to build, so it won't build wooden bridges everytime
17 years ago
glx
d7924424ac
(svn r12155) -Fix (r12154): some warnings (always compile before commit)
17 years ago
glx
a148985087
(svn r12154) -Codechange: removed a magic number
17 years ago
frosch
514df81e27
(svn r12141) -Codechange: Introduce IsNormalRoad[Tile](), IsRoadDepot[Tile]() and HasTileRoadType(); and use them.
17 years ago
smatz
fe48d0be21
(svn r12134) -Change: count the number of ticks a vehicle was running this day to calculate running cost
...
-Fix [FS#1739]: vehicle profit is now counted with 8bit fract, so it is now shown properly in the vehicle details window
17 years ago
peter1138
1268a70466
(svn r12019) -Codechange: Add support for passenger engine designation for AI-use, NewGRF property 0x08 for trains.
17 years ago
frosch
d4dc5e0775
(svn r11983) -Codechange: Add some helper functions for slopes and use them.
17 years ago
smatz
773446df5e
(svn r11972) -Fix: old AI shouldn't build fast planes with a small airport in orders
17 years ago
smatz
74af65e556
(svn r11968) -Codechange: remove redundant FindLengthOfTunnel(), use GetTunnelBridgeLength() and/or GetOtherTunnelEnd() instead
17 years ago
smatz
881b74e882
(svn r11962) -Cleanup: OPF is no longer used to update signals
17 years ago
smatz
8be486c27e
(svn r11960) -Cleanup: simplify some IsTunnel(Tile) / IsBridge(Tile) conditions
17 years ago
peter1138
622f251197
(svn r11959) -Codechange: Use macro to loop for specific engine types instead of using specific indexes each time.
...
-Codechange: Minor scope changes in said loops.
17 years ago
smatz
51d7692aca
(svn r11958) -Fix (r11204): NewAI couldn't build any road vehicles when there were any tram grfs loaded
17 years ago
frosch
8a72af3a13
(svn r11946) -Fix: slope detection of bridge ramps.
...
YAPF failed for steep slopes.
Trolly failed for a lot.
17 years ago
smatz
66a0fafc93
(svn r11917) -Fix (r3677): AI was reading wrong tile slope while building road bridge
17 years ago
rubidium
c141639bcc
(svn r11887) -Fix [FS#1658]: segmentation faults/wrong frees due uninitialized memory in the AI.
17 years ago
smatz
61e40b1aa5
(svn r11871) -Fix [FS#1074]: do not update signals after each tile when building/removing a large block of track/signals/station
17 years ago
rubidium
736640fd87
(svn r11866) -Codechange: swap OFB_* and OF_* so it conceptually in sync with other cases of *B_* vs *_* like VETSB_* and VETS_*.
17 years ago
rubidium
9c0c798dd8
(svn r11834) -Codechange: only include settings_type.h if needed.
17 years ago
rubidium
fafab82a31
(svn r11832) -Codechange: get rid of (quite) some VARDEFs.
17 years ago
rubidium
90acd52f22
(svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h.
17 years ago
rubidium
2fc62eab05
(svn r11818) -Codechange: split player.h into smaller pieces.
17 years ago
rubidium
2d2e1e3863
(svn r11800) -Codechange: move some functions to a more logical location + some type safety.
17 years ago
rubidium
0365c1f33b
(svn r11793) -Codechange: pass the expense type via the CommandCost instead of a global variable. Patch by Noldo (FS#1114).
17 years ago
rubidium
98b4fa7c07
(svn r11792) -Codechange: move some (virtually) globally included AI related structs to a place where they are only included a few times.
17 years ago
rubidium
444e77d8bc
(svn r11774) -Change: do not include variables.h in a header when it is not needed.
17 years ago
rubidium
722613f7f3
(svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes.
17 years ago
rubidium
db73addb43
(svn r11702) -Codechange: move all date related stuff to date*.
17 years ago
rubidium
f82aeb82c5
(svn r11701) -Codechange: removal unnecessary inclusions of map.h (and split map.h).
17 years ago
rubidium
81bf9f8503
(svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h'
17 years ago
rubidium
00c9d3ef20
(svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed.
17 years ago
rubidium
3074bca136
(svn r11680) -Codechange: refactor more out of openttd.h and functions.h.
17 years ago
rubidium
766551b0bc
(svn r11677) -Codechange: move price and command related types/functions to their respective places.
17 years ago
rubidium
be923601bf
(svn r11669) -Codechange: refactor tile.h -> tile_type.h and tile_map.h
17 years ago
smatz
d5dbce8331
(svn r11652) -Codechange: add the svn $ header for several files
17 years ago
smatz
d56a690ba4
(svn r11649) -Codechange: some code can be simplified thanks to changes in r11642
17 years ago
smatz
926fe5c9e9
(svn r11644) -Codechange: merge some functions from tunnel_map.h and bridge_map.h into tunnelbridge_map.h
17 years ago
smatz
3b59b68a15
(svn r11625) -Codechange: add CO_* enum at some places, add includes of order.h too
17 years ago
smatz
411dec5c3e
(svn r11565) -Revert: part of r11564
17 years ago
skidd13
5d74f2ced4
(svn r11564) -Codechange: Increase the usage of the for_each_bit macro and rename it fitting to the naming style
17 years ago
skidd13
e36dba227b
(svn r11523) -Codechange: Move the CHANCE macros to core/random_func.cpp cause they depend on Random()
...
-Codechange: Convert the CHANCE macros to functions and rename them fitting to the naming style
17 years ago
skidd13
815b8d8df1
(svn r11510) -Codechange: merge the IS_*INSIDE* functions and rename them fitting to the naming style
17 years ago
skidd13
3ae50673a3
(svn r11484) -Codechange: Remove the doubled function SetBitT and rename the remaining to fit with the naming style
17 years ago
skidd13
c0a2c0c23e
(svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style
17 years ago
rubidium
eadd6765e1
(svn r11312) -Codechange: implement a overflow safe integer and use that for money and don't misuses CommandCost to have a overflow safe integer. Based on a patch by Noldo.
17 years ago
rubidium
8342c18fb5
(svn r11303) -Fix: EnsureNoVehicle and EnsureNoVehicleOnGround were both used to check whether there was no vehicle on the ground, except that the former didn't take care of aircraft shadows. So now we only use EnsureNoVehicleOnGround.
17 years ago
rubidium
86dac1533b
(svn r11184) -Codechange: cleanup the code related to backup orders.
17 years ago
glx
18de82b000
(svn r11176) -Revert (r9867): as it is needed for newgrf callbacks 14B and 14C
17 years ago
rubidium
bd7483ba3c
(svn r11040) -Fix [FS#1179]: removing CMD_AUTO from some commands could remotely trigger an assertion.
17 years ago
rubidium
235ad4ab6b
(svn r11003) -Codechange: replace Vehicle->next to Vehicle->Next() and Vehicle->SetNext() so we can trap instances that change a next pointer and (in the future) update the first/previous pointers based on that.
17 years ago
rubidium
c2dcccae16
(svn r11001) -Codechange: unify the way to determine whether a vehicle is in a depot.
17 years ago
rubidium
dc454841fd
(svn r10942) -Fix [FS#1133]: make the AI not crash when it has ships as the AI does not support them.
17 years ago
rubidium
1a5b0a3417
(svn r10838) -Fix [FS#1119] (r10698): double negation where only single negation was needed. Patch by frosch.
17 years ago
rubidium
2f89fef353
(svn r10759) -Codechange: make the industry struct use the pool item class as super class.
17 years ago
rubidium
99da45988a
(svn r10756) -Codechange: use vehicle->IsValid in favour of IsValidVehicle(vehicle).
17 years ago
rubidium
2800a49f03
(svn r10733) -Codechange: change MP_STREET into MP_ROAD as we use the word "road" everywhere except in the tile type.
17 years ago
rubidium
903a0a08c2
(svn r10698) -Codechange [FS#1082]: simplify the code related to foundations. Primarily removal of (duplicated|magic) code and introduction of few helper functions to ease foundation determination. Patch by frosch.
17 years ago
rubidium
9c9fc1a79e
(svn r10672) -Codechange: typify some parameters/variables.
17 years ago
truelight
e5aca34acb
(svn r10657) -Fix r10655: commit didn't comply with coding style (tnx glx :))
17 years ago
truelight
6fe791a200
(svn r10655) -Fix [FS#1070]: Trolly AI didn't know about steep slopes, and used wrong tileh in some cases (frosch)
17 years ago
rubidium
fc201d4ad8
(svn r10266) -Codechange: keep track of the origin, time of travel and accumulated feeder share (transfers) of individual pieces of cargo. This means that cargo isn't thrown on a big pile when it's put in a station or unloaded at a station, however the GUI does not reflect these changes yet so you will not actually see it.
17 years ago
rubidium
0d8e82b7d7
(svn r10246) -Fix (r10297): some forgotten money conversions and truncation issues. Thanks to benc for providing the patch.
17 years ago
rubidium
773a7c9cb6
(svn r10205) -Codechange: refactor returning of cost, so it can be more easily modified.
17 years ago
rubidium
82e79b847e
(svn r10200) -Codechange: add "shortcut" for !CmdFailed (CmdSucceeded).
17 years ago
rubidium
3ccc83e640
(svn r10197) -Codechange: replace int32 with CommandCost where appropriate.
17 years ago
peter1138
70b6716b98
(svn r10177) -Fix: Passengers has one A and two Es (ln)
17 years ago
rubidium
06f9baac62
(svn r10106) -Fix (r10098): there's always a compiler complaining about something...
17 years ago
rubidium
76e25154bd
(svn r10098) -Codechange: bilbo cared about the performance of the AI with respect to the airport placement, so he rewrote the aircraft handling of the AI; now it can actually make lots of money again :)
17 years ago
rubidium
47d7124207
(svn r10081) -Fix [FS851]: towns/AIs didn't build bridges anymore (boekabart).
17 years ago
rubidium
d255041365
(svn r10058) -Codechange: give some industry variable sensible names (like not telling "last_mo_production" when it is the production of the current month).
18 years ago
rubidium
ad747e3026
(svn r10033) -Feature [FS#760]: skip to the selected order in the order list when clicking on the "skip" button while pressing CTRL.
18 years ago
rubidium
3b267df0af
(svn r9954) -Fix [FS#811]: trolley AI crashed when trying to determine what the roadbits are.
18 years ago
rubidium
821e58ac95
(svn r9914) -Codechange: prepare GTTS and the pathfinders to handle multiple road types on a single tile.
18 years ago
rubidium
ef48d1012b
(svn r9912) -Fix: the AIs could build any road(station)s.
18 years ago
rubidium
51109475a2
(svn r9892) -Codechange: lots of ground work for allowing multiple types of "road" with multiple owners on a single tile.
18 years ago
belugas
c4b90f3137
(svn r9867) -Codechange: Remove data duplication. The exact same values can be found in the industry spec, so take it from there instead.
18 years ago
rubidium
4500c365e1
(svn r9817) -Fix [FS#772]: an assertion that was triggered by the AI building when its rating for the town was not high enough.
18 years ago
rubidium
7577954ced
(svn r9672) -Cleanup: lots of coding style fixes around operands.
18 years ago
maedhros
3d81de8d7e
(svn r9609) -Codechange: Move some function prototypes out of functions.h and into landscape.h, and add a few where they didn't exist.
18 years ago
celestar
43dc111833
(svn r9540) -Fix (r1): Bankrupt AIs no longer buy themselves (usage of wrong variable)
18 years ago
belugas
0a6d6eaa74
(svn r9530) -Codechange: Replace a direct industry type access by a behaviour
18 years ago
belugas
691f8578fd
(svn r9400) -Codechange: Use some more representative enum names for landscape types.
18 years ago
celestar
045d3dc05f
(svn r9251) -Fix(r6057, FS#644): Use a less CPU-intensive algorithm to find a random industry for the AI to prevent it slowing down the game. The AI now sucks a even a bit more than before (if that's even possible).
18 years ago
rubidium
36cea84b11
(svn r9068) -Codechange: capitalize the VEH_Train etc. enums to match the coding style (and rest of the code).
18 years ago
rubidium
979ccd45ba
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
18 years ago
rubidium
4169bfba06
(svn r9050) -Codechange: Foo(void) -> Foo()
18 years ago
tron
053e2ddda5
(svn r8841) -Fix
...
Remove {,u}intswap() and replace them by Swap()
18 years ago
tron
72857162dd
(svn r8767) -Fix
...
-Codechange: Do not hardcode the catchment radius of airports, but hold the information in AirportFTAClass
-Fix (r979): The default AI tested possible airport locations with a fixed catchment radius instead of the radius of the to be built airport
18 years ago
tron
128caa5050
(svn r8755) -Fix
...
Abbreviate GetAirport(st->airport_type) to st->Airport()
18 years ago
KUDr
c680266b50
(svn r8750) -Fix (r8747): PLANES defined in wingdi.h caused compilation error under Win32. Changed to AIRPLANES
18 years ago
tron
16df378623
(svn r8747) -Fix
...
-Codechange: Make the encoding of accepted aircraft types of airports a bit more sensible and move the enum into struct AirportFTAClass
18 years ago
celestar
bde06e75b4
(svn r8732) -Codechange/Fix(r8705): Turned the bit-handling macros into template functions. Fixes a problem with MSVC and 64-bit shifts.
18 years ago
tron
ced80aadaa
(svn r8660) -Fix
...
-Codechange: Remove _avail_aircraft
Its name is misleading. It is rather _avail_airports, but then only some of them, which leads to inconsistencies when using it.
Further it is unnecessary to store it in savegams.
18 years ago
belugas
e8af755d7f
(svn r8455) -Codechange: Give a more meaningful name (railveh_type)to member flags of RailVehInfo, as well as changing the code to reflect the fact that it was not a flag but rather a one value only variable. Doing so, some evaluations have been simplified.
...
-Codechange: Add and use RAILVEH_SINGLEHEAD when railveh_type is set to 0, which was implicit before.
-Cleanup: Remove some extraneous parenthesis.
18 years ago
Darkvater
2ff4492abc
(svn r8428) -Codechange: Add proper names to aircraft subtypes instead of magic numbers and add a function IsNormalAircraft() which tells us whether the aircraft is in fact some flying device or a rotor/shadow.
18 years ago
celestar
dfb5556376
(svn r8402) -Codechange: Move RoadStop-specific enums to the RoadStop class, and changed a one-member enum into a static const. Simplify their naming and add some doxygen-comments to RoadStop
18 years ago
tron
7fffe8b3d4
(svn r8385) -Fix
...
-Regression (r8314): I only did half the necessary changes to move railtype from Engine to RailVehicleInfo. Now do the rest.
18 years ago
tron
81e88a2a7c
(svn r8276) -Fix
...
Change the signature of Swap() to be less error prone, i.e. pass the variables to be swapped by reference instead of passing pointers to the variables.
Just do Swap(x, y) instead of Swap(&x, &y). This prevents accidents when the variables are pointers.
18 years ago
tron
a63fae4202
(svn r8116) Undo r8113
18 years ago
tron
302b54b468
(svn r8113) Fix the #include path to table/strings.h
18 years ago
KUDr
28e969924b
(svn r8066) - Codechange: MallocT(), CallocT(), ReallocT() now return the pointer to allocated memory instead of modifying the pointer given as parameter
18 years ago
celestar
c56ee62ade
(svn r8056) -Codechange: Remove swap_byte, swap_byte, and siblings (some were not used anyway) and replace them by our SwapT implementation
18 years ago
rubidium
a7d0cdf95f
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
18 years ago
KUDr
07c30785ab
(svn r8033) [cpp] - Prepare for merge from branches/cpp (all .c files renamed to .cpp)
18 years ago
rubidium
013df98f79
(svn r7759) -Merge: makefile rewrite. This merge features:
...
- A proper ./configure, so everything needs to be configured only once, not for every make.
- Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies.
- A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC.
- Proper support for OSX universal binaries.
- Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files.
- Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files.
Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.
18 years ago