summaryrefslogtreecommitdiff
path: root/ai/default/default.c
AgeCommit message (Collapse)Author
2006-06-10(svn r5210) Many small changes which piled up: const, unsigned, variable ↵tron
scope, CSE for readability, DeMorgan, if cascades -> switch, whitespace, parentheses, bracing, misc.
2006-06-07(svn r5155) - Remove the bridge branch merge (revision r5070)tron
2006-06-05(svn r5129) Accommodate the default AI for the new railtype: It used hard ↵tron
coded numbers instead of enums to calculate prices
2006-06-05(svn r5128) Remove the global variable _cur_ai_playertron
2006-06-05(svn r5127) Use IsRoadVehInDepotStopped() and IsAircraftInHangarStopped()tron
2006-06-04(svn r5094) Remove _new_{aircraft,roadveh,ship,train,wagon}_id. ↵tron
_new_vehicle_id is enough.
2006-06-02(svn r5070) Merged the bridge branchcelestar
-Feature: Bridges can now be placed above: Any railway track combination (excluding depots and waypoints) Any road combination (excluding depots) Clear tiles (duh), including fields Tunnel entrances Bridge heads Thanks to Tron for idea and implementation, KUDr for the yapf synchronization and many others for hours of testing There are still a number of visual problems remaining, especially when electric railways are on or under the bridge. DO NOT REPORT THOSE BUGS FOR THE TIME BEING please.
2006-05-20(svn r4918) Move the information about the size of airports from an global ↵tron
array into the struct which describes an airport
2006-05-19(svn r4911) -Fix (FS#156): The Ai no longer attempts to build signals under ↵celestar
bridges. NOTE 1: Remove/revert this for the bridge branch NOTE 2: Bug displays fundamental flaw in command system: If two commands, where command 2 depends on command 1, have to be checked, all those checks need to be manual. (like in this example, first build rail then build signal. BuildSignal cannot be checked without DC_EXEC as the rail isn't there yet)
2006-05-09(svn r4789) - Codechange: rename RoadType to RoadTileType and ↵rubidium
ROAD_{NORMAL,CROSSING,DEPOT} to ROAD_TILE_* for consistency
2006-05-09(svn r4788) - Codechange: RAILTYPE_{NORMAL,ELECTRIC,...} and ↵rubidium
RAIL_TYPE_{NORMAL,SIGNAL,...} have nearly the same name, rename RAIL_TYPE_* to RAIL_TILE_* of extra clarity
2006-04-23(svn r4553) int and magic numbers -> Slope and DiagDirectiontron
2006-04-21(svn r4502) -Cleanup: Remove code unused since rev1. (Rubidium)celestar
2006-04-10(svn r4342) Change the first two parameters of commands - virtual pixel ↵tron
coordinates of the tile to operate on - to a TileIndex Remove DoCommandByTile(), because now it does the same as DoCommand()
2006-04-08(svn r4318) CodeChange : Remove last direct map access on ai/default/default.cbelugas
2006-03-29(svn r4154) -Moved MAX_BRIDGES in bridge.h and made it an enum. This makes ↵celestar
two drops ...
2006-03-29(svn r4150) -Feature: Merged elrails into trunk. Thanks to Tron for lots of ↵celestar
code and proofreading, thanks to peter1138 for another lot of code and ideas.
2006-03-26(svn r4132) - Missed 3 CargoID'sDarkvater
2006-03-26(svn r4128) - CodeChange: Add proper semantics for CargoID for such ↵Darkvater
variables instead of using the general byte-type.
2006-03-26(svn r4120) Use the new station functions where appropriatetron
2006-03-26(svn r4116) -Fix: The AI should send a plane into a hangar if it's not in a ↵tron
hangar _or_ not stopped, not when it's not in a hangar _and_ not stopped
2006-03-24(svn r4079) Add GetSation{Index,ByTile}() to get the station index resp. the ↵tron
station from a tile
2006-03-19(svn r3981) More work for the rail accessing functions and enumstron
2006-03-16(svn r3907) Replace many bridge related direct map accesses with calls to ↵tron
shiny new functions and mark some strange constructs with XXX
2006-03-15(svn r3887) Add a function to get the other bridge end when you're at a ↵tron
bridge ramp
2006-03-14(svn r3857) Add and use GetBridgeRampDirection()tron
Note: This slightly changes the behavior of GetAnyRoadBits() to only return a road piece for the start of the bridge ramp instead of a full ROAD_[XY]
2006-03-12(svn r3831) Add and use GetRailDepotDirection()tron
2006-03-12(svn r3830) Move IsTunnelTile() from tile.h to tunnel_map.h and add ↵tron
IsTunnel(), which just checks for a tunnel, but not the tile type as IsTunnelTile() does
2006-03-11(svn r3816) Use existing accessorstron
2006-03-06(svn r3776) Replace many ints and magic numbers by Direction, DiagDirection ↵tron
and friends
2006-03-05(svn r3763) Adapt to the new 'map accessors go in foo_map.h'-schemetron
2006-02-27(svn r3677) Remove the FindLandscapeHeightByTile()s from the default AI.tron
The corresponding TileInfos look like global variables at the first glance, but always get written to before reading in each function they are used in.
2006-02-23(svn r3660) Convert further road bits and type references to the functions/enumstron
2006-02-18(svn r3614) turn 2 do-while-loop with 2 induction variables each into ↵tron
canocical for loops
2006-02-18(svn r3613) Some more const, indentation, whitespace and similar stufftron
2006-02-13(svn r3602) - Move _railveh_score data to _rail_vehicle_info->ai_rank and ↵peter1138
remove global variable to return data as we can now access this directly.
2006-02-06(svn r3564) Several smaller changes:tron
- Don't treat non-booleans as booleans - Reduce variable scope - Bracing - Use DeMorgan's law to make conditionals easier to read - if cascade -> switch - Replace some magic numbers by symbolic names - Avoid assignments within other statements
2006-02-01(svn r3511) More whitespace ([FS#46] by Rubidium)tron
2006-01-05(svn r3367) Unify the 4 distinct ↵tron
CMD_CHANGE_{AIRCRAFT,ROADVEH,SHIP,TRAIN}_SERVICE_INT commands into one CMD_CHANGE_SERVICE_INT command. As side effect this is a -Fix: The default AI tried to change the service intervals of vehicles via the CMD_CHANGE_TRAIN_SERVICE_INT command - regardless of the type of the vehicle - which of course failed for non-trains
2005-12-14(svn r3298) Remove unused and write-only variablestron
2005-12-10(svn r3282) - Codechange: Replace tests against CMD_ERROR with CmdFailed()peter1138
2005-11-22(svn r3226) -Fix: GPMI implementation had minor glitchestruelight
-Fix: the AI speed control is done by the AI-core, individual AIs don't have to do it (so, AIs were delayed twice ;) -Add: Support for AI-network-clients (an AI, connecting to a remote server) -Fix: minor AI-core problems
2005-11-15(svn r3190) Turn some loops into canonical for loop formtron
2005-11-15(svn r3185) consttron
2005-11-14(svn r3181) -Bracingtron
-Indentation -Whitespace -DeMorgan's Law -Test with NULL or 0 for non-booleans -'\0' instead of 0 for chars -Remove redundantly redundant comments (like DoFoo(); // Do foo) -Join multiple short lines with a single statement -Split single lines with multiple statements -Avoid assignments in if
2005-11-14(svn r3177) GB, CLRBIT, HASBIT, TOGGLEBITtron
2005-11-13(svn r3172) static, consttron
2005-10-24(svn r3080) byte -> PlayerID, int -> EngineID, -1 -> INVALID_ENGINEtron
2005-10-20(svn r3073) int/byte -> EngineID/PlayerID/VehicleIDtron
0/-1 -> INVALID_ENGINE 0x10 -> OWNER_NONE
2005-10-18(svn r3058) The default AI may not build dual headed trains under certain ↵tron
circumstances. Simplify this check by testing the rail vehicle info flags instead of passing a global variable around. Note: This is not exactly the original behaviour, because the Lev4 was always allowed to be built, but i guess that was a glitch.