Commit Graph

1072 Commits

Author SHA1 Message Date
smatz 0c10006907 (svn r16527) -Codechange: use static member functions instead of simple casts when converting Vehicle to specialised vehicle types. Includes safety check 2009-06-06 16:54:22 +00:00
frosch 5b497d6b49 (svn r16525) -Codechange: Notify small ufos on deletion of road vehicles, so they can head for somewhere else instead of stumbling over a ghost. 2009-06-06 14:46:50 +00:00
alberth bab70a823d (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 2009-06-01 11:43:36 +00:00
glx 5991c5195c (svn r16446) -Fix (r16378): 'cast to pointer from integer of different size' warning 2009-05-26 23:37:34 +00:00
smatz 5a463c8347 (svn r16442) -Codechange: use new Vehicle accessors at more places 2009-05-26 22:45:48 +00:00
smatz 7ee882d03f (svn r16441) -Codechange: new class SpecializedVehicle used as superclass for all vehicle types 2009-05-26 22:10:13 +00:00
yexo 0d56cfabfa (svn r16439) -Change: Make the default vehicle servicing settings company-based settings, so in a multiplayer game everyone can change them. 2009-05-26 21:59:49 +00:00
rubidium e3c5bc8d2e (svn r16434) -Cleanup: remove some dead code; primarily stuff that can't be reached like break after returns or break after functions that never return (i.e. NOT_REACHED) 2009-05-26 15:46:24 +00:00
smatz 7854e68b95 (svn r16407) -Fix [FS#2913]: set CargoPacket::source to INVALID_STATION when source station is deleted 2009-05-23 19:43:09 +00:00
smatz b2aed51f8e (svn r16403) -Codechange: move code related to subsidies to separate file 2009-05-23 15:46:00 +00:00
rubidium 6237fe1462 (svn r16394) -Codechange: move (NewGRF) cache variables into a separate struct so (some vehicle related) NewGRF cache 'desyncs' can be tested easier. 2009-05-23 09:10:56 +00:00
rubidium da5661a0c8 (svn r16393) -Codechange: move VehicleRail to Train. 2009-05-22 22:55:41 +00:00
rubidium c4b627af42 (svn r16392) -Codechange: move some variables (the ones that aren't caches) from VehicleRail to Train 2009-05-22 22:33:05 +00:00
rubidium 80e94b9bb1 (svn r16391) -Codechange: use Train instead of Vehicle where appropriate. 2009-05-22 22:22:46 +00:00
rubidium 7a37220881 (svn r16390) -Codechange: move u.road to RoadVehicle. 2009-05-22 20:22:20 +00:00
rubidium d37b840cf3 (svn r16389) -Codechange: use RoadVehicle instead of Vehicle where appropriate 2009-05-22 20:18:45 +00:00
rubidium c882248348 (svn r16388) -Codechange: move u.air to Aircraft 2009-05-22 20:07:26 +00:00
rubidium ada3067960 (svn r16387) -Codechange: use Aircraft instead of Vehicle where appropriate 2009-05-22 20:03:26 +00:00
rubidium 74ea34ca66 (svn r16385) -Codechange: move u.disaster to DisasterVehicle. 2009-05-22 18:57:11 +00:00
rubidium 6d1c974254 (svn r16384) -Codechange: move u.effect to EffectVehicle 2009-05-22 18:56:25 +00:00
rubidium 441011b782 (svn r16382) -Codechange: make GetVehicleTrackdir a member function of Vehicle. 2009-05-22 18:17:20 +00:00
smatz 62a7948af0 (svn r16378) -Codechange: replace OldPool with simpler Pool. Compilation time, binary size and run time (with asserts disabled) should be improved 2009-05-22 15:13:50 +00:00
smatz 6afce484bb (svn r16373) -Codechange: use () instead of (void) for functions without parameters 2009-05-21 22:43:25 +00:00
smatz 1e45f4bc4c (svn r16357) -Codechange: delete invalid depots in TTD savegames caused by improper SVXConverter conversions 2009-05-19 12:47:47 +00:00
smatz a0ff6363e6 (svn r16353) -Fix (r1): invalid read when OTTD savegame contains VEH_INVALID 2009-05-18 17:40:03 +00:00
smatz 8808f3beea (svn r16352) -Codechange: use PoolItem::GetIfValid() instead of PoolItem::IsValidID() and PoolItem::Get() 2009-05-18 16:21:28 +00:00
smatz 5fe906e149 (svn r16351) -Fix (r14773): signal handler could end in endless loop 2009-05-18 12:01:13 +00:00
smatz 0af27062c4 (svn r16349) -Codechange: rename IsPlainRailTile() to IsPlainRail(), introduce shiny new IsPlainRailTile() 2009-05-18 01:26:23 +00:00
rubidium 10406e8ad6 (svn r16346) -Codechange: don't exploit the pool system in the way done for the saveload pool; it makes writing replacements unnecessarily difficult. And now we've got SmallVector that does more than enough for saving with less lines of 'interface' code. 2009-05-17 20:38:05 +00:00
smatz 570af0ce44 (svn r16338) -Codechange: split loading of references to two phases
In the first phase, indexes are stored. In the second phase, indexes are checked for validity and converted to pointers
2009-05-17 16:28:29 +00:00
smatz 76784501a8 (svn r16335) -Codechange: indenting fixes in saveload.cpp 2009-05-17 11:47:56 +00:00
smatz 4876e346d5 (svn r16334) -Codechange: use NeedLength enum 2009-05-17 11:43:51 +00:00
smatz 3322cc978f (svn r16331) -Codechange: replace _sl.save by an enum 2009-05-17 11:15:11 +00:00
rubidium b23c967230 (svn r16330) -Fix (r16329): we were shortly visited by Mr. Kenobi. 2009-05-17 10:59:40 +00:00
rubidium f457cff73c (svn r16329) -Fix: possible desync when removing lots of towns in-game (not that we allow removing towns now, but better not have desync prone code lingering around) 2009-05-17 10:35:13 +00:00
rubidium 6b2f9e8c9e (svn r16328) -Fix: desync when removing lots of stations 2009-05-17 10:19:00 +00:00
smatz 871107f529 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 2009-05-17 01:00:56 +00:00
smatz ed1e54bd84 (svn r16326) -Codechange: replace GetPoolItemPoolSize() by PoolItem::GetPoolSize() 2009-05-16 23:44:36 +00:00
smatz 6221d74644 (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 2009-05-16 23:34:14 +00:00
smatz aff7a9e953 (svn r16320) -Fix (r11939): loading of savegames created in revision between 0.3.5 and 0.3.6 caused crash 2009-05-16 18:28:31 +00:00
yexo 31eff1d4c3 (svn r16315) -Codechange: move the autorenew settings to a new CompanySettings struct 2009-05-15 23:55:06 +00:00
smatz f5316c5cbd (svn r16269) -Codechange: use gcc's ability to check parameters sent to printf-like functions
-Fix: wrong number of parameters or wrong parameter types sent to printf-like functions at several places
2009-05-10 17:27:25 +00:00
rubidium 2664f2a2d9 (svn r16242) -Codechange: rework pausing
-Fix [FS#2864]: autopause and manual pausing conflict with eachother
-Fix: new game + pause on new game + autopause make the game not unpause on the first join
2009-05-06 15:06:57 +00:00
rubidium 73fd0db237 (svn r16214) -Fix [FS#2878]: shared orders without orders weren't properly converted causing corrupt/invalid orders when loading pre 0.7 savegames. 2009-05-03 11:57:01 +00:00
rubidium d21f406b03 (svn r16133) -Fix (r16129): who would've thought that the saveload system couldn't handle skipping strings on load yet? 2009-04-24 08:15:58 +00:00
rubidium ff05dc8446 (svn r16129) -Feature-ish: configurable digit group separator per language with user override. 2009-04-23 21:05:00 +00:00
rubidium 59d45a04d6 (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. 2009-04-21 23:40:56 +00:00
rubidium 5790293af6 (svn r16037) -Feature: allow (per order) to let a train stop at the near end, middle or far end of a platform from the point of view of the driver of the train that enters the station. 2009-04-12 14:11:14 +00:00
glx 75c99d8b9b (svn r15893) -Add: watermark crash.sav and don't generate crash information if a loaded crash.sav causes a crash 2009-03-30 00:21:43 +00:00
peter1138 3abddfe705 (svn r15799) -Codechange: Save rail type label list to savegame and perform mapping on load if necessary. 2009-03-21 23:58:20 +00:00
smatz 36dfa1f21e (svn r15727) -Codechange: apply coding style to namegen arrays
-Fix (r1307): missing comma in _name_original_english_4
2009-03-15 16:31:16 +00:00
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 2009-03-15 00:32:18 +00:00
rubidium 9d018723b7 (svn r15711) -Codechange: lots of whitespace cleanup/fixes 2009-03-14 18:16:29 +00:00
belugas f6e4bc765a (svn r15695) -Feature [FS#2672]: Allow the number of towns that will be generated in the generate world window to be customized.
Some warnings: 
-the maximum number of towns to be accepted is set to 5000
-the minimum number of towns to be accepted is set to 1
-the number that is specified is NOT guaranteed to be the exact number of towns generated.  The normal mechanism of town creation has not been modified.  So town placement can still fail.
-setting a custom number of town will change your difficulty settings to custom as well
2009-03-12 23:54:20 +00:00
rubidium f67e2a41ce (svn r15678) -Fix (r15676): crash when (re)applying newgrf settings 2009-03-11 23:35:32 +00:00
rubidium 655b0ccc2e (svn r15676) -Codechange: remove the need for BeginVehicleMove and merge VehiclePositionChanged and EndVehicleMove. 2009-03-11 20:43:14 +00:00
rubidium fb2ea6c9ed (svn r15672) -Codechange: (left,right,top,bottom)_coord -> coord.(left,right,top,bottom), i.e. use Rect. 2009-03-11 17:26:58 +00:00
frosch 987e72f4f2 (svn r15645) -Fix (r12924)[FS#2612]: Add an EngineOverrideManager to give the term 'compatible newgrf' again some sense and to not crash because of trivial changes. 2009-03-08 16:51:08 +00:00
smatz 7c8474da13 (svn r15642) -Codechange: use a default parameter value in CalcClosestTownFromTile 2009-03-08 01:20:11 +00:00
rubidium 86ca408d46 (svn r15626) -Fix [FS#2698]: UTF8 string handling could cause buffer overruns. 2009-03-06 01:23:25 +00:00
rubidium 0d8da02ec1 (svn r15610) -Change: allow loading of heightmaps and savegames (any form) that are in .tar files 2009-03-04 09:53:31 +00:00
rubidium 7831346ef8 (svn r15601) -Fix [FS#2615]: bridges/tunnels don't store tram owner making it possible to remove someone's tram tracks.
-Feature: allow building road stops on road/tram tracks of competitors.
2009-03-02 22:57:47 +00:00
smatz 3fdac6f702 (svn r15588) -Fix: change owner of waypoints and deleted stations when merging companies or when a company benkrupts 2009-02-26 14:07:42 +00:00
yexo fb7b0536e7 (svn r15584) -Codechange: Move several variables from variables.h to more appropriate headers. 2009-02-25 21:45:14 +00:00
rubidium c4fb879561 (svn r15532) -Fix (r15525): don't try to load (and forget) AI data from a non-existing AI when joining a server. In other words: you can join network servers again. 2009-02-20 21:05:27 +00:00
yexo ef67e59145 (svn r15528) -Fix (r15525): Check should be the other way around (thanks SmatZ). 2009-02-20 00:02:25 +00:00
yexo 2fdc395d45 (svn r15525) -Fix: Don't try to find the AIs the server runs when joining a mp server. 2009-02-19 23:10:32 +00:00
smatz b9b14bd803 (svn r15500) -Fix (r12648): pre-0.5 OTTD stored new_nonstop and full_load_any in a different way, savegame conversion wasn't working for them 2009-02-16 21:43:44 +00:00
peter1138 ad30a3c4ca (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... 2009-02-09 22:49:28 +00:00
rubidium c0a8d09ca7 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 2009-02-09 02:57:15 +00:00
rubidium 9907742a0f (svn r15423) -Codechange: split widget related types to their own header and add a bit of type strictness. 2009-02-09 01:06:23 +00:00
rubidium 377ce6c5bf (svn r15410) -Cleanup: get rid of most of the references to the 'patches' except where it's used for backward compatability. 2009-02-08 12:25:13 +00:00
peter1138 5f8c2b1b4e (svn r15407) -Codechange: When loading a save game with an invalid pool index, report the problem (invalid index) rather than an impossible symptom (too many items), and report it in game instead of causing a crash. 2009-02-08 10:37:24 +00:00
smatz 832e392855 (svn r15340) -Fix [FS#2121]: changing town road layout in-game caused ugly road networks
-Fix: use a flag instead of TL_NO_ROADS to forbid towns to build roads. The flag is ignored during world generation, so there won't be 'ghost' towns anymore
-Feature: town layout is now stored per town, so it is possible to (manually) set different layout for each town
2009-02-04 20:17:25 +00:00
frosch 2afa9312fc (svn r15304) -Fix [FS#2587]: When loading savegames use the roadtype of the front vehicles just like it is done on construction. 2009-02-01 11:38:18 +00:00
smatz 16b9dcd0ea (svn r15303) -Fix (r12381): desync if a GRF used town's last month max. pass/mail 2009-02-01 00:50:32 +00:00
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 2009-01-31 20:16:06 +00:00
belugas 3671ed9e4f (svn r15290) -Codechange: Isolate size and section of the UnMovable HQ object, in order to keep the Unmovable type free of any irrelevant data 2009-01-28 19:57:23 +00:00
rubidium 7d64441008 (svn r15287) -Cleanup: some code style, remove erroneous comment.
-Document: the fact that zlib reads uninitialised data (valgrind notices this) and that it won't be fixed in zlib and that we can't do anything about it except ignoring it.
2009-01-27 21:51:06 +00:00
smatz 562299d809 (svn r15274) -Fix (r8705): oldloader wasn't updated to use 64bit airport_flags 2009-01-25 22:50:00 +00:00
peter1138 7afd506301 (svn r15272) -Codechange: Check that engine types of vehicles are valid and for the correct type on loading a game. This prevents a crash/assertion failure if required NewGRFs are not available. This won't make the game playable, but will let you see what NewGRFs are required. 2009-01-25 21:55:18 +00:00
smatz dbc4a8b331 (svn r15257) -Cleanup: remove Company::is_noai, it is not needed anymore 2009-01-24 15:31:48 +00:00
smatz 4493bd03e3 (svn r15256) -Fix (r15027): use of uninitialised variable while saving/loading game with AIs 2009-01-24 15:01:29 +00:00
smatz 12bcc254c8 (svn r15251) -Fix (r15249): trains from 0.2.0-0.3.0 could be in 'stopping' state instead of 'stopped' (this problem doesn't affect trains in depot) 2009-01-24 12:50:10 +00:00
smatz 8278fc2149 (svn r15249) -Fix [FS#2576]: force trains from old (and other vehicles from 'recent') savegames to have zero cur_speed while stopped (cooperation with frosch123) 2009-01-24 00:42:09 +00:00
smatz 3964b2dd8c (svn r15248) -Fix [FS#2561]: we require v->cur_speed to be zero for wagons and non-front engines 2009-01-23 23:57:01 +00:00
Yexo 757b11325b (svn r15239) -Fix [FS#2579]: The start date of random AIs was not stored in the config file or the savegame. 2009-01-23 21:52:29 +00:00
smatz 789fa42f52 (svn r15230) -Fix (r1): aircraft could have zero speed while in air after loading old savegame 2009-01-23 15:53:24 +00:00
smatz e3cc807c7a (svn r15227) -Fix [FS#2571](r1): aircraft could be 'loading in the air' after converting old savegames 2009-01-23 15:37:44 +00:00
smatz 042d7800d0 (svn r15223) -Codechange: move GetOldTownName to oldloader_sl.cpp as it is specific to loading of TTO/TTD savegames 2009-01-23 13:36:12 +00:00
rubidium 67a2dd12e8 (svn r15220) -Fix (r15216): signedness warning 2009-01-23 09:47:46 +00:00
Yexo c8cbdc17d3 (svn r15219) -Fix (r15216): MSVC failed to find the proper casts. 2009-01-23 09:20:57 +00:00
smatz 6dffd8ae82 (svn r15216) -Feature: native support for Transport Tycoon (Original) savegames. Based on SVXConverter's source code and documentation by Roman Vetter 2009-01-23 02:35:17 +00:00
smatz 3852ae1264 (svn r15211) -Fix (r15190): loading of TTD savegames was broken 2009-01-22 22:02:05 +00:00
Yexo db3ee34b44 (svn r15190) -Feature: Allow terraforming of the tiles at the edges of the map. 2009-01-21 02:31:55 +00:00
smatz 5e7669b539 (svn r15189) -Cleanup: remove unused includes 2009-01-21 02:07:56 +00:00
smatz 376edabb65 (svn r15183) -Fix: stand-alone rail tiles with invalid owner were not removed. Also, make the whole check a bit more intelligent. 2009-01-21 00:14:08 +00:00
smatz 3511218e37 (svn r15181) -Fix (r15180): of course it is enough to update aircraft once... 2009-01-20 23:48:31 +00:00
smatz 90381d5d63 (svn r15180) -Fix [FS#2560](r8498): old aircraft have to be updated after updating airport_type of oil rigs 2009-01-20 23:43:19 +00:00
smatz 5aa1171988 (svn r15179) -Fix [FS#2560](r12096): removing of leftover level crossings (from very old savegames) failed 2009-01-20 22:33:29 +00:00
smatz 49c5c71348 (svn r15174) -Codechange: split oldloader.cpp 2009-01-20 16:47:42 +00:00
smatz c8e26be649 (svn r15173) -Codechange: shuffle a few lines of code in oldloader.cpp 2009-01-20 16:40:19 +00:00
smatz 38afe1fe3f (svn r15170) -Fix: vehicle value is 64bit now, oldloader was reading it as 32bit 2009-01-20 15:43:17 +00:00
smatz 091d82470b (svn r15169) -Revert (r11271): it was broken by r12924, and the issue is fixed again in r12948 in a cleaner way 2009-01-20 15:23:58 +00:00
smatz 7a13ade405 (svn r15168) -Codechange: use only really basic map accessors in oldloader.cpp, shuffle the code a bit 2009-01-20 14:47:17 +00:00
smatz a9a8bb3590 (svn r15166) -Codechange: reduce number of includes in afterload.cpp 2009-01-20 13:56:35 +00:00
rubidium bb77071749 (svn r15158) -Cleanup: remove some unused/unneeded cruft from the thread generalisation. 2009-01-20 03:12:46 +00:00
Yexo 8fabd3982d (svn r15148) -Cleanup: Remove the options "competitor start time" and "competitor intelligence" from the difficulty options because they already were unused. 2009-01-19 01:16:50 +00:00
glx ee1331bb46 (svn r15147) -Fix (r15146): compile before commit 2009-01-19 00:53:31 +00:00
smatz 0e83fb37c0 (svn r15146) -Fix: show savegame name even when opening it failed 2009-01-18 23:33:57 +00:00
smatz a337c47d4f (svn r15145) -Fix: crash when one tried to load a TTO savegame
-Fix (r15144): it wasn't safe at all, but the code broken code isn't needed anymore
2009-01-18 23:26:38 +00:00
smatz 3bceaf41b4 (svn r15144) -Codechange: make sure we don't run out of bounds while determining old savegame name
Note this can't happen in current code
2009-01-18 22:44:53 +00:00
smatz 52e0c6fd35 (svn r15137) -Fix (r11822)(r14340): signs with sign 'Sign' were lost when converting from TTD savegames 2009-01-18 16:20:04 +00:00
smatz e77462a866 (svn r15116) -Fix (r1): company money weren't correctly converted from TTD(P) savegames 2009-01-16 21:50:55 +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 89da8820e5 (svn r15075) -Fix: store _next_competitor_start as uint32, else it might overflow for values > 2.4 years 2009-01-13 21:32:47 +00:00
truebrain bcbbf2c366 (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
2009-01-13 01:46:46 +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
rubidium 11da45ee55 (svn r14949) -Cleanup: pointer coding style 2009-01-10 00:31:47 +00:00
rubidium c8c61e36bd (svn r14919) -Feature: distant joining of stations (Frostregen and PhilSophus) 2009-01-08 16:35:45 +00:00
smatz 9658c83a33 (svn r14829) -Fix (r14828): forgot CH_LAST 2009-01-04 15:46:50 +00:00
smatz 7368c740a6 (svn r14828) -Codechange: move most of save/load-specific code to separate files 2009-01-04 15:32:25 +00:00