yexo
fe67e85700
(svn r18687) -Add [NoAI]: AIEngine::IsBuildable to check if you can build a certain engine.
...
-Change: AIEngine::IsValidEngine will now also return true when you have at least one vehicle of that type even if you can't build it anymore.
2010-01-02 15:52:29 +00:00
rubidium
b00a5f1069
(svn r18330) -Cleanup: remove some unneeded includes
2009-11-28 20:35:25 +00:00
frosch
d01f5e9e7e
(svn r17898) -Fix: [NoAI] Improve behaviour of (AIEngine|AIEventEnginePreview)::GetCargoType() and AIEngine::CanRefitCargo() wrt. articulated vehicles.
2009-10-28 20:15:46 +00:00
frosch
9a9d0ee7c0
(svn r17728) -Cleanup: Remove some more unneeded/unused parameters.
2009-10-06 19:52:38 +00:00
frosch
a4835e3f0b
(svn r17719) -Change: [NoAI] Make AIEngine:CanRefitCargo() not report refittability to Mail by default for aircraft. It is not necessarily true, and the special case of carrying both passenger&mail is better handled by AIs themself than by the API.
2009-10-05 20:21:12 +00:00
frosch
b243f6ca97
(svn r17700) -Codechange: Integrate ShipVehicleInfo::refittable into EngineInfo::refit_mask during initialisation.
2009-10-04 20:33:18 +00:00
smatz
100ae8efcc
(svn r17292) -Codechange: use unified ToPercent() function to convert fract numbers to percents
2009-08-27 13:31:26 +00:00
rubidium
7fbc33dae1
(svn r17248) -Fix: add GPL license notice where appropriate
2009-08-21 20:21:05 +00:00
yexo
3631f40637
(svn r17014) -Add [NoAI]: AIEngine::GetDesignDate
2009-07-31 23:22:49 +00:00
frosch
1e09854cb7
(svn r16679) -Codechange: Let GetCapacityOfArticulatedParts() return a CargoArray instead of a pointer to a static array.
2009-06-27 21:36:04 +00:00
rubidium
512b021e26
(svn r16581) -Codechange: unify the access to Engine::lifelength.
2009-06-16 13:52:18 +00:00
smatz
70aab8bf04
(svn r16354) -Codechange: use 'new' pool accessors and methods for Engine too
2009-05-18 19:32:16 +00:00
smatz
6221d74644
(svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index)
2009-05-16 23:34:14 +00:00
frosch
6dd04a9a78
(svn r15763) -Codechange/Fix: Add Engine::GetDisplayDefaultCapacity() and use it everywhere, so CB 36 is also used everywhere.
2009-03-18 19:32:13 +00:00
frosch
fa35dc10e5
(svn r15705) -Fix: Do not show passenger-/mail-capacity if the aircraft carries only cargo.
2009-03-13 23:49:12 +00:00
frosch
d3850e101c
(svn r15541) -Revert (r15399): 'v->cargo_type' is also used in other places, which cannot accept CT_INVALID.
...
-Codechange: Add Engine::GetDefaultCargoType() and Engine::CanCarryCargo() and use them.
-Fix [FS#2617]: When articulated parts have no available default cargo, use the cargo type of the first part for livery selection.
-Change: To decide whether a vehicle is refittable do not test its current capacity for being zero, but always use the 'capacity property'.
Note: The property is used unmodifed without calling CB 15/36. By setting it to a non-zero value and returning zero in the callback vehicles can be refitted to/from zero capacity for e.g. livery effects.
Note: It is intentional that you cannot control refittability by CB 36.
2009-02-21 12:52:41 +00:00
yexo
3491b0fab9
(svn r15524) -Add [NoAI]: AIEngine::GetPower, AIEngine::GetWeight and AIEngine::GetMaxTractiveEffort.
2009-02-19 19:44:19 +00:00
frosch
de9a6fc90b
(svn r15308) -Codechange: Deduplicate km-ish/h -> mph conversions.
2009-02-01 17:14:39 +00:00
frosch
c28c4c1986
(svn r15306) -Codechange: Deduplicate code by adding Engine::GetDisplayMaxSpeed(), GetPower() and GetDisplayWeight(). (and using them)
2009-02-01 16:10:06 +00:00
smatz
0d3f5e6e74
(svn r15299) -Cleanup: remove many redundant includes
2009-01-31 20:16:06 +00:00
glx
c1cf3934fa
(svn r15263) -Codechange: added Engine::GetCost() to remove some code duplication.
2009-01-25 00:57:03 +00:00
glx
e8b5f49861
(svn r15261) -Add: added Engine::GetRunningCost() to remove some code duplication. Also stops AIs decrementing vehicle counter of first company
2009-01-24 20:14:15 +00:00
truebrain
3abb8abd07
(svn r15123) -Fix [NoAI]: 'const char *' implies that the return value should not be free'd, which is should .. so make them 'char *'
2009-01-17 15:31:30 +00:00
truebrain
94dd36d1ec
(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
2009-01-16 00:05:26 +00:00
smatz
e00cf92f47
(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
2009-01-13 22:58:03 +00:00
truebrain
a3dd7506d3
(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
2009-01-12 17:11:45 +00:00