Commit Graph

456 Commits (42714792dcd103c5487874f3a0de2d4dbbd57fb5)

Author SHA1 Message Date
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